I have to agree with Alan that if you try to dump everything possible this year into the program it can grow large.
Maybe not what you are looking for, but have you tried using the built-in compiler optimization to reduce your program bulk?
In MPLAB
- Project -> Build Options... -> Project
- MPLAB C18 tab
- pulldown categories and select Optimization
- click "enable all"
I tend not to use the compiler optimization unless necessary, because we've all had problems with optmizers in the past. Just test afterwards to make sure everything is working properly.
You have gotten rid of the IFI printf code, right?