X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=cpu%2Fsh2mame%2Fsh2.h;h=ef2b06e6327fc1dcadb85b3e0f6e55c32bf3097d;hb=1d29444dfc5c59987ea7bab80b8c9f03e5f2d571;hp=1fab412cab1d275be85e776d4d9acd0ab18e3e15;hpb=2ea2cbfe8ba1607505f4fa7a4b4e9074c6337066;p=picodrive.git diff --git a/cpu/sh2mame/sh2.h b/cpu/sh2mame/sh2.h index 1fab412c..ef2b06e6 100644 --- a/cpu/sh2mame/sh2.h +++ b/cpu/sh2mame/sh2.h @@ -32,23 +32,25 @@ typedef struct { - UINT32 r[16]; - UINT32 ppc; - UINT32 pc; - UINT32 pr; - UINT32 sr; - UINT32 gbr, vbr; - UINT32 mach, macl; - - UINT32 ea; - UINT32 delay; - UINT32 test_irq; - - int pending_irq; + unsigned int r[16]; + unsigned int ppc; + unsigned int pc; + unsigned int pr; + unsigned int sr; + unsigned int gbr, vbr; + unsigned int mach, macl; + + unsigned int ea; + unsigned int delay; + unsigned int test_irq; + + int pending_irl; + int pending_int_irq; // internal irq + int pending_int_vector; void (*irq_callback)(int id, int level); int is_slave; - UINT32 cycles_aim; // subtract sh2_icount to get global counter + unsigned int cycles_aim; // subtract sh2_icount to get global counter } SH2; SH2 *sh2; // active sh2 @@ -58,5 +60,6 @@ void sh2_init(SH2 *sh2, int is_slave); void sh2_reset(SH2 *sh2); int sh2_execute(SH2 *sh2_, int cycles); void sh2_irl_irq(SH2 *sh2, int level); +void sh2_internal_irq(SH2 *sh2, int level, int vector); #endif /* __SH2_H__ */