diff --git a/Source/Core/DSPCore/Src/Jit/DSPJitExtOps.cpp b/Source/Core/DSPCore/Src/Jit/DSPJitExtOps.cpp index d27971ba0f..edb4f33e8a 100644 --- a/Source/Core/DSPCore/Src/Jit/DSPJitExtOps.cpp +++ b/Source/Core/DSPCore/Src/Jit/DSPJitExtOps.cpp @@ -524,7 +524,7 @@ void DSPEmitter::pushExtValueFromReg(u16 dreg, u16 sreg) { } void DSPEmitter::pushExtValueFromMem(u16 dreg, u16 sreg) { - ext_dmem_read(g_dsp.r[DSP_REG_AR0]); + ext_dmem_read(g_dsp.r[sreg]); MOV(16, R(EBX), R(EAX)); storeIndex = dreg; diff --git a/Source/Core/DSPCore/Src/Jit/DSPJitUtil.cpp b/Source/Core/DSPCore/Src/Jit/DSPJitUtil.cpp index 2676b08f32..97ff4f19ed 100644 --- a/Source/Core/DSPCore/Src/Jit/DSPJitUtil.cpp +++ b/Source/Core/DSPCore/Src/Jit/DSPJitUtil.cpp @@ -287,7 +287,7 @@ void DSPEmitter::ext_dmem_read(u16 addr) MOVZX(32, 16, ECX, M(&addr)); // u16 saddr = addr >> 12; - MOVZX(32, 16, ESI, R(EAX)); + MOVZX(32, 16, ESI, R(ECX)); SHR(16, R(ESI), Imm8(12)); // if (saddr == 0)