Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /* This is a linker parameter file for the MC9S12DP256B */
- NAMES END /* CodeWarrior will pass all the needed files to the linker by command line. But here you may add your own files too. */
- SEGMENTS /* Here all RAM/ROM areas of the device are listed. Used in PLACEMENT below. */
- /* Register space */
- /* IO_SEG = PAGED 0x0000 TO 0x03FF; intentionally not defined */
- /* EPROM */
- EEPROM = READ_ONLY 0x0400 TO 0x0FEF;
- /* RAM */
- RAM = READ_WRITE 0x1000 TO 0x3FFF;
- /* non-paged FLASHs */
- ROM_4000 = READ_ONLY 0x4000 TO 0x7FFF;
- ROM_C000 = READ_ONLY 0xC000 TO 0xFEFF;
- /* VECTORS = READ_ONLY 0xFF00 TO 0xFFFF; intentionally not defined: used for VECTOR commands below */
- //OSVECTORS = READ_ONLY 0xFF8C TO 0xFFFF; /* OSEK interrupt vectors (use your vector.o) */
- /* paged FLASH: 0x8000 TO 0xBFFF; addressed through PPAGE */
- PAGE_30 = READ_ONLY 0x308000 TO 0x30BFFF;
- PAGE_31 = READ_ONLY 0x318000 TO 0x31BFFF;
- PAGE_32 = READ_ONLY 0x328000 TO 0x32BFFF;
- PAGE_33 = READ_ONLY 0x338000 TO 0x33BFFF;
- PAGE_34 = READ_ONLY 0x348000 TO 0x34BFFF;
- PAGE_35 = READ_ONLY 0x358000 TO 0x35BFFF;
- PAGE_36 = READ_ONLY 0x368000 TO 0x36BFFF;
- PAGE_37 = READ_ONLY 0x378000 TO 0x37BFFF;
- PAGE_38 = READ_ONLY 0x388000 TO 0x38BFFF;
- PAGE_39 = READ_ONLY 0x398000 TO 0x39BFFF;
- PAGE_3A = READ_ONLY 0x3A8000 TO 0x3ABFFF;
- PAGE_3B = READ_ONLY 0x3B8000 TO 0x3BBFFF;
- PAGE_3C = READ_ONLY 0x3C8000 TO 0x3CBFFF;
- PAGE_3D = READ_ONLY 0x3D8000 TO 0x3DBFFF;
- /* PAGE_3E = READ_ONLY 0x3E8000 TO 0x3EBFFF; not used: equivalent to ROM_4000 */
- /* PAGE_3F = READ_ONLY 0x3F8000 TO 0x3FBEFF; not used: equivalent to ROM_C000 */
- END
- PLACEMENT /* here all predefined and user segments are placed into the SEGMENTS defined above. */
- _PRESTART, /* Used in HIWARE format: jump to _Startup at the code start */
- STARTUP, /* startup data structures */
- ROM_VAR, /* constant variables */
- STRINGS, /* string literals */
- VIRTUAL_TABLE_SEGMENT, /* C++ virtual table segment */
- //.ostext, /* OSEK */
- NON_BANKED, /* runtime routines which must not be banked */
- COPY /* copy down information: how to initialize variables */
- /* in case you want to use ROM_4000 here as well, make sure
- that all files (incl. library files) are compiled with the
- option: -OnB=b */
- INTO ROM_C000/*, ROM_4000*/;
- DEFAULT_ROM INTO PAGE_30, PAGE_31, PAGE_32, PAGE_33, PAGE_34, PAGE_35, PAGE_36, PAGE_37,
- PAGE_38, PAGE_39, PAGE_3A, PAGE_3B, PAGE_3C, PAGE_3D ;
- //.stackstart, /* eventually used for OSEK kernel awareness: Main-Stack Start */
- SSTACK, /* allocate stack first to avoid overwriting variables on overflow */
- //.stackend, /* eventually used for OSEK kernel awareness: Main-Stack End */
- DEFAULT_RAM INTO RAM;
- //.vectors INTO OSVECTORS; /* OSEK */
- END
- ENTRIES /* keep the following unreferenced variables */
- /* OSEK: always allocate the vector table and all dependent objects */
- //_vectab OsBuildNumber _OsOrtiStackStart _OsOrtiStart
- END
- STACKSIZE 0x100
- VECTOR 0 _Startup /* reset vector: this is the default entry point for a C/C++ application. */
- //VECTOR 0 Entry /* reset vector: this is the default entry point for an Assembly application. */
- //INIT Entry /* for assembly applications: that this is as well the initialization entry point */
- VECTOR 7 rti_interrupt
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement