// // Generated By: dol2asm // Translation Unit: stb-data-parse // #include "JSystem/JStudio/JStudio/stb-data-parse.h" #include "dol2asm.h" #include "global.h" namespace JStudio { namespace stb { namespace data { extern "C" u32 gauDataSize_TEParagraph_data__Q37JStudio3stb4data[]; void TParse_TSequence::getData(TData* pData) const { ASSERT(pData != 0); pData->content = NULL; pData->next = NULL; u32 head = get_head(); u8 type = head >> 24; u32 param = head & 0xffffff; pData->type = type; pData->param = param; if (type != 0) { const void* next = (const void*)((int)getRaw() + 4); if (type <= 0x7f) { pData->next = next; } else { pData->content = next; pData->next = (const void*)((int)next + param); } } } void TParse_TParagraph::getData(TData* pData) const { ASSERT(pData != 0); const void* data = getRaw(); u32 result; const void* next = parseVariableUInt_16_32_following(data, &result, &pData->type, NULL); pData->param = result; if (result == 0) { pData->content = NULL; pData->next = next; } else { pData->content = next; pData->next = (const void*)((int)next + align_roundUp(result, 4)); } } #ifdef NONMATCHING void TParse_TParagraph_data::getData(data::TParse_TParagraph_data::TData* pData) const { ASSERT(pData != 0); pData->_4 = 0; pData->_8 = 0; pData->_c = NULL; pData->_10 = 0; u8* p = (u8*)getRaw(); if (p != NULL) { u8 val = *p; pData->_0 = val & ~8; if (val != 0) { u32 count = 1; p++; if (val & 8) { count = *(p++); } pData->_8 = count; pData->_c = p; u8 idx = val & 7; if (idx) { u32 size = gauDataSize_TEParagraph_data[idx]; pData->_4 = size; pData->_10 = p + size * count; } } } } #else /* 80289A80-80289B00 2843C0 0080+00 0/0 3/3 1/1 .text * getData__Q47JStudio3stb4data22TParse_TParagraph_dataCFPQ57JStudio3stb4data22TParse_TParagraph_data5TData */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void TParse_TParagraph_data::getData(TParse_TParagraph_data::TData* param_0) const { nofralloc #include "asm/JSystem/JStudio/JStudio/stb-data-parse/func_80289A80.s" } #pragma pop #endif } // namespace data } // namespace stb } // namespace JStudio