//Decode SR.IMSK into a interrupt mask, update and return the interrupt state
bool SRdecode(void)
{
   decoded_srimask = (sr.BL) ? ~0xFFFFFFFF : ~InterruptLevelBit[sr.IMASK];

	recalc_pending_itrs();
	return Sh4cntx.interrupt_pend;
}
Example #2
0
//Decode SR.IMSK into a interrupt mask, update and return the interrupt state
bool SRdecode()
{
    if (sr.BL)
        decoded_srimask=~0xFFFFFFFF;
    else
        decoded_srimask=~InterruptLevelBit[sr.IMASK];

    recalc_pending_itrs();
    return Sh4cntx.interrupt_pend;
}
void ResetInterruptMask(InterruptID intr)
{
	u32 piid= intr & InterruptPIIDMask;
	interrupt_vmask&=~InterruptBit[piid];
	recalc_pending_itrs();
}
void SetInterruptPend(InterruptID intr)
{
	u32 piid= intr & InterruptPIIDMask;
	interrupt_vpend|=InterruptBit[piid];
	recalc_pending_itrs();
}