X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=cpu%2Fmusashi%2Fm68kcpu.h;h=63055cbe23f64c4a962c9a1799c13fe78b0ea05f;hb=0104fd873b44d7352336fa494246803addffb66a;hp=50aa6cef979a5322712aea74037397e67e1d658e;hpb=3335750a7df62a52857348365e9dbbf6f23a0d29;p=picodrive.git diff --git a/cpu/musashi/m68kcpu.h b/cpu/musashi/m68kcpu.h index 50aa6ce..63055cb 100644 --- a/cpu/musashi/m68kcpu.h +++ b/cpu/musashi/m68kcpu.h @@ -27,8 +27,10 @@ #define M68KCPU__HEADER // notaz: something's missing this -#ifndef UINT16 +#ifndef UINT64 #define UINT64 unsigned long long +#endif +#ifndef UINT16 #define UINT32 unsigned int #define UINT16 unsigned short #define UINT8 unsigned char @@ -917,6 +919,7 @@ typedef struct // notaz sint cyc_remaining_cycles; + sint not_polling; } m68ki_cpu_core; // notaz @@ -1620,7 +1623,7 @@ INLINE void m68ki_stack_frame_buserr(uint sr) /* Format 8 stack frame (68010). * 68010 only. This is the 29 word bus/address error frame. */ -void m68ki_stack_frame_1000(uint pc, uint sr, uint vector) +INLINE void m68ki_stack_frame_1000(uint pc, uint sr, uint vector) { /* VERSION * NUMBER @@ -1674,7 +1677,7 @@ void m68ki_stack_frame_1000(uint pc, uint sr, uint vector) * if the error happens at an instruction boundary. * PC stacked is address of next instruction. */ -void m68ki_stack_frame_1010(uint sr, uint vector, uint pc) +INLINE void m68ki_stack_frame_1010(uint sr, uint vector, uint pc) { /* INTERNAL REGISTER */ m68ki_push_16(0); @@ -1721,7 +1724,7 @@ void m68ki_stack_frame_1010(uint sr, uint vector, uint pc) * if the error happens during instruction execution. * PC stacked is address of instruction in progress. */ -void m68ki_stack_frame_1011(uint sr, uint vector, uint pc) +INLINE void m68ki_stack_frame_1011(uint sr, uint vector, uint pc) { /* INTERNAL REGISTERS (18 words) */ m68ki_push_32(0); @@ -1965,7 +1968,7 @@ m68k_read_memory_8(0x00ffff01); /* Service an interrupt request and start exception processing */ -void m68ki_exception_interrupt(uint int_level) +INLINE void m68ki_exception_interrupt(uint int_level) { uint vector; uint sr; @@ -2010,6 +2013,7 @@ void m68ki_exception_interrupt(uint int_level) /* Get the new PC */ new_pc = m68ki_read_data_32((vector<<2) + REG_VBR); + //new_pc = m68k_read_immediate_32((vector<<2) + REG_VBR); // notaz hack /* If vector is uninitialized, call the uninitialized interrupt vector */ if(new_pc == 0)