From 4112df92f4665ff37615c72d25459a1cf9f48faa Mon Sep 17 00:00:00 2001 From: Christian Semmler Date: Wed, 10 Jan 2024 06:02:07 -0500 Subject: [PATCH] Use FOURCC --- LEGO1/omni/include/mxdsbuffer.h | 3 ++- LEGO1/omni/src/stream/mxdsbuffer.cpp | 15 ++++++++------- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/LEGO1/omni/include/mxdsbuffer.h b/LEGO1/omni/include/mxdsbuffer.h index 21209366..3a336af7 100644 --- a/LEGO1/omni/include/mxdsbuffer.h +++ b/LEGO1/omni/include/mxdsbuffer.h @@ -52,7 +52,6 @@ class MxDSBuffer : public MxCore { MxDSStreamingAction** p_streamingAction, MxStreamChunk* p_header ); - static MxCore* ReadChunk(MxDSBuffer* p_buffer, MxU32* p_chunkData, MxU16 p_flags); MxU8* SkipToData(); MxU8 ReleaseRef(MxDSChunk*); void AddRef(MxDSChunk* p_chunk); @@ -60,6 +59,8 @@ class MxDSBuffer : public MxCore { void FUN_100c6f80(MxU32 p_writeOffset); MxU8* FUN_100c6fa0(MxU8* p_data); MxResult FUN_100c7090(MxDSBuffer* p_buf); + + static MxCore* ReadChunk(MxDSBuffer* p_buffer, MxU32* p_chunkData, MxU16 p_flags); static MxResult Append(MxU8* p_buffer1, MxU8* p_buffer2); inline MxU8* GetBuffer() { return m_pBuffer; } diff --git a/LEGO1/omni/src/stream/mxdsbuffer.cpp b/LEGO1/omni/src/stream/mxdsbuffer.cpp index efff2463..161080ec 100644 --- a/LEGO1/omni/src/stream/mxdsbuffer.cpp +++ b/LEGO1/omni/src/stream/mxdsbuffer.cpp @@ -497,24 +497,25 @@ MxU8* MxDSBuffer::FUN_100c6fa0(MxU8* p_data) { MxU8* current = p_data ? p_data : m_pBuffer; MxU8* end = m_writeOffset + m_pBuffer - 8; + while (current <= end) { switch (*((MxU32*) current)) { - case 'TSIL': - case 'FFIR': + case FOURCC('L', 'I', 'S', 'T'): + case FOURCC('R', 'I', 'F', 'F'): current += 12; break; - case 'aDxM': - case 'tSxM': + case FOURCC('M', 'x', 'D', 'a'): + case FOURCC('M', 'x', 'S', 't'): current += 8; break; - case 'bOxM': - case 'hCxM': + case FOURCC('M', 'x', 'O', 'b'): + case FOURCC('M', 'x', 'C', 'h'): if (current != p_data) return current; current = ((MxU32) current & 1) + current; current += 8; break; - case 'dHxM': + case FOURCC('M', 'x', 'H', 'd'): current += (((MxU32*) current)[1] + 8); break; }