2 ; FreeRTOS.org V5.4.0 - Copyright (C) 2003-2009 Richard Barry.
\r
4 ; This file is part of the FreeRTOS.org distribution.
\r
6 ; FreeRTOS.org is free software; you can redistribute it and/or modify it
\r
7 ; under the terms of the GNU General Public License (version 2) as published
\r
8 ; by the Free Software Foundation and modified by the FreeRTOS exception.
\r
9 ; **NOTE** The exception to the GPL is included to allow you to distribute a
\r
10 ; combined work that includes FreeRTOS.org without being obliged to provide
\r
11 ; the source code for any proprietary components. Alternative commercial
\r
12 ; license and support terms are also available upon request. See the
\r
13 ; licensing section of http://www.FreeRTOS.org for full details.
\r
15 ; FreeRTOS.org is distributed in the hope that it will be useful, but WITHOUT
\r
16 ; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
\r
17 ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
\r
20 ; You should have received a copy of the GNU General Public License along
\r
21 ; with FreeRTOS.org; if not, write to the Free Software Foundation, Inc., 59
\r
22 ; Temple Place, Suite 330, Boston, MA 02111-1307 USA.
\r
25 ; ***************************************************************************
\r
27 ; * Get the FreeRTOS eBook! See http://www.FreeRTOS.org/Documentation *
\r
29 ; * This is a concise, step by step, 'hands on' guide that describes both *
\r
30 ; * general multitasking concepts and FreeRTOS specifics. It presents and *
\r
31 ; * explains numerous examples that are written using the FreeRTOS API. *
\r
32 ; * Full source code for all the examples is provided in an accompanying *
\r
35 ; ***************************************************************************
\r
37 ; 1 tab == 4 spaces!
\r
39 ; Please ensure to read the configuration and relevant port sections of the
\r
40 ; online documentation.
\r
42 ; http://www.FreeRTOS.org - Documentation, latest information, license and
\r
45 ; http://www.SafeRTOS.com - A version that is certified for use in safety
\r
48 ; http://www.OpenRTOS.com - Commercial support, development, porting,
\r
49 ; licensing and training services.
\r
51 ; Note: Select the correct include files for the device used by the application.
\r
53 EXTERN vRegTestFailed
\r
58 ; The RegTest tasks as described in the comments at the top of main().
\r
62 ;------------------------------------------------------------------------------
\r
64 ; Functions implemented in this file
\r
65 ;------------------------------------------------------------------------------
\r
70 ;------------------------------------------------------------------------------
\r
71 ;------------------------------------------------------------------------------
\r
76 ; Ignore R3 and R4 as these are the stack and global pointers respectively.
\r
97 #if ( configDATA_MODE == 1 )
\r
98 ;R25 is used as a base register except when the tiny model is used. */
\r
101 MOV 0x19191919, R26
\r
102 MOV 0x20202020, R27
\r
103 MOV 0x21212121, R28
\r
104 MOV 0x22222222, R29
\r
105 MOV 0x23232323, R30
\r
107 vReg1TestLoopStart:
\r
109 MOV 0x01010101, R31
\r
112 JARL vRegTestFailed, lp
\r
113 MOV 0x02020202, R31
\r
116 JARL vRegTestFailed, lp
\r
117 MOV 0x04040404, R31
\r
120 JARL vRegTestFailed, lp
\r
121 MOV 0x05050505, R31
\r
124 JARL vRegTestFailed, lp
\r
125 MOV 0x06060606, R31
\r
128 JARL vRegTestFailed, lp
\r
129 MOV 0x07070707, R31
\r
132 JARL vRegTestFailed, lp
\r
133 MOV 0x08080808, R31
\r
136 JARL vRegTestFailed, lp
\r
137 MOV 0x09090909, R31
\r
140 JARL vRegTestFailed, lp
\r
141 MOV 0x0a0a0a0a, R31
\r
144 JARL vRegTestFailed, lp
\r
145 MOV 0x0b0b0b0b, R31
\r
148 JARL vRegTestFailed, lp
\r
149 MOV 0x0c0c0c0c, R31
\r
152 JARL vRegTestFailed, lp
\r
153 MOV 0x0d0d0d0d, R31
\r
156 JARL vRegTestFailed, lp
\r
157 MOV 0x0e0e0e0e, R31
\r
160 JARL vRegTestFailed, lp
\r
161 MOV 0x0f0f0f0f, R31
\r
164 JARL vRegTestFailed, lp
\r
165 MOV 0x10101010, R31
\r
168 JARL vRegTestFailed, lp
\r
169 MOV 0x11111111, R31
\r
172 JARL vRegTestFailed, lp
\r
173 MOV 0x12121212, R31
\r
176 JARL vRegTestFailed, lp
\r
177 MOV 0x13131313, R31
\r
180 JARL vRegTestFailed, lp
\r
181 MOV 0x14141414, R31
\r
184 JARL vRegTestFailed, lp
\r
185 MOV 0x15151515, R31
\r
188 JARL vRegTestFailed, lp
\r
189 MOV 0x16161616, R31
\r
192 JARL vRegTestFailed, lp
\r
193 MOV 0x17171717, R31
\r
196 JARL vRegTestFailed, lp
\r
197 #if ( configDATA_MODE == 1 )
\r
198 MOV 0x18181818, R31
\r
201 JARL vRegTestFailed, lp
\r
203 MOV 0x19191919, R31
\r
206 JARL vRegTestFailed, lp
\r
207 MOV 0x20202020, R31
\r
210 JARL vRegTestFailed, lp
\r
211 MOV 0x21212121, R31
\r
214 JARL vRegTestFailed, lp
\r
215 MOV 0x22222222, R31
\r
218 JARL vRegTestFailed, lp
\r
219 MOV 0x23232323, R31
\r
222 JARL vRegTestFailed, lp
\r
223 MOV vReg1TestLoopStart, R31
\r
226 ;------------------------------------------------------------------------------
\r
227 ;------------------------------------------------------------------------------
\r
232 ; Ignore R3 and R4 as these are the stack and global pointers respectively.
\r
238 MOV 0xa909090b, R10
\r
239 MOV 0xaa0a0a0b, R11
\r
240 MOV 0xab0b0b0b, R12
\r
241 MOV 0xac0c0c0b, R13
\r
242 MOV 0xad0d0d0b, R14
\r
243 MOV 0xae0e0e0b, R15
\r
244 MOV 0xaf0f0f0b, R16
\r
245 MOV 0xa010101b, R17
\r
246 MOV 0xa111111b, R18
\r
247 MOV 0xa212121b, R19
\r
248 MOV 0xa313131b, R20
\r
249 MOV 0xa414141b, R21
\r
250 MOV 0xa515151b, R22
\r
251 MOV 0xa616161b, R23
\r
252 MOV 0xa717171b, R24
\r
253 #if ( configDATA_MODE == 1 )
\r
254 ;R25 is used as a base register except when the tiny model is used. */
\r
255 MOV 0xa818181b, R25
\r
257 MOV 0xa919191b, R26
\r
258 MOV 0xa020202b, R27
\r
259 MOV 0xa121212b, R28
\r
260 MOV 0xa222222b, R29
\r
261 MOV 0xa323232b, R30
\r
263 vReg2TestLoopStart:
\r
264 MOV 0xa101010b, R31
\r
267 JARL vRegTestFailed, lp
\r
268 MOV 0xa202020b, R31
\r
271 JARL vRegTestFailed, lp
\r
272 MOV 0xa404040b, R31
\r
275 JARL vRegTestFailed, lp
\r
276 MOV 0xa505050b, R31
\r
279 JARL vRegTestFailed, lp
\r
280 MOV 0xa606060b, R31
\r
283 JARL vRegTestFailed, lp
\r
284 MOV 0xa707070b, R31
\r
287 JARL vRegTestFailed, lp
\r
288 MOV 0xa808080b, R31
\r
291 JARL vRegTestFailed, lp
\r
292 MOV 0xa909090b, R31
\r
295 JARL vRegTestFailed, lp
\r
296 MOV 0xaa0a0a0b, R31
\r
299 JARL vRegTestFailed, lp
\r
300 MOV 0xab0b0b0b, R31
\r
303 JARL vRegTestFailed, lp
\r
304 MOV 0xac0c0c0b, R31
\r
307 JARL vRegTestFailed, lp
\r
308 MOV 0xad0d0d0b, R31
\r
311 JARL vRegTestFailed, lp
\r
312 MOV 0xae0e0e0b, R31
\r
315 JARL vRegTestFailed, lp
\r
316 MOV 0xaf0f0f0b, R31
\r
319 JARL vRegTestFailed, lp
\r
320 MOV 0xa010101b, R31
\r
323 JARL vRegTestFailed, lp
\r
324 MOV 0xa111111b, R31
\r
327 JARL vRegTestFailed, lp
\r
328 MOV 0xa212121b, R31
\r
331 JARL vRegTestFailed, lp
\r
332 MOV 0xa313131b, R31
\r
335 JARL vRegTestFailed, lp
\r
336 MOV 0xa414141b, R31
\r
339 JARL vRegTestFailed, lp
\r
340 MOV 0xa515151b, R31
\r
343 JARL vRegTestFailed, lp
\r
344 MOV 0xa616161b, R31
\r
347 JARL vRegTestFailed, lp
\r
348 MOV 0xa717171b, R31
\r
351 JARL vRegTestFailed, lp
\r
352 #if ( configDATA_MODE == 1 )
\r
353 MOV 0xa818181b, R31
\r
356 JARL vRegTestFailed, lp
\r
358 MOV 0xa919191b, R31
\r
361 JARL vRegTestFailed, lp
\r
362 MOV 0xa020202b, R31
\r
365 JARL vRegTestFailed, lp
\r
366 MOV 0xa121212b, R31
\r
369 JARL vRegTestFailed, lp
\r
370 MOV 0xa222222b, R31
\r
373 JARL vRegTestFailed, lp
\r
374 MOV 0xa323232b, R31
\r
377 JARL vRegTestFailed, lp
\r
378 MOV vReg2TestLoopStart, R31
\r