/* Exception Vectors handled by emulation */\r
#define EXCEPTION_BUS_ERROR 2 /* This one is not emulated! */\r
#define EXCEPTION_ADDRESS_ERROR 3 /* This one is partially emulated (doesn't stack a proper frame yet) */\r
+#undef EXCEPTION_ILLEGAL_INSTRUCTION\r
#define EXCEPTION_ILLEGAL_INSTRUCTION 4\r
#define EXCEPTION_ZERO_DIVIDE 5\r
#define EXCEPTION_CHK 6\r
\r
// notaz\r
sint cyc_remaining_cycles;\r
+ sint not_polling;\r
} m68ki_cpu_core;\r
\r
// notaz\r
/* Format 8 stack frame (68010).\r
* 68010 only. This is the 29 word bus/address error frame.\r
*/\r
-void m68ki_stack_frame_1000(uint pc, uint sr, uint vector)\r
+INLINE void m68ki_stack_frame_1000(uint pc, uint sr, uint vector)\r
{\r
/* VERSION\r
* NUMBER\r
* if the error happens at an instruction boundary.\r
* PC stacked is address of next instruction.\r
*/\r
-void m68ki_stack_frame_1010(uint sr, uint vector, uint pc)\r
+INLINE void m68ki_stack_frame_1010(uint sr, uint vector, uint pc)\r
{\r
/* INTERNAL REGISTER */\r
m68ki_push_16(0);\r
* if the error happens during instruction execution.\r
* PC stacked is address of instruction in progress.\r
*/\r
-void m68ki_stack_frame_1011(uint sr, uint vector, uint pc)\r
+INLINE void m68ki_stack_frame_1011(uint sr, uint vector, uint pc)\r
{\r
/* INTERNAL REGISTERS (18 words) */\r
m68ki_push_32(0);\r
\r
\r
/* Service an interrupt request and start exception processing */\r
-void m68ki_exception_interrupt(uint int_level)\r
+INLINE void m68ki_exception_interrupt(uint int_level)\r
{\r
uint vector;\r
uint sr;\r
FLAG_INT_MASK = int_level<<8;\r
\r
/* Get the new PC */\r
- //new_pc = m68ki_read_data_32((vector<<2) + REG_VBR);\r
- new_pc = m68k_read_immediate_32((vector<<2) + REG_VBR); // notaz hack\r
+ new_pc = m68ki_read_data_32((vector<<2) + REG_VBR);\r
+ //new_pc = m68k_read_immediate_32((vector<<2) + REG_VBR); // notaz hack\r
\r
/* If vector is uninitialized, call the uninitialized interrupt vector */\r
if(new_pc == 0)\r