split and named symbols in text.s (#2)

* split and named symbols in text.s

* Update makefile for better compatiblity
This commit is contained in:
notyouraveragehooman
2020-09-01 20:26:31 -04:00
committed by GitHub
parent c72fc0c64a
commit f61bfb39dd
599 changed files with 993262 additions and 986329 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+176
View File
@@ -0,0 +1,176 @@
.include "macros.inc"
.section .text, "ax" # 802d3304
.global JKRAramBlock
JKRAramBlock:
/* 802D3304 002D0244 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D3308 002D0248 7C 08 02 A6 */ mflr r0
/* 802D330C 002D024C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D3310 002D0250 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3314 002D0254 48 08 EE BD */ bl func_803621D0
/* 802D3318 002D0258 7C 7A 1B 78 */ mr r26, r3
/* 802D331C 002D025C 7C 9B 23 78 */ mr r27, r4
/* 802D3320 002D0260 7C BC 2B 78 */ mr r28, r5
/* 802D3324 002D0264 7C DD 33 78 */ mr r29, r6
/* 802D3328 002D0268 7C FE 3B 78 */ mr r30, r7
/* 802D332C 002D026C 7D 1F 43 78 */ mr r31, r8
/* 802D3330 002D0270 3C 60 80 3D */ lis r3, lbl_803CC178@ha
/* 802D3334 002D0274 38 03 C1 78 */ addi r0, r3, lbl_803CC178@l
/* 802D3338 002D0278 90 1A 00 00 */ stw r0, 0(r26)
/* 802D333C 002D027C 38 7A 00 04 */ addi r3, r26, 4
/* 802D3340 002D0280 7F 44 D3 78 */ mr r4, r26
/* 802D3344 002D0284 48 00 8A B9 */ bl JSUPtrLink
/* 802D3348 002D0288 93 7A 00 14 */ stw r27, 0x14(r26)
/* 802D334C 002D028C 93 9A 00 18 */ stw r28, 0x18(r26)
/* 802D3350 002D0290 93 BA 00 1C */ stw r29, 0x1c(r26)
/* 802D3354 002D0294 9B DA 00 20 */ stb r30, 0x20(r26)
/* 802D3358 002D0298 9B FA 00 21 */ stb r31, 0x21(r26)
/* 802D335C 002D029C 7F 43 D3 78 */ mr r3, r26
/* 802D3360 002D02A0 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3364 002D02A4 48 08 EE B9 */ bl func_8036221C
/* 802D3368 002D02A8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D336C 002D02AC 7C 08 03 A6 */ mtlr r0
/* 802D3370 002D02B0 38 21 00 20 */ addi r1, r1, 0x20
/* 802D3374 002D02B4 4E 80 00 20 */ blr
/* 802D3378 002D02B8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D337C 002D02BC 7C 08 02 A6 */ mflr r0
/* 802D3380 002D02C0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3384 002D02C4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D3388 002D02C8 93 C1 00 08 */ stw r30, 8(r1)
/* 802D338C 002D02CC 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D3390 002D02D0 7C 9F 23 78 */ mr r31, r4
/* 802D3394 002D02D4 41 82 00 84 */ beq lbl_802D3418
/* 802D3398 002D02D8 3C 60 80 3D */ lis r3, lbl_803CC178@ha
/* 802D339C 002D02DC 38 03 C1 78 */ addi r0, r3, lbl_803CC178@l
/* 802D33A0 002D02E0 90 1E 00 00 */ stw r0, 0(r30)
/* 802D33A4 002D02E4 80 7E 00 08 */ lwz r3, 8(r30)
/* 802D33A8 002D02E8 80 9E 00 0C */ lwz r4, 0xc(r30)
/* 802D33AC 002D02EC 28 04 00 00 */ cmplwi r4, 0
/* 802D33B0 002D02F0 41 82 00 2C */ beq lbl_802D33DC
/* 802D33B4 002D02F4 80 C4 00 00 */ lwz r6, 0(r4)
/* 802D33B8 002D02F8 80 A6 00 1C */ lwz r5, 0x1c(r6)
/* 802D33BC 002D02FC 80 9E 00 18 */ lwz r4, 0x18(r30)
/* 802D33C0 002D0300 80 1E 00 1C */ lwz r0, 0x1c(r30)
/* 802D33C4 002D0304 7C 00 2A 14 */ add r0, r0, r5
/* 802D33C8 002D0308 7C 04 02 14 */ add r0, r4, r0
/* 802D33CC 002D030C 90 06 00 1C */ stw r0, 0x1c(r6)
/* 802D33D0 002D0310 38 9E 00 04 */ addi r4, r30, 4
/* 802D33D4 002D0314 48 00 8D 89 */ bl JSUPtrList_NS_remove
/* 802D33D8 002D0318 48 00 00 1C */ b lbl_802D33F4
lbl_802D33DC:
/* 802D33DC 002D031C 80 7E 00 1C */ lwz r3, 0x1c(r30)
/* 802D33E0 002D0320 80 1E 00 18 */ lwz r0, 0x18(r30)
/* 802D33E4 002D0324 7C 03 02 14 */ add r0, r3, r0
/* 802D33E8 002D0328 90 1E 00 1C */ stw r0, 0x1c(r30)
/* 802D33EC 002D032C 38 00 00 00 */ li r0, 0
/* 802D33F0 002D0330 90 1E 00 18 */ stw r0, 0x18(r30)
lbl_802D33F4:
/* 802D33F4 002D0334 34 1E 00 04 */ addic. r0, r30, 4
/* 802D33F8 002D0338 41 82 00 10 */ beq lbl_802D3408
/* 802D33FC 002D033C 38 7E 00 04 */ addi r3, r30, 4
/* 802D3400 002D0340 38 80 00 00 */ li r4, 0
/* 802D3404 002D0344 48 00 8A 11 */ bl JSUPtrLink_NS_dtor
lbl_802D3408:
/* 802D3408 002D0348 7F E0 07 35 */ extsh. r0, r31
/* 802D340C 002D034C 40 81 00 0C */ ble lbl_802D3418
/* 802D3410 002D0350 7F C3 F3 78 */ mr r3, r30
/* 802D3414 002D0354 4B FF B9 29 */ bl __dl
lbl_802D3418:
/* 802D3418 002D0358 7F C3 F3 78 */ mr r3, r30
/* 802D341C 002D035C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3420 002D0360 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D3424 002D0364 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3428 002D0368 7C 08 03 A6 */ mtlr r0
/* 802D342C 002D036C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3430 002D0370 4E 80 00 20 */ blr
.global JKRAramBlock_NS_allocHead
JKRAramBlock_NS_allocHead:
/* 802D3434 002D0374 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D3438 002D0378 7C 08 02 A6 */ mflr r0
/* 802D343C 002D037C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D3440 002D0380 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3444 002D0384 48 08 ED 8D */ bl func_803621D0
/* 802D3448 002D0388 7C 7A 1B 78 */ mr r26, r3
/* 802D344C 002D038C 7C 9B 23 78 */ mr r27, r4
/* 802D3450 002D0390 7C BC 2B 78 */ mr r28, r5
/* 802D3454 002D0394 80 63 00 14 */ lwz r3, 0x14(r3)
/* 802D3458 002D0398 80 1A 00 18 */ lwz r0, 0x18(r26)
/* 802D345C 002D039C 7F C3 02 14 */ add r30, r3, r0
/* 802D3460 002D03A0 80 1A 00 1C */ lwz r0, 0x1c(r26)
/* 802D3464 002D03A4 7F BB 00 50 */ subf r29, r27, r0
/* 802D3468 002D03A8 38 60 00 24 */ li r3, 0x24
/* 802D346C 002D03AC 80 86 00 30 */ lwz r4, 0x30(r6)
/* 802D3470 002D03B0 38 A0 00 00 */ li r5, 0
/* 802D3474 002D03B4 4B FF B8 25 */ bl __nw_X2_
/* 802D3478 002D03B8 7C 7F 1B 79 */ or. r31, r3, r3
/* 802D347C 002D03BC 41 82 00 20 */ beq lbl_802D349C
/* 802D3480 002D03C0 7F C4 F3 78 */ mr r4, r30
/* 802D3484 002D03C4 7F 65 DB 78 */ mr r5, r27
/* 802D3488 002D03C8 7F A6 EB 78 */ mr r6, r29
/* 802D348C 002D03CC 7F 87 E3 78 */ mr r7, r28
/* 802D3490 002D03D0 39 00 00 00 */ li r8, 0
/* 802D3494 002D03D4 4B FF FE 71 */ bl JKRAramBlock
/* 802D3498 002D03D8 7C 7F 1B 78 */ mr r31, r3
lbl_802D349C:
/* 802D349C 002D03DC 38 00 00 00 */ li r0, 0
/* 802D34A0 002D03E0 90 1A 00 1C */ stw r0, 0x1c(r26)
/* 802D34A4 002D03E4 80 9A 00 10 */ lwz r4, 0x10(r26)
/* 802D34A8 002D03E8 80 7A 00 08 */ lwz r3, 8(r26)
/* 802D34AC 002D03EC 38 BF 00 04 */ addi r5, r31, 4
/* 802D34B0 002D03F0 48 00 8B E5 */ bl JSUPtrList_NS_insert
/* 802D34B4 002D03F4 7F E3 FB 78 */ mr r3, r31
/* 802D34B8 002D03F8 39 61 00 20 */ addi r11, r1, 0x20
/* 802D34BC 002D03FC 48 08 ED 61 */ bl func_8036221C
/* 802D34C0 002D0400 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D34C4 002D0404 7C 08 03 A6 */ mtlr r0
/* 802D34C8 002D0408 38 21 00 20 */ addi r1, r1, 0x20
/* 802D34CC 002D040C 4E 80 00 20 */ blr
.global JKRAramBlock_NS_allocTail
JKRAramBlock_NS_allocTail:
/* 802D34D0 002D0410 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D34D4 002D0414 7C 08 02 A6 */ mflr r0
/* 802D34D8 002D0418 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D34DC 002D041C 39 61 00 20 */ addi r11, r1, 0x20
/* 802D34E0 002D0420 48 08 EC F5 */ bl func_803621D4
/* 802D34E4 002D0424 7C 7B 1B 78 */ mr r27, r3
/* 802D34E8 002D0428 7C 9C 23 78 */ mr r28, r4
/* 802D34EC 002D042C 7C BD 2B 78 */ mr r29, r5
/* 802D34F0 002D0430 80 83 00 1C */ lwz r4, 0x1c(r3)
/* 802D34F4 002D0434 80 63 00 14 */ lwz r3, 0x14(r3)
/* 802D34F8 002D0438 80 1B 00 18 */ lwz r0, 0x18(r27)
/* 802D34FC 002D043C 7C 00 22 14 */ add r0, r0, r4
/* 802D3500 002D0440 7C 03 02 14 */ add r0, r3, r0
/* 802D3504 002D0444 7F DC 00 50 */ subf r30, r28, r0
/* 802D3508 002D0448 38 60 00 24 */ li r3, 0x24
/* 802D350C 002D044C 80 86 00 30 */ lwz r4, 0x30(r6)
/* 802D3510 002D0450 38 A0 00 00 */ li r5, 0
/* 802D3514 002D0454 4B FF B7 85 */ bl __nw_X2_
/* 802D3518 002D0458 7C 7F 1B 79 */ or. r31, r3, r3
/* 802D351C 002D045C 41 82 00 20 */ beq lbl_802D353C
/* 802D3520 002D0460 7F C4 F3 78 */ mr r4, r30
/* 802D3524 002D0464 7F 85 E3 78 */ mr r5, r28
/* 802D3528 002D0468 38 C0 00 00 */ li r6, 0
/* 802D352C 002D046C 7F A7 EB 78 */ mr r7, r29
/* 802D3530 002D0470 39 00 00 01 */ li r8, 1
/* 802D3534 002D0474 4B FF FD D1 */ bl JKRAramBlock
/* 802D3538 002D0478 7C 7F 1B 78 */ mr r31, r3
lbl_802D353C:
/* 802D353C 002D047C 80 1B 00 1C */ lwz r0, 0x1c(r27)
/* 802D3540 002D0480 7C 1C 00 50 */ subf r0, r28, r0
/* 802D3544 002D0484 90 1B 00 1C */ stw r0, 0x1c(r27)
/* 802D3548 002D0488 80 9B 00 10 */ lwz r4, 0x10(r27)
/* 802D354C 002D048C 80 7B 00 08 */ lwz r3, 8(r27)
/* 802D3550 002D0490 38 BF 00 04 */ addi r5, r31, 4
/* 802D3554 002D0494 48 00 8B 41 */ bl JSUPtrList_NS_insert
/* 802D3558 002D0498 7F E3 FB 78 */ mr r3, r31
/* 802D355C 002D049C 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3560 002D04A0 48 08 EC C1 */ bl func_80362220
/* 802D3564 002D04A4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D3568 002D04A8 7C 08 03 A6 */ mtlr r0
/* 802D356C 002D04AC 38 21 00 20 */ addi r1, r1, 0x20
/* 802D3570 002D04B0 4E 80 00 20 */ blr
+360
View File
@@ -0,0 +1,360 @@
.include "macros.inc"
.section .text, "ax" # 802d2e44
.global JKRAramHeap
JKRAramHeap:
/* 802D2E44 002CFD84 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D2E48 002CFD88 7C 08 02 A6 */ mflr r0
/* 802D2E4C 002CFD8C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D2E50 002CFD90 39 61 00 20 */ addi r11, r1, 0x20
/* 802D2E54 002CFD94 48 08 F3 89 */ bl func_803621DC
/* 802D2E58 002CFD98 7C 7D 1B 78 */ mr r29, r3
/* 802D2E5C 002CFD9C 7C 9E 23 78 */ mr r30, r4
/* 802D2E60 002CFDA0 7C BF 2B 78 */ mr r31, r5
/* 802D2E64 002CFDA4 4B FF E6 19 */ bl JKRDisposer
/* 802D2E68 002CFDA8 3C 60 80 3D */ lis r3, lbl_803CC168@ha
/* 802D2E6C 002CFDAC 38 03 C1 68 */ addi r0, r3, lbl_803CC168@l
/* 802D2E70 002CFDB0 90 1D 00 00 */ stw r0, 0(r29)
/* 802D2E74 002CFDB4 38 7D 00 18 */ addi r3, r29, 0x18
/* 802D2E78 002CFDB8 48 06 C1 91 */ bl OSInitMutex
/* 802D2E7C 002CFDBC 7F A3 EB 78 */ mr r3, r29
/* 802D2E80 002CFDC0 4B FF B9 BD */ bl JKRHeap_NS_findFromRoot
/* 802D2E84 002CFDC4 90 7D 00 30 */ stw r3, 0x30(r29)
/* 802D2E88 002CFDC8 57 E0 00 34 */ rlwinm r0, r31, 0, 0, 0x1a
/* 802D2E8C 002CFDCC 90 1D 00 3C */ stw r0, 0x3c(r29)
/* 802D2E90 002CFDD0 38 1E 00 1F */ addi r0, r30, 0x1f
/* 802D2E94 002CFDD4 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
/* 802D2E98 002CFDD8 90 1D 00 34 */ stw r0, 0x34(r29)
/* 802D2E9C 002CFDDC 80 7D 00 34 */ lwz r3, 0x34(r29)
/* 802D2EA0 002CFDE0 80 1D 00 3C */ lwz r0, 0x3c(r29)
/* 802D2EA4 002CFDE4 7C 03 02 14 */ add r0, r3, r0
/* 802D2EA8 002CFDE8 90 1D 00 38 */ stw r0, 0x38(r29)
/* 802D2EAC 002CFDEC 38 00 00 FF */ li r0, 0xff
/* 802D2EB0 002CFDF0 98 1D 00 40 */ stb r0, 0x40(r29)
/* 802D2EB4 002CFDF4 38 60 00 24 */ li r3, 0x24
/* 802D2EB8 002CFDF8 80 9D 00 30 */ lwz r4, 0x30(r29)
/* 802D2EBC 002CFDFC 38 A0 00 00 */ li r5, 0
/* 802D2EC0 002CFE00 4B FF BD D9 */ bl __nw_X2_
/* 802D2EC4 002CFE04 7C 64 1B 79 */ or. r4, r3, r3
/* 802D2EC8 002CFE08 41 82 00 20 */ beq lbl_802D2EE8
/* 802D2ECC 002CFE0C 80 9D 00 34 */ lwz r4, 0x34(r29)
/* 802D2ED0 002CFE10 38 A0 00 00 */ li r5, 0
/* 802D2ED4 002CFE14 80 DD 00 3C */ lwz r6, 0x3c(r29)
/* 802D2ED8 002CFE18 38 E0 00 FF */ li r7, 0xff
/* 802D2EDC 002CFE1C 39 00 00 00 */ li r8, 0
/* 802D2EE0 002CFE20 48 00 04 25 */ bl JKRAramBlock
/* 802D2EE4 002CFE24 7C 64 1B 78 */ mr r4, r3
lbl_802D2EE8:
/* 802D2EE8 002CFE28 3C 60 80 43 */ lis r3, lbl_8043430C@ha
/* 802D2EEC 002CFE2C 38 63 43 0C */ addi r3, r3, lbl_8043430C@l
/* 802D2EF0 002CFE30 38 84 00 04 */ addi r4, r4, 4
/* 802D2EF4 002CFE34 48 00 90 59 */ bl JSUPtrList_NS_append
/* 802D2EF8 002CFE38 7F A3 EB 78 */ mr r3, r29
/* 802D2EFC 002CFE3C 39 61 00 20 */ addi r11, r1, 0x20
/* 802D2F00 002CFE40 48 08 F3 29 */ bl func_80362228
/* 802D2F04 002CFE44 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D2F08 002CFE48 7C 08 03 A6 */ mtlr r0
/* 802D2F0C 002CFE4C 38 21 00 20 */ addi r1, r1, 0x20
/* 802D2F10 002CFE50 4E 80 00 20 */ blr
/* 802D2F14 002CFE54 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D2F18 002CFE58 7C 08 02 A6 */ mflr r0
/* 802D2F1C 002CFE5C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D2F20 002CFE60 39 61 00 20 */ addi r11, r1, 0x20
/* 802D2F24 002CFE64 48 08 F2 B9 */ bl func_803621DC
/* 802D2F28 002CFE68 7C 7D 1B 79 */ or. r29, r3, r3
/* 802D2F2C 002CFE6C 7C 9E 23 78 */ mr r30, r4
/* 802D2F30 002CFE70 41 82 00 70 */ beq lbl_802D2FA0
/* 802D2F34 002CFE74 3C 60 80 3D */ lis r3, lbl_803CC168@ha
/* 802D2F38 002CFE78 38 03 C1 68 */ addi r0, r3, lbl_803CC168@l
/* 802D2F3C 002CFE7C 90 1D 00 00 */ stw r0, 0(r29)
/* 802D2F40 002CFE80 3C 60 80 43 */ lis r3, lbl_8043430C@ha
/* 802D2F44 002CFE84 83 E3 43 0C */ lwz r31, lbl_8043430C@l(r3)
/* 802D2F48 002CFE88 48 00 00 34 */ b lbl_802D2F7C
lbl_802D2F4C:
/* 802D2F4C 002CFE8C 93 E1 00 08 */ stw r31, 8(r1)
/* 802D2F50 002CFE90 83 FF 00 0C */ lwz r31, 0xc(r31)
/* 802D2F54 002CFE94 80 61 00 08 */ lwz r3, 8(r1)
/* 802D2F58 002CFE98 90 61 00 0C */ stw r3, 0xc(r1)
/* 802D2F5C 002CFE9C 80 63 00 00 */ lwz r3, 0(r3)
/* 802D2F60 002CFEA0 28 03 00 00 */ cmplwi r3, 0
/* 802D2F64 002CFEA4 41 82 00 18 */ beq lbl_802D2F7C
/* 802D2F68 002CFEA8 38 80 00 01 */ li r4, 1
/* 802D2F6C 002CFEAC 81 83 00 00 */ lwz r12, 0(r3)
/* 802D2F70 002CFEB0 81 8C 00 08 */ lwz r12, 8(r12)
/* 802D2F74 002CFEB4 7D 89 03 A6 */ mtctr r12
/* 802D2F78 002CFEB8 4E 80 04 21 */ bctrl
lbl_802D2F7C:
/* 802D2F7C 002CFEBC 28 1F 00 00 */ cmplwi r31, 0
/* 802D2F80 002CFEC0 40 82 FF CC */ bne lbl_802D2F4C
/* 802D2F84 002CFEC4 7F A3 EB 78 */ mr r3, r29
/* 802D2F88 002CFEC8 38 80 00 00 */ li r4, 0
/* 802D2F8C 002CFECC 4B FF E5 59 */ bl JKRDisposer_NS_dtor
/* 802D2F90 002CFED0 7F C0 07 35 */ extsh. r0, r30
/* 802D2F94 002CFED4 40 81 00 0C */ ble lbl_802D2FA0
/* 802D2F98 002CFED8 7F A3 EB 78 */ mr r3, r29
/* 802D2F9C 002CFEDC 4B FF BD A1 */ bl __dl
lbl_802D2FA0:
/* 802D2FA0 002CFEE0 7F A3 EB 78 */ mr r3, r29
/* 802D2FA4 002CFEE4 39 61 00 20 */ addi r11, r1, 0x20
/* 802D2FA8 002CFEE8 48 08 F2 81 */ bl func_80362228
/* 802D2FAC 002CFEEC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D2FB0 002CFEF0 7C 08 03 A6 */ mtlr r0
/* 802D2FB4 002CFEF4 38 21 00 20 */ addi r1, r1, 0x20
/* 802D2FB8 002CFEF8 4E 80 00 20 */ blr
.global JKRAramHeap_NS_alloc
JKRAramHeap_NS_alloc:
/* 802D2FBC 002CFEFC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D2FC0 002CFF00 7C 08 02 A6 */ mflr r0
/* 802D2FC4 002CFF04 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D2FC8 002CFF08 39 61 00 20 */ addi r11, r1, 0x20
/* 802D2FCC 002CFF0C 48 08 F2 11 */ bl func_803621DC
/* 802D2FD0 002CFF10 7C 7D 1B 78 */ mr r29, r3
/* 802D2FD4 002CFF14 7C 9E 23 78 */ mr r30, r4
/* 802D2FD8 002CFF18 7C BF 2B 78 */ mr r31, r5
/* 802D2FDC 002CFF1C 38 7D 00 18 */ addi r3, r29, 0x18
/* 802D2FE0 002CFF20 48 06 C0 61 */ bl OSLockMutex
/* 802D2FE4 002CFF24 2C 1F 00 00 */ cmpwi r31, 0
/* 802D2FE8 002CFF28 40 82 00 18 */ bne lbl_802D3000
/* 802D2FEC 002CFF2C 7F A3 EB 78 */ mr r3, r29
/* 802D2FF0 002CFF30 7F C4 F3 78 */ mr r4, r30
/* 802D2FF4 002CFF34 48 00 00 41 */ bl JKRAramHeap_NS_allocFromHead
/* 802D2FF8 002CFF38 7C 7F 1B 78 */ mr r31, r3
/* 802D2FFC 002CFF3C 48 00 00 14 */ b lbl_802D3010
lbl_802D3000:
/* 802D3000 002CFF40 7F A3 EB 78 */ mr r3, r29
/* 802D3004 002CFF44 7F C4 F3 78 */ mr r4, r30
/* 802D3008 002CFF48 48 00 00 B5 */ bl JKRAramHeap_NS_allocFromTail
/* 802D300C 002CFF4C 7C 7F 1B 78 */ mr r31, r3
lbl_802D3010:
/* 802D3010 002CFF50 38 7D 00 18 */ addi r3, r29, 0x18
/* 802D3014 002CFF54 48 06 C1 09 */ bl OSUnlockMutex
/* 802D3018 002CFF58 7F E3 FB 78 */ mr r3, r31
/* 802D301C 002CFF5C 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3020 002CFF60 48 08 F2 09 */ bl func_80362228
/* 802D3024 002CFF64 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D3028 002CFF68 7C 08 03 A6 */ mtlr r0
/* 802D302C 002CFF6C 38 21 00 20 */ addi r1, r1, 0x20
/* 802D3030 002CFF70 4E 80 00 20 */ blr
.global JKRAramHeap_NS_allocFromHead
JKRAramHeap_NS_allocFromHead:
/* 802D3034 002CFF74 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3038 002CFF78 7C 08 02 A6 */ mflr r0
/* 802D303C 002CFF7C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3040 002CFF80 7C 66 1B 78 */ mr r6, r3
/* 802D3044 002CFF84 38 04 00 1F */ addi r0, r4, 0x1f
/* 802D3048 002CFF88 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a
/* 802D304C 002CFF8C 39 00 FF FF */ li r8, -1
/* 802D3050 002CFF90 38 60 00 00 */ li r3, 0
/* 802D3054 002CFF94 3C A0 80 43 */ lis r5, lbl_8043430C@ha
/* 802D3058 002CFF98 80 E5 43 0C */ lwz r7, lbl_8043430C@l(r5)
/* 802D305C 002CFF9C 48 00 00 30 */ b lbl_802D308C
lbl_802D3060:
/* 802D3060 002CFFA0 80 A7 00 00 */ lwz r5, 0(r7)
/* 802D3064 002CFFA4 80 05 00 1C */ lwz r0, 0x1c(r5)
/* 802D3068 002CFFA8 7C 00 20 40 */ cmplw r0, r4
/* 802D306C 002CFFAC 41 80 00 1C */ blt lbl_802D3088
/* 802D3070 002CFFB0 7C 08 00 40 */ cmplw r8, r0
/* 802D3074 002CFFB4 40 81 00 14 */ ble lbl_802D3088
/* 802D3078 002CFFB8 7C 08 03 78 */ mr r8, r0
/* 802D307C 002CFFBC 7C A3 2B 78 */ mr r3, r5
/* 802D3080 002CFFC0 7C 00 20 40 */ cmplw r0, r4
/* 802D3084 002CFFC4 41 82 00 10 */ beq lbl_802D3094
lbl_802D3088:
/* 802D3088 002CFFC8 80 E7 00 0C */ lwz r7, 0xc(r7)
lbl_802D308C:
/* 802D308C 002CFFCC 28 07 00 00 */ cmplwi r7, 0
/* 802D3090 002CFFD0 40 82 FF D0 */ bne lbl_802D3060
lbl_802D3094:
/* 802D3094 002CFFD4 28 03 00 00 */ cmplwi r3, 0
/* 802D3098 002CFFD8 41 82 00 10 */ beq lbl_802D30A8
/* 802D309C 002CFFDC 88 A6 00 40 */ lbz r5, 0x40(r6)
/* 802D30A0 002CFFE0 48 00 03 95 */ bl JKRAramBlock_NS_allocHead
/* 802D30A4 002CFFE4 48 00 00 08 */ b lbl_802D30AC
lbl_802D30A8:
/* 802D30A8 002CFFE8 38 60 00 00 */ li r3, 0
lbl_802D30AC:
/* 802D30AC 002CFFEC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D30B0 002CFFF0 7C 08 03 A6 */ mtlr r0
/* 802D30B4 002CFFF4 38 21 00 10 */ addi r1, r1, 0x10
/* 802D30B8 002CFFF8 4E 80 00 20 */ blr
.global JKRAramHeap_NS_allocFromTail
JKRAramHeap_NS_allocFromTail:
/* 802D30BC 002CFFFC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D30C0 002D0000 7C 08 02 A6 */ mflr r0
/* 802D30C4 002D0004 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D30C8 002D0008 7C 66 1B 78 */ mr r6, r3
/* 802D30CC 002D000C 38 04 00 1F */ addi r0, r4, 0x1f
/* 802D30D0 002D0010 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a
/* 802D30D4 002D0014 38 60 00 00 */ li r3, 0
/* 802D30D8 002D0018 3C A0 80 43 */ lis r5, lbl_8043430C@ha
/* 802D30DC 002D001C 38 A5 43 0C */ addi r5, r5, lbl_8043430C@l
/* 802D30E0 002D0020 80 E5 00 04 */ lwz r7, 4(r5)
/* 802D30E4 002D0024 48 00 00 20 */ b lbl_802D3104
lbl_802D30E8:
/* 802D30E8 002D0028 80 A7 00 00 */ lwz r5, 0(r7)
/* 802D30EC 002D002C 80 05 00 1C */ lwz r0, 0x1c(r5)
/* 802D30F0 002D0030 7C 00 20 40 */ cmplw r0, r4
/* 802D30F4 002D0034 41 80 00 0C */ blt lbl_802D3100
/* 802D30F8 002D0038 7C A3 2B 78 */ mr r3, r5
/* 802D30FC 002D003C 48 00 00 10 */ b lbl_802D310C
lbl_802D3100:
/* 802D3100 002D0040 80 E7 00 08 */ lwz r7, 8(r7)
lbl_802D3104:
/* 802D3104 002D0044 28 07 00 00 */ cmplwi r7, 0
/* 802D3108 002D0048 40 82 FF E0 */ bne lbl_802D30E8
lbl_802D310C:
/* 802D310C 002D004C 28 03 00 00 */ cmplwi r3, 0
/* 802D3110 002D0050 41 82 00 10 */ beq lbl_802D3120
/* 802D3114 002D0054 88 A6 00 40 */ lbz r5, 0x40(r6)
/* 802D3118 002D0058 48 00 03 B9 */ bl JKRAramBlock_NS_allocTail
/* 802D311C 002D005C 48 00 00 08 */ b lbl_802D3124
lbl_802D3120:
/* 802D3120 002D0060 38 60 00 00 */ li r3, 0
lbl_802D3124:
/* 802D3124 002D0064 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3128 002D0068 7C 08 03 A6 */ mtlr r0
/* 802D312C 002D006C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3130 002D0070 4E 80 00 20 */ blr
.global JKRAramHeap_NS_getFreeSize
JKRAramHeap_NS_getFreeSize:
/* 802D3134 002D0074 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3138 002D0078 7C 08 02 A6 */ mflr r0
/* 802D313C 002D007C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3140 002D0080 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D3144 002D0084 93 C1 00 08 */ stw r30, 8(r1)
/* 802D3148 002D0088 7C 7E 1B 78 */ mr r30, r3
/* 802D314C 002D008C 3B E0 00 00 */ li r31, 0
/* 802D3150 002D0090 38 7E 00 18 */ addi r3, r30, 0x18
/* 802D3154 002D0094 48 06 BE ED */ bl OSLockMutex
/* 802D3158 002D0098 3C 60 80 43 */ lis r3, lbl_8043430C@ha
/* 802D315C 002D009C 38 63 43 0C */ addi r3, r3, lbl_8043430C@l
/* 802D3160 002D00A0 80 63 00 00 */ lwz r3, 0(r3)
/* 802D3164 002D00A4 48 00 00 1C */ b lbl_802D3180
lbl_802D3168:
/* 802D3168 002D00A8 80 83 00 00 */ lwz r4, 0(r3)
/* 802D316C 002D00AC 80 04 00 1C */ lwz r0, 0x1c(r4)
/* 802D3170 002D00B0 7C 00 F8 40 */ cmplw r0, r31
/* 802D3174 002D00B4 40 81 00 08 */ ble lbl_802D317C
/* 802D3178 002D00B8 7C 1F 03 78 */ mr r31, r0
lbl_802D317C:
/* 802D317C 002D00BC 80 63 00 0C */ lwz r3, 0xc(r3)
lbl_802D3180:
/* 802D3180 002D00C0 28 03 00 00 */ cmplwi r3, 0
/* 802D3184 002D00C4 40 82 FF E4 */ bne lbl_802D3168
/* 802D3188 002D00C8 38 7E 00 18 */ addi r3, r30, 0x18
/* 802D318C 002D00CC 48 06 BF 91 */ bl OSUnlockMutex
/* 802D3190 002D00D0 7F E3 FB 78 */ mr r3, r31
/* 802D3194 002D00D4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3198 002D00D8 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D319C 002D00DC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D31A0 002D00E0 7C 08 03 A6 */ mtlr r0
/* 802D31A4 002D00E4 38 21 00 10 */ addi r1, r1, 0x10
/* 802D31A8 002D00E8 4E 80 00 20 */ blr
.global JKRAramHeap_NS_getTotalFreeSize
JKRAramHeap_NS_getTotalFreeSize:
/* 802D31AC 002D00EC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D31B0 002D00F0 7C 08 02 A6 */ mflr r0
/* 802D31B4 002D00F4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D31B8 002D00F8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D31BC 002D00FC 93 C1 00 08 */ stw r30, 8(r1)
/* 802D31C0 002D0100 7C 7E 1B 78 */ mr r30, r3
/* 802D31C4 002D0104 3B E0 00 00 */ li r31, 0
/* 802D31C8 002D0108 38 7E 00 18 */ addi r3, r30, 0x18
/* 802D31CC 002D010C 48 06 BE 75 */ bl OSLockMutex
/* 802D31D0 002D0110 3C 60 80 43 */ lis r3, lbl_8043430C@ha
/* 802D31D4 002D0114 80 83 43 0C */ lwz r4, lbl_8043430C@l(r3)
/* 802D31D8 002D0118 48 00 00 14 */ b lbl_802D31EC
lbl_802D31DC:
/* 802D31DC 002D011C 80 64 00 00 */ lwz r3, 0(r4)
/* 802D31E0 002D0120 80 03 00 1C */ lwz r0, 0x1c(r3)
/* 802D31E4 002D0124 7F FF 02 14 */ add r31, r31, r0
/* 802D31E8 002D0128 80 84 00 0C */ lwz r4, 0xc(r4)
lbl_802D31EC:
/* 802D31EC 002D012C 28 04 00 00 */ cmplwi r4, 0
/* 802D31F0 002D0130 40 82 FF EC */ bne lbl_802D31DC
/* 802D31F4 002D0134 38 7E 00 18 */ addi r3, r30, 0x18
/* 802D31F8 002D0138 48 06 BF 25 */ bl OSUnlockMutex
/* 802D31FC 002D013C 7F E3 FB 78 */ mr r3, r31
/* 802D3200 002D0140 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3204 002D0144 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D3208 002D0148 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D320C 002D014C 7C 08 03 A6 */ mtlr r0
/* 802D3210 002D0150 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3214 002D0154 4E 80 00 20 */ blr
.global JKRAramHeap_NS_dump
JKRAramHeap_NS_dump:
/* 802D3218 002D0158 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D321C 002D015C 7C 08 02 A6 */ mflr r0
/* 802D3220 002D0160 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3224 002D0164 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D3228 002D0168 7C 7F 1B 78 */ mr r31, r3
/* 802D322C 002D016C 38 7F 00 18 */ addi r3, r31, 0x18
/* 802D3230 002D0170 48 06 BE 11 */ bl OSLockMutex
/* 802D3234 002D0174 3C 60 80 43 */ lis r3, lbl_8043430C@ha
/* 802D3238 002D0178 38 63 43 0C */ addi r3, r3, lbl_8043430C@l
/* 802D323C 002D017C 80 63 00 00 */ lwz r3, 0(r3)
/* 802D3240 002D0180 48 00 00 08 */ b lbl_802D3248
lbl_802D3244:
/* 802D3244 002D0184 80 63 00 0C */ lwz r3, 0xc(r3)
lbl_802D3248:
/* 802D3248 002D0188 28 03 00 00 */ cmplwi r3, 0
/* 802D324C 002D018C 40 82 FF F8 */ bne lbl_802D3244
/* 802D3250 002D0190 38 7F 00 18 */ addi r3, r31, 0x18
/* 802D3254 002D0194 48 06 BE C9 */ bl OSUnlockMutex
/* 802D3258 002D0198 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D325C 002D019C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3260 002D01A0 7C 08 03 A6 */ mtlr r0
/* 802D3264 002D01A4 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3268 002D01A8 4E 80 00 20 */ blr
/* 802D326C 002D01AC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3270 002D01B0 7C 08 02 A6 */ mflr r0
/* 802D3274 002D01B4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3278 002D01B8 3C 60 80 43 */ lis r3, lbl_8043430C@ha
/* 802D327C 002D01BC 38 63 43 0C */ addi r3, r3, lbl_8043430C@l
/* 802D3280 002D01C0 48 00 8C 95 */ bl JSUPtrList_NS_initiate
/* 802D3284 002D01C4 3C 60 80 43 */ lis r3, lbl_8043430C@ha
/* 802D3288 002D01C8 38 63 43 0C */ addi r3, r3, lbl_8043430C@l
.global JSUList_NS_dtor_X5_
/* 802D328C 002D01CC 3C 80 80 2D */ lis r4, JSUList_NS_dtor_X5_@ha
.global JSUList_NS_dtor_X5_
/* 802D3290 002D01D0 38 84 32 B0 */ addi r4, r4, JSUList_NS_dtor_X5_@l
/* 802D3294 002D01D4 3C A0 80 43 */ lis r5, lbl_80434300@ha
/* 802D3298 002D01D8 38 A5 43 00 */ addi r5, r5, lbl_80434300@l
/* 802D329C 002D01DC 48 08 E9 89 */ bl func_80361C24
/* 802D32A0 002D01E0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D32A4 002D01E4 7C 08 03 A6 */ mtlr r0
/* 802D32A8 002D01E8 38 21 00 10 */ addi r1, r1, 0x10
/* 802D32AC 002D01EC 4E 80 00 20 */ blr
.global JSUList_NS_dtor_X5_
JSUList_NS_dtor_X5_:
/* 802D32B0 002D01F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D32B4 002D01F4 7C 08 02 A6 */ mflr r0
/* 802D32B8 002D01F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D32BC 002D01FC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D32C0 002D0200 93 C1 00 08 */ stw r30, 8(r1)
/* 802D32C4 002D0204 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D32C8 002D0208 7C 9F 23 78 */ mr r31, r4
/* 802D32CC 002D020C 41 82 00 1C */ beq lbl_802D32E8
/* 802D32D0 002D0210 38 80 00 00 */ li r4, 0
/* 802D32D4 002D0214 48 00 8B D9 */ bl JSUPtrList_NS_dtor
/* 802D32D8 002D0218 7F E0 07 35 */ extsh. r0, r31
/* 802D32DC 002D021C 40 81 00 0C */ ble lbl_802D32E8
/* 802D32E0 002D0220 7F C3 F3 78 */ mr r3, r30
/* 802D32E4 002D0224 4B FF BA 59 */ bl __dl
lbl_802D32E8:
/* 802D32E8 002D0228 7F C3 F3 78 */ mr r3, r30
/* 802D32EC 002D022C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D32F0 002D0230 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D32F4 002D0234 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D32F8 002D0238 7C 08 03 A6 */ mtlr r0
/* 802D32FC 002D023C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3300 002D0240 4E 80 00 20 */ blr
+428
View File
@@ -0,0 +1,428 @@
.include "macros.inc"
.section .text, "ax" # 802d3574
.global JKRAramPiece_NS_prepareCommand
JKRAramPiece_NS_prepareCommand:
/* 802D3574 002D04B4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D3578 002D04B8 7C 08 02 A6 */ mflr r0
/* 802D357C 002D04BC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D3580 002D04C0 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3584 002D04C4 48 08 EC 4D */ bl func_803621D0
/* 802D3588 002D04C8 7C 7A 1B 78 */ mr r26, r3
/* 802D358C 002D04CC 7C 9B 23 78 */ mr r27, r4
/* 802D3590 002D04D0 7C BC 2B 78 */ mr r28, r5
/* 802D3594 002D04D4 7C DD 33 78 */ mr r29, r6
/* 802D3598 002D04D8 7C FE 3B 78 */ mr r30, r7
/* 802D359C 002D04DC 7D 1F 43 78 */ mr r31, r8
/* 802D35A0 002D04E0 38 60 00 98 */ li r3, 0x98
/* 802D35A4 002D04E4 80 8D 8D F0 */ lwz r4, lbl_80451370-_SDA_BASE_(r13)
/* 802D35A8 002D04E8 38 A0 FF FC */ li r5, -4
/* 802D35AC 002D04EC 4B FF B6 ED */ bl __nw_X2_
/* 802D35B0 002D04F0 7C 64 1B 79 */ or. r4, r3, r3
/* 802D35B4 002D04F4 41 82 00 0C */ beq lbl_802D35C0
/* 802D35B8 002D04F8 48 00 04 35 */ bl JKRAMCommand
/* 802D35BC 002D04FC 7C 64 1B 78 */ mr r4, r3
lbl_802D35C0:
/* 802D35C0 002D0500 93 44 00 40 */ stw r26, 0x40(r4)
/* 802D35C4 002D0504 93 64 00 48 */ stw r27, 0x48(r4)
/* 802D35C8 002D0508 93 84 00 4C */ stw r28, 0x4c(r4)
/* 802D35CC 002D050C 93 C4 00 50 */ stw r30, 0x50(r4)
/* 802D35D0 002D0510 93 A4 00 44 */ stw r29, 0x44(r4)
/* 802D35D4 002D0514 93 E4 00 58 */ stw r31, 0x58(r4)
/* 802D35D8 002D0518 7C 83 23 78 */ mr r3, r4
/* 802D35DC 002D051C 39 61 00 20 */ addi r11, r1, 0x20
/* 802D35E0 002D0520 48 08 EC 3D */ bl func_8036221C
/* 802D35E4 002D0524 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D35E8 002D0528 7C 08 03 A6 */ mtlr r0
/* 802D35EC 002D052C 38 21 00 20 */ addi r1, r1, 0x20
/* 802D35F0 002D0530 4E 80 00 20 */ blr
.global JKRAramPiece_NS_sendCommand
JKRAramPiece_NS_sendCommand:
/* 802D35F4 002D0534 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D35F8 002D0538 7C 08 02 A6 */ mflr r0
/* 802D35FC 002D053C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3600 002D0540 48 00 02 CD */ bl JKRAramPiece_NS_startDMA
/* 802D3604 002D0544 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3608 002D0548 7C 08 03 A6 */ mtlr r0
/* 802D360C 002D054C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3610 002D0550 4E 80 00 20 */ blr
.global JKRAramPiece_NS_orderAsync
JKRAramPiece_NS_orderAsync:
/* 802D3614 002D0554 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802D3618 002D0558 7C 08 02 A6 */ mflr r0
/* 802D361C 002D055C 90 01 00 34 */ stw r0, 0x34(r1)
/* 802D3620 002D0560 39 61 00 30 */ addi r11, r1, 0x30
/* 802D3624 002D0564 48 08 EB A9 */ bl func_803621CC
/* 802D3628 002D0568 7C 7A 1B 78 */ mr r26, r3
/* 802D362C 002D056C 7C 9B 23 78 */ mr r27, r4
/* 802D3630 002D0570 7C BC 2B 78 */ mr r28, r5
/* 802D3634 002D0574 7C DD 33 78 */ mr r29, r6
/* 802D3638 002D0578 7C FE 3B 78 */ mr r30, r7
/* 802D363C 002D057C 7D 1F 43 78 */ mr r31, r8
/* 802D3640 002D0580 3C 60 80 43 */ lis r3, lbl_80434330@ha
/* 802D3644 002D0584 38 63 43 30 */ addi r3, r3, lbl_80434330@l
/* 802D3648 002D0588 48 06 B9 F9 */ bl OSLockMutex
/* 802D364C 002D058C 57 60 06 FF */ clrlwi. r0, r27, 0x1b
/* 802D3650 002D0590 40 82 00 0C */ bne lbl_802D365C
/* 802D3654 002D0594 57 80 06 FF */ clrlwi. r0, r28, 0x1b
/* 802D3658 002D0598 41 82 00 80 */ beq lbl_802D36D8
lbl_802D365C:
/* 802D365C 002D059C 3C 60 80 3A */ lis r3, lbl_8039D0B8@ha
/* 802D3660 002D05A0 38 63 D0 B8 */ addi r3, r3, lbl_8039D0B8@l
/* 802D3664 002D05A4 7F 44 D3 78 */ mr r4, r26
/* 802D3668 002D05A8 4C C6 31 82 */ crclr 6
/* 802D366C 002D05AC 4B D3 34 51 */ bl OSReport
/* 802D3670 002D05B0 3C 60 80 3A */ lis r3, lbl_8039D0B8@ha
/* 802D3674 002D05B4 38 63 D0 B8 */ addi r3, r3, lbl_8039D0B8@l
/* 802D3678 002D05B8 38 63 00 10 */ addi r3, r3, 0x10
/* 802D367C 002D05BC 7F 64 DB 78 */ mr r4, r27
/* 802D3680 002D05C0 4C C6 31 82 */ crclr 6
/* 802D3684 002D05C4 4B D3 34 39 */ bl OSReport
/* 802D3688 002D05C8 3C 60 80 3A */ lis r3, lbl_8039D0B8@ha
/* 802D368C 002D05CC 38 63 D0 B8 */ addi r3, r3, lbl_8039D0B8@l
/* 802D3690 002D05D0 38 63 00 1D */ addi r3, r3, 0x1d
/* 802D3694 002D05D4 7F 84 E3 78 */ mr r4, r28
/* 802D3698 002D05D8 4C C6 31 82 */ crclr 6
/* 802D369C 002D05DC 4B D3 34 21 */ bl OSReport
/* 802D36A0 002D05E0 3C 60 80 3A */ lis r3, lbl_8039D0B8@ha
/* 802D36A4 002D05E4 38 63 D0 B8 */ addi r3, r3, lbl_8039D0B8@l
/* 802D36A8 002D05E8 38 63 00 2F */ addi r3, r3, 0x2f
/* 802D36AC 002D05EC 7F A4 EB 78 */ mr r4, r29
/* 802D36B0 002D05F0 4C C6 31 82 */ crclr 6
/* 802D36B4 002D05F4 4B D3 34 09 */ bl OSReport
/* 802D36B8 002D05F8 3C 60 80 3A */ lis r3, lbl_8039D0B8@ha
/* 802D36BC 002D05FC 38 C3 D0 B8 */ addi r6, r3, lbl_8039D0B8@l
/* 802D36C0 002D0600 38 66 00 3C */ addi r3, r6, 0x3c
/* 802D36C4 002D0604 38 80 00 6C */ li r4, 0x6c
/* 802D36C8 002D0608 38 A6 00 4D */ addi r5, r6, 0x4d
/* 802D36CC 002D060C 38 C6 00 50 */ addi r6, r6, 0x50
/* 802D36D0 002D0610 4C C6 31 82 */ crclr 6
/* 802D36D4 002D0614 48 00 EB 29 */ bl JUTException_NS_panic_f
lbl_802D36D8:
/* 802D36D8 002D0618 38 60 00 08 */ li r3, 8
/* 802D36DC 002D061C 80 8D 8D F0 */ lwz r4, lbl_80451370-_SDA_BASE_(r13)
/* 802D36E0 002D0620 38 A0 FF FC */ li r5, -4
/* 802D36E4 002D0624 4B FF B5 B5 */ bl __nw_X2_
/* 802D36E8 002D0628 7C 79 1B 78 */ mr r25, r3
/* 802D36EC 002D062C 7F 43 D3 78 */ mr r3, r26
/* 802D36F0 002D0630 7F 64 DB 78 */ mr r4, r27
/* 802D36F4 002D0634 7F 85 E3 78 */ mr r5, r28
/* 802D36F8 002D0638 7F A6 EB 78 */ mr r6, r29
/* 802D36FC 002D063C 7F C7 F3 78 */ mr r7, r30
/* 802D3700 002D0640 7F E8 FB 78 */ mr r8, r31
/* 802D3704 002D0644 4B FF FE 71 */ bl JKRAramPiece_NS_prepareCommand
/* 802D3708 002D0648 7C 7A 1B 78 */ mr r26, r3
/* 802D370C 002D064C 38 00 00 01 */ li r0, 1
/* 802D3710 002D0650 90 19 00 00 */ stw r0, 0(r25)
/* 802D3714 002D0654 93 59 00 04 */ stw r26, 4(r25)
/* 802D3718 002D0658 3C 60 80 3D */ lis r3, lbl_803CC138@ha
/* 802D371C 002D065C 38 63 C1 38 */ addi r3, r3, lbl_803CC138@l
/* 802D3720 002D0660 7F 24 CB 78 */ mr r4, r25
/* 802D3724 002D0664 38 A0 00 01 */ li r5, 1
/* 802D3728 002D0668 48 06 B2 CD */ bl OSSendMessage
/* 802D372C 002D066C 80 1A 00 58 */ lwz r0, 0x58(r26)
/* 802D3730 002D0670 28 00 00 00 */ cmplwi r0, 0
/* 802D3734 002D0674 41 82 00 14 */ beq lbl_802D3748
/* 802D3738 002D0678 3C 60 80 43 */ lis r3, lbl_80434324@ha
/* 802D373C 002D067C 38 63 43 24 */ addi r3, r3, lbl_80434324@l
/* 802D3740 002D0680 38 9A 00 20 */ addi r4, r26, 0x20
/* 802D3744 002D0684 48 00 88 09 */ bl JSUPtrList_NS_append
lbl_802D3748:
/* 802D3748 002D0688 3C 60 80 43 */ lis r3, lbl_80434330@ha
/* 802D374C 002D068C 38 63 43 30 */ addi r3, r3, lbl_80434330@l
/* 802D3750 002D0690 48 06 B9 CD */ bl OSUnlockMutex
/* 802D3754 002D0694 7F 43 D3 78 */ mr r3, r26
/* 802D3758 002D0698 39 61 00 30 */ addi r11, r1, 0x30
/* 802D375C 002D069C 48 08 EA BD */ bl func_80362218
/* 802D3760 002D06A0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802D3764 002D06A4 7C 08 03 A6 */ mtlr r0
/* 802D3768 002D06A8 38 21 00 30 */ addi r1, r1, 0x30
/* 802D376C 002D06AC 4E 80 00 20 */ blr
.global JKRAramPiece_NS_sync
JKRAramPiece_NS_sync:
/* 802D3770 002D06B0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D3774 002D06B4 7C 08 02 A6 */ mflr r0
/* 802D3778 002D06B8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D377C 002D06BC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802D3780 002D06C0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802D3784 002D06C4 7C 7E 1B 78 */ mr r30, r3
/* 802D3788 002D06C8 7C 9F 23 78 */ mr r31, r4
/* 802D378C 002D06CC 3C 60 80 43 */ lis r3, lbl_80434330@ha
/* 802D3790 002D06D0 38 63 43 30 */ addi r3, r3, lbl_80434330@l
/* 802D3794 002D06D4 48 06 B8 AD */ bl OSLockMutex
/* 802D3798 002D06D8 2C 1F 00 00 */ cmpwi r31, 0
/* 802D379C 002D06DC 40 82 00 38 */ bne lbl_802D37D4
/* 802D37A0 002D06E0 38 7E 00 68 */ addi r3, r30, 0x68
/* 802D37A4 002D06E4 38 81 00 08 */ addi r4, r1, 8
/* 802D37A8 002D06E8 38 A0 00 01 */ li r5, 1
/* 802D37AC 002D06EC 48 06 B3 11 */ bl OSReceiveMessage
/* 802D37B0 002D06F0 3C 60 80 43 */ lis r3, lbl_80434324@ha
/* 802D37B4 002D06F4 38 63 43 24 */ addi r3, r3, lbl_80434324@l
/* 802D37B8 002D06F8 38 9E 00 20 */ addi r4, r30, 0x20
/* 802D37BC 002D06FC 48 00 89 A1 */ bl JSUPtrList_NS_remove
/* 802D37C0 002D0700 3C 60 80 43 */ lis r3, lbl_80434330@ha
/* 802D37C4 002D0704 38 63 43 30 */ addi r3, r3, lbl_80434330@l
/* 802D37C8 002D0708 48 06 B9 55 */ bl OSUnlockMutex
/* 802D37CC 002D070C 38 60 00 01 */ li r3, 1
/* 802D37D0 002D0710 48 00 00 50 */ b lbl_802D3820
lbl_802D37D4:
/* 802D37D4 002D0714 38 7E 00 68 */ addi r3, r30, 0x68
/* 802D37D8 002D0718 38 81 00 08 */ addi r4, r1, 8
/* 802D37DC 002D071C 38 A0 00 00 */ li r5, 0
/* 802D37E0 002D0720 48 06 B2 DD */ bl OSReceiveMessage
/* 802D37E4 002D0724 2C 03 00 00 */ cmpwi r3, 0
/* 802D37E8 002D0728 40 82 00 18 */ bne lbl_802D3800
/* 802D37EC 002D072C 3C 60 80 43 */ lis r3, lbl_80434330@ha
/* 802D37F0 002D0730 38 63 43 30 */ addi r3, r3, lbl_80434330@l
/* 802D37F4 002D0734 48 06 B9 29 */ bl OSUnlockMutex
/* 802D37F8 002D0738 38 60 00 00 */ li r3, 0
/* 802D37FC 002D073C 48 00 00 24 */ b lbl_802D3820
lbl_802D3800:
/* 802D3800 002D0740 3C 60 80 43 */ lis r3, lbl_80434324@ha
/* 802D3804 002D0744 38 63 43 24 */ addi r3, r3, lbl_80434324@l
/* 802D3808 002D0748 38 9E 00 20 */ addi r4, r30, 0x20
/* 802D380C 002D074C 48 00 89 51 */ bl JSUPtrList_NS_remove
/* 802D3810 002D0750 3C 60 80 43 */ lis r3, lbl_80434330@ha
/* 802D3814 002D0754 38 63 43 30 */ addi r3, r3, lbl_80434330@l
/* 802D3818 002D0758 48 06 B9 05 */ bl OSUnlockMutex
/* 802D381C 002D075C 38 60 00 01 */ li r3, 1
lbl_802D3820:
/* 802D3820 002D0760 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802D3824 002D0764 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802D3828 002D0768 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D382C 002D076C 7C 08 03 A6 */ mtlr r0
/* 802D3830 002D0770 38 21 00 20 */ addi r1, r1, 0x20
/* 802D3834 002D0774 4E 80 00 20 */ blr
.global JKRAramPiece_NS_orderSync
JKRAramPiece_NS_orderSync:
/* 802D3838 002D0778 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D383C 002D077C 7C 08 02 A6 */ mflr r0
/* 802D3840 002D0780 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D3844 002D0784 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3848 002D0788 48 08 E9 8D */ bl func_803621D4
/* 802D384C 002D078C 7C 7B 1B 78 */ mr r27, r3
/* 802D3850 002D0790 7C 9C 23 78 */ mr r28, r4
/* 802D3854 002D0794 7C BD 2B 78 */ mr r29, r5
/* 802D3858 002D0798 7C DF 33 78 */ mr r31, r6
/* 802D385C 002D079C 7C FE 3B 78 */ mr r30, r7
/* 802D3860 002D07A0 3C 60 80 43 */ lis r3, lbl_80434330@ha
/* 802D3864 002D07A4 38 63 43 30 */ addi r3, r3, lbl_80434330@l
/* 802D3868 002D07A8 48 06 B7 D9 */ bl OSLockMutex
/* 802D386C 002D07AC 7F 63 DB 78 */ mr r3, r27
/* 802D3870 002D07B0 7F 84 E3 78 */ mr r4, r28
/* 802D3874 002D07B4 7F A5 EB 78 */ mr r5, r29
/* 802D3878 002D07B8 7F E6 FB 78 */ mr r6, r31
/* 802D387C 002D07BC 7F C7 F3 78 */ mr r7, r30
/* 802D3880 002D07C0 39 00 00 00 */ li r8, 0
/* 802D3884 002D07C4 4B FF FD 91 */ bl JKRAramPiece_NS_orderAsync
/* 802D3888 002D07C8 7C 7F 1B 78 */ mr r31, r3
/* 802D388C 002D07CC 38 80 00 00 */ li r4, 0
/* 802D3890 002D07D0 4B FF FE E1 */ bl JKRAramPiece_NS_sync
/* 802D3894 002D07D4 7C 7E 1B 78 */ mr r30, r3
/* 802D3898 002D07D8 7F E3 FB 78 */ mr r3, r31
/* 802D389C 002D07DC 38 80 00 01 */ li r4, 1
/* 802D38A0 002D07E0 48 00 01 BD */ bl JKRAMCommand_NS_dtor
/* 802D38A4 002D07E4 3C 60 80 43 */ lis r3, lbl_80434330@ha
/* 802D38A8 002D07E8 38 63 43 30 */ addi r3, r3, lbl_80434330@l
/* 802D38AC 002D07EC 48 06 B8 71 */ bl OSUnlockMutex
/* 802D38B0 002D07F0 7F C3 F3 78 */ mr r3, r30
/* 802D38B4 002D07F4 39 61 00 20 */ addi r11, r1, 0x20
/* 802D38B8 002D07F8 48 08 E9 69 */ bl func_80362220
/* 802D38BC 002D07FC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D38C0 002D0800 7C 08 03 A6 */ mtlr r0
/* 802D38C4 002D0804 38 21 00 20 */ addi r1, r1, 0x20
/* 802D38C8 002D0808 4E 80 00 20 */ blr
.global JKRAramPiece_NS_startDMA
JKRAramPiece_NS_startDMA:
/* 802D38CC 002D080C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D38D0 002D0810 7C 08 02 A6 */ mflr r0
/* 802D38D4 002D0814 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D38D8 002D0818 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D38DC 002D081C 7C 7F 1B 78 */ mr r31, r3
/* 802D38E0 002D0820 80 03 00 40 */ lwz r0, 0x40(r3)
/* 802D38E4 002D0824 2C 00 00 01 */ cmpwi r0, 1
/* 802D38E8 002D0828 40 82 00 14 */ bne lbl_802D38FC
/* 802D38EC 002D082C 80 7F 00 4C */ lwz r3, 0x4c(r31)
/* 802D38F0 002D0830 80 9F 00 44 */ lwz r4, 0x44(r31)
/* 802D38F4 002D0834 48 06 7C 8D */ bl DCInvalidateRange
/* 802D38F8 002D0838 48 00 00 10 */ b lbl_802D3908
lbl_802D38FC:
/* 802D38FC 002D083C 80 7F 00 48 */ lwz r3, 0x48(r31)
/* 802D3900 002D0840 80 9F 00 44 */ lwz r4, 0x44(r31)
/* 802D3904 002D0844 48 06 7C D9 */ bl DCStoreRange
lbl_802D3908:
/* 802D3908 002D0848 7F E3 FB 78 */ mr r3, r31
/* 802D390C 002D084C 38 80 00 00 */ li r4, 0
/* 802D3910 002D0850 80 BF 00 40 */ lwz r5, 0x40(r31)
/* 802D3914 002D0854 38 C0 00 00 */ li r6, 0
/* 802D3918 002D0858 80 FF 00 48 */ lwz r7, 0x48(r31)
/* 802D391C 002D085C 81 1F 00 4C */ lwz r8, 0x4c(r31)
/* 802D3920 002D0860 81 3F 00 44 */ lwz r9, 0x44(r31)
.global JKRAramPiece_NS_doneDMA
/* 802D3924 002D0864 3D 40 80 2D */ lis r10, JKRAramPiece_NS_doneDMA@ha
.global JKRAramPiece_NS_doneDMA
/* 802D3928 002D0868 39 4A 39 44 */ addi r10, r10, JKRAramPiece_NS_doneDMA@l
/* 802D392C 002D086C 48 07 E9 A9 */ bl ARQPostRequest
/* 802D3930 002D0870 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3934 002D0874 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3938 002D0878 7C 08 03 A6 */ mtlr r0
/* 802D393C 002D087C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3940 002D0880 4E 80 00 20 */ blr
.global JKRAramPiece_NS_doneDMA
JKRAramPiece_NS_doneDMA:
/* 802D3944 002D0884 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3948 002D0888 7C 08 02 A6 */ mflr r0
/* 802D394C 002D088C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3950 002D0890 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D3954 002D0894 7C 7F 1B 78 */ mr r31, r3
/* 802D3958 002D0898 80 03 00 40 */ lwz r0, 0x40(r3)
/* 802D395C 002D089C 2C 00 00 01 */ cmpwi r0, 1
/* 802D3960 002D08A0 40 82 00 10 */ bne lbl_802D3970
/* 802D3964 002D08A4 80 7F 00 4C */ lwz r3, 0x4c(r31)
/* 802D3968 002D08A8 80 9F 00 44 */ lwz r4, 0x44(r31)
/* 802D396C 002D08AC 48 06 7C 15 */ bl DCInvalidateRange
lbl_802D3970:
/* 802D3970 002D08B0 80 1F 00 60 */ lwz r0, 0x60(r31)
/* 802D3974 002D08B4 2C 00 00 00 */ cmpwi r0, 0
/* 802D3978 002D08B8 41 82 00 18 */ beq lbl_802D3990
/* 802D397C 002D08BC 2C 00 00 02 */ cmpwi r0, 2
/* 802D3980 002D08C0 40 82 00 58 */ bne lbl_802D39D8
/* 802D3984 002D08C4 80 7F 00 64 */ lwz r3, 0x64(r31)
/* 802D3988 002D08C8 48 00 7F 49 */ bl JKRDecomp_NS_sendCommand
/* 802D398C 002D08CC 48 00 00 4C */ b lbl_802D39D8
lbl_802D3990:
/* 802D3990 002D08D0 81 9F 00 58 */ lwz r12, 0x58(r31)
/* 802D3994 002D08D4 28 0C 00 00 */ cmplwi r12, 0
/* 802D3998 002D08D8 41 82 00 14 */ beq lbl_802D39AC
/* 802D399C 002D08DC 7F E3 FB 78 */ mr r3, r31
/* 802D39A0 002D08E0 7D 89 03 A6 */ mtctr r12
/* 802D39A4 002D08E4 4E 80 04 21 */ bctrl
/* 802D39A8 002D08E8 48 00 00 30 */ b lbl_802D39D8
lbl_802D39AC:
/* 802D39AC 002D08EC 80 7F 00 5C */ lwz r3, 0x5c(r31)
/* 802D39B0 002D08F0 28 03 00 00 */ cmplwi r3, 0
/* 802D39B4 002D08F4 41 82 00 14 */ beq lbl_802D39C8
/* 802D39B8 002D08F8 7F E4 FB 78 */ mr r4, r31
/* 802D39BC 002D08FC 38 A0 00 00 */ li r5, 0
/* 802D39C0 002D0900 48 06 B0 35 */ bl OSSendMessage
/* 802D39C4 002D0904 48 00 00 14 */ b lbl_802D39D8
lbl_802D39C8:
/* 802D39C8 002D0908 38 7F 00 68 */ addi r3, r31, 0x68
/* 802D39CC 002D090C 7F E4 FB 78 */ mr r4, r31
/* 802D39D0 002D0910 38 A0 00 00 */ li r5, 0
/* 802D39D4 002D0914 48 06 B0 21 */ bl OSSendMessage
lbl_802D39D8:
/* 802D39D8 002D0918 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D39DC 002D091C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D39E0 002D0920 7C 08 03 A6 */ mtlr r0
/* 802D39E4 002D0924 38 21 00 10 */ addi r1, r1, 0x10
/* 802D39E8 002D0928 4E 80 00 20 */ blr
.global JKRAMCommand
JKRAMCommand:
/* 802D39EC 002D092C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D39F0 002D0930 7C 08 02 A6 */ mflr r0
/* 802D39F4 002D0934 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D39F8 002D0938 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D39FC 002D093C 7C 7F 1B 78 */ mr r31, r3
/* 802D3A00 002D0940 7F E4 FB 78 */ mr r4, r31
/* 802D3A04 002D0944 38 64 00 20 */ addi r3, r4, 0x20
/* 802D3A08 002D0948 48 00 83 F5 */ bl JSUPtrLink
/* 802D3A0C 002D094C 38 7F 00 30 */ addi r3, r31, 0x30
/* 802D3A10 002D0950 7F E4 FB 78 */ mr r4, r31
/* 802D3A14 002D0954 48 00 83 E9 */ bl JSUPtrLink
/* 802D3A18 002D0958 38 7F 00 68 */ addi r3, r31, 0x68
/* 802D3A1C 002D095C 38 9F 00 88 */ addi r4, r31, 0x88
/* 802D3A20 002D0960 38 A0 00 01 */ li r5, 1
/* 802D3A24 002D0964 48 06 AF 71 */ bl OSInitMessageQueue
/* 802D3A28 002D0968 38 00 00 00 */ li r0, 0
/* 802D3A2C 002D096C 90 1F 00 58 */ stw r0, 0x58(r31)
/* 802D3A30 002D0970 90 1F 00 5C */ stw r0, 0x5c(r31)
/* 802D3A34 002D0974 90 1F 00 60 */ stw r0, 0x60(r31)
/* 802D3A38 002D0978 90 1F 00 8C */ stw r0, 0x8c(r31)
/* 802D3A3C 002D097C 90 1F 00 90 */ stw r0, 0x90(r31)
/* 802D3A40 002D0980 90 1F 00 94 */ stw r0, 0x94(r31)
/* 802D3A44 002D0984 7F E3 FB 78 */ mr r3, r31
/* 802D3A48 002D0988 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3A4C 002D098C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3A50 002D0990 7C 08 03 A6 */ mtlr r0
/* 802D3A54 002D0994 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3A58 002D0998 4E 80 00 20 */ blr
.global JKRAMCommand_NS_dtor
JKRAMCommand_NS_dtor:
/* 802D3A5C 002D099C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3A60 002D09A0 7C 08 02 A6 */ mflr r0
/* 802D3A64 002D09A4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3A68 002D09A8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D3A6C 002D09AC 93 C1 00 08 */ stw r30, 8(r1)
/* 802D3A70 002D09B0 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D3A74 002D09B4 7C 9F 23 78 */ mr r31, r4
/* 802D3A78 002D09B8 41 82 00 70 */ beq lbl_802D3AE8
/* 802D3A7C 002D09BC 80 7E 00 8C */ lwz r3, 0x8c(r30)
/* 802D3A80 002D09C0 28 03 00 00 */ cmplwi r3, 0
/* 802D3A84 002D09C4 41 82 00 08 */ beq lbl_802D3A8C
/* 802D3A88 002D09C8 4B FF B2 B5 */ bl __dl
lbl_802D3A8C:
/* 802D3A8C 002D09CC 80 7E 00 90 */ lwz r3, 0x90(r30)
/* 802D3A90 002D09D0 28 03 00 00 */ cmplwi r3, 0
/* 802D3A94 002D09D4 41 82 00 08 */ beq lbl_802D3A9C
/* 802D3A98 002D09D8 4B FF B2 A5 */ bl __dl
lbl_802D3A9C:
/* 802D3A9C 002D09DC 80 7E 00 94 */ lwz r3, 0x94(r30)
/* 802D3AA0 002D09E0 28 03 00 00 */ cmplwi r3, 0
/* 802D3AA4 002D09E4 41 82 00 0C */ beq lbl_802D3AB0
/* 802D3AA8 002D09E8 38 80 00 00 */ li r4, 0
/* 802D3AAC 002D09EC 4B FF AA 55 */ bl JKRHeap_NS_free
lbl_802D3AB0:
/* 802D3AB0 002D09F0 34 1E 00 30 */ addic. r0, r30, 0x30
/* 802D3AB4 002D09F4 41 82 00 10 */ beq lbl_802D3AC4
/* 802D3AB8 002D09F8 38 7E 00 30 */ addi r3, r30, 0x30
/* 802D3ABC 002D09FC 38 80 00 00 */ li r4, 0
/* 802D3AC0 002D0A00 48 00 83 55 */ bl JSUPtrLink_NS_dtor
lbl_802D3AC4:
/* 802D3AC4 002D0A04 34 1E 00 20 */ addic. r0, r30, 0x20
/* 802D3AC8 002D0A08 41 82 00 10 */ beq lbl_802D3AD8
/* 802D3ACC 002D0A0C 38 7E 00 20 */ addi r3, r30, 0x20
/* 802D3AD0 002D0A10 38 80 00 00 */ li r4, 0
/* 802D3AD4 002D0A14 48 00 83 41 */ bl JSUPtrLink_NS_dtor
lbl_802D3AD8:
/* 802D3AD8 002D0A18 7F E0 07 35 */ extsh. r0, r31
/* 802D3ADC 002D0A1C 40 81 00 0C */ ble lbl_802D3AE8
/* 802D3AE0 002D0A20 7F C3 F3 78 */ mr r3, r30
/* 802D3AE4 002D0A24 4B FF B2 59 */ bl __dl
lbl_802D3AE8:
/* 802D3AE8 002D0A28 7F C3 F3 78 */ mr r3, r30
/* 802D3AEC 002D0A2C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3AF0 002D0A30 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D3AF4 002D0A34 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3AF8 002D0A38 7C 08 03 A6 */ mtlr r0
/* 802D3AFC 002D0A3C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3B00 002D0A40 4E 80 00 20 */ blr
/* 802D3B04 002D0A44 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3B08 002D0A48 7C 08 02 A6 */ mflr r0
/* 802D3B0C 002D0A4C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3B10 002D0A50 3C 60 80 43 */ lis r3, lbl_80434324@ha
/* 802D3B14 002D0A54 38 63 43 24 */ addi r3, r3, lbl_80434324@l
/* 802D3B18 002D0A58 48 00 83 FD */ bl JSUPtrList_NS_initiate
/* 802D3B1C 002D0A5C 3C 60 80 43 */ lis r3, lbl_80434324@ha
/* 802D3B20 002D0A60 38 63 43 24 */ addi r3, r3, lbl_80434324@l
.global JSUList_NS_dtor_X4_
/* 802D3B24 002D0A64 3C 80 80 2D */ lis r4, JSUList_NS_dtor_X4_@ha
.global JSUList_NS_dtor_X4_
/* 802D3B28 002D0A68 38 84 2D F0 */ addi r4, r4, JSUList_NS_dtor_X4_@l
/* 802D3B2C 002D0A6C 3C A0 80 43 */ lis r5, lbl_80434318@ha
/* 802D3B30 002D0A70 38 A5 43 18 */ addi r5, r5, lbl_80434318@l
/* 802D3B34 002D0A74 48 08 E0 F1 */ bl func_80361C24
/* 802D3B38 002D0A78 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3B3C 002D0A7C 7C 08 03 A6 */ mtlr r0
/* 802D3B40 002D0A80 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3B44 002D0A84 4E 80 00 20 */ blr
+421
View File
@@ -0,0 +1,421 @@
.include "macros.inc"
.section .text, "ax" # 802d3b48
.global JKRAramStream_NS_create
JKRAramStream_NS_create:
/* 802D3B48 002D0A88 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3B4C 002D0A8C 7C 08 02 A6 */ mflr r0
/* 802D3B50 002D0A90 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3B54 002D0A94 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D3B58 002D0A98 7C 7F 1B 78 */ mr r31, r3
/* 802D3B5C 002D0A9C 80 0D 8E 88 */ lwz r0, lbl_80451408-_SDA_BASE_(r13)
/* 802D3B60 002D0AA0 28 00 00 00 */ cmplwi r0, 0
/* 802D3B64 002D0AA4 40 82 00 3C */ bne lbl_802D3BA0
/* 802D3B68 002D0AA8 38 60 00 7C */ li r3, 0x7c
/* 802D3B6C 002D0AAC 80 8D 8D F0 */ lwz r4, lbl_80451370-_SDA_BASE_(r13)
/* 802D3B70 002D0AB0 38 A0 00 00 */ li r5, 0
/* 802D3B74 002D0AB4 4B FF B1 25 */ bl __nw_X2_
/* 802D3B78 002D0AB8 7C 60 1B 79 */ or. r0, r3, r3
/* 802D3B7C 002D0ABC 41 82 00 10 */ beq lbl_802D3B8C
/* 802D3B80 002D0AC0 7F E4 FB 78 */ mr r4, r31
/* 802D3B84 002D0AC4 48 00 00 35 */ bl JKRAramStream
/* 802D3B88 002D0AC8 7C 60 1B 78 */ mr r0, r3
lbl_802D3B8C:
/* 802D3B8C 002D0ACC 90 0D 8E 88 */ stw r0, lbl_80451408-_SDA_BASE_(r13)
/* 802D3B90 002D0AD0 38 60 00 00 */ li r3, 0
/* 802D3B94 002D0AD4 38 80 00 00 */ li r4, 0
/* 802D3B98 002D0AD8 38 A0 00 00 */ li r5, 0
/* 802D3B9C 002D0ADC 48 00 04 99 */ bl JKRAramStream_NS_setTransBuffer
lbl_802D3BA0:
/* 802D3BA0 002D0AE0 80 6D 8E 88 */ lwz r3, lbl_80451408-_SDA_BASE_(r13)
/* 802D3BA4 002D0AE4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3BA8 002D0AE8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3BAC 002D0AEC 7C 08 03 A6 */ mtlr r0
/* 802D3BB0 002D0AF0 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3BB4 002D0AF4 4E 80 00 20 */ blr
.global JKRAramStream
JKRAramStream:
/* 802D3BB8 002D0AF8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3BBC 002D0AFC 7C 08 02 A6 */ mflr r0
/* 802D3BC0 002D0B00 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3BC4 002D0B04 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D3BC8 002D0B08 7C 7F 1B 78 */ mr r31, r3
/* 802D3BCC 002D0B0C 7C 86 23 78 */ mr r6, r4
/* 802D3BD0 002D0B10 38 80 0C 00 */ li r4, 0xc00
/* 802D3BD4 002D0B14 38 A0 00 10 */ li r5, 0x10
/* 802D3BD8 002D0B18 4B FF D9 91 */ bl JKRThread
/* 802D3BDC 002D0B1C 3C 60 80 3D */ lis r3, lbl_803CC1B8@ha
/* 802D3BE0 002D0B20 38 03 C1 B8 */ addi r0, r3, lbl_803CC1B8@l
/* 802D3BE4 002D0B24 90 1F 00 00 */ stw r0, 0(r31)
/* 802D3BE8 002D0B28 80 7F 00 2C */ lwz r3, 0x2c(r31)
/* 802D3BEC 002D0B2C 48 06 DB C9 */ bl OSResumeThread
/* 802D3BF0 002D0B30 7F E3 FB 78 */ mr r3, r31
/* 802D3BF4 002D0B34 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3BF8 002D0B38 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3BFC 002D0B3C 7C 08 03 A6 */ mtlr r0
/* 802D3C00 002D0B40 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3C04 002D0B44 4E 80 00 20 */ blr
/* 802D3C08 002D0B48 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D3C0C 002D0B4C 7C 08 02 A6 */ mflr r0
/* 802D3C10 002D0B50 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D3C14 002D0B54 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D3C18 002D0B58 93 C1 00 08 */ stw r30, 8(r1)
/* 802D3C1C 002D0B5C 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D3C20 002D0B60 7C 9F 23 78 */ mr r31, r4
/* 802D3C24 002D0B64 41 82 00 28 */ beq lbl_802D3C4C
/* 802D3C28 002D0B68 3C 80 80 3D */ lis r4, lbl_803CC1B8@ha
/* 802D3C2C 002D0B6C 38 04 C1 B8 */ addi r0, r4, lbl_803CC1B8@l
/* 802D3C30 002D0B70 90 1E 00 00 */ stw r0, 0(r30)
/* 802D3C34 002D0B74 38 80 00 00 */ li r4, 0
/* 802D3C38 002D0B78 4B FF DB 21 */ bl JKRThread_NS_dtor
/* 802D3C3C 002D0B7C 7F E0 07 35 */ extsh. r0, r31
/* 802D3C40 002D0B80 40 81 00 0C */ ble lbl_802D3C4C
/* 802D3C44 002D0B84 7F C3 F3 78 */ mr r3, r30
/* 802D3C48 002D0B88 4B FF B0 F5 */ bl __dl
lbl_802D3C4C:
/* 802D3C4C 002D0B8C 7F C3 F3 78 */ mr r3, r30
/* 802D3C50 002D0B90 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D3C54 002D0B94 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D3C58 002D0B98 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D3C5C 002D0B9C 7C 08 03 A6 */ mtlr r0
/* 802D3C60 002D0BA0 38 21 00 10 */ addi r1, r1, 0x10
/* 802D3C64 002D0BA4 4E 80 00 20 */ blr
/* 802D3C68 002D0BA8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D3C6C 002D0BAC 7C 08 02 A6 */ mflr r0
/* 802D3C70 002D0BB0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D3C74 002D0BB4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802D3C78 002D0BB8 3C 60 80 3D */ lis r3, lbl_803CC198@ha
/* 802D3C7C 002D0BBC 38 63 C1 98 */ addi r3, r3, lbl_803CC198@l
/* 802D3C80 002D0BC0 3C 80 80 3D */ lis r4, lbl_803CC188@ha
/* 802D3C84 002D0BC4 38 84 C1 88 */ addi r4, r4, lbl_803CC188@l
/* 802D3C88 002D0BC8 38 A0 00 04 */ li r5, 4
/* 802D3C8C 002D0BCC 48 06 AD 09 */ bl OSInitMessageQueue
/* 802D3C90 002D0BD0 3C 60 80 3D */ lis r3, lbl_803CC198@ha
/* 802D3C94 002D0BD4 3B E3 C1 98 */ addi r31, r3, lbl_803CC198@l
lbl_802D3C98:
/* 802D3C98 002D0BD8 7F E3 FB 78 */ mr r3, r31
/* 802D3C9C 002D0BDC 38 81 00 08 */ addi r4, r1, 8
/* 802D3CA0 002D0BE0 38 A0 00 01 */ li r5, 1
/* 802D3CA4 002D0BE4 48 06 AE 19 */ bl OSReceiveMessage
/* 802D3CA8 002D0BE8 80 61 00 08 */ lwz r3, 8(r1)
/* 802D3CAC 002D0BEC 80 03 00 00 */ lwz r0, 0(r3)
/* 802D3CB0 002D0BF0 2C 00 00 02 */ cmpwi r0, 2
/* 802D3CB4 002D0BF4 41 82 00 1C */ beq lbl_802D3CD0
/* 802D3CB8 002D0BF8 40 80 FF E0 */ bge lbl_802D3C98
/* 802D3CBC 002D0BFC 2C 00 00 01 */ cmpwi r0, 1
/* 802D3CC0 002D0C00 40 80 00 08 */ bge lbl_802D3CC8
/* 802D3CC4 002D0C04 4B FF FF D4 */ b lbl_802D3C98
lbl_802D3CC8:
/* 802D3CC8 002D0C08 48 00 00 11 */ bl JKRAramStream_NS_readFromAram
/* 802D3CCC 002D0C0C 4B FF FF CC */ b lbl_802D3C98
lbl_802D3CD0:
/* 802D3CD0 002D0C10 48 00 00 11 */ bl JKRAramStream_NS_writeToAram
/* 802D3CD4 002D0C14 4B FF FF C4 */ b lbl_802D3C98
.global JKRAramStream_NS_readFromAram
JKRAramStream_NS_readFromAram:
/* 802D3CD8 002D0C18 38 60 00 01 */ li r3, 1
/* 802D3CDC 002D0C1C 4E 80 00 20 */ blr
.global JKRAramStream_NS_writeToAram
JKRAramStream_NS_writeToAram:
/* 802D3CE0 002D0C20 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802D3CE4 002D0C24 7C 08 02 A6 */ mflr r0
/* 802D3CE8 002D0C28 90 01 00 34 */ stw r0, 0x34(r1)
/* 802D3CEC 002D0C2C 39 61 00 30 */ addi r11, r1, 0x30
/* 802D3CF0 002D0C30 48 08 E4 D9 */ bl func_803621C8
/* 802D3CF4 002D0C34 7C 78 1B 78 */ mr r24, r3
/* 802D3CF8 002D0C38 83 C3 00 08 */ lwz r30, 8(r3)
/* 802D3CFC 002D0C3C 83 A3 00 14 */ lwz r29, 0x14(r3)
/* 802D3D00 002D0C40 3B 80 00 00 */ li r28, 0
/* 802D3D04 002D0C44 83 63 00 04 */ lwz r27, 4(r3)
/* 802D3D08 002D0C48 83 43 00 1C */ lwz r26, 0x1c(r3)
/* 802D3D0C 002D0C4C 80 03 00 20 */ lwz r0, 0x20(r3)
/* 802D3D10 002D0C50 83 23 00 24 */ lwz r25, 0x24(r3)
/* 802D3D14 002D0C54 28 1A 00 00 */ cmplwi r26, 0
/* 802D3D18 002D0C58 41 82 00 28 */ beq lbl_802D3D40
/* 802D3D1C 002D0C5C 28 00 00 00 */ cmplwi r0, 0
/* 802D3D20 002D0C60 3C 60 00 01 */ lis r3, 0x00008000@ha
/* 802D3D24 002D0C64 3B E3 80 00 */ addi r31, r3, 0x00008000@l
/* 802D3D28 002D0C68 41 82 00 08 */ beq lbl_802D3D30
/* 802D3D2C 002D0C6C 7C 1F 03 78 */ mr r31, r0
lbl_802D3D30:
/* 802D3D30 002D0C70 93 F8 00 20 */ stw r31, 0x20(r24)
/* 802D3D34 002D0C74 38 00 00 00 */ li r0, 0
/* 802D3D38 002D0C78 98 18 00 28 */ stb r0, 0x28(r24)
/* 802D3D3C 002D0C7C 48 00 00 60 */ b lbl_802D3D9C
lbl_802D3D40:
/* 802D3D40 002D0C80 28 00 00 00 */ cmplwi r0, 0
/* 802D3D44 002D0C84 3C 60 00 01 */ lis r3, 0x00008000@ha
/* 802D3D48 002D0C88 3B E3 80 00 */ addi r31, r3, 0x00008000@l
/* 802D3D4C 002D0C8C 41 82 00 08 */ beq lbl_802D3D54
/* 802D3D50 002D0C90 7C 1F 03 78 */ mr r31, r0
lbl_802D3D54:
/* 802D3D54 002D0C94 28 19 00 00 */ cmplwi r25, 0
/* 802D3D58 002D0C98 41 82 00 20 */ beq lbl_802D3D78
/* 802D3D5C 002D0C9C 7F E3 FB 78 */ mr r3, r31
/* 802D3D60 002D0CA0 38 80 FF E0 */ li r4, -32
/* 802D3D64 002D0CA4 7F 25 CB 78 */ mr r5, r25
/* 802D3D68 002D0CA8 4B FF A7 0D */ bl JKRHeap_NS_alloc
/* 802D3D6C 002D0CAC 7C 7A 1B 78 */ mr r26, r3
/* 802D3D70 002D0CB0 93 58 00 1C */ stw r26, 0x1c(r24)
/* 802D3D74 002D0CB4 48 00 00 1C */ b lbl_802D3D90
lbl_802D3D78:
/* 802D3D78 002D0CB8 80 6D 8D F0 */ lwz r3, lbl_80451370-_SDA_BASE_(r13)
/* 802D3D7C 002D0CBC 7F E4 FB 78 */ mr r4, r31
/* 802D3D80 002D0CC0 38 A0 FF E0 */ li r5, -32
/* 802D3D84 002D0CC4 4B FF A7 51 */ bl JKRHeap_NS_alloc_X1_
/* 802D3D88 002D0CC8 7C 7A 1B 78 */ mr r26, r3
/* 802D3D8C 002D0CCC 93 58 00 1C */ stw r26, 0x1c(r24)
lbl_802D3D90:
/* 802D3D90 002D0CD0 93 F8 00 20 */ stw r31, 0x20(r24)
/* 802D3D94 002D0CD4 38 00 00 01 */ li r0, 1
/* 802D3D98 002D0CD8 98 18 00 28 */ stb r0, 0x28(r24)
lbl_802D3D9C:
/* 802D3D9C 002D0CDC 28 1A 00 00 */ cmplwi r26, 0
/* 802D3DA0 002D0CE0 40 82 00 54 */ bne lbl_802D3DF4
/* 802D3DA4 002D0CE4 28 19 00 00 */ cmplwi r25, 0
/* 802D3DA8 002D0CE8 40 82 00 1C */ bne lbl_802D3DC4
/* 802D3DAC 002D0CEC 80 6D 8D F4 */ lwz r3, lbl_80451374-_SDA_BASE_(r13)
/* 802D3DB0 002D0CF0 81 83 00 00 */ lwz r12, 0(r3)
/* 802D3DB4 002D0CF4 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 802D3DB8 002D0CF8 7D 89 03 A6 */ mtctr r12
/* 802D3DBC 002D0CFC 4E 80 04 21 */ bctrl
/* 802D3DC0 002D0D00 48 00 00 18 */ b lbl_802D3DD8
lbl_802D3DC4:
/* 802D3DC4 002D0D04 7F 23 CB 78 */ mr r3, r25
/* 802D3DC8 002D0D08 81 99 00 00 */ lwz r12, 0(r25)
/* 802D3DCC 002D0D0C 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 802D3DD0 002D0D10 7D 89 03 A6 */ mtctr r12
/* 802D3DD4 002D0D14 4E 80 04 21 */ bctrl
lbl_802D3DD8:
/* 802D3DD8 002D0D18 3C 60 80 3A */ lis r3, lbl_8039D120@ha
/* 802D3DDC 002D0D1C 38 63 D1 20 */ addi r3, r3, lbl_8039D120@l
/* 802D3DE0 002D0D20 38 80 00 AC */ li r4, 0xac
/* 802D3DE4 002D0D24 38 A3 00 12 */ addi r5, r3, 0x12
/* 802D3DE8 002D0D28 38 C3 00 15 */ addi r6, r3, 0x15
/* 802D3DEC 002D0D2C 4C C6 31 82 */ crclr 6
/* 802D3DF0 002D0D30 48 00 E4 0D */ bl JUTException_NS_panic_f
lbl_802D3DF4:
/* 802D3DF4 002D0D34 28 1A 00 00 */ cmplwi r26, 0
/* 802D3DF8 002D0D38 41 82 00 AC */ beq lbl_802D3EA4
/* 802D3DFC 002D0D3C 80 78 00 10 */ lwz r3, 0x10(r24)
/* 802D3E00 002D0D40 7F A4 EB 78 */ mr r4, r29
/* 802D3E04 002D0D44 38 A0 00 00 */ li r5, 0
/* 802D3E08 002D0D48 48 00 86 D5 */ bl JSURandomInputStream_NS_seek
/* 802D3E0C 002D0D4C 48 00 00 70 */ b lbl_802D3E7C
lbl_802D3E10:
/* 802D3E10 002D0D50 7C 1E F8 40 */ cmplw r30, r31
/* 802D3E14 002D0D54 7F D9 F3 78 */ mr r25, r30
/* 802D3E18 002D0D58 40 81 00 08 */ ble lbl_802D3E20
/* 802D3E1C 002D0D5C 7F F9 FB 78 */ mr r25, r31
lbl_802D3E20:
/* 802D3E20 002D0D60 80 78 00 10 */ lwz r3, 0x10(r24)
/* 802D3E24 002D0D64 7F 44 D3 78 */ mr r4, r26
/* 802D3E28 002D0D68 7F 25 CB 78 */ mr r5, r25
/* 802D3E2C 002D0D6C 48 00 84 6D */ bl JSUInputStream_NS_read
/* 802D3E30 002D0D70 2C 03 00 00 */ cmpwi r3, 0
/* 802D3E34 002D0D74 40 82 00 0C */ bne lbl_802D3E40
/* 802D3E38 002D0D78 3B 80 00 00 */ li r28, 0
/* 802D3E3C 002D0D7C 48 00 00 48 */ b lbl_802D3E84
lbl_802D3E40:
/* 802D3E40 002D0D80 38 60 00 00 */ li r3, 0
/* 802D3E44 002D0D84 7F 44 D3 78 */ mr r4, r26
/* 802D3E48 002D0D88 7F 65 DB 78 */ mr r5, r27
/* 802D3E4C 002D0D8C 7F 26 CB 78 */ mr r6, r25
/* 802D3E50 002D0D90 38 E0 00 00 */ li r7, 0
/* 802D3E54 002D0D94 4B FF F9 E5 */ bl JKRAramPiece_NS_orderSync
/* 802D3E58 002D0D98 7F D9 F0 50 */ subf r30, r25, r30
/* 802D3E5C 002D0D9C 7F 9C CA 14 */ add r28, r28, r25
/* 802D3E60 002D0DA0 7F 7B CA 14 */ add r27, r27, r25
/* 802D3E64 002D0DA4 80 78 00 18 */ lwz r3, 0x18(r24)
/* 802D3E68 002D0DA8 28 03 00 00 */ cmplwi r3, 0
/* 802D3E6C 002D0DAC 41 82 00 10 */ beq lbl_802D3E7C
/* 802D3E70 002D0DB0 80 03 00 00 */ lwz r0, 0(r3)
/* 802D3E74 002D0DB4 7C 00 CA 14 */ add r0, r0, r25
/* 802D3E78 002D0DB8 90 03 00 00 */ stw r0, 0(r3)
lbl_802D3E7C:
/* 802D3E7C 002D0DBC 28 1E 00 00 */ cmplwi r30, 0
/* 802D3E80 002D0DC0 40 82 FF 90 */ bne lbl_802D3E10
lbl_802D3E84:
/* 802D3E84 002D0DC4 88 18 00 28 */ lbz r0, 0x28(r24)
/* 802D3E88 002D0DC8 28 00 00 00 */ cmplwi r0, 0
/* 802D3E8C 002D0DCC 41 82 00 18 */ beq lbl_802D3EA4
/* 802D3E90 002D0DD0 7F 43 D3 78 */ mr r3, r26
/* 802D3E94 002D0DD4 38 80 00 00 */ li r4, 0
/* 802D3E98 002D0DD8 4B FF A6 69 */ bl JKRHeap_NS_free
/* 802D3E9C 002D0DDC 38 00 00 00 */ li r0, 0
/* 802D3EA0 002D0DE0 98 18 00 28 */ stb r0, 0x28(r24)
lbl_802D3EA4:
/* 802D3EA4 002D0DE4 38 78 00 30 */ addi r3, r24, 0x30
/* 802D3EA8 002D0DE8 7F 84 E3 78 */ mr r4, r28
/* 802D3EAC 002D0DEC 38 A0 00 00 */ li r5, 0
/* 802D3EB0 002D0DF0 48 06 AB 45 */ bl OSSendMessage
/* 802D3EB4 002D0DF4 7F 83 E3 78 */ mr r3, r28
/* 802D3EB8 002D0DF8 39 61 00 30 */ addi r11, r1, 0x30
/* 802D3EBC 002D0DFC 48 08 E3 59 */ bl func_80362214
/* 802D3EC0 002D0E00 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802D3EC4 002D0E04 7C 08 03 A6 */ mtlr r0
/* 802D3EC8 002D0E08 38 21 00 30 */ addi r1, r1, 0x30
/* 802D3ECC 002D0E0C 4E 80 00 20 */ blr
.global JKRAramStream_NS_write_StreamToAram_Async
JKRAramStream_NS_write_StreamToAram_Async:
/* 802D3ED0 002D0E10 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D3ED4 002D0E14 7C 08 02 A6 */ mflr r0
/* 802D3ED8 002D0E18 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D3EDC 002D0E1C 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3EE0 002D0E20 48 08 E2 F1 */ bl func_803621D0
/* 802D3EE4 002D0E24 7C 7A 1B 78 */ mr r26, r3
/* 802D3EE8 002D0E28 7C 9B 23 78 */ mr r27, r4
/* 802D3EEC 002D0E2C 7C BC 2B 78 */ mr r28, r5
/* 802D3EF0 002D0E30 7C DD 33 78 */ mr r29, r6
/* 802D3EF4 002D0E34 7C FE 3B 78 */ mr r30, r7
/* 802D3EF8 002D0E38 38 60 00 5C */ li r3, 0x5c
/* 802D3EFC 002D0E3C 80 8D 8D F0 */ lwz r4, lbl_80451370-_SDA_BASE_(r13)
/* 802D3F00 002D0E40 38 A0 FF FC */ li r5, -4
/* 802D3F04 002D0E44 4B FF AD 95 */ bl __nw_X2_
/* 802D3F08 002D0E48 7C 7F 1B 79 */ or. r31, r3, r3
/* 802D3F0C 002D0E4C 41 82 00 0C */ beq lbl_802D3F18
/* 802D3F10 002D0E50 48 00 01 79 */ bl JKRAramStreamCommand
/* 802D3F14 002D0E54 7C 7F 1B 78 */ mr r31, r3
lbl_802D3F18:
/* 802D3F18 002D0E58 38 00 00 02 */ li r0, 2
/* 802D3F1C 002D0E5C 90 1F 00 00 */ stw r0, 0(r31)
/* 802D3F20 002D0E60 93 7F 00 04 */ stw r27, 4(r31)
/* 802D3F24 002D0E64 93 9F 00 08 */ stw r28, 8(r31)
/* 802D3F28 002D0E68 93 5F 00 10 */ stw r26, 0x10(r31)
/* 802D3F2C 002D0E6C 38 60 00 00 */ li r3, 0
/* 802D3F30 002D0E70 90 7F 00 2C */ stw r3, 0x2c(r31)
/* 802D3F34 002D0E74 93 BF 00 14 */ stw r29, 0x14(r31)
/* 802D3F38 002D0E78 80 0D 8E 8C */ lwz r0, lbl_8045140C-_SDA_BASE_(r13)
/* 802D3F3C 002D0E7C 90 1F 00 1C */ stw r0, 0x1c(r31)
/* 802D3F40 002D0E80 80 0D 8E 94 */ lwz r0, lbl_80451414-_SDA_BASE_(r13)
/* 802D3F44 002D0E84 90 1F 00 24 */ stw r0, 0x24(r31)
/* 802D3F48 002D0E88 80 0D 8E 90 */ lwz r0, lbl_80451410-_SDA_BASE_(r13)
/* 802D3F4C 002D0E8C 90 1F 00 20 */ stw r0, 0x20(r31)
/* 802D3F50 002D0E90 93 DF 00 18 */ stw r30, 0x18(r31)
/* 802D3F54 002D0E94 28 1E 00 00 */ cmplwi r30, 0
/* 802D3F58 002D0E98 41 82 00 08 */ beq lbl_802D3F60
/* 802D3F5C 002D0E9C 90 7E 00 00 */ stw r3, 0(r30)
lbl_802D3F60:
/* 802D3F60 002D0EA0 38 7F 00 30 */ addi r3, r31, 0x30
/* 802D3F64 002D0EA4 38 9F 00 50 */ addi r4, r31, 0x50
/* 802D3F68 002D0EA8 38 A0 00 01 */ li r5, 1
/* 802D3F6C 002D0EAC 48 06 AA 29 */ bl OSInitMessageQueue
/* 802D3F70 002D0EB0 3C 60 80 3D */ lis r3, lbl_803CC198@ha
/* 802D3F74 002D0EB4 38 63 C1 98 */ addi r3, r3, lbl_803CC198@l
/* 802D3F78 002D0EB8 7F E4 FB 78 */ mr r4, r31
/* 802D3F7C 002D0EBC 38 A0 00 01 */ li r5, 1
/* 802D3F80 002D0EC0 48 06 AA 75 */ bl OSSendMessage
/* 802D3F84 002D0EC4 7F E3 FB 78 */ mr r3, r31
/* 802D3F88 002D0EC8 39 61 00 20 */ addi r11, r1, 0x20
/* 802D3F8C 002D0ECC 48 08 E2 91 */ bl func_8036221C
/* 802D3F90 002D0ED0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D3F94 002D0ED4 7C 08 03 A6 */ mtlr r0
/* 802D3F98 002D0ED8 38 21 00 20 */ addi r1, r1, 0x20
/* 802D3F9C 002D0EDC 4E 80 00 20 */ blr
.global JKRAramStream_NS_sync
JKRAramStream_NS_sync:
/* 802D3FA0 002D0EE0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D3FA4 002D0EE4 7C 08 02 A6 */ mflr r0
/* 802D3FA8 002D0EE8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D3FAC 002D0EEC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802D3FB0 002D0EF0 7C 7F 1B 78 */ mr r31, r3
/* 802D3FB4 002D0EF4 2C 04 00 00 */ cmpwi r4, 0
/* 802D3FB8 002D0EF8 40 82 00 30 */ bne lbl_802D3FE8
/* 802D3FBC 002D0EFC 38 7F 00 30 */ addi r3, r31, 0x30
/* 802D3FC0 002D0F00 38 81 00 08 */ addi r4, r1, 8
/* 802D3FC4 002D0F04 38 A0 00 01 */ li r5, 1
/* 802D3FC8 002D0F08 48 06 AA F5 */ bl OSReceiveMessage
/* 802D3FCC 002D0F0C 80 01 00 08 */ lwz r0, 8(r1)
/* 802D3FD0 002D0F10 28 00 00 00 */ cmplwi r0, 0
/* 802D3FD4 002D0F14 40 82 00 0C */ bne lbl_802D3FE0
/* 802D3FD8 002D0F18 38 60 00 00 */ li r3, 0
/* 802D3FDC 002D0F1C 48 00 00 44 */ b lbl_802D4020
lbl_802D3FE0:
/* 802D3FE0 002D0F20 7F E3 FB 78 */ mr r3, r31
/* 802D3FE4 002D0F24 48 00 00 3C */ b lbl_802D4020
lbl_802D3FE8:
/* 802D3FE8 002D0F28 38 7F 00 30 */ addi r3, r31, 0x30
/* 802D3FEC 002D0F2C 38 81 00 08 */ addi r4, r1, 8
/* 802D3FF0 002D0F30 38 A0 00 00 */ li r5, 0
/* 802D3FF4 002D0F34 48 06 AA C9 */ bl OSReceiveMessage
/* 802D3FF8 002D0F38 2C 03 00 00 */ cmpwi r3, 0
/* 802D3FFC 002D0F3C 40 82 00 0C */ bne lbl_802D4008
/* 802D4000 002D0F40 38 60 00 00 */ li r3, 0
/* 802D4004 002D0F44 48 00 00 1C */ b lbl_802D4020
lbl_802D4008:
/* 802D4008 002D0F48 80 01 00 08 */ lwz r0, 8(r1)
/* 802D400C 002D0F4C 28 00 00 00 */ cmplwi r0, 0
/* 802D4010 002D0F50 40 82 00 0C */ bne lbl_802D401C
/* 802D4014 002D0F54 38 60 00 00 */ li r3, 0
/* 802D4018 002D0F58 48 00 00 08 */ b lbl_802D4020
lbl_802D401C:
/* 802D401C 002D0F5C 7F E3 FB 78 */ mr r3, r31
lbl_802D4020:
/* 802D4020 002D0F60 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802D4024 002D0F64 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D4028 002D0F68 7C 08 03 A6 */ mtlr r0
/* 802D402C 002D0F6C 38 21 00 20 */ addi r1, r1, 0x20
/* 802D4030 002D0F70 4E 80 00 20 */ blr
.global JKRAramStream_NS_setTransBuffer
JKRAramStream_NS_setTransBuffer:
/* 802D4034 002D0F74 38 E0 00 00 */ li r7, 0
/* 802D4038 002D0F78 90 ED 8E 8C */ stw r7, lbl_8045140C-_SDA_BASE_(r13)
/* 802D403C 002D0F7C 3C C0 00 01 */ lis r6, 0x00008000@ha
/* 802D4040 002D0F80 38 06 80 00 */ addi r0, r6, 0x00008000@l
/* 802D4044 002D0F84 90 0D 8E 90 */ stw r0, lbl_80451410-_SDA_BASE_(r13)
/* 802D4048 002D0F88 90 ED 8E 94 */ stw r7, lbl_80451414-_SDA_BASE_(r13)
/* 802D404C 002D0F8C 28 03 00 00 */ cmplwi r3, 0
/* 802D4050 002D0F90 41 82 00 10 */ beq lbl_802D4060
/* 802D4054 002D0F94 38 03 00 1F */ addi r0, r3, 0x1f
/* 802D4058 002D0F98 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a
/* 802D405C 002D0F9C 90 0D 8E 8C */ stw r0, lbl_8045140C-_SDA_BASE_(r13)
lbl_802D4060:
/* 802D4060 002D0FA0 28 04 00 00 */ cmplwi r4, 0
/* 802D4064 002D0FA4 41 82 00 0C */ beq lbl_802D4070
/* 802D4068 002D0FA8 54 80 00 34 */ rlwinm r0, r4, 0, 0, 0x1a
/* 802D406C 002D0FAC 90 0D 8E 90 */ stw r0, lbl_80451410-_SDA_BASE_(r13)
lbl_802D4070:
/* 802D4070 002D0FB0 28 05 00 00 */ cmplwi r5, 0
/* 802D4074 002D0FB4 4D 82 00 20 */ beqlr
/* 802D4078 002D0FB8 28 03 00 00 */ cmplwi r3, 0
/* 802D407C 002D0FBC 4C 82 00 20 */ bnelr
/* 802D4080 002D0FC0 90 AD 8E 94 */ stw r5, lbl_80451414-_SDA_BASE_(r13)
/* 802D4084 002D0FC4 4E 80 00 20 */ blr
.global JKRAramStreamCommand
JKRAramStreamCommand:
/* 802D4088 002D0FC8 38 00 00 00 */ li r0, 0
/* 802D408C 002D0FCC 98 03 00 28 */ stb r0, 0x28(r3)
/* 802D4090 002D0FD0 4E 80 00 20 */ blr
/* 802D4094 002D0FD4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D4098 002D0FD8 7C 08 02 A6 */ mflr r0
/* 802D409C 002D0FDC 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D40A0 002D0FE0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D40A4 002D0FE4 93 C1 00 08 */ stw r30, 8(r1)
/* 802D40A8 002D0FE8 7C 7E 1B 78 */ mr r30, r3
/* 802D40AC 002D0FEC 81 83 00 00 */ lwz r12, 0(r3)
/* 802D40B0 002D0FF0 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 802D40B4 002D0FF4 7D 89 03 A6 */ mtctr r12
/* 802D40B8 002D0FF8 4E 80 04 21 */ bctrl
/* 802D40BC 002D0FFC 7C 7F 1B 78 */ mr r31, r3
/* 802D40C0 002D1000 7F C3 F3 78 */ mr r3, r30
/* 802D40C4 002D1004 81 9E 00 00 */ lwz r12, 0(r30)
/* 802D40C8 002D1008 81 8C 00 1C */ lwz r12, 0x1c(r12)
/* 802D40CC 002D100C 7D 89 03 A6 */ mtctr r12
/* 802D40D0 002D1010 4E 80 04 21 */ bctrl
/* 802D40D4 002D1014 7C 63 F8 50 */ subf r3, r3, r31
/* 802D40D8 002D1018 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D40DC 002D101C 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D40E0 002D1020 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D40E4 002D1024 7C 08 03 A6 */ mtlr r0
/* 802D40E8 002D1028 38 21 00 10 */ addi r1, r1, 0x10
/* 802D40EC 002D102C 4E 80 00 20 */ blr
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+126
View File
@@ -0,0 +1,126 @@
.include "macros.inc"
.section .text, "ax" # 802d12c4
.global JKRAssertHeap
JKRAssertHeap:
/* 802D12C4 002CE204 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D12C8 002CE208 7C 08 02 A6 */ mflr r0
/* 802D12CC 002CE20C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D12D0 002CE210 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D12D4 002CE214 7C 7F 1B 78 */ mr r31, r3
/* 802D12D8 002CE218 4B FF CE 61 */ bl JKRHeap
/* 802D12DC 002CE21C 3C 60 80 3D */ lis r3, lbl_803CC090@ha
/* 802D12E0 002CE220 38 03 C0 90 */ addi r0, r3, lbl_803CC090@l
/* 802D12E4 002CE224 90 1F 00 00 */ stw r0, 0(r31)
/* 802D12E8 002CE228 7F E3 FB 78 */ mr r3, r31
/* 802D12EC 002CE22C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D12F0 002CE230 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D12F4 002CE234 7C 08 03 A6 */ mtlr r0
/* 802D12F8 002CE238 38 21 00 10 */ addi r1, r1, 0x10
/* 802D12FC 002CE23C 4E 80 00 20 */ blr
/* 802D1300 002CE240 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D1304 002CE244 7C 08 02 A6 */ mflr r0
/* 802D1308 002CE248 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D130C 002CE24C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D1310 002CE250 93 C1 00 08 */ stw r30, 8(r1)
/* 802D1314 002CE254 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D1318 002CE258 7C 9F 23 78 */ mr r31, r4
/* 802D131C 002CE25C 41 82 00 30 */ beq lbl_802D134C
/* 802D1320 002CE260 3C 80 80 3D */ lis r4, lbl_803CC090@ha
/* 802D1324 002CE264 38 04 C0 90 */ addi r0, r4, lbl_803CC090@l
/* 802D1328 002CE268 90 1E 00 00 */ stw r0, 0(r30)
/* 802D132C 002CE26C 4B FF D7 95 */ bl JKRHeap_NS_dispose_X2_
/* 802D1330 002CE270 7F C3 F3 78 */ mr r3, r30
/* 802D1334 002CE274 38 80 00 00 */ li r4, 0
/* 802D1338 002CE278 4B FF CF 2D */ bl JKRHeap_NS_dtor
/* 802D133C 002CE27C 7F E0 07 35 */ extsh. r0, r31
/* 802D1340 002CE280 40 81 00 0C */ ble lbl_802D134C
/* 802D1344 002CE284 7F C3 F3 78 */ mr r3, r30
/* 802D1348 002CE288 4B FF D9 F5 */ bl __dl
lbl_802D134C:
/* 802D134C 002CE28C 7F C3 F3 78 */ mr r3, r30
/* 802D1350 002CE290 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D1354 002CE294 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D1358 002CE298 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D135C 002CE29C 7C 08 03 A6 */ mtlr r0
/* 802D1360 002CE2A0 38 21 00 10 */ addi r1, r1, 0x10
/* 802D1364 002CE2A4 4E 80 00 20 */ blr
.global JKRAssertHeap_NS_create
JKRAssertHeap_NS_create:
/* 802D1368 002CE2A8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D136C 002CE2AC 7C 08 02 A6 */ mflr r0
/* 802D1370 002CE2B0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D1374 002CE2B4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D1378 002CE2B8 7C 7F 1B 79 */ or. r31, r3, r3
/* 802D137C 002CE2BC 40 82 00 08 */ bne lbl_802D1384
/* 802D1380 002CE2C0 83 ED 8D F8 */ lwz r31, lbl_80451378-_SDA_BASE_(r13)
lbl_802D1384:
/* 802D1384 002CE2C4 38 60 00 70 */ li r3, 0x70
/* 802D1388 002CE2C8 38 80 00 10 */ li r4, 0x10
/* 802D138C 002CE2CC 7F E5 FB 78 */ mr r5, r31
/* 802D1390 002CE2D0 4B FF D0 E5 */ bl JKRHeap_NS_alloc
/* 802D1394 002CE2D4 7C 60 1B 79 */ or. r0, r3, r3
/* 802D1398 002CE2D8 40 82 00 0C */ bne lbl_802D13A4
/* 802D139C 002CE2DC 38 60 00 00 */ li r3, 0
/* 802D13A0 002CE2E0 48 00 00 24 */ b lbl_802D13C4
lbl_802D13A4:
/* 802D13A4 002CE2E4 41 82 00 1C */ beq lbl_802D13C0
/* 802D13A8 002CE2E8 38 80 00 00 */ li r4, 0
/* 802D13AC 002CE2EC 38 A0 00 00 */ li r5, 0
/* 802D13B0 002CE2F0 7F E6 FB 78 */ mr r6, r31
/* 802D13B4 002CE2F4 38 E0 00 00 */ li r7, 0
/* 802D13B8 002CE2F8 4B FF FF 0D */ bl JKRAssertHeap
/* 802D13BC 002CE2FC 7C 60 1B 78 */ mr r0, r3
lbl_802D13C0:
/* 802D13C0 002CE300 7C 03 03 78 */ mr r3, r0
lbl_802D13C4:
/* 802D13C4 002CE304 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D13C8 002CE308 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D13CC 002CE30C 7C 08 03 A6 */ mtlr r0
/* 802D13D0 002CE310 38 21 00 10 */ addi r1, r1, 0x10
/* 802D13D4 002CE314 4E 80 00 20 */ blr
/* 802D13D8 002CE318 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D13DC 002CE31C 7C 08 02 A6 */ mflr r0
/* 802D13E0 002CE320 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D13E4 002CE324 38 80 FF FF */ li r4, -1
/* 802D13E8 002CE328 81 83 00 00 */ lwz r12, 0(r3)
/* 802D13EC 002CE32C 81 8C 00 08 */ lwz r12, 8(r12)
/* 802D13F0 002CE330 7D 89 03 A6 */ mtctr r12
/* 802D13F4 002CE334 4E 80 04 21 */ bctrl
/* 802D13F8 002CE338 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D13FC 002CE33C 7C 08 03 A6 */ mtlr r0
/* 802D1400 002CE340 38 21 00 10 */ addi r1, r1, 0x10
/* 802D1404 002CE344 4E 80 00 20 */ blr
/* 802D1408 002CE348 3C 60 41 53 */ lis r3, 0x41535448@ha
/* 802D140C 002CE34C 38 63 54 48 */ addi r3, r3, 0x41535448@l
/* 802D1410 002CE350 4E 80 00 20 */ blr
/* 802D1414 002CE354 38 60 00 01 */ li r3, 1
/* 802D1418 002CE358 4E 80 00 20 */ blr
/* 802D141C 002CE35C 38 60 00 01 */ li r3, 1
/* 802D1420 002CE360 4E 80 00 20 */ blr
/* 802D1424 002CE364 38 60 00 01 */ li r3, 1
/* 802D1428 002CE368 4E 80 00 20 */ blr
/* 802D142C 002CE36C 38 60 00 00 */ li r3, 0
/* 802D1430 002CE370 4E 80 00 20 */ blr
/* 802D1434 002CE374 38 60 00 00 */ li r3, 0
/* 802D1438 002CE378 4E 80 00 20 */ blr
/* 802D143C 002CE37C 38 60 00 00 */ li r3, 0
/* 802D1440 002CE380 4E 80 00 20 */ blr
/* 802D1444 002CE384 4E 80 00 20 */ blr
/* 802D1448 002CE388 4E 80 00 20 */ blr
/* 802D144C 002CE38C 4E 80 00 20 */ blr
/* 802D1450 002CE390 4E 80 00 20 */ blr
/* 802D1454 002CE394 38 60 00 00 */ li r3, 0
/* 802D1458 002CE398 4E 80 00 20 */ blr
/* 802D145C 002CE39C 38 60 00 00 */ li r3, 0
/* 802D1460 002CE3A0 4E 80 00 20 */ blr
/* 802D1464 002CE3A4 38 60 00 00 */ li r3, 0
/* 802D1468 002CE3A8 4E 80 00 20 */ blr
/* 802D146C 002CE3AC 38 60 00 00 */ li r3, 0
/* 802D1470 002CE3B0 4E 80 00 20 */ blr
/* 802D1474 002CE3B4 38 60 00 00 */ li r3, 0
/* 802D1478 002CE3B8 4E 80 00 20 */ blr
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+74
View File
@@ -0,0 +1,74 @@
.include "macros.inc"
.section .text, "ax" # 802d147c
.global JKRDisposer
JKRDisposer:
/* 802D147C 002CE3BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D1480 002CE3C0 7C 08 02 A6 */ mflr r0
/* 802D1484 002CE3C4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D1488 002CE3C8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D148C 002CE3CC 7C 7F 1B 78 */ mr r31, r3
/* 802D1490 002CE3D0 3C 60 80 3D */ lis r3, lbl_803CC0F0@ha
/* 802D1494 002CE3D4 38 03 C0 F0 */ addi r0, r3, lbl_803CC0F0@l
/* 802D1498 002CE3D8 90 1F 00 00 */ stw r0, 0(r31)
/* 802D149C 002CE3DC 7F E4 FB 78 */ mr r4, r31
/* 802D14A0 002CE3E0 38 64 00 08 */ addi r3, r4, 8
/* 802D14A4 002CE3E4 48 00 A9 59 */ bl JSUPtrLink
/* 802D14A8 002CE3E8 7F E3 FB 78 */ mr r3, r31
/* 802D14AC 002CE3EC 4B FF D3 91 */ bl JKRHeap_NS_findFromRoot
/* 802D14B0 002CE3F0 90 7F 00 04 */ stw r3, 4(r31)
/* 802D14B4 002CE3F4 80 7F 00 04 */ lwz r3, 4(r31)
/* 802D14B8 002CE3F8 28 03 00 00 */ cmplwi r3, 0
/* 802D14BC 002CE3FC 41 82 00 10 */ beq lbl_802D14CC
/* 802D14C0 002CE400 38 63 00 5C */ addi r3, r3, 0x5c
/* 802D14C4 002CE404 38 9F 00 08 */ addi r4, r31, 8
/* 802D14C8 002CE408 48 00 AA 85 */ bl JSUPtrList_NS_append
lbl_802D14CC:
/* 802D14CC 002CE40C 7F E3 FB 78 */ mr r3, r31
/* 802D14D0 002CE410 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D14D4 002CE414 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D14D8 002CE418 7C 08 03 A6 */ mtlr r0
/* 802D14DC 002CE41C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D14E0 002CE420 4E 80 00 20 */ blr
.global JKRDisposer_NS_dtor
JKRDisposer_NS_dtor:
/* 802D14E4 002CE424 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D14E8 002CE428 7C 08 02 A6 */ mflr r0
/* 802D14EC 002CE42C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D14F0 002CE430 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D14F4 002CE434 93 C1 00 08 */ stw r30, 8(r1)
/* 802D14F8 002CE438 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D14FC 002CE43C 7C 9F 23 78 */ mr r31, r4
/* 802D1500 002CE440 41 82 00 4C */ beq lbl_802D154C
/* 802D1504 002CE444 3C 60 80 3D */ lis r3, lbl_803CC0F0@ha
/* 802D1508 002CE448 38 03 C0 F0 */ addi r0, r3, lbl_803CC0F0@l
/* 802D150C 002CE44C 90 1E 00 00 */ stw r0, 0(r30)
/* 802D1510 002CE450 80 7E 00 04 */ lwz r3, 4(r30)
/* 802D1514 002CE454 28 03 00 00 */ cmplwi r3, 0
/* 802D1518 002CE458 41 82 00 10 */ beq lbl_802D1528
/* 802D151C 002CE45C 38 63 00 5C */ addi r3, r3, 0x5c
/* 802D1520 002CE460 38 9E 00 08 */ addi r4, r30, 8
/* 802D1524 002CE464 48 00 AC 39 */ bl JSUPtrList_NS_remove
lbl_802D1528:
/* 802D1528 002CE468 34 1E 00 08 */ addic. r0, r30, 8
/* 802D152C 002CE46C 41 82 00 10 */ beq lbl_802D153C
/* 802D1530 002CE470 38 7E 00 08 */ addi r3, r30, 8
/* 802D1534 002CE474 38 80 00 00 */ li r4, 0
/* 802D1538 002CE478 48 00 A8 DD */ bl JSUPtrLink_NS_dtor
lbl_802D153C:
/* 802D153C 002CE47C 7F E0 07 35 */ extsh. r0, r31
/* 802D1540 002CE480 40 81 00 0C */ ble lbl_802D154C
/* 802D1544 002CE484 7F C3 F3 78 */ mr r3, r30
/* 802D1548 002CE488 4B FF D7 F5 */ bl __dl
lbl_802D154C:
/* 802D154C 002CE48C 7F C3 F3 78 */ mr r3, r30
/* 802D1550 002CE490 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D1554 002CE494 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D1558 002CE498 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D155C 002CE49C 7C 08 03 A6 */ mtlr r0
/* 802D1560 002CE4A0 38 21 00 10 */ addi r1, r1, 0x10
/* 802D1564 002CE4A4 4E 80 00 20 */ blr
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+441
View File
@@ -0,0 +1,441 @@
.include "macros.inc"
.section .text, "ax" # 802d9584
.global JKRDvdFile
JKRDvdFile:
/* 802D9584 002D64C4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D9588 002D64C8 7C 08 02 A6 */ mflr r0
/* 802D958C 002D64CC 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D9590 002D64D0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D9594 002D64D4 93 C1 00 08 */ stw r30, 8(r1)
/* 802D9598 002D64D8 7C 7E 1B 78 */ mr r30, r3
/* 802D959C 002D64DC 7F C0 F3 78 */ mr r0, r30
/* 802D95A0 002D64E0 7C 1F 03 78 */ mr r31, r0
/* 802D95A4 002D64E4 4B FF 7E D9 */ bl JKRDisposer
/* 802D95A8 002D64E8 3C 60 80 3D */ lis r3, lbl_803CC328@ha
/* 802D95AC 002D64EC 38 03 C3 28 */ addi r0, r3, lbl_803CC328@l
/* 802D95B0 002D64F0 90 1F 00 00 */ stw r0, 0(r31)
/* 802D95B4 002D64F4 38 00 00 00 */ li r0, 0
/* 802D95B8 002D64F8 98 1F 00 18 */ stb r0, 0x18(r31)
/* 802D95BC 002D64FC 3C 60 80 3D */ lis r3, lbl_803CC438@ha
/* 802D95C0 002D6500 38 03 C4 38 */ addi r0, r3, lbl_803CC438@l
/* 802D95C4 002D6504 90 1E 00 00 */ stw r0, 0(r30)
/* 802D95C8 002D6508 38 7E 00 E4 */ addi r3, r30, 0xe4
/* 802D95CC 002D650C 7F C4 F3 78 */ mr r4, r30
/* 802D95D0 002D6510 48 00 28 2D */ bl JSUPtrLink
/* 802D95D4 002D6514 7F C3 F3 78 */ mr r3, r30
/* 802D95D8 002D6518 48 00 02 0D */ bl JKRDvdFile_NS_initiate
/* 802D95DC 002D651C 7F C3 F3 78 */ mr r3, r30
/* 802D95E0 002D6520 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D95E4 002D6524 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D95E8 002D6528 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D95EC 002D652C 7C 08 03 A6 */ mtlr r0
/* 802D95F0 002D6530 38 21 00 10 */ addi r1, r1, 0x10
/* 802D95F4 002D6534 4E 80 00 20 */ blr
.global JKRDvdFile_X1_
JKRDvdFile_X1_:
/* 802D95F8 002D6538 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D95FC 002D653C 7C 08 02 A6 */ mflr r0
/* 802D9600 002D6540 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D9604 002D6544 39 61 00 20 */ addi r11, r1, 0x20
/* 802D9608 002D6548 48 08 8B D5 */ bl func_803621DC
/* 802D960C 002D654C 7C 7D 1B 78 */ mr r29, r3
/* 802D9610 002D6550 7C 9F 23 78 */ mr r31, r4
/* 802D9614 002D6554 7F A0 EB 78 */ mr r0, r29
/* 802D9618 002D6558 7C 1E 03 78 */ mr r30, r0
/* 802D961C 002D655C 4B FF 7E 61 */ bl JKRDisposer
/* 802D9620 002D6560 3C 60 80 3D */ lis r3, lbl_803CC328@ha
/* 802D9624 002D6564 38 03 C3 28 */ addi r0, r3, lbl_803CC328@l
/* 802D9628 002D6568 90 1E 00 00 */ stw r0, 0(r30)
/* 802D962C 002D656C 38 00 00 00 */ li r0, 0
/* 802D9630 002D6570 98 1E 00 18 */ stb r0, 0x18(r30)
/* 802D9634 002D6574 3C 60 80 3D */ lis r3, lbl_803CC438@ha
/* 802D9638 002D6578 38 03 C4 38 */ addi r0, r3, lbl_803CC438@l
/* 802D963C 002D657C 90 1D 00 00 */ stw r0, 0(r29)
/* 802D9640 002D6580 38 7D 00 E4 */ addi r3, r29, 0xe4
/* 802D9644 002D6584 7F A4 EB 78 */ mr r4, r29
/* 802D9648 002D6588 48 00 27 B5 */ bl JSUPtrLink
/* 802D964C 002D658C 7F A3 EB 78 */ mr r3, r29
/* 802D9650 002D6590 48 00 01 95 */ bl JKRDvdFile_NS_initiate
/* 802D9654 002D6594 7F A3 EB 78 */ mr r3, r29
/* 802D9658 002D6598 7F E4 FB 78 */ mr r4, r31
/* 802D965C 002D659C 81 9D 00 00 */ lwz r12, 0(r29)
/* 802D9660 002D65A0 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802D9664 002D65A4 7D 89 03 A6 */ mtctr r12
/* 802D9668 002D65A8 4E 80 04 21 */ bctrl
/* 802D966C 002D65AC 98 7D 00 18 */ stb r3, 0x18(r29)
/* 802D9670 002D65B0 88 1D 00 18 */ lbz r0, 0x18(r29)
/* 802D9674 002D65B4 28 00 00 00 */ cmplwi r0, 0
/* 802D9678 002D65B8 41 82 00 0C */ beq lbl_802D9684
/* 802D967C 002D65BC 7F A3 EB 78 */ mr r3, r29
/* 802D9680 002D65C0 48 00 00 08 */ b lbl_802D9688
lbl_802D9684:
/* 802D9684 002D65C4 7F A3 EB 78 */ mr r3, r29
lbl_802D9688:
/* 802D9688 002D65C8 39 61 00 20 */ addi r11, r1, 0x20
/* 802D968C 002D65CC 48 08 8B 9D */ bl func_80362228
/* 802D9690 002D65D0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D9694 002D65D4 7C 08 03 A6 */ mtlr r0
/* 802D9698 002D65D8 38 21 00 20 */ addi r1, r1, 0x20
/* 802D969C 002D65DC 4E 80 00 20 */ blr
.global JKRDvdFile_X2_
JKRDvdFile_X2_:
/* 802D96A0 002D65E0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D96A4 002D65E4 7C 08 02 A6 */ mflr r0
/* 802D96A8 002D65E8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D96AC 002D65EC 39 61 00 20 */ addi r11, r1, 0x20
/* 802D96B0 002D65F0 48 08 8B 2D */ bl func_803621DC
/* 802D96B4 002D65F4 7C 7D 1B 78 */ mr r29, r3
/* 802D96B8 002D65F8 7C 9F 23 78 */ mr r31, r4
/* 802D96BC 002D65FC 7F A0 EB 78 */ mr r0, r29
/* 802D96C0 002D6600 7C 1E 03 78 */ mr r30, r0
/* 802D96C4 002D6604 4B FF 7D B9 */ bl JKRDisposer
/* 802D96C8 002D6608 3C 60 80 3D */ lis r3, lbl_803CC328@ha
/* 802D96CC 002D660C 38 03 C3 28 */ addi r0, r3, lbl_803CC328@l
/* 802D96D0 002D6610 90 1E 00 00 */ stw r0, 0(r30)
/* 802D96D4 002D6614 38 00 00 00 */ li r0, 0
/* 802D96D8 002D6618 98 1E 00 18 */ stb r0, 0x18(r30)
/* 802D96DC 002D661C 3C 60 80 3D */ lis r3, lbl_803CC438@ha
/* 802D96E0 002D6620 38 03 C4 38 */ addi r0, r3, lbl_803CC438@l
/* 802D96E4 002D6624 90 1D 00 00 */ stw r0, 0(r29)
/* 802D96E8 002D6628 38 7D 00 E4 */ addi r3, r29, 0xe4
/* 802D96EC 002D662C 7F A4 EB 78 */ mr r4, r29
/* 802D96F0 002D6630 48 00 27 0D */ bl JSUPtrLink
/* 802D96F4 002D6634 7F A3 EB 78 */ mr r3, r29
/* 802D96F8 002D6638 48 00 00 ED */ bl JKRDvdFile_NS_initiate
/* 802D96FC 002D663C 7F A3 EB 78 */ mr r3, r29
/* 802D9700 002D6640 7F E4 FB 78 */ mr r4, r31
/* 802D9704 002D6644 81 9D 00 00 */ lwz r12, 0(r29)
/* 802D9708 002D6648 81 8C 00 20 */ lwz r12, 0x20(r12)
/* 802D970C 002D664C 7D 89 03 A6 */ mtctr r12
/* 802D9710 002D6650 4E 80 04 21 */ bctrl
/* 802D9714 002D6654 98 7D 00 18 */ stb r3, 0x18(r29)
/* 802D9718 002D6658 88 1D 00 18 */ lbz r0, 0x18(r29)
/* 802D971C 002D665C 28 00 00 00 */ cmplwi r0, 0
/* 802D9720 002D6660 41 82 00 0C */ beq lbl_802D972C
/* 802D9724 002D6664 7F A3 EB 78 */ mr r3, r29
/* 802D9728 002D6668 48 00 00 08 */ b lbl_802D9730
lbl_802D972C:
/* 802D972C 002D666C 7F A3 EB 78 */ mr r3, r29
lbl_802D9730:
/* 802D9730 002D6670 39 61 00 20 */ addi r11, r1, 0x20
/* 802D9734 002D6674 48 08 8A F5 */ bl func_80362228
/* 802D9738 002D6678 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D973C 002D667C 7C 08 03 A6 */ mtlr r0
/* 802D9740 002D6680 38 21 00 20 */ addi r1, r1, 0x20
/* 802D9744 002D6684 4E 80 00 20 */ blr
.global JKRDvdFile_NS_dtor
JKRDvdFile_NS_dtor:
/* 802D9748 002D6688 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D974C 002D668C 7C 08 02 A6 */ mflr r0
/* 802D9750 002D6690 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D9754 002D6694 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D9758 002D6698 93 C1 00 08 */ stw r30, 8(r1)
/* 802D975C 002D669C 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D9760 002D66A0 7C 9F 23 78 */ mr r31, r4
/* 802D9764 002D66A4 41 82 00 64 */ beq lbl_802D97C8
/* 802D9768 002D66A8 3C 80 80 3D */ lis r4, lbl_803CC438@ha
/* 802D976C 002D66AC 38 04 C4 38 */ addi r0, r4, lbl_803CC438@l
/* 802D9770 002D66B0 90 1E 00 00 */ stw r0, 0(r30)
/* 802D9774 002D66B4 81 83 00 00 */ lwz r12, 0(r3)
/* 802D9778 002D66B8 81 8C 00 10 */ lwz r12, 0x10(r12)
/* 802D977C 002D66BC 7D 89 03 A6 */ mtctr r12
/* 802D9780 002D66C0 4E 80 04 21 */ bctrl
/* 802D9784 002D66C4 34 1E 00 E4 */ addic. r0, r30, 0xe4
/* 802D9788 002D66C8 41 82 00 10 */ beq lbl_802D9798
/* 802D978C 002D66CC 38 7E 00 E4 */ addi r3, r30, 0xe4
/* 802D9790 002D66D0 38 80 00 00 */ li r4, 0
/* 802D9794 002D66D4 48 00 26 81 */ bl JSUPtrLink_NS_dtor
lbl_802D9798:
/* 802D9798 002D66D8 28 1E 00 00 */ cmplwi r30, 0
/* 802D979C 002D66DC 41 82 00 1C */ beq lbl_802D97B8
/* 802D97A0 002D66E0 3C 60 80 3D */ lis r3, lbl_803CC328@ha
/* 802D97A4 002D66E4 38 03 C3 28 */ addi r0, r3, lbl_803CC328@l
/* 802D97A8 002D66E8 90 1E 00 00 */ stw r0, 0(r30)
/* 802D97AC 002D66EC 7F C3 F3 78 */ mr r3, r30
/* 802D97B0 002D66F0 38 80 00 00 */ li r4, 0
/* 802D97B4 002D66F4 4B FF 7D 31 */ bl JKRDisposer_NS_dtor
lbl_802D97B8:
/* 802D97B8 002D66F8 7F E0 07 35 */ extsh. r0, r31
/* 802D97BC 002D66FC 40 81 00 0C */ ble lbl_802D97C8
/* 802D97C0 002D6700 7F C3 F3 78 */ mr r3, r30
/* 802D97C4 002D6704 4B FF 55 79 */ bl __dl
lbl_802D97C8:
/* 802D97C8 002D6708 7F C3 F3 78 */ mr r3, r30
/* 802D97CC 002D670C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D97D0 002D6710 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D97D4 002D6714 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D97D8 002D6718 7C 08 03 A6 */ mtlr r0
/* 802D97DC 002D671C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D97E0 002D6720 4E 80 00 20 */ blr
.global JKRDvdFile_NS_initiate
JKRDvdFile_NS_initiate:
/* 802D97E4 002D6724 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D97E8 002D6728 7C 08 02 A6 */ mflr r0
/* 802D97EC 002D672C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D97F0 002D6730 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D97F4 002D6734 7C 7F 1B 78 */ mr r31, r3
/* 802D97F8 002D6738 93 E3 00 98 */ stw r31, 0x98(r3)
/* 802D97FC 002D673C 38 7F 00 1C */ addi r3, r31, 0x1c
/* 802D9800 002D6740 48 06 58 09 */ bl OSInitMutex
/* 802D9804 002D6744 38 7F 00 34 */ addi r3, r31, 0x34
/* 802D9808 002D6748 48 06 58 01 */ bl OSInitMutex
/* 802D980C 002D674C 38 7F 00 C0 */ addi r3, r31, 0xc0
/* 802D9810 002D6750 38 9F 00 E0 */ addi r4, r31, 0xe0
/* 802D9814 002D6754 38 A0 00 01 */ li r5, 1
/* 802D9818 002D6758 48 06 51 7D */ bl OSInitMessageQueue
/* 802D981C 002D675C 38 7F 00 9C */ addi r3, r31, 0x9c
/* 802D9820 002D6760 38 9F 00 BC */ addi r4, r31, 0xbc
/* 802D9824 002D6764 38 A0 00 01 */ li r5, 1
/* 802D9828 002D6768 48 06 51 6D */ bl OSInitMessageQueue
/* 802D982C 002D676C 38 00 00 00 */ li r0, 0
/* 802D9830 002D6770 90 1F 00 F4 */ stw r0, 0xf4(r31)
/* 802D9834 002D6774 90 1F 00 50 */ stw r0, 0x50(r31)
/* 802D9838 002D6778 90 1F 00 58 */ stw r0, 0x58(r31)
/* 802D983C 002D677C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D9840 002D6780 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D9844 002D6784 7C 08 03 A6 */ mtlr r0
/* 802D9848 002D6788 38 21 00 10 */ addi r1, r1, 0x10
/* 802D984C 002D678C 4E 80 00 20 */ blr
.global JKRDvdFile_NS_open
JKRDvdFile_NS_open:
/* 802D9850 002D6790 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D9854 002D6794 7C 08 02 A6 */ mflr r0
/* 802D9858 002D6798 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D985C 002D679C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D9860 002D67A0 7C 7F 1B 78 */ mr r31, r3
/* 802D9864 002D67A4 88 03 00 18 */ lbz r0, 0x18(r3)
/* 802D9868 002D67A8 28 00 00 00 */ cmplwi r0, 0
/* 802D986C 002D67AC 40 82 00 40 */ bne lbl_802D98AC
/* 802D9870 002D67B0 7C 83 23 78 */ mr r3, r4
/* 802D9874 002D67B4 38 9F 00 5C */ addi r4, r31, 0x5c
/* 802D9878 002D67B8 48 06 F0 19 */ bl DVDOpen
/* 802D987C 002D67BC 30 03 FF FF */ addic r0, r3, -1
/* 802D9880 002D67C0 7C 00 19 10 */ subfe r0, r0, r3
/* 802D9884 002D67C4 98 1F 00 18 */ stb r0, 0x18(r31)
/* 802D9888 002D67C8 88 1F 00 18 */ lbz r0, 0x18(r31)
/* 802D988C 002D67CC 28 00 00 00 */ cmplwi r0, 0
/* 802D9890 002D67D0 41 82 00 1C */ beq lbl_802D98AC
/* 802D9894 002D67D4 3C 60 80 43 */ lis r3, lbl_8043436C@ha
/* 802D9898 002D67D8 38 63 43 6C */ addi r3, r3, lbl_8043436C@l
/* 802D989C 002D67DC 38 9F 00 E4 */ addi r4, r31, 0xe4
/* 802D98A0 002D67E0 48 00 26 AD */ bl JSUPtrList_NS_append
/* 802D98A4 002D67E4 38 7F 00 5C */ addi r3, r31, 0x5c
/* 802D98A8 002D67E8 48 07 18 D5 */ bl DVDGetCommandBlockStatus
lbl_802D98AC:
/* 802D98AC 002D67EC 88 7F 00 18 */ lbz r3, 0x18(r31)
/* 802D98B0 002D67F0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D98B4 002D67F4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D98B8 002D67F8 7C 08 03 A6 */ mtlr r0
/* 802D98BC 002D67FC 38 21 00 10 */ addi r1, r1, 0x10
/* 802D98C0 002D6800 4E 80 00 20 */ blr
.global JKRDvdFile_NS_open_X1_
JKRDvdFile_NS_open_X1_:
/* 802D98C4 002D6804 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D98C8 002D6808 7C 08 02 A6 */ mflr r0
/* 802D98CC 002D680C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D98D0 002D6810 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D98D4 002D6814 7C 7F 1B 78 */ mr r31, r3
/* 802D98D8 002D6818 88 03 00 18 */ lbz r0, 0x18(r3)
/* 802D98DC 002D681C 28 00 00 00 */ cmplwi r0, 0
/* 802D98E0 002D6820 40 82 00 40 */ bne lbl_802D9920
/* 802D98E4 002D6824 7C 83 23 78 */ mr r3, r4
/* 802D98E8 002D6828 38 9F 00 5C */ addi r4, r31, 0x5c
/* 802D98EC 002D682C 48 06 EF 31 */ bl DVDFastOpen
/* 802D98F0 002D6830 30 03 FF FF */ addic r0, r3, -1
/* 802D98F4 002D6834 7C 00 19 10 */ subfe r0, r0, r3
/* 802D98F8 002D6838 98 1F 00 18 */ stb r0, 0x18(r31)
/* 802D98FC 002D683C 88 1F 00 18 */ lbz r0, 0x18(r31)
/* 802D9900 002D6840 28 00 00 00 */ cmplwi r0, 0
/* 802D9904 002D6844 41 82 00 1C */ beq lbl_802D9920
/* 802D9908 002D6848 3C 60 80 43 */ lis r3, lbl_8043436C@ha
/* 802D990C 002D684C 38 63 43 6C */ addi r3, r3, lbl_8043436C@l
/* 802D9910 002D6850 38 9F 00 E4 */ addi r4, r31, 0xe4
/* 802D9914 002D6854 48 00 26 39 */ bl JSUPtrList_NS_append
/* 802D9918 002D6858 38 7F 00 5C */ addi r3, r31, 0x5c
/* 802D991C 002D685C 48 07 18 61 */ bl DVDGetCommandBlockStatus
lbl_802D9920:
/* 802D9920 002D6860 88 7F 00 18 */ lbz r3, 0x18(r31)
/* 802D9924 002D6864 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D9928 002D6868 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D992C 002D686C 7C 08 03 A6 */ mtlr r0
/* 802D9930 002D6870 38 21 00 10 */ addi r1, r1, 0x10
/* 802D9934 002D6874 4E 80 00 20 */ blr
/* 802D9938 002D6878 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D993C 002D687C 7C 08 02 A6 */ mflr r0
/* 802D9940 002D6880 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D9944 002D6884 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D9948 002D6888 7C 7F 1B 78 */ mr r31, r3
/* 802D994C 002D688C 88 03 00 18 */ lbz r0, 0x18(r3)
/* 802D9950 002D6890 28 00 00 00 */ cmplwi r0, 0
/* 802D9954 002D6894 41 82 00 4C */ beq lbl_802D99A0
/* 802D9958 002D6898 38 7F 00 5C */ addi r3, r31, 0x5c
/* 802D995C 002D689C 48 06 EF FD */ bl DVDClose
/* 802D9960 002D68A0 2C 03 00 00 */ cmpwi r3, 0
/* 802D9964 002D68A4 41 82 00 20 */ beq lbl_802D9984
/* 802D9968 002D68A8 38 00 00 00 */ li r0, 0
/* 802D996C 002D68AC 98 1F 00 18 */ stb r0, 0x18(r31)
/* 802D9970 002D68B0 3C 60 80 43 */ lis r3, lbl_8043436C@ha
/* 802D9974 002D68B4 38 63 43 6C */ addi r3, r3, lbl_8043436C@l
/* 802D9978 002D68B8 38 9F 00 E4 */ addi r4, r31, 0xe4
/* 802D997C 002D68BC 48 00 27 E1 */ bl JSUPtrList_NS_remove
/* 802D9980 002D68C0 48 00 00 20 */ b lbl_802D99A0
lbl_802D9984:
/* 802D9984 002D68C4 3C 60 80 3A */ lis r3, lbl_8039D260@ha
/* 802D9988 002D68C8 38 63 D2 60 */ addi r3, r3, lbl_8039D260@l
/* 802D998C 002D68CC 38 80 00 D5 */ li r4, 0xd5
/* 802D9990 002D68D0 38 A3 00 0F */ addi r5, r3, 0xf
/* 802D9994 002D68D4 38 C3 00 12 */ addi r6, r3, 0x12
/* 802D9998 002D68D8 4C C6 31 82 */ crclr 6
/* 802D999C 002D68DC 48 00 88 61 */ bl JUTException_NS_panic_f
lbl_802D99A0:
/* 802D99A0 002D68E0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D99A4 002D68E4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D99A8 002D68E8 7C 08 03 A6 */ mtlr r0
/* 802D99AC 002D68EC 38 21 00 10 */ addi r1, r1, 0x10
/* 802D99B0 002D68F0 4E 80 00 20 */ blr
/* 802D99B4 002D68F4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D99B8 002D68F8 7C 08 02 A6 */ mflr r0
/* 802D99BC 002D68FC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D99C0 002D6900 39 61 00 20 */ addi r11, r1, 0x20
/* 802D99C4 002D6904 48 08 88 11 */ bl func_803621D4
/* 802D99C8 002D6908 7C 7B 1B 78 */ mr r27, r3
/* 802D99CC 002D690C 7C 9C 23 78 */ mr r28, r4
/* 802D99D0 002D6910 7C BD 2B 78 */ mr r29, r5
/* 802D99D4 002D6914 7C DE 33 78 */ mr r30, r6
/* 802D99D8 002D6918 38 7B 00 1C */ addi r3, r27, 0x1c
/* 802D99DC 002D691C 48 06 56 65 */ bl OSLockMutex
/* 802D99E0 002D6920 80 1B 00 F4 */ lwz r0, 0xf4(r27)
/* 802D99E4 002D6924 28 00 00 00 */ cmplwi r0, 0
/* 802D99E8 002D6928 41 82 00 14 */ beq lbl_802D99FC
/* 802D99EC 002D692C 38 7B 00 1C */ addi r3, r27, 0x1c
/* 802D99F0 002D6930 48 06 57 2D */ bl OSUnlockMutex
/* 802D99F4 002D6934 38 60 FF FF */ li r3, -1
/* 802D99F8 002D6938 48 00 00 58 */ b lbl_802D9A50
lbl_802D99FC:
/* 802D99FC 002D693C 48 06 72 89 */ bl OSGetCurrentThread
/* 802D9A00 002D6940 90 7B 00 F4 */ stw r3, 0xf4(r27)
/* 802D9A04 002D6944 3B E0 FF FF */ li r31, -1
/* 802D9A08 002D6948 38 7B 00 5C */ addi r3, r27, 0x5c
/* 802D9A0C 002D694C 7F 84 E3 78 */ mr r4, r28
/* 802D9A10 002D6950 7F A5 EB 78 */ mr r5, r29
/* 802D9A14 002D6954 7F C6 F3 78 */ mr r6, r30
.global JKRDvdFile_NS_doneProcess
/* 802D9A18 002D6958 3C E0 80 2E */ lis r7, JKRDvdFile_NS_doneProcess@ha
.global JKRDvdFile_NS_doneProcess
/* 802D9A1C 002D695C 38 E7 9A C4 */ addi r7, r7, JKRDvdFile_NS_doneProcess@l
/* 802D9A20 002D6960 39 00 00 02 */ li r8, 2
/* 802D9A24 002D6964 48 06 F3 31 */ bl DVDReadAsyncPrio
/* 802D9A28 002D6968 2C 03 00 00 */ cmpwi r3, 0
/* 802D9A2C 002D696C 41 82 00 10 */ beq lbl_802D9A3C
/* 802D9A30 002D6970 7F 63 DB 78 */ mr r3, r27
/* 802D9A34 002D6974 48 00 00 3D */ bl JKRDvdFile_NS_sync
/* 802D9A38 002D6978 7C 7F 1B 78 */ mr r31, r3
lbl_802D9A3C:
/* 802D9A3C 002D697C 38 00 00 00 */ li r0, 0
/* 802D9A40 002D6980 90 1B 00 F4 */ stw r0, 0xf4(r27)
/* 802D9A44 002D6984 38 7B 00 1C */ addi r3, r27, 0x1c
/* 802D9A48 002D6988 48 06 56 D5 */ bl OSUnlockMutex
/* 802D9A4C 002D698C 7F E3 FB 78 */ mr r3, r31
lbl_802D9A50:
/* 802D9A50 002D6990 39 61 00 20 */ addi r11, r1, 0x20
/* 802D9A54 002D6994 48 08 87 CD */ bl func_80362220
/* 802D9A58 002D6998 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D9A5C 002D699C 7C 08 03 A6 */ mtlr r0
/* 802D9A60 002D69A0 38 21 00 20 */ addi r1, r1, 0x20
/* 802D9A64 002D69A4 4E 80 00 20 */ blr
/* 802D9A68 002D69A8 38 60 FF FF */ li r3, -1
/* 802D9A6C 002D69AC 4E 80 00 20 */ blr
.global JKRDvdFile_NS_sync
JKRDvdFile_NS_sync:
/* 802D9A70 002D69B0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D9A74 002D69B4 7C 08 02 A6 */ mflr r0
/* 802D9A78 002D69B8 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D9A7C 002D69BC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802D9A80 002D69C0 7C 7F 1B 78 */ mr r31, r3
/* 802D9A84 002D69C4 38 7F 00 1C */ addi r3, r31, 0x1c
/* 802D9A88 002D69C8 48 06 55 B9 */ bl OSLockMutex
/* 802D9A8C 002D69CC 38 7F 00 C0 */ addi r3, r31, 0xc0
/* 802D9A90 002D69D0 38 81 00 08 */ addi r4, r1, 8
/* 802D9A94 002D69D4 38 A0 00 01 */ li r5, 1
/* 802D9A98 002D69D8 48 06 50 25 */ bl OSReceiveMessage
/* 802D9A9C 002D69DC 38 00 00 00 */ li r0, 0
/* 802D9AA0 002D69E0 90 1F 00 F4 */ stw r0, 0xf4(r31)
/* 802D9AA4 002D69E4 38 7F 00 1C */ addi r3, r31, 0x1c
/* 802D9AA8 002D69E8 48 06 56 75 */ bl OSUnlockMutex
/* 802D9AAC 002D69EC 80 61 00 08 */ lwz r3, 8(r1)
/* 802D9AB0 002D69F0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802D9AB4 002D69F4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D9AB8 002D69F8 7C 08 03 A6 */ mtlr r0
/* 802D9ABC 002D69FC 38 21 00 20 */ addi r1, r1, 0x20
/* 802D9AC0 002D6A00 4E 80 00 20 */ blr
.global JKRDvdFile_NS_doneProcess
JKRDvdFile_NS_doneProcess:
/* 802D9AC4 002D6A04 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D9AC8 002D6A08 7C 08 02 A6 */ mflr r0
/* 802D9ACC 002D6A0C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D9AD0 002D6A10 7C 60 1B 78 */ mr r0, r3
/* 802D9AD4 002D6A14 80 64 00 3C */ lwz r3, 0x3c(r4)
/* 802D9AD8 002D6A18 38 63 00 C0 */ addi r3, r3, 0xc0
/* 802D9ADC 002D6A1C 7C 04 03 78 */ mr r4, r0
/* 802D9AE0 002D6A20 38 A0 00 00 */ li r5, 0
/* 802D9AE4 002D6A24 48 06 4F 11 */ bl OSSendMessage
/* 802D9AE8 002D6A28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D9AEC 002D6A2C 7C 08 03 A6 */ mtlr r0
/* 802D9AF0 002D6A30 38 21 00 10 */ addi r1, r1, 0x10
/* 802D9AF4 002D6A34 4E 80 00 20 */ blr
/* 802D9AF8 002D6A38 80 63 00 90 */ lwz r3, 0x90(r3)
/* 802D9AFC 002D6A3C 4E 80 00 20 */ blr
/* 802D9B00 002D6A40 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D9B04 002D6A44 7C 08 02 A6 */ mflr r0
/* 802D9B08 002D6A48 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D9B0C 002D6A4C 3C 60 80 43 */ lis r3, lbl_8043436C@ha
/* 802D9B10 002D6A50 38 63 43 6C */ addi r3, r3, lbl_8043436C@l
/* 802D9B14 002D6A54 48 00 24 01 */ bl JSUPtrList_NS_initiate
/* 802D9B18 002D6A58 3C 60 80 43 */ lis r3, lbl_8043436C@ha
/* 802D9B1C 002D6A5C 38 63 43 6C */ addi r3, r3, lbl_8043436C@l
.global JSUList_NS_dtor_X7_
/* 802D9B20 002D6A60 3C 80 80 2E */ lis r4, JSUList_NS_dtor_X7_@ha
.global JSUList_NS_dtor_X7_
/* 802D9B24 002D6A64 38 84 9B 44 */ addi r4, r4, JSUList_NS_dtor_X7_@l
/* 802D9B28 002D6A68 3C A0 80 43 */ lis r5, lbl_80434360@ha
/* 802D9B2C 002D6A6C 38 A5 43 60 */ addi r5, r5, lbl_80434360@l
/* 802D9B30 002D6A70 48 08 80 F5 */ bl func_80361C24
/* 802D9B34 002D6A74 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D9B38 002D6A78 7C 08 03 A6 */ mtlr r0
/* 802D9B3C 002D6A7C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D9B40 002D6A80 4E 80 00 20 */ blr
.global JSUList_NS_dtor_X7_
JSUList_NS_dtor_X7_:
/* 802D9B44 002D6A84 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D9B48 002D6A88 7C 08 02 A6 */ mflr r0
/* 802D9B4C 002D6A8C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D9B50 002D6A90 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D9B54 002D6A94 93 C1 00 08 */ stw r30, 8(r1)
/* 802D9B58 002D6A98 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D9B5C 002D6A9C 7C 9F 23 78 */ mr r31, r4
/* 802D9B60 002D6AA0 41 82 00 1C */ beq lbl_802D9B7C
/* 802D9B64 002D6AA4 38 80 00 00 */ li r4, 0
/* 802D9B68 002D6AA8 48 00 23 45 */ bl JSUPtrList_NS_dtor
/* 802D9B6C 002D6AAC 7F E0 07 35 */ extsh. r0, r31
/* 802D9B70 002D6AB0 40 81 00 0C */ ble lbl_802D9B7C
/* 802D9B74 002D6AB4 7F C3 F3 78 */ mr r3, r30
/* 802D9B78 002D6AB8 4B FF 51 C5 */ bl __dl
lbl_802D9B7C:
/* 802D9B7C 002D6ABC 7F C3 F3 78 */ mr r3, r30
/* 802D9B80 002D6AC0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D9B84 002D6AC4 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D9B88 002D6AC8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D9B8C 002D6ACC 7C 08 03 A6 */ mtlr r0
/* 802D9B90 002D6AD0 38 21 00 10 */ addi r1, r1, 0x10
/* 802D9B94 002D6AD4 4E 80 00 20 */ blr
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+37
View File
@@ -0,0 +1,37 @@
.include "macros.inc"
.section .text, "ax" # 802d9518
.global JKRFile_NS_read
JKRFile_NS_read:
/* 802D9518 002D6458 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D951C 002D645C 7C 08 02 A6 */ mflr r0
/* 802D9520 002D6460 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D9524 002D6464 39 61 00 20 */ addi r11, r1, 0x20
/* 802D9528 002D6468 48 08 8C B1 */ bl func_803621D8
/* 802D952C 002D646C 7C 7C 1B 78 */ mr r28, r3
/* 802D9530 002D6470 7C 9D 23 78 */ mr r29, r4
/* 802D9534 002D6474 7C BE 2B 78 */ mr r30, r5
/* 802D9538 002D6478 7C DF 33 78 */ mr r31, r6
lbl_802D953C:
/* 802D953C 002D647C 7F 83 E3 78 */ mr r3, r28
/* 802D9540 002D6480 7F A4 EB 78 */ mr r4, r29
/* 802D9544 002D6484 7F C5 F3 78 */ mr r5, r30
/* 802D9548 002D6488 7F E6 FB 78 */ mr r6, r31
/* 802D954C 002D648C 81 9C 00 00 */ lwz r12, 0(r28)
/* 802D9550 002D6490 81 8C 00 14 */ lwz r12, 0x14(r12)
/* 802D9554 002D6494 7D 89 03 A6 */ mtctr r12
/* 802D9558 002D6498 4E 80 04 21 */ bctrl
/* 802D955C 002D649C 7C 1E 18 00 */ cmpw r30, r3
/* 802D9560 002D64A0 41 82 00 0C */ beq lbl_802D956C
/* 802D9564 002D64A4 48 07 34 61 */ bl VIWaitForRetrace
/* 802D9568 002D64A8 4B FF FF D4 */ b lbl_802D953C
lbl_802D956C:
/* 802D956C 002D64AC 39 61 00 20 */ addi r11, r1, 0x20
/* 802D9570 002D64B0 48 08 8C B5 */ bl func_80362224
/* 802D9574 002D64B4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D9578 002D64B8 7C 08 03 A6 */ mtlr r0
/* 802D957C 002D64BC 38 21 00 20 */ addi r1, r1, 0x20
/* 802D9580 002D64C0 4E 80 00 20 */ blr
File diff suppressed because it is too large Load Diff
+243
View File
@@ -0,0 +1,243 @@
.include "macros.inc"
.section .text, "ax" # 802d4638
.global JKRArcFinder
JKRArcFinder:
/* 802D4638 002D1578 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D463C 002D157C 7C 08 02 A6 */ mflr r0
/* 802D4640 002D1580 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D4644 002D1584 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D4648 002D1588 7C 7F 1B 78 */ mr r31, r3
/* 802D464C 002D158C 3C E0 80 3D */ lis r7, lbl_803CC228@ha
/* 802D4650 002D1590 38 07 C2 28 */ addi r0, r7, lbl_803CC228@l
/* 802D4654 002D1594 90 03 00 0C */ stw r0, 0xc(r3)
/* 802D4658 002D1598 38 00 00 00 */ li r0, 0
/* 802D465C 002D159C 98 03 00 10 */ stb r0, 0x10(r3)
/* 802D4660 002D15A0 98 03 00 11 */ stb r0, 0x11(r3)
/* 802D4664 002D15A4 3C E0 80 3D */ lis r7, lbl_803CC218@ha
/* 802D4668 002D15A8 38 07 C2 18 */ addi r0, r7, lbl_803CC218@l
/* 802D466C 002D15AC 90 03 00 0C */ stw r0, 0xc(r3)
/* 802D4670 002D15B0 90 83 00 14 */ stw r4, 0x14(r3)
/* 802D4674 002D15B4 7C 06 00 D0 */ neg r0, r6
/* 802D4678 002D15B8 7C 00 30 78 */ andc r0, r0, r6
/* 802D467C 002D15BC 54 00 0F FE */ srwi r0, r0, 0x1f
/* 802D4680 002D15C0 98 03 00 10 */ stb r0, 0x10(r3)
/* 802D4684 002D15C4 90 A3 00 18 */ stw r5, 0x18(r3)
/* 802D4688 002D15C8 38 06 FF FF */ addi r0, r6, -1
/* 802D468C 002D15CC 7C 05 02 14 */ add r0, r5, r0
/* 802D4690 002D15D0 90 03 00 1C */ stw r0, 0x1c(r3)
/* 802D4694 002D15D4 80 03 00 18 */ lwz r0, 0x18(r3)
/* 802D4698 002D15D8 90 03 00 20 */ stw r0, 0x20(r3)
/* 802D469C 002D15DC 81 83 00 0C */ lwz r12, 0xc(r3)
/* 802D46A0 002D15E0 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802D46A4 002D15E4 7D 89 03 A6 */ mtctr r12
/* 802D46A8 002D15E8 4E 80 04 21 */ bctrl
/* 802D46AC 002D15EC 7F E3 FB 78 */ mr r3, r31
/* 802D46B0 002D15F0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D46B4 002D15F4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D46B8 002D15F8 7C 08 03 A6 */ mtlr r0
/* 802D46BC 002D15FC 38 21 00 10 */ addi r1, r1, 0x10
/* 802D46C0 002D1600 4E 80 00 20 */ blr
/* 802D46C4 002D1604 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D46C8 002D1608 7C 08 02 A6 */ mflr r0
/* 802D46CC 002D160C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D46D0 002D1610 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802D46D4 002D1614 7C 7F 1B 78 */ mr r31, r3
/* 802D46D8 002D1618 88 03 00 10 */ lbz r0, 0x10(r3)
/* 802D46DC 002D161C 28 00 00 00 */ cmplwi r0, 0
/* 802D46E0 002D1620 41 82 00 78 */ beq lbl_802D4758
/* 802D46E4 002D1624 80 BF 00 20 */ lwz r5, 0x20(r31)
/* 802D46E8 002D1628 80 1F 00 1C */ lwz r0, 0x1c(r31)
/* 802D46EC 002D162C 7C 04 FE 70 */ srawi r4, r0, 0x1f
/* 802D46F0 002D1630 54 A3 0F FE */ srwi r3, r5, 0x1f
/* 802D46F4 002D1634 7C 05 00 10 */ subfc r0, r5, r0
/* 802D46F8 002D1638 7C 04 19 14 */ adde r0, r4, r3
/* 802D46FC 002D163C 98 1F 00 10 */ stb r0, 0x10(r31)
/* 802D4700 002D1640 88 1F 00 10 */ lbz r0, 0x10(r31)
/* 802D4704 002D1644 28 00 00 00 */ cmplwi r0, 0
/* 802D4708 002D1648 41 82 00 50 */ beq lbl_802D4758
/* 802D470C 002D164C 80 7F 00 14 */ lwz r3, 0x14(r31)
/* 802D4710 002D1650 38 81 00 08 */ addi r4, r1, 8
/* 802D4714 002D1654 80 BF 00 20 */ lwz r5, 0x20(r31)
/* 802D4718 002D1658 48 00 13 A9 */ bl JKRArchive_NS_getDirEntry
/* 802D471C 002D165C 98 7F 00 10 */ stb r3, 0x10(r31)
/* 802D4720 002D1660 80 01 00 0C */ lwz r0, 0xc(r1)
/* 802D4724 002D1664 90 1F 00 00 */ stw r0, 0(r31)
/* 802D4728 002D1668 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 802D472C 002D166C 90 1F 00 04 */ stw r0, 4(r31)
/* 802D4730 002D1670 A0 01 00 0A */ lhz r0, 0xa(r1)
/* 802D4734 002D1674 B0 1F 00 08 */ sth r0, 8(r31)
/* 802D4738 002D1678 88 01 00 08 */ lbz r0, 8(r1)
/* 802D473C 002D167C B0 1F 00 0A */ sth r0, 0xa(r31)
/* 802D4740 002D1680 A0 1F 00 0A */ lhz r0, 0xa(r31)
/* 802D4744 002D1684 54 00 FF FE */ rlwinm r0, r0, 0x1f, 0x1f, 0x1f
/* 802D4748 002D1688 98 1F 00 11 */ stb r0, 0x11(r31)
/* 802D474C 002D168C 80 7F 00 20 */ lwz r3, 0x20(r31)
/* 802D4750 002D1690 38 03 00 01 */ addi r0, r3, 1
/* 802D4754 002D1694 90 1F 00 20 */ stw r0, 0x20(r31)
lbl_802D4758:
/* 802D4758 002D1698 88 7F 00 10 */ lbz r3, 0x10(r31)
/* 802D475C 002D169C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802D4760 002D16A0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D4764 002D16A4 7C 08 03 A6 */ mtlr r0
/* 802D4768 002D16A8 38 21 00 20 */ addi r1, r1, 0x20
/* 802D476C 002D16AC 4E 80 00 20 */ blr
.global JKRDvdFinder
JKRDvdFinder:
/* 802D4770 002D16B0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D4774 002D16B4 7C 08 02 A6 */ mflr r0
/* 802D4778 002D16B8 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D477C 002D16BC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D4780 002D16C0 7C 7F 1B 78 */ mr r31, r3
/* 802D4784 002D16C4 3C 60 80 3D */ lis r3, lbl_803CC228@ha
/* 802D4788 002D16C8 38 03 C2 28 */ addi r0, r3, lbl_803CC228@l
/* 802D478C 002D16CC 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802D4790 002D16D0 38 00 00 00 */ li r0, 0
/* 802D4794 002D16D4 98 1F 00 10 */ stb r0, 0x10(r31)
/* 802D4798 002D16D8 98 1F 00 11 */ stb r0, 0x11(r31)
/* 802D479C 002D16DC 3C 60 80 3D */ lis r3, lbl_803CC208@ha
/* 802D47A0 002D16E0 38 03 C2 08 */ addi r0, r3, lbl_803CC208@l
/* 802D47A4 002D16E4 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802D47A8 002D16E8 7C 83 23 78 */ mr r3, r4
/* 802D47AC 002D16EC 38 9F 00 14 */ addi r4, r31, 0x14
/* 802D47B0 002D16F0 48 07 47 D1 */ bl DVDOpenDir
/* 802D47B4 002D16F4 30 03 FF FF */ addic r0, r3, -1
/* 802D47B8 002D16F8 7C 00 19 10 */ subfe r0, r0, r3
/* 802D47BC 002D16FC 98 1F 00 20 */ stb r0, 0x20(r31)
/* 802D47C0 002D1700 88 1F 00 20 */ lbz r0, 0x20(r31)
/* 802D47C4 002D1704 98 1F 00 10 */ stb r0, 0x10(r31)
/* 802D47C8 002D1708 7F E3 FB 78 */ mr r3, r31
/* 802D47CC 002D170C 81 9F 00 0C */ lwz r12, 0xc(r31)
/* 802D47D0 002D1710 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 802D47D4 002D1714 7D 89 03 A6 */ mtctr r12
/* 802D47D8 002D1718 4E 80 04 21 */ bctrl
/* 802D47DC 002D171C 7F E3 FB 78 */ mr r3, r31
/* 802D47E0 002D1720 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D47E4 002D1724 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D47E8 002D1728 7C 08 03 A6 */ mtlr r0
/* 802D47EC 002D172C 38 21 00 10 */ addi r1, r1, 0x10
/* 802D47F0 002D1730 4E 80 00 20 */ blr
/* 802D47F4 002D1734 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D47F8 002D1738 7C 08 02 A6 */ mflr r0
/* 802D47FC 002D173C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D4800 002D1740 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D4804 002D1744 93 C1 00 08 */ stw r30, 8(r1)
/* 802D4808 002D1748 7C 7E 1B 79 */ or. r30, r3, r3
/* 802D480C 002D174C 7C 9F 23 78 */ mr r31, r4
/* 802D4810 002D1750 41 82 00 48 */ beq lbl_802D4858
/* 802D4814 002D1754 3C 60 80 3D */ lis r3, lbl_803CC208@ha
/* 802D4818 002D1758 38 03 C2 08 */ addi r0, r3, lbl_803CC208@l
/* 802D481C 002D175C 90 1E 00 0C */ stw r0, 0xc(r30)
/* 802D4820 002D1760 88 1E 00 20 */ lbz r0, 0x20(r30)
/* 802D4824 002D1764 28 00 00 00 */ cmplwi r0, 0
/* 802D4828 002D1768 41 82 00 0C */ beq lbl_802D4834
/* 802D482C 002D176C 38 7E 00 14 */ addi r3, r30, 0x14
/* 802D4830 002D1770 48 07 48 B5 */ bl DVDCloseDir
lbl_802D4834:
/* 802D4834 002D1774 28 1E 00 00 */ cmplwi r30, 0
/* 802D4838 002D1778 41 82 00 10 */ beq lbl_802D4848
/* 802D483C 002D177C 3C 60 80 3D */ lis r3, lbl_803CC228@ha
/* 802D4840 002D1780 38 03 C2 28 */ addi r0, r3, lbl_803CC228@l
/* 802D4844 002D1784 90 1E 00 0C */ stw r0, 0xc(r30)
lbl_802D4848:
/* 802D4848 002D1788 7F E0 07 35 */ extsh. r0, r31
/* 802D484C 002D178C 40 81 00 0C */ ble lbl_802D4858
/* 802D4850 002D1790 7F C3 F3 78 */ mr r3, r30
/* 802D4854 002D1794 4B FF A4 E9 */ bl __dl
lbl_802D4858:
/* 802D4858 002D1798 7F C3 F3 78 */ mr r3, r30
/* 802D485C 002D179C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D4860 002D17A0 83 C1 00 08 */ lwz r30, 8(r1)
/* 802D4864 002D17A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D4868 002D17A8 7C 08 03 A6 */ mtlr r0
/* 802D486C 002D17AC 38 21 00 10 */ addi r1, r1, 0x10
/* 802D4870 002D17B0 4E 80 00 20 */ blr
/* 802D4874 002D17B4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802D4878 002D17B8 7C 08 02 A6 */ mflr r0
/* 802D487C 002D17BC 90 01 00 24 */ stw r0, 0x24(r1)
/* 802D4880 002D17C0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802D4884 002D17C4 7C 7F 1B 78 */ mr r31, r3
/* 802D4888 002D17C8 88 03 00 10 */ lbz r0, 0x10(r3)
/* 802D488C 002D17CC 28 00 00 00 */ cmplwi r0, 0
/* 802D4890 002D17D0 41 82 00 68 */ beq lbl_802D48F8
/* 802D4894 002D17D4 38 7F 00 14 */ addi r3, r31, 0x14
/* 802D4898 002D17D8 38 81 00 08 */ addi r4, r1, 8
/* 802D489C 002D17DC 48 07 47 A5 */ bl DVDReadDir
/* 802D48A0 002D17E0 30 03 FF FF */ addic r0, r3, -1
/* 802D48A4 002D17E4 7C 00 19 10 */ subfe r0, r0, r3
/* 802D48A8 002D17E8 98 1F 00 10 */ stb r0, 0x10(r31)
/* 802D48AC 002D17EC 88 1F 00 10 */ lbz r0, 0x10(r31)
/* 802D48B0 002D17F0 28 00 00 00 */ cmplwi r0, 0
/* 802D48B4 002D17F4 41 82 00 44 */ beq lbl_802D48F8
/* 802D48B8 002D17F8 80 61 00 0C */ lwz r3, 0xc(r1)
/* 802D48BC 002D17FC 30 03 FF FF */ addic r0, r3, -1
/* 802D48C0 002D1800 7C 00 19 10 */ subfe r0, r0, r3
/* 802D48C4 002D1804 98 1F 00 11 */ stb r0, 0x11(r31)
/* 802D48C8 002D1808 80 01 00 10 */ lwz r0, 0x10(r1)
/* 802D48CC 002D180C 90 1F 00 00 */ stw r0, 0(r31)
/* 802D48D0 002D1810 80 01 00 08 */ lwz r0, 8(r1)
/* 802D48D4 002D1814 90 1F 00 04 */ stw r0, 4(r31)
/* 802D48D8 002D1818 38 00 00 00 */ li r0, 0
/* 802D48DC 002D181C B0 1F 00 08 */ sth r0, 8(r31)
/* 802D48E0 002D1820 88 1F 00 11 */ lbz r0, 0x11(r31)
/* 802D48E4 002D1824 28 00 00 00 */ cmplwi r0, 0
/* 802D48E8 002D1828 38 00 00 01 */ li r0, 1
/* 802D48EC 002D182C 41 82 00 08 */ beq lbl_802D48F4
/* 802D48F0 002D1830 38 00 00 02 */ li r0, 2
lbl_802D48F4:
/* 802D48F4 002D1834 B0 1F 00 0A */ sth r0, 0xa(r31)
lbl_802D48F8:
/* 802D48F8 002D1838 88 7F 00 10 */ lbz r3, 0x10(r31)
/* 802D48FC 002D183C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802D4900 002D1840 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802D4904 002D1844 7C 08 03 A6 */ mtlr r0
/* 802D4908 002D1848 38 21 00 20 */ addi r1, r1, 0x20
/* 802D490C 002D184C 4E 80 00 20 */ blr
/* 802D4910 002D1850 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D4914 002D1854 7C 08 02 A6 */ mflr r0
/* 802D4918 002D1858 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D491C 002D185C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D4920 002D1860 7C 7F 1B 79 */ or. r31, r3, r3
/* 802D4924 002D1864 41 82 00 1C */ beq lbl_802D4940
/* 802D4928 002D1868 3C A0 80 3D */ lis r5, lbl_803CC228@ha
/* 802D492C 002D186C 38 05 C2 28 */ addi r0, r5, lbl_803CC228@l
/* 802D4930 002D1870 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802D4934 002D1874 7C 80 07 35 */ extsh. r0, r4
/* 802D4938 002D1878 40 81 00 08 */ ble lbl_802D4940
/* 802D493C 002D187C 4B FF A4 01 */ bl __dl
lbl_802D4940:
/* 802D4940 002D1880 7F E3 FB 78 */ mr r3, r31
/* 802D4944 002D1884 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D4948 002D1888 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D494C 002D188C 7C 08 03 A6 */ mtlr r0
/* 802D4950 002D1890 38 21 00 10 */ addi r1, r1, 0x10
/* 802D4954 002D1894 4E 80 00 20 */ blr
/* 802D4958 002D1898 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802D495C 002D189C 7C 08 02 A6 */ mflr r0
/* 802D4960 002D18A0 90 01 00 14 */ stw r0, 0x14(r1)
/* 802D4964 002D18A4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802D4968 002D18A8 7C 7F 1B 79 */ or. r31, r3, r3
/* 802D496C 002D18AC 41 82 00 30 */ beq lbl_802D499C
/* 802D4970 002D18B0 3C 60 80 3D */ lis r3, lbl_803CC218@ha
/* 802D4974 002D18B4 38 03 C2 18 */ addi r0, r3, lbl_803CC218@l
/* 802D4978 002D18B8 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802D497C 002D18BC 41 82 00 10 */ beq lbl_802D498C
/* 802D4980 002D18C0 3C 60 80 3D */ lis r3, lbl_803CC228@ha
/* 802D4984 002D18C4 38 03 C2 28 */ addi r0, r3, lbl_803CC228@l
/* 802D4988 002D18C8 90 1F 00 0C */ stw r0, 0xc(r31)
lbl_802D498C:
/* 802D498C 002D18CC 7C 80 07 35 */ extsh. r0, r4
/* 802D4990 002D18D0 40 81 00 0C */ ble lbl_802D499C
/* 802D4994 002D18D4 7F E3 FB 78 */ mr r3, r31
/* 802D4998 002D18D8 4B FF A3 A5 */ bl __dl
lbl_802D499C:
/* 802D499C 002D18DC 7F E3 FB 78 */ mr r3, r31
/* 802D49A0 002D18E0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802D49A4 002D18E4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802D49A8 002D18E8 7C 08 03 A6 */ mtlr r0
/* 802D49AC 002D18EC 38 21 00 10 */ addi r1, r1, 0x10
/* 802D49B0 002D18F0 4E 80 00 20 */ blr

Some files were not shown because too many files have changed in this diff Show More