cpu only continues when an interrupt is actually executed (handled in m37710i_update_irqs)

This commit is contained in:
Michaël Banaan Ananas 2011-09-06 00:51:54 +00:00
parent 322f520459
commit 60ba9ae988

View File

@ -2823,7 +2823,8 @@ TABLE_FUNCTION(void, set_line, (m37710i_cpu_struct *cpustate, int line, int stat
{ {
cpustate->m37710_regs[m37710_irq_levels[line]] &= ~8; cpustate->m37710_regs[m37710_irq_levels[line]] &= ~8;
} }
return; break;
case ASSERT_LINE: case ASSERT_LINE:
case PULSE_LINE: case PULSE_LINE:
case HOLD_LINE: case HOLD_LINE:
@ -2833,16 +2834,12 @@ TABLE_FUNCTION(void, set_line, (m37710i_cpu_struct *cpustate, int line, int stat
cpustate->m37710_regs[m37710_irq_levels[line]] |= 8; cpustate->m37710_regs[m37710_irq_levels[line]] |= 8;
} }
break; break;
}
// if I flag is set, trip the WAI mechanism only (may not be totally accurate) default: break;
if(FLAG_I)
{
if(CPU_STOPPED & STOP_LEVEL_WAI)
CPU_STOPPED &= ~STOP_LEVEL_WAI;
return;
} }
return; break;
default: break;
} }
} }