// // Generated By: dol2asm // Translation Unit: JKRDvdFile // #include "dol2asm.h" #include "dolphin/types.h" #include "JSystem/JKernel/JKRDvdFile.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 JSUPtrLink { /* 802DBDFC */ // False False // void* False // void False JSUPtrLink(void*); /* 802DBE14 */ // False False ~JSUPtrLink(); }; struct JSUPtrList { /* 802DBEAC */ // False False ~JSUPtrList(); /* 802DBF14 */ // False False void initiate(); /* 802DBF4C */ // False False // JSUPtrLink* False // JSUPtrLink False void append(JSUPtrLink*); /* 802DC15C */ // False False // JSUPtrLink* False // JSUPtrLink False void remove(JSUPtrLink*); }; template struct JSUList { }; /* JSUList */ struct JSUList__template8 { /* 802D9B44 */ // False True ~JSUList__template8(); }; struct DVDFileInfo { }; struct JKRDvdFile { /* 802D96A0 */ // False False // s32 False JKRDvdFile(s32); /* 802D9584 */ // False False JKRDvdFile(); /* 802D95F8 */ // False False // char const* False // char const False // char False JKRDvdFile(char const*); /* 802D9748 */ // False False ~JKRDvdFile(); /* 802D97E4 */ // True False void initiate(); /* 802D98C4 */ // False False // s32 False void open(s32); /* 802D9850 */ // False False // char const* False // char const False // char False void open(char const*); /* 802D9938 */ // True False void close(); /* 802D99B4 */ // True False // void* False // void False // s32 False // s32 False void readData(void*, s32, s32); /* 802D9A68 */ // True False // s32 False // void const* False // void const False // void False // s32 False // s32 False s32 writeData(void const*, s32, s32); /* 802D9A70 */ // True False void sync(); /* 802D9AC4 */ // True False // s32 False // DVDFileInfo* False // DVDFileInfo False void doneProcess(s32, DVDFileInfo*); /* 802D9AF8 */ // True False void getFileSize() const; }; struct JKRDisposer { /* 802D147C */ // False False JKRDisposer(); /* 802D14E4 */ // False False ~JKRDisposer(); }; // // Forward References: // // False False extern "C" void __ct__10JKRDvdFileFv(); // False False // char const* False // char const False // char False extern "C" void __ct__10JKRDvdFileFPCc(); // False False // s32 False extern "C" void __ct__10JKRDvdFileFl(); // False False extern "C" void __dt__10JKRDvdFileFv(); // True False extern "C" void initiate__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(); // True False extern "C" void close__10JKRDvdFileFv(); // True False // void* False // void False // s32 False // s32 False extern "C" void readData__10JKRDvdFileFPvll(); // True False // s32 False // void const* False // void const False // void False // s32 False // s32 False extern "C" s32 writeData__10JKRDvdFileFPCvll(); // True False extern "C" void sync__10JKRDvdFileFv(); // True False // s32 False // DVDFileInfo* False // DVDFileInfo False extern "C" void doneProcess__10JKRDvdFileFlP11DVDFileInfo(); // True False extern "C" void getFileSize__10JKRDvdFileCFv(); // False False extern "C" void __sinit_JKRDvdFile_cpp(); // False True extern "C" void func_802D9B44(); extern "C" extern char const* const JKRDvdFile__stringBase0; extern "C" extern void* __vt__10JKRDvdFile[9 + 1 /* padding */]; // // External References: // // False False // void False // void* False // void False void operator delete(void*); // False False // void False // void* False // void False extern "C" void __dl__FPv(); // False False extern "C" void __ct__11JKRDisposerFv(); // False False extern "C" void __dt__11JKRDisposerFv(); // False False // void* False // void False extern "C" void __ct__10JSUPtrLinkFPv(); // False False extern "C" void __dt__10JSUPtrLinkFv(); // False False extern "C" void __dt__10JSUPtrListFv(); // False False extern "C" void initiate__10JSUPtrListFv(); // False False // JSUPtrLink* False // JSUPtrLink False extern "C" void append__10JSUPtrListFP10JSUPtrLink(); // False False // JSUPtrLink* False // JSUPtrLink False extern "C" void remove__10JSUPtrListFP10JSUPtrLink(); // 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 OSInitMessageQueue(); // False False extern "C" void OSSendMessage(); // False False extern "C" void OSReceiveMessage(); // False False extern "C" void OSInitMutex(); // False False extern "C" void OSLockMutex(); // False False extern "C" void OSUnlockMutex(); // False False extern "C" void OSGetCurrentThread(); // False False extern "C" void DVDFastOpen(); // False False extern "C" void DVDOpen(); // False False extern "C" void DVDClose(); // False False extern "C" void DVDReadAsyncPrio(); // False False extern "C" void DVDGetCommandBlockStatus(); // False False extern "C" void __register_global_object(); // False False extern "C" void _savegpr_27(); // False False extern "C" void _savegpr_29(); // False False extern "C" void _restgpr_27(); // False False extern "C" void _restgpr_29(); extern "C" extern void* __vt__7JKRFile[8]; // // Declarations: // /* ############################################################################################## */ /* 803CC438-803CC460 0024+04 s=4 e=0 z=0 None .data __vt__10JKRDvdFile */ SECTION_DATA void* __vt__10JKRDvdFile[9 + 1 /* padding */] = { (void*)NULL /* RTTI */, (void*)NULL, (void*)__dt__10JKRDvdFileFv, (void*)open__10JKRDvdFileFPCc, (void*)close__10JKRDvdFileFv, (void*)readData__10JKRDvdFileFPvll, (void*)writeData__10JKRDvdFileFPCvll, (void*)getFileSize__10JKRDvdFileCFv, (void*)open__10JKRDvdFileFl, /* padding */ NULL, }; /* 802D9584-802D95F8 0074+00 s=0 e=3 z=0 None .text __ct__10JKRDvdFileFv */ // 802D95A4: 802D147C (__ct__11JKRDisposerFv) // 802D95A8: 803CC328 (__vt__7JKRFile) // 802D95AC: 803CC328 (__vt__7JKRFile) // 802D95BC: 803CC438 (__vt__10JKRDvdFile) // 802D95C0: 803CC438 (__vt__10JKRDvdFile) // 802D95D0: 802DBDFC (__ct__10JSUPtrLinkFPv) // 802D95D8: 802D97E4 (initiate__10JKRDvdFileFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False asm JKRDvdFile::JKRDvdFile() { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/__ct__10JKRDvdFileFv.s" } #pragma pop /* 802D95F8-802D96A0 00A8+00 s=0 e=2 z=0 None .text __ct__10JKRDvdFileFPCc */ // 802D9608: 803621DC (_savegpr_29) // 802D961C: 802D147C (__ct__11JKRDisposerFv) // 802D9620: 803CC328 (__vt__7JKRFile) // 802D9624: 803CC328 (__vt__7JKRFile) // 802D9634: 803CC438 (__vt__10JKRDvdFile) // 802D9638: 803CC438 (__vt__10JKRDvdFile) // 802D9648: 802DBDFC (__ct__10JSUPtrLinkFPv) // 802D9650: 802D97E4 (initiate__10JKRDvdFileFv) // 802D968C: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False // char const* False // char const False // char False asm JKRDvdFile::JKRDvdFile(char const* param_0) { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/__ct__10JKRDvdFileFPCc.s" } #pragma pop /* 802D96A0-802D9748 00A8+00 s=0 e=3 z=0 None .text __ct__10JKRDvdFileFl */ // 802D96B0: 803621DC (_savegpr_29) // 802D96C4: 802D147C (__ct__11JKRDisposerFv) // 802D96C8: 803CC328 (__vt__7JKRFile) // 802D96CC: 803CC328 (__vt__7JKRFile) // 802D96DC: 803CC438 (__vt__10JKRDvdFile) // 802D96E0: 803CC438 (__vt__10JKRDvdFile) // 802D96F0: 802DBDFC (__ct__10JSUPtrLinkFPv) // 802D96F8: 802D97E4 (initiate__10JKRDvdFileFv) // 802D9734: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False // s32 False asm JKRDvdFile::JKRDvdFile(s32 param_0) { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/__ct__10JKRDvdFileFl.s" } #pragma pop /* 802D9748-802D97E4 009C+00 s=1 e=5 z=0 None .text __dt__10JKRDvdFileFv */ // 802D9768: 803CC438 (__vt__10JKRDvdFile) // 802D976C: 803CC438 (__vt__10JKRDvdFile) // 802D9794: 802DBE14 (__dt__10JSUPtrLinkFv) // 802D97A0: 803CC328 (__vt__7JKRFile) // 802D97A4: 803CC328 (__vt__7JKRFile) // 802D97B4: 802D14E4 (__dt__11JKRDisposerFv) // 802D97C4: 802CED3C (__dl__FPv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False asm JKRDvdFile::~JKRDvdFile() { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/__dt__10JKRDvdFileFv.s" } #pragma pop /* 802D97E4-802D9850 006C+00 s=3 e=0 z=0 None .text initiate__10JKRDvdFileFv */ // 802D9800: 8033F008 (OSInitMutex) // 802D9808: 8033F008 (OSInitMutex) // 802D9818: 8033E994 (OSInitMessageQueue) // 802D9828: 8033E994 (OSInitMessageQueue) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False asm void JKRDvdFile::initiate() { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/initiate__10JKRDvdFileFv.s" } #pragma pop /* ############################################################################################## */ /* 80434360-8043436C 000C+00 s=1 e=0 z=0 None .bss @657 */ static u8 lit_657[12]; /* 8043436C-80434378 000C+00 s=4 e=0 z=0 None .bss sDvdList__10JKRDvdFile */ static u8 sDvdList__10JKRDvdFile[12]; /* 802D9850-802D98C4 0074+00 s=1 e=1 z=0 None .text open__10JKRDvdFileFPCc */ // 802D9878: 80348890 (DVDOpen) // 802D9894: 8043436C (sDvdList__10JKRDvdFile) // 802D9898: 8043436C (sDvdList__10JKRDvdFile) // 802D98A0: 802DBF4C (append__10JSUPtrListFP10JSUPtrLink) // 802D98A8: 8034B17C (DVDGetCommandBlockStatus) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False // char const* False // char const False // char False asm void JKRDvdFile::open(char const* param_0) { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/open__10JKRDvdFileFPCc.s" } #pragma pop /* 802D98C4-802D9938 0074+00 s=1 e=2 z=0 None .text open__10JKRDvdFileFl */ // 802D98EC: 8034881C (DVDFastOpen) // 802D9908: 8043436C (sDvdList__10JKRDvdFile) // 802D990C: 8043436C (sDvdList__10JKRDvdFile) // 802D9914: 802DBF4C (append__10JSUPtrListFP10JSUPtrLink) // 802D991C: 8034B17C (DVDGetCommandBlockStatus) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False // s32 False asm void JKRDvdFile::open(s32 param_0) { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/open__10JKRDvdFileFl.s" } #pragma pop /* ############################################################################################## */ /* 8039D260-8039D290 0029+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_8039D260 = "JKRDvdFile.cpp"; SECTION_DEAD char const* const stringBase_8039D26F = "%s"; SECTION_DEAD char const* const stringBase_8039D272 = "cannot close DVD file\n"; /* @stringBase0 padding */ SECTION_DEAD static char const* const pad_8039D289 = "\0\0\0\0\0\0"; #pragma pop /* 802D9938-802D99B4 007C+00 s=1 e=0 z=0 None .text close__10JKRDvdFileFv */ // 802D995C: 80348958 (DVDClose) // 802D9970: 8043436C (sDvdList__10JKRDvdFile) // 802D9974: 8043436C (sDvdList__10JKRDvdFile) // 802D997C: 802DC15C (remove__10JSUPtrListFP10JSUPtrLink) // 802D9984: 8039D260 (JKRDvdFile__stringBase0) // 802D9988: 8039D260 (JKRDvdFile__stringBase0) // 802D999C: 802E21FC (panic_f__12JUTExceptionFPCciPCce) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False asm void JKRDvdFile::close() { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/close__10JKRDvdFileFv.s" } #pragma pop /* 802D99B4-802D9A68 00B4+00 s=1 e=0 z=0 None .text readData__10JKRDvdFileFPvll */ // 802D99C4: 803621D4 (_savegpr_27) // 802D99DC: 8033F040 (OSLockMutex) // 802D99F0: 8033F11C (OSUnlockMutex) // 802D99FC: 80340C84 (OSGetCurrentThread) // 802D9A18: 802D9AC4 (doneProcess__10JKRDvdFileFlP11DVDFileInfo) // 802D9A1C: 802D9AC4 (doneProcess__10JKRDvdFileFlP11DVDFileInfo) // 802D9A24: 80348D54 (DVDReadAsyncPrio) // 802D9A34: 802D9A70 (sync__10JKRDvdFileFv) // 802D9A48: 8033F11C (OSUnlockMutex) // 802D9A54: 80362220 (_restgpr_27) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False // void* False // void False // s32 False // s32 False asm void JKRDvdFile::readData(void* param_0, s32 param_1, s32 param_2) { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/readData__10JKRDvdFileFPvll.s" } #pragma pop /* 802D9A68-802D9A70 0008+00 s=1 e=0 z=0 None .text writeData__10JKRDvdFileFPCvll */ // True False // s32 False // void const* False // void const False // void False // s32 False // s32 False s32 JKRDvdFile::writeData(void const* param_0, s32 param_1, s32 param_2) { return -1; } /* 802D9A70-802D9AC4 0054+00 s=1 e=0 z=0 None .text sync__10JKRDvdFileFv */ // 802D9A88: 8033F040 (OSLockMutex) // 802D9A98: 8033EABC (OSReceiveMessage) // 802D9AA8: 8033F11C (OSUnlockMutex) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False asm void JKRDvdFile::sync() { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/sync__10JKRDvdFileFv.s" } #pragma pop /* 802D9AC4-802D9AF8 0034+00 s=1 e=0 z=0 None .text doneProcess__10JKRDvdFileFlP11DVDFileInfo */ // 802D9AE4: 8033E9F4 (OSSendMessage) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False // s32 False // DVDFileInfo* False // DVDFileInfo False asm void JKRDvdFile::doneProcess(s32 param_0, DVDFileInfo* param_1) { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/doneProcess__10JKRDvdFileFlP11DVDFileInfo.s" } #pragma pop /* 802D9AF8-802D9B00 0008+00 s=1 e=0 z=0 None .text getFileSize__10JKRDvdFileCFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // True False asm void JKRDvdFile::getFileSize() const { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/getFileSize__10JKRDvdFileCFv.s" } #pragma pop /* 802D9B00-802D9B44 0044+00 s=0 e=0 z=0 None .text __sinit_JKRDvdFile_cpp */ // 802D9B0C: 8043436C (sDvdList__10JKRDvdFile) // 802D9B10: 8043436C (sDvdList__10JKRDvdFile) // 802D9B14: 802DBF14 (initiate__10JSUPtrListFv) // 802D9B18: 8043436C (sDvdList__10JKRDvdFile) // 802D9B1C: 8043436C (sDvdList__10JKRDvdFile) // 802D9B20: 802D9B44 (func_802D9B44) // 802D9B24: 802D9B44 (func_802D9B44) // 802D9B28: 80434360 (lit_657) // 802D9B2C: 80434360 (lit_657) // 802D9B30: 80361C24 (__register_global_object) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False False extern "C" asm void __sinit_JKRDvdFile_cpp() { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/__sinit_JKRDvdFile_cpp.s" } #pragma pop #pragma push #pragma force_active on #pragma section ".ctors$15" __declspec(section ".ctors$15") void* const _ctors_802D9B00 = (void*)__sinit_JKRDvdFile_cpp; #pragma pop /* 802D9B44-802D9B98 0054+00 s=1 e=0 z=0 None .text __dt__21JSUList<10JKRDvdFile>Fv */ // 802D9B68: 802DBEAC (__dt__10JSUPtrListFv) // 802D9B78: 802CED3C (__dl__FPv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off // False True asm JSUList__template8::~JSUList__template8() { nofralloc #include "asm/JSystem/JKernel/JKRDvdFile/func_802D9B44.s" } #pragma pop