X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=libpcsxcore%2Fnew_dynarec%2Fevents.c;h=2a06c1f9663f4c12aaaa94c097f40657a96d025f;hb=ff49d6b356e52759216b8e2fd6c289f587f07ff7;hp=5d981f8d561d3c273dcd4d1bd1a626aa6c7568ca;hpb=6c62131f8b4a923e02bb8a9d8cd9f62a90fa20a7;p=pcsx_rearmed.git diff --git a/libpcsxcore/new_dynarec/events.c b/libpcsxcore/new_dynarec/events.c index 5d981f8d..2a06c1f9 100644 --- a/libpcsxcore/new_dynarec/events.c +++ b/libpcsxcore/new_dynarec/events.c @@ -68,8 +68,11 @@ static void irq_test(psxCP0Regs *cp0) } } - if ((psxHu32(0x1070) & psxHu32(0x1074)) && (cp0->n.Status & 0x401) == 0x401) { - psxException(0x400, 0, cp0); + cp0->n.Cause &= ~0x400; + if (psxHu32(0x1070) & psxHu32(0x1074)) + cp0->n.Cause |= 0x400; + if (((cp0->n.Cause | 1) & cp0->n.SR & 0x401) == 0x401) { + psxException(0, 0, cp0); pending_exception = 1; } }