// // Generated By: dol2asm // Translation Unit: JKRDvdRipper // #include "JSystem/JKernel/JKRDvdRipper.h" #include "dol2asm.h" #include "dolphin/types.h" // // Forward References: // extern "C" void loadToMainRAM__12JKRDvdRipperFPCcPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl(); extern "C" void loadToMainRAM__12JKRDvdRipperFlPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl(); extern "C" void loadToMainRAM__12JKRDvdRipperFP10JKRDvdFilePUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl(); extern "C" static void JKRDecompressFromDVD__FP10JKRDvdFilePvUlUlUlUlPUl(); extern "C" static void decompSZS_subroutine__FPUcPUc(); extern "C" static void firstSrcData__Fv(); extern "C" static void nextSrcData__FPUc(); extern "C" u8 isErrorRetry__12JKRDvdRipperFv(); extern "C" void __sinit_JKRDvdRipper_cpp(); extern "C" void func_802DA820(void* _this); extern "C" extern char const* const JKRDvdRipper__stringBase0; extern "C" u8 sDvdAsyncList__12JKRDvdRipper[12]; extern "C" u32 sSZSBufferSize__12JKRDvdRipper; // // External References: // SECTION_INIT void memcpy(); extern "C" void alloc__7JKRHeapFUliP7JKRHeap(); extern "C" void alloc__7JKRHeapFUli(); extern "C" void free__7JKRHeapFPvP7JKRHeap(); extern "C" void __dl__FPv(); extern "C" void __ct__10JKRDvdFileFv(); extern "C" void __dt__10JKRDvdFileFv(); extern "C" void open__10JKRDvdFileFPCc(); extern "C" void open__10JKRDvdFileFl(); extern "C" void orderSync__9JKRDecompFPUcPUcUlUl(); extern "C" void checkCompressed__9JKRDecompFPUc(); extern "C" void __dt__10JSUPtrListFv(); extern "C" void initiate__10JSUPtrListFv(); extern "C" void panic_f__12JUTExceptionFPCciPCce(); extern "C" void DCInvalidateRange(); extern "C" void DCStoreRangeNoSync(); extern "C" void VIWaitForRetrace(); extern "C" void __register_global_object(); extern "C" void _savegpr_18(); extern "C" void _savegpr_23(); extern "C" void _savegpr_24(); extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_18(); extern "C" void _restgpr_23(); extern "C" void _restgpr_24(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" u8 sSystemHeap__7JKRHeap[4]; // // Declarations: // /* 802D9B98-802D9C54 2D44D8 00BC+00 0/0 1/1 0/0 .text * loadToMainRAM__12JKRDvdRipperFPCcPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off 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 2D4594 00BC+00 0/0 9/9 0/0 .text * loadToMainRAM__12JKRDvdRipperFlPUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off 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-8039D290 0298F0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */ #pragma push #pragma force_active on SECTION_DEAD static char const* const stringBase_8039D290 = "JKRDvdRipper.cpp"; SECTION_DEAD static char const* const stringBase_8039D2A1 = "%s"; SECTION_DEAD static char const* const stringBase_8039D2A4 = "Sorry, not applied for SZP archive."; SECTION_DEAD static 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 000348 0004+00 3/2 0/0 0/0 .sdata None */ SECTION_SDATA static u32 data_804508C8 = 0x01000000; /* 802D9D10-802DA1E4 2D4650 04D4+00 2/2 0/0 0/0 .text * loadToMainRAM__12JKRDvdRipperFP10JKRDvdFilePUc15JKRExpandSwitchUlP7JKRHeapQ212JKRDvdRipper15EAllocDirectionUlPiPUl */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off 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 061098 000C+00 1/1 0/0 0/0 .bss @491 */ static u8 lit_491[12]; /* 80434384-80434390 0610A4 000C+00 1/1 0/0 0/0 .bss sDvdAsyncList__12JKRDvdRipper */ u8 JKRDvdRipper::sDvdAsyncList[12]; /* 80434390-804343A8 0610B0 0018+00 1/1 0/0 0/0 .bss decompMutex */ static u8 decompMutex[24]; /* 804508CC-804508D0 00034C 0004+00 1/1 1/1 0/0 .sdata sSZSBufferSize__12JKRDvdRipper */ SECTION_SDATA u32 JKRDvdRipper::sSZSBufferSize = 0x00000400; /* 80451428-8045142C 000928 0004+00 3/3 0/0 0/0 .sbss szpBuf */ static u8 szpBuf[4]; /* 8045142C-80451430 00092C 0004+00 3/3 0/0 0/0 .sbss szpEnd */ static u8 szpEnd[4]; /* 80451430-80451434 000930 0004+00 2/2 0/0 0/0 .sbss refBuf */ static u8 refBuf[4]; /* 80451434-80451438 000934 0004+00 2/2 0/0 0/0 .sbss refEnd */ static u8 refEnd[4]; /* 80451438-8045143C 000938 0004+00 2/2 0/0 0/0 .sbss refCurrent */ static u8 refCurrent[4]; /* 8045143C-80451440 00093C 0004+00 3/3 0/0 0/0 .sbss srcOffset */ static u8 srcOffset[4]; /* 80451440-80451444 000940 0004+00 4/4 0/0 0/0 .sbss transLeft */ static u8 transLeft[4]; /* 80451444-80451448 000944 0004+00 3/3 0/0 0/0 .sbss srcLimit */ static u8 srcLimit[4]; /* 80451448-8045144C 000948 0004+00 3/3 0/0 0/0 .sbss srcFile */ static u8 srcFile[4]; /* 8045144C-80451450 00094C 0004+00 2/2 0/0 0/0 .sbss fileOffset */ static u8 fileOffset[4]; /* 80451450-80451454 000950 0004+00 2/2 0/0 0/0 .sbss readCount */ static u8 readCount[4]; /* 80451454-80451458 000954 0004+00 2/2 0/0 0/0 .sbss maxDest */ static u8 maxDest[4]; /* 80451458-8045145C 000958 0004+00 1/1 0/0 0/0 .sbss None */ static u8 data_80451458[4]; /* 8045145C-80451460 00095C 0004+00 2/2 0/0 0/0 .sbss tsPtr */ static u8 tsPtr[4]; /* 80451460-80451468 000960 0004+04 1/1 0/0 0/0 .sbss tsArea */ static u8 tsArea[4 + 4 /* padding */]; /* 802DA1E4-802DA35C 2D4B24 0178+00 1/1 0/0 0/0 .text * JKRDecompressFromDVD__FP10JKRDvdFilePvUlUlUlUlPUl */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off static asm 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 2D4C9C 02B0+00 1/1 0/0 0/0 .text decompSZS_subroutine__FPUcPUc */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off static asm void decompSZS_subroutine(u8* param_0, u8* param_1) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/decompSZS_subroutine__FPUcPUc.s" } #pragma pop /* 802DA60C-802DA6D8 2D4F4C 00CC+00 1/1 0/0 0/0 .text firstSrcData__Fv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off static asm u8* firstSrcData() { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/firstSrcData__Fv.s" } #pragma pop /* 802DA6D8-802DA7D4 2D5018 00FC+00 1/1 0/0 0/0 .text nextSrcData__FPUc */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off static asm void nextSrcData(u8* param_0) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/nextSrcData__FPUc.s" } #pragma pop /* 802DA7D4-802DA7DC -00001 0008+00 0/0 0/0 0/0 .text isErrorRetry__12JKRDvdRipperFv */ u8 JKRDvdRipper::isErrorRetry() { return *(u8*)(&data_804508C8); } /* 802DA7DC-802DA820 2D511C 0044+00 0/0 1/0 0/0 .text __sinit_JKRDvdRipper_cpp */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void __sinit_JKRDvdRipper_cpp() { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/__sinit_JKRDvdRipper_cpp.s" } #pragma pop #pragma push #pragma force_active on REGISTER_CTORS(0x802DA7DC, __sinit_JKRDvdRipper_cpp); #pragma pop /* 802DA820-802DA874 2D5160 0054+00 1/1 0/0 0/0 .text __dt__23JSUList<12JKRDMCommand>Fv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm void func_802DA820(void* _this) { nofralloc #include "asm/JSystem/JKernel/JKRDvdRipper/func_802DA820.s" } #pragma pop /* 8039D290-8039D290 0298F0 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */