From df3abc6a2a7bb30015b9c21d276b0c8320efae00 Mon Sep 17 00:00:00 2001 From: nakeee Date: Sun, 5 Jul 2009 10:17:52 +0000 Subject: [PATCH] DSPLLE: small loop fix (ector pls take a look) git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3679 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/DSPCore/Src/DSPInterpreter.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/Source/Core/DSPCore/Src/DSPInterpreter.cpp b/Source/Core/DSPCore/Src/DSPInterpreter.cpp index e054c61237..a04e0654ea 100644 --- a/Source/Core/DSPCore/Src/DSPInterpreter.cpp +++ b/Source/Core/DSPCore/Src/DSPInterpreter.cpp @@ -80,11 +80,7 @@ void HandleLoop() const u16 rCallAddress = g_dsp.r[DSP_REG_ST0]; const u16 rLoopAddress = g_dsp.r[DSP_REG_ST2]; - // This does not always work correctly! - // The loop end tends to point to the second part of - // two-byte instructions! - // 0179 1104 019f bloopi #0x04, 0x019f in zelda, for example - if (g_dsp.pc == (rLoopAddress + 1)) + if (g_dsp.pc == (rLoopAddress + opSize[rLoopAddress])) { rLoopCounter--; if (rLoopCounter > 0)