I'm using an MSP430F2619. This part has flash from 0x02100 - 0x1FFFF. The stock section placement places the ISR, CONST, CODE, and INTVEC sections in the flash segment, in that order. (edit) The INTVEC section is fixed at 0xFFC0 - 0xFFFF.
I'm wondering what happens when the code overflows from the lower flash section - the start of CODE to the start of INTVEC (0x2100 - 0x0FFC0). Does the CODE section somehow extend around the INTVEC section? Do the tools automatically create another code section in the upper section of flash above INTVEC? Do I need to do this manually?
When I build my project the linker command line uses the -T option to locate sections. Specifically: "-TISR,CONST,CODE=2100-ffbf,10000-1ffff". This makes me think the linker will automatically wrap the CODE section around INTVEC... Yet, when I purposefully push my CODE section higher to make sure it hits the INTVEC boundary the linker emits an error: "data section CODE: overflows addressable space".
So it looks like if I want to use the upper code section I will have to manually create a new section and explicitly assign code to that section. Is that correct?
Please sign in to leave a comment.