// // Generated By: dol2asm // Translation Unit: JKRAramPiece // #include "JSystem/JKernel/JKRAramPiece.h" #include "dol2asm.h" #include "dolphin/types.h" // // Types: // struct JUTException { /* 802E21FC */ void panic_f(char const*, int, char const*, ...); }; struct JSUPtrLink { /* 802DBDFC */ JSUPtrLink(void*); /* 802DBE14 */ ~JSUPtrLink(); }; struct JSUPtrList { /* 802DBF14 */ void initiate(); /* 802DBF4C */ void append(JSUPtrLink*); /* 802DC15C */ void remove(JSUPtrLink*); }; template struct JSUList {}; /* JSUList */ struct JSUList__template5 { /* 802D2DF0 */ void func_802D2DF0(); }; struct JKRHeap { /* 802CE500 */ void free(void*, JKRHeap*); static u8 sSystemHeap[4]; }; struct JKRDecompCommand {}; struct JKRDecomp { /* 802DB8D0 */ void sendCommand(JKRDecompCommand*); }; struct JKRAMCommand { /* 802D39EC */ JKRAMCommand(); /* 802D3A5C */ ~JKRAMCommand(); }; struct JKRAramBlock {}; struct JKRAramPiece { /* 802D3574 */ void prepareCommand(int, u32, u32, u32, JKRAramBlock*, void (*)(u32)); /* 802D35F4 */ void sendCommand(JKRAMCommand*); /* 802D3614 */ void orderAsync(int, u32, u32, u32, JKRAramBlock*, void (*)(u32)); /* 802D3770 */ void sync(JKRAMCommand*, int); /* 802D3838 */ void orderSync(int, u32, u32, u32, JKRAramBlock*); /* 802D38CC */ void startDMA(JKRAMCommand*); /* 802D3944 */ void doneDMA(u32); static u8 sAramPieceCommandList[12]; static u8 mMutex[24]; }; struct JKRAram { static u8 sMessageQueue[32]; }; // // Forward References: // extern "C" void prepareCommand__12JKRAramPieceFiUlUlUlP12JKRAramBlockPFUl_v(); extern "C" void sendCommand__12JKRAramPieceFP12JKRAMCommand(); extern "C" void orderAsync__12JKRAramPieceFiUlUlUlP12JKRAramBlockPFUl_v(); extern "C" void sync__12JKRAramPieceFP12JKRAMCommandi(); extern "C" void orderSync__12JKRAramPieceFiUlUlUlP12JKRAramBlock(); extern "C" void startDMA__12JKRAramPieceFP12JKRAMCommand(); extern "C" void doneDMA__12JKRAramPieceFUl(); extern "C" void __ct__12JKRAMCommandFv(); extern "C" void __dt__12JKRAMCommandFv(); extern "C" void __sinit_JKRAramPiece_cpp(); extern "C" extern char const* const JKRAramPiece__stringBase0; extern "C" u8 sAramPieceCommandList__12JKRAramPiece[12]; extern "C" u8 mMutex__12JKRAramPiece[24]; // // External References: // extern "C" void OSReport(); extern "C" void free__7JKRHeapFPvP7JKRHeap(); extern "C" void* __nw__FUlP7JKRHeapi(); extern "C" void __dl__FPv(); extern "C" void func_802D2DF0(); extern "C" void sendCommand__9JKRDecompFP16JKRDecompCommand(); extern "C" void __ct__10JSUPtrLinkFPv(); extern "C" void __dt__10JSUPtrLinkFv(); extern "C" void initiate__10JSUPtrListFv(); extern "C" void append__10JSUPtrListFP10JSUPtrLink(); extern "C" void remove__10JSUPtrListFP10JSUPtrLink(); extern "C" void panic_f__12JUTExceptionFPCciPCce(); extern "C" void DCInvalidateRange(); extern "C" void DCStoreRange(); extern "C" void OSInitMessageQueue(); extern "C" void OSSendMessage(); extern "C" void OSReceiveMessage(); extern "C" void OSLockMutex(); extern "C" void OSUnlockMutex(); extern "C" void ARQPostRequest(); extern "C" void __register_global_object(); extern "C" void _savegpr_25(); extern "C" void _savegpr_26(); extern "C" void _savegpr_27(); extern "C" void _restgpr_25(); extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" u8 sMessageQueue__7JKRAram[32]; extern "C" u8 sSystemHeap__7JKRHeap[4]; // // Declarations: // /* 802D3574-802D35F4 2CDEB4 0080+00 1/1 0/0 0/0 .text * prepareCommand__12JKRAramPieceFiUlUlUlP12JKRAramBlockPFUl_v */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JKRAramPiece::prepareCommand(int param_0, u32 param_1, u32 param_2, u32 param_3, JKRAramBlock* param_4, void (*)(u32)) { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/prepareCommand__12JKRAramPieceFiUlUlUlP12JKRAramBlockPFUl_v.s" } #pragma pop /* 802D35F4-802D3614 2CDF34 0020+00 0/0 1/1 0/0 .text sendCommand__12JKRAramPieceFP12JKRAMCommand */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JKRAramPiece::sendCommand(JKRAMCommand* param_0) { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/sendCommand__12JKRAramPieceFP12JKRAMCommand.s" } #pragma pop /* ############################################################################################## */ /* 80434318-80434324 061038 000C+00 1/1 0/0 0/0 .bss @492 */ static u8 lit_492[12]; /* 80434324-80434330 061044 000C+00 3/3 0/0 0/0 .bss sAramPieceCommandList__12JKRAramPiece */ u8 JKRAramPiece::sAramPieceCommandList[12]; /* 80434330-80434348 061050 0018+00 3/3 0/0 0/0 .bss mMutex__12JKRAramPiece */ u8 JKRAramPiece::mMutex[24]; /* 802D3614-802D3770 2CDF54 015C+00 1/1 0/0 0/0 .text * orderAsync__12JKRAramPieceFiUlUlUlP12JKRAramBlockPFUl_v */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JKRAramPiece::orderAsync(int param_0, u32 param_1, u32 param_2, u32 param_3, JKRAramBlock* param_4, void (*)(u32)) { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/orderAsync__12JKRAramPieceFiUlUlUlP12JKRAramBlockPFUl_v.s" } #pragma pop /* 802D3770-802D3838 2CE0B0 00C8+00 1/1 0/0 0/0 .text sync__12JKRAramPieceFP12JKRAMCommandi */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JKRAramPiece::sync(JKRAMCommand* param_0, int param_1) { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/sync__12JKRAramPieceFP12JKRAMCommandi.s" } #pragma pop /* 802D3838-802D38CC 2CE178 0094+00 0/0 6/6 0/0 .text * orderSync__12JKRAramPieceFiUlUlUlP12JKRAramBlock */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JKRAramPiece::orderSync(int param_0, u32 param_1, u32 param_2, u32 param_3, JKRAramBlock* param_4) { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/orderSync__12JKRAramPieceFiUlUlUlP12JKRAramBlock.s" } #pragma pop /* 802D38CC-802D3944 2CE20C 0078+00 1/1 1/1 0/0 .text startDMA__12JKRAramPieceFP12JKRAMCommand */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JKRAramPiece::startDMA(JKRAMCommand* param_0) { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/startDMA__12JKRAramPieceFP12JKRAMCommand.s" } #pragma pop /* 802D3944-802D39EC 2CE284 00A8+00 1/1 0/0 0/0 .text doneDMA__12JKRAramPieceFUl */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JKRAramPiece::doneDMA(u32 param_0) { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/doneDMA__12JKRAramPieceFUl.s" } #pragma pop /* 802D39EC-802D3A5C 2CE32C 0070+00 1/1 0/0 0/0 .text __ct__12JKRAMCommandFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm JKRAMCommand::JKRAMCommand() { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/__ct__12JKRAMCommandFv.s" } #pragma pop /* 802D3A5C-802D3B04 2CE39C 00A8+00 1/1 0/0 0/0 .text __dt__12JKRAMCommandFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm JKRAMCommand::~JKRAMCommand() { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/__dt__12JKRAMCommandFv.s" } #pragma pop /* 802D3B04-802D3B48 2CE444 0044+00 0/0 1/0 0/0 .text __sinit_JKRAramPiece_cpp */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void __sinit_JKRAramPiece_cpp() { nofralloc #include "asm/JSystem/JKernel/JKRAramPiece/__sinit_JKRAramPiece_cpp.s" } #pragma pop #pragma push #pragma force_active on SECTION_CTORS void* const _ctors_802D3B04 = (void*)__sinit_JKRAramPiece_cpp; #pragma pop /* 8039D0B8-8039D120 029718 0068+00 1/1 0/0 0/0 .rodata @stringBase0 */ #pragma push #pragma force_active on #pragma section ".dead" SECTION_DEAD static char const* const stringBase_8039D0B8 = "direction = %x\n"; SECTION_DEAD static char const* const stringBase_8039D0C8 = "source = %x\n"; SECTION_DEAD static char const* const stringBase_8039D0D5 = "destination = %x\n"; SECTION_DEAD static char const* const stringBase_8039D0E7 = "length = %x\n"; SECTION_DEAD static char const* const stringBase_8039D0F4 = "JKRAramPiece.cpp"; SECTION_DEAD static char const* const stringBase_8039D105 = "%s"; SECTION_DEAD static char const* const stringBase_8039D108 = "illegal address. abort."; #pragma pop