// // Generated By: dol2asm // Translation Unit: JKRDvdRipper // #include "dol2asm.h" #include "dolphin/types.h" #include "JSystem/JKernel/JKRDvdRipper.h" // // Types: // struct JUTException { /* 802E21FC */ // False False // char const* False // char const False // char False // int False // char const* False // char const False // char False // ... False void panic_f(char const*, int, char const*, ...); }; struct JSUPtrList { /* 802DBEAC */ // False False ~JSUPtrList(); /* 802DBF14 */ // False False void initiate(); }; template struct JSUList { }; /* JSUList */ struct JSUList__template9 { /* 802DA820 */ // False True ~JSUList__template9(); }; struct JKRHeap { /* 802CE4D4 */ // False False // u32 False // int False void alloc(u32, int); /* 802CE474 */ // False False // u32 False // int False // JKRHeap* False // JKRHeap False void alloc(u32, int, JKRHeap*); /* 802CE500 */ // False False // void* False // void False // JKRHeap* False // JKRHeap False void free(void*, JKRHeap*); }; struct JKRExpandSwitch { }; struct JKRDvdFile { /* 802D9584 */ // False False JKRDvdFile(); /* 802D9748 */ // False False ~JKRDvdFile(); /* 802D9850 */ // False False // char const* False // char const False // char False void open(char const*); /* 802D98C4 */ // False False // s32 False void open(s32); }; struct JKRDvdRipper { struct EAllocDirection { }; /* 802D9B98 */ // False False // char const* False // char const False // char False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False void loadToMainRAM(char const*, u8*, JKRExpandSwitch, u32, JKRHeap*, JKRDvdRipper::EAllocDirection, u32, int*, u32*); /* 802D9D10 */ // True False // JKRDvdFile* False // JKRDvdFile False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False void loadToMainRAM(JKRDvdFile*, u8*, JKRExpandSwitch, u32, JKRHeap*, JKRDvdRipper::EAllocDirection, u32, int*, u32*); /* 802D9C54 */ // False False // s32 False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False void loadToMainRAM(s32, u8*, JKRExpandSwitch, u32, JKRHeap*, JKRDvdRipper::EAllocDirection, u32, int*, u32*); /* 802DA7D4 */ // True False void isErrorRetry(); }; struct JKRDecomp { /* 802DB988 */ // False False // u8* False // u8 False // u8* False // u8 False // u32 False // u32 False void orderSync(u8*, u8*, u32, u32); /* 802DBCF8 */ // False False // u8* False // u8 False void checkCompressed(u8*); }; // // Forward References: // // True False // JKRDvdFile* False // JKRDvdFile False // void* False // void False // u32 False // u32 False // u32 False // u32 False // u32* False // u32 False static void JKRDecompressFromDVD(JKRDvdFile*, void*, u32, u32, u32, u32, u32*); // True False // u8* False // u8 False // u8* False // u8 False static void decompSZS_subroutine(u8*, u8*); // True False static void firstSrcData(); // True False // u8* False // u8 False static void nextSrcData(u8*); // False False // char const* False // char const False // char False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False extern "C" void loadToMainRAM__12JKRDvdRipperFPCcPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl(); // False False // s32 False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False extern "C" void loadToMainRAM__12JKRDvdRipperFlPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl(); // True False // JKRDvdFile* False // JKRDvdFile False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False extern "C" void loadToMainRAM__12JKRDvdRipperFP10JKRDvdFilePUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl(); // True False // JKRDvdFile* False // JKRDvdFile False // void* False // void False // u32 False // u32 False // u32 False // u32 False // u32* False // u32 False extern "C" static void JKRDecompressFromDVD__FP10JKRDvdFilePvUlUlUlUlPUl(); // True False // u8* False // u8 False // u8* False // u8 False extern "C" static void decompSZS_subroutine__FPUcPUc(); // True False extern "C" static void firstSrcData__Fv(); // True False // u8* False // u8 False extern "C" static void nextSrcData__FPUc(); // True False extern "C" void isErrorRetry__12JKRDvdRipperFv(); // False False extern "C" void __sinit_JKRDvdRipper_cpp(); // False True extern "C" void func_802DA820(); extern "C" extern char const* const JKRDvdRipper__stringBase0; extern "C" extern u32 sSZSBufferSize__12JKRDvdRipper; // // External References: // // False False // void False // void* False // void False void operator delete(void*); // False False SECTION_INIT void memcpy(); // False False // u32 False // int False // JKRHeap* False // JKRHeap False extern "C" void alloc__7JKRHeapFUliP7JKRHeap(); // False False // u32 False // int False extern "C" void alloc__7JKRHeapFUli(); // False False // void* False // void False // JKRHeap* False // JKRHeap False extern "C" void free__7JKRHeapFPvP7JKRHeap(); // False False // void False // void* False // void False extern "C" void __dl__FPv(); // False False extern "C" void __ct__10JKRDvdFileFv(); // False False extern "C" void __dt__10JKRDvdFileFv(); // False False // char const* False // char const False // char False extern "C" void open__10JKRDvdFileFPCc(); // False False // s32 False extern "C" void open__10JKRDvdFileFl(); // False False // u8* False // u8 False // u8* False // u8 False // u32 False // u32 False extern "C" void orderSync__9JKRDecompFPUcPUcUlUl(); // False False // u8* False // u8 False extern "C" void checkCompressed__9JKRDecompFPUc(); // False False extern "C" void __dt__10JSUPtrListFv(); // False False extern "C" void initiate__10JSUPtrListFv(); // False False // char const* False // char const False // char False // int False // char const* False // char const False // char False // ... False extern "C" void panic_f__12JUTExceptionFPCciPCce(); // False False extern "C" void DCInvalidateRange(); // False False extern "C" void DCStoreRangeNoSync(); // False False extern "C" void OSDisableInterrupts(); // False False extern "C" void OSRestoreInterrupts(); // False False extern "C" void OSInitMutex(); // False False extern "C" void OSLockMutex(); // False False extern "C" void OSUnlockMutex(); // False False extern "C" void DVDReadPrio(); // False False extern "C" void VIWaitForRetrace(); // False False extern "C" void __register_global_object(); // False False extern "C" void _savegpr_18(); // False False extern "C" void _savegpr_23(); // False False extern "C" void _savegpr_24(); // False False extern "C" void _savegpr_28(); // False False extern "C" void _savegpr_29(); // False False extern "C" void _restgpr_18(); // False False extern "C" void _restgpr_23(); // False False extern "C" void _restgpr_24(); // False False extern "C" void _restgpr_28(); // False False extern "C" void _restgpr_29(); extern "C" extern u8 sSystemHeap__7JKRHeap[4]; // // Declarations: // /* 802D9B98-802D9C54 00BC+00 s=0 e=1 z=0 None .text loadToMainRAM__12JKRDvdRipperFPCcPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl */ // 802D9BA8: 803621C4 (_savegpr_23) // 802D9BD4: 802D9584 (__ct__10JKRDvdFileFv) // 802D9BE0: 802D9850 (open__10JKRDvdFileFPCc) // 802D9BF4: 802D9748 (__dt__10JKRDvdFileFv) // 802D9C24: 802D9D10 (loadToMainRAM__12JKRDvdRipperFP10JKRDvdFilePUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl) // 802D9C34: 802D9748 (__dt__10JKRDvdFileFv) // 802D9C40: 80362210 (_restgpr_23) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False // char const* False // char const False // char False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False asm void JKRDvdRipper::loadToMainRAM(char const* param_0, u8* param_1, JKRExpandSwitch param_2, u32 param_3, JKRHeap* param_4, JKRDvdRipper::EAllocDirection param_5, u32 param_6, int* param_7, u32* param_8) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/func_802D9B98.s" } #pragma pop /* 802D9C54-802D9D10 00BC+00 s=0 e=9 z=0 None .text loadToMainRAM__12JKRDvdRipperFlPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl */ // 802D9C64: 803621C4 (_savegpr_23) // 802D9C90: 802D9584 (__ct__10JKRDvdFileFv) // 802D9C9C: 802D98C4 (open__10JKRDvdFileFl) // 802D9CB0: 802D9748 (__dt__10JKRDvdFileFv) // 802D9CE0: 802D9D10 (loadToMainRAM__12JKRDvdRipperFP10JKRDvdFilePUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl) // 802D9CF0: 802D9748 (__dt__10JKRDvdFileFv) // 802D9CFC: 80362210 (_restgpr_23) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False // s32 False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False asm void JKRDvdRipper::loadToMainRAM(s32 param_0, u8* param_1, JKRExpandSwitch param_2, u32 param_3, JKRHeap* param_4, JKRDvdRipper::EAllocDirection param_5, u32 param_6, int* param_7, u32* param_8) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/func_802D9C54.s" } #pragma pop /* ############################################################################################## */ /* 8039D290-8039D2F0 0059+07 s=1 e=0 z=0 None .rodata @stringBase0 */ #pragma push #pragma force_active on #pragma section ".dead" SECTION_DEAD char const* const stringBase_8039D290 = "JKRDvdRipper.cpp"; SECTION_DEAD char const* const stringBase_8039D2A1 = "%s"; SECTION_DEAD char const* const stringBase_8039D2A4 = "Sorry, not applied for SZP archive."; SECTION_DEAD char const* const stringBase_8039D2C8 = "Not support SZP with offset read"; /* @stringBase0 padding */ SECTION_DEAD static char const* const pad_8039D2E9 = "\0\0\0\0\0\0"; #pragma pop /* 804508C8-804508CC 0004+00 s=3 e=0 z=0 None .sdata None */ SECTION_SDATA static u32 data_804508C8 = 0x01000000; /* 802D9D10-802DA1E4 04D4+00 s=2 e=0 z=0 None .text loadToMainRAM__12JKRDvdRipperFP10JKRDvdFilePUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl */ // 802D9D20: 803621B0 (_savegpr_18) // 802D9D90: 80348E44 (DVDReadPrio) // 802D9DA4: 804508C8 (data_804508C8) // 802D9DB8: 8034C9C4 (VIWaitForRetrace) // 802D9DC8: 8033B580 (DCInvalidateRange) // 802D9DD0: 802DBCF8 (checkCompressed__9JKRDecompFPUc) // 802D9E54: 802CE474 (alloc__7JKRHeapFUliP7JKRHeap) // 802D9E84: 802CE474 (alloc__7JKRHeapFUliP7JKRHeap) // 802D9EA4: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802D9EE4: 802CE474 (alloc__7JKRHeapFUliP7JKRHeap) // 802D9F34: 80348E44 (DVDReadPrio) // 802D9F48: 804508C8 (data_804508C8) // 802D9F68: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802D9F74: 8034C9C4 (VIWaitForRetrace) // 802D9F84: 8033B580 (DCInvalidateRange) // 802D9F8C: 802DBCF8 (checkCompressed__9JKRDecompFPUc) // 802D9FE4: 80348E44 (DVDReadPrio) // 802D9FF8: 804508C8 (data_804508C8) // 802DA018: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802DA024: 8034C9C4 (VIWaitForRetrace) // 802DA064: 802DA1E4 (JKRDecompressFromDVD__FP10JKRDvdFilePvUlUlUlUlPUl) // 802DA06C: 8039D290 (JKRDvdRipper__stringBase0) // 802DA070: 8039D290 (JKRDvdRipper__stringBase0) // 802DA084: 802E21FC (panic_f__12JUTExceptionFPCciPCce) // 802DA0A0: 8039D290 (JKRDvdRipper__stringBase0) // 802DA0A4: 8039D290 (JKRDvdRipper__stringBase0) // 802DA0B8: 802E21FC (panic_f__12JUTExceptionFPCciPCce) // 802DA0D0: 80348E44 (DVDReadPrio) // 802DA0E4: 804508C8 (data_804508C8) // 802DA104: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802DA110: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802DA11C: 8034C9C4 (VIWaitForRetrace) // 802DA12C: 8033B580 (DCInvalidateRange) // 802DA140: 802DB988 (orderSync__9JKRDecompFPUcPUcUlUl) // 802DA14C: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802DA188: 802DA1E4 (JKRDecompressFromDVD__FP10JKRDvdFilePvUlUlUlUlPUl) // 802DA1A4: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802DA1C4: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802DA1D0: 803621FC (_restgpr_18) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False // JKRDvdFile* False // JKRDvdFile False // u8* False // u8 False // JKRExpandSwitch False // u32 False // JKRHeap* False // JKRHeap False // JKRDvdRipper::EAllocDirection False // u32 False // int* False // int False // u32* False // u32 False asm void JKRDvdRipper::loadToMainRAM(JKRDvdFile* param_0, u8* param_1, JKRExpandSwitch param_2, u32 param_3, JKRHeap* param_4, JKRDvdRipper::EAllocDirection param_5, u32 param_6, int* param_7, u32* param_8) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/func_802D9D10.s" } #pragma pop /* ############################################################################################## */ /* 80434378-80434384 000C+00 s=1 e=0 z=0 None .bss @491 */ static u8 lit_491[12]; /* 80434384-80434390 000C+00 s=1 e=0 z=0 None .bss sDvdAsyncList__12JKRDvdRipper */ static u8 sDvdAsyncList__12JKRDvdRipper[12]; /* 80434390-804343A8 0018+00 s=1 e=0 z=0 None .bss decompMutex */ static u8 decompMutex[24]; /* 804508CC-804508D0 0004+00 s=1 e=1 z=0 None .sdata sSZSBufferSize__12JKRDvdRipper */ SECTION_SDATA u32 sSZSBufferSize__12JKRDvdRipper = 0x00000400; /* 80451428-8045142C 0004+00 s=3 e=0 z=0 None .sbss szpBuf */ static u8 szpBuf[4]; /* 8045142C-80451430 0004+00 s=3 e=0 z=0 None .sbss szpEnd */ static u8 szpEnd[4]; /* 80451430-80451434 0004+00 s=2 e=0 z=0 None .sbss refBuf */ static u8 refBuf[4]; /* 80451434-80451438 0004+00 s=2 e=0 z=0 None .sbss refEnd */ static u8 refEnd[4]; /* 80451438-8045143C 0004+00 s=2 e=0 z=0 None .sbss refCurrent */ static u8 refCurrent[4]; /* 8045143C-80451440 0004+00 s=3 e=0 z=0 None .sbss srcOffset */ static u8 srcOffset[4]; /* 80451440-80451444 0004+00 s=4 e=0 z=0 None .sbss transLeft */ static u8 transLeft[4]; /* 80451444-80451448 0004+00 s=3 e=0 z=0 None .sbss srcLimit */ static u8 srcLimit[4]; /* 80451448-8045144C 0004+00 s=3 e=0 z=0 None .sbss srcFile */ static u8 srcFile[4]; /* 8045144C-80451450 0004+00 s=2 e=0 z=0 None .sbss fileOffset */ static u8 fileOffset[4]; /* 80451450-80451454 0004+00 s=2 e=0 z=0 None .sbss readCount */ static u8 readCount[4]; /* 80451454-80451458 0004+00 s=2 e=0 z=0 None .sbss maxDest */ static u8 maxDest[4]; /* 80451458-8045145C 0004+00 s=1 e=0 z=0 None .sbss None */ static u8 data_80451458[4]; /* 8045145C-80451460 0004+00 s=2 e=0 z=0 None .sbss tsPtr */ static u8 tsPtr[4]; /* 80451460-80451468 0004+04 s=1 e=0 z=0 None .sbss tsArea */ static u8 tsArea[4 + 4 /* padding */]; /* 802DA1E4-802DA35C 0178+00 s=1 e=0 z=0 None .text JKRDecompressFromDVD__FP10JKRDvdFilePvUlUlUlUlPUl */ // 802DA1F4: 803621C8 (_savegpr_24) // 802DA214: 8033D6F4 (OSDisableInterrupts) // 802DA21C: 80451458 (data_80451458) // 802DA228: 80434390 (decompMutex) // 802DA22C: 80434390 (decompMutex) // 802DA230: 8033F008 (OSInitMutex) // 802DA238: 80451458 (data_80451458) // 802DA240: 8033D71C (OSRestoreInterrupts) // 802DA244: 80434390 (decompMutex) // 802DA248: 80434390 (decompMutex) // 802DA24C: 8033F040 (OSLockMutex) // 802DA250: 804508CC (sSZSBufferSize__12JKRDvdRipper) // 802DA254: 80451370 (sSystemHeap__7JKRHeap) // 802DA260: 802CE4D4 (alloc__7JKRHeapFUli) // 802DA264: 80451428 (szpBuf) // 802DA26C: 8045142C (szpEnd) // 802DA278: 80451370 (sSystemHeap__7JKRHeap) // 802DA284: 802CE4D4 (alloc__7JKRHeapFUli) // 802DA288: 80451430 (refBuf) // 802DA290: 80451434 (refEnd) // 802DA294: 80451438 (refCurrent) // 802DA2A0: 80451430 (refBuf) // 802DA2A4: 80451448 (srcFile) // 802DA2A8: 8045143C (srcOffset) // 802DA2B0: 80451440 (transLeft) // 802DA2B4: 8045144C (fileOffset) // 802DA2BC: 80451450 (readCount) // 802DA2C0: 80451454 (maxDest) // 802DA2D4: 80451460 (tsArea) // 802DA2D8: 8045145C (tsPtr) // 802DA2E4: 802DA60C (firstSrcData__Fv) // 802DA2F4: 802DA35C (decompSZS_subroutine__FPUcPUc) // 802DA304: 80451428 (szpBuf) // 802DA30C: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802DA310: 80451430 (refBuf) // 802DA320: 802CE500 (free__7JKRHeapFPvP7JKRHeap) // 802DA328: 8045145C (tsPtr) // 802DA330: 8033B638 (DCStoreRangeNoSync) // 802DA334: 80434390 (decompMutex) // 802DA338: 80434390 (decompMutex) // 802DA33C: 8033F11C (OSUnlockMutex) // 802DA348: 80362214 (_restgpr_24) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False // JKRDvdFile* False // JKRDvdFile False // void* False // void False // u32 False // u32 False // u32 False // u32 False // u32* False // u32 False asm static void JKRDecompressFromDVD(JKRDvdFile* param_0, void* param_1, u32 param_2, u32 param_3, u32 param_4, u32 param_5, u32* param_6) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/JKRDecompressFromDVD__FP10JKRDvdFilePvUlUlUlUlPUl.s" } #pragma pop /* 802DA35C-802DA60C 02B0+00 s=1 e=0 z=0 None .text decompSZS_subroutine__FPUcPUc */ // 802DA36C: 803621DC (_savegpr_29) // 802DA3B8: 8045144C (fileOffset) // 802DA3C8: 80451454 (maxDest) // 802DA3E8: 80451444 (srcLimit) // 802DA3F4: 80451440 (transLeft) // 802DA400: 802DA6D8 (nextSrcData__FPUc) // 802DA428: 8045144C (fileOffset) // 802DA434: 80451450 (readCount) // 802DA45C: 80451438 (refCurrent) // 802DA464: 80451438 (refCurrent) // 802DA46C: 80451438 (refCurrent) // 802DA470: 80451434 (refEnd) // 802DA47C: 80451430 (refBuf) // 802DA480: 80451438 (refCurrent) // 802DA4A8: 80451450 (readCount) // 802DA4B0: 80451450 (readCount) // 802DA4C8: 8045144C (fileOffset) // 802DA4D8: 80451438 (refCurrent) // 802DA4E4: 80451430 (refBuf) // 802DA4F0: 80451434 (refEnd) // 802DA52C: 80451450 (readCount) // 802DA530: 8045144C (fileOffset) // 802DA558: 80451438 (refCurrent) // 802DA560: 80451438 (refCurrent) // 802DA568: 80451438 (refCurrent) // 802DA56C: 80451434 (refEnd) // 802DA578: 80451430 (refBuf) // 802DA57C: 80451438 (refCurrent) // 802DA58C: 80451430 (refBuf) // 802DA590: 80451450 (readCount) // 802DA598: 80451450 (readCount) // 802DA5C0: 80451450 (readCount) // 802DA5C8: 80451450 (readCount) // 802DA5E8: 8045145C (tsPtr) // 802DA5F8: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False // u8* False // u8 False // u8* False // u8 False asm static void decompSZS_subroutine(u8* param_0, u8* param_1) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/decompSZS_subroutine__FPUcPUc.s" } #pragma pop /* 802DA60C-802DA6D8 00CC+00 s=1 e=0 z=0 None .text firstSrcData__Fv */ // 802DA61C: 803621DC (_savegpr_29) // 802DA620: 8045142C (szpEnd) // 802DA628: 80451444 (srcLimit) // 802DA62C: 80451428 (szpBuf) // 802DA638: 80451440 (transLeft) // 802DA650: 80451448 (srcFile) // 802DA660: 8045143C (srcOffset) // 802DA668: 80348E44 (DVDReadPrio) // 802DA67C: 804508C8 (data_804508C8) // 802DA690: 8034C9C4 (VIWaitForRetrace) // 802DA6A0: 8033B580 (DCInvalidateRange) // 802DA6A4: 8045143C (srcOffset) // 802DA6AC: 8045143C (srcOffset) // 802DA6B0: 80451440 (transLeft) // 802DA6B8: 80451440 (transLeft) // 802DA6C4: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False asm static void firstSrcData() { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/firstSrcData__Fv.s" } #pragma pop /* 802DA6D8-802DA7D4 00FC+00 s=1 e=0 z=0 None .text nextSrcData__FPUc */ // 802DA6E8: 803621D8 (_savegpr_28) // 802DA6F0: 8045142C (szpEnd) // 802DA700: 80451428 (szpBuf) // 802DA710: 80451428 (szpBuf) // 802DA71C: 80003540 (memcpy) // 802DA724: 8045142C (szpEnd) // 802DA72C: 80451440 (transLeft) // 802DA73C: 802DA7D4 (isErrorRetry__12JKRDvdRipperFv) // 802DA740: 802DA7D4 (isErrorRetry__12JKRDvdRipperFv) // 802DA744: 80451448 (srcFile) // 802DA754: 8045143C (srcOffset) // 802DA75C: 80348E44 (DVDReadPrio) // 802DA780: 8034C9C4 (VIWaitForRetrace) // 802DA790: 8033B580 (DCInvalidateRange) // 802DA794: 8045143C (srcOffset) // 802DA79C: 8045143C (srcOffset) // 802DA7A0: 80451440 (transLeft) // 802DA7A8: 80451440 (transLeft) // 802DA7B4: 80451444 (srcLimit) // 802DA7C0: 80362224 (_restgpr_28) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False // u8* False // u8 False asm static void nextSrcData(u8* param_0) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/nextSrcData__FPUc.s" } #pragma pop /* 802DA7D4-802DA7DC 0008+00 s=1 e=0 z=0 None .text isErrorRetry__12JKRDvdRipperFv */ // 802DA7D4: 804508C8 (data_804508C8) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False asm void JKRDvdRipper::isErrorRetry() { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/isErrorRetry__12JKRDvdRipperFv.s" } #pragma pop /* 802DA7DC-802DA820 0044+00 s=0 e=0 z=0 None .text __sinit_JKRDvdRipper_cpp */ // 802DA7E8: 80434384 (sDvdAsyncList__12JKRDvdRipper) // 802DA7EC: 80434384 (sDvdAsyncList__12JKRDvdRipper) // 802DA7F0: 802DBF14 (initiate__10JSUPtrListFv) // 802DA7F4: 80434384 (sDvdAsyncList__12JKRDvdRipper) // 802DA7F8: 80434384 (sDvdAsyncList__12JKRDvdRipper) // 802DA7FC: 802DA820 (func_802DA820) // 802DA800: 802DA820 (func_802DA820) // 802DA804: 80434378 (lit_491) // 802DA808: 80434378 (lit_491) // 802DA80C: 80361C24 (__register_global_object) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False extern "C" asm void __sinit_JKRDvdRipper_cpp() { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/__sinit_JKRDvdRipper_cpp.s" } #pragma pop #pragma push #pragma force_active on #pragma section ".ctors$15" __declspec(section ".ctors$15") void* const _ctors_802DA7DC = (void*)__sinit_JKRDvdRipper_cpp; #pragma pop /* 802DA820-802DA874 0054+00 s=1 e=0 z=0 None .text __dt__23JSUList<12JKRDMCommand>Fv */ // 802DA844: 802DBEAC (__dt__10JSUPtrListFv) // 802DA854: 802CED3C (__dl__FPv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False True asm JSUList__template9::~JSUList__template9() { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/func_802DA820.s" } #pragma pop