summaryrefslogtreecommitdiff
path: root/Source/Core/DSPCore/Src/DSPHWInterface.cpp
diff options
context:
space:
mode:
authornakeee <nakeee@gmail.com>2009-07-10 15:00:29 +0000
committernakeee <nakeee@gmail.com>2009-07-10 15:00:29 +0000
commiteaa93ed839c9f038c9723a234d555bb99cc09069 (patch)
tree11169c4672574e2536adc56b1c9f3fda4120f406 /Source/Core/DSPCore/Src/DSPHWInterface.cpp
parent42fed5c111d983e421a461e5cf8d052abe52a4c4 (diff)
DSPLLE more exception work (not sure we need reset at all)
git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@3732 8ced0084-cf51-0410-be5f-012b33b47a6e
Diffstat (limited to 'Source/Core/DSPCore/Src/DSPHWInterface.cpp')
-rw-r--r--Source/Core/DSPCore/Src/DSPHWInterface.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/Source/Core/DSPCore/Src/DSPHWInterface.cpp b/Source/Core/DSPCore/Src/DSPHWInterface.cpp
index bf77f4b6a1..3f0e702308 100644
--- a/Source/Core/DSPCore/Src/DSPHWInterface.cpp
+++ b/Source/Core/DSPCore/Src/DSPHWInterface.cpp
@@ -236,6 +236,7 @@ u16 gdsp_ifx_read(u16 addr)
void gdsp_idma_in(u16 dsp_addr, u32 addr, u32 size)
{
+ static bool reset = true;
UnWriteProtectMemory(g_dsp.iram, DSP_IRAM_BYTE_SIZE, false);
u8* dst = ((u8*)g_dsp.iram);
@@ -249,9 +250,13 @@ void gdsp_idma_in(u16 dsp_addr, u32 addr, u32 size)
NOTICE_LOG(DSPLLE, "*** Copy new UCode from 0x%08x to 0x%04x (crc: %8x)", addr, dsp_addr, g_dsp.iram_crc);
g_dsp.iram_crc = DSPHost_CodeLoaded(g_dsp.cpu_ram + (addr & 0x0fffffff), size);
DSPAnalyzer::Analyze();
- // This calls the reset functions, but it get some games stuck
- // uncomment it to help with debugging
- DSPCore_SetException(EXP_RESET);
+
+ if (reset) {
+ // This calls the reset functions, but it get some games stuck
+ // uncomment it to help with debugging
+ // DSPCore_SetException(EXP_RESET);
+ reset = false;
+ }
}