From 0f1010379f2af13a033b6e1589beaa31426a1996 Mon Sep 17 00:00:00 2001 From: LegendOfDragoon Date: Sat, 31 Jan 2015 17:23:43 -0800 Subject: [PATCH] Implement a quick fix for Instruction Reordering Instruction Reordering broke Mia Hamm and possibly other games too. The easiest way to fix the problem was to simply disable reordering for specific cases that were never accounted for. --- Source/RSP/Recompiler Analysis.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Source/RSP/Recompiler Analysis.c b/Source/RSP/Recompiler Analysis.c index 04b3dcc39..9f9736b53 100644 --- a/Source/RSP/Recompiler Analysis.c +++ b/Source/RSP/Recompiler Analysis.c @@ -1399,7 +1399,11 @@ void GetInstructionInfo(DWORD PC, OPCODE * RspOp, OPCODE_INFO * info) { info->DestReg = RspOp->rt; info->SourceReg0 = (DWORD)-1; info->SourceReg1 = (DWORD)-1; - info->flags = COPO_MF_Instruction | GPR_Instruction | Load_Operation; + if (RspOp->rd == 0x4 || RspOp->rd == 0x7){ + info->flags = InvalidOpcode; + } else{ + info->flags = COPO_MF_Instruction | GPR_Instruction | Load_Operation; + } break; case RSP_COP0_MT: