I recently hit the 65k mark for code space and was forced to switch from near to banked mode. Here is what I am using:
CC2530F256, IAR 7.60 TIMAC 1.3.1
This is what I did to switch to bank mode from within IAR:
- Project -> Edit Configurations -> CC2530EB Object-Banked
- Project -> Options -> General Options -> Banked, Large, ROM mapped as data, 16 virtual registers, XDATA stack reentrant
- Project -> Options -> Linker -> Config -> override selected with ti_51ew_cc2530.xcl
The program compiles and works...kind of....IAR is NOW very slow to download and when I start the program in debug mode IAR freezes for about 10 seconds. The code is actually running, but the program overall doesn't work correctly. It is a wireless network setup as cluster tree. All I am doing is starting the coordinator which usually sends beacons, but now does not. I am guessing there is some kind of performance issue that is effecting the timing of the program that prevents TIMAC/RF from working correctly. The same happens with the debugger removed.
I'm not really sure where to start with this problem since it is in a gray area between TI+IAR+TIMAC and my own code. I am also fairly new to 8051 and know little about the linker file.
Any input would be greatly appreciated.