From 5793e002a6e5ae2c3cd3db74d39d9599c1b9f6b1 Mon Sep 17 00:00:00 2001 From: Pheenoh Date: Sun, 31 Jan 2021 16:13:37 -0500 Subject: [PATCH] split m_Do_machine --- asm/m/Do/m_Do_machine.s | 1079 ----------------- include/m_Do/m_Do_machine/asm/func_8000B1EC.s | 145 +++ include/m_Do/m_Do_machine/asm/func_8000B3EC.s | 129 ++ include/m_Do/m_Do_machine/asm/func_8000B5C8.s | 45 + include/m_Do/m_Do_machine/asm/func_8000B668.s | 9 + include/m_Do/m_Do_machine/asm/func_8000B68C.s | 49 + include/m_Do/m_Do_machine/asm/func_8000B73C.s | 11 + include/m_Do/m_Do_machine/asm/func_8000B768.s | 12 + include/m_Do/m_Do_machine/asm/func_8000B798.s | 13 + include/m_Do/m_Do_machine/asm/func_8000B7C8.s | 108 ++ include/m_Do/m_Do_machine/asm/func_8000B95C.s | 257 ++++ include/m_Do/m_Do_machine/asm/func_8000BCF4.s | 1 + include/m_Do/m_Do_machine/asm/func_8000BCF8.s | 19 + include/m_Do/m_Do_machine/asm/func_8000BD44.s | 240 ++++ obj_files.mk | 2 +- src/m_Do/m_Do_machine.cpp | 216 +++- 16 files changed, 1254 insertions(+), 1081 deletions(-) delete mode 100644 asm/m/Do/m_Do_machine.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B1EC.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B3EC.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B5C8.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B668.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B68C.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B73C.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B768.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B798.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B7C8.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000B95C.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000BCF4.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000BCF8.s create mode 100644 include/m_Do/m_Do_machine/asm/func_8000BD44.s diff --git a/asm/m/Do/m_Do_machine.s b/asm/m/Do/m_Do_machine.s deleted file mode 100644 index 124d3eb2c94..00000000000 --- a/asm/m/Do/m_Do_machine.s +++ /dev/null @@ -1,1079 +0,0 @@ -.include "macros.inc" - -.section .text, "ax" # 8000b1ec - - -.global myGetHeapTypeByString -myGetHeapTypeByString: -/* 8000B1EC 0000812C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8000B1F0 00008130 7C 08 02 A6 */ mflr r0 -/* 8000B1F4 00008134 90 01 00 24 */ stw r0, 0x24(r1) -/* 8000B1F8 00008138 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8000B1FC 0000813C 7C 7F 1B 78 */ mr r31, r3 -/* 8000B200 00008140 80 0D 8D F0 */ lwz r0, sSystemHeap__7JKRHeap-_SDA_BASE_(r13) -/* 8000B204 00008144 7C 1F 00 40 */ cmplw r31, r0 -/* 8000B208 00008148 40 82 00 10 */ bne lbl_8000B218 -/* 8000B20C 0000814C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B210 00008150 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B214 00008154 48 00 01 C4 */ b lbl_8000B3D8 -lbl_8000B218: -/* 8000B218 00008158 48 00 3B 69 */ bl mDoExt_getZeldaHeap -/* 8000B21C 0000815C 7C 1F 18 40 */ cmplw r31, r3 -/* 8000B220 00008160 40 82 00 14 */ bne lbl_8000B234 -/* 8000B224 00008164 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B228 00008168 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B22C 0000816C 38 63 00 0B */ addi r3, r3, 0xb -/* 8000B230 00008170 48 00 01 A8 */ b lbl_8000B3D8 -lbl_8000B234: -/* 8000B234 00008174 48 00 3B 1D */ bl mDoExt_getGameHeap -/* 8000B238 00008178 7C 1F 18 40 */ cmplw r31, r3 -/* 8000B23C 0000817C 40 82 00 14 */ bne lbl_8000B250 -/* 8000B240 00008180 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B244 00008184 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B248 00008188 38 63 00 15 */ addi r3, r3, 0x15 -/* 8000B24C 0000818C 48 00 01 8C */ b lbl_8000B3D8 -lbl_8000B250: -/* 8000B250 00008190 48 00 3B 9D */ bl mDoExt_getArchiveHeap -/* 8000B254 00008194 7C 1F 18 40 */ cmplw r31, r3 -/* 8000B258 00008198 40 82 00 14 */ bne lbl_8000B26C -/* 8000B25C 0000819C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B260 000081A0 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B264 000081A4 38 63 00 1E */ addi r3, r3, 0x1e -/* 8000B268 000081A8 48 00 01 70 */ b lbl_8000B3D8 -lbl_8000B26C: -/* 8000B26C 000081AC 48 00 3B 45 */ bl mDoExt_getCommandHeap -/* 8000B270 000081B0 7C 1F 18 40 */ cmplw r31, r3 -/* 8000B274 000081B4 40 82 00 14 */ bne lbl_8000B288 -/* 8000B278 000081B8 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B27C 000081BC 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B280 000081C0 38 63 00 2A */ addi r3, r3, 0x2a -/* 8000B284 000081C4 48 00 01 54 */ b lbl_8000B3D8 -lbl_8000B288: -/* 8000B288 000081C8 48 00 3A 8D */ bl mDoExt_getDbPrintHeap -/* 8000B28C 000081CC 7C 1F 18 40 */ cmplw r31, r3 -/* 8000B290 000081D0 40 82 00 14 */ bne lbl_8000B2A4 -/* 8000B294 000081D4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B298 000081D8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B29C 000081DC 38 63 00 36 */ addi r3, r3, 0x36 -/* 8000B2A0 000081E0 48 00 01 38 */ b lbl_8000B3D8 -lbl_8000B2A4: -/* 8000B2A4 000081E4 48 00 3B 8D */ bl mDoExt_getJ2dHeap -/* 8000B2A8 000081E8 7C 1F 18 40 */ cmplw r31, r3 -/* 8000B2AC 000081EC 40 82 00 14 */ bne lbl_8000B2C0 -/* 8000B2B0 000081F0 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B2B4 000081F4 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B2B8 000081F8 38 63 00 42 */ addi r3, r3, 0x42 -/* 8000B2BC 000081FC 48 00 01 1C */ b lbl_8000B3D8 -lbl_8000B2C0: -/* 8000B2C0 00008200 7F E3 FB 78 */ mr r3, r31 -/* 8000B2C4 00008204 81 9F 00 00 */ lwz r12, 0(r31) -/* 8000B2C8 00008208 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8000B2CC 0000820C 7D 89 03 A6 */ mtctr r12 -/* 8000B2D0 00008210 4E 80 04 21 */ bctrl -/* 8000B2D4 00008214 3C 80 53 4C */ lis r4, 0x534C4944@ha -/* 8000B2D8 00008218 38 04 49 44 */ addi r0, r4, 0x534C4944@l -/* 8000B2DC 0000821C 7C 03 00 00 */ cmpw r3, r0 -/* 8000B2E0 00008220 41 82 00 84 */ beq lbl_8000B364 -/* 8000B2E4 00008224 40 80 00 38 */ bge lbl_8000B31C -/* 8000B2E8 00008228 3C 80 41 53 */ lis r4, 0x41535448@ha -/* 8000B2EC 0000822C 38 04 54 48 */ addi r0, r4, 0x41535448@l -/* 8000B2F0 00008230 7C 03 00 00 */ cmpw r3, r0 -/* 8000B2F4 00008234 41 82 00 50 */ beq lbl_8000B344 -/* 8000B2F8 00008238 40 80 00 10 */ bge lbl_8000B308 -/* 8000B2FC 0000823C 2C 03 00 00 */ cmpwi r3, 0 -/* 8000B300 00008240 41 82 00 94 */ beq lbl_8000B394 -/* 8000B304 00008244 48 00 00 A0 */ b lbl_8000B3A4 -lbl_8000B308: -/* 8000B308 00008248 3C 80 45 58 */ lis r4, 0x45585048@ha -/* 8000B30C 0000824C 38 04 50 48 */ addi r0, r4, 0x45585048@l -/* 8000B310 00008250 7C 03 00 00 */ cmpw r3, r0 -/* 8000B314 00008254 41 82 00 40 */ beq lbl_8000B354 -/* 8000B318 00008258 48 00 00 8C */ b lbl_8000B3A4 -lbl_8000B31C: -/* 8000B31C 0000825C 3C 80 55 4E */ lis r4, 0x554E4954@ha -/* 8000B320 00008260 38 04 49 54 */ addi r0, r4, 0x554E4954@l -/* 8000B324 00008264 7C 03 00 00 */ cmpw r3, r0 -/* 8000B328 00008268 41 82 00 5C */ beq lbl_8000B384 -/* 8000B32C 0000826C 40 80 00 78 */ bge lbl_8000B3A4 -/* 8000B330 00008270 3C 80 53 54 */ lis r4, 0x53544448@ha -/* 8000B334 00008274 38 04 44 48 */ addi r0, r4, 0x53544448@l -/* 8000B338 00008278 7C 03 00 00 */ cmpw r3, r0 -/* 8000B33C 0000827C 41 82 00 38 */ beq lbl_8000B374 -/* 8000B340 00008280 48 00 00 64 */ b lbl_8000B3A4 -lbl_8000B344: -/* 8000B344 00008284 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B348 00008288 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B34C 0000828C 38 63 00 4A */ addi r3, r3, 0x4a -/* 8000B350 00008290 48 00 00 88 */ b lbl_8000B3D8 -lbl_8000B354: -/* 8000B354 00008294 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B358 00008298 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B35C 0000829C 38 63 00 4F */ addi r3, r3, 0x4f -/* 8000B360 000082A0 48 00 00 78 */ b lbl_8000B3D8 -lbl_8000B364: -/* 8000B364 000082A4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B368 000082A8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B36C 000082AC 38 63 00 54 */ addi r3, r3, 0x54 -/* 8000B370 000082B0 48 00 00 68 */ b lbl_8000B3D8 -lbl_8000B374: -/* 8000B374 000082B4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B378 000082B8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B37C 000082BC 38 63 00 59 */ addi r3, r3, 0x59 -/* 8000B380 000082C0 48 00 00 58 */ b lbl_8000B3D8 -lbl_8000B384: -/* 8000B384 000082C4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B388 000082C8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B38C 000082CC 38 63 00 5E */ addi r3, r3, 0x5e -/* 8000B390 000082D0 48 00 00 48 */ b lbl_8000B3D8 -lbl_8000B394: -/* 8000B394 000082D4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B398 000082D8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B39C 000082DC 38 63 00 63 */ addi r3, r3, 0x63 -/* 8000B3A0 000082E0 48 00 00 38 */ b lbl_8000B3D8 -lbl_8000B3A4: -/* 8000B3A4 000082E4 90 61 00 08 */ stw r3, 8(r1) -/* 8000B3A8 000082E8 88 01 00 08 */ lbz r0, 8(r1) -/* 8000B3AC 000082EC 98 0D 86 90 */ stb r0, lbl_80450C10-_SDA_BASE_(r13) -/* 8000B3B0 000082F0 88 01 00 09 */ lbz r0, 9(r1) -/* 8000B3B4 000082F4 38 6D 86 90 */ addi r3, r13, lbl_80450C10-_SDA_BASE_ -/* 8000B3B8 000082F8 98 03 00 01 */ stb r0, 1(r3) -/* 8000B3BC 000082FC 88 01 00 0A */ lbz r0, 0xa(r1) -/* 8000B3C0 00008300 98 03 00 02 */ stb r0, 2(r3) -/* 8000B3C4 00008304 88 01 00 0B */ lbz r0, 0xb(r1) -/* 8000B3C8 00008308 98 03 00 03 */ stb r0, 3(r3) -/* 8000B3CC 0000830C 38 00 00 00 */ li r0, 0 -/* 8000B3D0 00008310 98 03 00 04 */ stb r0, 4(r3) -/* 8000B3D4 00008314 38 6D 86 90 */ addi r3, r13, lbl_80450C10-_SDA_BASE_ -lbl_8000B3D8: -/* 8000B3D8 00008318 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8000B3DC 0000831C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8000B3E0 00008320 7C 08 03 A6 */ mtlr r0 -/* 8000B3E4 00008324 38 21 00 20 */ addi r1, r1, 0x20 -/* 8000B3E8 00008328 4E 80 00 20 */ blr -.global myMemoryErrorRoutine -myMemoryErrorRoutine: -/* 8000B3EC 0000832C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8000B3F0 00008330 7C 08 02 A6 */ mflr r0 -/* 8000B3F4 00008334 90 01 00 34 */ stw r0, 0x34(r1) -/* 8000B3F8 00008338 39 61 00 30 */ addi r11, r1, 0x30 -/* 8000B3FC 0000833C 48 35 6D DD */ bl _savegpr_28 -/* 8000B400 00008340 7C 7F 1B 78 */ mr r31, r3 -/* 8000B404 00008344 7C 9E 23 78 */ mr r30, r4 -/* 8000B408 00008348 7C BD 2B 78 */ mr r29, r5 -/* 8000B40C 0000834C 3B 80 00 01 */ li r28, 1 -/* 8000B410 00008350 81 83 00 00 */ lwz r12, 0(r3) -/* 8000B414 00008354 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8000B418 00008358 7D 89 03 A6 */ mtctr r12 -/* 8000B41C 0000835C 4E 80 04 21 */ bctrl -/* 8000B420 00008360 3C 03 AC B4 */ addis r0, r3, 0xacb4 -/* 8000B424 00008364 28 00 49 44 */ cmplwi r0, 0x4944 -/* 8000B428 00008368 40 82 00 08 */ bne lbl_8000B430 -/* 8000B42C 0000836C 3B 80 00 00 */ li r28, 0 -lbl_8000B430: -/* 8000B430 00008370 2C 1C 00 00 */ cmpwi r28, 0 -/* 8000B434 00008374 41 82 00 28 */ beq lbl_8000B45C -/* 8000B438 00008378 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B43C 0000837C 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B440 00008380 38 63 00 6A */ addi r3, r3, 0x6a -/* 8000B444 00008384 7F C4 F3 78 */ mr r4, r30 -/* 8000B448 00008388 7F C5 F3 78 */ mr r5, r30 -/* 8000B44C 0000838C 7F A6 EB 78 */ mr r6, r29 -/* 8000B450 00008390 7F E7 FB 78 */ mr r7, r31 -/* 8000B454 00008394 4C C6 31 82 */ crclr 6 -/* 8000B458 00008398 4B FF B7 B5 */ bl OSReport_Error -lbl_8000B45C: -/* 8000B45C 0000839C 7F E3 FB 78 */ mr r3, r31 -/* 8000B460 000083A0 81 9F 00 00 */ lwz r12, 0(r31) -/* 8000B464 000083A4 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8000B468 000083A8 7D 89 03 A6 */ mtctr r12 -/* 8000B46C 000083AC 4E 80 04 21 */ bctrl -/* 8000B470 000083B0 90 61 00 10 */ stw r3, 0x10(r1) -/* 8000B474 000083B4 2C 1C 00 00 */ cmpwi r28, 0 -/* 8000B478 000083B8 41 82 00 60 */ beq lbl_8000B4D8 -/* 8000B47C 000083BC 83 9F 00 38 */ lwz r28, 0x38(r31) -/* 8000B480 000083C0 7F E3 FB 78 */ mr r3, r31 -/* 8000B484 000083C4 4B FF FD 69 */ bl myGetHeapTypeByString -/* 8000B488 000083C8 7C 7D 1B 78 */ mr r29, r3 -/* 8000B48C 000083CC 7F E3 FB 78 */ mr r3, r31 -/* 8000B490 000083D0 48 2C 32 F5 */ bl getTotalFreeSize__7JKRHeapCFv -/* 8000B494 000083D4 7C 7E 1B 78 */ mr r30, r3 -/* 8000B498 000083D8 7F E3 FB 78 */ mr r3, r31 -/* 8000B49C 000083DC 48 2C 32 91 */ bl getFreeSize__7JKRHeapCFv -/* 8000B4A0 000083E0 7C 64 1B 78 */ mr r4, r3 -/* 8000B4A4 000083E4 93 81 00 08 */ stw r28, 8(r1) -/* 8000B4A8 000083E8 93 A1 00 0C */ stw r29, 0xc(r1) -/* 8000B4AC 000083EC 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B4B0 000083F0 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B4B4 000083F4 38 63 00 BB */ addi r3, r3, 0xbb -/* 8000B4B8 000083F8 7F C5 F3 78 */ mr r5, r30 -/* 8000B4BC 000083FC 80 C1 00 10 */ lwz r6, 0x10(r1) -/* 8000B4C0 00008400 88 E1 00 10 */ lbz r7, 0x10(r1) -/* 8000B4C4 00008404 89 01 00 11 */ lbz r8, 0x11(r1) -/* 8000B4C8 00008408 89 21 00 12 */ lbz r9, 0x12(r1) -/* 8000B4CC 0000840C 89 41 00 13 */ lbz r10, 0x13(r1) -/* 8000B4D0 00008410 4C C6 31 82 */ crclr 6 -/* 8000B4D4 00008414 4B FF B7 39 */ bl OSReport_Error -lbl_8000B4D8: -/* 8000B4D8 00008418 80 0D 86 8C */ lwz r0, lbl_80450C0C-_SDA_BASE_(r13) -/* 8000B4DC 0000841C 28 00 00 00 */ cmplwi r0, 0 -/* 8000B4E0 00008420 40 82 00 18 */ bne lbl_8000B4F8 -/* 8000B4E4 00008424 7F E3 FB 78 */ mr r3, r31 -/* 8000B4E8 00008428 81 9F 00 00 */ lwz r12, 0(r31) -/* 8000B4EC 0000842C 81 8C 00 18 */ lwz r12, 0x18(r12) -/* 8000B4F0 00008430 7D 89 03 A6 */ mtctr r12 -/* 8000B4F4 00008434 4E 80 04 21 */ bctrl -lbl_8000B4F8: -/* 8000B4F8 00008438 80 6D 86 8C */ lwz r3, lbl_80450C0C-_SDA_BASE_(r13) -/* 8000B4FC 0000843C 38 03 00 01 */ addi r0, r3, 1 -/* 8000B500 00008440 90 0D 86 8C */ stw r0, lbl_80450C0C-_SDA_BASE_(r13) -/* 8000B504 00008444 80 0D 86 AC */ lwz r0, lbl_80450C2C-_SDA_BASE_(r13) -/* 8000B508 00008448 7C 1F 00 40 */ cmplw r31, r0 -/* 8000B50C 0000844C 40 82 00 14 */ bne lbl_8000B520 -/* 8000B510 00008450 80 6D 86 7C */ lwz r3, lbl_80450BFC-_SDA_BASE_(r13) -/* 8000B514 00008454 38 03 00 01 */ addi r0, r3, 1 -/* 8000B518 00008458 90 0D 86 7C */ stw r0, lbl_80450BFC-_SDA_BASE_(r13) -/* 8000B51C 0000845C 48 00 00 94 */ b lbl_8000B5B0 -lbl_8000B520: -/* 8000B520 00008460 80 0D 86 A8 */ lwz r0, lbl_80450C28-_SDA_BASE_(r13) -/* 8000B524 00008464 7C 1F 00 40 */ cmplw r31, r0 -/* 8000B528 00008468 40 82 00 14 */ bne lbl_8000B53C -/* 8000B52C 0000846C 80 6D 86 78 */ lwz r3, lbl_80450BF8-_SDA_BASE_(r13) -/* 8000B530 00008470 38 03 00 01 */ addi r0, r3, 1 -/* 8000B534 00008474 90 0D 86 78 */ stw r0, lbl_80450BF8-_SDA_BASE_(r13) -/* 8000B538 00008478 48 00 00 78 */ b lbl_8000B5B0 -lbl_8000B53C: -/* 8000B53C 0000847C 80 0D 86 B0 */ lwz r0, lbl_80450C30-_SDA_BASE_(r13) -/* 8000B540 00008480 7C 1F 00 40 */ cmplw r31, r0 -/* 8000B544 00008484 40 82 00 14 */ bne lbl_8000B558 -/* 8000B548 00008488 80 6D 86 80 */ lwz r3, lbl_80450C00-_SDA_BASE_(r13) -/* 8000B54C 0000848C 38 03 00 01 */ addi r0, r3, 1 -/* 8000B550 00008490 90 0D 86 80 */ stw r0, lbl_80450C00-_SDA_BASE_(r13) -/* 8000B554 00008494 48 00 00 5C */ b lbl_8000B5B0 -lbl_8000B558: -/* 8000B558 00008498 80 0D 86 B4 */ lwz r0, lbl_80450C34-_SDA_BASE_(r13) -/* 8000B55C 0000849C 7C 1F 00 40 */ cmplw r31, r0 -/* 8000B560 000084A0 40 82 00 14 */ bne lbl_8000B574 -/* 8000B564 000084A4 80 6D 86 84 */ lwz r3, lbl_80450C04-_SDA_BASE_(r13) -/* 8000B568 000084A8 38 03 00 01 */ addi r0, r3, 1 -/* 8000B56C 000084AC 90 0D 86 84 */ stw r0, lbl_80450C04-_SDA_BASE_(r13) -/* 8000B570 000084B0 48 00 00 40 */ b lbl_8000B5B0 -lbl_8000B574: -/* 8000B574 000084B4 7F E3 FB 78 */ mr r3, r31 -/* 8000B578 000084B8 81 9F 00 00 */ lwz r12, 0(r31) -/* 8000B57C 000084BC 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 8000B580 000084C0 7D 89 03 A6 */ mtctr r12 -/* 8000B584 000084C4 4E 80 04 21 */ bctrl -/* 8000B588 000084C8 3C 03 AC B4 */ addis r0, r3, 0xacb4 -/* 8000B58C 000084CC 28 00 49 44 */ cmplwi r0, 0x4944 -/* 8000B590 000084D0 40 82 00 14 */ bne lbl_8000B5A4 -/* 8000B594 000084D4 80 6D 86 74 */ lwz r3, lbl_80450BF4-_SDA_BASE_(r13) -/* 8000B598 000084D8 38 03 00 01 */ addi r0, r3, 1 -/* 8000B59C 000084DC 90 0D 86 74 */ stw r0, lbl_80450BF4-_SDA_BASE_(r13) -/* 8000B5A0 000084E0 48 00 00 10 */ b lbl_8000B5B0 -lbl_8000B5A4: -/* 8000B5A4 000084E4 80 6D 86 88 */ lwz r3, lbl_80450C08-_SDA_BASE_(r13) -/* 8000B5A8 000084E8 38 03 00 01 */ addi r0, r3, 1 -/* 8000B5AC 000084EC 90 0D 86 88 */ stw r0, lbl_80450C08-_SDA_BASE_(r13) -lbl_8000B5B0: -/* 8000B5B0 000084F0 39 61 00 30 */ addi r11, r1, 0x30 -/* 8000B5B4 000084F4 48 35 6C 71 */ bl _restgpr_28 -/* 8000B5B8 000084F8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8000B5BC 000084FC 7C 08 03 A6 */ mtlr r0 -/* 8000B5C0 00008500 38 21 00 30 */ addi r1, r1, 0x30 -/* 8000B5C4 00008504 4E 80 00 20 */ blr - -.global myHeapCheckRecursive -myHeapCheckRecursive: -/* 8000B5C8 00008508 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000B5CC 0000850C 7C 08 02 A6 */ mflr r0 -/* 8000B5D0 00008510 90 01 00 14 */ stw r0, 0x14(r1) -/* 8000B5D4 00008514 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8000B5D8 00008518 7C 7F 1B 78 */ mr r31, r3 -/* 8000B5DC 0000851C 81 83 00 00 */ lwz r12, 0(r3) -/* 8000B5E0 00008520 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 8000B5E4 00008524 7D 89 03 A6 */ mtctr r12 -/* 8000B5E8 00008528 4E 80 04 21 */ bctrl -/* 8000B5EC 0000852C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 8000B5F0 00008530 40 82 00 28 */ bne lbl_8000B618 -/* 8000B5F4 00008534 7F E3 FB 78 */ mr r3, r31 -/* 8000B5F8 00008538 4B FF FB F5 */ bl myGetHeapTypeByString -/* 8000B5FC 0000853C 7C 65 1B 78 */ mr r5, r3 -/* 8000B600 00008540 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B604 00008544 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B608 00008548 38 63 01 06 */ addi r3, r3, 0x106 -/* 8000B60C 0000854C 7F E4 FB 78 */ mr r4, r31 -/* 8000B610 00008550 4C C6 31 82 */ crclr 6 -/* 8000B614 00008554 4B FF B5 F9 */ bl OSReport_Error -lbl_8000B618: -/* 8000B618 00008558 80 7F 00 40 */ lwz r3, 0x40(r31) -/* 8000B61C 0000855C 28 03 00 00 */ cmplwi r3, 0 -/* 8000B620 00008560 41 82 00 08 */ beq lbl_8000B628 -/* 8000B624 00008564 38 63 FF F4 */ addi r3, r3, -12 -lbl_8000B628: -/* 8000B628 00008568 7C 7F 1B 78 */ mr r31, r3 -/* 8000B62C 0000856C 48 00 00 20 */ b lbl_8000B64C -lbl_8000B630: -/* 8000B630 00008570 80 7F 00 0C */ lwz r3, 0xc(r31) -/* 8000B634 00008574 4B FF FF 95 */ bl myHeapCheckRecursive -/* 8000B638 00008578 80 7F 00 18 */ lwz r3, 0x18(r31) -/* 8000B63C 0000857C 28 03 00 00 */ cmplwi r3, 0 -/* 8000B640 00008580 41 82 00 08 */ beq lbl_8000B648 -/* 8000B644 00008584 38 63 FF F4 */ addi r3, r3, -12 -lbl_8000B648: -/* 8000B648 00008588 7C 7F 1B 78 */ mr r31, r3 -lbl_8000B64C: -/* 8000B64C 0000858C 28 1F 00 00 */ cmplwi r31, 0 -/* 8000B650 00008590 40 82 FF E0 */ bne lbl_8000B630 -/* 8000B654 00008594 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8000B658 00008598 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000B65C 0000859C 7C 08 03 A6 */ mtlr r0 -/* 8000B660 000085A0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8000B664 000085A4 4E 80 00 20 */ blr - -.global mDoMch_HeapCheckAll -mDoMch_HeapCheckAll: -/* 8000B668 000085A8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000B66C 000085AC 7C 08 02 A6 */ mflr r0 -/* 8000B670 000085B0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8000B674 000085B4 80 6D 8D F8 */ lwz r3, sRootHeap__7JKRHeap-_SDA_BASE_(r13) -/* 8000B678 000085B8 4B FF FF 51 */ bl myHeapCheckRecursive -/* 8000B67C 000085BC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000B680 000085C0 7C 08 03 A6 */ mtlr r0 -/* 8000B684 000085C4 38 21 00 10 */ addi r1, r1, 0x10 -/* 8000B688 000085C8 4E 80 00 20 */ blr - -.global developKeyCheck -developKeyCheck: -/* 8000B68C 000085CC 28 04 00 74 */ cmplwi r4, 0x74 -/* 8000B690 000085D0 40 82 00 4C */ bne lbl_8000B6DC -/* 8000B694 000085D4 28 03 00 04 */ cmplwi r3, 4 -/* 8000B698 000085D8 40 82 00 44 */ bne lbl_8000B6DC -/* 8000B69C 000085DC 88 0D 86 95 */ lbz r0, lbl_80450C15-_SDA_BASE_(r13) -/* 8000B6A0 000085E0 28 00 00 03 */ cmplwi r0, 3 -/* 8000B6A4 000085E4 40 82 00 28 */ bne lbl_8000B6CC -/* 8000B6A8 000085E8 88 0D 86 96 */ lbz r0, lbl_80450C16-_SDA_BASE_(r13) -/* 8000B6AC 000085EC 28 00 00 06 */ cmplwi r0, 6 -/* 8000B6B0 000085F0 40 82 00 1C */ bne lbl_8000B6CC -/* 8000B6B4 000085F4 88 0D 86 97 */ lbz r0, lbl_80450C17-_SDA_BASE_(r13) -/* 8000B6B8 000085F8 28 00 00 05 */ cmplwi r0, 5 -/* 8000B6BC 000085FC 40 82 00 10 */ bne lbl_8000B6CC -/* 8000B6C0 00008600 38 00 00 01 */ li r0, 1 -/* 8000B6C4 00008604 98 0D 80 00 */ stb r0, lbl_80450580-_SDA_BASE_(r13) -/* 8000B6C8 00008608 48 00 00 14 */ b lbl_8000B6DC -lbl_8000B6CC: -/* 8000B6CC 0000860C 38 00 00 00 */ li r0, 0 -/* 8000B6D0 00008610 98 0D 86 95 */ stb r0, lbl_80450C15-_SDA_BASE_(r13) -/* 8000B6D4 00008614 98 0D 86 96 */ stb r0, lbl_80450C16-_SDA_BASE_(r13) -/* 8000B6D8 00008618 98 0D 86 97 */ stb r0, lbl_80450C17-_SDA_BASE_(r13) -lbl_8000B6DC: -/* 8000B6DC 0000861C 28 04 00 42 */ cmplwi r4, 0x42 -/* 8000B6E0 00008620 40 82 00 18 */ bne lbl_8000B6F8 -/* 8000B6E4 00008624 28 03 00 40 */ cmplwi r3, 0x40 -/* 8000B6E8 00008628 40 82 00 10 */ bne lbl_8000B6F8 -/* 8000B6EC 0000862C 88 AD 86 95 */ lbz r5, lbl_80450C15-_SDA_BASE_(r13) -/* 8000B6F0 00008630 38 05 00 01 */ addi r0, r5, 1 -/* 8000B6F4 00008634 98 0D 86 95 */ stb r0, lbl_80450C15-_SDA_BASE_(r13) -lbl_8000B6F8: -/* 8000B6F8 00008638 28 04 00 28 */ cmplwi r4, 0x28 -/* 8000B6FC 0000863C 40 82 00 18 */ bne lbl_8000B714 -/* 8000B700 00008640 28 03 00 20 */ cmplwi r3, 0x20 -/* 8000B704 00008644 40 82 00 10 */ bne lbl_8000B714 -/* 8000B708 00008648 88 AD 86 96 */ lbz r5, lbl_80450C16-_SDA_BASE_(r13) -/* 8000B70C 0000864C 38 05 00 01 */ addi r0, r5, 1 -/* 8000B710 00008650 98 0D 86 96 */ stb r0, lbl_80450C16-_SDA_BASE_(r13) -lbl_8000B714: -/* 8000B714 00008654 28 04 00 11 */ cmplwi r4, 0x11 -/* 8000B718 00008658 40 82 00 18 */ bne lbl_8000B730 -/* 8000B71C 0000865C 28 03 00 10 */ cmplwi r3, 0x10 -/* 8000B720 00008660 40 82 00 10 */ bne lbl_8000B730 -/* 8000B724 00008664 88 6D 86 97 */ lbz r3, lbl_80450C17-_SDA_BASE_(r13) -/* 8000B728 00008668 38 03 00 01 */ addi r0, r3, 1 -/* 8000B72C 0000866C 98 0D 86 97 */ stb r0, lbl_80450C17-_SDA_BASE_(r13) -lbl_8000B730: -/* 8000B730 00008670 88 6D 80 00 */ lbz r3, lbl_80450580-_SDA_BASE_(r13) -/* 8000B734 00008674 7C 63 07 74 */ extsb r3, r3 -/* 8000B738 00008678 4E 80 00 20 */ blr - -.global mDoMch_IsProgressiveMode -mDoMch_IsProgressiveMode: -/* 8000B73C 0000867C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000B740 00008680 7C 08 02 A6 */ mflr r0 -/* 8000B744 00008684 90 01 00 14 */ stw r0, 0x14(r1) -/* 8000B748 00008688 48 33 4F 6D */ bl OSGetProgressiveMode -/* 8000B74C 0000868C 20 03 00 01 */ subfic r0, r3, 1 -/* 8000B750 00008690 7C 00 00 34 */ cntlzw r0, r0 -/* 8000B754 00008694 54 03 DE 3E */ rlwinm r3, r0, 0x1b, 0x18, 0x1f -/* 8000B758 00008698 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000B75C 0000869C 7C 08 03 A6 */ mtlr r0 -/* 8000B760 000086A0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8000B764 000086A4 4E 80 00 20 */ blr - -.global exceptionReadPad -exceptionReadPad: -/* 8000B768 000086A8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000B76C 000086AC 7C 08 02 A6 */ mflr r0 -/* 8000B770 000086B0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8000B774 000086B4 7C 60 1B 78 */ mr r0, r3 -/* 8000B778 000086B8 7C 85 23 78 */ mr r5, r4 -/* 8000B77C 000086BC 80 6D 8F 88 */ lwz r3, lbl_80451508-_SDA_BASE_(r13) -/* 8000B780 000086C0 7C 04 03 78 */ mr r4, r0 -/* 8000B784 000086C4 48 2D 77 D1 */ bl JUTException_NS_readPad -/* 8000B788 000086C8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000B78C 000086CC 7C 08 03 A6 */ mtlr r0 -/* 8000B790 000086D0 38 21 00 10 */ addi r1, r1, 0x10 -/* 8000B794 000086D4 4E 80 00 20 */ blr - -.global exceptionRestart -exceptionRestart: -/* 8000B798 000086D8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000B79C 000086DC 7C 08 02 A6 */ mflr r0 -/* 8000B7A0 000086E0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8000B7A4 000086E4 38 60 00 00 */ li r3, 0 -/* 8000B7A8 000086E8 38 80 00 00 */ li r4, 0 -/* 8000B7AC 000086EC 38 A0 00 00 */ li r5, 0 -/* 8000B7B0 000086F0 48 00 9E 65 */ bl mDoRst_reset__FiUli -/* 8000B7B4 000086F4 38 60 00 00 */ li r3, 0 -/* 8000B7B8 000086F8 38 80 00 00 */ li r4, 0 -/* 8000B7BC 000086FC 38 A0 00 00 */ li r5, 0 -/* 8000B7C0 00008700 48 33 40 ED */ bl OSResetSystem -lbl_8000B7C4: -/* 8000B7C4 00008704 48 00 00 00 */ b lbl_8000B7C4 -.global myExceptionCallback -myExceptionCallback: -/* 8000B7C8 00008708 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 8000B7CC 0000870C 7C 08 02 A6 */ mflr r0 -/* 8000B7D0 00008710 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 8000B7D4 00008714 93 E1 00 CC */ stw r31, 0xcc(r1) -/* 8000B7D8 00008718 48 33 6F 25 */ bl OSGetTime -/* 8000B7DC 0000871C 90 8D 85 94 */ stw r4, lbl_80450B14-_SDA_BASE_(r13) -/* 8000B7E0 00008720 90 6D 85 90 */ stw r3, lbl_80450B10-_SDA_BASE_(r13) -/* 8000B7E4 00008724 4B FF B0 BD */ bl OSReportEnable -/* 8000B7E8 00008728 48 25 7A A5 */ bl cAPICPad_recalibrate__Fv -/* 8000B7EC 0000872C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B7F0 00008730 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B7F4 00008734 38 63 01 19 */ addi r3, r3, 0x119 -/* 8000B7F8 00008738 4C C6 31 82 */ crclr 6 -/* 8000B7FC 0000873C 4B FF B2 C1 */ bl OSReport -/* 8000B800 00008740 83 ED 8F 88 */ lwz r31, lbl_80451508-_SDA_BASE_(r13) -/* 8000B804 00008744 28 1F 00 00 */ cmplwi r31, 0 -/* 8000B808 00008748 40 82 00 20 */ bne lbl_8000B828 -/* 8000B80C 0000874C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B810 00008750 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B814 00008754 38 63 01 2D */ addi r3, r3, 0x12d -/* 8000B818 00008758 4C C6 31 82 */ crclr 6 -/* 8000B81C 0000875C 4B FF B2 A1 */ bl OSReport -/* 8000B820 00008760 48 32 E4 E1 */ bl PPCHalt -/* 8000B824 00008764 48 00 00 FC */ b lbl_8000B920 -lbl_8000B828: -/* 8000B828 00008768 38 00 00 80 */ li r0, 0x80 -/* 8000B82C 0000876C 90 1F 00 94 */ stw r0, 0x94(r31) -/* 8000B830 00008770 88 0D 80 00 */ lbz r0, lbl_80450580-_SDA_BASE_(r13) -/* 8000B834 00008774 7C 00 07 75 */ extsb. r0, r0 -/* 8000B838 00008778 40 82 00 CC */ bne lbl_8000B904 -/* 8000B83C 0000877C 38 61 00 10 */ addi r3, r1, 0x10 -/* 8000B840 00008780 38 80 00 00 */ li r4, 0 -/* 8000B844 00008784 48 2D 4E 99 */ bl __ct__10JUTGamePadFQ210JUTGamePad8EPadPort -/* 8000B848 00008788 38 01 00 10 */ addi r0, r1, 0x10 -/* 8000B84C 0000878C 90 1F 00 84 */ stw r0, 0x84(r31) -/* 8000B850 00008790 38 00 FF FF */ li r0, -1 -/* 8000B854 00008794 90 1F 00 88 */ stw r0, 0x88(r31) -/* 8000B858 00008798 28 1F 00 00 */ cmplwi r31, 0 -/* 8000B85C 0000879C 41 82 00 94 */ beq lbl_8000B8F0 -/* 8000B860 000087A0 48 33 1E A9 */ bl OSEnableInterrupts -/* 8000B864 000087A4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B868 000087A8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B86C 000087AC 38 63 01 49 */ addi r3, r3, 0x149 -/* 8000B870 000087B0 4C C6 31 82 */ crclr 6 -/* 8000B874 000087B4 4B FF B2 49 */ bl OSReport -/* 8000B878 000087B8 48 00 00 34 */ b lbl_8000B8AC -lbl_8000B87C: -/* 8000B87C 000087BC 38 61 00 08 */ addi r3, r1, 8 -/* 8000B880 000087C0 38 81 00 0C */ addi r4, r1, 0xc -/* 8000B884 000087C4 4B FF FE E5 */ bl exceptionReadPad -/* 8000B888 000087C8 80 61 00 08 */ lwz r3, 8(r1) -/* 8000B88C 000087CC 80 81 00 0C */ lwz r4, 0xc(r1) -/* 8000B890 000087D0 4B FF FD FD */ bl developKeyCheck -/* 8000B894 000087D4 38 60 00 1E */ li r3, 0x1e -/* 8000B898 000087D8 48 2D 80 E9 */ bl JUTException_NS_waitTime -/* 8000B89C 000087DC 88 0D 8F 81 */ lbz r0, lbl_80451501-_SDA_BASE_(r13) -/* 8000B8A0 000087E0 28 00 00 00 */ cmplwi r0, 0 -/* 8000B8A4 000087E4 41 82 00 08 */ beq lbl_8000B8AC -/* 8000B8A8 000087E8 4B FF FE F1 */ bl exceptionRestart -lbl_8000B8AC: -/* 8000B8AC 000087EC 88 0D 80 00 */ lbz r0, lbl_80450580-_SDA_BASE_(r13) -/* 8000B8B0 000087F0 7C 00 07 75 */ extsb. r0, r0 -/* 8000B8B4 000087F4 41 82 FF C8 */ beq lbl_8000B87C -/* 8000B8B8 000087F8 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B8BC 000087FC 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B8C0 00008800 38 63 01 65 */ addi r3, r3, 0x165 -/* 8000B8C4 00008804 4C C6 31 82 */ crclr 6 -/* 8000B8C8 00008808 4B FF B1 F5 */ bl OSReport -/* 8000B8CC 0000880C 38 60 00 01 */ li r3, 1 -/* 8000B8D0 00008810 48 2D 93 65 */ bl JUTAssertion_NS_setVisible -/* 8000B8D4 00008814 38 00 00 01 */ li r0, 1 -/* 8000B8D8 00008818 80 6D 8F 48 */ lwz r3, lbl_804514C8-_SDA_BASE_(r13) -/* 8000B8DC 0000881C 98 03 00 0C */ stb r0, 0xc(r3) -/* 8000B8E0 00008820 38 00 00 03 */ li r0, 3 -/* 8000B8E4 00008824 80 6D 8C 38 */ lwz r3, lbl_804511B8-_SDA_BASE_(r13) -/* 8000B8E8 00008828 90 03 00 58 */ stw r0, 0x58(r3) -/* 8000B8EC 0000882C 48 00 00 08 */ b lbl_8000B8F4 -lbl_8000B8F0: -/* 8000B8F0 00008830 48 32 E4 11 */ bl PPCHalt -lbl_8000B8F4: -/* 8000B8F4 00008834 38 61 00 10 */ addi r3, r1, 0x10 -/* 8000B8F8 00008838 38 80 FF FF */ li r4, -1 -/* 8000B8FC 0000883C 48 2D 4E B5 */ bl __dt__10JUTGamePadFv -/* 8000B900 00008840 48 00 00 20 */ b lbl_8000B920 -lbl_8000B904: -/* 8000B904 00008844 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B908 00008848 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B90C 0000884C 38 63 01 83 */ addi r3, r3, 0x183 -/* 8000B910 00008850 4C C6 31 82 */ crclr 6 -/* 8000B914 00008854 4B FF B1 A9 */ bl OSReport -/* 8000B918 00008858 38 60 0B B8 */ li r3, 0xbb8 -/* 8000B91C 0000885C 48 2D 80 65 */ bl JUTException_NS_waitTime -lbl_8000B920: -/* 8000B920 00008860 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000B924 00008864 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000B928 00008868 38 63 01 8E */ addi r3, r3, 0x18e -/* 8000B92C 0000886C 48 33 D3 C9 */ bl DVDChangeDir -/* 8000B930 00008870 48 2D 93 7D */ bl JUTVideo_NS_destroyManager -/* 8000B934 00008874 38 60 00 00 */ li r3, 0 -/* 8000B938 00008878 48 35 0C 75 */ bl GXSetDrawDoneCallback -/* 8000B93C 0000887C 38 60 00 00 */ li r3, 0 -/* 8000B940 00008880 48 34 1F 01 */ bl VISetBlack -/* 8000B944 00008884 48 34 1D 51 */ bl VIFlush -/* 8000B948 00008888 83 E1 00 CC */ lwz r31, 0xcc(r1) -/* 8000B94C 0000888C 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 8000B950 00008890 7C 08 03 A6 */ mtlr r0 -/* 8000B954 00008894 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 8000B958 00008898 4E 80 00 20 */ blr -.global fault_callback_scroll -fault_callback_scroll: -/* 8000B95C 0000889C 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 8000B960 000088A0 7C 08 02 A6 */ mflr r0 -/* 8000B964 000088A4 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 8000B968 000088A8 39 61 00 D0 */ addi r11, r1, 0xd0 -/* 8000B96C 000088AC 48 35 68 6D */ bl _savegpr_28 -/* 8000B970 000088B0 83 8D 8F 88 */ lwz r28, lbl_80451508-_SDA_BASE_(r13) -/* 8000B974 000088B4 83 ED 8F 9C */ lwz r31, lbl_8045151C-_SDA_BASE_(r13) -/* 8000B978 000088B8 7F FE FB 78 */ mr r30, r31 -/* 8000B97C 000088BC 80 04 01 98 */ lwz r0, 0x198(r4) -/* 8000B980 000088C0 54 08 00 3A */ rlwinm r8, r0, 0, 0, 0x1d -/* 8000B984 000088C4 3C 60 80 00 */ lis r3, 0x8000000C@ha -/* 8000B988 000088C8 38 03 00 0C */ addi r0, r3, 0x8000000C@l -/* 8000B98C 000088CC 7C 08 00 40 */ cmplw r8, r0 -/* 8000B990 000088D0 41 80 00 3C */ blt lbl_8000B9CC -/* 8000B994 000088D4 3C 60 83 00 */ lis r3, 0x82FFFFFF@ha -/* 8000B998 000088D8 38 03 FF FF */ addi r0, r3, 0x82FFFFFF@l -/* 8000B99C 000088DC 7C 08 00 40 */ cmplw r8, r0 -/* 8000B9A0 000088E0 40 80 00 2C */ bge lbl_8000B9CC -/* 8000B9A4 000088E4 7F E3 FB 78 */ mr r3, r31 -/* 8000B9A8 000088E8 3C 80 80 37 */ lis r4, lbl_80373DE8@ha -/* 8000B9AC 000088EC 38 84 3D E8 */ addi r4, r4, lbl_80373DE8@l -/* 8000B9B0 000088F0 38 84 01 A1 */ addi r4, r4, 0x1a1 -/* 8000B9B4 000088F4 80 A8 FF F4 */ lwz r5, -0xc(r8) -/* 8000B9B8 000088F8 80 C8 FF F8 */ lwz r6, -8(r8) -/* 8000B9BC 000088FC 80 E8 FF FC */ lwz r7, -4(r8) -/* 8000B9C0 00008900 81 08 00 00 */ lwz r8, 0(r8) -/* 8000B9C4 00008904 4C C6 31 82 */ crclr 6 -/* 8000B9C8 00008908 48 2D C1 F1 */ bl JUTConsole_NS_print_f -lbl_8000B9CC: -/* 8000B9CC 0000890C 38 61 00 10 */ addi r3, r1, 0x10 -/* 8000B9D0 00008910 38 80 00 00 */ li r4, 0 -/* 8000B9D4 00008914 48 2D 4D 09 */ bl __ct__10JUTGamePadFQ210JUTGamePad8EPadPort -/* 8000B9D8 00008918 38 01 00 10 */ addi r0, r1, 0x10 -/* 8000B9DC 0000891C 90 1C 00 84 */ stw r0, 0x84(r28) -/* 8000B9E0 00008920 38 00 FF FF */ li r0, -1 -/* 8000B9E4 00008924 90 1C 00 88 */ stw r0, 0x88(r28) -/* 8000B9E8 00008928 7F 83 E3 78 */ mr r3, r28 -/* 8000B9EC 0000892C 48 2D 75 2D */ bl JUTException_NS_isEnablePad -/* 8000B9F0 00008930 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8000B9F4 00008934 7C 00 00 34 */ cntlzw r0, r0 -/* 8000B9F8 00008938 54 00 DE 3F */ rlwinm. r0, r0, 0x1b, 0x18, 0x1f -/* 8000B9FC 0000893C 40 82 02 30 */ bne lbl_8000BC2C -/* 8000BA00 00008940 7F E3 FB 78 */ mr r3, r31 -/* 8000BA04 00008944 3C 80 80 37 */ lis r4, lbl_80373DE8@ha -/* 8000BA08 00008948 38 84 3D E8 */ addi r4, r4, lbl_80373DE8@l -/* 8000BA0C 0000894C 38 84 01 BF */ addi r4, r4, 0x1bf -/* 8000BA10 00008950 48 2D C2 29 */ bl JUTConsole_NS_print -/* 8000BA14 00008954 7F E3 FB 78 */ mr r3, r31 -/* 8000BA18 00008958 3C 80 80 37 */ lis r4, lbl_80373DE8@ha -/* 8000BA1C 0000895C 38 84 3D E8 */ addi r4, r4, lbl_80373DE8@l -/* 8000BA20 00008960 38 84 01 EB */ addi r4, r4, 0x1eb -/* 8000BA24 00008964 48 2D C2 15 */ bl JUTConsole_NS_print -/* 8000BA28 00008968 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) -/* 8000BA2C 0000896C 38 80 00 01 */ li r4, 1 -/* 8000BA30 00008970 48 2D CA 21 */ bl JUTConsoleManager_NS_drawDirect -/* 8000BA34 00008974 48 33 1C D5 */ bl OSEnableInterrupts -/* 8000BA38 00008978 3B E0 00 00 */ li r31, 0 -/* 8000BA3C 0000897C 3B A0 00 00 */ li r29, 0 -lbl_8000BA40: -/* 8000BA40 00008980 38 61 00 08 */ addi r3, r1, 8 -/* 8000BA44 00008984 38 81 00 0C */ addi r4, r1, 0xc -/* 8000BA48 00008988 4B FF FD 21 */ bl exceptionReadPad -/* 8000BA4C 0000898C 88 0D 8F 81 */ lbz r0, lbl_80451501-_SDA_BASE_(r13) -/* 8000BA50 00008990 28 00 00 00 */ cmplwi r0, 0 -/* 8000BA54 00008994 41 82 00 14 */ beq lbl_8000BA68 -/* 8000BA58 00008998 38 60 00 01 */ li r3, 1 -/* 8000BA5C 0000899C 38 80 00 00 */ li r4, 0 -/* 8000BA60 000089A0 38 A0 00 00 */ li r5, 0 -/* 8000BA64 000089A4 48 33 3E 49 */ bl OSResetSystem -lbl_8000BA68: -/* 8000BA68 000089A8 38 60 00 00 */ li r3, 0 -/* 8000BA6C 000089AC 80 01 00 08 */ lwz r0, 8(r1) -/* 8000BA70 000089B0 28 00 10 00 */ cmplwi r0, 0x1000 -/* 8000BA74 000089B4 40 82 00 10 */ bne lbl_8000BA84 -/* 8000BA78 000089B8 7F C3 F3 78 */ mr r3, r30 -/* 8000BA7C 000089BC 48 00 C6 D1 */ bl exception_addition -/* 8000BA80 000089C0 38 60 00 01 */ li r3, 1 -lbl_8000BA84: -/* 8000BA84 000089C4 80 01 00 08 */ lwz r0, 8(r1) -/* 8000BA88 000089C8 28 00 00 10 */ cmplwi r0, 0x10 -/* 8000BA8C 000089CC 40 82 00 80 */ bne lbl_8000BB0C -/* 8000BA90 000089D0 80 8D 8C 38 */ lwz r4, lbl_804511B8-_SDA_BASE_(r13) -/* 8000BA94 000089D4 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) -/* 8000BA98 000089D8 80 03 00 10 */ lwz r0, 0x10(r3) -/* 8000BA9C 000089DC 7C 00 20 40 */ cmplw r0, r4 -/* 8000BAA0 000089E0 41 82 00 58 */ beq lbl_8000BAF8 -/* 8000BAA4 000089E4 7C 9E 23 78 */ mr r30, r4 -/* 8000BAA8 000089E8 C0 02 81 00 */ lfs f0, lbl_80451B00-_SDA2_BASE_(r2) -/* 8000BAAC 000089EC D0 04 00 50 */ stfs f0, 0x50(r4) -/* 8000BAB0 000089F0 C0 02 81 04 */ lfs f0, lbl_80451B04-_SDA2_BASE_(r2) -/* 8000BAB4 000089F4 D0 04 00 54 */ stfs f0, 0x54(r4) -/* 8000BAB8 000089F8 38 00 00 08 */ li r0, 8 -/* 8000BABC 000089FC 90 04 00 40 */ stw r0, 0x40(r4) -/* 8000BAC0 00008A00 38 00 00 20 */ li r0, 0x20 -/* 8000BAC4 00008A04 90 04 00 44 */ stw r0, 0x44(r4) -/* 8000BAC8 00008A08 38 00 00 17 */ li r0, 0x17 -/* 8000BACC 00008A0C 90 04 00 48 */ stw r0, 0x48(r4) -/* 8000BAD0 00008A10 80 04 00 48 */ lwz r0, 0x48(r4) -/* 8000BAD4 00008A14 80 64 00 24 */ lwz r3, 0x24(r4) -/* 8000BAD8 00008A18 7C 00 18 40 */ cmplw r0, r3 -/* 8000BADC 00008A1C 40 81 00 08 */ ble lbl_8000BAE4 -/* 8000BAE0 00008A20 90 64 00 48 */ stw r3, 0x48(r4) -lbl_8000BAE4: -/* 8000BAE4 00008A24 38 00 00 01 */ li r0, 1 -/* 8000BAE8 00008A28 98 04 00 68 */ stb r0, 0x68(r4) -/* 8000BAEC 00008A2C 38 00 00 03 */ li r0, 3 -/* 8000BAF0 00008A30 90 04 00 58 */ stw r0, 0x58(r4) -/* 8000BAF4 00008A34 48 00 00 08 */ b lbl_8000BAFC -lbl_8000BAF8: -/* 8000BAF8 00008A38 83 CD 8F 9C */ lwz r30, lbl_8045151C-_SDA_BASE_(r13) -lbl_8000BAFC: -/* 8000BAFC 00008A3C 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) -/* 8000BB00 00008A40 7F C4 F3 78 */ mr r4, r30 -/* 8000BB04 00008A44 48 2D C9 C1 */ bl JUTConsoleManager_NS_setDirectConsole -/* 8000BB08 00008A48 38 60 00 01 */ li r3, 1 -lbl_8000BB0C: -/* 8000BB0C 00008A4C 80 01 00 08 */ lwz r0, 8(r1) -/* 8000BB10 00008A50 28 00 01 00 */ cmplwi r0, 0x100 -/* 8000BB14 00008A54 40 82 00 14 */ bne lbl_8000BB28 -/* 8000BB18 00008A58 7F C3 F3 78 */ mr r3, r30 -/* 8000BB1C 00008A5C 80 9E 00 24 */ lwz r4, 0x24(r30) -/* 8000BB20 00008A60 48 2D C5 89 */ bl JUTConsole_NS_scroll -/* 8000BB24 00008A64 38 60 00 01 */ li r3, 1 -lbl_8000BB28: -/* 8000BB28 00008A68 80 01 00 08 */ lwz r0, 8(r1) -/* 8000BB2C 00008A6C 28 00 02 00 */ cmplwi r0, 0x200 -/* 8000BB30 00008A70 40 82 00 18 */ bne lbl_8000BB48 -/* 8000BB34 00008A74 7F C3 F3 78 */ mr r3, r30 -/* 8000BB38 00008A78 80 1E 00 24 */ lwz r0, 0x24(r30) -/* 8000BB3C 00008A7C 7C 80 00 D0 */ neg r4, r0 -/* 8000BB40 00008A80 48 2D C5 69 */ bl JUTConsole_NS_scroll -/* 8000BB44 00008A84 38 60 00 01 */ li r3, 1 -lbl_8000BB48: -/* 8000BB48 00008A88 80 01 00 0C */ lwz r0, 0xc(r1) -/* 8000BB4C 00008A8C 28 00 00 08 */ cmplwi r0, 8 -/* 8000BB50 00008A90 40 82 00 4C */ bne lbl_8000BB9C -/* 8000BB54 00008A94 7F C3 F3 78 */ mr r3, r30 -/* 8000BB58 00008A98 2C 1F 00 03 */ cmpwi r31, 3 -/* 8000BB5C 00008A9C 40 80 00 0C */ bge lbl_8000BB68 -/* 8000BB60 00008AA0 38 80 FF FF */ li r4, -1 -/* 8000BB64 00008AA4 48 00 00 24 */ b lbl_8000BB88 -lbl_8000BB68: -/* 8000BB68 00008AA8 2C 1F 00 05 */ cmpwi r31, 5 -/* 8000BB6C 00008AAC 40 80 00 0C */ bge lbl_8000BB78 -/* 8000BB70 00008AB0 38 80 FF FE */ li r4, -2 -/* 8000BB74 00008AB4 48 00 00 14 */ b lbl_8000BB88 -lbl_8000BB78: -/* 8000BB78 00008AB8 2C 1F 00 07 */ cmpwi r31, 7 -/* 8000BB7C 00008ABC 38 80 FF F8 */ li r4, -8 -/* 8000BB80 00008AC0 40 80 00 08 */ bge lbl_8000BB88 -/* 8000BB84 00008AC4 38 80 FF FC */ li r4, -4 -lbl_8000BB88: -/* 8000BB88 00008AC8 48 2D C5 21 */ bl JUTConsole_NS_scroll -/* 8000BB8C 00008ACC 38 60 00 01 */ li r3, 1 -/* 8000BB90 00008AD0 3B A0 00 00 */ li r29, 0 -/* 8000BB94 00008AD4 3B FF 00 01 */ addi r31, r31, 1 -/* 8000BB98 00008AD8 48 00 00 5C */ b lbl_8000BBF4 -lbl_8000BB9C: -/* 8000BB9C 00008ADC 28 00 00 04 */ cmplwi r0, 4 -/* 8000BBA0 00008AE0 40 82 00 4C */ bne lbl_8000BBEC -/* 8000BBA4 00008AE4 7F C3 F3 78 */ mr r3, r30 -/* 8000BBA8 00008AE8 2C 1D 00 03 */ cmpwi r29, 3 -/* 8000BBAC 00008AEC 40 80 00 0C */ bge lbl_8000BBB8 -/* 8000BBB0 00008AF0 38 80 00 01 */ li r4, 1 -/* 8000BBB4 00008AF4 48 00 00 24 */ b lbl_8000BBD8 -lbl_8000BBB8: -/* 8000BBB8 00008AF8 2C 1D 00 05 */ cmpwi r29, 5 -/* 8000BBBC 00008AFC 40 80 00 0C */ bge lbl_8000BBC8 -/* 8000BBC0 00008B00 38 80 00 02 */ li r4, 2 -/* 8000BBC4 00008B04 48 00 00 14 */ b lbl_8000BBD8 -lbl_8000BBC8: -/* 8000BBC8 00008B08 2C 1D 00 07 */ cmpwi r29, 7 -/* 8000BBCC 00008B0C 38 80 00 08 */ li r4, 8 -/* 8000BBD0 00008B10 40 80 00 08 */ bge lbl_8000BBD8 -/* 8000BBD4 00008B14 38 80 00 04 */ li r4, 4 -lbl_8000BBD8: -/* 8000BBD8 00008B18 48 2D C4 D1 */ bl JUTConsole_NS_scroll -/* 8000BBDC 00008B1C 38 60 00 01 */ li r3, 1 -/* 8000BBE0 00008B20 3B E0 00 00 */ li r31, 0 -/* 8000BBE4 00008B24 3B BD 00 01 */ addi r29, r29, 1 -/* 8000BBE8 00008B28 48 00 00 0C */ b lbl_8000BBF4 -lbl_8000BBEC: -/* 8000BBEC 00008B2C 3B E0 00 00 */ li r31, 0 -/* 8000BBF0 00008B30 3B A0 00 00 */ li r29, 0 -lbl_8000BBF4: -/* 8000BBF4 00008B34 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 8000BBF8 00008B38 28 00 00 01 */ cmplwi r0, 1 -/* 8000BBFC 00008B3C 40 82 00 24 */ bne lbl_8000BC20 -/* 8000BC00 00008B40 48 34 1C BD */ bl VIGetRetraceCount -/* 8000BC04 00008B44 7C 7C 1B 78 */ mr r28, r3 -lbl_8000BC08: -/* 8000BC08 00008B48 48 34 1C B5 */ bl VIGetRetraceCount -/* 8000BC0C 00008B4C 7C 1C 18 40 */ cmplw r28, r3 -/* 8000BC10 00008B50 41 82 FF F8 */ beq lbl_8000BC08 -/* 8000BC14 00008B54 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) -/* 8000BC18 00008B58 38 80 00 01 */ li r4, 1 -/* 8000BC1C 00008B5C 48 2D C8 35 */ bl JUTConsoleManager_NS_drawDirect -lbl_8000BC20: -/* 8000BC20 00008B60 38 60 00 1E */ li r3, 0x1e -/* 8000BC24 00008B64 48 2D 7D 5D */ bl JUTException_NS_waitTime -/* 8000BC28 00008B68 4B FF FE 18 */ b lbl_8000BA40 -lbl_8000BC2C: -/* 8000BC2C 00008B6C 7F E3 FB 78 */ mr r3, r31 -/* 8000BC30 00008B70 48 00 C5 1D */ bl exception_addition -/* 8000BC34 00008B74 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) -/* 8000BC38 00008B78 38 80 00 01 */ li r4, 1 -/* 8000BC3C 00008B7C 48 2D C8 15 */ bl JUTConsoleManager_NS_drawDirect -lbl_8000BC40: -/* 8000BC40 00008B80 7F E3 FB 78 */ mr r3, r31 -/* 8000BC44 00008B84 80 1F 00 24 */ lwz r0, 0x24(r31) -/* 8000BC48 00008B88 7C 80 00 D0 */ neg r4, r0 -/* 8000BC4C 00008B8C 48 2D C4 5D */ bl JUTConsole_NS_scroll -/* 8000BC50 00008B90 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) -/* 8000BC54 00008B94 38 80 00 01 */ li r4, 1 -/* 8000BC58 00008B98 48 2D C7 F9 */ bl JUTConsoleManager_NS_drawDirect -/* 8000BC5C 00008B9C 38 60 07 D0 */ li r3, 0x7d0 -/* 8000BC60 00008BA0 48 2D 7D 21 */ bl JUTException_NS_waitTime -lbl_8000BC64: -/* 8000BC64 00008BA4 83 DF 00 48 */ lwz r30, 0x48(r31) -/* 8000BC68 00008BA8 48 00 00 50 */ b lbl_8000BCB8 -lbl_8000BC6C: -/* 8000BC6C 00008BAC 7F E3 FB 78 */ mr r3, r31 -/* 8000BC70 00008BB0 38 80 00 01 */ li r4, 1 -/* 8000BC74 00008BB4 48 2D C4 35 */ bl JUTConsole_NS_scroll -/* 8000BC78 00008BB8 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) -/* 8000BC7C 00008BBC 38 80 00 01 */ li r4, 1 -/* 8000BC80 00008BC0 48 2D C7 D1 */ bl JUTConsoleManager_NS_drawDirect -/* 8000BC84 00008BC4 83 9F 00 48 */ lwz r28, 0x48(r31) -/* 8000BC88 00008BC8 7F E3 FB 78 */ mr r3, r31 -/* 8000BC8C 00008BCC 48 2D C5 1D */ bl JUTConsole_NS_getLineOffset -/* 8000BC90 00008BD0 7C 7D 1B 78 */ mr r29, r3 -/* 8000BC94 00008BD4 7F E3 FB 78 */ mr r3, r31 -/* 8000BC98 00008BD8 48 2D C4 ED */ bl JUTConsole_NS_getUsedLine -/* 8000BC9C 00008BDC 7C 7C 18 50 */ subf r3, r28, r3 -/* 8000BCA0 00008BE0 38 03 00 01 */ addi r0, r3, 1 -/* 8000BCA4 00008BE4 7C 00 E8 40 */ cmplw r0, r29 -/* 8000BCA8 00008BE8 40 81 00 18 */ ble lbl_8000BCC0 -/* 8000BCAC 00008BEC 38 60 00 14 */ li r3, 0x14 -/* 8000BCB0 00008BF0 48 2D 7C D1 */ bl JUTException_NS_waitTime -/* 8000BCB4 00008BF4 3B DE FF FF */ addi r30, r30, -1 -lbl_8000BCB8: -/* 8000BCB8 00008BF8 28 1E 00 00 */ cmplwi r30, 0 -/* 8000BCBC 00008BFC 40 82 FF B0 */ bne lbl_8000BC6C -lbl_8000BCC0: -/* 8000BCC0 00008C00 38 60 0B B8 */ li r3, 0xbb8 -/* 8000BCC4 00008C04 48 2D 7C BD */ bl JUTException_NS_waitTime -/* 8000BCC8 00008C08 83 9F 00 48 */ lwz r28, 0x48(r31) -/* 8000BCCC 00008C0C 7F E3 FB 78 */ mr r3, r31 -/* 8000BCD0 00008C10 48 2D C4 D9 */ bl JUTConsole_NS_getLineOffset -/* 8000BCD4 00008C14 7C 7D 1B 78 */ mr r29, r3 -/* 8000BCD8 00008C18 7F E3 FB 78 */ mr r3, r31 -/* 8000BCDC 00008C1C 48 2D C4 A9 */ bl JUTConsole_NS_getUsedLine -/* 8000BCE0 00008C20 7C 7C 18 50 */ subf r3, r28, r3 -/* 8000BCE4 00008C24 38 03 00 01 */ addi r0, r3, 1 -/* 8000BCE8 00008C28 7C 00 E8 40 */ cmplw r0, r29 -/* 8000BCEC 00008C2C 40 81 FF 54 */ ble lbl_8000BC40 -/* 8000BCF0 00008C30 4B FF FF 74 */ b lbl_8000BC64 - -.global my_PrintHeap -my_PrintHeap: -/* 8000BCF4 00008C34 4E 80 00 20 */ blr - -.global my_SysPrintHeap -my_SysPrintHeap: -/* 8000BCF8 00008C38 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000BCFC 00008C3C 7C 08 02 A6 */ mflr r0 -/* 8000BD00 00008C40 90 01 00 14 */ stw r0, 0x14(r1) -/* 8000BD04 00008C44 7C 67 1B 78 */ mr r7, r3 -/* 8000BD08 00008C48 7C 86 23 78 */ mr r6, r4 -/* 8000BD0C 00008C4C 7C A0 2B 78 */ mr r0, r5 -/* 8000BD10 00008C50 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000BD14 00008C54 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000BD18 00008C58 38 63 02 2F */ addi r3, r3, 0x22f -/* 8000BD1C 00008C5C 7C E4 3B 78 */ mr r4, r7 -/* 8000BD20 00008C60 7C C5 33 78 */ mr r5, r6 -/* 8000BD24 00008C64 7C C6 02 14 */ add r6, r6, r0 -/* 8000BD28 00008C68 54 07 B2 BE */ srwi r7, r0, 0xa -/* 8000BD2C 00008C6C 4C C6 31 82 */ crclr 6 -/* 8000BD30 00008C70 4B FF B0 9D */ bl OSReport_System -/* 8000BD34 00008C74 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000BD38 00008C78 7C 08 03 A6 */ mtlr r0 -/* 8000BD3C 00008C7C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8000BD40 00008C80 4E 80 00 20 */ blr - -.global mDoMch_Create -mDoMch_Create: -/* 8000BD44 00008C84 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000BD48 00008C88 7C 08 02 A6 */ mflr r0 -/* 8000BD4C 00008C8C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8000BD50 00008C90 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8000BD54 00008C94 93 C1 00 08 */ stw r30, 8(r1) -/* 8000BD58 00008C98 88 0D 80 00 */ lbz r0, lbl_80450580-_SDA_BASE_(r13) -/* 8000BD5C 00008C9C 7C 00 07 75 */ extsb. r0, r0 -/* 8000BD60 00008CA0 41 82 00 10 */ beq lbl_8000BD70 -/* 8000BD64 00008CA4 48 32 E1 99 */ bl OSGetConsoleType -/* 8000BD68 00008CA8 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3 -/* 8000BD6C 00008CAC 40 82 00 08 */ bne lbl_8000BD74 -lbl_8000BD70: -/* 8000BD70 00008CB0 4B FF AB 25 */ bl OSReportDisable -lbl_8000BD74: -/* 8000BD74 00008CB4 88 6D 86 70 */ lbz r3, lbl_80450BF0-_SDA_BASE_(r13) -/* 8000BD78 00008CB8 30 03 FF FF */ addic r0, r3, -1 -/* 8000BD7C 00008CBC 7C 00 19 10 */ subfe r0, r0, r3 -/* 8000BD80 00008CC0 98 0D 83 30 */ stb r0, lbl_804508B0-_SDA_BASE_(r13) -/* 8000BD84 00008CC4 38 00 00 01 */ li r0, 1 -/* 8000BD88 00008CC8 90 0D 81 F0 */ stw r0, lbl_80450770-_SDA_BASE_(r13) -/* 8000BD8C 00008CCC 48 32 F5 01 */ bl OSGetArenaHi -/* 8000BD90 00008CD0 7C 7F 1B 78 */ mr r31, r3 -/* 8000BD94 00008CD4 48 32 F5 01 */ bl OSGetArenaLo -/* 8000BD98 00008CD8 3C 00 81 80 */ lis r0, 0x8180 -/* 8000BD9C 00008CDC 7C 1F 00 40 */ cmplw r31, r0 -/* 8000BDA0 00008CE0 40 81 00 18 */ ble lbl_8000BDB8 -/* 8000BDA4 00008CE4 3C 1F FE 80 */ addis r0, r31, 0xfe80 -/* 8000BDA8 00008CE8 7C 00 18 40 */ cmplw r0, r3 -/* 8000BDAC 00008CEC 40 81 00 0C */ ble lbl_8000BDB8 -/* 8000BDB0 00008CF0 7C 03 03 78 */ mr r3, r0 -/* 8000BDB4 00008CF4 48 32 F4 E9 */ bl OSSetArenaHi -lbl_8000BDB8: -/* 8000BDB8 00008CF8 48 32 F4 D5 */ bl OSGetArenaHi -/* 8000BDBC 00008CFC 7C 7F 1B 78 */ mr r31, r3 -/* 8000BDC0 00008D00 48 32 F4 D5 */ bl OSGetArenaLo -/* 8000BDC4 00008D04 7C 63 F8 50 */ subf r3, r3, r31 -/* 8000BDC8 00008D08 3B C3 FF 10 */ addi r30, r3, -240 -/* 8000BDCC 00008D0C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000BDD0 00008D10 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000BDD4 00008D14 38 63 02 55 */ addi r3, r3, 0x255 -/* 8000BDD8 00008D18 7F C4 F3 78 */ mr r4, r30 -/* 8000BDDC 00008D1C 4B FF FF 19 */ bl my_PrintHeap -/* 8000BDE0 00008D20 80 6D 80 04 */ lwz r3, lbl_80450584-_SDA_BASE_(r13) -/* 8000BDE4 00008D24 3C 03 00 01 */ addis r0, r3, 1 -/* 8000BDE8 00008D28 28 00 FF FF */ cmplwi r0, 0xffff -/* 8000BDEC 00008D2C 41 82 00 08 */ beq lbl_8000BDF4 -/* 8000BDF0 00008D30 7F DE 1A 14 */ add r30, r30, r3 -lbl_8000BDF4: -/* 8000BDF4 00008D34 3C 9E FF 25 */ addis r4, r30, 0xff25 -/* 8000BDF8 00008D38 38 04 32 D0 */ addi r0, r4, 0x32d0 -/* 8000BDFC 00008D3C 90 0D 81 F4 */ stw r0, lbl_80450774-_SDA_BASE_(r13) -/* 8000BE00 00008D40 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000BE04 00008D44 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000BE08 00008D48 38 63 02 5E */ addi r3, r3, 0x25e -/* 8000BE0C 00008D4C 38 84 32 D0 */ addi r4, r4, 0x32d0 -/* 8000BE10 00008D50 4B FF FE E5 */ bl my_PrintHeap -/* 8000BE14 00008D54 3C 00 00 0A */ lis r0, 0xa -/* 8000BE18 00008D58 90 0D 81 F8 */ stw r0, lbl_80450778-_SDA_BASE_(r13) -/* 8000BE1C 00008D5C 3C 00 00 A0 */ lis r0, 0xa0 -/* 8000BE20 00008D60 90 0D 81 FC */ stw r0, lbl_8045077C-_SDA_BASE_(r13) -/* 8000BE24 00008D64 38 00 FF FF */ li r0, -1 -/* 8000BE28 00008D68 90 0D 82 00 */ stw r0, lbl_80450780-_SDA_BASE_(r13) -/* 8000BE2C 00008D6C 48 33 3C 81 */ bl OSGetResetCode -/* 8000BE30 00008D70 54 60 0F FF */ rlwinm. r0, r3, 1, 0x1f, 0x1f -/* 8000BE34 00008D74 40 82 00 1C */ bne lbl_8000BE50 -/* 8000BE38 00008D78 48 34 1C CD */ bl VIGetDTVStatus -/* 8000BE3C 00008D7C 28 03 00 00 */ cmplwi r3, 0 -/* 8000BE40 00008D80 40 82 00 44 */ bne lbl_8000BE84 -/* 8000BE44 00008D84 38 60 00 00 */ li r3, 0 -/* 8000BE48 00008D88 48 33 48 DD */ bl OSSetProgressiveMode -/* 8000BE4C 00008D8C 48 00 00 38 */ b lbl_8000BE84 -lbl_8000BE50: -/* 8000BE50 00008D90 80 6D 86 F8 */ lwz r3, m_Do_Reset_NS_mDoRst_NS_mResetData-_SDA_BASE_(r13) -/* 8000BE54 00008D94 88 03 00 13 */ lbz r0, 0x13(r3) -/* 8000BE58 00008D98 28 00 00 00 */ cmplwi r0, 0 -/* 8000BE5C 00008D9C 41 82 00 28 */ beq lbl_8000BE84 -/* 8000BE60 00008DA0 48 34 1C A5 */ bl VIGetDTVStatus -/* 8000BE64 00008DA4 28 03 00 00 */ cmplwi r3, 0 -/* 8000BE68 00008DA8 41 82 00 1C */ beq lbl_8000BE84 -/* 8000BE6C 00008DAC 4B FF F8 D1 */ bl mDoMch_IsProgressiveMode -/* 8000BE70 00008DB0 2C 03 00 00 */ cmpwi r3, 0 -/* 8000BE74 00008DB4 41 82 00 10 */ beq lbl_8000BE84 -/* 8000BE78 00008DB8 3C 60 80 3A */ lis r3, lbl_803A2F9C@ha -/* 8000BE7C 00008DBC 38 03 2F 9C */ addi r0, r3, lbl_803A2F9C@l -/* 8000BE80 00008DC0 90 0D 80 20 */ stw r0, lbl_804505A0-_SDA_BASE_(r13) -lbl_8000BE84: -/* 8000BE84 00008DC4 80 0D 80 20 */ lwz r0, lbl_804505A0-_SDA_BASE_(r13) -/* 8000BE88 00008DC8 90 0D 82 14 */ stw r0, lbl_80450794-_SDA_BASE_(r13) -/* 8000BE8C 00008DCC 48 26 5E 45 */ bl JFWSystem_NS_firstInit -/* 8000BE90 00008DD0 38 60 18 00 */ li r3, 0x1800 -/* 8000BE94 00008DD4 80 8D 8D F8 */ lwz r4, sRootHeap__7JKRHeap-_SDA_BASE_(r13) -/* 8000BE98 00008DD8 48 00 2E 55 */ bl mDoExt_createDbPrintHeap -/* 8000BE9C 00008DDC 7C 64 1B 78 */ mr r4, r3 -/* 8000BEA0 00008DE0 38 60 00 00 */ li r3, 0 -/* 8000BEA4 00008DE4 48 2D 42 ED */ bl JUTDbPrint_NS_start -/* 8000BEA8 00008DE8 80 6D 8D F8 */ lwz r3, sRootHeap__7JKRHeap-_SDA_BASE_(r13) -/* 8000BEAC 00008DEC 48 00 2E 15 */ bl mDoExt_createAssertHeap -/* 8000BEB0 00008DF0 48 26 5E 69 */ bl JFWSystem_NS_init -/* 8000BEB4 00008DF4 88 0D 80 00 */ lbz r0, lbl_80450580-_SDA_BASE_(r13) -/* 8000BEB8 00008DF8 7C 00 07 75 */ extsb. r0, r0 -/* 8000BEBC 00008DFC 40 82 00 18 */ bne lbl_8000BED4 -/* 8000BEC0 00008E00 38 60 00 00 */ li r3, 0 -/* 8000BEC4 00008E04 48 2D 8D 71 */ bl JUTAssertion_NS_setVisible -/* 8000BEC8 00008E08 38 00 00 00 */ li r0, 0 -/* 8000BECC 00008E0C 80 6D 8F 48 */ lwz r3, lbl_804514C8-_SDA_BASE_(r13) -/* 8000BED0 00008E10 98 03 00 0C */ stb r0, 0xc(r3) -lbl_8000BED4: -.global myMemoryErrorRoutine -/* 8000BED4 00008E14 3C 60 80 01 */ lis r3, myMemoryErrorRoutine@ha -.global myMemoryErrorRoutine -/* 8000BED8 00008E18 38 63 B3 EC */ addi r3, r3, myMemoryErrorRoutine@l -/* 8000BEDC 00008E1C 48 2C 2C AD */ bl setErrorHandler__7JKRHeapFPFP7JKRHeapUli_v -/* 8000BEE0 00008E20 80 6D 8D F8 */ lwz r3, sRootHeap__7JKRHeap-_SDA_BASE_(r13) -/* 8000BEE4 00008E24 38 80 00 01 */ li r4, 1 -/* 8000BEE8 00008E28 48 2C 2C 91 */ bl setErrorFlag__7JKRHeapFb -/* 8000BEEC 00008E2C 80 6D 8C 24 */ lwz r3, lbl_804511A4-_SDA_BASE_(r13) -/* 8000BEF0 00008E30 38 80 00 01 */ li r4, 1 -/* 8000BEF4 00008E34 48 2C 2C 85 */ bl setErrorFlag__7JKRHeapFb -/* 8000BEF8 00008E38 83 CD 8D F8 */ lwz r30, sRootHeap__7JKRHeap-_SDA_BASE_(r13) -/* 8000BEFC 00008E3C 38 60 10 00 */ li r3, 0x1000 -/* 8000BF00 00008E40 7F C4 F3 78 */ mr r4, r30 -/* 8000BF04 00008E44 48 00 2E 85 */ bl mDoExt_createCommandHeap -/* 8000BF08 00008E48 7C 64 1B 78 */ mr r4, r3 -/* 8000BF0C 00008E4C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000BF10 00008E50 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000BF14 00008E54 38 63 02 6D */ addi r3, r3, 0x26d -/* 8000BF18 00008E58 38 A0 10 00 */ li r5, 0x1000 -/* 8000BF1C 00008E5C 4B FF FD DD */ bl my_SysPrintHeap -/* 8000BF20 00008E60 3C 60 00 8E */ lis r3, 0x008DF400@ha -/* 8000BF24 00008E64 38 63 F4 00 */ addi r3, r3, 0x008DF400@l -/* 8000BF28 00008E68 7F C4 F3 78 */ mr r4, r30 -/* 8000BF2C 00008E6C 48 00 2E 8D */ bl mDoExt_createArchiveHeap -/* 8000BF30 00008E70 7C 64 1B 78 */ mr r4, r3 -/* 8000BF34 00008E74 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000BF38 00008E78 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000BF3C 00008E7C 38 63 02 7C */ addi r3, r3, 0x27c -/* 8000BF40 00008E80 3C A0 00 8E */ lis r5, 0x008DF400@ha -/* 8000BF44 00008E84 38 A5 F4 00 */ addi r5, r5, 0x008DF400@l -/* 8000BF48 00008E88 4B FF FD B1 */ bl my_SysPrintHeap -/* 8000BF4C 00008E8C 3C 60 00 08 */ lis r3, 0x0007D000@ha -/* 8000BF50 00008E90 38 63 D0 00 */ addi r3, r3, 0x0007D000@l -/* 8000BF54 00008E94 7F C4 F3 78 */ mr r4, r30 -/* 8000BF58 00008E98 48 00 2E A5 */ bl mDoExt_createJ2dHeap -/* 8000BF5C 00008E9C 7C 64 1B 78 */ mr r4, r3 -/* 8000BF60 00008EA0 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000BF64 00008EA4 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000BF68 00008EA8 38 63 02 8D */ addi r3, r3, 0x28d -/* 8000BF6C 00008EAC 3C A0 00 08 */ lis r5, 0x0007D000@ha -/* 8000BF70 00008EB0 38 A5 D0 00 */ addi r5, r5, 0x0007D000@l -/* 8000BF74 00008EB4 4B FF FD 85 */ bl my_SysPrintHeap -/* 8000BF78 00008EB8 3C 60 00 45 */ lis r3, 0x0044E000@ha -/* 8000BF7C 00008EBC 38 63 E0 00 */ addi r3, r3, 0x0044E000@l -/* 8000BF80 00008EC0 7F C4 F3 78 */ mr r4, r30 -/* 8000BF84 00008EC4 48 00 2D 99 */ bl mDoExt_createGameHeap -/* 8000BF88 00008EC8 7C 64 1B 78 */ mr r4, r3 -/* 8000BF8C 00008ECC 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000BF90 00008ED0 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000BF94 00008ED4 38 63 02 9C */ addi r3, r3, 0x29c -/* 8000BF98 00008ED8 3C A0 00 45 */ lis r5, 0x0044E000@ha -/* 8000BF9C 00008EDC 38 A5 E0 00 */ addi r5, r5, 0x0044E000@l -/* 8000BFA0 00008EE0 4B FF FD 59 */ bl my_SysPrintHeap -/* 8000BFA4 00008EE4 83 ED 8D F0 */ lwz r31, sSystemHeap__7JKRHeap-_SDA_BASE_(r13) -/* 8000BFA8 00008EE8 7F E3 FB 78 */ mr r3, r31 -/* 8000BFAC 00008EEC 48 2C 27 81 */ bl getFreeSize__7JKRHeapCFv -/* 8000BFB0 00008EF0 3F C3 FF FF */ addis r30, r3, 0xffff -/* 8000BFB4 00008EF4 7F C3 F3 78 */ mr r3, r30 -/* 8000BFB8 00008EF8 7F E4 FB 78 */ mr r4, r31 -/* 8000BFBC 00008EFC 48 00 2D 9D */ bl mDoExt_createZeldaHeap -/* 8000BFC0 00008F00 7C 7F 1B 78 */ mr r31, r3 -/* 8000BFC4 00008F04 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000BFC8 00008F08 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000BFCC 00008F0C 38 63 02 A9 */ addi r3, r3, 0x2a9 -/* 8000BFD0 00008F10 7F E4 FB 78 */ mr r4, r31 -/* 8000BFD4 00008F14 7F C5 F3 78 */ mr r5, r30 -/* 8000BFD8 00008F18 4B FF FD 21 */ bl my_SysPrintHeap -/* 8000BFDC 00008F1C 7F E3 FB 78 */ mr r3, r31 -/* 8000BFE0 00008F20 48 2C 24 59 */ bl becomeCurrentHeap__7JKRHeapFv -/* 8000BFE4 00008F24 38 60 00 00 */ li r3, 0 -/* 8000BFE8 00008F28 38 80 20 00 */ li r4, 0x2000 -/* 8000BFEC 00008F2C 80 AD 8D F0 */ lwz r5, sSystemHeap__7JKRHeap-_SDA_BASE_(r13) -/* 8000BFF0 00008F30 48 2C 80 45 */ bl setTransBuffer__13JKRAramStreamFPUcUlP7JKRHeap -/* 8000BFF4 00008F34 38 60 00 00 */ li r3, 0 -/* 8000BFF8 00008F38 48 2C 5A 1D */ bl createManager__15JKRThreadSwitchFP7JKRHeap -/* 8000BFFC 00008F3C 38 60 00 7C */ li r3, 0x7c -/* 8000C000 00008F40 48 2C 2C 4D */ bl __nw__FUl -/* 8000C004 00008F44 7C 7F 1B 79 */ or. r31, r3, r3 -/* 8000C008 00008F48 41 82 00 18 */ beq lbl_8000C020 -/* 8000C00C 00008F4C 48 33 4C 79 */ bl OSGetCurrentThread -/* 8000C010 00008F50 7C 64 1B 78 */ mr r4, r3 -/* 8000C014 00008F54 7F E3 FB 78 */ mr r3, r31 -/* 8000C018 00008F58 38 A0 00 00 */ li r5, 0 -/* 8000C01C 00008F5C 48 2C 56 9D */ bl __ct__9JKRThreadFP8OSThreadi -lbl_8000C020: -/* 8000C020 00008F60 80 6D 8C 38 */ lwz r3, lbl_804511B8-_SDA_BASE_(r13) -/* 8000C024 00008F64 38 00 00 03 */ li r0, 3 -/* 8000C028 00008F68 90 03 00 58 */ stw r0, 0x58(r3) -/* 8000C02C 00008F6C 38 00 00 10 */ li r0, 0x10 -/* 8000C030 00008F70 90 03 00 40 */ stw r0, 0x40(r3) -/* 8000C034 00008F74 38 00 00 2A */ li r0, 0x2a -/* 8000C038 00008F78 90 03 00 44 */ stw r0, 0x44(r3) -/* 8000C03C 00008F7C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha -/* 8000C040 00008F80 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l -/* 8000C044 00008F84 38 63 02 B6 */ addi r3, r3, 0x2b6 -/* 8000C048 00008F88 48 2D 7A C5 */ bl JUTException_NS_appendMapFile -.global myExceptionCallback -/* 8000C04C 00008F8C 3C 60 80 01 */ lis r3, myExceptionCallback@ha -.global myExceptionCallback -/* 8000C050 00008F90 38 63 B7 C8 */ addi r3, r3, myExceptionCallback@l -/* 8000C054 00008F94 48 2D 7A 99 */ bl JUTException_NS_setPreUserCallback -.global fault_callback_scroll -/* 8000C058 00008F98 3C 60 80 01 */ lis r3, fault_callback_scroll@ha -.global fault_callback_scroll -/* 8000C05C 00008F9C 38 63 B9 5C */ addi r3, r3, fault_callback_scroll@l -/* 8000C060 00008FA0 48 2D 7A 9D */ bl JUTException_NS_setPostUserCallback -/* 8000C064 00008FA4 48 00 2D 1D */ bl mDoExt_getZeldaHeap -/* 8000C068 00008FA8 48 25 71 B9 */ bl init__3cMlFP7JKRHeap -/* 8000C06C 00008FAC 38 60 00 64 */ li r3, 0x64 -/* 8000C070 00008FB0 38 80 00 64 */ li r4, 0x64 -/* 8000C074 00008FB4 38 A0 00 64 */ li r5, 0x64 -/* 8000C078 00008FB8 48 25 B7 E5 */ bl cM_initRnd__Fiii -/* 8000C07C 00008FBC 38 00 40 00 */ li r0, 0x4000 -/* 8000C080 00008FC0 90 0D 83 4C */ stw r0, lbl_804508CC-_SDA_BASE_(r13) -/* 8000C084 00008FC4 90 0D 83 54 */ stw r0, lbl_804508D4-_SDA_BASE_(r13) -/* 8000C088 00008FC8 38 00 20 00 */ li r0, 0x2000 -/* 8000C08C 00008FCC 90 0D 83 38 */ stw r0, sSZSBufferSize__7JKRAram-_SDA_BASE_(r13) -/* 8000C090 00008FD0 48 33 4B F5 */ bl OSGetCurrentThread -/* 8000C094 00008FD4 48 33 5D C9 */ bl OSGetThreadPriority -/* 8000C098 00008FD8 38 63 FF FE */ addi r3, r3, -2 -/* 8000C09C 00008FDC 48 00 97 BD */ bl mDoDvdThd_NS_create -/* 8000C0A0 00008FE0 48 00 A4 FD */ bl mDoDvdErr_ThdInit -/* 8000C0A4 00008FE4 3C 60 80 3F */ lis r3, lbl_803EAF40@ha -/* 8000C0A8 00008FE8 38 63 AF 40 */ addi r3, r3, lbl_803EAF40@l -/* 8000C0AC 00008FEC 48 00 A6 85 */ bl mDoMemCd_Ctrl_c_NS_ThdInit -/* 8000C0B0 00008FF0 38 60 00 01 */ li r3, 1 -/* 8000C0B4 00008FF4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8000C0B8 00008FF8 83 C1 00 08 */ lwz r30, 8(r1) -/* 8000C0BC 00008FFC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000C0C0 00009000 7C 08 03 A6 */ mtlr r0 -/* 8000C0C4 00009004 38 21 00 10 */ addi r1, r1, 0x10 -/* 8000C0C8 00009008 4E 80 00 20 */ blr - diff --git a/include/m_Do/m_Do_machine/asm/func_8000B1EC.s b/include/m_Do/m_Do_machine/asm/func_8000B1EC.s new file mode 100644 index 00000000000..7b1b2e43c59 --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B1EC.s @@ -0,0 +1,145 @@ +/* 8000B1EC 0000812C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 8000B1F0 00008130 7C 08 02 A6 */ mflr r0 +/* 8000B1F4 00008134 90 01 00 24 */ stw r0, 0x24(r1) +/* 8000B1F8 00008138 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 8000B1FC 0000813C 7C 7F 1B 78 */ mr r31, r3 +/* 8000B200 00008140 80 0D 8D F0 */ lwz r0, sSystemHeap__7JKRHeap-_SDA_BASE_(r13) +/* 8000B204 00008144 7C 1F 00 40 */ cmplw r31, r0 +/* 8000B208 00008148 40 82 00 10 */ bne lbl_8000B218 +/* 8000B20C 0000814C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B210 00008150 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B214 00008154 48 00 01 C4 */ b lbl_8000B3D8 +lbl_8000B218: +/* 8000B218 00008158 48 00 3B 69 */ bl mDoExt_getZeldaHeap +/* 8000B21C 0000815C 7C 1F 18 40 */ cmplw r31, r3 +/* 8000B220 00008160 40 82 00 14 */ bne lbl_8000B234 +/* 8000B224 00008164 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B228 00008168 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B22C 0000816C 38 63 00 0B */ addi r3, r3, 0xb +/* 8000B230 00008170 48 00 01 A8 */ b lbl_8000B3D8 +lbl_8000B234: +/* 8000B234 00008174 48 00 3B 1D */ bl mDoExt_getGameHeap +/* 8000B238 00008178 7C 1F 18 40 */ cmplw r31, r3 +/* 8000B23C 0000817C 40 82 00 14 */ bne lbl_8000B250 +/* 8000B240 00008180 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B244 00008184 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B248 00008188 38 63 00 15 */ addi r3, r3, 0x15 +/* 8000B24C 0000818C 48 00 01 8C */ b lbl_8000B3D8 +lbl_8000B250: +/* 8000B250 00008190 48 00 3B 9D */ bl mDoExt_getArchiveHeap +/* 8000B254 00008194 7C 1F 18 40 */ cmplw r31, r3 +/* 8000B258 00008198 40 82 00 14 */ bne lbl_8000B26C +/* 8000B25C 0000819C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B260 000081A0 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B264 000081A4 38 63 00 1E */ addi r3, r3, 0x1e +/* 8000B268 000081A8 48 00 01 70 */ b lbl_8000B3D8 +lbl_8000B26C: +/* 8000B26C 000081AC 48 00 3B 45 */ bl mDoExt_getCommandHeap +/* 8000B270 000081B0 7C 1F 18 40 */ cmplw r31, r3 +/* 8000B274 000081B4 40 82 00 14 */ bne lbl_8000B288 +/* 8000B278 000081B8 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B27C 000081BC 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B280 000081C0 38 63 00 2A */ addi r3, r3, 0x2a +/* 8000B284 000081C4 48 00 01 54 */ b lbl_8000B3D8 +lbl_8000B288: +/* 8000B288 000081C8 48 00 3A 8D */ bl mDoExt_getDbPrintHeap +/* 8000B28C 000081CC 7C 1F 18 40 */ cmplw r31, r3 +/* 8000B290 000081D0 40 82 00 14 */ bne lbl_8000B2A4 +/* 8000B294 000081D4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B298 000081D8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B29C 000081DC 38 63 00 36 */ addi r3, r3, 0x36 +/* 8000B2A0 000081E0 48 00 01 38 */ b lbl_8000B3D8 +lbl_8000B2A4: +/* 8000B2A4 000081E4 48 00 3B 8D */ bl mDoExt_getJ2dHeap +/* 8000B2A8 000081E8 7C 1F 18 40 */ cmplw r31, r3 +/* 8000B2AC 000081EC 40 82 00 14 */ bne lbl_8000B2C0 +/* 8000B2B0 000081F0 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B2B4 000081F4 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B2B8 000081F8 38 63 00 42 */ addi r3, r3, 0x42 +/* 8000B2BC 000081FC 48 00 01 1C */ b lbl_8000B3D8 +lbl_8000B2C0: +/* 8000B2C0 00008200 7F E3 FB 78 */ mr r3, r31 +/* 8000B2C4 00008204 81 9F 00 00 */ lwz r12, 0(r31) +/* 8000B2C8 00008208 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8000B2CC 0000820C 7D 89 03 A6 */ mtctr r12 +/* 8000B2D0 00008210 4E 80 04 21 */ bctrl +/* 8000B2D4 00008214 3C 80 53 4C */ lis r4, 0x534C4944@ha +/* 8000B2D8 00008218 38 04 49 44 */ addi r0, r4, 0x534C4944@l +/* 8000B2DC 0000821C 7C 03 00 00 */ cmpw r3, r0 +/* 8000B2E0 00008220 41 82 00 84 */ beq lbl_8000B364 +/* 8000B2E4 00008224 40 80 00 38 */ bge lbl_8000B31C +/* 8000B2E8 00008228 3C 80 41 53 */ lis r4, 0x41535448@ha +/* 8000B2EC 0000822C 38 04 54 48 */ addi r0, r4, 0x41535448@l +/* 8000B2F0 00008230 7C 03 00 00 */ cmpw r3, r0 +/* 8000B2F4 00008234 41 82 00 50 */ beq lbl_8000B344 +/* 8000B2F8 00008238 40 80 00 10 */ bge lbl_8000B308 +/* 8000B2FC 0000823C 2C 03 00 00 */ cmpwi r3, 0 +/* 8000B300 00008240 41 82 00 94 */ beq lbl_8000B394 +/* 8000B304 00008244 48 00 00 A0 */ b lbl_8000B3A4 +lbl_8000B308: +/* 8000B308 00008248 3C 80 45 58 */ lis r4, 0x45585048@ha +/* 8000B30C 0000824C 38 04 50 48 */ addi r0, r4, 0x45585048@l +/* 8000B310 00008250 7C 03 00 00 */ cmpw r3, r0 +/* 8000B314 00008254 41 82 00 40 */ beq lbl_8000B354 +/* 8000B318 00008258 48 00 00 8C */ b lbl_8000B3A4 +lbl_8000B31C: +/* 8000B31C 0000825C 3C 80 55 4E */ lis r4, 0x554E4954@ha +/* 8000B320 00008260 38 04 49 54 */ addi r0, r4, 0x554E4954@l +/* 8000B324 00008264 7C 03 00 00 */ cmpw r3, r0 +/* 8000B328 00008268 41 82 00 5C */ beq lbl_8000B384 +/* 8000B32C 0000826C 40 80 00 78 */ bge lbl_8000B3A4 +/* 8000B330 00008270 3C 80 53 54 */ lis r4, 0x53544448@ha +/* 8000B334 00008274 38 04 44 48 */ addi r0, r4, 0x53544448@l +/* 8000B338 00008278 7C 03 00 00 */ cmpw r3, r0 +/* 8000B33C 0000827C 41 82 00 38 */ beq lbl_8000B374 +/* 8000B340 00008280 48 00 00 64 */ b lbl_8000B3A4 +lbl_8000B344: +/* 8000B344 00008284 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B348 00008288 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B34C 0000828C 38 63 00 4A */ addi r3, r3, 0x4a +/* 8000B350 00008290 48 00 00 88 */ b lbl_8000B3D8 +lbl_8000B354: +/* 8000B354 00008294 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B358 00008298 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B35C 0000829C 38 63 00 4F */ addi r3, r3, 0x4f +/* 8000B360 000082A0 48 00 00 78 */ b lbl_8000B3D8 +lbl_8000B364: +/* 8000B364 000082A4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B368 000082A8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B36C 000082AC 38 63 00 54 */ addi r3, r3, 0x54 +/* 8000B370 000082B0 48 00 00 68 */ b lbl_8000B3D8 +lbl_8000B374: +/* 8000B374 000082B4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B378 000082B8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B37C 000082BC 38 63 00 59 */ addi r3, r3, 0x59 +/* 8000B380 000082C0 48 00 00 58 */ b lbl_8000B3D8 +lbl_8000B384: +/* 8000B384 000082C4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B388 000082C8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B38C 000082CC 38 63 00 5E */ addi r3, r3, 0x5e +/* 8000B390 000082D0 48 00 00 48 */ b lbl_8000B3D8 +lbl_8000B394: +/* 8000B394 000082D4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B398 000082D8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B39C 000082DC 38 63 00 63 */ addi r3, r3, 0x63 +/* 8000B3A0 000082E0 48 00 00 38 */ b lbl_8000B3D8 +lbl_8000B3A4: +/* 8000B3A4 000082E4 90 61 00 08 */ stw r3, 8(r1) +/* 8000B3A8 000082E8 88 01 00 08 */ lbz r0, 8(r1) +/* 8000B3AC 000082EC 98 0D 86 90 */ stb r0, lbl_80450C10-_SDA_BASE_(r13) +/* 8000B3B0 000082F0 88 01 00 09 */ lbz r0, 9(r1) +/* 8000B3B4 000082F4 38 6D 86 90 */ addi r3, r13, 0x80450C10 - 0x80458580 /*SDA HACK; original: lbl_80450C10-_SDA_BASE_*/ +/* 8000B3B8 000082F8 98 03 00 01 */ stb r0, 1(r3) +/* 8000B3BC 000082FC 88 01 00 0A */ lbz r0, 0xa(r1) +/* 8000B3C0 00008300 98 03 00 02 */ stb r0, 2(r3) +/* 8000B3C4 00008304 88 01 00 0B */ lbz r0, 0xb(r1) +/* 8000B3C8 00008308 98 03 00 03 */ stb r0, 3(r3) +/* 8000B3CC 0000830C 38 00 00 00 */ li r0, 0 +/* 8000B3D0 00008310 98 03 00 04 */ stb r0, 4(r3) +/* 8000B3D4 00008314 38 6D 86 90 */ addi r3, r13, 0x80450C10 - 0x80458580 /*SDA HACK; original: lbl_80450C10-_SDA_BASE_*/ +lbl_8000B3D8: +/* 8000B3D8 00008318 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 8000B3DC 0000831C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8000B3E0 00008320 7C 08 03 A6 */ mtlr r0 +/* 8000B3E4 00008324 38 21 00 20 */ addi r1, r1, 0x20 +/* 8000B3E8 00008328 4E 80 00 20 */ blr \ No newline at end of file diff --git a/include/m_Do/m_Do_machine/asm/func_8000B3EC.s b/include/m_Do/m_Do_machine/asm/func_8000B3EC.s new file mode 100644 index 00000000000..fbd85f220ff --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B3EC.s @@ -0,0 +1,129 @@ +/* 8000B3EC 0000832C 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 8000B3F0 00008330 7C 08 02 A6 */ mflr r0 +/* 8000B3F4 00008334 90 01 00 34 */ stw r0, 0x34(r1) +/* 8000B3F8 00008338 39 61 00 30 */ addi r11, r1, 0x30 +/* 8000B3FC 0000833C 48 35 6D DD */ bl _savegpr_28 +/* 8000B400 00008340 7C 7F 1B 78 */ mr r31, r3 +/* 8000B404 00008344 7C 9E 23 78 */ mr r30, r4 +/* 8000B408 00008348 7C BD 2B 78 */ mr r29, r5 +/* 8000B40C 0000834C 3B 80 00 01 */ li r28, 1 +/* 8000B410 00008350 81 83 00 00 */ lwz r12, 0(r3) +/* 8000B414 00008354 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8000B418 00008358 7D 89 03 A6 */ mtctr r12 +/* 8000B41C 0000835C 4E 80 04 21 */ bctrl +/* 8000B420 00008360 3C 03 AC B4 */ addis r0, r3, 0xacb4 +/* 8000B424 00008364 28 00 49 44 */ cmplwi r0, 0x4944 +/* 8000B428 00008368 40 82 00 08 */ bne lbl_8000B430 +/* 8000B42C 0000836C 3B 80 00 00 */ li r28, 0 +lbl_8000B430: +/* 8000B430 00008370 2C 1C 00 00 */ cmpwi r28, 0 +/* 8000B434 00008374 41 82 00 28 */ beq lbl_8000B45C +/* 8000B438 00008378 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B43C 0000837C 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B440 00008380 38 63 00 6A */ addi r3, r3, 0x6a +/* 8000B444 00008384 7F C4 F3 78 */ mr r4, r30 +/* 8000B448 00008388 7F C5 F3 78 */ mr r5, r30 +/* 8000B44C 0000838C 7F A6 EB 78 */ mr r6, r29 +/* 8000B450 00008390 7F E7 FB 78 */ mr r7, r31 +/* 8000B454 00008394 4C C6 31 82 */ crclr 6 +/* 8000B458 00008398 4B FF B7 B5 */ bl OSReport_Error +lbl_8000B45C: +/* 8000B45C 0000839C 7F E3 FB 78 */ mr r3, r31 +/* 8000B460 000083A0 81 9F 00 00 */ lwz r12, 0(r31) +/* 8000B464 000083A4 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8000B468 000083A8 7D 89 03 A6 */ mtctr r12 +/* 8000B46C 000083AC 4E 80 04 21 */ bctrl +/* 8000B470 000083B0 90 61 00 10 */ stw r3, 0x10(r1) +/* 8000B474 000083B4 2C 1C 00 00 */ cmpwi r28, 0 +/* 8000B478 000083B8 41 82 00 60 */ beq lbl_8000B4D8 +/* 8000B47C 000083BC 83 9F 00 38 */ lwz r28, 0x38(r31) +/* 8000B480 000083C0 7F E3 FB 78 */ mr r3, r31 +/* 8000B484 000083C4 4B FF FD 69 */ bl myGetHeapTypeByString +/* 8000B488 000083C8 7C 7D 1B 78 */ mr r29, r3 +/* 8000B48C 000083CC 7F E3 FB 78 */ mr r3, r31 +/* 8000B490 000083D0 48 2C 32 F5 */ bl getTotalFreeSize__7JKRHeapCFv +/* 8000B494 000083D4 7C 7E 1B 78 */ mr r30, r3 +/* 8000B498 000083D8 7F E3 FB 78 */ mr r3, r31 +/* 8000B49C 000083DC 48 2C 32 91 */ bl getFreeSize__7JKRHeapCFv +/* 8000B4A0 000083E0 7C 64 1B 78 */ mr r4, r3 +/* 8000B4A4 000083E4 93 81 00 08 */ stw r28, 8(r1) +/* 8000B4A8 000083E8 93 A1 00 0C */ stw r29, 0xc(r1) +/* 8000B4AC 000083EC 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B4B0 000083F0 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B4B4 000083F4 38 63 00 BB */ addi r3, r3, 0xbb +/* 8000B4B8 000083F8 7F C5 F3 78 */ mr r5, r30 +/* 8000B4BC 000083FC 80 C1 00 10 */ lwz r6, 0x10(r1) +/* 8000B4C0 00008400 88 E1 00 10 */ lbz r7, 0x10(r1) +/* 8000B4C4 00008404 89 01 00 11 */ lbz r8, 0x11(r1) +/* 8000B4C8 00008408 89 21 00 12 */ lbz r9, 0x12(r1) +/* 8000B4CC 0000840C 89 41 00 13 */ lbz r10, 0x13(r1) +/* 8000B4D0 00008410 4C C6 31 82 */ crclr 6 +/* 8000B4D4 00008414 4B FF B7 39 */ bl OSReport_Error +lbl_8000B4D8: +/* 8000B4D8 00008418 80 0D 86 8C */ lwz r0, lbl_80450C0C-_SDA_BASE_(r13) +/* 8000B4DC 0000841C 28 00 00 00 */ cmplwi r0, 0 +/* 8000B4E0 00008420 40 82 00 18 */ bne lbl_8000B4F8 +/* 8000B4E4 00008424 7F E3 FB 78 */ mr r3, r31 +/* 8000B4E8 00008428 81 9F 00 00 */ lwz r12, 0(r31) +/* 8000B4EC 0000842C 81 8C 00 18 */ lwz r12, 0x18(r12) +/* 8000B4F0 00008430 7D 89 03 A6 */ mtctr r12 +/* 8000B4F4 00008434 4E 80 04 21 */ bctrl +lbl_8000B4F8: +/* 8000B4F8 00008438 80 6D 86 8C */ lwz r3, lbl_80450C0C-_SDA_BASE_(r13) +/* 8000B4FC 0000843C 38 03 00 01 */ addi r0, r3, 1 +/* 8000B500 00008440 90 0D 86 8C */ stw r0, lbl_80450C0C-_SDA_BASE_(r13) +/* 8000B504 00008444 80 0D 86 AC */ lwz r0, lbl_80450C2C-_SDA_BASE_(r13) +/* 8000B508 00008448 7C 1F 00 40 */ cmplw r31, r0 +/* 8000B50C 0000844C 40 82 00 14 */ bne lbl_8000B520 +/* 8000B510 00008450 80 6D 86 7C */ lwz r3, lbl_80450BFC-_SDA_BASE_(r13) +/* 8000B514 00008454 38 03 00 01 */ addi r0, r3, 1 +/* 8000B518 00008458 90 0D 86 7C */ stw r0, lbl_80450BFC-_SDA_BASE_(r13) +/* 8000B51C 0000845C 48 00 00 94 */ b lbl_8000B5B0 +lbl_8000B520: +/* 8000B520 00008460 80 0D 86 A8 */ lwz r0, lbl_80450C28-_SDA_BASE_(r13) +/* 8000B524 00008464 7C 1F 00 40 */ cmplw r31, r0 +/* 8000B528 00008468 40 82 00 14 */ bne lbl_8000B53C +/* 8000B52C 0000846C 80 6D 86 78 */ lwz r3, lbl_80450BF8-_SDA_BASE_(r13) +/* 8000B530 00008470 38 03 00 01 */ addi r0, r3, 1 +/* 8000B534 00008474 90 0D 86 78 */ stw r0, lbl_80450BF8-_SDA_BASE_(r13) +/* 8000B538 00008478 48 00 00 78 */ b lbl_8000B5B0 +lbl_8000B53C: +/* 8000B53C 0000847C 80 0D 86 B0 */ lwz r0, lbl_80450C30-_SDA_BASE_(r13) +/* 8000B540 00008480 7C 1F 00 40 */ cmplw r31, r0 +/* 8000B544 00008484 40 82 00 14 */ bne lbl_8000B558 +/* 8000B548 00008488 80 6D 86 80 */ lwz r3, lbl_80450C00-_SDA_BASE_(r13) +/* 8000B54C 0000848C 38 03 00 01 */ addi r0, r3, 1 +/* 8000B550 00008490 90 0D 86 80 */ stw r0, lbl_80450C00-_SDA_BASE_(r13) +/* 8000B554 00008494 48 00 00 5C */ b lbl_8000B5B0 +lbl_8000B558: +/* 8000B558 00008498 80 0D 86 B4 */ lwz r0, lbl_80450C34-_SDA_BASE_(r13) +/* 8000B55C 0000849C 7C 1F 00 40 */ cmplw r31, r0 +/* 8000B560 000084A0 40 82 00 14 */ bne lbl_8000B574 +/* 8000B564 000084A4 80 6D 86 84 */ lwz r3, lbl_80450C04-_SDA_BASE_(r13) +/* 8000B568 000084A8 38 03 00 01 */ addi r0, r3, 1 +/* 8000B56C 000084AC 90 0D 86 84 */ stw r0, lbl_80450C04-_SDA_BASE_(r13) +/* 8000B570 000084B0 48 00 00 40 */ b lbl_8000B5B0 +lbl_8000B574: +/* 8000B574 000084B4 7F E3 FB 78 */ mr r3, r31 +/* 8000B578 000084B8 81 9F 00 00 */ lwz r12, 0(r31) +/* 8000B57C 000084BC 81 8C 00 10 */ lwz r12, 0x10(r12) +/* 8000B580 000084C0 7D 89 03 A6 */ mtctr r12 +/* 8000B584 000084C4 4E 80 04 21 */ bctrl +/* 8000B588 000084C8 3C 03 AC B4 */ addis r0, r3, 0xacb4 +/* 8000B58C 000084CC 28 00 49 44 */ cmplwi r0, 0x4944 +/* 8000B590 000084D0 40 82 00 14 */ bne lbl_8000B5A4 +/* 8000B594 000084D4 80 6D 86 74 */ lwz r3, lbl_80450BF4-_SDA_BASE_(r13) +/* 8000B598 000084D8 38 03 00 01 */ addi r0, r3, 1 +/* 8000B59C 000084DC 90 0D 86 74 */ stw r0, lbl_80450BF4-_SDA_BASE_(r13) +/* 8000B5A0 000084E0 48 00 00 10 */ b lbl_8000B5B0 +lbl_8000B5A4: +/* 8000B5A4 000084E4 80 6D 86 88 */ lwz r3, lbl_80450C08-_SDA_BASE_(r13) +/* 8000B5A8 000084E8 38 03 00 01 */ addi r0, r3, 1 +/* 8000B5AC 000084EC 90 0D 86 88 */ stw r0, lbl_80450C08-_SDA_BASE_(r13) +lbl_8000B5B0: +/* 8000B5B0 000084F0 39 61 00 30 */ addi r11, r1, 0x30 +/* 8000B5B4 000084F4 48 35 6C 71 */ bl _restgpr_28 +/* 8000B5B8 000084F8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 8000B5BC 000084FC 7C 08 03 A6 */ mtlr r0 +/* 8000B5C0 00008500 38 21 00 30 */ addi r1, r1, 0x30 +/* 8000B5C4 00008504 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_machine/asm/func_8000B5C8.s b/include/m_Do/m_Do_machine/asm/func_8000B5C8.s new file mode 100644 index 00000000000..5d961d7658a --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B5C8.s @@ -0,0 +1,45 @@ +/* 8000B5C8 00008508 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000B5CC 0000850C 7C 08 02 A6 */ mflr r0 +/* 8000B5D0 00008510 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000B5D4 00008514 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8000B5D8 00008518 7C 7F 1B 78 */ mr r31, r3 +/* 8000B5DC 0000851C 81 83 00 00 */ lwz r12, 0(r3) +/* 8000B5E0 00008520 81 8C 00 14 */ lwz r12, 0x14(r12) +/* 8000B5E4 00008524 7D 89 03 A6 */ mtctr r12 +/* 8000B5E8 00008528 4E 80 04 21 */ bctrl +/* 8000B5EC 0000852C 54 60 06 3F */ clrlwi. r0, r3, 0x18 +/* 8000B5F0 00008530 40 82 00 28 */ bne lbl_8000B618 +/* 8000B5F4 00008534 7F E3 FB 78 */ mr r3, r31 +/* 8000B5F8 00008538 4B FF FB F5 */ bl myGetHeapTypeByString +/* 8000B5FC 0000853C 7C 65 1B 78 */ mr r5, r3 +/* 8000B600 00008540 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B604 00008544 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B608 00008548 38 63 01 06 */ addi r3, r3, 0x106 +/* 8000B60C 0000854C 7F E4 FB 78 */ mr r4, r31 +/* 8000B610 00008550 4C C6 31 82 */ crclr 6 +/* 8000B614 00008554 4B FF B5 F9 */ bl OSReport_Error +lbl_8000B618: +/* 8000B618 00008558 80 7F 00 40 */ lwz r3, 0x40(r31) +/* 8000B61C 0000855C 28 03 00 00 */ cmplwi r3, 0 +/* 8000B620 00008560 41 82 00 08 */ beq lbl_8000B628 +/* 8000B624 00008564 38 63 FF F4 */ addi r3, r3, -12 +lbl_8000B628: +/* 8000B628 00008568 7C 7F 1B 78 */ mr r31, r3 +/* 8000B62C 0000856C 48 00 00 20 */ b lbl_8000B64C +lbl_8000B630: +/* 8000B630 00008570 80 7F 00 0C */ lwz r3, 0xc(r31) +/* 8000B634 00008574 4B FF FF 95 */ bl myHeapCheckRecursive +/* 8000B638 00008578 80 7F 00 18 */ lwz r3, 0x18(r31) +/* 8000B63C 0000857C 28 03 00 00 */ cmplwi r3, 0 +/* 8000B640 00008580 41 82 00 08 */ beq lbl_8000B648 +/* 8000B644 00008584 38 63 FF F4 */ addi r3, r3, -12 +lbl_8000B648: +/* 8000B648 00008588 7C 7F 1B 78 */ mr r31, r3 +lbl_8000B64C: +/* 8000B64C 0000858C 28 1F 00 00 */ cmplwi r31, 0 +/* 8000B650 00008590 40 82 FF E0 */ bne lbl_8000B630 +/* 8000B654 00008594 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8000B658 00008598 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000B65C 0000859C 7C 08 03 A6 */ mtlr r0 +/* 8000B660 000085A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8000B664 000085A4 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_machine/asm/func_8000B668.s b/include/m_Do/m_Do_machine/asm/func_8000B668.s new file mode 100644 index 00000000000..da1a6096600 --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B668.s @@ -0,0 +1,9 @@ +/* 8000B668 000085A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000B66C 000085AC 7C 08 02 A6 */ mflr r0 +/* 8000B670 000085B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000B674 000085B4 80 6D 8D F8 */ lwz r3, sRootHeap__7JKRHeap-_SDA_BASE_(r13) +/* 8000B678 000085B8 4B FF FF 51 */ bl myHeapCheckRecursive +/* 8000B67C 000085BC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000B680 000085C0 7C 08 03 A6 */ mtlr r0 +/* 8000B684 000085C4 38 21 00 10 */ addi r1, r1, 0x10 +/* 8000B688 000085C8 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_machine/asm/func_8000B68C.s b/include/m_Do/m_Do_machine/asm/func_8000B68C.s new file mode 100644 index 00000000000..b6e7a2871ef --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B68C.s @@ -0,0 +1,49 @@ +/* 8000B68C 000085CC 28 04 00 74 */ cmplwi r4, 0x74 +/* 8000B690 000085D0 40 82 00 4C */ bne lbl_8000B6DC +/* 8000B694 000085D4 28 03 00 04 */ cmplwi r3, 4 +/* 8000B698 000085D8 40 82 00 44 */ bne lbl_8000B6DC +/* 8000B69C 000085DC 88 0D 86 95 */ lbz r0, lbl_80450C15-_SDA_BASE_(r13) +/* 8000B6A0 000085E0 28 00 00 03 */ cmplwi r0, 3 +/* 8000B6A4 000085E4 40 82 00 28 */ bne lbl_8000B6CC +/* 8000B6A8 000085E8 88 0D 86 96 */ lbz r0, lbl_80450C16-_SDA_BASE_(r13) +/* 8000B6AC 000085EC 28 00 00 06 */ cmplwi r0, 6 +/* 8000B6B0 000085F0 40 82 00 1C */ bne lbl_8000B6CC +/* 8000B6B4 000085F4 88 0D 86 97 */ lbz r0, lbl_80450C17-_SDA_BASE_(r13) +/* 8000B6B8 000085F8 28 00 00 05 */ cmplwi r0, 5 +/* 8000B6BC 000085FC 40 82 00 10 */ bne lbl_8000B6CC +/* 8000B6C0 00008600 38 00 00 01 */ li r0, 1 +/* 8000B6C4 00008604 98 0D 80 00 */ stb r0, lbl_80450580-_SDA_BASE_(r13) +/* 8000B6C8 00008608 48 00 00 14 */ b lbl_8000B6DC +lbl_8000B6CC: +/* 8000B6CC 0000860C 38 00 00 00 */ li r0, 0 +/* 8000B6D0 00008610 98 0D 86 95 */ stb r0, lbl_80450C15-_SDA_BASE_(r13) +/* 8000B6D4 00008614 98 0D 86 96 */ stb r0, lbl_80450C16-_SDA_BASE_(r13) +/* 8000B6D8 00008618 98 0D 86 97 */ stb r0, lbl_80450C17-_SDA_BASE_(r13) +lbl_8000B6DC: +/* 8000B6DC 0000861C 28 04 00 42 */ cmplwi r4, 0x42 +/* 8000B6E0 00008620 40 82 00 18 */ bne lbl_8000B6F8 +/* 8000B6E4 00008624 28 03 00 40 */ cmplwi r3, 0x40 +/* 8000B6E8 00008628 40 82 00 10 */ bne lbl_8000B6F8 +/* 8000B6EC 0000862C 88 AD 86 95 */ lbz r5, lbl_80450C15-_SDA_BASE_(r13) +/* 8000B6F0 00008630 38 05 00 01 */ addi r0, r5, 1 +/* 8000B6F4 00008634 98 0D 86 95 */ stb r0, lbl_80450C15-_SDA_BASE_(r13) +lbl_8000B6F8: +/* 8000B6F8 00008638 28 04 00 28 */ cmplwi r4, 0x28 +/* 8000B6FC 0000863C 40 82 00 18 */ bne lbl_8000B714 +/* 8000B700 00008640 28 03 00 20 */ cmplwi r3, 0x20 +/* 8000B704 00008644 40 82 00 10 */ bne lbl_8000B714 +/* 8000B708 00008648 88 AD 86 96 */ lbz r5, lbl_80450C16-_SDA_BASE_(r13) +/* 8000B70C 0000864C 38 05 00 01 */ addi r0, r5, 1 +/* 8000B710 00008650 98 0D 86 96 */ stb r0, lbl_80450C16-_SDA_BASE_(r13) +lbl_8000B714: +/* 8000B714 00008654 28 04 00 11 */ cmplwi r4, 0x11 +/* 8000B718 00008658 40 82 00 18 */ bne lbl_8000B730 +/* 8000B71C 0000865C 28 03 00 10 */ cmplwi r3, 0x10 +/* 8000B720 00008660 40 82 00 10 */ bne lbl_8000B730 +/* 8000B724 00008664 88 6D 86 97 */ lbz r3, lbl_80450C17-_SDA_BASE_(r13) +/* 8000B728 00008668 38 03 00 01 */ addi r0, r3, 1 +/* 8000B72C 0000866C 98 0D 86 97 */ stb r0, lbl_80450C17-_SDA_BASE_(r13) +lbl_8000B730: +/* 8000B730 00008670 88 6D 80 00 */ lbz r3, lbl_80450580-_SDA_BASE_(r13) +/* 8000B734 00008674 7C 63 07 74 */ extsb r3, r3 +/* 8000B738 00008678 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_machine/asm/func_8000B73C.s b/include/m_Do/m_Do_machine/asm/func_8000B73C.s new file mode 100644 index 00000000000..b0b316e9ab9 --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B73C.s @@ -0,0 +1,11 @@ +/* 8000B73C 0000867C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000B740 00008680 7C 08 02 A6 */ mflr r0 +/* 8000B744 00008684 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000B748 00008688 48 33 4F 6D */ bl OSGetProgressiveMode +/* 8000B74C 0000868C 20 03 00 01 */ subfic r0, r3, 1 +/* 8000B750 00008690 7C 00 00 34 */ cntlzw r0, r0 +/* 8000B754 00008694 54 03 DE 3E */ rlwinm r3, r0, 0x1b, 0x18, 0x1f +/* 8000B758 00008698 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000B75C 0000869C 7C 08 03 A6 */ mtlr r0 +/* 8000B760 000086A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8000B764 000086A4 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_machine/asm/func_8000B768.s b/include/m_Do/m_Do_machine/asm/func_8000B768.s new file mode 100644 index 00000000000..dce8de535bb --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B768.s @@ -0,0 +1,12 @@ +/* 8000B768 000086A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000B76C 000086AC 7C 08 02 A6 */ mflr r0 +/* 8000B770 000086B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000B774 000086B4 7C 60 1B 78 */ mr r0, r3 +/* 8000B778 000086B8 7C 85 23 78 */ mr r5, r4 +/* 8000B77C 000086BC 80 6D 8F 88 */ lwz r3, lbl_80451508-_SDA_BASE_(r13) +/* 8000B780 000086C0 7C 04 03 78 */ mr r4, r0 +/* 8000B784 000086C4 48 2D 77 D1 */ bl JUTException_NS_readPad +/* 8000B788 000086C8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000B78C 000086CC 7C 08 03 A6 */ mtlr r0 +/* 8000B790 000086D0 38 21 00 10 */ addi r1, r1, 0x10 +/* 8000B794 000086D4 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_machine/asm/func_8000B798.s b/include/m_Do/m_Do_machine/asm/func_8000B798.s new file mode 100644 index 00000000000..b2c86335b5b --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B798.s @@ -0,0 +1,13 @@ +/* 8000B798 000086D8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000B79C 000086DC 7C 08 02 A6 */ mflr r0 +/* 8000B7A0 000086E0 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000B7A4 000086E4 38 60 00 00 */ li r3, 0 +/* 8000B7A8 000086E8 38 80 00 00 */ li r4, 0 +/* 8000B7AC 000086EC 38 A0 00 00 */ li r5, 0 +/* 8000B7B0 000086F0 48 00 9E 65 */ bl mDoRst_reset__FiUli +/* 8000B7B4 000086F4 38 60 00 00 */ li r3, 0 +/* 8000B7B8 000086F8 38 80 00 00 */ li r4, 0 +/* 8000B7BC 000086FC 38 A0 00 00 */ li r5, 0 +/* 8000B7C0 00008700 48 33 40 ED */ bl OSResetSystem +lbl_8000B7C4: +/* 8000B7C4 00008704 48 00 00 00 */ b lbl_8000B7C4 \ No newline at end of file diff --git a/include/m_Do/m_Do_machine/asm/func_8000B7C8.s b/include/m_Do/m_Do_machine/asm/func_8000B7C8.s new file mode 100644 index 00000000000..c1f13800b88 --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B7C8.s @@ -0,0 +1,108 @@ +/* 8000B7C8 00008708 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8000B7CC 0000870C 7C 08 02 A6 */ mflr r0 +/* 8000B7D0 00008710 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8000B7D4 00008714 93 E1 00 CC */ stw r31, 0xcc(r1) +/* 8000B7D8 00008718 48 33 6F 25 */ bl OSGetTime +/* 8000B7DC 0000871C 90 8D 85 94 */ stw r4, lbl_80450B14-_SDA_BASE_(r13) +/* 8000B7E0 00008720 90 6D 85 90 */ stw r3, lbl_80450B10-_SDA_BASE_(r13) +/* 8000B7E4 00008724 4B FF B0 BD */ bl OSReportEnable +/* 8000B7E8 00008728 48 25 7A A5 */ bl cAPICPad_recalibrate__Fv +/* 8000B7EC 0000872C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B7F0 00008730 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B7F4 00008734 38 63 01 19 */ addi r3, r3, 0x119 +/* 8000B7F8 00008738 4C C6 31 82 */ crclr 6 +/* 8000B7FC 0000873C 4B FF B2 C1 */ bl OSReport +/* 8000B800 00008740 83 ED 8F 88 */ lwz r31, lbl_80451508-_SDA_BASE_(r13) +/* 8000B804 00008744 28 1F 00 00 */ cmplwi r31, 0 +/* 8000B808 00008748 40 82 00 20 */ bne lbl_8000B828 +/* 8000B80C 0000874C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B810 00008750 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B814 00008754 38 63 01 2D */ addi r3, r3, 0x12d +/* 8000B818 00008758 4C C6 31 82 */ crclr 6 +/* 8000B81C 0000875C 4B FF B2 A1 */ bl OSReport +/* 8000B820 00008760 48 32 E4 E1 */ bl PPCHalt +/* 8000B824 00008764 48 00 00 FC */ b lbl_8000B920 +lbl_8000B828: +/* 8000B828 00008768 38 00 00 80 */ li r0, 0x80 +/* 8000B82C 0000876C 90 1F 00 94 */ stw r0, 0x94(r31) +/* 8000B830 00008770 88 0D 80 00 */ lbz r0, lbl_80450580-_SDA_BASE_(r13) +/* 8000B834 00008774 7C 00 07 75 */ extsb. r0, r0 +/* 8000B838 00008778 40 82 00 CC */ bne lbl_8000B904 +/* 8000B83C 0000877C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8000B840 00008780 38 80 00 00 */ li r4, 0 +/* 8000B844 00008784 48 2D 4E 99 */ bl __ct__10JUTGamePadFQ210JUTGamePad8EPadPort +/* 8000B848 00008788 38 01 00 10 */ addi r0, r1, 0x10 +/* 8000B84C 0000878C 90 1F 00 84 */ stw r0, 0x84(r31) +/* 8000B850 00008790 38 00 FF FF */ li r0, -1 +/* 8000B854 00008794 90 1F 00 88 */ stw r0, 0x88(r31) +/* 8000B858 00008798 28 1F 00 00 */ cmplwi r31, 0 +/* 8000B85C 0000879C 41 82 00 94 */ beq lbl_8000B8F0 +/* 8000B860 000087A0 48 33 1E A9 */ bl OSEnableInterrupts +/* 8000B864 000087A4 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B868 000087A8 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B86C 000087AC 38 63 01 49 */ addi r3, r3, 0x149 +/* 8000B870 000087B0 4C C6 31 82 */ crclr 6 +/* 8000B874 000087B4 4B FF B2 49 */ bl OSReport +/* 8000B878 000087B8 48 00 00 34 */ b lbl_8000B8AC +lbl_8000B87C: +/* 8000B87C 000087BC 38 61 00 08 */ addi r3, r1, 8 +/* 8000B880 000087C0 38 81 00 0C */ addi r4, r1, 0xc +/* 8000B884 000087C4 4B FF FE E5 */ bl exceptionReadPad +/* 8000B888 000087C8 80 61 00 08 */ lwz r3, 8(r1) +/* 8000B88C 000087CC 80 81 00 0C */ lwz r4, 0xc(r1) +/* 8000B890 000087D0 4B FF FD FD */ bl developKeyCheck +/* 8000B894 000087D4 38 60 00 1E */ li r3, 0x1e +/* 8000B898 000087D8 48 2D 80 E9 */ bl JUTException_NS_waitTime +/* 8000B89C 000087DC 88 0D 8F 81 */ lbz r0, lbl_80451501-_SDA_BASE_(r13) +/* 8000B8A0 000087E0 28 00 00 00 */ cmplwi r0, 0 +/* 8000B8A4 000087E4 41 82 00 08 */ beq lbl_8000B8AC +/* 8000B8A8 000087E8 4B FF FE F1 */ bl exceptionRestart +lbl_8000B8AC: +/* 8000B8AC 000087EC 88 0D 80 00 */ lbz r0, lbl_80450580-_SDA_BASE_(r13) +/* 8000B8B0 000087F0 7C 00 07 75 */ extsb. r0, r0 +/* 8000B8B4 000087F4 41 82 FF C8 */ beq lbl_8000B87C +/* 8000B8B8 000087F8 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B8BC 000087FC 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B8C0 00008800 38 63 01 65 */ addi r3, r3, 0x165 +/* 8000B8C4 00008804 4C C6 31 82 */ crclr 6 +/* 8000B8C8 00008808 4B FF B1 F5 */ bl OSReport +/* 8000B8CC 0000880C 38 60 00 01 */ li r3, 1 +/* 8000B8D0 00008810 48 2D 93 65 */ bl JUTAssertion_NS_setVisible +/* 8000B8D4 00008814 38 00 00 01 */ li r0, 1 +/* 8000B8D8 00008818 80 6D 8F 48 */ lwz r3, lbl_804514C8-_SDA_BASE_(r13) +/* 8000B8DC 0000881C 98 03 00 0C */ stb r0, 0xc(r3) +/* 8000B8E0 00008820 38 00 00 03 */ li r0, 3 +/* 8000B8E4 00008824 80 6D 8C 38 */ lwz r3, lbl_804511B8-_SDA_BASE_(r13) +/* 8000B8E8 00008828 90 03 00 58 */ stw r0, 0x58(r3) +/* 8000B8EC 0000882C 48 00 00 08 */ b lbl_8000B8F4 +lbl_8000B8F0: +/* 8000B8F0 00008830 48 32 E4 11 */ bl PPCHalt +lbl_8000B8F4: +/* 8000B8F4 00008834 38 61 00 10 */ addi r3, r1, 0x10 +/* 8000B8F8 00008838 38 80 FF FF */ li r4, -1 +/* 8000B8FC 0000883C 48 2D 4E B5 */ bl __dt__10JUTGamePadFv +/* 8000B900 00008840 48 00 00 20 */ b lbl_8000B920 +lbl_8000B904: +/* 8000B904 00008844 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B908 00008848 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B90C 0000884C 38 63 01 83 */ addi r3, r3, 0x183 +/* 8000B910 00008850 4C C6 31 82 */ crclr 6 +/* 8000B914 00008854 4B FF B1 A9 */ bl OSReport +/* 8000B918 00008858 38 60 0B B8 */ li r3, 0xbb8 +/* 8000B91C 0000885C 48 2D 80 65 */ bl JUTException_NS_waitTime +lbl_8000B920: +/* 8000B920 00008860 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000B924 00008864 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000B928 00008868 38 63 01 8E */ addi r3, r3, 0x18e +/* 8000B92C 0000886C 48 33 D3 C9 */ bl DVDChangeDir +/* 8000B930 00008870 48 2D 93 7D */ bl JUTVideo_NS_destroyManager +/* 8000B934 00008874 38 60 00 00 */ li r3, 0 +/* 8000B938 00008878 48 35 0C 75 */ bl GXSetDrawDoneCallback +/* 8000B93C 0000887C 38 60 00 00 */ li r3, 0 +/* 8000B940 00008880 48 34 1F 01 */ bl VISetBlack +/* 8000B944 00008884 48 34 1D 51 */ bl VIFlush +/* 8000B948 00008888 83 E1 00 CC */ lwz r31, 0xcc(r1) +/* 8000B94C 0000888C 80 01 00 D4 */ lwz r0, 0xd4(r1) +/* 8000B950 00008890 7C 08 03 A6 */ mtlr r0 +/* 8000B954 00008894 38 21 00 D0 */ addi r1, r1, 0xd0 +/* 8000B958 00008898 4E 80 00 20 */ blr \ No newline at end of file diff --git a/include/m_Do/m_Do_machine/asm/func_8000B95C.s b/include/m_Do/m_Do_machine/asm/func_8000B95C.s new file mode 100644 index 00000000000..562a2d5b58a --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000B95C.s @@ -0,0 +1,257 @@ +/* 8000B95C 0000889C 94 21 FF 30 */ stwu r1, -0xd0(r1) +/* 8000B960 000088A0 7C 08 02 A6 */ mflr r0 +/* 8000B964 000088A4 90 01 00 D4 */ stw r0, 0xd4(r1) +/* 8000B968 000088A8 39 61 00 D0 */ addi r11, r1, 0xd0 +/* 8000B96C 000088AC 48 35 68 6D */ bl _savegpr_28 +/* 8000B970 000088B0 83 8D 8F 88 */ lwz r28, lbl_80451508-_SDA_BASE_(r13) +/* 8000B974 000088B4 83 ED 8F 9C */ lwz r31, lbl_8045151C-_SDA_BASE_(r13) +/* 8000B978 000088B8 7F FE FB 78 */ mr r30, r31 +/* 8000B97C 000088BC 80 04 01 98 */ lwz r0, 0x198(r4) +/* 8000B980 000088C0 54 08 00 3A */ rlwinm r8, r0, 0, 0, 0x1d +/* 8000B984 000088C4 3C 60 80 00 */ lis r3, 0x8000000C@ha +/* 8000B988 000088C8 38 03 00 0C */ addi r0, r3, 0x8000000C@l +/* 8000B98C 000088CC 7C 08 00 40 */ cmplw r8, r0 +/* 8000B990 000088D0 41 80 00 3C */ blt lbl_8000B9CC +/* 8000B994 000088D4 3C 60 83 00 */ lis r3, 0x82FFFFFF@ha +/* 8000B998 000088D8 38 03 FF FF */ addi r0, r3, 0x82FFFFFF@l +/* 8000B99C 000088DC 7C 08 00 40 */ cmplw r8, r0 +/* 8000B9A0 000088E0 40 80 00 2C */ bge lbl_8000B9CC +/* 8000B9A4 000088E4 7F E3 FB 78 */ mr r3, r31 +/* 8000B9A8 000088E8 3C 80 80 37 */ lis r4, lbl_80373DE8@ha +/* 8000B9AC 000088EC 38 84 3D E8 */ addi r4, r4, lbl_80373DE8@l +/* 8000B9B0 000088F0 38 84 01 A1 */ addi r4, r4, 0x1a1 +/* 8000B9B4 000088F4 80 A8 FF F4 */ lwz r5, -0xc(r8) +/* 8000B9B8 000088F8 80 C8 FF F8 */ lwz r6, -8(r8) +/* 8000B9BC 000088FC 80 E8 FF FC */ lwz r7, -4(r8) +/* 8000B9C0 00008900 81 08 00 00 */ lwz r8, 0(r8) +/* 8000B9C4 00008904 4C C6 31 82 */ crclr 6 +/* 8000B9C8 00008908 48 2D C1 F1 */ bl JUTConsole_NS_print_f +lbl_8000B9CC: +/* 8000B9CC 0000890C 38 61 00 10 */ addi r3, r1, 0x10 +/* 8000B9D0 00008910 38 80 00 00 */ li r4, 0 +/* 8000B9D4 00008914 48 2D 4D 09 */ bl __ct__10JUTGamePadFQ210JUTGamePad8EPadPort +/* 8000B9D8 00008918 38 01 00 10 */ addi r0, r1, 0x10 +/* 8000B9DC 0000891C 90 1C 00 84 */ stw r0, 0x84(r28) +/* 8000B9E0 00008920 38 00 FF FF */ li r0, -1 +/* 8000B9E4 00008924 90 1C 00 88 */ stw r0, 0x88(r28) +/* 8000B9E8 00008928 7F 83 E3 78 */ mr r3, r28 +/* 8000B9EC 0000892C 48 2D 75 2D */ bl JUTException_NS_isEnablePad +/* 8000B9F0 00008930 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 8000B9F4 00008934 7C 00 00 34 */ cntlzw r0, r0 +/* 8000B9F8 00008938 54 00 DE 3F */ rlwinm. r0, r0, 0x1b, 0x18, 0x1f +/* 8000B9FC 0000893C 40 82 02 30 */ bne lbl_8000BC2C +/* 8000BA00 00008940 7F E3 FB 78 */ mr r3, r31 +/* 8000BA04 00008944 3C 80 80 37 */ lis r4, lbl_80373DE8@ha +/* 8000BA08 00008948 38 84 3D E8 */ addi r4, r4, lbl_80373DE8@l +/* 8000BA0C 0000894C 38 84 01 BF */ addi r4, r4, 0x1bf +/* 8000BA10 00008950 48 2D C2 29 */ bl JUTConsole_NS_print +/* 8000BA14 00008954 7F E3 FB 78 */ mr r3, r31 +/* 8000BA18 00008958 3C 80 80 37 */ lis r4, lbl_80373DE8@ha +/* 8000BA1C 0000895C 38 84 3D E8 */ addi r4, r4, lbl_80373DE8@l +/* 8000BA20 00008960 38 84 01 EB */ addi r4, r4, 0x1eb +/* 8000BA24 00008964 48 2D C2 15 */ bl JUTConsole_NS_print +/* 8000BA28 00008968 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) +/* 8000BA2C 0000896C 38 80 00 01 */ li r4, 1 +/* 8000BA30 00008970 48 2D CA 21 */ bl JUTConsoleManager_NS_drawDirect +/* 8000BA34 00008974 48 33 1C D5 */ bl OSEnableInterrupts +/* 8000BA38 00008978 3B E0 00 00 */ li r31, 0 +/* 8000BA3C 0000897C 3B A0 00 00 */ li r29, 0 +lbl_8000BA40: +/* 8000BA40 00008980 38 61 00 08 */ addi r3, r1, 8 +/* 8000BA44 00008984 38 81 00 0C */ addi r4, r1, 0xc +/* 8000BA48 00008988 4B FF FD 21 */ bl exceptionReadPad +/* 8000BA4C 0000898C 88 0D 8F 81 */ lbz r0, lbl_80451501-_SDA_BASE_(r13) +/* 8000BA50 00008990 28 00 00 00 */ cmplwi r0, 0 +/* 8000BA54 00008994 41 82 00 14 */ beq lbl_8000BA68 +/* 8000BA58 00008998 38 60 00 01 */ li r3, 1 +/* 8000BA5C 0000899C 38 80 00 00 */ li r4, 0 +/* 8000BA60 000089A0 38 A0 00 00 */ li r5, 0 +/* 8000BA64 000089A4 48 33 3E 49 */ bl OSResetSystem +lbl_8000BA68: +/* 8000BA68 000089A8 38 60 00 00 */ li r3, 0 +/* 8000BA6C 000089AC 80 01 00 08 */ lwz r0, 8(r1) +/* 8000BA70 000089B0 28 00 10 00 */ cmplwi r0, 0x1000 +/* 8000BA74 000089B4 40 82 00 10 */ bne lbl_8000BA84 +/* 8000BA78 000089B8 7F C3 F3 78 */ mr r3, r30 +/* 8000BA7C 000089BC 48 00 C6 D1 */ bl exception_addition +/* 8000BA80 000089C0 38 60 00 01 */ li r3, 1 +lbl_8000BA84: +/* 8000BA84 000089C4 80 01 00 08 */ lwz r0, 8(r1) +/* 8000BA88 000089C8 28 00 00 10 */ cmplwi r0, 0x10 +/* 8000BA8C 000089CC 40 82 00 80 */ bne lbl_8000BB0C +/* 8000BA90 000089D0 80 8D 8C 38 */ lwz r4, lbl_804511B8-_SDA_BASE_(r13) +/* 8000BA94 000089D4 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) +/* 8000BA98 000089D8 80 03 00 10 */ lwz r0, 0x10(r3) +/* 8000BA9C 000089DC 7C 00 20 40 */ cmplw r0, r4 +/* 8000BAA0 000089E0 41 82 00 58 */ beq lbl_8000BAF8 +/* 8000BAA4 000089E4 7C 9E 23 78 */ mr r30, r4 +/* 8000BAA8 000089E8 C0 02 81 00 */ lfs f0, lbl_80451B00-_SDA2_BASE_(r2) +/* 8000BAAC 000089EC D0 04 00 50 */ stfs f0, 0x50(r4) +/* 8000BAB0 000089F0 C0 02 81 04 */ lfs f0, lbl_80451B04-_SDA2_BASE_(r2) +/* 8000BAB4 000089F4 D0 04 00 54 */ stfs f0, 0x54(r4) +/* 8000BAB8 000089F8 38 00 00 08 */ li r0, 8 +/* 8000BABC 000089FC 90 04 00 40 */ stw r0, 0x40(r4) +/* 8000BAC0 00008A00 38 00 00 20 */ li r0, 0x20 +/* 8000BAC4 00008A04 90 04 00 44 */ stw r0, 0x44(r4) +/* 8000BAC8 00008A08 38 00 00 17 */ li r0, 0x17 +/* 8000BACC 00008A0C 90 04 00 48 */ stw r0, 0x48(r4) +/* 8000BAD0 00008A10 80 04 00 48 */ lwz r0, 0x48(r4) +/* 8000BAD4 00008A14 80 64 00 24 */ lwz r3, 0x24(r4) +/* 8000BAD8 00008A18 7C 00 18 40 */ cmplw r0, r3 +/* 8000BADC 00008A1C 40 81 00 08 */ ble lbl_8000BAE4 +/* 8000BAE0 00008A20 90 64 00 48 */ stw r3, 0x48(r4) +lbl_8000BAE4: +/* 8000BAE4 00008A24 38 00 00 01 */ li r0, 1 +/* 8000BAE8 00008A28 98 04 00 68 */ stb r0, 0x68(r4) +/* 8000BAEC 00008A2C 38 00 00 03 */ li r0, 3 +/* 8000BAF0 00008A30 90 04 00 58 */ stw r0, 0x58(r4) +/* 8000BAF4 00008A34 48 00 00 08 */ b lbl_8000BAFC +lbl_8000BAF8: +/* 8000BAF8 00008A38 83 CD 8F 9C */ lwz r30, lbl_8045151C-_SDA_BASE_(r13) +lbl_8000BAFC: +/* 8000BAFC 00008A3C 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) +/* 8000BB00 00008A40 7F C4 F3 78 */ mr r4, r30 +/* 8000BB04 00008A44 48 2D C9 C1 */ bl JUTConsoleManager_NS_setDirectConsole +/* 8000BB08 00008A48 38 60 00 01 */ li r3, 1 +lbl_8000BB0C: +/* 8000BB0C 00008A4C 80 01 00 08 */ lwz r0, 8(r1) +/* 8000BB10 00008A50 28 00 01 00 */ cmplwi r0, 0x100 +/* 8000BB14 00008A54 40 82 00 14 */ bne lbl_8000BB28 +/* 8000BB18 00008A58 7F C3 F3 78 */ mr r3, r30 +/* 8000BB1C 00008A5C 80 9E 00 24 */ lwz r4, 0x24(r30) +/* 8000BB20 00008A60 48 2D C5 89 */ bl JUTConsole_NS_scroll +/* 8000BB24 00008A64 38 60 00 01 */ li r3, 1 +lbl_8000BB28: +/* 8000BB28 00008A68 80 01 00 08 */ lwz r0, 8(r1) +/* 8000BB2C 00008A6C 28 00 02 00 */ cmplwi r0, 0x200 +/* 8000BB30 00008A70 40 82 00 18 */ bne lbl_8000BB48 +/* 8000BB34 00008A74 7F C3 F3 78 */ mr r3, r30 +/* 8000BB38 00008A78 80 1E 00 24 */ lwz r0, 0x24(r30) +/* 8000BB3C 00008A7C 7C 80 00 D0 */ neg r4, r0 +/* 8000BB40 00008A80 48 2D C5 69 */ bl JUTConsole_NS_scroll +/* 8000BB44 00008A84 38 60 00 01 */ li r3, 1 +lbl_8000BB48: +/* 8000BB48 00008A88 80 01 00 0C */ lwz r0, 0xc(r1) +/* 8000BB4C 00008A8C 28 00 00 08 */ cmplwi r0, 8 +/* 8000BB50 00008A90 40 82 00 4C */ bne lbl_8000BB9C +/* 8000BB54 00008A94 7F C3 F3 78 */ mr r3, r30 +/* 8000BB58 00008A98 2C 1F 00 03 */ cmpwi r31, 3 +/* 8000BB5C 00008A9C 40 80 00 0C */ bge lbl_8000BB68 +/* 8000BB60 00008AA0 38 80 FF FF */ li r4, -1 +/* 8000BB64 00008AA4 48 00 00 24 */ b lbl_8000BB88 +lbl_8000BB68: +/* 8000BB68 00008AA8 2C 1F 00 05 */ cmpwi r31, 5 +/* 8000BB6C 00008AAC 40 80 00 0C */ bge lbl_8000BB78 +/* 8000BB70 00008AB0 38 80 FF FE */ li r4, -2 +/* 8000BB74 00008AB4 48 00 00 14 */ b lbl_8000BB88 +lbl_8000BB78: +/* 8000BB78 00008AB8 2C 1F 00 07 */ cmpwi r31, 7 +/* 8000BB7C 00008ABC 38 80 FF F8 */ li r4, -8 +/* 8000BB80 00008AC0 40 80 00 08 */ bge lbl_8000BB88 +/* 8000BB84 00008AC4 38 80 FF FC */ li r4, -4 +lbl_8000BB88: +/* 8000BB88 00008AC8 48 2D C5 21 */ bl JUTConsole_NS_scroll +/* 8000BB8C 00008ACC 38 60 00 01 */ li r3, 1 +/* 8000BB90 00008AD0 3B A0 00 00 */ li r29, 0 +/* 8000BB94 00008AD4 3B FF 00 01 */ addi r31, r31, 1 +/* 8000BB98 00008AD8 48 00 00 5C */ b lbl_8000BBF4 +lbl_8000BB9C: +/* 8000BB9C 00008ADC 28 00 00 04 */ cmplwi r0, 4 +/* 8000BBA0 00008AE0 40 82 00 4C */ bne lbl_8000BBEC +/* 8000BBA4 00008AE4 7F C3 F3 78 */ mr r3, r30 +/* 8000BBA8 00008AE8 2C 1D 00 03 */ cmpwi r29, 3 +/* 8000BBAC 00008AEC 40 80 00 0C */ bge lbl_8000BBB8 +/* 8000BBB0 00008AF0 38 80 00 01 */ li r4, 1 +/* 8000BBB4 00008AF4 48 00 00 24 */ b lbl_8000BBD8 +lbl_8000BBB8: +/* 8000BBB8 00008AF8 2C 1D 00 05 */ cmpwi r29, 5 +/* 8000BBBC 00008AFC 40 80 00 0C */ bge lbl_8000BBC8 +/* 8000BBC0 00008B00 38 80 00 02 */ li r4, 2 +/* 8000BBC4 00008B04 48 00 00 14 */ b lbl_8000BBD8 +lbl_8000BBC8: +/* 8000BBC8 00008B08 2C 1D 00 07 */ cmpwi r29, 7 +/* 8000BBCC 00008B0C 38 80 00 08 */ li r4, 8 +/* 8000BBD0 00008B10 40 80 00 08 */ bge lbl_8000BBD8 +/* 8000BBD4 00008B14 38 80 00 04 */ li r4, 4 +lbl_8000BBD8: +/* 8000BBD8 00008B18 48 2D C4 D1 */ bl JUTConsole_NS_scroll +/* 8000BBDC 00008B1C 38 60 00 01 */ li r3, 1 +/* 8000BBE0 00008B20 3B E0 00 00 */ li r31, 0 +/* 8000BBE4 00008B24 3B BD 00 01 */ addi r29, r29, 1 +/* 8000BBE8 00008B28 48 00 00 0C */ b lbl_8000BBF4 +lbl_8000BBEC: +/* 8000BBEC 00008B2C 3B E0 00 00 */ li r31, 0 +/* 8000BBF0 00008B30 3B A0 00 00 */ li r29, 0 +lbl_8000BBF4: +/* 8000BBF4 00008B34 54 60 06 3E */ clrlwi r0, r3, 0x18 +/* 8000BBF8 00008B38 28 00 00 01 */ cmplwi r0, 1 +/* 8000BBFC 00008B3C 40 82 00 24 */ bne lbl_8000BC20 +/* 8000BC00 00008B40 48 34 1C BD */ bl VIGetRetraceCount +/* 8000BC04 00008B44 7C 7C 1B 78 */ mr r28, r3 +lbl_8000BC08: +/* 8000BC08 00008B48 48 34 1C B5 */ bl VIGetRetraceCount +/* 8000BC0C 00008B4C 7C 1C 18 40 */ cmplw r28, r3 +/* 8000BC10 00008B50 41 82 FF F8 */ beq lbl_8000BC08 +/* 8000BC14 00008B54 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) +/* 8000BC18 00008B58 38 80 00 01 */ li r4, 1 +/* 8000BC1C 00008B5C 48 2D C8 35 */ bl JUTConsoleManager_NS_drawDirect +lbl_8000BC20: +/* 8000BC20 00008B60 38 60 00 1E */ li r3, 0x1e +/* 8000BC24 00008B64 48 2D 7D 5D */ bl JUTException_NS_waitTime +/* 8000BC28 00008B68 4B FF FE 18 */ b lbl_8000BA40 +lbl_8000BC2C: +/* 8000BC2C 00008B6C 7F E3 FB 78 */ mr r3, r31 +/* 8000BC30 00008B70 48 00 C5 1D */ bl exception_addition +/* 8000BC34 00008B74 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) +/* 8000BC38 00008B78 38 80 00 01 */ li r4, 1 +/* 8000BC3C 00008B7C 48 2D C8 15 */ bl JUTConsoleManager_NS_drawDirect +lbl_8000BC40: +/* 8000BC40 00008B80 7F E3 FB 78 */ mr r3, r31 +/* 8000BC44 00008B84 80 1F 00 24 */ lwz r0, 0x24(r31) +/* 8000BC48 00008B88 7C 80 00 D0 */ neg r4, r0 +/* 8000BC4C 00008B8C 48 2D C4 5D */ bl JUTConsole_NS_scroll +/* 8000BC50 00008B90 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) +/* 8000BC54 00008B94 38 80 00 01 */ li r4, 1 +/* 8000BC58 00008B98 48 2D C7 F9 */ bl JUTConsoleManager_NS_drawDirect +/* 8000BC5C 00008B9C 38 60 07 D0 */ li r3, 0x7d0 +/* 8000BC60 00008BA0 48 2D 7D 21 */ bl JUTException_NS_waitTime +lbl_8000BC64: +/* 8000BC64 00008BA4 83 DF 00 48 */ lwz r30, 0x48(r31) +/* 8000BC68 00008BA8 48 00 00 50 */ b lbl_8000BCB8 +lbl_8000BC6C: +/* 8000BC6C 00008BAC 7F E3 FB 78 */ mr r3, r31 +/* 8000BC70 00008BB0 38 80 00 01 */ li r4, 1 +/* 8000BC74 00008BB4 48 2D C4 35 */ bl JUTConsole_NS_scroll +/* 8000BC78 00008BB8 80 6D 8F F0 */ lwz r3, lbl_80451570-_SDA_BASE_(r13) +/* 8000BC7C 00008BBC 38 80 00 01 */ li r4, 1 +/* 8000BC80 00008BC0 48 2D C7 D1 */ bl JUTConsoleManager_NS_drawDirect +/* 8000BC84 00008BC4 83 9F 00 48 */ lwz r28, 0x48(r31) +/* 8000BC88 00008BC8 7F E3 FB 78 */ mr r3, r31 +/* 8000BC8C 00008BCC 48 2D C5 1D */ bl JUTConsole_NS_getLineOffset +/* 8000BC90 00008BD0 7C 7D 1B 78 */ mr r29, r3 +/* 8000BC94 00008BD4 7F E3 FB 78 */ mr r3, r31 +/* 8000BC98 00008BD8 48 2D C4 ED */ bl JUTConsole_NS_getUsedLine +/* 8000BC9C 00008BDC 7C 7C 18 50 */ subf r3, r28, r3 +/* 8000BCA0 00008BE0 38 03 00 01 */ addi r0, r3, 1 +/* 8000BCA4 00008BE4 7C 00 E8 40 */ cmplw r0, r29 +/* 8000BCA8 00008BE8 40 81 00 18 */ ble lbl_8000BCC0 +/* 8000BCAC 00008BEC 38 60 00 14 */ li r3, 0x14 +/* 8000BCB0 00008BF0 48 2D 7C D1 */ bl JUTException_NS_waitTime +/* 8000BCB4 00008BF4 3B DE FF FF */ addi r30, r30, -1 +lbl_8000BCB8: +/* 8000BCB8 00008BF8 28 1E 00 00 */ cmplwi r30, 0 +/* 8000BCBC 00008BFC 40 82 FF B0 */ bne lbl_8000BC6C +lbl_8000BCC0: +/* 8000BCC0 00008C00 38 60 0B B8 */ li r3, 0xbb8 +/* 8000BCC4 00008C04 48 2D 7C BD */ bl JUTException_NS_waitTime +/* 8000BCC8 00008C08 83 9F 00 48 */ lwz r28, 0x48(r31) +/* 8000BCCC 00008C0C 7F E3 FB 78 */ mr r3, r31 +/* 8000BCD0 00008C10 48 2D C4 D9 */ bl JUTConsole_NS_getLineOffset +/* 8000BCD4 00008C14 7C 7D 1B 78 */ mr r29, r3 +/* 8000BCD8 00008C18 7F E3 FB 78 */ mr r3, r31 +/* 8000BCDC 00008C1C 48 2D C4 A9 */ bl JUTConsole_NS_getUsedLine +/* 8000BCE0 00008C20 7C 7C 18 50 */ subf r3, r28, r3 +/* 8000BCE4 00008C24 38 03 00 01 */ addi r0, r3, 1 +/* 8000BCE8 00008C28 7C 00 E8 40 */ cmplw r0, r29 +/* 8000BCEC 00008C2C 40 81 FF 54 */ ble lbl_8000BC40 +/* 8000BCF0 00008C30 4B FF FF 74 */ b lbl_8000BC64 diff --git a/include/m_Do/m_Do_machine/asm/func_8000BCF4.s b/include/m_Do/m_Do_machine/asm/func_8000BCF4.s new file mode 100644 index 00000000000..bc20c9005db --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000BCF4.s @@ -0,0 +1 @@ +/* 8000BCF4 00008C34 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_machine/asm/func_8000BCF8.s b/include/m_Do/m_Do_machine/asm/func_8000BCF8.s new file mode 100644 index 00000000000..4269f26188f --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000BCF8.s @@ -0,0 +1,19 @@ +/* 8000BCF8 00008C38 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000BCFC 00008C3C 7C 08 02 A6 */ mflr r0 +/* 8000BD00 00008C40 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000BD04 00008C44 7C 67 1B 78 */ mr r7, r3 +/* 8000BD08 00008C48 7C 86 23 78 */ mr r6, r4 +/* 8000BD0C 00008C4C 7C A0 2B 78 */ mr r0, r5 +/* 8000BD10 00008C50 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000BD14 00008C54 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000BD18 00008C58 38 63 02 2F */ addi r3, r3, 0x22f +/* 8000BD1C 00008C5C 7C E4 3B 78 */ mr r4, r7 +/* 8000BD20 00008C60 7C C5 33 78 */ mr r5, r6 +/* 8000BD24 00008C64 7C C6 02 14 */ add r6, r6, r0 +/* 8000BD28 00008C68 54 07 B2 BE */ srwi r7, r0, 0xa +/* 8000BD2C 00008C6C 4C C6 31 82 */ crclr 6 +/* 8000BD30 00008C70 4B FF B0 9D */ bl OSReport_System +/* 8000BD34 00008C74 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000BD38 00008C78 7C 08 03 A6 */ mtlr r0 +/* 8000BD3C 00008C7C 38 21 00 10 */ addi r1, r1, 0x10 +/* 8000BD40 00008C80 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_machine/asm/func_8000BD44.s b/include/m_Do/m_Do_machine/asm/func_8000BD44.s new file mode 100644 index 00000000000..9d328c6d604 --- /dev/null +++ b/include/m_Do/m_Do_machine/asm/func_8000BD44.s @@ -0,0 +1,240 @@ +/* 8000BD44 00008C84 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000BD48 00008C88 7C 08 02 A6 */ mflr r0 +/* 8000BD4C 00008C8C 90 01 00 14 */ stw r0, 0x14(r1) +/* 8000BD50 00008C90 93 E1 00 0C */ stw r31, 0xc(r1) +/* 8000BD54 00008C94 93 C1 00 08 */ stw r30, 8(r1) +/* 8000BD58 00008C98 88 0D 80 00 */ lbz r0, lbl_80450580-_SDA_BASE_(r13) +/* 8000BD5C 00008C9C 7C 00 07 75 */ extsb. r0, r0 +/* 8000BD60 00008CA0 41 82 00 10 */ beq lbl_8000BD70 +/* 8000BD64 00008CA4 48 32 E1 99 */ bl OSGetConsoleType +/* 8000BD68 00008CA8 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3 +/* 8000BD6C 00008CAC 40 82 00 08 */ bne lbl_8000BD74 +lbl_8000BD70: +/* 8000BD70 00008CB0 4B FF AB 25 */ bl OSReportDisable +lbl_8000BD74: +/* 8000BD74 00008CB4 88 6D 86 70 */ lbz r3, lbl_80450BF0-_SDA_BASE_(r13) +/* 8000BD78 00008CB8 30 03 FF FF */ addic r0, r3, -1 +/* 8000BD7C 00008CBC 7C 00 19 10 */ subfe r0, r0, r3 +/* 8000BD80 00008CC0 98 0D 83 30 */ stb r0, lbl_804508B0-_SDA_BASE_(r13) +/* 8000BD84 00008CC4 38 00 00 01 */ li r0, 1 +/* 8000BD88 00008CC8 90 0D 81 F0 */ stw r0, lbl_80450770-_SDA_BASE_(r13) +/* 8000BD8C 00008CCC 48 32 F5 01 */ bl OSGetArenaHi +/* 8000BD90 00008CD0 7C 7F 1B 78 */ mr r31, r3 +/* 8000BD94 00008CD4 48 32 F5 01 */ bl OSGetArenaLo +/* 8000BD98 00008CD8 3C 00 81 80 */ lis r0, 0x8180 +/* 8000BD9C 00008CDC 7C 1F 00 40 */ cmplw r31, r0 +/* 8000BDA0 00008CE0 40 81 00 18 */ ble lbl_8000BDB8 +/* 8000BDA4 00008CE4 3C 1F FE 80 */ addis r0, r31, 0xfe80 +/* 8000BDA8 00008CE8 7C 00 18 40 */ cmplw r0, r3 +/* 8000BDAC 00008CEC 40 81 00 0C */ ble lbl_8000BDB8 +/* 8000BDB0 00008CF0 7C 03 03 78 */ mr r3, r0 +/* 8000BDB4 00008CF4 48 32 F4 E9 */ bl OSSetArenaHi +lbl_8000BDB8: +/* 8000BDB8 00008CF8 48 32 F4 D5 */ bl OSGetArenaHi +/* 8000BDBC 00008CFC 7C 7F 1B 78 */ mr r31, r3 +/* 8000BDC0 00008D00 48 32 F4 D5 */ bl OSGetArenaLo +/* 8000BDC4 00008D04 7C 63 F8 50 */ subf r3, r3, r31 +/* 8000BDC8 00008D08 3B C3 FF 10 */ addi r30, r3, -240 +/* 8000BDCC 00008D0C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000BDD0 00008D10 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000BDD4 00008D14 38 63 02 55 */ addi r3, r3, 0x255 +/* 8000BDD8 00008D18 7F C4 F3 78 */ mr r4, r30 +/* 8000BDDC 00008D1C 4B FF FF 19 */ bl my_PrintHeap +/* 8000BDE0 00008D20 80 6D 80 04 */ lwz r3, lbl_80450584-_SDA_BASE_(r13) +/* 8000BDE4 00008D24 3C 03 00 01 */ addis r0, r3, 1 +/* 8000BDE8 00008D28 28 00 FF FF */ cmplwi r0, 0xffff +/* 8000BDEC 00008D2C 41 82 00 08 */ beq lbl_8000BDF4 +/* 8000BDF0 00008D30 7F DE 1A 14 */ add r30, r30, r3 +lbl_8000BDF4: +/* 8000BDF4 00008D34 3C 9E FF 25 */ addis r4, r30, 0xff25 +/* 8000BDF8 00008D38 38 04 32 D0 */ addi r0, r4, 0x32d0 +/* 8000BDFC 00008D3C 90 0D 81 F4 */ stw r0, lbl_80450774-_SDA_BASE_(r13) +/* 8000BE00 00008D40 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000BE04 00008D44 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000BE08 00008D48 38 63 02 5E */ addi r3, r3, 0x25e +/* 8000BE0C 00008D4C 38 84 32 D0 */ addi r4, r4, 0x32d0 +/* 8000BE10 00008D50 4B FF FE E5 */ bl my_PrintHeap +/* 8000BE14 00008D54 3C 00 00 0A */ lis r0, 0xa +/* 8000BE18 00008D58 90 0D 81 F8 */ stw r0, lbl_80450778-_SDA_BASE_(r13) +/* 8000BE1C 00008D5C 3C 00 00 A0 */ lis r0, 0xa0 +/* 8000BE20 00008D60 90 0D 81 FC */ stw r0, lbl_8045077C-_SDA_BASE_(r13) +/* 8000BE24 00008D64 38 00 FF FF */ li r0, -1 +/* 8000BE28 00008D68 90 0D 82 00 */ stw r0, lbl_80450780-_SDA_BASE_(r13) +/* 8000BE2C 00008D6C 48 33 3C 81 */ bl OSGetResetCode +/* 8000BE30 00008D70 54 60 0F FF */ rlwinm. r0, r3, 1, 0x1f, 0x1f +/* 8000BE34 00008D74 40 82 00 1C */ bne lbl_8000BE50 +/* 8000BE38 00008D78 48 34 1C CD */ bl VIGetDTVStatus +/* 8000BE3C 00008D7C 28 03 00 00 */ cmplwi r3, 0 +/* 8000BE40 00008D80 40 82 00 44 */ bne lbl_8000BE84 +/* 8000BE44 00008D84 38 60 00 00 */ li r3, 0 +/* 8000BE48 00008D88 48 33 48 DD */ bl OSSetProgressiveMode +/* 8000BE4C 00008D8C 48 00 00 38 */ b lbl_8000BE84 +lbl_8000BE50: +/* 8000BE50 00008D90 80 6D 86 F8 */ lwz r3, m_Do_Reset_NS_mDoRst_NS_mResetData-_SDA_BASE_(r13) +/* 8000BE54 00008D94 88 03 00 13 */ lbz r0, 0x13(r3) +/* 8000BE58 00008D98 28 00 00 00 */ cmplwi r0, 0 +/* 8000BE5C 00008D9C 41 82 00 28 */ beq lbl_8000BE84 +/* 8000BE60 00008DA0 48 34 1C A5 */ bl VIGetDTVStatus +/* 8000BE64 00008DA4 28 03 00 00 */ cmplwi r3, 0 +/* 8000BE68 00008DA8 41 82 00 1C */ beq lbl_8000BE84 +/* 8000BE6C 00008DAC 4B FF F8 D1 */ bl mDoMch_IsProgressiveMode +/* 8000BE70 00008DB0 2C 03 00 00 */ cmpwi r3, 0 +/* 8000BE74 00008DB4 41 82 00 10 */ beq lbl_8000BE84 +/* 8000BE78 00008DB8 3C 60 80 3A */ lis r3, lbl_803A2F9C@ha +/* 8000BE7C 00008DBC 38 03 2F 9C */ addi r0, r3, lbl_803A2F9C@l +/* 8000BE80 00008DC0 90 0D 80 20 */ stw r0, lbl_804505A0-_SDA_BASE_(r13) +lbl_8000BE84: +/* 8000BE84 00008DC4 80 0D 80 20 */ lwz r0, lbl_804505A0-_SDA_BASE_(r13) +/* 8000BE88 00008DC8 90 0D 82 14 */ stw r0, lbl_80450794-_SDA_BASE_(r13) +/* 8000BE8C 00008DCC 48 26 5E 45 */ bl JFWSystem_NS_firstInit +/* 8000BE90 00008DD0 38 60 18 00 */ li r3, 0x1800 +/* 8000BE94 00008DD4 80 8D 8D F8 */ lwz r4, sRootHeap__7JKRHeap-_SDA_BASE_(r13) +/* 8000BE98 00008DD8 48 00 2E 55 */ bl mDoExt_createDbPrintHeap +/* 8000BE9C 00008DDC 7C 64 1B 78 */ mr r4, r3 +/* 8000BEA0 00008DE0 38 60 00 00 */ li r3, 0 +/* 8000BEA4 00008DE4 48 2D 42 ED */ bl JUTDbPrint_NS_start +/* 8000BEA8 00008DE8 80 6D 8D F8 */ lwz r3, sRootHeap__7JKRHeap-_SDA_BASE_(r13) +/* 8000BEAC 00008DEC 48 00 2E 15 */ bl mDoExt_createAssertHeap +/* 8000BEB0 00008DF0 48 26 5E 69 */ bl JFWSystem_NS_init +/* 8000BEB4 00008DF4 88 0D 80 00 */ lbz r0, lbl_80450580-_SDA_BASE_(r13) +/* 8000BEB8 00008DF8 7C 00 07 75 */ extsb. r0, r0 +/* 8000BEBC 00008DFC 40 82 00 18 */ bne lbl_8000BED4 +/* 8000BEC0 00008E00 38 60 00 00 */ li r3, 0 +/* 8000BEC4 00008E04 48 2D 8D 71 */ bl JUTAssertion_NS_setVisible +/* 8000BEC8 00008E08 38 00 00 00 */ li r0, 0 +/* 8000BECC 00008E0C 80 6D 8F 48 */ lwz r3, lbl_804514C8-_SDA_BASE_(r13) +/* 8000BED0 00008E10 98 03 00 0C */ stb r0, 0xc(r3) +lbl_8000BED4: +/*.global myMemoryErrorRoutine*/ +/* 8000BED4 00008E14 3C 60 80 01 */ lis r3, myMemoryErrorRoutine@ha +/*.global myMemoryErrorRoutine*/ +/* 8000BED8 00008E18 38 63 B3 EC */ addi r3, r3, myMemoryErrorRoutine@l +/* 8000BEDC 00008E1C 48 2C 2C AD */ bl setErrorHandler__7JKRHeapFPFP7JKRHeapUli_v +/* 8000BEE0 00008E20 80 6D 8D F8 */ lwz r3, sRootHeap__7JKRHeap-_SDA_BASE_(r13) +/* 8000BEE4 00008E24 38 80 00 01 */ li r4, 1 +/* 8000BEE8 00008E28 48 2C 2C 91 */ bl setErrorFlag__7JKRHeapFb +/* 8000BEEC 00008E2C 80 6D 8C 24 */ lwz r3, lbl_804511A4-_SDA_BASE_(r13) +/* 8000BEF0 00008E30 38 80 00 01 */ li r4, 1 +/* 8000BEF4 00008E34 48 2C 2C 85 */ bl setErrorFlag__7JKRHeapFb +/* 8000BEF8 00008E38 83 CD 8D F8 */ lwz r30, sRootHeap__7JKRHeap-_SDA_BASE_(r13) +/* 8000BEFC 00008E3C 38 60 10 00 */ li r3, 0x1000 +/* 8000BF00 00008E40 7F C4 F3 78 */ mr r4, r30 +/* 8000BF04 00008E44 48 00 2E 85 */ bl mDoExt_createCommandHeap +/* 8000BF08 00008E48 7C 64 1B 78 */ mr r4, r3 +/* 8000BF0C 00008E4C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000BF10 00008E50 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000BF14 00008E54 38 63 02 6D */ addi r3, r3, 0x26d +/* 8000BF18 00008E58 38 A0 10 00 */ li r5, 0x1000 +/* 8000BF1C 00008E5C 4B FF FD DD */ bl my_SysPrintHeap +/* 8000BF20 00008E60 3C 60 00 8E */ lis r3, 0x008DF400@ha +/* 8000BF24 00008E64 38 63 F4 00 */ addi r3, r3, 0x008DF400@l +/* 8000BF28 00008E68 7F C4 F3 78 */ mr r4, r30 +/* 8000BF2C 00008E6C 48 00 2E 8D */ bl mDoExt_createArchiveHeap +/* 8000BF30 00008E70 7C 64 1B 78 */ mr r4, r3 +/* 8000BF34 00008E74 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000BF38 00008E78 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000BF3C 00008E7C 38 63 02 7C */ addi r3, r3, 0x27c +/* 8000BF40 00008E80 3C A0 00 8E */ lis r5, 0x008DF400@ha +/* 8000BF44 00008E84 38 A5 F4 00 */ addi r5, r5, 0x008DF400@l +/* 8000BF48 00008E88 4B FF FD B1 */ bl my_SysPrintHeap +/* 8000BF4C 00008E8C 3C 60 00 08 */ lis r3, 0x0007D000@ha +/* 8000BF50 00008E90 38 63 D0 00 */ addi r3, r3, 0x0007D000@l +/* 8000BF54 00008E94 7F C4 F3 78 */ mr r4, r30 +/* 8000BF58 00008E98 48 00 2E A5 */ bl mDoExt_createJ2dHeap +/* 8000BF5C 00008E9C 7C 64 1B 78 */ mr r4, r3 +/* 8000BF60 00008EA0 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000BF64 00008EA4 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000BF68 00008EA8 38 63 02 8D */ addi r3, r3, 0x28d +/* 8000BF6C 00008EAC 3C A0 00 08 */ lis r5, 0x0007D000@ha +/* 8000BF70 00008EB0 38 A5 D0 00 */ addi r5, r5, 0x0007D000@l +/* 8000BF74 00008EB4 4B FF FD 85 */ bl my_SysPrintHeap +/* 8000BF78 00008EB8 3C 60 00 45 */ lis r3, 0x0044E000@ha +/* 8000BF7C 00008EBC 38 63 E0 00 */ addi r3, r3, 0x0044E000@l +/* 8000BF80 00008EC0 7F C4 F3 78 */ mr r4, r30 +/* 8000BF84 00008EC4 48 00 2D 99 */ bl mDoExt_createGameHeap +/* 8000BF88 00008EC8 7C 64 1B 78 */ mr r4, r3 +/* 8000BF8C 00008ECC 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000BF90 00008ED0 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000BF94 00008ED4 38 63 02 9C */ addi r3, r3, 0x29c +/* 8000BF98 00008ED8 3C A0 00 45 */ lis r5, 0x0044E000@ha +/* 8000BF9C 00008EDC 38 A5 E0 00 */ addi r5, r5, 0x0044E000@l +/* 8000BFA0 00008EE0 4B FF FD 59 */ bl my_SysPrintHeap +/* 8000BFA4 00008EE4 83 ED 8D F0 */ lwz r31, sSystemHeap__7JKRHeap-_SDA_BASE_(r13) +/* 8000BFA8 00008EE8 7F E3 FB 78 */ mr r3, r31 +/* 8000BFAC 00008EEC 48 2C 27 81 */ bl getFreeSize__7JKRHeapCFv +/* 8000BFB0 00008EF0 3F C3 FF FF */ addis r30, r3, 0xffff +/* 8000BFB4 00008EF4 7F C3 F3 78 */ mr r3, r30 +/* 8000BFB8 00008EF8 7F E4 FB 78 */ mr r4, r31 +/* 8000BFBC 00008EFC 48 00 2D 9D */ bl mDoExt_createZeldaHeap +/* 8000BFC0 00008F00 7C 7F 1B 78 */ mr r31, r3 +/* 8000BFC4 00008F04 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000BFC8 00008F08 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000BFCC 00008F0C 38 63 02 A9 */ addi r3, r3, 0x2a9 +/* 8000BFD0 00008F10 7F E4 FB 78 */ mr r4, r31 +/* 8000BFD4 00008F14 7F C5 F3 78 */ mr r5, r30 +/* 8000BFD8 00008F18 4B FF FD 21 */ bl my_SysPrintHeap +/* 8000BFDC 00008F1C 7F E3 FB 78 */ mr r3, r31 +/* 8000BFE0 00008F20 48 2C 24 59 */ bl becomeCurrentHeap__7JKRHeapFv +/* 8000BFE4 00008F24 38 60 00 00 */ li r3, 0 +/* 8000BFE8 00008F28 38 80 20 00 */ li r4, 0x2000 +/* 8000BFEC 00008F2C 80 AD 8D F0 */ lwz r5, sSystemHeap__7JKRHeap-_SDA_BASE_(r13) +/* 8000BFF0 00008F30 48 2C 80 45 */ bl setTransBuffer__13JKRAramStreamFPUcUlP7JKRHeap +/* 8000BFF4 00008F34 38 60 00 00 */ li r3, 0 +/* 8000BFF8 00008F38 48 2C 5A 1D */ bl createManager__15JKRThreadSwitchFP7JKRHeap +/* 8000BFFC 00008F3C 38 60 00 7C */ li r3, 0x7c +/* 8000C000 00008F40 48 2C 2C 4D */ bl __nw__FUl +/* 8000C004 00008F44 7C 7F 1B 79 */ or. r31, r3, r3 +/* 8000C008 00008F48 41 82 00 18 */ beq lbl_8000C020 +/* 8000C00C 00008F4C 48 33 4C 79 */ bl OSGetCurrentThread +/* 8000C010 00008F50 7C 64 1B 78 */ mr r4, r3 +/* 8000C014 00008F54 7F E3 FB 78 */ mr r3, r31 +/* 8000C018 00008F58 38 A0 00 00 */ li r5, 0 +/* 8000C01C 00008F5C 48 2C 56 9D */ bl __ct__9JKRThreadFP8OSThreadi +lbl_8000C020: +/* 8000C020 00008F60 80 6D 8C 38 */ lwz r3, lbl_804511B8-_SDA_BASE_(r13) +/* 8000C024 00008F64 38 00 00 03 */ li r0, 3 +/* 8000C028 00008F68 90 03 00 58 */ stw r0, 0x58(r3) +/* 8000C02C 00008F6C 38 00 00 10 */ li r0, 0x10 +/* 8000C030 00008F70 90 03 00 40 */ stw r0, 0x40(r3) +/* 8000C034 00008F74 38 00 00 2A */ li r0, 0x2a +/* 8000C038 00008F78 90 03 00 44 */ stw r0, 0x44(r3) +/* 8000C03C 00008F7C 3C 60 80 37 */ lis r3, lbl_80373DE8@ha +/* 8000C040 00008F80 38 63 3D E8 */ addi r3, r3, lbl_80373DE8@l +/* 8000C044 00008F84 38 63 02 B6 */ addi r3, r3, 0x2b6 +/* 8000C048 00008F88 48 2D 7A C5 */ bl JUTException_NS_appendMapFile +/*.global myExceptionCallback*/ +/* 8000C04C 00008F8C 3C 60 80 01 */ lis r3, myExceptionCallback@ha +/*.global myExceptionCallback*/ +/* 8000C050 00008F90 38 63 B7 C8 */ addi r3, r3, myExceptionCallback@l +/* 8000C054 00008F94 48 2D 7A 99 */ bl JUTException_NS_setPreUserCallback +/*.global fault_callback_scroll*/ +/* 8000C058 00008F98 3C 60 80 01 */ lis r3, fault_callback_scroll@ha +/*.global fault_callback_scroll*/ +/* 8000C05C 00008F9C 38 63 B9 5C */ addi r3, r3, fault_callback_scroll@l +/* 8000C060 00008FA0 48 2D 7A 9D */ bl JUTException_NS_setPostUserCallback +/* 8000C064 00008FA4 48 00 2D 1D */ bl mDoExt_getZeldaHeap +/* 8000C068 00008FA8 48 25 71 B9 */ bl init__3cMlFP7JKRHeap +/* 8000C06C 00008FAC 38 60 00 64 */ li r3, 0x64 +/* 8000C070 00008FB0 38 80 00 64 */ li r4, 0x64 +/* 8000C074 00008FB4 38 A0 00 64 */ li r5, 0x64 +/* 8000C078 00008FB8 48 25 B7 E5 */ bl cM_initRnd__Fiii +/* 8000C07C 00008FBC 38 00 40 00 */ li r0, 0x4000 +/* 8000C080 00008FC0 90 0D 83 4C */ stw r0, lbl_804508CC-_SDA_BASE_(r13) +/* 8000C084 00008FC4 90 0D 83 54 */ stw r0, lbl_804508D4-_SDA_BASE_(r13) +/* 8000C088 00008FC8 38 00 20 00 */ li r0, 0x2000 +/* 8000C08C 00008FCC 90 0D 83 38 */ stw r0, sSZSBufferSize__7JKRAram-_SDA_BASE_(r13) +/* 8000C090 00008FD0 48 33 4B F5 */ bl OSGetCurrentThread +/* 8000C094 00008FD4 48 33 5D C9 */ bl OSGetThreadPriority +/* 8000C098 00008FD8 38 63 FF FE */ addi r3, r3, -2 +/* 8000C09C 00008FDC 48 00 97 BD */ bl mDoDvdThd_NS_create +/* 8000C0A0 00008FE0 48 00 A4 FD */ bl mDoDvdErr_ThdInit +/* 8000C0A4 00008FE4 3C 60 80 3F */ lis r3, lbl_803EAF40@ha +/* 8000C0A8 00008FE8 38 63 AF 40 */ addi r3, r3, lbl_803EAF40@l +/* 8000C0AC 00008FEC 48 00 A6 85 */ bl mDoMemCd_Ctrl_c_NS_ThdInit +/* 8000C0B0 00008FF0 38 60 00 01 */ li r3, 1 +/* 8000C0B4 00008FF4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 8000C0B8 00008FF8 83 C1 00 08 */ lwz r30, 8(r1) +/* 8000C0BC 00008FFC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000C0C0 00009000 7C 08 03 A6 */ mtlr r0 +/* 8000C0C4 00009004 38 21 00 10 */ addi r1, r1, 0x10 +/* 8000C0C8 00009008 4E 80 00 20 */ blr diff --git a/obj_files.mk b/obj_files.mk index 1ee36e83993..20a404ac9dc 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -24,7 +24,7 @@ TEXT_O_FILES := \ $(BUILD_DIR)/asm/m/Do/m_Do_graphic.o \ $(BUILD_DIR)/asm/rodata/rodata_m_Do_machine.o \ $(BUILD_DIR)/asm/sdata2/m_Do_machine.o \ - $(BUILD_DIR)/asm/m/Do/m_Do_machine.o \ + $(BUILD_DIR)/src/m_Do/m_Do_machine.o \ $(BUILD_DIR)/asm/sdata2/m_Do_mtx.o \ $(BUILD_DIR)/asm/m/Do/m_Do_mtx.o \ $(BUILD_DIR)/asm/rodata/rodata_m_Do_ext.o \ diff --git a/src/m_Do/m_Do_machine.cpp b/src/m_Do/m_Do_machine.cpp index 4bf93c8658d..094309a8a38 100644 --- a/src/m_Do/m_Do_machine.cpp +++ b/src/m_Do/m_Do_machine.cpp @@ -1 +1,215 @@ -// ok +/* m_Do_machine.cpp autogenerated by split.py v0.4 at 2021-01-31 21:09:47.100423 */ + +#include "global.h" +#include "m_Do/m_Do_Reset/m_Do_Reset.h" + +// additional symbols needed for m_Do_machine.cpp +// autogenerated by split.py v0.4 at 2021-01-31 21:09:47.100480 +extern "C" { +void JFWSystem_NS_firstInit(void); +void JFWSystem_NS_init(void); +void JUTAssertion_NS_setVisible(void); +void JUTConsoleManager_NS_drawDirect(void); +void JUTConsoleManager_NS_setDirectConsole(void); +void JUTConsole_NS_getLineOffset(void); +void JUTConsole_NS_getUsedLine(void); +void JUTConsole_NS_print(void); +void JUTConsole_NS_print_f(void); +void JUTConsole_NS_scroll(void); +void JUTDbPrint_NS_start(void); +void JUTException_NS_appendMapFile(void); +void JUTException_NS_isEnablePad(void); +void JUTException_NS_readPad(void); +void JUTException_NS_setPostUserCallback(void); +void JUTException_NS_setPreUserCallback(void); +void JUTException_NS_waitTime(void); +void JUTVideo_NS_destroyManager(void); +void OSSetProgressiveMode(void); +void OSGetProgressiveMode(void); +void PPCHalt(void); +void VIFlush(void); +void VIGetDTVStatus(void); +void VIGetRetraceCount(void); +void VISetBlack(void); +void __ct__10JUTGamePadFQ210JUTGamePad8EPadPort(void); +void __ct__9JKRThreadFP8OSThreadi(void); +void __dt__10JUTGamePadFv(void); +void __nw__FUl(void); +void _restgpr_28(void); +void _savegpr_28(void); +void becomeCurrentHeap__7JKRHeapFv(void); +void cAPICPad_recalibrate__Fv(void); +void cM_initRnd__Fiii(void); +void createManager__15JKRThreadSwitchFP7JKRHeap(void); +void developKeyCheck(void); +void exceptionReadPad(void); +void exceptionRestart(void); +void exception_addition(void); +void fault_callback_scroll(void); +void getFreeSize__7JKRHeapCFv(void); +void getTotalFreeSize__7JKRHeapCFv(void); +void init__3cMlFP7JKRHeap(void); +void mDoDvdErr_ThdInit(void); +void mDoDvdThd_NS_create(void); +void mDoExt_createArchiveHeap(void); +void mDoExt_createAssertHeap(void); +void mDoExt_createCommandHeap(void); +void mDoExt_createDbPrintHeap(void); +void mDoExt_createGameHeap(void); +void mDoExt_createJ2dHeap(void); +void mDoExt_createZeldaHeap(void); +void mDoExt_getArchiveHeap(void); +void mDoExt_getCommandHeap(void); +void mDoExt_getDbPrintHeap(void); +void mDoExt_getGameHeap(void); +void mDoExt_getJ2dHeap(void); +void mDoExt_getZeldaHeap(void); +void mDoMch_Create(void); +void mDoMch_HeapCheckAll(void); +void mDoMch_IsProgressiveMode(void); +void mDoMemCd_Ctrl_c_NS_ThdInit(void); +void mDoRst_reset__FiUli(void); +void myExceptionCallback(void); +void myGetHeapTypeByString(void); +void myHeapCheckRecursive(void); +void myMemoryErrorRoutine(void); +void my_PrintHeap(void); +void my_SysPrintHeap(void); +void setErrorFlag__7JKRHeapFb(void); +void setErrorHandler__7JKRHeapFPFP7JKRHeapUli_v(void); +void setTransBuffer__13JKRAramStreamFPUcUlP7JKRHeap(void); +} + +// additional symbols needed for m_Do_machine.cpp +// autogenerated by split.py v0.4 at 2021-01-31 21:09:47.100485 +extern u8 lbl_80373DE8; +extern u8 lbl_803A2F9C; +extern u8 lbl_80450584; +extern u8 lbl_804505A0; +extern u8 lbl_80450770; +extern u8 lbl_80450774; +extern u8 lbl_80450778; +extern u8 lbl_8045077C; +extern u8 lbl_80450780; +extern u8 lbl_80450794; +extern u8 lbl_804508CC; +extern u8 lbl_804508D4; +extern u8 lbl_80450B10; +extern u8 lbl_80450B14; +extern u8 lbl_80450BF0; +extern u8 lbl_80450BF4; +extern u8 lbl_80450BF8; +extern u8 lbl_80450BFC; +extern u8 lbl_80450C00; +extern u8 lbl_80450C04; +extern u8 lbl_80450C08; +extern u8 lbl_80450C0C; +extern u8 lbl_80450C10; +extern u8 lbl_80450C15; +extern u8 lbl_80450C16; +extern u8 lbl_80450C17; +extern u8 lbl_80450C28; +extern u8 lbl_80450C2C; +extern u8 lbl_80450C30; +extern u8 lbl_80450C34; +extern u8 lbl_804511A4; +extern u8 lbl_804511B8; +extern u8 lbl_804514C8; +extern u8 lbl_80451508; +extern u8 lbl_8045151C; +extern u8 lbl_80451570; +extern u8 lbl_80451B00; +extern u8 lbl_80451B04; + +extern "C" { +// myGetHeapTypeByString__FP7JKRHeap +// myGetHeapTypeByString(JKRHeap*) +asm void myGetHeapTypeByString(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B1EC.s" +} + +// myMemoryErrorRoutine__FPvUli +// myMemoryErrorRoutine(void*, u32, int) +asm void myMemoryErrorRoutine(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B3EC.s" +} + +// myHeapCheckRecursive__FP7JKRHeap +// myHeapCheckRecursive(JKRHeap*) +asm void myHeapCheckRecursive(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B5C8.s" +} + +// mDoMch_HeapCheckAll__Fv +// mDoMch_HeapCheckAll(void) +asm void mDoMch_HeapCheckAll(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B668.s" +} + +// developKeyCheck__FUlUl +// developKeyCheck(u32, u32) +asm void developKeyCheck(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B68C.s" +} + +// mDoMch_IsProgressiveMode__Fv +// mDoMch_IsProgressiveMode(void) +asm void mDoMch_IsProgressiveMode(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B73C.s" +} + +// exceptionReadPad__FPUlPUl +// exceptionReadPad(u32*, u32*) +asm void exceptionReadPad(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B768.s" +} + +// exceptionRestart__Fv +// exceptionRestart(void) +asm void exceptionRestart(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B798.s" +} + +// myExceptionCallback__FUsP9OSContextUlUl +// myExceptionCallback(u16, OSContext*, u32, u32) +asm void myExceptionCallback(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B7C8.s" +} + +// fault_callback_scroll__FUsP9OSContextUlUl +// fault_callback_scroll(u16, OSContext*, u32, u32) +asm void fault_callback_scroll(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000B95C.s" +} + +// my_PrintHeap__FPCcUl +// my_PrintHeap(const s8*, u32) +asm void my_PrintHeap(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000BCF4.s" +} + +// my_SysPrintHeap__FPCcPvUl +// my_SysPrintHeap(const s8*, void*, u32) +asm void my_SysPrintHeap(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000BCF8.s" +} + +// mDoMch_Create__Fv +// mDoMch_Create(void) +asm void mDoMch_Create(void) { + nofralloc +#include "m_Do/m_Do_machine/asm/func_8000BD44.s" +} +};