From 7449ea9874fabbe22c4a1d7b61032067e8349373 Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Sun, 22 Oct 2023 09:45:24 -0400 Subject: [PATCH] Fix virtual function declarations/locations --- LEGO1/legosoundmanager.cpp | 22 ++-------------------- LEGO1/legosoundmanager.h | 6 ++---- LEGO1/mxsoundmanager.cpp | 16 ++++++++++++++-- LEGO1/mxsoundmanager.h | 2 ++ 4 files changed, 20 insertions(+), 26 deletions(-) diff --git a/LEGO1/legosoundmanager.cpp b/LEGO1/legosoundmanager.cpp index 1ae72adf..cec30564 100644 --- a/LEGO1/legosoundmanager.cpp +++ b/LEGO1/legosoundmanager.cpp @@ -25,35 +25,17 @@ void LegoSoundManager::Destroy(MxBool p_fromDestructor) } -// OFFSET: LEGO1 0x100aeac0 STUB -void LegoSoundManager::SetVolume(MxS32 p_volume) -{ - -} - // OFFSET: LEGO1 0x100299f0 STUB MxResult LegoSoundManager::Create(MxU32 p_frequencyMS, MxBool p_createThread) { return FAILURE; } -// OFFSET: LEGO1 0x100aed10 STUB -void LegoSoundManager::vtable0x34() -{ - -} - -// OFFSET: LEGO1 0x100aee10 STUB -void LegoSoundManager::vtable0x38() -{ - -} - // OFFSET: LEGO1 0x100299a0 void LegoSoundManager::Init() { - unk0x3c = 0; unk0x40 = 0; + unk0x3c = 0; } // OFFSET: LEGO1 0x1002a3a0 STUB @@ -62,5 +44,5 @@ MxResult LegoSoundManager::Tickle() MxMediaManager::Tickle(); MxAutoLocker lock(&this->m_criticalSection); - return 0; //TODO: call something in unk0x40 + return 0; // TODO: call something in unk0x40 } diff --git a/LEGO1/legosoundmanager.h b/LEGO1/legosoundmanager.h index 5a388ad4..1f16f497 100644 --- a/LEGO1/legosoundmanager.h +++ b/LEGO1/legosoundmanager.h @@ -13,16 +13,14 @@ class LegoSoundManager : public MxSoundManager virtual MxResult Tickle() override; // vtable+08 virtual void Destroy() override; // vtable+18 - virtual void SetVolume(MxS32 p_volume) override; // vtable+2c virtual MxResult Create(MxU32 p_frequencyMS, MxBool p_createThread) override; //vtable+0x30 - virtual void vtable0x34() override; // vtable+0x34 - virtual void vtable0x38() override; // vtable+0x38 private: void Init(); void Destroy(MxBool p_fromDestructor); - undefined4 unk0x40; + undefined4 unk0x3c; + undefined4 unk0x40; }; #endif // LEGOSOUNDMANAGER_H diff --git a/LEGO1/mxsoundmanager.cpp b/LEGO1/mxsoundmanager.cpp index 51336843..ca04580f 100644 --- a/LEGO1/mxsoundmanager.cpp +++ b/LEGO1/mxsoundmanager.cpp @@ -58,11 +58,23 @@ MxResult MxSoundManager::Create(MxU32 p_frequencyMS, MxBool p_createThread) // OFFSET: LEGO1 0x100aed10 STUB void MxSoundManager::vtable0x34() { - // TODO STUB + // TODO } // OFFSET: LEGO1 0x100aee10 STUB void MxSoundManager::vtable0x38() { - // TODO STUB + // TODO +} + +// OFFSET: LEGO1 0x100aeab0 +void MxSoundManager::Destroy() +{ + Destroy(FALSE); +} + +// OFFSET: LEGO1 0x100aeac0 STUB +void MxSoundManager::SetVolume(MxS32 p_volume) +{ + // TODO } diff --git a/LEGO1/mxsoundmanager.h b/LEGO1/mxsoundmanager.h index 3bd41085..9e0656f8 100644 --- a/LEGO1/mxsoundmanager.h +++ b/LEGO1/mxsoundmanager.h @@ -14,6 +14,8 @@ class MxSoundManager : public MxAudioManager MxSoundManager(); virtual ~MxSoundManager() override; // vtable+0x0 + virtual void Destroy() override; // vtable+18 + virtual void SetVolume(MxS32 p_volume) override; // vtable+2c virtual MxResult Create(MxU32 p_frequencyMS, MxBool p_createThread); //vtable+0x30 virtual void vtable0x34(); // vtable+0x34 virtual void vtable0x38(); // vtable+0x38