1 // ************************************************
\r
3 // XLINK configuration file for MSP430F5438A
\r
5 // Copyright 1996-2010 IAR Systems AB
\r
9 // ************************************************
\r
11 // ---------------------------------------------------------
\r
18 // xlink [file file ...] -f lnk430f5438a.xcl
\r
20 // -----------------------------------------------
\r
27 // Interrupt vectors: 64
\r
29 // Peripheral units: 0-001FF
\r
31 // Information memory (FLASH): 01800-019FF
\r
33 // Read/write memory (RAM): 01C00-05BFF
\r
35 // Read-only memory (FLASH): 05C00-0FFFF
\r
40 // -----------------------------------------------
\r
44 // -------------------------------------
\r
45 // Data read/write segments (RAM)
\r
49 // The following segments are available for both
\r
50 // the DATA16 and DATA20 segment groups.
\r
53 // ------- --------------------------
\r
54 // DATA<nn>_Z Data initialized to zero
\r
55 // DATA<nn>_I Data initialized by copying from DATA<nn>_ID
\r
56 // DATA<nn>_N Data defined using __no_init
\r
57 // DATA<nn>_HEAP The heap used by 'malloc' and 'free'
\r
60 // ------- --------------------------
\r
61 // CSTACK Runtime stack
\r
65 // -------------------------------------
\r
66 // Program and data read-only segments (FLASH)
\r
70 // The following segments are available for both
\r
71 // the DATA16 and DATA20 segment groups.
\r
74 // ------- --------------------------
\r
75 // DATA<nn>_C Constant data, including string literals
\r
76 // DATA<nn>_ID initializers for DATA<nn>_I
\r
79 // ------- --------------------------
\r
80 // INFO Information memory
\r
81 // INFOA Information memory, bank A
\r
82 // INFOB Information memory, bank B
\r
83 // INFOC Information memory, bank C
\r
84 // INFOD Information memory, bank D
\r
85 // CSTART Program startup code
\r
86 // CODE Program code
\r
87 // ISR_CODE Program code for interrupt service routines
\r
88 // DIFUNCT Dynamic initialization vector used by C++
\r
89 // CHECKSUM Checksum byte(s) generated by the -J option
\r
90 // INTVEC Interrupt vectors
\r
91 // RESET The reset vector
\r
95 // * The segments CSTART, ISR_CODE, and DIFUNCT, as well as the segments in
\r
96 // the DATA16 segment group must be placed in in the range 0000-FFFD.
\r
98 // * The INFOx and INFO segments overlap, this allows data either to be
\r
99 // placed in a specific bank or anywhere in the info memory.
\r
101 // * The INTVEC and RESET segments overlap. This allows an application to
\r
102 // either use the reset vector provided by the runtime library, or
\r
103 // provide a reset function by defining an interrupt function associated
\r
104 // with the reset vector.
\r
108 // ---------------------------------------------------------
\r
112 // -----------------------------------------------
\r
113 // Stack and heap sizes
\r
116 // Uncomment for command line use
\r
118 //-D_DATA16_HEAP_SIZE=80
\r
119 //-D_DATA20_HEAP_SIZE=80
\r
122 // -----------------------------------------------
\r
129 // -----------------------------------------------
\r
130 // Support for placing functions in read/write memory
\r
136 // ---------------------------------------------------------
\r
137 // Placement directives
\r
140 // -----------------------------------------------
\r
141 // Read/write memory
\r
144 /* Commented out and substituted the original memory region definition */
\r
145 /* for RAM to reserve the memory region from 0x2000 to 0x2021 as it is */
\r
146 /* used during active mode Icc tests in "5xx_ACTIVE_test.asm" */
\r
147 //-Z(DATA)DATA16_I,DATA16_Z,DATA16_N,DATA16_HEAP+_DATA16_HEAP_SIZE=1C00-5BFF
\r
149 -Z(DATA)DATA16_I,DATA16_Z,DATA16_N,DATA16_HEAP+_DATA16_HEAP_SIZE=1C00-2000,2022-5BFF
\r
151 -Z(DATA)DATA20_I,DATA20_Z,DATA20_N,DATA20_HEAP+_DATA20_HEAP_SIZE
\r
152 -Z(DATA)CSTACK+_STACK_SIZE#
\r
155 // -----------------------------------------------
\r
156 // Read-only memory
\r
159 // -------------------------------------
\r
160 // Information memory
\r
163 -Z(CONST)INFO=1800-19FF
\r
164 -Z(CONST)INFOA=1980-19FF
\r
165 -Z(CONST)INFOB=1900-197F
\r
166 -Z(CONST)INFOC=1880-18FF
\r
167 -Z(CONST)INFOD=1800-187F
\r
171 // -------------------------------------
\r
172 // Low memory 0-0FFFF
\r
175 // ---------------------------
\r
179 -Z(CODE)CSTART,ISR_CODE=5C00-FF7F
\r
181 // ---------------------------
\r
185 -Z(CONST)DATA16_C,DATA16_ID,DIFUNCT,CHECKSUM=5C00-FF7F
\r
188 // -------------------------------------
\r
189 // All memory 0-FFFFF
\r
192 // ---------------------------
\r
196 // Can be modified to test the use of high memory.
\r
198 -P(CODE)CODE=5C00-FF7F,10000-45BFF
\r
200 //-P(CODE)CODE=10000-45BFF
\r
204 // ---------------------------
\r
208 // *** Modified to place code in high memory and insodoing, testing the port.
\r
210 -Z(CONST)DATA20_C,DATA20_ID=5C00-FF7F,10000-45BFF
\r
212 //-Z(CONST)DATA20_C,DATA20_ID=10000-45BFF
\r
215 // -------------------------------------
\r
216 // Interrupt vectors
\r
219 -Z(CODE)INTVEC=FF80-FFFF
\r
220 -Z(CODE)RESET=FFFE-FFFF
\r