You should get away from XC=Basic which wastes a lot of RAM with unoptized code instead of using external files. I bet the menu can be easily done in assembly by using some structured self coded subroutines instead of wasting a whole block of compiled code just to get some text on screen.