MSP430F5310 using compiler 16.9.1 LTS Using compiler 16.9.1 LTS, this DOES NOT place the entry point at 0x8000 because of following entry in the linker command file: .boot > 0x8000 { -l rts*.lib (.text) } With compiler 4.2.2, this DID place the entry point at 0x8000. It is broken with the new compiler. =========================== Map File Excerpt ================================================ ****************************************************************************** MSP430 Linker PC v16.9.1 ****************************************************************************** >> Linked Mon Dec 12 23:15:34 2016 OUTPUT FILE NAME: ENTRY POINT SYMBOL: "_c_int00_noargs" address: 0000bc88 SECTION ALLOCATION MAP output attributes/ section page origin length input sections -------- ---- ---------- ---------- ---------------- .bss 0 00001e00 000006db UNINITIALIZED 000024a2 00000006 rts430x_sc_sd_eabi.lib : memory.obj (.bss) .sysmem 0 000024dc 000000a0 UNINITIALIZED 000024dc 00000004 rts430x_sc_sd_eabi.lib : memory.obj (.sysmem) .data 0 0000257c 00000076 UNINITIALIZED 000025e2 00000002 rts430x_sc_sd_eabi.lib : exit_gvars.obj (.data:__TI_cleanup_ptr) 000025e4 00000002 : exit_gvars.obj (.data:__TI_dtors_ptr) 000025e6 00000002 : _lock.obj (.data:_lock) 000025e8 00000002 : _lock.obj (.data:_unlock) 000025ea 00000002 : dtor_list.obj (.data) 000025ec 00000002 : exit.obj (.data) 000025ee 00000002 : memory.obj (.data) .stack 0 00003260 000000a0 UNINITIALIZED 00003260 00000002 rts430x_sc_sd_eabi.lib : boot.obj (.stack) .text 0 0000805a 00003e64 0000a45a 000000c4 rts430x_sc_sd_eabi.lib : fs_mpy.obj (.text) 0000a74c 000000ae rts430x_sc_sd_eabi.lib : memory.obj (.text:malloc) 0000aaa2 00000080 rts430x_sc_sd_eabi.lib : memory.obj (.text:free) 0000acf8 0000006e rts430x_sc_sd_eabi.lib : copy_decompress_lzss.obj (.text:decompress:lzss:__TI_decompress_lzss) 0000b200 00000058 rts430x_sc_sd_eabi.lib : cpy_tbl.obj (.text:copy_in) 0000b530 00000048 rts430x_sc_sd_eabi.lib : dtor_list.obj (.text:_Z11__TI_atexitPFYvPvES_S_) 0000b64c 00000046 rts430x_sc_sd_eabi.lib : fs_tou.obj (.text) 0000b7a2 00000044 rts430x_sc_sd_eabi.lib : exit.obj (.text:exit) 0000b866 00000040 rts430x_sc_sd_eabi.lib : div32s.obj (.text) 0000b8e4 0000003e rts430x_sc_sd_eabi.lib : lsr32.obj (.text:l_lsr_const) 0000b996 00000038 rts430x_sc_sd_eabi.lib : memory.obj (.text:minit) 0000bb3c 00000024 rts430x_sc_sd_eabi.lib : fs_utof.obj (.text) 0000bc4a 00000020 rts430x_sc_sd_eabi.lib : mult32_f5hw.obj (.text) 0000bc88 0000001c rts430x_sc_sd_eabi.lib : boot_special.obj (.text:_c_int00_noargs) 0000bd22 00000016 rts430x_sc_sd_eabi.lib : div16u.obj (.text) 0000bd4c 00000014 rts430x_sc_sd_eabi.lib : copy_zero_init.obj (.text:decompress:ZI:__TI_zero_init) 0000bd86 00000012 rts430x_sc_sd_eabi.lib : copy_decompress_none.obj (.text:decompress:none:__TI_decompress_none) 0000be60 0000000a rts430x_sc_sd_eabi.lib : lsl16.obj (.text) 0000beaa 00000006 rts430x_sc_sd_eabi.lib : dtor_list.obj (.text:__cxa_ia64_exit) .reset 0 0000fffe 00000002 0000fffe 00000002 rts430x_sc_sd_eabi.lib : boot.obj (.reset) MODULE SUMMARY Module code ro data rw data ------ ---- ------- ------- C:\ti\ccsv6\tools\compiler\ti-cgt-msp430_16.9.1.LTS\lib\rts430x_sc_sd_eabi.lib memory.obj 358 0 8 fs_mpy.obj 196 0 0 dtor_list.obj 150 0 4 autoinit_wdt.obj 126 0 0 copy_decompress_lzss.obj 110 0 0 cpy_tbl.obj 88 0 0 div32u.obj 88 0 0 exit.obj 74 0 2 fs_tou.obj 70 0 0 div32s.obj 64 0 0 lsr32.obj 62 0 0 fs_utof.obj 36 0 0 mult32_f5hw.obj 32 0 0 boot_special.obj 28 0 0 div16u.obj 22 0 0 copy_zero_init.obj 20 0 0 mult16_f5hw.obj 20 0 0 copy_decompress_none.obj 18 0 0 memcpy.obj 18 0 0 lsl16.obj 10 0 0 _lock.obj 2 0 4 exit_gvars.obj 0 0 4 pre_init.obj 4 0 0 boot.obj 0 2 0 startup.obj 2 0 0 +--+--------------------------+-------+---------+---------+ Total: 1598 2 22 LINKER GENERATED COPY TABLES __TI_cinit_table @ 0000bf42 records: 2, size/record: 4, table size: 8 .data: load addr=0000bebe, load size=0000007a bytes, run addr=0000257c, run size=00000076 bytes, compression=copy .bss: load addr=0000bf3e, load size=00000004 bytes, run addr=00001e00, run size=000006db bytes, compression=zero_init _ramvector @ 0000c688 records: 1, size/record: 6, table size: 10 RAMVECT_SEG: load addr=00008000, load size=0000005a, run addr=00001c00, run size=0000005a, compression=none