From: SND\notaz_cp Date: Wed, 9 Mar 2011 22:30:50 +0000 (+0000) Subject: psxinterpreter: do interrupt test after doing target instruction X-Git-Tag: r8~20 X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=abbc1ca1f763c1f4aa46b60f3ea7dfb4bed3fb6f;p=pcsx_rearmed.git psxinterpreter: do interrupt test after doing target instruction otherwise in case interrupt happens, target insn is executed twice, causing occasional glitches in Tekken 2. Also clear branch flag for it - it's not in delay slot. git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@64369 e17a0e51-4ae3-4d35-97c3-1a29b211df97 --- diff --git a/libpcsxcore/psxinterpreter.c b/libpcsxcore/psxinterpreter.c index 3258743b..f1712050 100644 --- a/libpcsxcore/psxinterpreter.c +++ b/libpcsxcore/psxinterpreter.c @@ -59,13 +59,13 @@ static void delayRead(int reg, u32 bpc) { psxRegs.pc = bpc; - psxBranchTest(); + branch = 0; psxRegs.GPR.r[reg] = rold; execI(); // first branch opcode psxRegs.GPR.r[reg] = rnew; - branch = 0; + psxBranchTest(); } static void delayWrite(int reg, u32 bpc) {