source: trunk/libs/newlib/src/libgloss/hp74x/iva_table.h @ 444

Last change on this file since 444 was 444, checked in by satin@…, 6 years ago

add newlib,libalmos-mkh, restructure shared_syscalls.h and mini-libc

File size: 3.1 KB
Line 
1/****************************************************************************
2
3                THIS SOFTWARE IS NOT COPYRIGHTED
4
5   HP offers the following for use in the public domain.  HP makes no
6   warranty with regard to the software or it's performance and the
7   user accepts the software "AS IS" with all faults.
8
9   HP DISCLAIMS ANY WARRANTIES, EXPRESS OR IMPLIED, WITH REGARD
10   TO THIS SOFTWARE INCLUDING BUT NOT LIMITED TO THE WARRANTIES
11   OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
12
13****************************************************************************/
14
15                /* Interrupt Vector Table entry macros */
16
17#define cstring(Len,String)     .byte   Len !\
18                                .string String
19
20#define cstringz(Len,String)    .byte   Len !\
21                                .stringz        String
22
23AdvancePCOQ     .macro
24        mtctl   %r0,%pcoq       ; throw away iiaoq head pointer, tail->head
25        mfctl   %pcoq,%r1       ; get tail pointer
26        mtctl   %r1,%pcoq       ; insert tail pointer
27        ldo     4(%r1),%r1      ; advance tail pointer
28        mtctl   %r1,%pcoq       ; insert new tail pointer, former tail->head
29        .endm
30
31#ifdef  PRINTSTRING_LED
32PrintString     .macro  NString,Num
33        bl      put_led,%mrp
34        ldi     Num+0xa0,%arg2
35        addil   L%NString-$global$,%dp
36        bl      puts,%rp
37        ldo     R%NString-$global$(%r1),%arg0
38        b,n     .
39        nop
40        .endm
41#endif
42
43#ifdef  HALT
44
45PrintString     .macro  NString,Num
46        bl,n    save_state,%r25
47        nop
48        bl      print_intr,%rp
49        ldi     NString-Str01,%arg0
50        bl      print_state,%rp
51        nop
52        b,n     halt
53        nop
54        .endm
55
56#endif
57
58#ifdef  RECOVER
59
60PrintString     .macro  NString,Num
61        bl,n    save_state,%r25
62        nop
63        bl      print_intr,%rp
64        ldi     NString-Str01,%arg0
65        bl      print_state,%rp
66        nop
67        b,n     recover
68        nop
69        .endm
70
71#endif
72
73PrintString     .macro  NString,Num
74        bl,n    save_state,%r25
75        nop
76        bl      print_intr,%rp
77        ldi     NString-Str01,%arg0
78#ifdef  FULL_REPORT
79        bl      print_state,%rp
80#else
81        nop
82#endif
83        nop
84        b       restore_to_STUB
85        ldi     Num,%r1
86        .endm
87
88
89        /* IVA register array offets */
90
91#define R_sr0             0
92#define R_sr1             4
93#define R_sr2             8
94#define R_sr3            12
95#define R_sr4            16
96#define R_sr5            20
97#define R_sr6            24
98#define R_sr7            28
99
100#define R_gr0            32
101#define R_gr1            36
102#define R_gr2            40
103#define R_gr3            44
104#define R_gr4            48
105#define R_gr5            52
106#define R_gr6            56
107#define R_gr7            60
108#define R_gr8            64
109#define R_gr9            68
110#define R_gr10           72
111#define R_gr11           76
112#define R_gr12           80
113#define R_gr13           84
114#define R_gr14           88
115#define R_gr15           92
116#define R_gr16           96
117#define R_gr17          100
118#define R_gr18          104
119#define R_gr19          108
120#define R_gr20          112
121#define R_gr21          116
122#define R_gr22          120
123#define R_gr23          124
124#define R_gr24          128
125#define R_gr25          132
126#define R_gr26          136
127#define R_gr27          140
128#define R_gr28          144
129#define R_gr29          148
130#define R_gr30          152
131#define R_gr31          156
132
133#define R_rctr          160
134#define R_cpu0          164
135#define R_pidr1         168
136#define R_pidr2         172
137#define R_ccr           176
138#define R_sar           180
139#define R_pidr3         184
140#define R_pidr4         188
141#define R_iva           192
142#define R_eiem          196
143
144#define R_itmr          200
145#define R_pcsqH         204
146#define R_pcoqH         208
147#define R_iir           212
148#define R_pcsqT         216
149#define R_pcoqT         220
150#define R_isr           224
151#define R_ior           228
152#define R_ipsw          232
153#define R_eirr          236
154
155#define R_tr0           240
156#define R_tr1           244
157#define R_tr2           248
158#define R_tr3           252
159#define R_tr4           256
160#define R_tr5           260
161#define R_tr6           264
162#define R_tr7           268
163
164#define R_SIZE          272
Note: See TracBrowser for help on using the repository browser.