source: trunk/Softwares/Test/Test_008/src/sys/crt0.s @ 99

Last change on this file since 99 was 98, checked in by rosiere, 16 years ago

1) Fix bug (read unit, RAT -> write in R0, SPR desallocation ...)
2) Change VHDL Execute_queue -> use Generic/Queue?
3) Complete document on VHDL generation
4) Add soc test

  • Property svn:keywords set to Id
File size: 1.0 KB
Line 
1/*
2 * Test_008
3 *
4 * end_ko : infinite_loop
5 * end_ok : Write in R1 the stop address and stop an data
6 *          The store in the destination of an jump
7 * start  : write an value in special register (epcr), and read this special register
8 */
9       
10        .file   "crt0.s"
11        /*
12        .section .vector
13        */
14        .section .text
15        .align  4       
16
17/* ---[ 0x0  : Print a error ]------------------------------------------- */
18
19        .org 0x0
20_end_ko        :       
21_infinite_loop :       
22        l.j     _infinite_loop
23        l.nop
24
25_end_ok :
26        l.movhi r1,     hi(_tty)
27        l.ori   r1, r1, lo(_tty)
28        l.sw    4(r1), r1 /* stop address */
29
30
31/* ---[ 0x100: RESET exception ]----------------------------------------- */
32        .org 0x100
33        .global _start
34_start:
35        /* r1 : data */
36        l.movhi r1,     hi(0xdeadbeef)
37        l.ori   r1, r1, lo(0xdeadbeef)
38        /* EPCR <- r1 */
39        l.mtspr r0, r1, 32
40        /* r2 <- EPCR */
41        l.mfspr r2, r0, 32
42        /* test if two register is same */
43        l.sfeq  r2, r1
44        l.bnf   _end_ko
45        l.nop
46        l.j     _end_ok
47        l.nop
48
Note: See TracBrowser for help on using the repository browser.