summaryrefslogtreecommitdiff
path: root/libpcsxcore/ix86
diff options
context:
space:
mode:
authorSND\weimingzhi_cp <SND\weimingzhi_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-09-07 00:55:05 +0000
committerSND\weimingzhi_cp <SND\weimingzhi_cp@e17a0e51-4ae3-4d35-97c3-1a29b211df97>2010-09-07 00:55:05 +0000
commit28bd1fcb797ea86e92eea358c124eede6bdf62c0 (patch)
tree34cc2ddd5672b5d8db850837fcc5880cee5cb4bd /libpcsxcore/ix86
parent01f9db90eab920aa6ce7a51266c49b54ea01b1dd (diff)
downloadpcsxr-28bd1fcb797ea86e92eea358c124eede6bdf62c0.tar.gz
ported the change in r56828 to dynarec (is the check in psxBASIC() really necessary?), removed powerpc dynarec (cannot test and likely broken).
git-svn-id: https://pcsxr.svn.codeplex.com/svn/pcsxr@56896 e17a0e51-4ae3-4d35-97c3-1a29b211df97
Diffstat (limited to 'libpcsxcore/ix86')
-rw-r--r--libpcsxcore/ix86/iR3000A.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/libpcsxcore/ix86/iR3000A.c b/libpcsxcore/ix86/iR3000A.c
index 9216a229..19ab6c84 100644
--- a/libpcsxcore/ix86/iR3000A.c
+++ b/libpcsxcore/ix86/iR3000A.c
@@ -477,8 +477,14 @@ static void recCOP0() {
}
//REC_SYS(COP2);
-static void recCOP2() {
- recCP2[_Funct_]();
+static void recCOP2() {
+ MOV32MtoR(EAX, (u32)&psxRegs.CP0.n.Status);
+ AND32ItoR(EAX, 0x40000000);
+ j8Ptr[31] = JZ8(0);
+
+ recCP2[_Funct_]();
+
+ x86SetJ8(j8Ptr[31]);
}
static void recBASIC() {