From 4de10e2d94a8e91e1ccf65cabc6dfb2f9c127fb6 Mon Sep 17 00:00:00 2001 From: nakeee Date: Tue, 16 Sep 2008 13:53:11 +0000 Subject: [PATCH] make LLE "work" on linux also with XK's patch to fix LLE save state git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@539 8ced0084-cf51-0410-be5f-012b33b47a6e --- SConstruct | 2 +- Source/Plugins/Plugin_DSP_LLE/Src/gdsp_ext_op.cpp | 6 +----- .../Plugins/Plugin_DSP_LLE/Src/gdsp_interpreter.cpp | 6 ++---- Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes.h | 3 --- .../Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes_helper.h | 9 ++++++++- Source/Plugins/Plugin_DSP_LLE/Src/main.cpp | 12 ++++++++++++ 6 files changed, 24 insertions(+), 14 deletions(-) diff --git a/SConstruct b/SConstruct index 99baf8cd82..786232587b 100644 --- a/SConstruct +++ b/SConstruct @@ -54,7 +54,7 @@ dirs = [ "Source/Core/VideoCommon/Src", "Source/Plugins/Plugin_VideoOGL/Src", "Source/Plugins/Plugin_DSP_HLE/Src", - #"Source/Plugins/Plugin_DSP_LLE/Src", + "Source/Plugins/Plugin_DSP_LLE/Src", "Source/Plugins/Plugin_PadSimple/Src", "Source/Plugins/Plugin_nJoy_SDL/Src", "Source/Plugins/Plugin_Wiimote_Test/Src", diff --git a/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_ext_op.cpp b/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_ext_op.cpp index 45aa63b992..7b3fdb4215 100644 --- a/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_ext_op.cpp +++ b/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_ext_op.cpp @@ -29,11 +29,7 @@ // #include "Globals.h" -#include "gdsp_ext_op.h" -#include "gdsp_interpreter.h" -#include "gdsp_memory.h" - -extern inline void dsp_op_write_reg(uint8 reg, uint16 val); +#include "gdsp_opcodes_helper.h" // diff --git a/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_interpreter.cpp b/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_interpreter.cpp index 3725dafa80..bda59a135f 100644 --- a/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_interpreter.cpp +++ b/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_interpreter.cpp @@ -25,11 +25,9 @@ #include #include -#include "gdsp_opcodes.h" -#include "gdsp_interpreter.h" -#include "gdsp_memory.h" -#include "gdsp_registers.h" + #include "gdsp_interface.h" +#include "gdsp_opcodes_helper.h" #include "Tools.h" //------------------------------------------------------------------------------- diff --git a/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes.h b/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes.h index f93aa05e3f..e8212ad647 100644 --- a/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes.h +++ b/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes.h @@ -47,7 +47,4 @@ void dsp_opf(uint16 opc); #define FLAG_ENABLE_INTERUPT 11 -extern inline bool dsp_SR_is_flag_set(uint8 flag); - - #endif diff --git a/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes_helper.h b/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes_helper.h index ec5db4fe92..774fbd5eb6 100644 --- a/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes_helper.h +++ b/Source/Plugins/Plugin_DSP_LLE/Src/gdsp_opcodes_helper.h @@ -27,6 +27,13 @@ #define _GDSP_OPCODES_HELPER_H #include "Globals.h" + +#include "gdsp_opcodes.h" +#include "gdsp_memory.h" +#include "gdsp_interpreter.h" +#include "gdsp_registers.h" +#include "gdsp_ext_op.h" + // --------------------------------------------------------------------------------------- // // --- SR @@ -185,7 +192,7 @@ inline sint16 dsp_get_acc_m(uint8 _reg) } -sint16 dsp_get_acc_h(uint8 _reg) +inline sint16 dsp_get_acc_h(uint8 _reg) { _dbg_assert_(_reg < 2); return(g_dsp.r[0x10 + _reg]); diff --git a/Source/Plugins/Plugin_DSP_LLE/Src/main.cpp b/Source/Plugins/Plugin_DSP_LLE/Src/main.cpp index c22281b5b8..963cf986e2 100644 --- a/Source/Plugins/Plugin_DSP_LLE/Src/main.cpp +++ b/Source/Plugins/Plugin_DSP_LLE/Src/main.cpp @@ -98,6 +98,10 @@ void DllConfig(HWND _hParent) {} +void DSP_DoState(unsigned char **ptr, int mode) { + PointerWrap p(ptr, mode); +} + void DllDebugger(HWND _hParent) { #if defined (_DEBUG) && defined (_WIN32) @@ -165,6 +169,7 @@ void Mixer(short* buffer, int numSamples, int bits, int rate, int channels) void DSP_Initialize(DSPInitialize _dspInitialize) { + bool bCanWork = true; g_dspInitialize = _dspInitialize; gdsp_init(); @@ -175,14 +180,21 @@ void DSP_Initialize(DSPInitialize _dspInitialize) if (!gdsp_load_rom("data\\dsp_rom.bin")) { + bCanWork = false; + PanicAlert("No DSP ROM"); ErrorLog("Cannot load DSP ROM\n"); } if (!gdsp_load_coef("data\\dsp_coef.bin")) { + bCanWork = false; + PanicAlert("No DSP COEF"); ErrorLog("Cannot load DSP COEF\n"); } + if(!bCanWork) + return; // TODO: Don't let it work + /* Dump UCode to file... FILE* t = fopen("e:\\hmm.txt", "wb"); gd_globals_t gdg;