From dbe444d04f4dab8f68ac52bcb3fc0578e6c99608 Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Sun, 8 Oct 2023 16:35:24 -0400 Subject: [PATCH] Fixes, improvements --- LEGO1/mxramstreamcontroller.cpp | 2 +- LEGO1/mxramstreamcontroller.h | 2 +- LEGO1/mxramstreamprovider.h | 4 +++- LEGO1/mxstreamcontroller.cpp | 2 +- LEGO1/mxstreamcontroller.h | 9 ++++----- LEGO1/mxstreamprovider.h | 6 ++---- 6 files changed, 12 insertions(+), 13 deletions(-) diff --git a/LEGO1/mxramstreamcontroller.cpp b/LEGO1/mxramstreamcontroller.cpp index 6e65a3c9..9796b05a 100644 --- a/LEGO1/mxramstreamcontroller.cpp +++ b/LEGO1/mxramstreamcontroller.cpp @@ -11,7 +11,7 @@ MxResult MxRAMStreamController::Open(const char *p_filename) } // OFFSET: LEGO1 0x100c6210 STUB -MxResult MxRAMStreamController::vtable0x20(MxDSAction* action) +MxResult MxRAMStreamController::vtable0x20(MxDSAction* p_action) { // TODO STUB return FAILURE; diff --git a/LEGO1/mxramstreamcontroller.h b/LEGO1/mxramstreamcontroller.h index 9be29024..62587bca 100644 --- a/LEGO1/mxramstreamcontroller.h +++ b/LEGO1/mxramstreamcontroller.h @@ -25,7 +25,7 @@ class MxRAMStreamController : public MxStreamController } virtual MxResult Open(const char *p_filename) override; - virtual MxResult vtable0x20(MxDSAction* action) override; + virtual MxResult vtable0x20(MxDSAction* p_action) override; virtual MxResult vtable0x24(undefined4 p_unknown) override; private: diff --git a/LEGO1/mxramstreamprovider.h b/LEGO1/mxramstreamprovider.h index b18627ec..4a22b013 100644 --- a/LEGO1/mxramstreamprovider.h +++ b/LEGO1/mxramstreamprovider.h @@ -8,12 +8,14 @@ class MxRAMStreamProvider : public MxStreamProvider { public: MxRAMStreamProvider(); - ~MxRAMStreamProvider() override; + virtual ~MxRAMStreamProvider() override; + virtual MxResult SetResourceToGet(void* p_resource) override; //vtable+0x14 virtual MxU32 GetFileSize() override; //vtable+0x18 virtual MxU32 vtable0x1C() override; //vtable+0x1c virtual MxU32 GetLengthInDWords() override; //vtable+0x24 virtual void* GetBufferForDWords() override; //vtable+0x28 + protected: MxU32 m_bufferSize; MxU32 m_fileSize; diff --git a/LEGO1/mxstreamcontroller.cpp b/LEGO1/mxstreamcontroller.cpp index d091ac75..36b85ebc 100644 --- a/LEGO1/mxstreamcontroller.cpp +++ b/LEGO1/mxstreamcontroller.cpp @@ -46,7 +46,7 @@ MxResult MxStreamController::vtable0x1C(undefined4 p_unknown, undefined4 p_unkno } // OFFSET: LEGO1 0x100c1690 STUB -MxResult MxStreamController::vtable0x20(MxDSAction* action) +MxResult MxStreamController::vtable0x20(MxDSAction* p_action) { // TODO STUB return FAILURE; diff --git a/LEGO1/mxstreamcontroller.h b/LEGO1/mxstreamcontroller.h index 0612edc7..59490d2c 100644 --- a/LEGO1/mxstreamcontroller.h +++ b/LEGO1/mxstreamcontroller.h @@ -7,7 +7,6 @@ #include "mxcore.h" #include "mxdsobject.h" #include "mxdsaction.h" -#include "mxstreamprovider.h" // VTABLE 0x100dc968 // SIZE 0x64 @@ -34,7 +33,7 @@ class MxStreamController : public MxCore virtual MxResult Open(const char *p_filename); // vtable+0x14 virtual MxResult vtable0x18(undefined4 p_unknown, undefined4 p_unknown2); //vtable+0x18 virtual MxResult vtable0x1C(undefined4 p_unknown, undefined4 p_unknown2); //vtable+0x1c - virtual MxResult vtable0x20(MxDSAction* action); //vtable+0x20 + virtual MxResult vtable0x20(MxDSAction* p_action); //vtable+0x20 virtual MxResult vtable0x24(undefined4 p_unknown); //vtable+0x24 virtual MxResult vtable0x28(); //vtable+0x28 virtual MxResult vtable0x2c(undefined4 p_unknown1, undefined4 p_unknow2); //vtable+0x2c @@ -42,12 +41,12 @@ class MxStreamController : public MxCore MxBool FUN_100c20d0(MxDSObject &p_obj); - inline MxAtomId GetAtom() const { return atom; }; + inline MxAtomId &GetAtom() { return atom; }; protected: MxCriticalSection m_criticalSection; MxAtomId atom; - MxStreamProvider* m_provider; - int m_unk2c; + undefined4 m_unk28; // MxStreamProvider* + undefined4 m_unk2c; undefined m_unk30[0x34]; }; diff --git a/LEGO1/mxstreamprovider.h b/LEGO1/mxstreamprovider.h index b4c130b7..3cb11144 100644 --- a/LEGO1/mxstreamprovider.h +++ b/LEGO1/mxstreamprovider.h @@ -6,13 +6,11 @@ #include "mxdsfile.h" // VTABLE 0x100dd100 +// SIZE 0x10 class MxStreamProvider : public MxCore { public: - inline MxStreamProvider() { - this->m_pLookup = NULL; - this->m_pFile = NULL; - } + inline MxStreamProvider() : m_pLookup(NULL), m_pFile(NULL) {} // OFFSET: LEGO1 0x100d07e0 inline virtual const char *ClassName() const override // vtable+0x0c