From e37cb1fc7646a6047fabb0c52584be1b33872737 Mon Sep 17 00:00:00 2001 From: Ryan Houdek Date: Thu, 26 Sep 2013 18:09:25 +0000 Subject: [PATCH] Implement CR1 for the intepreter. To be honest I have no idea why this was never done previously, all it is is copying four bits from the FPSCR register to CR1. This fixes issue 2390. --- .../Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp b/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp index 2f4dc4d493..72fa2517e8 100644 --- a/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp +++ b/Source/Core/Core/Src/PowerPC/Interpreter/Interpreter_FloatingPoint.cpp @@ -31,8 +31,7 @@ void UpdateSSEState(); // Star Wars : Rogue Leader spams that at some point :| void Interpreter::Helper_UpdateCR1(double _fValue) { - // Should just update exception flags, not do any compares. - PanicAlert("CR1"); + SetCRField(1, (FPSCR.FX << 4) | (FPSCR.FEX << 3) | (FPSCR.VX << 2) | FPSCR.OX); } void Interpreter::fcmpo(UGeckoInstruction _inst)