mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-30 11:41:16 +00:00
Use FOURCC
This commit is contained in:
parent
92da604f19
commit
4112df92f4
@ -52,7 +52,6 @@ class MxDSBuffer : public MxCore {
|
|||||||
MxDSStreamingAction** p_streamingAction,
|
MxDSStreamingAction** p_streamingAction,
|
||||||
MxStreamChunk* p_header
|
MxStreamChunk* p_header
|
||||||
);
|
);
|
||||||
static MxCore* ReadChunk(MxDSBuffer* p_buffer, MxU32* p_chunkData, MxU16 p_flags);
|
|
||||||
MxU8* SkipToData();
|
MxU8* SkipToData();
|
||||||
MxU8 ReleaseRef(MxDSChunk*);
|
MxU8 ReleaseRef(MxDSChunk*);
|
||||||
void AddRef(MxDSChunk* p_chunk);
|
void AddRef(MxDSChunk* p_chunk);
|
||||||
@ -60,6 +59,8 @@ class MxDSBuffer : public MxCore {
|
|||||||
void FUN_100c6f80(MxU32 p_writeOffset);
|
void FUN_100c6f80(MxU32 p_writeOffset);
|
||||||
MxU8* FUN_100c6fa0(MxU8* p_data);
|
MxU8* FUN_100c6fa0(MxU8* p_data);
|
||||||
MxResult FUN_100c7090(MxDSBuffer* p_buf);
|
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);
|
static MxResult Append(MxU8* p_buffer1, MxU8* p_buffer2);
|
||||||
|
|
||||||
inline MxU8* GetBuffer() { return m_pBuffer; }
|
inline MxU8* GetBuffer() { return m_pBuffer; }
|
||||||
|
|||||||
@ -497,24 +497,25 @@ MxU8* MxDSBuffer::FUN_100c6fa0(MxU8* p_data)
|
|||||||
{
|
{
|
||||||
MxU8* current = p_data ? p_data : m_pBuffer;
|
MxU8* current = p_data ? p_data : m_pBuffer;
|
||||||
MxU8* end = m_writeOffset + m_pBuffer - 8;
|
MxU8* end = m_writeOffset + m_pBuffer - 8;
|
||||||
|
|
||||||
while (current <= end) {
|
while (current <= end) {
|
||||||
switch (*((MxU32*) current)) {
|
switch (*((MxU32*) current)) {
|
||||||
case 'TSIL':
|
case FOURCC('L', 'I', 'S', 'T'):
|
||||||
case 'FFIR':
|
case FOURCC('R', 'I', 'F', 'F'):
|
||||||
current += 12;
|
current += 12;
|
||||||
break;
|
break;
|
||||||
case 'aDxM':
|
case FOURCC('M', 'x', 'D', 'a'):
|
||||||
case 'tSxM':
|
case FOURCC('M', 'x', 'S', 't'):
|
||||||
current += 8;
|
current += 8;
|
||||||
break;
|
break;
|
||||||
case 'bOxM':
|
case FOURCC('M', 'x', 'O', 'b'):
|
||||||
case 'hCxM':
|
case FOURCC('M', 'x', 'C', 'h'):
|
||||||
if (current != p_data)
|
if (current != p_data)
|
||||||
return current;
|
return current;
|
||||||
current = ((MxU32) current & 1) + current;
|
current = ((MxU32) current & 1) + current;
|
||||||
current += 8;
|
current += 8;
|
||||||
break;
|
break;
|
||||||
case 'dHxM':
|
case FOURCC('M', 'x', 'H', 'd'):
|
||||||
current += (((MxU32*) current)[1] + 8);
|
current += (((MxU32*) current)[1] + 8);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user