return regs.ipl > regs.intmask || regs.ipl == 7;
}
-void doint (void)
+void doint(void)
{
#ifdef WITH_PPC
if (ppc_state) {
#endif
if (m68k_interrupt_delay) {
regs.ipl_pin = intlev ();
- unset_special (SPCFLAG_INT);
+ set_special(SPCFLAG_INT);
return;
}
if (currprefs.cpu_compatible && currprefs.cpu_model < 68020)
do_copper ();
if (m68k_interrupt_delay) {
+ unset_special(SPCFLAG_INT);
ipl_fetch ();
if (time_for_interrupt ()) {
do_interrupt (regs.ipl);
}
if (m68k_interrupt_delay) {
+ unset_special(SPCFLAG_INT);
if (time_for_interrupt ()) {
do_interrupt (regs.ipl);
}