diff options
author | Ranjith Kumaran <ranjith@cygnus.com> | 2000-03-17 22:48:54 +0000 |
---|---|---|
committer | Ranjith Kumaran <ranjith@cygnus.com> | 2000-03-17 22:48:54 +0000 |
commit | 03261851a10dd2d6900a0a00a7515a0a46fb5d76 (patch) | |
tree | 7c22ac6cbbc99fd5cd1b5426853be8d4fd7bfcf1 /libgloss/hp74x/iva_table.h | |
parent | fae4c299f14fc23e2829c8656992eba21f79242a (diff) | |
download | cygnal-03261851a10dd2d6900a0a00a7515a0a46fb5d76.tar.gz cygnal-03261851a10dd2d6900a0a00a7515a0a46fb5d76.tar.bz2 cygnal-03261851a10dd2d6900a0a00a7515a0a46fb5d76.zip |
20000317 sourceware import
Diffstat (limited to 'libgloss/hp74x/iva_table.h')
-rw-r--r-- | libgloss/hp74x/iva_table.h | 164 |
1 files changed, 164 insertions, 0 deletions
diff --git a/libgloss/hp74x/iva_table.h b/libgloss/hp74x/iva_table.h new file mode 100644 index 000000000..68d6ba977 --- /dev/null +++ b/libgloss/hp74x/iva_table.h @@ -0,0 +1,164 @@ +/**************************************************************************** + + THIS SOFTWARE IS NOT COPYRIGHTED + + HP offers the following for use in the public domain. HP makes no + warranty with regard to the software or it's performance and the + user accepts the software "AS IS" with all faults. + + HP DISCLAIMS ANY WARRANTIES, EXPRESS OR IMPLIED, WITH REGARD + TO THIS SOFTWARE INCLUDING BUT NOT LIMITED TO THE WARRANTIES + OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + +****************************************************************************/ + + /* Interrupt Vector Table entry macros */ + +#define cstring(Len,String) .byte Len !\ + .string String + +#define cstringz(Len,String) .byte Len !\ + .stringz String + +AdvancePCOQ .macro + mtctl %r0,%pcoq ; throw away iiaoq head pointer, tail->head + mfctl %pcoq,%r1 ; get tail pointer + mtctl %r1,%pcoq ; insert tail pointer + ldo 4(%r1),%r1 ; advance tail pointer + mtctl %r1,%pcoq ; insert new tail pointer, former tail->head + .endm + +#ifdef PRINTSTRING_LED +PrintString .macro NString,Num + bl put_led,%mrp + ldi Num+0xa0,%arg2 + addil L%NString-$global$,%dp + bl puts,%rp + ldo R%NString-$global$(%r1),%arg0 + b,n . + nop + .endm +#endif + +#ifdef HALT + +PrintString .macro NString,Num + bl,n save_state,%r25 + nop + bl print_intr,%rp + ldi NString-Str01,%arg0 + bl print_state,%rp + nop + b,n halt + nop + .endm + +#endif + +#ifdef RECOVER + +PrintString .macro NString,Num + bl,n save_state,%r25 + nop + bl print_intr,%rp + ldi NString-Str01,%arg0 + bl print_state,%rp + nop + b,n recover + nop + .endm + +#endif + +PrintString .macro NString,Num + bl,n save_state,%r25 + nop + bl print_intr,%rp + ldi NString-Str01,%arg0 +#ifdef FULL_REPORT + bl print_state,%rp +#else + nop +#endif + nop + b restore_to_STUB + ldi Num,%r1 + .endm + + + /* IVA register array offets */ + +#define R_sr0 0 +#define R_sr1 4 +#define R_sr2 8 +#define R_sr3 12 +#define R_sr4 16 +#define R_sr5 20 +#define R_sr6 24 +#define R_sr7 28 + +#define R_gr0 32 +#define R_gr1 36 +#define R_gr2 40 +#define R_gr3 44 +#define R_gr4 48 +#define R_gr5 52 +#define R_gr6 56 +#define R_gr7 60 +#define R_gr8 64 +#define R_gr9 68 +#define R_gr10 72 +#define R_gr11 76 +#define R_gr12 80 +#define R_gr13 84 +#define R_gr14 88 +#define R_gr15 92 +#define R_gr16 96 +#define R_gr17 100 +#define R_gr18 104 +#define R_gr19 108 +#define R_gr20 112 +#define R_gr21 116 +#define R_gr22 120 +#define R_gr23 124 +#define R_gr24 128 +#define R_gr25 132 +#define R_gr26 136 +#define R_gr27 140 +#define R_gr28 144 +#define R_gr29 148 +#define R_gr30 152 +#define R_gr31 156 + +#define R_rctr 160 +#define R_cpu0 164 +#define R_pidr1 168 +#define R_pidr2 172 +#define R_ccr 176 +#define R_sar 180 +#define R_pidr3 184 +#define R_pidr4 188 +#define R_iva 192 +#define R_eiem 196 + +#define R_itmr 200 +#define R_pcsqH 204 +#define R_pcoqH 208 +#define R_iir 212 +#define R_pcsqT 216 +#define R_pcoqT 220 +#define R_isr 224 +#define R_ior 228 +#define R_ipsw 232 +#define R_eirr 236 + +#define R_tr0 240 +#define R_tr1 244 +#define R_tr2 248 +#define R_tr3 252 +#define R_tr4 256 +#define R_tr5 260 +#define R_tr6 264 +#define R_tr7 268 + +#define R_SIZE 272 |