diff --git a/configure.py b/configure.py index 0bc144ab0..2696b12b0 100755 --- a/configure.py +++ b/configure.py @@ -820,7 +820,7 @@ config.libs = [ Object(Matching, "JSystem/JAudio/JAIBankWave.cpp"), Object(Matching, "JSystem/JAudio/JAIConst.cpp"), Object(Matching, "JSystem/JAudio/JAIDummyObject.cpp"), - Object(NonMatching, "JSystem/JAudio/JAIFx.cpp"), + Object(Matching, "JSystem/JAudio/JAIFx.cpp"), Object(Matching, "JSystem/JAudio/JAIGlobalParameter.cpp"), Object(Matching, "JSystem/JAudio/JAIInitData.cpp"), Object(NonMatching, "JSystem/JAudio/JAISeMgr.cpp"), diff --git a/include/JSystem/JAudio/JASDSPInterface.h b/include/JSystem/JAudio/JASDSPInterface.h index 09cb83d01..50d89734f 100644 --- a/include/JSystem/JAudio/JASDSPInterface.h +++ b/include/JSystem/JAudio/JASDSPInterface.h @@ -130,7 +130,9 @@ namespace JASystem { inline void flushChannel(u8) {} inline void restart() {} inline void setBusConnect(u8, u8, u8) {} - inline void setFXLine(u8, s16*, FxlineConfig_*) {} + inline void setFXLine(u8 i, s16* buffer, FxlineConfig_* config) { + getFXHandle(i)->setFXLine(buffer, config); + } inline void setMixerInitDelayMax(u8, u8) {} inline void setMixerInitVolume(u8, u8, s16, u8) {} inline void setMixerVolume(u8, u8, s16, u8) {} diff --git a/src/JSystem/JAudio/JAIFx.cpp b/src/JSystem/JAudio/JAIFx.cpp index c9d088f91..4fcad0e75 100644 --- a/src/JSystem/JAudio/JAIFx.cpp +++ b/src/JSystem/JAudio/JAIFx.cpp @@ -17,7 +17,6 @@ void** JAInter::Fx::mFxconfigTable; /* 80291CCC-80292068 .text init__Q27JAInter2FxFv */ void JAInter::Fx::init() { - /* Nonmatching */ if (initOnCodeFxScene) { mBufferSizeMax = new (JAIBasic::getCurrentJAIHeap(), 4) u32[4]; mBufferPointer = new (JAIBasic::getCurrentJAIHeap(), 4) s16*[4]; @@ -35,8 +34,7 @@ void JAInter::Fx::init() { s16* _buf = new (JAIBasic::getCurrentJAIHeap(), 0x20) s16[ALIGN_PREV(getBufferSizeMax(i) * 160, 2) / 2]; JUT_ASSERT_MSG(57, _buf, "JAIFx::initHeap Cannot Alloc Heap!!\n"); setBufferPointer(i, _buf); - JASystem::DSPInterface::FxlineConfig_* config = &getFxconfigTable()[0][i]; - JASystem::DSPInterface::getFXHandle(i)->setFXLine(getBufferPointer(i), config); + JASystem::DSPInterface::setFXLine(i, getBufferPointer(i), &getFxconfigTable()[0][i]); } } } diff --git a/src/JSystem/JAudio/JASDSPInterface.cpp b/src/JSystem/JAudio/JASDSPInterface.cpp index dd5c635de..3c96d7f08 100644 --- a/src/JSystem/JAudio/JASDSPInterface.cpp +++ b/src/JSystem/JAudio/JASDSPInterface.cpp @@ -77,8 +77,8 @@ void JASystem::DSPInterface::initBuffer() { } /* 8028A368-8028A378 .text getFXHandle__Q28JASystem12DSPInterfaceFUc */ -JASystem::DSPInterface::FXBuffer* JASystem::DSPInterface::getFXHandle(u8 param_1) { - return FX_BUF + param_1; +JASystem::DSPInterface::FXBuffer* JASystem::DSPInterface::getFXHandle(u8 i) { + return &FX_BUF[i]; } u16 JASystem::DSPInterface::SEND_TABLE[] = {