diff --git a/LEGO1/mxdiskstreamprovider.cpp b/LEGO1/mxdiskstreamprovider.cpp index 38d5cddc..8183ee3e 100644 --- a/LEGO1/mxdiskstreamprovider.cpp +++ b/LEGO1/mxdiskstreamprovider.cpp @@ -2,6 +2,8 @@ #include "mxthread.h" +DECOMP_SIZE_ASSERT(MxDiskStreamProvider, 0x60); + // OFFSET: LEGO1 0x100d0f30 MxResult MxDiskStreamProviderThread::Run() { @@ -15,7 +17,11 @@ MxResult MxDiskStreamProviderThread::Run() // OFFSET: LEGO1 0x100d0f70 MxDiskStreamProvider::MxDiskStreamProvider() { - // TODO + this->m_unk54 = NULL; + this->m_unk4 = malloc(0xc); + this->m_unk5 = NULL; + this->m_remainingWork = 0; + this->m_unk1 = 0; } // OFFSET: LEGO1 0x100d1240 diff --git a/LEGO1/mxdiskstreamprovider.h b/LEGO1/mxdiskstreamprovider.h index 58679055..5a7a2857 100644 --- a/LEGO1/mxdiskstreamprovider.h +++ b/LEGO1/mxdiskstreamprovider.h @@ -1,6 +1,7 @@ #ifndef MXDISKSTREAMPROVIDER_H #define MXDISKSTREAMPROVIDER_H +#include "decomp.h" #include "mxstreamprovider.h" #include "mxthread.h" #include "mxcriticalsection.h" @@ -48,14 +49,16 @@ class MxDiskStreamProvider : public MxStreamProvider void PerformWork(); private: - MxDiskStreamProviderThread m_thread; - MxSemaphore m_busySemaphore; - byte m_remainingWork; - byte m_unk1; - MxCriticalSection m_criticalSection; - byte unk2[4]; - void* unk3; - void *unk4; + MxDiskStreamProviderThread m_thread; // 0x10 + MxSemaphore m_busySemaphore; // 0x2c + byte m_remainingWork; // 0x34 + byte m_unk1; // 0x35 + byte m_unk36[2]; + MxCriticalSection m_criticalSection; // 0x38 + undefined m_unk54; // 0x54 + byte m_unk55[3]; + void* m_unk4; + void *m_unk5; }; #endif // MXDISKSTREAMPROVIDER_H