diff --git a/LEGO1/mxdsfile.cpp b/LEGO1/mxdsfile.cpp index 327fab46..8604467d 100644 --- a/LEGO1/mxdsfile.cpp +++ b/LEGO1/mxdsfile.cpp @@ -84,7 +84,7 @@ long MxDSFile::ReadChunks() } unsigned long* pLengthInDWords = &m_lengthInDWords; m_io.Read((char *)pLengthInDWords, 4); - m_pBuffer = malloc(*pLengthInDWords * 4); + m_pBuffer = (char*)malloc(*pLengthInDWords * 4); m_io.Read((char*)m_pBuffer, *pLengthInDWords * 4); return 0; } diff --git a/LEGO1/mxdssource.cpp b/LEGO1/mxdssource.cpp index 8612c5c4..b2b35691 100644 --- a/LEGO1/mxdssource.cpp +++ b/LEGO1/mxdssource.cpp @@ -11,4 +11,10 @@ void MxDSSource::SomethingWhichCallsRead(void* pUnknownObject) long MxDSSource::GetLengthInDWords() { return m_lengthInDWords; +} + +// OFFSET: LEGO1 0x100c0000 +char* MxDSSource::GetBuffer() +{ + return m_pBuffer; } \ No newline at end of file diff --git a/LEGO1/mxdssource.h b/LEGO1/mxdssource.h index 7ee01490..ec5ae89f 100644 --- a/LEGO1/mxdssource.h +++ b/LEGO1/mxdssource.h @@ -20,10 +20,11 @@ class MxDSSource : public MxCore virtual unsigned long GetBufferSize() = 0; virtual unsigned long GetStreamBuffersNum() = 0; virtual long GetLengthInDWords(); + virtual char* GetBuffer(); protected: unsigned long m_lengthInDWords; - void* m_pBuffer; + char* m_pBuffer; long m_position; };