From 67dc67df548955d376c8ba7e589ba2f5a0a6f6f3 Mon Sep 17 00:00:00 2001 From: Max Date: Sun, 4 Oct 2020 17:51:41 -0400 Subject: split ipcProfile, memory, fs --- asm/SDK/fs.s | 1474 +++++++++++++++++++++++++++++++++++++ asm/SDK/ipcProfile.s | 133 ++++ asm/SDK/ipcclt.s | 46 +- asm/SDK/memory.s | 373 ++++++++++ asm/text_8_7.s | 1972 +------------------------------------------------- asm/text_8_8.s | 62 +- asm/text_9.s | 128 ++-- obj_files.mk | 3 + 8 files changed, 2102 insertions(+), 2089 deletions(-) create mode 100644 asm/SDK/fs.s create mode 100644 asm/SDK/ipcProfile.s create mode 100644 asm/SDK/memory.s diff --git a/asm/SDK/fs.s b/asm/SDK/fs.s new file mode 100644 index 0000000..f3d27b5 --- /dev/null +++ b/asm/SDK/fs.s @@ -0,0 +1,1474 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80006980 - 0x803E1E60 + +.global ISFS_OpenLib +ISFS_OpenLib: +/* 802A46EC 002A034C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802A46F0 002A0350 7C 08 02 A6 */ mflr r0 +/* 802A46F4 002A0354 90 01 00 14 */ stw r0, 0x14(r1) +/* 802A46F8 002A0358 80 0D 89 94 */ lwz r0, lbl_8063DC54-_SDA_BASE_(r13) +/* 802A46FC 002A035C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802A4700 002A0360 3B E0 00 00 */ li r31, 0 +/* 802A4704 002A0364 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4708 002A0368 93 C1 00 08 */ stw r30, 8(r1) +/* 802A470C 002A036C 41 82 00 14 */ beq lbl_802A4720 +/* 802A4710 002A0370 4B FF E1 E5 */ bl IPCGetBufferLo +/* 802A4714 002A0374 90 6D AE 20 */ stw r3, lbl_806400E0-_SDA_BASE_(r13) +/* 802A4718 002A0378 4B FF E1 D5 */ bl IPCGetBufferHi +/* 802A471C 002A037C 90 6D AE 24 */ stw r3, lbl_806400E4-_SDA_BASE_(r13) +lbl_802A4720: +/* 802A4720 002A0380 80 6D AE 20 */ lwz r3, lbl_806400E0-_SDA_BASE_(r13) +/* 802A4724 002A0384 80 0D 89 94 */ lwz r0, lbl_8063DC54-_SDA_BASE_(r13) +/* 802A4728 002A0388 38 63 00 1F */ addi r3, r3, 0x1f +/* 802A472C 002A038C 54 63 00 34 */ rlwinm r3, r3, 0, 0, 0x1a +/* 802A4730 002A0390 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4734 002A0394 90 6D AE 18 */ stw r3, lbl_806400D8-_SDA_BASE_(r13) +/* 802A4738 002A0398 41 82 00 2C */ beq lbl_802A4764 +/* 802A473C 002A039C 80 0D AE 24 */ lwz r0, lbl_806400E4-_SDA_BASE_(r13) +/* 802A4740 002A03A0 38 83 00 40 */ addi r4, r3, 0x40 +/* 802A4744 002A03A4 7C 04 00 40 */ cmplw r4, r0 +/* 802A4748 002A03A8 40 81 00 1C */ ble lbl_802A4764 +/* 802A474C 002A03AC 3C 60 80 44 */ lis r3, lbl_8043BF90@ha +/* 802A4750 002A03B0 38 63 BF 90 */ addi r3, r3, lbl_8043BF90@l +/* 802A4754 002A03B4 4C C6 31 82 */ crclr 6 +/* 802A4758 002A03B8 4B D6 33 6D */ bl func_80007AC4 +/* 802A475C 002A03BC 3B E0 FF EA */ li r31, -22 +/* 802A4760 002A03C0 48 00 00 98 */ b lbl_802A47F8 +lbl_802A4764: +/* 802A4764 002A03C4 38 8D 89 98 */ addi r4, r13, lbl_8063DC58-_SDA_BASE_ +/* 802A4768 002A03C8 4B F2 9B 69 */ bl strcpy +/* 802A476C 002A03CC 80 6D AE 18 */ lwz r3, lbl_806400D8-_SDA_BASE_(r13) +/* 802A4770 002A03D0 38 80 00 00 */ li r4, 0 +/* 802A4774 002A03D4 4B FF E9 E5 */ bl IOS_Open +/* 802A4778 002A03D8 2C 03 00 00 */ cmpwi r3, 0 +/* 802A477C 002A03DC 90 6D 89 90 */ stw r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4780 002A03E0 40 80 00 0C */ bge lbl_802A478C +/* 802A4784 002A03E4 7C 7F 1B 78 */ mr r31, r3 +/* 802A4788 002A03E8 48 00 00 70 */ b lbl_802A47F8 +lbl_802A478C: +/* 802A478C 002A03EC 80 8D 89 94 */ lwz r4, lbl_8063DC54-_SDA_BASE_(r13) +/* 802A4790 002A03F0 83 CD AE 18 */ lwz r30, lbl_806400D8-_SDA_BASE_(r13) +/* 802A4794 002A03F4 2C 04 00 00 */ cmpwi r4, 0 +/* 802A4798 002A03F8 41 82 00 2C */ beq lbl_802A47C4 +/* 802A479C 002A03FC 80 0D AE 24 */ lwz r0, lbl_806400E4-_SDA_BASE_(r13) +/* 802A47A0 002A0400 38 7E 15 40 */ addi r3, r30, 0x1540 +/* 802A47A4 002A0404 7C 03 00 40 */ cmplw r3, r0 +/* 802A47A8 002A0408 40 81 00 1C */ ble lbl_802A47C4 +/* 802A47AC 002A040C 3C 60 80 44 */ lis r3, lbl_8043BF90@ha +/* 802A47B0 002A0410 38 63 BF 90 */ addi r3, r3, lbl_8043BF90@l +/* 802A47B4 002A0414 4C C6 31 82 */ crclr 6 +/* 802A47B8 002A0418 4B D6 33 0D */ bl func_80007AC4 +/* 802A47BC 002A041C 3B E0 FF EA */ li r31, -22 +/* 802A47C0 002A0420 48 00 00 38 */ b lbl_802A47F8 +lbl_802A47C4: +/* 802A47C4 002A0424 2C 04 00 00 */ cmpwi r4, 0 +/* 802A47C8 002A0428 41 82 00 14 */ beq lbl_802A47DC +/* 802A47CC 002A042C 38 7E 15 40 */ addi r3, r30, 0x1540 +/* 802A47D0 002A0430 4B FF E1 2D */ bl IPCSetBufferLo +/* 802A47D4 002A0434 38 00 00 00 */ li r0, 0 +/* 802A47D8 002A0438 90 0D 89 94 */ stw r0, lbl_8063DC54-_SDA_BASE_(r13) +lbl_802A47DC: +/* 802A47DC 002A043C 7F C3 F3 78 */ mr r3, r30 +/* 802A47E0 002A0440 38 80 15 40 */ li r4, 0x1540 +/* 802A47E4 002A0444 4B FF F8 21 */ bl iosCreateHeap +/* 802A47E8 002A0448 2C 03 00 00 */ cmpwi r3, 0 +/* 802A47EC 002A044C 90 6D AE 28 */ stw r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A47F0 002A0450 40 80 00 08 */ bge lbl_802A47F8 +/* 802A47F4 002A0454 3B E0 FF EA */ li r31, -22 +lbl_802A47F8: +/* 802A47F8 002A0458 7F E3 FB 78 */ mr r3, r31 +/* 802A47FC 002A045C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802A4800 002A0460 83 C1 00 08 */ lwz r30, 8(r1) +/* 802A4804 002A0464 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802A4808 002A0468 7C 08 03 A6 */ mtlr r0 +/* 802A480C 002A046C 38 21 00 10 */ addi r1, r1, 0x10 +/* 802A4810 002A0470 4E 80 00 20 */ blr +_isfsFuncCb: +/* 802A4814 002A0474 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802A4818 002A0478 7C 08 02 A6 */ mflr r0 +/* 802A481C 002A047C 2C 83 00 00 */ cmpwi cr1, r3, 0 +/* 802A4820 002A0480 90 01 00 14 */ stw r0, 0x14(r1) +/* 802A4824 002A0484 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802A4828 002A0488 7C 9F 23 78 */ mr r31, r4 +/* 802A482C 002A048C 93 C1 00 08 */ stw r30, 8(r1) +/* 802A4830 002A0490 7C 7E 1B 78 */ mr r30, r3 +/* 802A4834 002A0494 41 84 00 F4 */ blt cr1, lbl_802A4928 +/* 802A4838 002A0498 80 04 01 08 */ lwz r0, 0x108(r4) +/* 802A483C 002A049C 2C 00 00 03 */ cmpwi r0, 3 +/* 802A4840 002A04A0 41 82 00 5C */ beq lbl_802A489C +/* 802A4844 002A04A4 40 80 00 14 */ bge lbl_802A4858 +/* 802A4848 002A04A8 2C 00 00 01 */ cmpwi r0, 1 +/* 802A484C 002A04AC 41 82 00 18 */ beq lbl_802A4864 +/* 802A4850 002A04B0 40 80 00 28 */ bge lbl_802A4878 +/* 802A4854 002A04B4 48 00 00 D4 */ b lbl_802A4928 +lbl_802A4858: +/* 802A4858 002A04B8 2C 00 00 05 */ cmpwi r0, 5 +/* 802A485C 002A04BC 40 80 00 CC */ bge lbl_802A4928 +/* 802A4860 002A04C0 48 00 00 94 */ b lbl_802A48F4 +lbl_802A4864: +/* 802A4864 002A04C4 40 86 00 C4 */ bne cr1, lbl_802A4928 +/* 802A4868 002A04C8 80 64 01 0C */ lwz r3, 0x10c(r4) +/* 802A486C 002A04CC 38 A0 00 1C */ li r5, 0x1c +/* 802A4870 002A04D0 4B D5 F7 91 */ bl memcpy +/* 802A4874 002A04D4 48 00 00 B4 */ b lbl_802A4928 +lbl_802A4878: +/* 802A4878 002A04D8 40 86 00 B0 */ bne cr1, lbl_802A4928 +/* 802A487C 002A04DC 38 04 00 3F */ addi r0, r4, 0x3f +/* 802A4880 002A04E0 80 64 01 0C */ lwz r3, 0x10c(r4) +/* 802A4884 002A04E4 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a +/* 802A4888 002A04E8 38 04 00 5F */ addi r0, r4, 0x5f +/* 802A488C 002A04EC 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a +/* 802A4890 002A04F0 80 04 00 00 */ lwz r0, 0(r4) +/* 802A4894 002A04F4 90 03 00 00 */ stw r0, 0(r3) +/* 802A4898 002A04F8 48 00 00 90 */ b lbl_802A4928 +lbl_802A489C: +/* 802A489C 002A04FC 40 86 00 8C */ bne cr1, lbl_802A4928 +/* 802A48A0 002A0500 38 04 00 5F */ addi r0, r4, 0x5f +/* 802A48A4 002A0504 80 64 01 0C */ lwz r3, 0x10c(r4) +/* 802A48A8 002A0508 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a +/* 802A48AC 002A050C 80 05 00 00 */ lwz r0, 0(r5) +/* 802A48B0 002A0510 90 03 00 00 */ stw r0, 0(r3) +/* 802A48B4 002A0514 A0 05 00 04 */ lhz r0, 4(r5) +/* 802A48B8 002A0518 80 64 01 10 */ lwz r3, 0x110(r4) +/* 802A48BC 002A051C B0 03 00 00 */ sth r0, 0(r3) +/* 802A48C0 002A0520 88 05 00 49 */ lbz r0, 0x49(r5) +/* 802A48C4 002A0524 80 64 01 14 */ lwz r3, 0x114(r4) +/* 802A48C8 002A0528 90 03 00 00 */ stw r0, 0(r3) +/* 802A48CC 002A052C 88 05 00 46 */ lbz r0, 0x46(r5) +/* 802A48D0 002A0530 80 64 01 18 */ lwz r3, 0x118(r4) +/* 802A48D4 002A0534 90 03 00 00 */ stw r0, 0(r3) +/* 802A48D8 002A0538 88 05 00 47 */ lbz r0, 0x47(r5) +/* 802A48DC 002A053C 80 64 01 1C */ lwz r3, 0x11c(r4) +/* 802A48E0 002A0540 90 03 00 00 */ stw r0, 0(r3) +/* 802A48E4 002A0544 88 05 00 48 */ lbz r0, 0x48(r5) +/* 802A48E8 002A0548 80 64 01 20 */ lwz r3, 0x120(r4) +/* 802A48EC 002A054C 90 03 00 00 */ stw r0, 0(r3) +/* 802A48F0 002A0550 48 00 00 38 */ b lbl_802A4928 +lbl_802A48F4: +/* 802A48F4 002A0554 40 86 00 34 */ bne cr1, lbl_802A4928 +/* 802A48F8 002A0558 38 04 00 3F */ addi r0, r4, 0x3f +/* 802A48FC 002A055C 80 64 01 0C */ lwz r3, 0x10c(r4) +/* 802A4900 002A0560 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a +/* 802A4904 002A0564 38 05 00 5F */ addi r0, r5, 0x5f +/* 802A4908 002A0568 54 06 00 34 */ rlwinm r6, r0, 0, 0, 0x1a +/* 802A490C 002A056C 80 A6 00 00 */ lwz r5, 0(r6) +/* 802A4910 002A0570 38 06 00 23 */ addi r0, r6, 0x23 +/* 802A4914 002A0574 54 06 00 34 */ rlwinm r6, r0, 0, 0, 0x1a +/* 802A4918 002A0578 90 A3 00 00 */ stw r5, 0(r3) +/* 802A491C 002A057C 80 06 00 00 */ lwz r0, 0(r6) +/* 802A4920 002A0580 80 64 01 10 */ lwz r3, 0x110(r4) +/* 802A4924 002A0584 90 03 00 00 */ stw r0, 0(r3) +lbl_802A4928: +/* 802A4928 002A0588 38 00 00 00 */ li r0, 0 +/* 802A492C 002A058C 90 0D AE 1C */ stw r0, lbl_806400DC-_SDA_BASE_(r13) +/* 802A4930 002A0590 81 9F 01 00 */ lwz r12, 0x100(r31) +/* 802A4934 002A0594 2C 0C 00 00 */ cmpwi r12, 0 +/* 802A4938 002A0598 41 82 00 14 */ beq lbl_802A494C +/* 802A493C 002A059C 7F C3 F3 78 */ mr r3, r30 +/* 802A4940 002A05A0 80 9F 01 04 */ lwz r4, 0x104(r31) +/* 802A4944 002A05A4 7D 89 03 A6 */ mtctr r12 +/* 802A4948 002A05A8 4E 80 04 21 */ bctrl +lbl_802A494C: +/* 802A494C 002A05AC 2C 1F 00 00 */ cmpwi r31, 0 +/* 802A4950 002A05B0 41 82 00 10 */ beq lbl_802A4960 +/* 802A4954 002A05B4 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4958 002A05B8 7F E4 FB 78 */ mr r4, r31 +/* 802A495C 002A05BC 4B FF F9 E1 */ bl iosFree +lbl_802A4960: +/* 802A4960 002A05C0 7F C3 F3 78 */ mr r3, r30 +/* 802A4964 002A05C4 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802A4968 002A05C8 83 C1 00 08 */ lwz r30, 8(r1) +/* 802A496C 002A05CC 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802A4970 002A05D0 7C 08 03 A6 */ mtlr r0 +/* 802A4974 002A05D4 38 21 00 10 */ addi r1, r1, 0x10 +/* 802A4978 002A05D8 4E 80 00 20 */ blr + +.global ISFS_CreateDir +ISFS_CreateDir: +/* 802A497C 002A05DC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802A4980 002A05E0 7C 08 02 A6 */ mflr r0 +/* 802A4984 002A05E4 90 01 00 34 */ stw r0, 0x34(r1) +/* 802A4988 002A05E8 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A498C 002A05EC 4B F2 27 95 */ bl _savegpr_25 +/* 802A4990 002A05F0 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4994 002A05F4 7C 79 1B 78 */ mr r25, r3 +/* 802A4998 002A05F8 7C 9A 23 78 */ mr r26, r4 +/* 802A499C 002A05FC 7C BB 2B 78 */ mr r27, r5 +/* 802A49A0 002A0600 7C DC 33 78 */ mr r28, r6 +/* 802A49A4 002A0604 7C FD 3B 78 */ mr r29, r7 +/* 802A49A8 002A0608 3B C0 00 00 */ li r30, 0 +/* 802A49AC 002A060C 41 82 00 24 */ beq lbl_802A49D0 +/* 802A49B0 002A0610 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A49B4 002A0614 2C 00 00 00 */ cmpwi r0, 0 +/* 802A49B8 002A0618 41 80 00 18 */ blt lbl_802A49D0 +/* 802A49BC 002A061C 38 80 00 40 */ li r4, 0x40 +/* 802A49C0 002A0620 4B FF DF 45 */ bl strnlen +/* 802A49C4 002A0624 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A49C8 002A0628 7C 7F 1B 78 */ mr r31, r3 +/* 802A49CC 002A062C 40 82 00 0C */ bne lbl_802A49D8 +lbl_802A49D0: +/* 802A49D0 002A0630 3B E0 FF 9B */ li r31, -101 +/* 802A49D4 002A0634 48 00 00 68 */ b lbl_802A4A3C +lbl_802A49D8: +/* 802A49D8 002A0638 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A49DC 002A063C 38 80 01 40 */ li r4, 0x140 +/* 802A49E0 002A0640 38 A0 00 20 */ li r5, 0x20 +/* 802A49E4 002A0644 4B FF F9 55 */ bl iosAllocAligned +/* 802A49E8 002A0648 2C 03 00 00 */ cmpwi r3, 0 +/* 802A49EC 002A064C 7C 7E 1B 78 */ mr r30, r3 +/* 802A49F0 002A0650 40 82 00 0C */ bne lbl_802A49FC +/* 802A49F4 002A0654 3B E0 FF EA */ li r31, -22 +/* 802A49F8 002A0658 48 00 00 44 */ b lbl_802A4A3C +lbl_802A49FC: +/* 802A49FC 002A065C 7F 24 CB 78 */ mr r4, r25 +/* 802A4A00 002A0660 38 BF 00 01 */ addi r5, r31, 1 +/* 802A4A04 002A0664 38 63 00 06 */ addi r3, r3, 6 +/* 802A4A08 002A0668 4B D5 F5 F9 */ bl memcpy +/* 802A4A0C 002A066C 9B 5E 00 49 */ stb r26, 0x49(r30) +/* 802A4A10 002A0670 7F C5 F3 78 */ mr r5, r30 +/* 802A4A14 002A0674 38 80 00 03 */ li r4, 3 +/* 802A4A18 002A0678 38 C0 00 4C */ li r6, 0x4c +/* 802A4A1C 002A067C 9B 7E 00 46 */ stb r27, 0x46(r30) +/* 802A4A20 002A0680 38 E0 00 00 */ li r7, 0 +/* 802A4A24 002A0684 39 00 00 00 */ li r8, 0 +/* 802A4A28 002A0688 9B 9E 00 47 */ stb r28, 0x47(r30) +/* 802A4A2C 002A068C 9B BE 00 48 */ stb r29, 0x48(r30) +/* 802A4A30 002A0690 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4A34 002A0694 4B FF F0 BD */ bl IOS_Ioctl +/* 802A4A38 002A0698 7C 7F 1B 78 */ mr r31, r3 +lbl_802A4A3C: +/* 802A4A3C 002A069C 2C 1E 00 00 */ cmpwi r30, 0 +/* 802A4A40 002A06A0 41 82 00 14 */ beq lbl_802A4A54 +/* 802A4A44 002A06A4 41 82 00 10 */ beq lbl_802A4A54 +/* 802A4A48 002A06A8 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4A4C 002A06AC 7F C4 F3 78 */ mr r4, r30 +/* 802A4A50 002A06B0 4B FF F8 ED */ bl iosFree +lbl_802A4A54: +/* 802A4A54 002A06B4 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A4A58 002A06B8 7F E3 FB 78 */ mr r3, r31 +/* 802A4A5C 002A06BC 4B F2 27 11 */ bl _restgpr_25 +/* 802A4A60 002A06C0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802A4A64 002A06C4 7C 08 03 A6 */ mtlr r0 +/* 802A4A68 002A06C8 38 21 00 30 */ addi r1, r1, 0x30 +/* 802A4A6C 002A06CC 4E 80 00 20 */ blr + +.global ISFS_CreateDirAsync +ISFS_CreateDirAsync: +/* 802A4A70 002A06D0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802A4A74 002A06D4 7C 08 02 A6 */ mflr r0 +/* 802A4A78 002A06D8 90 01 00 34 */ stw r0, 0x34(r1) +/* 802A4A7C 002A06DC 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A4A80 002A06E0 4B F2 26 99 */ bl _savegpr_23 +/* 802A4A84 002A06E4 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4A88 002A06E8 7C 77 1B 78 */ mr r23, r3 +/* 802A4A8C 002A06EC 7C 98 23 78 */ mr r24, r4 +/* 802A4A90 002A06F0 7C B9 2B 78 */ mr r25, r5 +/* 802A4A94 002A06F4 7C DA 33 78 */ mr r26, r6 +/* 802A4A98 002A06F8 7C FB 3B 78 */ mr r27, r7 +/* 802A4A9C 002A06FC 7D 1C 43 78 */ mr r28, r8 +/* 802A4AA0 002A0700 7D 3D 4B 78 */ mr r29, r9 +/* 802A4AA4 002A0704 41 82 00 24 */ beq lbl_802A4AC8 +/* 802A4AA8 002A0708 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4AAC 002A070C 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4AB0 002A0710 41 80 00 18 */ blt lbl_802A4AC8 +/* 802A4AB4 002A0714 38 80 00 40 */ li r4, 0x40 +/* 802A4AB8 002A0718 4B FF DE 4D */ bl strnlen +/* 802A4ABC 002A071C 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A4AC0 002A0720 7C 7F 1B 78 */ mr r31, r3 +/* 802A4AC4 002A0724 40 82 00 0C */ bne lbl_802A4AD0 +lbl_802A4AC8: +/* 802A4AC8 002A0728 38 60 FF 9B */ li r3, -101 +/* 802A4ACC 002A072C 48 00 00 80 */ b lbl_802A4B4C +lbl_802A4AD0: +/* 802A4AD0 002A0730 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4AD4 002A0734 38 80 01 40 */ li r4, 0x140 +/* 802A4AD8 002A0738 38 A0 00 20 */ li r5, 0x20 +/* 802A4ADC 002A073C 4B FF F8 5D */ bl iosAllocAligned +/* 802A4AE0 002A0740 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4AE4 002A0744 7C 7E 1B 78 */ mr r30, r3 +/* 802A4AE8 002A0748 40 82 00 0C */ bne lbl_802A4AF4 +/* 802A4AEC 002A074C 38 60 FF 8A */ li r3, -118 +/* 802A4AF0 002A0750 48 00 00 5C */ b lbl_802A4B4C +lbl_802A4AF4: +/* 802A4AF4 002A0754 93 83 01 00 */ stw r28, 0x100(r3) +/* 802A4AF8 002A0758 38 00 00 00 */ li r0, 0 +/* 802A4AFC 002A075C 7E E4 BB 78 */ mr r4, r23 +/* 802A4B00 002A0760 38 BF 00 01 */ addi r5, r31, 1 +/* 802A4B04 002A0764 93 A3 01 04 */ stw r29, 0x104(r3) +/* 802A4B08 002A0768 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A4B0C 002A076C 38 63 00 06 */ addi r3, r3, 6 +/* 802A4B10 002A0770 4B D5 F4 F1 */ bl memcpy +/* 802A4B14 002A0774 9B 1E 00 49 */ stb r24, 0x49(r30) +/* 802A4B18 002A0778 3D 20 80 2A */ lis r9, _isfsFuncCb@ha +/* 802A4B1C 002A077C 7F C5 F3 78 */ mr r5, r30 +/* 802A4B20 002A0780 7F CA F3 78 */ mr r10, r30 +/* 802A4B24 002A0784 9B 3E 00 46 */ stb r25, 0x46(r30) +/* 802A4B28 002A0788 39 29 48 14 */ addi r9, r9, _isfsFuncCb@l +/* 802A4B2C 002A078C 38 80 00 03 */ li r4, 3 +/* 802A4B30 002A0790 38 C0 00 4C */ li r6, 0x4c +/* 802A4B34 002A0794 9B 5E 00 47 */ stb r26, 0x47(r30) +/* 802A4B38 002A0798 38 E0 00 00 */ li r7, 0 +/* 802A4B3C 002A079C 39 00 00 00 */ li r8, 0 +/* 802A4B40 002A07A0 9B 7E 00 48 */ stb r27, 0x48(r30) +/* 802A4B44 002A07A4 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4B48 002A07A8 4B FF EE 71 */ bl IOS_IoctlAsync +lbl_802A4B4C: +/* 802A4B4C 002A07AC 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A4B50 002A07B0 4B F2 26 15 */ bl _restgpr_23 +/* 802A4B54 002A07B4 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802A4B58 002A07B8 7C 08 03 A6 */ mtlr r0 +/* 802A4B5C 002A07BC 38 21 00 30 */ addi r1, r1, 0x30 +/* 802A4B60 002A07C0 4E 80 00 20 */ blr + +.global ISFS_ReadDir +ISFS_ReadDir: +/* 802A4B64 002A07C4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A4B68 002A07C8 7C 08 02 A6 */ mflr r0 +/* 802A4B6C 002A07CC 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A4B70 002A07D0 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A4B74 002A07D4 4B F2 25 B1 */ bl _savegpr_26 +/* 802A4B78 002A07D8 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4B7C 002A07DC 7C 7A 1B 78 */ mr r26, r3 +/* 802A4B80 002A07E0 7C 9B 23 78 */ mr r27, r4 +/* 802A4B84 002A07E4 7C BC 2B 78 */ mr r28, r5 +/* 802A4B88 002A07E8 3B A0 00 00 */ li r29, 0 +/* 802A4B8C 002A07EC 41 82 00 34 */ beq lbl_802A4BC0 +/* 802A4B90 002A07F0 2C 05 00 00 */ cmpwi r5, 0 +/* 802A4B94 002A07F4 41 82 00 2C */ beq lbl_802A4BC0 +/* 802A4B98 002A07F8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4B9C 002A07FC 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4BA0 002A0800 41 80 00 20 */ blt lbl_802A4BC0 +/* 802A4BA4 002A0804 54 80 06 FF */ clrlwi. r0, r4, 0x1b +/* 802A4BA8 002A0808 40 82 00 18 */ bne lbl_802A4BC0 +/* 802A4BAC 002A080C 38 80 00 40 */ li r4, 0x40 +/* 802A4BB0 002A0810 4B FF DD 55 */ bl strnlen +/* 802A4BB4 002A0814 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A4BB8 002A0818 7C 7F 1B 78 */ mr r31, r3 +/* 802A4BBC 002A081C 40 82 00 0C */ bne lbl_802A4BC8 +lbl_802A4BC0: +/* 802A4BC0 002A0820 3B E0 FF 9B */ li r31, -101 +/* 802A4BC4 002A0824 48 00 00 C0 */ b lbl_802A4C84 +lbl_802A4BC8: +/* 802A4BC8 002A0828 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4BCC 002A082C 38 80 01 40 */ li r4, 0x140 +/* 802A4BD0 002A0830 38 A0 00 20 */ li r5, 0x20 +/* 802A4BD4 002A0834 4B FF F7 65 */ bl iosAllocAligned +/* 802A4BD8 002A0838 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4BDC 002A083C 7C 7D 1B 78 */ mr r29, r3 +/* 802A4BE0 002A0840 40 82 00 0C */ bne lbl_802A4BEC +/* 802A4BE4 002A0844 3B E0 FF EA */ li r31, -22 +/* 802A4BE8 002A0848 48 00 00 9C */ b lbl_802A4C84 +lbl_802A4BEC: +/* 802A4BEC 002A084C 38 03 00 3F */ addi r0, r3, 0x3f +/* 802A4BF0 002A0850 7F 44 D3 78 */ mr r4, r26 +/* 802A4BF4 002A0854 54 1E 00 34 */ rlwinm r30, r0, 0, 0, 0x1a +/* 802A4BF8 002A0858 38 BF 00 01 */ addi r5, r31, 1 +/* 802A4BFC 002A085C 7F C3 F3 78 */ mr r3, r30 +/* 802A4C00 002A0860 4B D5 F4 01 */ bl memcpy +/* 802A4C04 002A0864 93 DD 00 00 */ stw r30, 0(r29) +/* 802A4C08 002A0868 38 60 00 40 */ li r3, 0x40 +/* 802A4C0C 002A086C 38 1E 00 5F */ addi r0, r30, 0x5f +/* 802A4C10 002A0870 2C 1B 00 00 */ cmpwi r27, 0 +/* 802A4C14 002A0874 90 7D 00 04 */ stw r3, 4(r29) +/* 802A4C18 002A0878 54 1E 00 34 */ rlwinm r30, r0, 0, 0, 0x1a +/* 802A4C1C 002A087C 38 60 00 04 */ li r3, 4 +/* 802A4C20 002A0880 93 DD 00 08 */ stw r30, 8(r29) +/* 802A4C24 002A0884 90 7D 00 0C */ stw r3, 0xc(r29) +/* 802A4C28 002A0888 41 82 00 30 */ beq lbl_802A4C58 +/* 802A4C2C 002A088C 80 1C 00 00 */ lwz r0, 0(r28) +/* 802A4C30 002A0890 38 A0 00 02 */ li r5, 2 +/* 802A4C34 002A0894 38 C0 00 02 */ li r6, 2 +/* 802A4C38 002A0898 90 1E 00 00 */ stw r0, 0(r30) +/* 802A4C3C 002A089C 93 7D 00 10 */ stw r27, 0x10(r29) +/* 802A4C40 002A08A0 80 1C 00 00 */ lwz r0, 0(r28) +/* 802A4C44 002A08A4 1C 00 00 0D */ mulli r0, r0, 0xd +/* 802A4C48 002A08A8 90 1D 00 14 */ stw r0, 0x14(r29) +/* 802A4C4C 002A08AC 93 DD 00 18 */ stw r30, 0x18(r29) +/* 802A4C50 002A08B0 90 7D 00 1C */ stw r3, 0x1c(r29) +/* 802A4C54 002A08B4 48 00 00 0C */ b lbl_802A4C60 +lbl_802A4C58: +/* 802A4C58 002A08B8 38 A0 00 01 */ li r5, 1 +/* 802A4C5C 002A08BC 38 C0 00 01 */ li r6, 1 +lbl_802A4C60: +/* 802A4C60 002A08C0 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4C64 002A08C4 7F A7 EB 78 */ mr r7, r29 +/* 802A4C68 002A08C8 38 80 00 04 */ li r4, 4 +/* 802A4C6C 002A08CC 4B FF F1 D5 */ bl IOS_Ioctlv +/* 802A4C70 002A08D0 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4C74 002A08D4 7C 7F 1B 78 */ mr r31, r3 +/* 802A4C78 002A08D8 40 82 00 0C */ bne lbl_802A4C84 +/* 802A4C7C 002A08DC 80 1E 00 00 */ lwz r0, 0(r30) +/* 802A4C80 002A08E0 90 1C 00 00 */ stw r0, 0(r28) +lbl_802A4C84: +/* 802A4C84 002A08E4 2C 1D 00 00 */ cmpwi r29, 0 +/* 802A4C88 002A08E8 41 82 00 14 */ beq lbl_802A4C9C +/* 802A4C8C 002A08EC 41 82 00 10 */ beq lbl_802A4C9C +/* 802A4C90 002A08F0 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4C94 002A08F4 7F A4 EB 78 */ mr r4, r29 +/* 802A4C98 002A08F8 4B FF F6 A5 */ bl iosFree +lbl_802A4C9C: +/* 802A4C9C 002A08FC 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A4CA0 002A0900 7F E3 FB 78 */ mr r3, r31 +/* 802A4CA4 002A0904 4B F2 24 CD */ bl _restgpr_26 +/* 802A4CA8 002A0908 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A4CAC 002A090C 7C 08 03 A6 */ mtlr r0 +/* 802A4CB0 002A0910 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A4CB4 002A0914 4E 80 00 20 */ blr + +.global ISFS_ReadDirAsync +ISFS_ReadDirAsync: +/* 802A4CB8 002A0918 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802A4CBC 002A091C 7C 08 02 A6 */ mflr r0 +/* 802A4CC0 002A0920 90 01 00 34 */ stw r0, 0x34(r1) +/* 802A4CC4 002A0924 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A4CC8 002A0928 4B F2 24 59 */ bl _savegpr_25 +/* 802A4CCC 002A092C 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4CD0 002A0930 7C 79 1B 78 */ mr r25, r3 +/* 802A4CD4 002A0934 7C 9A 23 78 */ mr r26, r4 +/* 802A4CD8 002A0938 7C BB 2B 78 */ mr r27, r5 +/* 802A4CDC 002A093C 7C DC 33 78 */ mr r28, r6 +/* 802A4CE0 002A0940 7C FD 3B 78 */ mr r29, r7 +/* 802A4CE4 002A0944 41 82 00 34 */ beq lbl_802A4D18 +/* 802A4CE8 002A0948 2C 05 00 00 */ cmpwi r5, 0 +/* 802A4CEC 002A094C 41 82 00 2C */ beq lbl_802A4D18 +/* 802A4CF0 002A0950 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4CF4 002A0954 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4CF8 002A0958 41 80 00 20 */ blt lbl_802A4D18 +/* 802A4CFC 002A095C 54 80 06 FF */ clrlwi. r0, r4, 0x1b +/* 802A4D00 002A0960 40 82 00 18 */ bne lbl_802A4D18 +/* 802A4D04 002A0964 38 80 00 40 */ li r4, 0x40 +/* 802A4D08 002A0968 4B FF DB FD */ bl strnlen +/* 802A4D0C 002A096C 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A4D10 002A0970 7C 7F 1B 78 */ mr r31, r3 +/* 802A4D14 002A0974 40 82 00 0C */ bne lbl_802A4D20 +lbl_802A4D18: +/* 802A4D18 002A0978 38 60 FF 9B */ li r3, -101 +/* 802A4D1C 002A097C 48 00 00 CC */ b lbl_802A4DE8 +lbl_802A4D20: +/* 802A4D20 002A0980 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4D24 002A0984 38 80 01 40 */ li r4, 0x140 +/* 802A4D28 002A0988 38 A0 00 20 */ li r5, 0x20 +/* 802A4D2C 002A098C 4B FF F6 0D */ bl iosAllocAligned +/* 802A4D30 002A0990 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4D34 002A0994 7C 7E 1B 78 */ mr r30, r3 +/* 802A4D38 002A0998 40 82 00 0C */ bne lbl_802A4D44 +/* 802A4D3C 002A099C 38 60 FF 8A */ li r3, -118 +/* 802A4D40 002A09A0 48 00 00 A8 */ b lbl_802A4DE8 +lbl_802A4D44: +/* 802A4D44 002A09A4 93 83 01 00 */ stw r28, 0x100(r3) +/* 802A4D48 002A09A8 38 C0 00 02 */ li r6, 2 +/* 802A4D4C 002A09AC 38 03 00 3F */ addi r0, r3, 0x3f +/* 802A4D50 002A09B0 7F 24 CB 78 */ mr r4, r25 +/* 802A4D54 002A09B4 93 A3 01 04 */ stw r29, 0x104(r3) +/* 802A4D58 002A09B8 54 1D 00 34 */ rlwinm r29, r0, 0, 0, 0x1a +/* 802A4D5C 002A09BC 38 BF 00 01 */ addi r5, r31, 1 +/* 802A4D60 002A09C0 90 C3 01 08 */ stw r6, 0x108(r3) +/* 802A4D64 002A09C4 93 63 01 0C */ stw r27, 0x10c(r3) +/* 802A4D68 002A09C8 7F A3 EB 78 */ mr r3, r29 +/* 802A4D6C 002A09CC 4B D5 F2 95 */ bl memcpy +/* 802A4D70 002A09D0 93 BE 00 00 */ stw r29, 0(r30) +/* 802A4D74 002A09D4 38 60 00 40 */ li r3, 0x40 +/* 802A4D78 002A09D8 38 1D 00 5F */ addi r0, r29, 0x5f +/* 802A4D7C 002A09DC 2C 1A 00 00 */ cmpwi r26, 0 +/* 802A4D80 002A09E0 90 7E 00 04 */ stw r3, 4(r30) +/* 802A4D84 002A09E4 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a +/* 802A4D88 002A09E8 38 60 00 04 */ li r3, 4 +/* 802A4D8C 002A09EC 90 9E 00 08 */ stw r4, 8(r30) +/* 802A4D90 002A09F0 90 7E 00 0C */ stw r3, 0xc(r30) +/* 802A4D94 002A09F4 41 82 00 30 */ beq lbl_802A4DC4 +/* 802A4D98 002A09F8 80 1B 00 00 */ lwz r0, 0(r27) +/* 802A4D9C 002A09FC 38 A0 00 02 */ li r5, 2 +/* 802A4DA0 002A0A00 38 C0 00 02 */ li r6, 2 +/* 802A4DA4 002A0A04 90 04 00 00 */ stw r0, 0(r4) +/* 802A4DA8 002A0A08 93 5E 00 10 */ stw r26, 0x10(r30) +/* 802A4DAC 002A0A0C 80 1B 00 00 */ lwz r0, 0(r27) +/* 802A4DB0 002A0A10 1C 00 00 0D */ mulli r0, r0, 0xd +/* 802A4DB4 002A0A14 90 1E 00 14 */ stw r0, 0x14(r30) +/* 802A4DB8 002A0A18 90 9E 00 18 */ stw r4, 0x18(r30) +/* 802A4DBC 002A0A1C 90 7E 00 1C */ stw r3, 0x1c(r30) +/* 802A4DC0 002A0A20 48 00 00 0C */ b lbl_802A4DCC +lbl_802A4DC4: +/* 802A4DC4 002A0A24 38 A0 00 01 */ li r5, 1 +/* 802A4DC8 002A0A28 38 C0 00 01 */ li r6, 1 +lbl_802A4DCC: +/* 802A4DCC 002A0A2C 3D 00 80 2A */ lis r8, _isfsFuncCb@ha +/* 802A4DD0 002A0A30 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4DD4 002A0A34 7F C7 F3 78 */ mr r7, r30 +/* 802A4DD8 002A0A38 7F C9 F3 78 */ mr r9, r30 +/* 802A4DDC 002A0A3C 39 08 48 14 */ addi r8, r8, _isfsFuncCb@l +/* 802A4DE0 002A0A40 38 80 00 04 */ li r4, 4 +/* 802A4DE4 002A0A44 4B FF EF 79 */ bl IOS_IoctlvAsync +lbl_802A4DE8: +/* 802A4DE8 002A0A48 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A4DEC 002A0A4C 4B F2 23 81 */ bl _restgpr_25 +/* 802A4DF0 002A0A50 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802A4DF4 002A0A54 7C 08 03 A6 */ mtlr r0 +/* 802A4DF8 002A0A58 38 21 00 30 */ addi r1, r1, 0x30 +/* 802A4DFC 002A0A5C 4E 80 00 20 */ blr + +.global ISFS_GetAttr +ISFS_GetAttr: +/* 802A4E00 002A0A60 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802A4E04 002A0A64 7C 08 02 A6 */ mflr r0 +/* 802A4E08 002A0A68 90 01 00 34 */ stw r0, 0x34(r1) +/* 802A4E0C 002A0A6C 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A4E10 002A0A70 4B F2 23 09 */ bl _savegpr_23 +/* 802A4E14 002A0A74 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4E18 002A0A78 7C 7E 1B 78 */ mr r30, r3 +/* 802A4E1C 002A0A7C 7C 97 23 78 */ mr r23, r4 +/* 802A4E20 002A0A80 7C B8 2B 78 */ mr r24, r5 +/* 802A4E24 002A0A84 7C D9 33 78 */ mr r25, r6 +/* 802A4E28 002A0A88 7C FA 3B 78 */ mr r26, r7 +/* 802A4E2C 002A0A8C 7D 1B 43 78 */ mr r27, r8 +/* 802A4E30 002A0A90 7D 3C 4B 78 */ mr r28, r9 +/* 802A4E34 002A0A94 3B A0 00 00 */ li r29, 0 +/* 802A4E38 002A0A98 41 82 00 54 */ beq lbl_802A4E8C +/* 802A4E3C 002A0A9C 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4E40 002A0AA0 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4E44 002A0AA4 41 80 00 48 */ blt lbl_802A4E8C +/* 802A4E48 002A0AA8 38 80 00 40 */ li r4, 0x40 +/* 802A4E4C 002A0AAC 4B FF DA B9 */ bl strnlen +/* 802A4E50 002A0AB0 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A4E54 002A0AB4 7C 7F 1B 78 */ mr r31, r3 +/* 802A4E58 002A0AB8 41 82 00 34 */ beq lbl_802A4E8C +/* 802A4E5C 002A0ABC 2C 17 00 00 */ cmpwi r23, 0 +/* 802A4E60 002A0AC0 41 82 00 2C */ beq lbl_802A4E8C +/* 802A4E64 002A0AC4 2C 18 00 00 */ cmpwi r24, 0 +/* 802A4E68 002A0AC8 41 82 00 24 */ beq lbl_802A4E8C +/* 802A4E6C 002A0ACC 2C 19 00 00 */ cmpwi r25, 0 +/* 802A4E70 002A0AD0 41 82 00 1C */ beq lbl_802A4E8C +/* 802A4E74 002A0AD4 2C 1A 00 00 */ cmpwi r26, 0 +/* 802A4E78 002A0AD8 41 82 00 14 */ beq lbl_802A4E8C +/* 802A4E7C 002A0ADC 2C 1B 00 00 */ cmpwi r27, 0 +/* 802A4E80 002A0AE0 41 82 00 0C */ beq lbl_802A4E8C +/* 802A4E84 002A0AE4 2C 1C 00 00 */ cmpwi r28, 0 +/* 802A4E88 002A0AE8 40 82 00 0C */ bne lbl_802A4E94 +lbl_802A4E8C: +/* 802A4E8C 002A0AEC 3B E0 FF 9B */ li r31, -101 +/* 802A4E90 002A0AF0 48 00 00 94 */ b lbl_802A4F24 +lbl_802A4E94: +/* 802A4E94 002A0AF4 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4E98 002A0AF8 38 80 01 40 */ li r4, 0x140 +/* 802A4E9C 002A0AFC 38 A0 00 20 */ li r5, 0x20 +/* 802A4EA0 002A0B00 4B FF F4 99 */ bl iosAllocAligned +/* 802A4EA4 002A0B04 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4EA8 002A0B08 7C 7D 1B 78 */ mr r29, r3 +/* 802A4EAC 002A0B0C 40 82 00 0C */ bne lbl_802A4EB8 +/* 802A4EB0 002A0B10 3B E0 FF EA */ li r31, -22 +/* 802A4EB4 002A0B14 48 00 00 70 */ b lbl_802A4F24 +lbl_802A4EB8: +/* 802A4EB8 002A0B18 7F C4 F3 78 */ mr r4, r30 +/* 802A4EBC 002A0B1C 38 BF 00 01 */ addi r5, r31, 1 +/* 802A4EC0 002A0B20 4B D5 F1 41 */ bl memcpy +/* 802A4EC4 002A0B24 38 1D 00 5F */ addi r0, r29, 0x5f +/* 802A4EC8 002A0B28 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4ECC 002A0B2C 54 1E 00 34 */ rlwinm r30, r0, 0, 0, 0x1a +/* 802A4ED0 002A0B30 7F A5 EB 78 */ mr r5, r29 +/* 802A4ED4 002A0B34 7F C7 F3 78 */ mr r7, r30 +/* 802A4ED8 002A0B38 38 80 00 06 */ li r4, 6 +/* 802A4EDC 002A0B3C 38 C0 00 40 */ li r6, 0x40 +/* 802A4EE0 002A0B40 39 00 00 4C */ li r8, 0x4c +/* 802A4EE4 002A0B44 4B FF EC 0D */ bl IOS_Ioctl +/* 802A4EE8 002A0B48 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4EEC 002A0B4C 7C 7F 1B 78 */ mr r31, r3 +/* 802A4EF0 002A0B50 40 82 00 34 */ bne lbl_802A4F24 +/* 802A4EF4 002A0B54 80 1E 00 00 */ lwz r0, 0(r30) +/* 802A4EF8 002A0B58 90 17 00 00 */ stw r0, 0(r23) +/* 802A4EFC 002A0B5C A0 1E 00 04 */ lhz r0, 4(r30) +/* 802A4F00 002A0B60 B0 18 00 00 */ sth r0, 0(r24) +/* 802A4F04 002A0B64 88 1E 00 49 */ lbz r0, 0x49(r30) +/* 802A4F08 002A0B68 90 19 00 00 */ stw r0, 0(r25) +/* 802A4F0C 002A0B6C 88 1E 00 46 */ lbz r0, 0x46(r30) +/* 802A4F10 002A0B70 90 1A 00 00 */ stw r0, 0(r26) +/* 802A4F14 002A0B74 88 1E 00 47 */ lbz r0, 0x47(r30) +/* 802A4F18 002A0B78 90 1B 00 00 */ stw r0, 0(r27) +/* 802A4F1C 002A0B7C 88 1E 00 48 */ lbz r0, 0x48(r30) +/* 802A4F20 002A0B80 90 1C 00 00 */ stw r0, 0(r28) +lbl_802A4F24: +/* 802A4F24 002A0B84 2C 1D 00 00 */ cmpwi r29, 0 +/* 802A4F28 002A0B88 41 82 00 14 */ beq lbl_802A4F3C +/* 802A4F2C 002A0B8C 41 82 00 10 */ beq lbl_802A4F3C +/* 802A4F30 002A0B90 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4F34 002A0B94 7F A4 EB 78 */ mr r4, r29 +/* 802A4F38 002A0B98 4B FF F4 05 */ bl iosFree +lbl_802A4F3C: +/* 802A4F3C 002A0B9C 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A4F40 002A0BA0 7F E3 FB 78 */ mr r3, r31 +/* 802A4F44 002A0BA4 4B F2 22 21 */ bl _restgpr_23 +/* 802A4F48 002A0BA8 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802A4F4C 002A0BAC 7C 08 03 A6 */ mtlr r0 +/* 802A4F50 002A0BB0 38 21 00 30 */ addi r1, r1, 0x30 +/* 802A4F54 002A0BB4 4E 80 00 20 */ blr + +.global ISFS_GetAttrAsync +ISFS_GetAttrAsync: +/* 802A4F58 002A0BB8 94 21 FF C0 */ stwu r1, -0x40(r1) +/* 802A4F5C 002A0BBC 7C 08 02 A6 */ mflr r0 +/* 802A4F60 002A0BC0 90 01 00 44 */ stw r0, 0x44(r1) +/* 802A4F64 002A0BC4 39 61 00 40 */ addi r11, r1, 0x40 +/* 802A4F68 002A0BC8 4B F2 21 A9 */ bl _savegpr_21 +/* 802A4F6C 002A0BCC 2C 03 00 00 */ cmpwi r3, 0 +/* 802A4F70 002A0BD0 83 A1 00 48 */ lwz r29, 0x48(r1) +/* 802A4F74 002A0BD4 7C 75 1B 78 */ mr r21, r3 +/* 802A4F78 002A0BD8 7C 96 23 78 */ mr r22, r4 +/* 802A4F7C 002A0BDC 7C B7 2B 78 */ mr r23, r5 +/* 802A4F80 002A0BE0 7C D8 33 78 */ mr r24, r6 +/* 802A4F84 002A0BE4 7C F9 3B 78 */ mr r25, r7 +/* 802A4F88 002A0BE8 7D 1A 43 78 */ mr r26, r8 +/* 802A4F8C 002A0BEC 7D 3B 4B 78 */ mr r27, r9 +/* 802A4F90 002A0BF0 7D 5C 53 78 */ mr r28, r10 +/* 802A4F94 002A0BF4 41 82 00 54 */ beq lbl_802A4FE8 +/* 802A4F98 002A0BF8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A4F9C 002A0BFC 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4FA0 002A0C00 41 80 00 48 */ blt lbl_802A4FE8 +/* 802A4FA4 002A0C04 38 80 00 40 */ li r4, 0x40 +/* 802A4FA8 002A0C08 4B FF D9 5D */ bl strnlen +/* 802A4FAC 002A0C0C 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A4FB0 002A0C10 7C 7F 1B 78 */ mr r31, r3 +/* 802A4FB4 002A0C14 41 82 00 34 */ beq lbl_802A4FE8 +/* 802A4FB8 002A0C18 2C 16 00 00 */ cmpwi r22, 0 +/* 802A4FBC 002A0C1C 41 82 00 2C */ beq lbl_802A4FE8 +/* 802A4FC0 002A0C20 2C 17 00 00 */ cmpwi r23, 0 +/* 802A4FC4 002A0C24 41 82 00 24 */ beq lbl_802A4FE8 +/* 802A4FC8 002A0C28 2C 18 00 00 */ cmpwi r24, 0 +/* 802A4FCC 002A0C2C 41 82 00 1C */ beq lbl_802A4FE8 +/* 802A4FD0 002A0C30 2C 19 00 00 */ cmpwi r25, 0 +/* 802A4FD4 002A0C34 41 82 00 14 */ beq lbl_802A4FE8 +/* 802A4FD8 002A0C38 2C 1A 00 00 */ cmpwi r26, 0 +/* 802A4FDC 002A0C3C 41 82 00 0C */ beq lbl_802A4FE8 +/* 802A4FE0 002A0C40 2C 1B 00 00 */ cmpwi r27, 0 +/* 802A4FE4 002A0C44 40 82 00 0C */ bne lbl_802A4FF0 +lbl_802A4FE8: +/* 802A4FE8 002A0C48 38 60 FF 9B */ li r3, -101 +/* 802A4FEC 002A0C4C 48 00 00 88 */ b lbl_802A5074 +lbl_802A4FF0: +/* 802A4FF0 002A0C50 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A4FF4 002A0C54 38 80 01 40 */ li r4, 0x140 +/* 802A4FF8 002A0C58 38 A0 00 20 */ li r5, 0x20 +/* 802A4FFC 002A0C5C 4B FF F3 3D */ bl iosAllocAligned +/* 802A5000 002A0C60 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5004 002A0C64 7C 7E 1B 78 */ mr r30, r3 +/* 802A5008 002A0C68 40 82 00 0C */ bne lbl_802A5014 +/* 802A500C 002A0C6C 38 60 FF 8A */ li r3, -118 +/* 802A5010 002A0C70 48 00 00 64 */ b lbl_802A5074 +lbl_802A5014: +/* 802A5014 002A0C74 92 C3 01 0C */ stw r22, 0x10c(r3) +/* 802A5018 002A0C78 38 00 00 03 */ li r0, 3 +/* 802A501C 002A0C7C 7E A4 AB 78 */ mr r4, r21 +/* 802A5020 002A0C80 38 BF 00 01 */ addi r5, r31, 1 +/* 802A5024 002A0C84 92 E3 01 10 */ stw r23, 0x110(r3) +/* 802A5028 002A0C88 93 03 01 14 */ stw r24, 0x114(r3) +/* 802A502C 002A0C8C 93 23 01 18 */ stw r25, 0x118(r3) +/* 802A5030 002A0C90 93 43 01 1C */ stw r26, 0x11c(r3) +/* 802A5034 002A0C94 93 63 01 20 */ stw r27, 0x120(r3) +/* 802A5038 002A0C98 93 83 01 00 */ stw r28, 0x100(r3) +/* 802A503C 002A0C9C 93 A3 01 04 */ stw r29, 0x104(r3) +/* 802A5040 002A0CA0 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A5044 002A0CA4 4B D5 EF BD */ bl memcpy +/* 802A5048 002A0CA8 38 1E 00 5F */ addi r0, r30, 0x5f +/* 802A504C 002A0CAC 3D 20 80 2A */ lis r9, _isfsFuncCb@ha +/* 802A5050 002A0CB0 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5054 002A0CB4 7F C5 F3 78 */ mr r5, r30 +/* 802A5058 002A0CB8 7F CA F3 78 */ mr r10, r30 +/* 802A505C 002A0CBC 54 07 00 34 */ rlwinm r7, r0, 0, 0, 0x1a +/* 802A5060 002A0CC0 39 29 48 14 */ addi r9, r9, _isfsFuncCb@l +/* 802A5064 002A0CC4 38 80 00 06 */ li r4, 6 +/* 802A5068 002A0CC8 38 C0 00 40 */ li r6, 0x40 +/* 802A506C 002A0CCC 39 00 00 4C */ li r8, 0x4c +/* 802A5070 002A0CD0 4B FF E9 49 */ bl IOS_IoctlAsync +lbl_802A5074: +/* 802A5074 002A0CD4 39 61 00 40 */ addi r11, r1, 0x40 +/* 802A5078 002A0CD8 4B F2 20 E5 */ bl _restgpr_21 +/* 802A507C 002A0CDC 80 01 00 44 */ lwz r0, 0x44(r1) +/* 802A5080 002A0CE0 7C 08 03 A6 */ mtlr r0 +/* 802A5084 002A0CE4 38 21 00 40 */ addi r1, r1, 0x40 +/* 802A5088 002A0CE8 4E 80 00 20 */ blr + +.global ISFS_Delete +ISFS_Delete: +/* 802A508C 002A0CEC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A5090 002A0CF0 7C 08 02 A6 */ mflr r0 +/* 802A5094 002A0CF4 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5098 002A0CF8 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A509C 002A0CFC 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802A50A0 002A0D00 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802A50A4 002A0D04 3B C0 00 00 */ li r30, 0 +/* 802A50A8 002A0D08 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802A50AC 002A0D0C 7C 7D 1B 78 */ mr r29, r3 +/* 802A50B0 002A0D10 41 82 00 24 */ beq lbl_802A50D4 +/* 802A50B4 002A0D14 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A50B8 002A0D18 2C 00 00 00 */ cmpwi r0, 0 +/* 802A50BC 002A0D1C 41 80 00 18 */ blt lbl_802A50D4 +/* 802A50C0 002A0D20 38 80 00 40 */ li r4, 0x40 +/* 802A50C4 002A0D24 4B FF D8 41 */ bl strnlen +/* 802A50C8 002A0D28 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A50CC 002A0D2C 7C 7F 1B 78 */ mr r31, r3 +/* 802A50D0 002A0D30 40 82 00 0C */ bne lbl_802A50DC +lbl_802A50D4: +/* 802A50D4 002A0D34 3B E0 FF 9B */ li r31, -101 +/* 802A50D8 002A0D38 48 00 00 54 */ b lbl_802A512C +lbl_802A50DC: +/* 802A50DC 002A0D3C 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A50E0 002A0D40 38 80 01 40 */ li r4, 0x140 +/* 802A50E4 002A0D44 38 A0 00 20 */ li r5, 0x20 +/* 802A50E8 002A0D48 4B FF F2 51 */ bl iosAllocAligned +/* 802A50EC 002A0D4C 2C 03 00 00 */ cmpwi r3, 0 +/* 802A50F0 002A0D50 7C 7E 1B 78 */ mr r30, r3 +/* 802A50F4 002A0D54 40 82 00 0C */ bne lbl_802A5100 +/* 802A50F8 002A0D58 3B E0 FF EA */ li r31, -22 +/* 802A50FC 002A0D5C 48 00 00 30 */ b lbl_802A512C +lbl_802A5100: +/* 802A5100 002A0D60 7F A4 EB 78 */ mr r4, r29 +/* 802A5104 002A0D64 38 BF 00 01 */ addi r5, r31, 1 +/* 802A5108 002A0D68 4B D5 EE F9 */ bl memcpy +/* 802A510C 002A0D6C 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5110 002A0D70 7F C5 F3 78 */ mr r5, r30 +/* 802A5114 002A0D74 38 80 00 07 */ li r4, 7 +/* 802A5118 002A0D78 38 C0 00 40 */ li r6, 0x40 +/* 802A511C 002A0D7C 38 E0 00 00 */ li r7, 0 +/* 802A5120 002A0D80 39 00 00 00 */ li r8, 0 +/* 802A5124 002A0D84 4B FF E9 CD */ bl IOS_Ioctl +/* 802A5128 002A0D88 7C 7F 1B 78 */ mr r31, r3 +lbl_802A512C: +/* 802A512C 002A0D8C 2C 1E 00 00 */ cmpwi r30, 0 +/* 802A5130 002A0D90 41 82 00 14 */ beq lbl_802A5144 +/* 802A5134 002A0D94 41 82 00 10 */ beq lbl_802A5144 +/* 802A5138 002A0D98 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A513C 002A0D9C 7F C4 F3 78 */ mr r4, r30 +/* 802A5140 002A0DA0 4B FF F1 FD */ bl iosFree +lbl_802A5144: +/* 802A5144 002A0DA4 7F E3 FB 78 */ mr r3, r31 +/* 802A5148 002A0DA8 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802A514C 002A0DAC 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802A5150 002A0DB0 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802A5154 002A0DB4 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A5158 002A0DB8 7C 08 03 A6 */ mtlr r0 +/* 802A515C 002A0DBC 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A5160 002A0DC0 4E 80 00 20 */ blr + +.global ISFS_DeleteAsync +ISFS_DeleteAsync: +/* 802A5164 002A0DC4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A5168 002A0DC8 7C 08 02 A6 */ mflr r0 +/* 802A516C 002A0DCC 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A5170 002A0DD0 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A5174 002A0DD4 4B F2 1F B5 */ bl _savegpr_27 +/* 802A5178 002A0DD8 2C 03 00 00 */ cmpwi r3, 0 +/* 802A517C 002A0DDC 7C 7B 1B 78 */ mr r27, r3 +/* 802A5180 002A0DE0 7C 9C 23 78 */ mr r28, r4 +/* 802A5184 002A0DE4 7C BD 2B 78 */ mr r29, r5 +/* 802A5188 002A0DE8 41 82 00 24 */ beq lbl_802A51AC +/* 802A518C 002A0DEC 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5190 002A0DF0 2C 00 00 00 */ cmpwi r0, 0 +/* 802A5194 002A0DF4 41 80 00 18 */ blt lbl_802A51AC +/* 802A5198 002A0DF8 38 80 00 40 */ li r4, 0x40 +/* 802A519C 002A0DFC 4B FF D7 69 */ bl strnlen +/* 802A51A0 002A0E00 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A51A4 002A0E04 7C 7F 1B 78 */ mr r31, r3 +/* 802A51A8 002A0E08 40 82 00 0C */ bne lbl_802A51B4 +lbl_802A51AC: +/* 802A51AC 002A0E0C 38 60 FF 9B */ li r3, -101 +/* 802A51B0 002A0E10 48 00 00 6C */ b lbl_802A521C +lbl_802A51B4: +/* 802A51B4 002A0E14 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A51B8 002A0E18 38 80 01 40 */ li r4, 0x140 +/* 802A51BC 002A0E1C 38 A0 00 20 */ li r5, 0x20 +/* 802A51C0 002A0E20 4B FF F1 79 */ bl iosAllocAligned +/* 802A51C4 002A0E24 2C 03 00 00 */ cmpwi r3, 0 +/* 802A51C8 002A0E28 7C 7E 1B 78 */ mr r30, r3 +/* 802A51CC 002A0E2C 40 82 00 0C */ bne lbl_802A51D8 +/* 802A51D0 002A0E30 38 60 FF 8A */ li r3, -118 +/* 802A51D4 002A0E34 48 00 00 48 */ b lbl_802A521C +lbl_802A51D8: +/* 802A51D8 002A0E38 7F 64 DB 78 */ mr r4, r27 +/* 802A51DC 002A0E3C 38 BF 00 01 */ addi r5, r31, 1 +/* 802A51E0 002A0E40 4B D5 EE 21 */ bl memcpy +/* 802A51E4 002A0E44 93 9E 01 00 */ stw r28, 0x100(r30) +/* 802A51E8 002A0E48 3D 20 80 2A */ lis r9, _isfsFuncCb@ha +/* 802A51EC 002A0E4C 38 00 00 00 */ li r0, 0 +/* 802A51F0 002A0E50 7F C5 F3 78 */ mr r5, r30 +/* 802A51F4 002A0E54 93 BE 01 04 */ stw r29, 0x104(r30) +/* 802A51F8 002A0E58 7F CA F3 78 */ mr r10, r30 +/* 802A51FC 002A0E5C 39 29 48 14 */ addi r9, r9, _isfsFuncCb@l +/* 802A5200 002A0E60 38 80 00 07 */ li r4, 7 +/* 802A5204 002A0E64 90 1E 01 08 */ stw r0, 0x108(r30) +/* 802A5208 002A0E68 38 C0 00 40 */ li r6, 0x40 +/* 802A520C 002A0E6C 38 E0 00 00 */ li r7, 0 +/* 802A5210 002A0E70 39 00 00 00 */ li r8, 0 +/* 802A5214 002A0E74 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5218 002A0E78 4B FF E7 A1 */ bl IOS_IoctlAsync +lbl_802A521C: +/* 802A521C 002A0E7C 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A5220 002A0E80 4B F2 1F 55 */ bl _restgpr_27 +/* 802A5224 002A0E84 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A5228 002A0E88 7C 08 03 A6 */ mtlr r0 +/* 802A522C 002A0E8C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A5230 002A0E90 4E 80 00 20 */ blr + +.global ISFS_RenameAsync +ISFS_RenameAsync: +/* 802A5234 002A0E94 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802A5238 002A0E98 7C 08 02 A6 */ mflr r0 +/* 802A523C 002A0E9C 90 01 00 34 */ stw r0, 0x34(r1) +/* 802A5240 002A0EA0 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A5244 002A0EA4 4B F2 1E DD */ bl _savegpr_25 +/* 802A5248 002A0EA8 2C 03 00 00 */ cmpwi r3, 0 +/* 802A524C 002A0EAC 7C 79 1B 78 */ mr r25, r3 +/* 802A5250 002A0EB0 7C 9A 23 78 */ mr r26, r4 +/* 802A5254 002A0EB4 7C BB 2B 78 */ mr r27, r5 +/* 802A5258 002A0EB8 7C DC 33 78 */ mr r28, r6 +/* 802A525C 002A0EBC 41 82 00 44 */ beq lbl_802A52A0 +/* 802A5260 002A0EC0 2C 04 00 00 */ cmpwi r4, 0 +/* 802A5264 002A0EC4 41 82 00 3C */ beq lbl_802A52A0 +/* 802A5268 002A0EC8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A526C 002A0ECC 2C 00 00 00 */ cmpwi r0, 0 +/* 802A5270 002A0ED0 41 80 00 30 */ blt lbl_802A52A0 +/* 802A5274 002A0ED4 38 80 00 40 */ li r4, 0x40 +/* 802A5278 002A0ED8 4B FF D6 8D */ bl strnlen +/* 802A527C 002A0EDC 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A5280 002A0EE0 7C 7E 1B 78 */ mr r30, r3 +/* 802A5284 002A0EE4 41 82 00 1C */ beq lbl_802A52A0 +/* 802A5288 002A0EE8 7F 43 D3 78 */ mr r3, r26 +/* 802A528C 002A0EEC 38 80 00 40 */ li r4, 0x40 +/* 802A5290 002A0EF0 4B FF D6 75 */ bl strnlen +/* 802A5294 002A0EF4 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A5298 002A0EF8 7C 7F 1B 78 */ mr r31, r3 +/* 802A529C 002A0EFC 40 82 00 0C */ bne lbl_802A52A8 +lbl_802A52A0: +/* 802A52A0 002A0F00 38 60 FF 9B */ li r3, -101 +/* 802A52A4 002A0F04 48 00 00 7C */ b lbl_802A5320 +lbl_802A52A8: +/* 802A52A8 002A0F08 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A52AC 002A0F0C 38 80 01 40 */ li r4, 0x140 +/* 802A52B0 002A0F10 38 A0 00 20 */ li r5, 0x20 +/* 802A52B4 002A0F14 4B FF F0 85 */ bl iosAllocAligned +/* 802A52B8 002A0F18 2C 03 00 00 */ cmpwi r3, 0 +/* 802A52BC 002A0F1C 7C 7D 1B 78 */ mr r29, r3 +/* 802A52C0 002A0F20 40 82 00 0C */ bne lbl_802A52CC +/* 802A52C4 002A0F24 38 60 FF 8A */ li r3, -118 +/* 802A52C8 002A0F28 48 00 00 58 */ b lbl_802A5320 +lbl_802A52CC: +/* 802A52CC 002A0F2C 93 63 01 00 */ stw r27, 0x100(r3) +/* 802A52D0 002A0F30 38 00 00 00 */ li r0, 0 +/* 802A52D4 002A0F34 7F 24 CB 78 */ mr r4, r25 +/* 802A52D8 002A0F38 38 BE 00 01 */ addi r5, r30, 1 +/* 802A52DC 002A0F3C 93 83 01 04 */ stw r28, 0x104(r3) +/* 802A52E0 002A0F40 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A52E4 002A0F44 4B D5 ED 1D */ bl memcpy +/* 802A52E8 002A0F48 7F 44 D3 78 */ mr r4, r26 +/* 802A52EC 002A0F4C 38 7D 00 40 */ addi r3, r29, 0x40 +/* 802A52F0 002A0F50 38 BF 00 01 */ addi r5, r31, 1 +/* 802A52F4 002A0F54 4B D5 ED 0D */ bl memcpy +/* 802A52F8 002A0F58 3D 20 80 2A */ lis r9, _isfsFuncCb@ha +/* 802A52FC 002A0F5C 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5300 002A0F60 7F A5 EB 78 */ mr r5, r29 +/* 802A5304 002A0F64 7F AA EB 78 */ mr r10, r29 +/* 802A5308 002A0F68 39 29 48 14 */ addi r9, r9, _isfsFuncCb@l +/* 802A530C 002A0F6C 38 80 00 08 */ li r4, 8 +/* 802A5310 002A0F70 38 C0 00 80 */ li r6, 0x80 +/* 802A5314 002A0F74 38 E0 00 00 */ li r7, 0 +/* 802A5318 002A0F78 39 00 00 00 */ li r8, 0 +/* 802A531C 002A0F7C 4B FF E6 9D */ bl IOS_IoctlAsync +lbl_802A5320: +/* 802A5320 002A0F80 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A5324 002A0F84 4B F2 1E 49 */ bl _restgpr_25 +/* 802A5328 002A0F88 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802A532C 002A0F8C 7C 08 03 A6 */ mtlr r0 +/* 802A5330 002A0F90 38 21 00 30 */ addi r1, r1, 0x30 +/* 802A5334 002A0F94 4E 80 00 20 */ blr + +.global ISFS_GetUsageAsync +ISFS_GetUsageAsync: +/* 802A5338 002A0F98 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802A533C 002A0F9C 7C 08 02 A6 */ mflr r0 +/* 802A5340 002A0FA0 90 01 00 34 */ stw r0, 0x34(r1) +/* 802A5344 002A0FA4 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A5348 002A0FA8 4B F2 1D D9 */ bl _savegpr_25 +/* 802A534C 002A0FAC 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5350 002A0FB0 7C 79 1B 78 */ mr r25, r3 +/* 802A5354 002A0FB4 7C 9A 23 78 */ mr r26, r4 +/* 802A5358 002A0FB8 7C BB 2B 78 */ mr r27, r5 +/* 802A535C 002A0FBC 7C DF 33 78 */ mr r31, r6 +/* 802A5360 002A0FC0 7C FC 3B 78 */ mr r28, r7 +/* 802A5364 002A0FC4 41 82 00 34 */ beq lbl_802A5398 +/* 802A5368 002A0FC8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A536C 002A0FCC 2C 00 00 00 */ cmpwi r0, 0 +/* 802A5370 002A0FD0 41 80 00 28 */ blt lbl_802A5398 +/* 802A5374 002A0FD4 2C 04 00 00 */ cmpwi r4, 0 +/* 802A5378 002A0FD8 41 82 00 20 */ beq lbl_802A5398 +/* 802A537C 002A0FDC 2C 05 00 00 */ cmpwi r5, 0 +/* 802A5380 002A0FE0 41 82 00 18 */ beq lbl_802A5398 +/* 802A5384 002A0FE4 38 80 00 40 */ li r4, 0x40 +/* 802A5388 002A0FE8 4B FF D5 7D */ bl strnlen +/* 802A538C 002A0FEC 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A5390 002A0FF0 7C 7E 1B 78 */ mr r30, r3 +/* 802A5394 002A0FF4 40 82 00 0C */ bne lbl_802A53A0 +lbl_802A5398: +/* 802A5398 002A0FF8 38 60 FF 9B */ li r3, -101 +/* 802A539C 002A0FFC 48 00 00 A8 */ b lbl_802A5444 +lbl_802A53A0: +/* 802A53A0 002A1000 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A53A4 002A1004 38 80 01 40 */ li r4, 0x140 +/* 802A53A8 002A1008 38 A0 00 20 */ li r5, 0x20 +/* 802A53AC 002A100C 4B FF EF 8D */ bl iosAllocAligned +/* 802A53B0 002A1010 2C 03 00 00 */ cmpwi r3, 0 +/* 802A53B4 002A1014 7C 7D 1B 78 */ mr r29, r3 +/* 802A53B8 002A1018 40 82 00 0C */ bne lbl_802A53C4 +/* 802A53BC 002A101C 38 60 FF 8A */ li r3, -118 +/* 802A53C0 002A1020 48 00 00 84 */ b lbl_802A5444 +lbl_802A53C4: +/* 802A53C4 002A1024 93 E3 01 00 */ stw r31, 0x100(r3) +/* 802A53C8 002A1028 3B E0 00 04 */ li r31, 4 +/* 802A53CC 002A102C 38 03 00 37 */ addi r0, r3, 0x37 +/* 802A53D0 002A1030 7F 24 CB 78 */ mr r4, r25 +/* 802A53D4 002A1034 93 83 01 04 */ stw r28, 0x104(r3) +/* 802A53D8 002A1038 54 1C 00 34 */ rlwinm r28, r0, 0, 0, 0x1a +/* 802A53DC 002A103C 38 BE 00 01 */ addi r5, r30, 1 +/* 802A53E0 002A1040 93 E3 01 08 */ stw r31, 0x108(r3) +/* 802A53E4 002A1044 93 43 01 0C */ stw r26, 0x10c(r3) +/* 802A53E8 002A1048 93 63 01 10 */ stw r27, 0x110(r3) +/* 802A53EC 002A104C 7F 83 E3 78 */ mr r3, r28 +/* 802A53F0 002A1050 4B D5 EC 11 */ bl memcpy +/* 802A53F4 002A1054 93 9D 00 00 */ stw r28, 0(r29) +/* 802A53F8 002A1058 38 60 00 40 */ li r3, 0x40 +/* 802A53FC 002A105C 3D 00 80 2A */ lis r8, _isfsFuncCb@ha +/* 802A5400 002A1060 38 1C 00 5F */ addi r0, r28, 0x5f +/* 802A5404 002A1064 90 7D 00 04 */ stw r3, 4(r29) +/* 802A5408 002A1068 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a +/* 802A540C 002A106C 38 03 00 23 */ addi r0, r3, 0x23 +/* 802A5410 002A1070 7F A7 EB 78 */ mr r7, r29 +/* 802A5414 002A1074 90 7D 00 08 */ stw r3, 8(r29) +/* 802A5418 002A1078 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a +/* 802A541C 002A107C 7F A9 EB 78 */ mr r9, r29 +/* 802A5420 002A1080 39 08 48 14 */ addi r8, r8, _isfsFuncCb@l +/* 802A5424 002A1084 93 FD 00 0C */ stw r31, 0xc(r29) +/* 802A5428 002A1088 38 80 00 0C */ li r4, 0xc +/* 802A542C 002A108C 38 A0 00 01 */ li r5, 1 +/* 802A5430 002A1090 38 C0 00 02 */ li r6, 2 +/* 802A5434 002A1094 90 1D 00 10 */ stw r0, 0x10(r29) +/* 802A5438 002A1098 93 FD 00 14 */ stw r31, 0x14(r29) +/* 802A543C 002A109C 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5440 002A10A0 4B FF E9 1D */ bl IOS_IoctlvAsync +lbl_802A5444: +/* 802A5444 002A10A4 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A5448 002A10A8 4B F2 1D 25 */ bl _restgpr_25 +/* 802A544C 002A10AC 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802A5450 002A10B0 7C 08 03 A6 */ mtlr r0 +/* 802A5454 002A10B4 38 21 00 30 */ addi r1, r1, 0x30 +/* 802A5458 002A10B8 4E 80 00 20 */ blr + +.global ISFS_CreateFile +ISFS_CreateFile: +/* 802A545C 002A10BC 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802A5460 002A10C0 7C 08 02 A6 */ mflr r0 +/* 802A5464 002A10C4 90 01 00 34 */ stw r0, 0x34(r1) +/* 802A5468 002A10C8 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A546C 002A10CC 4B F2 1C B5 */ bl _savegpr_25 +/* 802A5470 002A10D0 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5474 002A10D4 7C 79 1B 78 */ mr r25, r3 +/* 802A5478 002A10D8 7C 9A 23 78 */ mr r26, r4 +/* 802A547C 002A10DC 7C BB 2B 78 */ mr r27, r5 +/* 802A5480 002A10E0 7C DC 33 78 */ mr r28, r6 +/* 802A5484 002A10E4 7C FD 3B 78 */ mr r29, r7 +/* 802A5488 002A10E8 3B C0 00 00 */ li r30, 0 +/* 802A548C 002A10EC 41 82 00 24 */ beq lbl_802A54B0 +/* 802A5490 002A10F0 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5494 002A10F4 2C 00 00 00 */ cmpwi r0, 0 +/* 802A5498 002A10F8 41 80 00 18 */ blt lbl_802A54B0 +/* 802A549C 002A10FC 38 80 00 40 */ li r4, 0x40 +/* 802A54A0 002A1100 4B FF D4 65 */ bl strnlen +/* 802A54A4 002A1104 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A54A8 002A1108 7C 7F 1B 78 */ mr r31, r3 +/* 802A54AC 002A110C 40 82 00 0C */ bne lbl_802A54B8 +lbl_802A54B0: +/* 802A54B0 002A1110 3B E0 FF 9B */ li r31, -101 +/* 802A54B4 002A1114 48 00 00 68 */ b lbl_802A551C +lbl_802A54B8: +/* 802A54B8 002A1118 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A54BC 002A111C 38 80 01 40 */ li r4, 0x140 +/* 802A54C0 002A1120 38 A0 00 20 */ li r5, 0x20 +/* 802A54C4 002A1124 4B FF EE 75 */ bl iosAllocAligned +/* 802A54C8 002A1128 2C 03 00 00 */ cmpwi r3, 0 +/* 802A54CC 002A112C 7C 7E 1B 78 */ mr r30, r3 +/* 802A54D0 002A1130 40 82 00 0C */ bne lbl_802A54DC +/* 802A54D4 002A1134 3B E0 FF EA */ li r31, -22 +/* 802A54D8 002A1138 48 00 00 44 */ b lbl_802A551C +lbl_802A54DC: +/* 802A54DC 002A113C 7F 24 CB 78 */ mr r4, r25 +/* 802A54E0 002A1140 38 BF 00 01 */ addi r5, r31, 1 +/* 802A54E4 002A1144 38 63 00 06 */ addi r3, r3, 6 +/* 802A54E8 002A1148 4B D5 EB 19 */ bl memcpy +/* 802A54EC 002A114C 9B 5E 00 49 */ stb r26, 0x49(r30) +/* 802A54F0 002A1150 7F C5 F3 78 */ mr r5, r30 +/* 802A54F4 002A1154 38 80 00 09 */ li r4, 9 +/* 802A54F8 002A1158 38 C0 00 4C */ li r6, 0x4c +/* 802A54FC 002A115C 9B 7E 00 46 */ stb r27, 0x46(r30) +/* 802A5500 002A1160 38 E0 00 00 */ li r7, 0 +/* 802A5504 002A1164 39 00 00 00 */ li r8, 0 +/* 802A5508 002A1168 9B 9E 00 47 */ stb r28, 0x47(r30) +/* 802A550C 002A116C 9B BE 00 48 */ stb r29, 0x48(r30) +/* 802A5510 002A1170 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5514 002A1174 4B FF E5 DD */ bl IOS_Ioctl +/* 802A5518 002A1178 7C 7F 1B 78 */ mr r31, r3 +lbl_802A551C: +/* 802A551C 002A117C 2C 1E 00 00 */ cmpwi r30, 0 +/* 802A5520 002A1180 41 82 00 14 */ beq lbl_802A5534 +/* 802A5524 002A1184 41 82 00 10 */ beq lbl_802A5534 +/* 802A5528 002A1188 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A552C 002A118C 7F C4 F3 78 */ mr r4, r30 +/* 802A5530 002A1190 4B FF EE 0D */ bl iosFree +lbl_802A5534: +/* 802A5534 002A1194 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A5538 002A1198 7F E3 FB 78 */ mr r3, r31 +/* 802A553C 002A119C 4B F2 1C 31 */ bl _restgpr_25 +/* 802A5540 002A11A0 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802A5544 002A11A4 7C 08 03 A6 */ mtlr r0 +/* 802A5548 002A11A8 38 21 00 30 */ addi r1, r1, 0x30 +/* 802A554C 002A11AC 4E 80 00 20 */ blr + +.global ISFS_CreateFileAsync +ISFS_CreateFileAsync: +/* 802A5550 002A11B0 94 21 FF D0 */ stwu r1, -0x30(r1) +/* 802A5554 002A11B4 7C 08 02 A6 */ mflr r0 +/* 802A5558 002A11B8 90 01 00 34 */ stw r0, 0x34(r1) +/* 802A555C 002A11BC 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A5560 002A11C0 4B F2 1B B9 */ bl _savegpr_23 +/* 802A5564 002A11C4 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5568 002A11C8 7C 77 1B 78 */ mr r23, r3 +/* 802A556C 002A11CC 7C 98 23 78 */ mr r24, r4 +/* 802A5570 002A11D0 7C B9 2B 78 */ mr r25, r5 +/* 802A5574 002A11D4 7C DA 33 78 */ mr r26, r6 +/* 802A5578 002A11D8 7C FB 3B 78 */ mr r27, r7 +/* 802A557C 002A11DC 7D 1C 43 78 */ mr r28, r8 +/* 802A5580 002A11E0 7D 3D 4B 78 */ mr r29, r9 +/* 802A5584 002A11E4 41 82 00 24 */ beq lbl_802A55A8 +/* 802A5588 002A11E8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A558C 002A11EC 2C 00 00 00 */ cmpwi r0, 0 +/* 802A5590 002A11F0 41 80 00 18 */ blt lbl_802A55A8 +/* 802A5594 002A11F4 38 80 00 40 */ li r4, 0x40 +/* 802A5598 002A11F8 4B FF D3 6D */ bl strnlen +/* 802A559C 002A11FC 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A55A0 002A1200 7C 7F 1B 78 */ mr r31, r3 +/* 802A55A4 002A1204 40 82 00 0C */ bne lbl_802A55B0 +lbl_802A55A8: +/* 802A55A8 002A1208 38 60 FF 9B */ li r3, -101 +/* 802A55AC 002A120C 48 00 00 80 */ b lbl_802A562C +lbl_802A55B0: +/* 802A55B0 002A1210 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A55B4 002A1214 38 80 01 40 */ li r4, 0x140 +/* 802A55B8 002A1218 38 A0 00 20 */ li r5, 0x20 +/* 802A55BC 002A121C 4B FF ED 7D */ bl iosAllocAligned +/* 802A55C0 002A1220 2C 03 00 00 */ cmpwi r3, 0 +/* 802A55C4 002A1224 7C 7E 1B 78 */ mr r30, r3 +/* 802A55C8 002A1228 40 82 00 0C */ bne lbl_802A55D4 +/* 802A55CC 002A122C 38 60 FF 8A */ li r3, -118 +/* 802A55D0 002A1230 48 00 00 5C */ b lbl_802A562C +lbl_802A55D4: +/* 802A55D4 002A1234 93 83 01 00 */ stw r28, 0x100(r3) +/* 802A55D8 002A1238 38 00 00 00 */ li r0, 0 +/* 802A55DC 002A123C 7E E4 BB 78 */ mr r4, r23 +/* 802A55E0 002A1240 38 BF 00 01 */ addi r5, r31, 1 +/* 802A55E4 002A1244 93 A3 01 04 */ stw r29, 0x104(r3) +/* 802A55E8 002A1248 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A55EC 002A124C 38 63 00 06 */ addi r3, r3, 6 +/* 802A55F0 002A1250 4B D5 EA 11 */ bl memcpy +/* 802A55F4 002A1254 9B 1E 00 49 */ stb r24, 0x49(r30) +/* 802A55F8 002A1258 3D 20 80 2A */ lis r9, _isfsFuncCb@ha +/* 802A55FC 002A125C 7F C5 F3 78 */ mr r5, r30 +/* 802A5600 002A1260 7F CA F3 78 */ mr r10, r30 +/* 802A5604 002A1264 9B 3E 00 46 */ stb r25, 0x46(r30) +/* 802A5608 002A1268 39 29 48 14 */ addi r9, r9, _isfsFuncCb@l +/* 802A560C 002A126C 38 80 00 09 */ li r4, 9 +/* 802A5610 002A1270 38 C0 00 4C */ li r6, 0x4c +/* 802A5614 002A1274 9B 5E 00 47 */ stb r26, 0x47(r30) +/* 802A5618 002A1278 38 E0 00 00 */ li r7, 0 +/* 802A561C 002A127C 39 00 00 00 */ li r8, 0 +/* 802A5620 002A1280 9B 7E 00 48 */ stb r27, 0x48(r30) +/* 802A5624 002A1284 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5628 002A1288 4B FF E3 91 */ bl IOS_IoctlAsync +lbl_802A562C: +/* 802A562C 002A128C 39 61 00 30 */ addi r11, r1, 0x30 +/* 802A5630 002A1290 4B F2 1B 35 */ bl _restgpr_23 +/* 802A5634 002A1294 80 01 00 34 */ lwz r0, 0x34(r1) +/* 802A5638 002A1298 7C 08 03 A6 */ mtlr r0 +/* 802A563C 002A129C 38 21 00 30 */ addi r1, r1, 0x30 +/* 802A5640 002A12A0 4E 80 00 20 */ blr + +.global ISFS_Open +ISFS_Open: +/* 802A5644 002A12A4 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A5648 002A12A8 7C 08 02 A6 */ mflr r0 +/* 802A564C 002A12AC 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5650 002A12B0 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A5654 002A12B4 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802A5658 002A12B8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802A565C 002A12BC 3B C0 00 00 */ li r30, 0 +/* 802A5660 002A12C0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802A5664 002A12C4 7C 9D 23 78 */ mr r29, r4 +/* 802A5668 002A12C8 93 81 00 10 */ stw r28, 0x10(r1) +/* 802A566C 002A12CC 7C 7C 1B 78 */ mr r28, r3 +/* 802A5670 002A12D0 41 82 00 18 */ beq lbl_802A5688 +/* 802A5674 002A12D4 38 80 00 40 */ li r4, 0x40 +/* 802A5678 002A12D8 4B FF D2 8D */ bl strnlen +/* 802A567C 002A12DC 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A5680 002A12E0 7C 7F 1B 78 */ mr r31, r3 +/* 802A5684 002A12E4 40 82 00 0C */ bne lbl_802A5690 +lbl_802A5688: +/* 802A5688 002A12E8 3B E0 FF 9B */ li r31, -101 +/* 802A568C 002A12EC 48 00 00 44 */ b lbl_802A56D0 +lbl_802A5690: +/* 802A5690 002A12F0 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A5694 002A12F4 38 80 01 40 */ li r4, 0x140 +/* 802A5698 002A12F8 38 A0 00 20 */ li r5, 0x20 +/* 802A569C 002A12FC 4B FF EC 9D */ bl iosAllocAligned +/* 802A56A0 002A1300 2C 03 00 00 */ cmpwi r3, 0 +/* 802A56A4 002A1304 7C 7E 1B 78 */ mr r30, r3 +/* 802A56A8 002A1308 40 82 00 0C */ bne lbl_802A56B4 +/* 802A56AC 002A130C 3B E0 FF EA */ li r31, -22 +/* 802A56B0 002A1310 48 00 00 20 */ b lbl_802A56D0 +lbl_802A56B4: +/* 802A56B4 002A1314 7F 84 E3 78 */ mr r4, r28 +/* 802A56B8 002A1318 38 BF 00 01 */ addi r5, r31, 1 +/* 802A56BC 002A131C 4B D5 E9 45 */ bl memcpy +/* 802A56C0 002A1320 7F C3 F3 78 */ mr r3, r30 +/* 802A56C4 002A1324 7F A4 EB 78 */ mr r4, r29 +/* 802A56C8 002A1328 4B FF DA 91 */ bl IOS_Open +/* 802A56CC 002A132C 7C 7F 1B 78 */ mr r31, r3 +lbl_802A56D0: +/* 802A56D0 002A1330 2C 1E 00 00 */ cmpwi r30, 0 +/* 802A56D4 002A1334 41 82 00 14 */ beq lbl_802A56E8 +/* 802A56D8 002A1338 41 82 00 10 */ beq lbl_802A56E8 +/* 802A56DC 002A133C 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A56E0 002A1340 7F C4 F3 78 */ mr r4, r30 +/* 802A56E4 002A1344 4B FF EC 59 */ bl iosFree +lbl_802A56E8: +/* 802A56E8 002A1348 7F E3 FB 78 */ mr r3, r31 +/* 802A56EC 002A134C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802A56F0 002A1350 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802A56F4 002A1354 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802A56F8 002A1358 83 81 00 10 */ lwz r28, 0x10(r1) +/* 802A56FC 002A135C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A5700 002A1360 7C 08 03 A6 */ mtlr r0 +/* 802A5704 002A1364 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A5708 002A1368 4E 80 00 20 */ blr + +.global ISFS_OpenAsync +ISFS_OpenAsync: +/* 802A570C 002A136C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A5710 002A1370 7C 08 02 A6 */ mflr r0 +/* 802A5714 002A1374 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A5718 002A1378 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A571C 002A137C 4B F2 1A 09 */ bl _savegpr_26 +/* 802A5720 002A1380 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5724 002A1384 7C 7A 1B 78 */ mr r26, r3 +/* 802A5728 002A1388 7C 9B 23 78 */ mr r27, r4 +/* 802A572C 002A138C 7C BC 2B 78 */ mr r28, r5 +/* 802A5730 002A1390 7C DD 33 78 */ mr r29, r6 +/* 802A5734 002A1394 41 82 00 18 */ beq lbl_802A574C +/* 802A5738 002A1398 38 80 00 40 */ li r4, 0x40 +/* 802A573C 002A139C 4B FF D1 C9 */ bl strnlen +/* 802A5740 002A13A0 28 03 00 40 */ cmplwi r3, 0x40 +/* 802A5744 002A13A4 7C 7F 1B 78 */ mr r31, r3 +/* 802A5748 002A13A8 40 82 00 0C */ bne lbl_802A5754 +lbl_802A574C: +/* 802A574C 002A13AC 38 60 FF 9B */ li r3, -101 +/* 802A5750 002A13B0 48 00 00 5C */ b lbl_802A57AC +lbl_802A5754: +/* 802A5754 002A13B4 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A5758 002A13B8 38 80 01 40 */ li r4, 0x140 +/* 802A575C 002A13BC 38 A0 00 20 */ li r5, 0x20 +/* 802A5760 002A13C0 4B FF EB D9 */ bl iosAllocAligned +/* 802A5764 002A13C4 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5768 002A13C8 7C 7E 1B 78 */ mr r30, r3 +/* 802A576C 002A13CC 40 82 00 0C */ bne lbl_802A5778 +/* 802A5770 002A13D0 38 60 FF 8A */ li r3, -118 +/* 802A5774 002A13D4 48 00 00 38 */ b lbl_802A57AC +lbl_802A5778: +/* 802A5778 002A13D8 93 83 01 00 */ stw r28, 0x100(r3) +/* 802A577C 002A13DC 38 00 00 00 */ li r0, 0 +/* 802A5780 002A13E0 7F 44 D3 78 */ mr r4, r26 +/* 802A5784 002A13E4 38 BF 00 01 */ addi r5, r31, 1 +/* 802A5788 002A13E8 93 A3 01 04 */ stw r29, 0x104(r3) +/* 802A578C 002A13EC 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A5790 002A13F0 4B D5 E8 71 */ bl memcpy +/* 802A5794 002A13F4 3C A0 80 2A */ lis r5, _isfsFuncCb@ha +/* 802A5798 002A13F8 7F C3 F3 78 */ mr r3, r30 +/* 802A579C 002A13FC 7F 64 DB 78 */ mr r4, r27 +/* 802A57A0 002A1400 7F C6 F3 78 */ mr r6, r30 +/* 802A57A4 002A1404 38 A5 48 14 */ addi r5, r5, _isfsFuncCb@l +/* 802A57A8 002A1408 4B FF D8 99 */ bl IOS_OpenAsync +lbl_802A57AC: +/* 802A57AC 002A140C 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A57B0 002A1410 4B F2 19 C1 */ bl _restgpr_26 +/* 802A57B4 002A1414 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A57B8 002A1418 7C 08 03 A6 */ mtlr r0 +/* 802A57BC 002A141C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A57C0 002A1420 4E 80 00 20 */ blr + +.global ISFS_GetFileStats +ISFS_GetFileStats: +/* 802A57C4 002A1424 2C 04 00 00 */ cmpwi r4, 0 +/* 802A57C8 002A1428 41 82 00 0C */ beq lbl_802A57D4 +/* 802A57CC 002A142C 54 80 06 FF */ clrlwi. r0, r4, 0x1b +/* 802A57D0 002A1430 41 82 00 0C */ beq lbl_802A57DC +lbl_802A57D4: +/* 802A57D4 002A1434 38 60 FF 9B */ li r3, -101 +/* 802A57D8 002A1438 4E 80 00 20 */ blr +lbl_802A57DC: +/* 802A57DC 002A143C 7C 87 23 78 */ mr r7, r4 +/* 802A57E0 002A1440 38 80 00 0B */ li r4, 0xb +/* 802A57E4 002A1444 38 A0 00 00 */ li r5, 0 +/* 802A57E8 002A1448 38 C0 00 00 */ li r6, 0 +/* 802A57EC 002A144C 39 00 00 08 */ li r8, 8 +/* 802A57F0 002A1450 4B FF E3 00 */ b IOS_Ioctl +/* 802A57F4 002A1454 4E 80 00 20 */ blr + +.global ISFS_Seek +ISFS_Seek: +/* 802A57F8 002A1458 4B FF E0 D8 */ b IOS_Seek + +.global ISFS_SeekAsync +ISFS_SeekAsync: +/* 802A57FC 002A145C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A5800 002A1460 7C 08 02 A6 */ mflr r0 +/* 802A5804 002A1464 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A5808 002A1468 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A580C 002A146C 4B F2 19 1D */ bl _savegpr_27 +/* 802A5810 002A1470 7C 7B 1B 78 */ mr r27, r3 +/* 802A5814 002A1474 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A5818 002A1478 7C 9C 23 78 */ mr r28, r4 +/* 802A581C 002A147C 7C BD 2B 78 */ mr r29, r5 +/* 802A5820 002A1480 7C DE 33 78 */ mr r30, r6 +/* 802A5824 002A1484 7C FF 3B 78 */ mr r31, r7 +/* 802A5828 002A1488 38 80 01 40 */ li r4, 0x140 +/* 802A582C 002A148C 38 A0 00 20 */ li r5, 0x20 +/* 802A5830 002A1490 4B FF EB 09 */ bl iosAllocAligned +/* 802A5834 002A1494 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5838 002A1498 40 82 00 0C */ bne lbl_802A5844 +/* 802A583C 002A149C 38 60 FF 8A */ li r3, -118 +/* 802A5840 002A14A0 48 00 00 30 */ b lbl_802A5870 +lbl_802A5844: +/* 802A5844 002A14A4 93 C3 01 00 */ stw r30, 0x100(r3) +/* 802A5848 002A14A8 3C C0 80 2A */ lis r6, _isfsFuncCb@ha +/* 802A584C 002A14AC 38 00 00 00 */ li r0, 0 +/* 802A5850 002A14B0 7F 84 E3 78 */ mr r4, r28 +/* 802A5854 002A14B4 93 E3 01 04 */ stw r31, 0x104(r3) +/* 802A5858 002A14B8 7F A5 EB 78 */ mr r5, r29 +/* 802A585C 002A14BC 7C 67 1B 78 */ mr r7, r3 +/* 802A5860 002A14C0 38 C6 48 14 */ addi r6, r6, _isfsFuncCb@l +/* 802A5864 002A14C4 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A5868 002A14C8 7F 63 DB 78 */ mr r3, r27 +/* 802A586C 002A14CC 4B FF DF 85 */ bl IOS_SeekAsync +lbl_802A5870: +/* 802A5870 002A14D0 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A5874 002A14D4 4B F2 19 01 */ bl _restgpr_27 +/* 802A5878 002A14D8 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A587C 002A14DC 7C 08 03 A6 */ mtlr r0 +/* 802A5880 002A14E0 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A5884 002A14E4 4E 80 00 20 */ blr + +.global ISFS_Read +ISFS_Read: +/* 802A5888 002A14E8 2C 04 00 00 */ cmpwi r4, 0 +/* 802A588C 002A14EC 41 82 00 0C */ beq lbl_802A5898 +/* 802A5890 002A14F0 54 80 06 FF */ clrlwi. r0, r4, 0x1b +/* 802A5894 002A14F4 41 82 00 0C */ beq lbl_802A58A0 +lbl_802A5898: +/* 802A5898 002A14F8 38 60 FF 9B */ li r3, -101 +/* 802A589C 002A14FC 4E 80 00 20 */ blr +lbl_802A58A0: +/* 802A58A0 002A1500 4B FF DC 40 */ b IOS_Read +/* 802A58A4 002A1504 4E 80 00 20 */ blr + +.global ISFS_ReadAsync +ISFS_ReadAsync: +/* 802A58A8 002A1508 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A58AC 002A150C 7C 08 02 A6 */ mflr r0 +/* 802A58B0 002A1510 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A58B4 002A1514 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A58B8 002A1518 4B F2 18 71 */ bl _savegpr_27 +/* 802A58BC 002A151C 2C 04 00 00 */ cmpwi r4, 0 +/* 802A58C0 002A1520 7C 7B 1B 78 */ mr r27, r3 +/* 802A58C4 002A1524 7C 9C 23 78 */ mr r28, r4 +/* 802A58C8 002A1528 7C BD 2B 78 */ mr r29, r5 +/* 802A58CC 002A152C 7C DE 33 78 */ mr r30, r6 +/* 802A58D0 002A1530 7C FF 3B 78 */ mr r31, r7 +/* 802A58D4 002A1534 41 82 00 0C */ beq lbl_802A58E0 +/* 802A58D8 002A1538 54 80 06 FF */ clrlwi. r0, r4, 0x1b +/* 802A58DC 002A153C 41 82 00 0C */ beq lbl_802A58E8 +lbl_802A58E0: +/* 802A58E0 002A1540 38 60 FF 9B */ li r3, -101 +/* 802A58E4 002A1544 48 00 00 50 */ b lbl_802A5934 +lbl_802A58E8: +/* 802A58E8 002A1548 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A58EC 002A154C 38 80 01 40 */ li r4, 0x140 +/* 802A58F0 002A1550 38 A0 00 20 */ li r5, 0x20 +/* 802A58F4 002A1554 4B FF EA 45 */ bl iosAllocAligned +/* 802A58F8 002A1558 2C 03 00 00 */ cmpwi r3, 0 +/* 802A58FC 002A155C 40 82 00 0C */ bne lbl_802A5908 +/* 802A5900 002A1560 38 60 FF 8A */ li r3, -118 +/* 802A5904 002A1564 48 00 00 30 */ b lbl_802A5934 +lbl_802A5908: +/* 802A5908 002A1568 93 C3 01 00 */ stw r30, 0x100(r3) +/* 802A590C 002A156C 3C C0 80 2A */ lis r6, _isfsFuncCb@ha +/* 802A5910 002A1570 38 00 00 00 */ li r0, 0 +/* 802A5914 002A1574 7F 84 E3 78 */ mr r4, r28 +/* 802A5918 002A1578 93 E3 01 04 */ stw r31, 0x104(r3) +/* 802A591C 002A157C 7F A5 EB 78 */ mr r5, r29 +/* 802A5920 002A1580 7C 67 1B 78 */ mr r7, r3 +/* 802A5924 002A1584 38 C6 48 14 */ addi r6, r6, _isfsFuncCb@l +/* 802A5928 002A1588 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A592C 002A158C 7F 63 DB 78 */ mr r3, r27 +/* 802A5930 002A1590 4B FF DA B1 */ bl IOS_ReadAsync +lbl_802A5934: +/* 802A5934 002A1594 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A5938 002A1598 4B F2 18 3D */ bl _restgpr_27 +/* 802A593C 002A159C 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A5940 002A15A0 7C 08 03 A6 */ mtlr r0 +/* 802A5944 002A15A4 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A5948 002A15A8 4E 80 00 20 */ blr + +.global ISFS_Write +ISFS_Write: +/* 802A594C 002A15AC 2C 04 00 00 */ cmpwi r4, 0 +/* 802A5950 002A15B0 41 82 00 0C */ beq lbl_802A595C +/* 802A5954 002A15B4 54 80 06 FF */ clrlwi. r0, r4, 0x1b +/* 802A5958 002A15B8 41 82 00 0C */ beq lbl_802A5964 +lbl_802A595C: +/* 802A595C 002A15BC 38 60 FF 9B */ li r3, -101 +/* 802A5960 002A15C0 4E 80 00 20 */ blr +lbl_802A5964: +/* 802A5964 002A15C4 4B FF DD 84 */ b IOS_Write +/* 802A5968 002A15C8 4E 80 00 20 */ blr + +.global ISFS_WriteAsync +ISFS_WriteAsync: +/* 802A596C 002A15CC 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A5970 002A15D0 7C 08 02 A6 */ mflr r0 +/* 802A5974 002A15D4 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A5978 002A15D8 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A597C 002A15DC 4B F2 17 AD */ bl _savegpr_27 +/* 802A5980 002A15E0 2C 04 00 00 */ cmpwi r4, 0 +/* 802A5984 002A15E4 7C 7B 1B 78 */ mr r27, r3 +/* 802A5988 002A15E8 7C 9C 23 78 */ mr r28, r4 +/* 802A598C 002A15EC 7C BD 2B 78 */ mr r29, r5 +/* 802A5990 002A15F0 7C DE 33 78 */ mr r30, r6 +/* 802A5994 002A15F4 7C FF 3B 78 */ mr r31, r7 +/* 802A5998 002A15F8 41 82 00 0C */ beq lbl_802A59A4 +/* 802A599C 002A15FC 54 80 06 FF */ clrlwi. r0, r4, 0x1b +/* 802A59A0 002A1600 41 82 00 0C */ beq lbl_802A59AC +lbl_802A59A4: +/* 802A59A4 002A1604 38 60 FF 9B */ li r3, -101 +/* 802A59A8 002A1608 48 00 00 50 */ b lbl_802A59F8 +lbl_802A59AC: +/* 802A59AC 002A160C 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A59B0 002A1610 38 80 01 40 */ li r4, 0x140 +/* 802A59B4 002A1614 38 A0 00 20 */ li r5, 0x20 +/* 802A59B8 002A1618 4B FF E9 81 */ bl iosAllocAligned +/* 802A59BC 002A161C 2C 03 00 00 */ cmpwi r3, 0 +/* 802A59C0 002A1620 40 82 00 0C */ bne lbl_802A59CC +/* 802A59C4 002A1624 38 60 FF 8A */ li r3, -118 +/* 802A59C8 002A1628 48 00 00 30 */ b lbl_802A59F8 +lbl_802A59CC: +/* 802A59CC 002A162C 93 C3 01 00 */ stw r30, 0x100(r3) +/* 802A59D0 002A1630 3C C0 80 2A */ lis r6, _isfsFuncCb@ha +/* 802A59D4 002A1634 38 00 00 00 */ li r0, 0 +/* 802A59D8 002A1638 7F 84 E3 78 */ mr r4, r28 +/* 802A59DC 002A163C 93 E3 01 04 */ stw r31, 0x104(r3) +/* 802A59E0 002A1640 7F A5 EB 78 */ mr r5, r29 +/* 802A59E4 002A1644 7C 67 1B 78 */ mr r7, r3 +/* 802A59E8 002A1648 38 C6 48 14 */ addi r6, r6, _isfsFuncCb@l +/* 802A59EC 002A164C 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A59F0 002A1650 7F 63 DB 78 */ mr r3, r27 +/* 802A59F4 002A1654 4B FF DB F5 */ bl IOS_WriteAsync +lbl_802A59F8: +/* 802A59F8 002A1658 39 61 00 20 */ addi r11, r1, 0x20 +/* 802A59FC 002A165C 4B F2 17 79 */ bl _restgpr_27 +/* 802A5A00 002A1660 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A5A04 002A1664 7C 08 03 A6 */ mtlr r0 +/* 802A5A08 002A1668 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A5A0C 002A166C 4E 80 00 20 */ blr + +.global ISFS_Close +ISFS_Close: +/* 802A5A10 002A1670 4B FF D9 28 */ b IOS_Close + +.global ISFS_CloseAsync +ISFS_CloseAsync: +/* 802A5A14 002A1674 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A5A18 002A1678 7C 08 02 A6 */ mflr r0 +/* 802A5A1C 002A167C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A5A20 002A1680 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802A5A24 002A1684 7C BF 2B 78 */ mr r31, r5 +/* 802A5A28 002A1688 38 A0 00 20 */ li r5, 0x20 +/* 802A5A2C 002A168C 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802A5A30 002A1690 7C 9E 23 78 */ mr r30, r4 +/* 802A5A34 002A1694 38 80 01 40 */ li r4, 0x140 +/* 802A5A38 002A1698 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802A5A3C 002A169C 7C 7D 1B 78 */ mr r29, r3 +/* 802A5A40 002A16A0 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A5A44 002A16A4 4B FF E8 F5 */ bl iosAllocAligned +/* 802A5A48 002A16A8 2C 03 00 00 */ cmpwi r3, 0 +/* 802A5A4C 002A16AC 40 82 00 0C */ bne lbl_802A5A58 +/* 802A5A50 002A16B0 38 60 FF 8A */ li r3, -118 +/* 802A5A54 002A16B4 48 00 00 28 */ b lbl_802A5A7C +lbl_802A5A58: +/* 802A5A58 002A16B8 93 C3 01 00 */ stw r30, 0x100(r3) +/* 802A5A5C 002A16BC 3C 80 80 2A */ lis r4, _isfsFuncCb@ha +/* 802A5A60 002A16C0 38 00 00 00 */ li r0, 0 +/* 802A5A64 002A16C4 7C 65 1B 78 */ mr r5, r3 +/* 802A5A68 002A16C8 93 E3 01 04 */ stw r31, 0x104(r3) +/* 802A5A6C 002A16CC 38 84 48 14 */ addi r4, r4, _isfsFuncCb@l +/* 802A5A70 002A16D0 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A5A74 002A16D4 7F A3 EB 78 */ mr r3, r29 +/* 802A5A78 002A16D8 4B FF D8 01 */ bl IOS_CloseAsync +lbl_802A5A7C: +/* 802A5A7C 002A16DC 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A5A80 002A16E0 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802A5A84 002A16E4 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802A5A88 002A16E8 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802A5A8C 002A16EC 7C 08 03 A6 */ mtlr r0 +/* 802A5A90 002A16F0 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A5A94 002A16F4 4E 80 00 20 */ blr + +.global ISFS_ShutdownAsync +ISFS_ShutdownAsync: +/* 802A5A98 002A16F8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 802A5A9C 002A16FC 7C 08 02 A6 */ mflr r0 +/* 802A5AA0 002A1700 38 A0 00 20 */ li r5, 0x20 +/* 802A5AA4 002A1704 90 01 00 14 */ stw r0, 0x14(r1) +/* 802A5AA8 002A1708 93 E1 00 0C */ stw r31, 0xc(r1) +/* 802A5AAC 002A170C 7C 9F 23 78 */ mr r31, r4 +/* 802A5AB0 002A1710 38 80 01 40 */ li r4, 0x140 +/* 802A5AB4 002A1714 93 C1 00 08 */ stw r30, 8(r1) +/* 802A5AB8 002A1718 7C 7E 1B 78 */ mr r30, r3 +/* 802A5ABC 002A171C 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) +/* 802A5AC0 002A1720 4B FF E8 79 */ bl iosAllocAligned +/* 802A5AC4 002A1724 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5AC8 002A1728 2C 00 00 00 */ cmpwi r0, 0 +/* 802A5ACC 002A172C 40 80 00 0C */ bge lbl_802A5AD8 +/* 802A5AD0 002A1730 38 60 FF 9B */ li r3, -101 +/* 802A5AD4 002A1734 48 00 00 3C */ b lbl_802A5B10 +lbl_802A5AD8: +/* 802A5AD8 002A1738 93 C3 01 00 */ stw r30, 0x100(r3) +/* 802A5ADC 002A173C 3D 20 80 2A */ lis r9, _isfsFuncCb@ha +/* 802A5AE0 002A1740 38 00 00 00 */ li r0, 0 +/* 802A5AE4 002A1744 7C 6A 1B 78 */ mr r10, r3 +/* 802A5AE8 002A1748 93 E3 01 04 */ stw r31, 0x104(r3) +/* 802A5AEC 002A174C 39 29 48 14 */ addi r9, r9, _isfsFuncCb@l +/* 802A5AF0 002A1750 38 80 00 0D */ li r4, 0xd +/* 802A5AF4 002A1754 38 A0 00 00 */ li r5, 0 +/* 802A5AF8 002A1758 90 03 01 08 */ stw r0, 0x108(r3) +/* 802A5AFC 002A175C 38 C0 00 00 */ li r6, 0 +/* 802A5B00 002A1760 38 E0 00 00 */ li r7, 0 +/* 802A5B04 002A1764 39 00 00 00 */ li r8, 0 +/* 802A5B08 002A1768 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) +/* 802A5B0C 002A176C 4B FF DE AD */ bl IOS_IoctlAsync +lbl_802A5B10: +/* 802A5B10 002A1770 80 01 00 14 */ lwz r0, 0x14(r1) +/* 802A5B14 002A1774 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 802A5B18 002A1778 83 C1 00 08 */ lwz r30, 8(r1) +/* 802A5B1C 002A177C 7C 08 03 A6 */ mtlr r0 +/* 802A5B20 002A1780 38 21 00 10 */ addi r1, r1, 0x10 +/* 802A5B24 002A1784 4E 80 00 20 */ blr diff --git a/asm/SDK/ipcProfile.s b/asm/SDK/ipcProfile.s new file mode 100644 index 0000000..e956ce2 --- /dev/null +++ b/asm/SDK/ipcProfile.s @@ -0,0 +1,133 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80006980 - 0x803E1E60 + +.global IPCiProfInit +IPCiProfInit: +/* 802A4528 002A0188 38 80 00 00 */ li r4, 0 +/* 802A452C 002A018C 3C A0 80 53 */ lis r5, lbl_80536CB0@ha +/* 802A4530 002A0190 3C C0 80 53 */ lis r6, lbl_80536C30@ha +/* 802A4534 002A0194 38 00 00 02 */ li r0, 2 +/* 802A4538 002A0198 90 8D AE 10 */ stw r4, lbl_806400D0-_SDA_BASE_(r13) +/* 802A453C 002A019C 38 A5 6C B0 */ addi r5, r5, lbl_80536CB0@l +/* 802A4540 002A01A0 38 C6 6C 30 */ addi r6, r6, lbl_80536C30@l +/* 802A4544 002A01A4 38 60 FF FF */ li r3, -1 +/* 802A4548 002A01A8 90 8D AE 14 */ stw r4, lbl_806400D4-_SDA_BASE_(r13) +/* 802A454C 002A01AC 7C 09 03 A6 */ mtctr r0 +lbl_802A4550: +/* 802A4550 002A01B0 90 85 00 00 */ stw r4, 0(r5) +/* 802A4554 002A01B4 90 66 00 00 */ stw r3, 0(r6) +/* 802A4558 002A01B8 90 85 00 04 */ stw r4, 4(r5) +/* 802A455C 002A01BC 90 66 00 04 */ stw r3, 4(r6) +/* 802A4560 002A01C0 90 85 00 08 */ stw r4, 8(r5) +/* 802A4564 002A01C4 90 66 00 08 */ stw r3, 8(r6) +/* 802A4568 002A01C8 90 85 00 0C */ stw r4, 0xc(r5) +/* 802A456C 002A01CC 90 66 00 0C */ stw r3, 0xc(r6) +/* 802A4570 002A01D0 90 85 00 10 */ stw r4, 0x10(r5) +/* 802A4574 002A01D4 90 66 00 10 */ stw r3, 0x10(r6) +/* 802A4578 002A01D8 90 85 00 14 */ stw r4, 0x14(r5) +/* 802A457C 002A01DC 90 66 00 14 */ stw r3, 0x14(r6) +/* 802A4580 002A01E0 90 85 00 18 */ stw r4, 0x18(r5) +/* 802A4584 002A01E4 90 66 00 18 */ stw r3, 0x18(r6) +/* 802A4588 002A01E8 90 85 00 1C */ stw r4, 0x1c(r5) +/* 802A458C 002A01EC 90 66 00 1C */ stw r3, 0x1c(r6) +/* 802A4590 002A01F0 90 85 00 20 */ stw r4, 0x20(r5) +/* 802A4594 002A01F4 90 66 00 20 */ stw r3, 0x20(r6) +/* 802A4598 002A01F8 90 85 00 24 */ stw r4, 0x24(r5) +/* 802A459C 002A01FC 90 66 00 24 */ stw r3, 0x24(r6) +/* 802A45A0 002A0200 90 85 00 28 */ stw r4, 0x28(r5) +/* 802A45A4 002A0204 90 66 00 28 */ stw r3, 0x28(r6) +/* 802A45A8 002A0208 90 85 00 2C */ stw r4, 0x2c(r5) +/* 802A45AC 002A020C 90 66 00 2C */ stw r3, 0x2c(r6) +/* 802A45B0 002A0210 90 85 00 30 */ stw r4, 0x30(r5) +/* 802A45B4 002A0214 90 66 00 30 */ stw r3, 0x30(r6) +/* 802A45B8 002A0218 90 85 00 34 */ stw r4, 0x34(r5) +/* 802A45BC 002A021C 90 66 00 34 */ stw r3, 0x34(r6) +/* 802A45C0 002A0220 90 85 00 38 */ stw r4, 0x38(r5) +/* 802A45C4 002A0224 90 66 00 38 */ stw r3, 0x38(r6) +/* 802A45C8 002A0228 90 85 00 3C */ stw r4, 0x3c(r5) +/* 802A45CC 002A022C 38 A5 00 40 */ addi r5, r5, 0x40 +/* 802A45D0 002A0230 90 66 00 3C */ stw r3, 0x3c(r6) +/* 802A45D4 002A0234 38 C6 00 40 */ addi r6, r6, 0x40 +/* 802A45D8 002A0238 42 00 FF 78 */ bdnz lbl_802A4550 +/* 802A45DC 002A023C 4E 80 00 20 */ blr + +.global IPCiProfQueueReq +IPCiProfQueueReq: +/* 802A45E0 002A0240 80 CD AE 10 */ lwz r6, lbl_806400D0-_SDA_BASE_(r13) +/* 802A45E4 002A0244 3D 00 80 53 */ lis r8, lbl_80536CB0@ha +/* 802A45E8 002A0248 80 AD AE 14 */ lwz r5, lbl_806400D4-_SDA_BASE_(r13) +/* 802A45EC 002A024C 3D 20 80 53 */ lis r9, lbl_80536C30@ha +/* 802A45F0 002A0250 38 C6 00 01 */ addi r6, r6, 1 +/* 802A45F4 002A0254 38 00 00 20 */ li r0, 0x20 +/* 802A45F8 002A0258 38 A5 00 01 */ addi r5, r5, 1 +/* 802A45FC 002A025C 90 CD AE 10 */ stw r6, lbl_806400D0-_SDA_BASE_(r13) +/* 802A4600 002A0260 39 08 6C B0 */ addi r8, r8, lbl_80536CB0@l +/* 802A4604 002A0264 39 29 6C 30 */ addi r9, r9, lbl_80536C30@l +/* 802A4608 002A0268 90 AD AE 14 */ stw r5, lbl_806400D4-_SDA_BASE_(r13) +/* 802A460C 002A026C 38 E0 00 00 */ li r7, 0 +/* 802A4610 002A0270 7C 09 03 A6 */ mtctr r0 +lbl_802A4614: +/* 802A4614 002A0274 80 08 00 00 */ lwz r0, 0(r8) +/* 802A4618 002A0278 2C 00 00 00 */ cmpwi r0, 0 +/* 802A461C 002A027C 40 82 00 30 */ bne lbl_802A464C +/* 802A4620 002A0280 80 09 00 00 */ lwz r0, 0(r9) +/* 802A4624 002A0284 2C 00 FF FF */ cmpwi r0, -1 +/* 802A4628 002A0288 40 82 00 24 */ bne lbl_802A464C +/* 802A462C 002A028C 3C C0 80 53 */ lis r6, lbl_80536CB0@ha +/* 802A4630 002A0290 3C A0 80 53 */ lis r5, lbl_80536C30@ha +/* 802A4634 002A0294 54 E0 10 3A */ slwi r0, r7, 2 +/* 802A4638 002A0298 38 C6 6C B0 */ addi r6, r6, lbl_80536CB0@l +/* 802A463C 002A029C 38 A5 6C 30 */ addi r5, r5, lbl_80536C30@l +/* 802A4640 002A02A0 7C 66 01 2E */ stwx r3, r6, r0 +/* 802A4644 002A02A4 7C 85 01 2E */ stwx r4, r5, r0 +/* 802A4648 002A02A8 4E 80 00 20 */ blr +lbl_802A464C: +/* 802A464C 002A02AC 39 08 00 04 */ addi r8, r8, 4 +/* 802A4650 002A02B0 39 29 00 04 */ addi r9, r9, 4 +/* 802A4654 002A02B4 38 E7 00 01 */ addi r7, r7, 1 +/* 802A4658 002A02B8 42 00 FF BC */ bdnz lbl_802A4614 +/* 802A465C 002A02BC 4E 80 00 20 */ blr + +.global IPCiProfAck +IPCiProfAck: +/* 802A4660 002A02C0 80 6D AE 14 */ lwz r3, lbl_806400D4-_SDA_BASE_(r13) +/* 802A4664 002A02C4 38 03 FF FF */ addi r0, r3, -1 +/* 802A4668 002A02C8 90 0D AE 14 */ stw r0, lbl_806400D4-_SDA_BASE_(r13) +/* 802A466C 002A02CC 4E 80 00 20 */ blr + +.global IPCiProfReply +IPCiProfReply: +/* 802A4670 002A02D0 80 AD AE 10 */ lwz r5, lbl_806400D0-_SDA_BASE_(r13) +/* 802A4674 002A02D4 3C C0 80 53 */ lis r6, lbl_80536CB0@ha +/* 802A4678 002A02D8 3C E0 80 53 */ lis r7, lbl_80536C30@ha +/* 802A467C 002A02DC 38 00 00 20 */ li r0, 0x20 +/* 802A4680 002A02E0 38 A5 FF FF */ addi r5, r5, -1 +/* 802A4684 002A02E4 38 C6 6C B0 */ addi r6, r6, lbl_80536CB0@l +/* 802A4688 002A02E8 90 AD AE 10 */ stw r5, lbl_806400D0-_SDA_BASE_(r13) +/* 802A468C 002A02EC 38 E7 6C 30 */ addi r7, r7, lbl_80536C30@l +/* 802A4690 002A02F0 38 A0 00 00 */ li r5, 0 +/* 802A4694 002A02F4 7C 09 03 A6 */ mtctr r0 +lbl_802A4698: +/* 802A4698 002A02F8 80 06 00 00 */ lwz r0, 0(r6) +/* 802A469C 002A02FC 7C 03 00 40 */ cmplw r3, r0 +/* 802A46A0 002A0300 40 82 00 38 */ bne lbl_802A46D8 +/* 802A46A4 002A0304 80 07 00 00 */ lwz r0, 0(r7) +/* 802A46A8 002A0308 7C 04 00 00 */ cmpw r4, r0 +/* 802A46AC 002A030C 40 82 00 2C */ bne lbl_802A46D8 +/* 802A46B0 002A0310 3C 80 80 53 */ lis r4, lbl_80536CB0@ha +/* 802A46B4 002A0314 3C 60 80 53 */ lis r3, lbl_80536C30@ha +/* 802A46B8 002A0318 54 A6 10 3A */ slwi r6, r5, 2 +/* 802A46BC 002A031C 38 A0 00 00 */ li r5, 0 +/* 802A46C0 002A0320 38 84 6C B0 */ addi r4, r4, lbl_80536CB0@l +/* 802A46C4 002A0324 38 63 6C 30 */ addi r3, r3, lbl_80536C30@l +/* 802A46C8 002A0328 38 00 FF FF */ li r0, -1 +/* 802A46CC 002A032C 7C A4 31 2E */ stwx r5, r4, r6 +/* 802A46D0 002A0330 7C 03 31 2E */ stwx r0, r3, r6 +/* 802A46D4 002A0334 4E 80 00 20 */ blr +lbl_802A46D8: +/* 802A46D8 002A0338 38 C6 00 04 */ addi r6, r6, 4 +/* 802A46DC 002A033C 38 E7 00 04 */ addi r7, r7, 4 +/* 802A46E0 002A0340 38 A5 00 01 */ addi r5, r5, 1 +/* 802A46E4 002A0344 42 00 FF B4 */ bdnz lbl_802A4698 +/* 802A46E8 002A0348 4E 80 00 20 */ blr diff --git a/asm/SDK/ipcclt.s b/asm/SDK/ipcclt.s index c5ed858..4fcfe96 100644 --- a/asm/SDK/ipcclt.s +++ b/asm/SDK/ipcclt.s @@ -165,7 +165,7 @@ lbl_802A2AEC: /* 802A2B28 0029E788 4B FC 83 41 */ bl OSSetCurrentContext /* 802A2B2C 0029E78C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A2B30 0029E790 7F E4 FB 78 */ mr r4, r31 -/* 802A2B34 0029E794 48 00 18 09 */ bl func_802A433C +/* 802A2B34 0029E794 48 00 18 09 */ bl iosFree /* 802A2B38 0029E798 48 00 00 0C */ b lbl_802A2B44 lbl_802A2B3C: /* 802A2B3C 0029E79C 38 7F 00 2C */ addi r3, r31, 0x2c @@ -179,7 +179,7 @@ lbl_802A2B44: /* 802A2B58 0029E7B8 4B FF FD 85 */ bl IPCWriteReg /* 802A2B5C 0029E7BC 80 9F 00 08 */ lwz r4, 8(r31) /* 802A2B60 0029E7C0 7F E3 FB 78 */ mr r3, r31 -/* 802A2B64 0029E7C4 48 00 1B 0D */ bl func_802A4670 +/* 802A2B64 0029E7C4 48 00 1B 0D */ bl IPCiProfReply lbl_802A2B68: /* 802A2B68 0029E7C8 80 01 02 E4 */ lwz r0, 0x2e4(r1) /* 802A2B6C 0029E7CC 83 E1 02 DC */ lwz r31, 0x2dc(r1) @@ -226,7 +226,7 @@ lbl_802A2BC4: /* 802A2C04 0029E864 40 80 00 10 */ bge lbl_802A2C14 /* 802A2C08 0029E868 3B FF 00 01 */ addi r31, r31, 1 /* 802A2C0C 0029E86C 93 ED 89 88 */ stw r31, lbl_8063DC48-_SDA_BASE_(r13) -/* 802A2C10 0029E870 48 00 1A 51 */ bl cCameraManager_PushWorldUpVector +/* 802A2C10 0029E870 48 00 1A 51 */ bl IPCiProfAck lbl_802A2C14: /* 802A2C14 0029E874 2C 1F 00 00 */ cmpwi r31, 0 /* 802A2C18 0029E878 40 81 01 10 */ ble lbl_802A2D28 @@ -335,7 +335,7 @@ IPCCltInit: lbl_802A2D94: /* 802A2D94 0029E9F4 7F A3 EB 78 */ mr r3, r29 /* 802A2D98 0029E9F8 38 80 08 00 */ li r4, 0x800 -/* 802A2D9C 0029E9FC 48 00 12 69 */ bl func_802A4004 +/* 802A2D9C 0029E9FC 48 00 12 69 */ bl iosCreateHeap /* 802A2DA0 0029EA00 90 6D 89 8C */ stw r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A2DA4 0029EA04 7F E3 FB 78 */ mr r3, r31 /* 802A2DA8 0029EA08 4B FF FB 55 */ bl IPCSetBufferLo @@ -348,7 +348,7 @@ lbl_802A2D94: /* 802A2DC4 0029EA24 38 60 00 01 */ li r3, 1 /* 802A2DC8 0029EA28 38 80 00 38 */ li r4, 0x38 /* 802A2DCC 0029EA2C 4B FF FB 11 */ bl IPCWriteReg -/* 802A2DD0 0029EA30 48 00 17 59 */ bl func_802A4528 +/* 802A2DD0 0029EA30 48 00 17 59 */ bl IPCiProfInit lbl_802A2DD4: /* 802A2DD4 0029EA34 7F C3 F3 78 */ mr r3, r30 /* 802A2DD8 0029EA38 83 E1 00 1C */ lwz r31, 0x1c(r1) @@ -423,7 +423,7 @@ lbl_802A2E9C: /* 802A2ECC 0029EB2C 90 A6 00 0C */ stw r5, 0xc(r6) /* 802A2ED0 0029EB30 90 06 00 04 */ stw r0, 4(r6) /* 802A2ED4 0029EB34 80 9C 00 08 */ lwz r4, 8(r28) -/* 802A2ED8 0029EB38 48 00 17 09 */ bl func_802A45E0 +/* 802A2ED8 0029EB38 48 00 17 09 */ bl IPCiProfQueueReq lbl_802A2EDC: /* 802A2EDC 0029EB3C 2C 1F 00 00 */ cmpwi r31, 0 /* 802A2EE0 0029EB40 41 82 00 24 */ beq lbl_802A2F04 @@ -433,7 +433,7 @@ lbl_802A2EDC: /* 802A2EF0 0029EB50 41 82 01 10 */ beq lbl_802A3000 /* 802A2EF4 0029EB54 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A2EF8 0029EB58 7F 84 E3 78 */ mr r4, r28 -/* 802A2EFC 0029EB5C 48 00 14 41 */ bl func_802A433C +/* 802A2EFC 0029EB5C 48 00 14 41 */ bl iosFree /* 802A2F00 0029EB60 48 00 01 00 */ b lbl_802A3000 lbl_802A2F04: /* 802A2F04 0029EB64 80 0D 89 88 */ lwz r0, lbl_8063DC48-_SDA_BASE_(r13) @@ -511,7 +511,7 @@ lbl_802A3000: /* 802A300C 0029EC6C 40 82 00 10 */ bne lbl_802A301C /* 802A3010 0029EC70 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3014 0029EC74 7F 84 E3 78 */ mr r4, r28 -/* 802A3018 0029EC78 48 00 13 25 */ bl func_802A433C +/* 802A3018 0029EC78 48 00 13 25 */ bl iosFree lbl_802A301C: /* 802A301C 0029EC7C 7F E3 FB 78 */ mr r3, r31 /* 802A3020 0029EC80 83 E1 00 1C */ lwz r31, 0x1c(r1) @@ -543,7 +543,7 @@ lbl_802A3078: /* 802A3078 0029ECD8 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A307C 0029ECDC 38 80 00 40 */ li r4, 0x40 /* 802A3080 0029ECE0 38 A0 00 20 */ li r5, 0x20 -/* 802A3084 0029ECE4 48 00 12 B5 */ bl func_802A4338 +/* 802A3084 0029ECE4 48 00 12 B5 */ bl iosAllocAligned /* 802A3088 0029ECE8 2C 03 00 00 */ cmpwi r3, 0 /* 802A308C 0029ECEC 90 61 00 08 */ stw r3, 8(r1) /* 802A3090 0029ECF0 40 82 00 0C */ bne lbl_802A309C @@ -625,7 +625,7 @@ lbl_802A3190: /* 802A3190 0029EDF0 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3194 0029EDF4 38 80 00 40 */ li r4, 0x40 /* 802A3198 0029EDF8 38 A0 00 20 */ li r5, 0x20 -/* 802A319C 0029EDFC 48 00 11 9D */ bl func_802A4338 +/* 802A319C 0029EDFC 48 00 11 9D */ bl iosAllocAligned /* 802A31A0 0029EE00 2C 03 00 00 */ cmpwi r3, 0 /* 802A31A4 0029EE04 90 61 00 08 */ stw r3, 8(r1) /* 802A31A8 0029EE08 40 82 00 0C */ bne lbl_802A31B4 @@ -710,7 +710,7 @@ lbl_802A32B4: /* 802A32B4 0029EF14 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A32B8 0029EF18 38 80 00 40 */ li r4, 0x40 /* 802A32BC 0029EF1C 38 A0 00 20 */ li r5, 0x20 -/* 802A32C0 0029EF20 48 00 10 79 */ bl func_802A4338 +/* 802A32C0 0029EF20 48 00 10 79 */ bl iosAllocAligned /* 802A32C4 0029EF24 2C 03 00 00 */ cmpwi r3, 0 /* 802A32C8 0029EF28 90 61 00 08 */ stw r3, 8(r1) /* 802A32CC 0029EF2C 40 82 00 0C */ bne lbl_802A32D8 @@ -761,7 +761,7 @@ lbl_802A3364: /* 802A3364 0029EFC4 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3368 0029EFC8 38 80 00 40 */ li r4, 0x40 /* 802A336C 0029EFCC 38 A0 00 20 */ li r5, 0x20 -/* 802A3370 0029EFD0 48 00 0F C9 */ bl func_802A4338 +/* 802A3370 0029EFD0 48 00 0F C9 */ bl iosAllocAligned /* 802A3374 0029EFD4 2C 03 00 00 */ cmpwi r3, 0 /* 802A3378 0029EFD8 90 61 00 08 */ stw r3, 8(r1) /* 802A337C 0029EFDC 40 82 00 0C */ bne lbl_802A3388 @@ -814,7 +814,7 @@ lbl_802A341C: /* 802A341C 0029F07C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3420 0029F080 38 80 00 40 */ li r4, 0x40 /* 802A3424 0029F084 38 A0 00 20 */ li r5, 0x20 -/* 802A3428 0029F088 48 00 0F 11 */ bl func_802A4338 +/* 802A3428 0029F088 48 00 0F 11 */ bl iosAllocAligned /* 802A342C 0029F08C 2C 03 00 00 */ cmpwi r3, 0 /* 802A3430 0029F090 90 61 00 08 */ stw r3, 8(r1) /* 802A3434 0029F094 40 82 00 0C */ bne lbl_802A3440 @@ -889,7 +889,7 @@ lbl_802A351C: /* 802A351C 0029F17C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3520 0029F180 38 80 00 40 */ li r4, 0x40 /* 802A3524 0029F184 38 A0 00 20 */ li r5, 0x20 -/* 802A3528 0029F188 48 00 0E 11 */ bl func_802A4338 +/* 802A3528 0029F188 48 00 0E 11 */ bl iosAllocAligned /* 802A352C 0029F18C 2C 03 00 00 */ cmpwi r3, 0 /* 802A3530 0029F190 90 61 00 08 */ stw r3, 8(r1) /* 802A3534 0029F194 40 82 00 0C */ bne lbl_802A3540 @@ -966,7 +966,7 @@ lbl_802A3624: /* 802A3624 0029F284 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3628 0029F288 38 80 00 40 */ li r4, 0x40 /* 802A362C 0029F28C 38 A0 00 20 */ li r5, 0x20 -/* 802A3630 0029F290 48 00 0D 09 */ bl func_802A4338 +/* 802A3630 0029F290 48 00 0D 09 */ bl iosAllocAligned /* 802A3634 0029F294 2C 03 00 00 */ cmpwi r3, 0 /* 802A3638 0029F298 90 61 00 08 */ stw r3, 8(r1) /* 802A363C 0029F29C 40 82 00 0C */ bne lbl_802A3648 @@ -1041,7 +1041,7 @@ lbl_802A3724: /* 802A3724 0029F384 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3728 0029F388 38 80 00 40 */ li r4, 0x40 /* 802A372C 0029F38C 38 A0 00 20 */ li r5, 0x20 -/* 802A3730 0029F390 48 00 0C 09 */ bl func_802A4338 +/* 802A3730 0029F390 48 00 0C 09 */ bl iosAllocAligned /* 802A3734 0029F394 2C 03 00 00 */ cmpwi r3, 0 /* 802A3738 0029F398 90 61 00 08 */ stw r3, 8(r1) /* 802A373C 0029F39C 40 82 00 0C */ bne lbl_802A3748 @@ -1118,7 +1118,7 @@ lbl_802A382C: /* 802A382C 0029F48C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3830 0029F490 38 80 00 40 */ li r4, 0x40 /* 802A3834 0029F494 38 A0 00 20 */ li r5, 0x20 -/* 802A3838 0029F498 48 00 0B 01 */ bl func_802A4338 +/* 802A3838 0029F498 48 00 0B 01 */ bl iosAllocAligned /* 802A383C 0029F49C 2C 03 00 00 */ cmpwi r3, 0 /* 802A3840 0029F4A0 90 61 00 08 */ stw r3, 8(r1) /* 802A3844 0029F4A4 40 82 00 0C */ bne lbl_802A3850 @@ -1183,7 +1183,7 @@ lbl_802A390C: /* 802A390C 0029F56C 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3910 0029F570 38 80 00 40 */ li r4, 0x40 /* 802A3914 0029F574 38 A0 00 20 */ li r5, 0x20 -/* 802A3918 0029F578 48 00 0A 21 */ bl func_802A4338 +/* 802A3918 0029F578 48 00 0A 21 */ bl iosAllocAligned /* 802A391C 0029F57C 2C 03 00 00 */ cmpwi r3, 0 /* 802A3920 0029F580 90 61 00 08 */ stw r3, 8(r1) /* 802A3924 0029F584 40 82 00 0C */ bne lbl_802A3930 @@ -1253,7 +1253,7 @@ lbl_802A3A00: /* 802A3A00 0029F660 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3A04 0029F664 38 80 00 40 */ li r4, 0x40 /* 802A3A08 0029F668 38 A0 00 20 */ li r5, 0x20 -/* 802A3A0C 0029F66C 48 00 09 2D */ bl func_802A4338 +/* 802A3A0C 0029F66C 48 00 09 2D */ bl iosAllocAligned /* 802A3A10 0029F670 2C 03 00 00 */ cmpwi r3, 0 /* 802A3A14 0029F674 90 61 00 08 */ stw r3, 8(r1) /* 802A3A18 0029F678 40 82 00 0C */ bne lbl_802A3A24 @@ -1342,7 +1342,7 @@ lbl_802A3B30: /* 802A3B30 0029F790 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3B34 0029F794 38 80 00 40 */ li r4, 0x40 /* 802A3B38 0029F798 38 A0 00 20 */ li r5, 0x20 -/* 802A3B3C 0029F79C 48 00 07 FD */ bl func_802A4338 +/* 802A3B3C 0029F79C 48 00 07 FD */ bl iosAllocAligned /* 802A3B40 0029F7A0 2C 03 00 00 */ cmpwi r3, 0 /* 802A3B44 0029F7A4 90 61 00 08 */ stw r3, 8(r1) /* 802A3B48 0029F7A8 40 82 00 0C */ bne lbl_802A3B54 @@ -1526,7 +1526,7 @@ lbl_802A3DA0: /* 802A3DA0 0029FA00 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3DA4 0029FA04 38 80 00 40 */ li r4, 0x40 /* 802A3DA8 0029FA08 38 A0 00 20 */ li r5, 0x20 -/* 802A3DAC 0029FA0C 48 00 05 8D */ bl func_802A4338 +/* 802A3DAC 0029FA0C 48 00 05 8D */ bl iosAllocAligned /* 802A3DB0 0029FA10 2C 03 00 00 */ cmpwi r3, 0 /* 802A3DB4 0029FA14 90 61 00 08 */ stw r3, 8(r1) /* 802A3DB8 0029FA18 40 82 00 0C */ bne lbl_802A3DC4 @@ -1588,7 +1588,7 @@ lbl_802A3E7C: /* 802A3E7C 0029FADC 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3E80 0029FAE0 38 80 00 40 */ li r4, 0x40 /* 802A3E84 0029FAE4 38 A0 00 20 */ li r5, 0x20 -/* 802A3E88 0029FAE8 48 00 04 B1 */ bl func_802A4338 +/* 802A3E88 0029FAE8 48 00 04 B1 */ bl iosAllocAligned /* 802A3E8C 0029FAEC 2C 03 00 00 */ cmpwi r3, 0 /* 802A3E90 0029FAF0 90 61 00 08 */ stw r3, 8(r1) /* 802A3E94 0029FAF4 40 82 00 0C */ bne lbl_802A3EA0 @@ -1650,7 +1650,7 @@ lbl_802A3F58: /* 802A3F58 0029FBB8 80 6D 89 8C */ lwz r3, lbl_8063DC4C-_SDA_BASE_(r13) /* 802A3F5C 0029FBBC 38 80 00 40 */ li r4, 0x40 /* 802A3F60 0029FBC0 38 A0 00 20 */ li r5, 0x20 -/* 802A3F64 0029FBC4 48 00 03 D5 */ bl func_802A4338 +/* 802A3F64 0029FBC4 48 00 03 D5 */ bl iosAllocAligned /* 802A3F68 0029FBC8 2C 03 00 00 */ cmpwi r3, 0 /* 802A3F6C 0029FBCC 90 61 00 08 */ stw r3, 8(r1) /* 802A3F70 0029FBD0 40 82 00 0C */ bne lbl_802A3F7C diff --git a/asm/SDK/memory.s b/asm/SDK/memory.s new file mode 100644 index 0000000..69e943a --- /dev/null +++ b/asm/SDK/memory.s @@ -0,0 +1,373 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80006980 - 0x803E1E60 + +.global iosCreateHeap +iosCreateHeap: +/* 802A4004 0029FC64 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A4008 0029FC68 7C 08 02 A6 */ mflr r0 +/* 802A400C 0029FC6C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A4010 0029FC70 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802A4014 0029FC74 3B E0 FF FC */ li r31, -4 +/* 802A4018 0029FC78 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802A401C 0029FC7C 7C 9E 23 78 */ mr r30, r4 +/* 802A4020 0029FC80 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802A4024 0029FC84 7C 7D 1B 78 */ mr r29, r3 +/* 802A4028 0029FC88 4B FC A7 35 */ bl OSDisableInterrupts +/* 802A402C 0029FC8C 57 A0 06 FF */ clrlwi. r0, r29, 0x1b +/* 802A4030 0029FC90 40 82 00 E0 */ bne lbl_802A4110 +/* 802A4034 0029FC94 3C 80 80 53 */ lis r4, 0x8053 +/* 802A4038 0029FC98 84 04 6B B0 */ lwzu r0, 0x6bb0(r4) +/* 802A403C 0029FC9C 3B E0 00 00 */ li r31, 0 +/* 802A4040 0029FCA0 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4044 0029FCA4 41 82 00 78 */ beq lbl_802A40BC +/* 802A4048 0029FCA8 80 04 00 10 */ lwz r0, 0x10(r4) +/* 802A404C 0029FCAC 3B E0 00 01 */ li r31, 1 +/* 802A4050 0029FCB0 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4054 0029FCB4 41 82 00 68 */ beq lbl_802A40BC +/* 802A4058 0029FCB8 80 04 00 20 */ lwz r0, 0x20(r4) +/* 802A405C 0029FCBC 3B E0 00 02 */ li r31, 2 +/* 802A4060 0029FCC0 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4064 0029FCC4 41 82 00 58 */ beq lbl_802A40BC +/* 802A4068 0029FCC8 80 04 00 30 */ lwz r0, 0x30(r4) +/* 802A406C 0029FCCC 3B E0 00 03 */ li r31, 3 +/* 802A4070 0029FCD0 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4074 0029FCD4 41 82 00 48 */ beq lbl_802A40BC +/* 802A4078 0029FCD8 80 04 00 40 */ lwz r0, 0x40(r4) +/* 802A407C 0029FCDC 3B E0 00 04 */ li r31, 4 +/* 802A4080 0029FCE0 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4084 0029FCE4 41 82 00 38 */ beq lbl_802A40BC +/* 802A4088 0029FCE8 80 04 00 50 */ lwz r0, 0x50(r4) +/* 802A408C 0029FCEC 3B E0 00 05 */ li r31, 5 +/* 802A4090 0029FCF0 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4094 0029FCF4 41 82 00 28 */ beq lbl_802A40BC +/* 802A4098 0029FCF8 80 04 00 60 */ lwz r0, 0x60(r4) +/* 802A409C 0029FCFC 3B E0 00 06 */ li r31, 6 +/* 802A40A0 0029FD00 2C 00 00 00 */ cmpwi r0, 0 +/* 802A40A4 0029FD04 41 82 00 18 */ beq lbl_802A40BC +/* 802A40A8 0029FD08 80 04 00 70 */ lwz r0, 0x70(r4) +/* 802A40AC 0029FD0C 3B E0 00 07 */ li r31, 7 +/* 802A40B0 0029FD10 2C 00 00 00 */ cmpwi r0, 0 +/* 802A40B4 0029FD14 41 82 00 08 */ beq lbl_802A40BC +/* 802A40B8 0029FD18 3B E0 00 08 */ li r31, 8 +lbl_802A40BC: +/* 802A40BC 0029FD1C 2C 1F 00 08 */ cmpwi r31, 8 +/* 802A40C0 0029FD20 40 82 00 0C */ bne lbl_802A40CC +/* 802A40C4 0029FD24 3B E0 FF FB */ li r31, -5 +/* 802A40C8 0029FD28 48 00 00 48 */ b lbl_802A4110 +lbl_802A40CC: +/* 802A40CC 0029FD2C 3C A0 80 53 */ lis r5, lbl_80536BB0@ha +/* 802A40D0 0029FD30 57 E0 20 36 */ slwi r0, r31, 4 +/* 802A40D4 0029FD34 38 A5 6B B0 */ addi r5, r5, lbl_80536BB0@l +/* 802A40D8 0029FD38 3C 80 BA BE */ lis r4, 0xbabe +/* 802A40DC 0029FD3C 7C C5 02 14 */ add r6, r5, r0 +/* 802A40E0 0029FD40 38 00 00 00 */ li r0, 0 +/* 802A40E4 0029FD44 93 A6 00 00 */ stw r29, 0(r6) +/* 802A40E8 0029FD48 38 BE FF F0 */ addi r5, r30, -16 +/* 802A40EC 0029FD4C 93 C6 00 08 */ stw r30, 8(r6) +/* 802A40F0 0029FD50 93 A6 00 0C */ stw r29, 0xc(r6) +/* 802A40F4 0029FD54 90 9D 00 00 */ stw r4, 0(r29) +/* 802A40F8 0029FD58 80 86 00 0C */ lwz r4, 0xc(r6) +/* 802A40FC 0029FD5C 90 A4 00 04 */ stw r5, 4(r4) +/* 802A4100 0029FD60 80 86 00 0C */ lwz r4, 0xc(r6) +/* 802A4104 0029FD64 90 04 00 08 */ stw r0, 8(r4) +/* 802A4108 0029FD68 80 86 00 0C */ lwz r4, 0xc(r6) +/* 802A410C 0029FD6C 90 04 00 0C */ stw r0, 0xc(r4) +lbl_802A4110: +/* 802A4110 0029FD70 4B FC A6 75 */ bl OSRestoreInterrupts +/* 802A4114 0029FD74 7F E3 FB 78 */ mr r3, r31 +/* 802A4118 0029FD78 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802A411C 0029FD7C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802A4120 0029FD80 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802A4124 0029FD84 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A4128 0029FD88 7C 08 03 A6 */ mtlr r0 +/* 802A412C 0029FD8C 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A4130 0029FD90 4E 80 00 20 */ blr +__iosAlloc: +/* 802A4134 0029FD94 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A4138 0029FD98 7C 08 02 A6 */ mflr r0 +/* 802A413C 0029FD9C 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A4140 0029FDA0 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802A4144 0029FDA4 3B E0 00 00 */ li r31, 0 +/* 802A4148 0029FDA8 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802A414C 0029FDAC 7C BE 2B 78 */ mr r30, r5 +/* 802A4150 0029FDB0 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802A4154 0029FDB4 7C 9D 23 78 */ mr r29, r4 +/* 802A4158 0029FDB8 93 81 00 10 */ stw r28, 0x10(r1) +/* 802A415C 0029FDBC 7C 7C 1B 78 */ mr r28, r3 +/* 802A4160 0029FDC0 4B FC A5 FD */ bl OSDisableInterrupts +/* 802A4164 0029FDC4 2C 1D 00 00 */ cmpwi r29, 0 +/* 802A4168 0029FDC8 41 82 01 A8 */ beq lbl_802A4310 +/* 802A416C 0029FDCC 2C 1E 00 00 */ cmpwi r30, 0 +/* 802A4170 0029FDD0 41 82 01 A0 */ beq lbl_802A4310 +/* 802A4174 0029FDD4 38 1E FF FF */ addi r0, r30, -1 +/* 802A4178 0029FDD8 7F C0 00 39 */ and. r0, r30, r0 +/* 802A417C 0029FDDC 40 82 01 94 */ bne lbl_802A4310 +/* 802A4180 0029FDE0 28 1E 00 20 */ cmplwi r30, 0x20 +/* 802A4184 0029FDE4 40 80 00 08 */ bge lbl_802A418C +/* 802A4188 0029FDE8 3B C0 00 20 */ li r30, 0x20 +lbl_802A418C: +/* 802A418C 0029FDEC 2C 1C 00 00 */ cmpwi r28, 0 +/* 802A4190 0029FDF0 38 1D 00 1F */ addi r0, r29, 0x1f +/* 802A4194 0029FDF4 54 1D 00 34 */ rlwinm r29, r0, 0, 0, 0x1a +/* 802A4198 0029FDF8 41 80 00 24 */ blt lbl_802A41BC +/* 802A419C 0029FDFC 2C 1C 00 08 */ cmpwi r28, 8 +/* 802A41A0 0029FE00 40 80 00 1C */ bge lbl_802A41BC +/* 802A41A4 0029FE04 3C 80 80 53 */ lis r4, lbl_80536BB0@ha +/* 802A41A8 0029FE08 57 80 20 36 */ slwi r0, r28, 4 +/* 802A41AC 0029FE0C 38 84 6B B0 */ addi r4, r4, lbl_80536BB0@l +/* 802A41B0 0029FE10 7C 04 00 6E */ lwzux r0, r4, r0 +/* 802A41B4 0029FE14 2C 00 00 00 */ cmpwi r0, 0 +/* 802A41B8 0029FE18 40 82 00 0C */ bne lbl_802A41C4 +lbl_802A41BC: +/* 802A41BC 0029FE1C 3B E0 00 00 */ li r31, 0 +/* 802A41C0 0029FE20 48 00 01 50 */ b lbl_802A4310 +lbl_802A41C4: +/* 802A41C4 0029FE24 81 04 00 0C */ lwz r8, 0xc(r4) +/* 802A41C8 0029FE28 38 DE FF FF */ addi r6, r30, -1 +/* 802A41CC 0029FE2C 38 A0 00 00 */ li r5, 0 +/* 802A41D0 0029FE30 48 00 00 58 */ b lbl_802A4228 +lbl_802A41D4: +/* 802A41D4 0029FE34 80 E8 00 04 */ lwz r7, 4(r8) +/* 802A41D8 0029FE38 38 08 00 10 */ addi r0, r8, 0x10 +/* 802A41DC 0029FE3C 7C 00 30 38 */ and r0, r0, r6 +/* 802A41E0 0029FE40 7C 07 E8 40 */ cmplw r7, r29 +/* 802A41E4 0029FE44 7C 00 F0 50 */ subf r0, r0, r30 +/* 802A41E8 0029FE48 7C C0 00 38 */ and r0, r6, r0 +/* 802A41EC 0029FE4C 40 82 00 14 */ bne lbl_802A4200 +/* 802A41F0 0029FE50 2C 00 00 00 */ cmpwi r0, 0 +/* 802A41F4 0029FE54 40 82 00 0C */ bne lbl_802A4200 +/* 802A41F8 0029FE58 7D 05 43 78 */ mr r5, r8 +/* 802A41FC 0029FE5C 48 00 00 34 */ b lbl_802A4230 +lbl_802A4200: +/* 802A4200 0029FE60 7C 1D 02 14 */ add r0, r29, r0 +/* 802A4204 0029FE64 7C 07 00 40 */ cmplw r7, r0 +/* 802A4208 0029FE68 41 80 00 1C */ blt lbl_802A4224 +/* 802A420C 0029FE6C 2C 05 00 00 */ cmpwi r5, 0 +/* 802A4210 0029FE70 41 82 00 10 */ beq lbl_802A4220 +/* 802A4214 0029FE74 80 05 00 04 */ lwz r0, 4(r5) +/* 802A4218 0029FE78 7C 07 00 40 */ cmplw r7, r0 +/* 802A421C 0029FE7C 40 80 00 08 */ bge lbl_802A4224 +lbl_802A4220: +/* 802A4220 0029FE80 7D 05 43 78 */ mr r5, r8 +lbl_802A4224: +/* 802A4224 0029FE84 81 08 00 0C */ lwz r8, 0xc(r8) +lbl_802A4228: +/* 802A4228 0029FE88 2C 08 00 00 */ cmpwi r8, 0 +/* 802A422C 0029FE8C 40 82 FF A8 */ bne lbl_802A41D4 +lbl_802A4230: +/* 802A4230 0029FE90 2C 05 00 00 */ cmpwi r5, 0 +/* 802A4234 0029FE94 41 82 00 DC */ beq lbl_802A4310 +/* 802A4238 0029FE98 38 FE FF FF */ addi r7, r30, -1 +/* 802A423C 0029FE9C 38 05 00 10 */ addi r0, r5, 0x10 +/* 802A4240 0029FEA0 7C 00 38 38 */ and r0, r0, r7 +/* 802A4244 0029FEA4 80 C5 00 04 */ lwz r6, 4(r5) +/* 802A4248 0029FEA8 7C 00 F0 50 */ subf r0, r0, r30 +/* 802A424C 0029FEAC 7C E8 00 38 */ and r8, r7, r0 +/* 802A4250 0029FEB0 7C FD 42 14 */ add r7, r29, r8 +/* 802A4254 0029FEB4 38 07 00 10 */ addi r0, r7, 0x10 +/* 802A4258 0029FEB8 7C 06 00 40 */ cmplw r6, r0 +/* 802A425C 0029FEBC 40 81 00 48 */ ble lbl_802A42A4 +/* 802A4260 0029FEC0 7C C5 EA 14 */ add r6, r5, r29 +/* 802A4264 0029FEC4 3C 00 BA BE */ lis r0, 0xbabe +/* 802A4268 0029FEC8 7D 28 32 14 */ add r9, r8, r6 +/* 802A426C 0029FECC 90 09 00 10 */ stw r0, 0x10(r9) +/* 802A4270 0029FED0 80 05 00 04 */ lwz r0, 4(r5) +/* 802A4274 0029FED4 7C 1D 00 50 */ subf r0, r29, r0 +/* 802A4278 0029FED8 7C C8 00 50 */ subf r6, r8, r0 +/* 802A427C 0029FEDC 38 06 FF F0 */ addi r0, r6, -16 +/* 802A4280 0029FEE0 90 09 00 14 */ stw r0, 0x14(r9) +/* 802A4284 0029FEE4 80 C5 00 0C */ lwz r6, 0xc(r5) +/* 802A4288 0029FEE8 2C 06 00 00 */ cmpwi r6, 0 +/* 802A428C 0029FEEC 90 C9 00 1C */ stw r6, 0x1c(r9) +/* 802A4290 0029FEF0 39 29 00 10 */ addi r9, r9, 0x10 +/* 802A4294 0029FEF4 41 82 00 08 */ beq lbl_802A429C +/* 802A4298 0029FEF8 91 26 00 08 */ stw r9, 8(r6) +lbl_802A429C: +/* 802A429C 0029FEFC 91 25 00 0C */ stw r9, 0xc(r5) +/* 802A42A0 0029FF00 90 E5 00 04 */ stw r7, 4(r5) +lbl_802A42A4: +/* 802A42A4 0029FF04 3C C0 BA BE */ lis r6, 0xBABE0001@ha +/* 802A42A8 0029FF08 38 06 00 01 */ addi r0, r6, 0xBABE0001@l +/* 802A42AC 0029FF0C 90 05 00 00 */ stw r0, 0(r5) +/* 802A42B0 0029FF10 80 C5 00 08 */ lwz r6, 8(r5) +/* 802A42B4 0029FF14 2C 06 00 00 */ cmpwi r6, 0 +/* 802A42B8 0029FF18 41 82 00 10 */ beq lbl_802A42C8 +/* 802A42BC 0029FF1C 80 05 00 0C */ lwz r0, 0xc(r5) +/* 802A42C0 0029FF20 90 06 00 0C */ stw r0, 0xc(r6) +/* 802A42C4 0029FF24 48 00 00 0C */ b lbl_802A42D0 +lbl_802A42C8: +/* 802A42C8 0029FF28 80 05 00 0C */ lwz r0, 0xc(r5) +/* 802A42CC 0029FF2C 90 04 00 0C */ stw r0, 0xc(r4) +lbl_802A42D0: +/* 802A42D0 0029FF30 80 85 00 0C */ lwz r4, 0xc(r5) +/* 802A42D4 0029FF34 2C 04 00 00 */ cmpwi r4, 0 +/* 802A42D8 0029FF38 41 82 00 0C */ beq lbl_802A42E4 +/* 802A42DC 0029FF3C 80 05 00 08 */ lwz r0, 8(r5) +/* 802A42E0 0029FF40 90 04 00 08 */ stw r0, 8(r4) +lbl_802A42E4: +/* 802A42E4 0029FF44 38 00 00 00 */ li r0, 0 +/* 802A42E8 0029FF48 7F E5 42 14 */ add r31, r5, r8 +/* 802A42EC 0029FF4C 90 05 00 0C */ stw r0, 0xc(r5) +/* 802A42F0 0029FF50 2C 08 00 00 */ cmpwi r8, 0 +/* 802A42F4 0029FF54 3B FF 00 10 */ addi r31, r31, 0x10 +/* 802A42F8 0029FF58 90 05 00 08 */ stw r0, 8(r5) +/* 802A42FC 0029FF5C 41 82 00 14 */ beq lbl_802A4310 +/* 802A4300 0029FF60 3C 80 BA BE */ lis r4, 0xBABE0002@ha +/* 802A4304 0029FF64 38 04 00 02 */ addi r0, r4, 0xBABE0002@l +/* 802A4308 0029FF68 90 1F FF F0 */ stw r0, -0x10(r31) +/* 802A430C 0029FF6C 90 BF FF F8 */ stw r5, -8(r31) +lbl_802A4310: +/* 802A4310 0029FF70 4B FC A4 75 */ bl OSRestoreInterrupts +/* 802A4314 0029FF74 7F E3 FB 78 */ mr r3, r31 +/* 802A4318 0029FF78 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802A431C 0029FF7C 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802A4320 0029FF80 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802A4324 0029FF84 83 81 00 10 */ lwz r28, 0x10(r1) +/* 802A4328 0029FF88 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A432C 0029FF8C 7C 08 03 A6 */ mtlr r0 +/* 802A4330 0029FF90 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A4334 0029FF94 4E 80 00 20 */ blr + +.global iosAllocAligned +iosAllocAligned: +/* 802A4338 0029FF98 4B FF FD FC */ b __iosAlloc + +.global iosFree +iosFree: +/* 802A433C 0029FF9C 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 802A4340 0029FFA0 7C 08 02 A6 */ mflr r0 +/* 802A4344 0029FFA4 90 01 00 24 */ stw r0, 0x24(r1) +/* 802A4348 0029FFA8 93 E1 00 1C */ stw r31, 0x1c(r1) +/* 802A434C 0029FFAC 3B E0 FF FC */ li r31, -4 +/* 802A4350 0029FFB0 93 C1 00 18 */ stw r30, 0x18(r1) +/* 802A4354 0029FFB4 7C 9E 23 78 */ mr r30, r4 +/* 802A4358 0029FFB8 93 A1 00 14 */ stw r29, 0x14(r1) +/* 802A435C 0029FFBC 7C 7D 1B 78 */ mr r29, r3 +/* 802A4360 0029FFC0 4B FC A3 FD */ bl OSDisableInterrupts +/* 802A4364 0029FFC4 2C 1E 00 00 */ cmpwi r30, 0 +/* 802A4368 0029FFC8 41 82 01 9C */ beq lbl_802A4504 +/* 802A436C 0029FFCC 2C 1D 00 00 */ cmpwi r29, 0 +/* 802A4370 0029FFD0 41 80 00 28 */ blt lbl_802A4398 +/* 802A4374 0029FFD4 2C 1D 00 08 */ cmpwi r29, 8 +/* 802A4378 0029FFD8 40 80 00 20 */ bge lbl_802A4398 +/* 802A437C 0029FFDC 3C 80 80 53 */ lis r4, lbl_80536BB0@ha +/* 802A4380 0029FFE0 57 A0 20 36 */ slwi r0, r29, 4 +/* 802A4384 0029FFE4 38 84 6B B0 */ addi r4, r4, lbl_80536BB0@l +/* 802A4388 0029FFE8 7C A4 02 14 */ add r5, r4, r0 +/* 802A438C 0029FFEC 7C 84 00 2E */ lwzx r4, r4, r0 +/* 802A4390 0029FFF0 2C 04 00 00 */ cmpwi r4, 0 +/* 802A4394 0029FFF4 40 82 00 0C */ bne lbl_802A43A0 +lbl_802A4398: +/* 802A4398 0029FFF8 3B E0 FF FC */ li r31, -4 +/* 802A439C 0029FFFC 48 00 01 68 */ b lbl_802A4504 +lbl_802A43A0: +/* 802A43A0 002A0000 38 04 00 10 */ addi r0, r4, 0x10 +/* 802A43A4 002A0004 7C 1E 00 40 */ cmplw r30, r0 +/* 802A43A8 002A0008 41 80 01 5C */ blt lbl_802A4504 +/* 802A43AC 002A000C 80 05 00 08 */ lwz r0, 8(r5) +/* 802A43B0 002A0010 7C 04 02 14 */ add r0, r4, r0 +/* 802A43B4 002A0014 7C 1E 00 40 */ cmplw r30, r0 +/* 802A43B8 002A0018 41 81 01 4C */ bgt lbl_802A4504 +/* 802A43BC 002A001C 80 9E FF F0 */ lwz r4, -0x10(r30) +/* 802A43C0 002A0020 38 DE FF F0 */ addi r6, r30, -16 +/* 802A43C4 002A0024 3C 04 45 42 */ addis r0, r4, 0x4542 +/* 802A43C8 002A0028 28 00 00 02 */ cmplwi r0, 2 +/* 802A43CC 002A002C 40 82 00 08 */ bne lbl_802A43D4 +/* 802A43D0 002A0030 80 C6 00 08 */ lwz r6, 8(r6) +lbl_802A43D4: +/* 802A43D4 002A0034 80 86 00 00 */ lwz r4, 0(r6) +/* 802A43D8 002A0038 3C 04 45 42 */ addis r0, r4, 0x4542 +/* 802A43DC 002A003C 28 00 00 01 */ cmplwi r0, 1 +/* 802A43E0 002A0040 40 82 01 24 */ bne lbl_802A4504 +/* 802A43E4 002A0044 3C 00 BA BE */ lis r0, 0xbabe +/* 802A43E8 002A0048 90 06 00 00 */ stw r0, 0(r6) +/* 802A43EC 002A004C 80 85 00 0C */ lwz r4, 0xc(r5) +/* 802A43F0 002A0050 7C 87 23 78 */ mr r7, r4 +/* 802A43F4 002A0054 48 00 00 1C */ b lbl_802A4410 +lbl_802A43F8: +/* 802A43F8 002A0058 80 07 00 0C */ lwz r0, 0xc(r7) +/* 802A43FC 002A005C 2C 00 00 00 */ cmpwi r0, 0 +/* 802A4400 002A0060 41 82 00 18 */ beq lbl_802A4418 +/* 802A4404 002A0064 7C 00 30 40 */ cmplw r0, r6 +/* 802A4408 002A0068 41 81 00 10 */ bgt lbl_802A4418 +/* 802A440C 002A006C 7C 07 03 78 */ mr r7, r0 +lbl_802A4410: +/* 802A4410 002A0070 2C 07 00 00 */ cmpwi r7, 0 +/* 802A4414 002A0074 40 82 FF E4 */ bne lbl_802A43F8 +lbl_802A4418: +/* 802A4418 002A0078 2C 07 00 00 */ cmpwi r7, 0 +/* 802A441C 002A007C 41 82 00 30 */ beq lbl_802A444C +/* 802A4420 002A0080 7C 06 38 40 */ cmplw r6, r7 +/* 802A4424 002A0084 40 81 00 28 */ ble lbl_802A444C +/* 802A4428 002A0088 90 E6 00 08 */ stw r7, 8(r6) +/* 802A442C 002A008C 80 07 00 0C */ lwz r0, 0xc(r7) +/* 802A4430 002A0090 90 06 00 0C */ stw r0, 0xc(r6) +/* 802A4434 002A0094 90 C7 00 0C */ stw r6, 0xc(r7) +/* 802A4438 002A0098 80 86 00 0C */ lwz r4, 0xc(r6) +/* 802A443C 002A009C 2C 04 00 00 */ cmpwi r4, 0 +/* 802A4440 002A00A0 41 82 00 2C */ beq lbl_802A446C +/* 802A4444 002A00A4 90 C4 00 08 */ stw r6, 8(r4) +/* 802A4448 002A00A8 48 00 00 24 */ b lbl_802A446C +lbl_802A444C: +/* 802A444C 002A00AC 90 86 00 0C */ stw r4, 0xc(r6) +/* 802A4450 002A00B0 38 00 00 00 */ li r0, 0 +/* 802A4454 002A00B4 90 C5 00 0C */ stw r6, 0xc(r5) +/* 802A4458 002A00B8 90 06 00 08 */ stw r0, 8(r6) +/* 802A445C 002A00BC 80 86 00 0C */ lwz r4, 0xc(r6) +/* 802A4460 002A00C0 2C 04 00 00 */ cmpwi r4, 0 +/* 802A4464 002A00C4 41 82 00 08 */ beq lbl_802A446C +/* 802A4468 002A00C8 90 C4 00 08 */ stw r6, 8(r4) +lbl_802A446C: +/* 802A446C 002A00CC 2C 06 00 00 */ cmpwi r6, 0 +/* 802A4470 002A00D0 41 82 00 44 */ beq lbl_802A44B4 +/* 802A4474 002A00D4 80 06 00 04 */ lwz r0, 4(r6) +/* 802A4478 002A00D8 80 A6 00 0C */ lwz r5, 0xc(r6) +/* 802A447C 002A00DC 7C 86 02 14 */ add r4, r6, r0 +/* 802A4480 002A00E0 38 04 00 10 */ addi r0, r4, 0x10 +/* 802A4484 002A00E4 7C 05 00 40 */ cmplw r5, r0 +/* 802A4488 002A00E8 40 82 00 2C */ bne lbl_802A44B4 +/* 802A448C 002A00EC 80 85 00 0C */ lwz r4, 0xc(r5) +/* 802A4490 002A00F0 2C 04 00 00 */ cmpwi r4, 0 +/* 802A4494 002A00F4 90 86 00 0C */ stw r4, 0xc(r6) +/* 802A4498 002A00F8 41 82 00 08 */ beq lbl_802A44A0 +/* 802A449C 002A00FC 90 C4 00 08 */ stw r6, 8(r4) +lbl_802A44A0: +/* 802A44A0 002A0100 80 86 00 04 */ lwz r4, 4(r6) +/* 802A44A4 002A0104 80 05 00 04 */ lwz r0, 4(r5) +/* 802A44A8 002A0108 7C 80 22 14 */ add r4, r0, r4 +/* 802A44AC 002A010C 38 04 00 10 */ addi r0, r4, 0x10 +/* 802A44B0 002A0110 90 06 00 04 */ stw r0, 4(r6) +lbl_802A44B4: +/* 802A44B4 002A0114 80 A6 00 08 */ lwz r5, 8(r6) +/* 802A44B8 002A0118 2C 05 00 00 */ cmpwi r5, 0 +/* 802A44BC 002A011C 41 82 00 44 */ beq lbl_802A4500 +/* 802A44C0 002A0120 80 05 00 04 */ lwz r0, 4(r5) +/* 802A44C4 002A0124 80 C5 00 0C */ lwz r6, 0xc(r5) +/* 802A44C8 002A0128 7C 85 02 14 */ add r4, r5, r0 +/* 802A44CC 002A012C 38 04 00 10 */ addi r0, r4, 0x10 +/* 802A44D0 002A0130 7C 06 00 40 */ cmplw r6, r0 +/* 802A44D4 002A0134 40 82 00 2C */ bne lbl_802A4500 +/* 802A44D8 002A0138 80 86 00 0C */ lwz r4, 0xc(r6) +/* 802A44DC 002A013C 2C 04 00 00 */ cmpwi r4, 0 +/* 802A44E0 002A0140 90 85 00 0C */ stw r4, 0xc(r5) +/* 802A44E4 002A0144 41 82 00 08 */ beq lbl_802A44EC +/* 802A44E8 002A0148 90 A4 00 08 */ stw r5, 8(r4) +lbl_802A44EC: +/* 802A44EC 002A014C 80 85 00 04 */ lwz r4, 4(r5) +/* 802A44F0 002A0150 80 06 00 04 */ lwz r0, 4(r6) +/* 802A44F4 002A0154 7C 80 22 14 */ add r4, r0, r4 +/* 802A44F8 002A0158 38 04 00 10 */ addi r0, r4, 0x10 +/* 802A44FC 002A015C 90 05 00 04 */ stw r0, 4(r5) +lbl_802A4500: +/* 802A4500 002A0160 3B E0 00 00 */ li r31, 0 +lbl_802A4504: +/* 802A4504 002A0164 4B FC A2 81 */ bl OSRestoreInterrupts +/* 802A4508 002A0168 7F E3 FB 78 */ mr r3, r31 +/* 802A450C 002A016C 83 E1 00 1C */ lwz r31, 0x1c(r1) +/* 802A4510 002A0170 83 C1 00 18 */ lwz r30, 0x18(r1) +/* 802A4514 002A0174 83 A1 00 14 */ lwz r29, 0x14(r1) +/* 802A4518 002A0178 80 01 00 24 */ lwz r0, 0x24(r1) +/* 802A451C 002A017C 7C 08 03 A6 */ mtlr r0 +/* 802A4520 002A0180 38 21 00 20 */ addi r1, r1, 0x20 +/* 802A4524 002A0184 4E 80 00 20 */ blr diff --git a/asm/text_8_7.s b/asm/text_8_7.s index 349b4fb..89c1bbe 100644 --- a/asm/text_8_7.s +++ b/asm/text_8_7.s @@ -2,1977 +2,6 @@ .section .text, "ax" # 0x80006980 - 0x803E1E60 -.global func_802A4004 -func_802A4004: -/* 802A4004 0029FC64 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A4008 0029FC68 7C 08 02 A6 */ mflr r0 -/* 802A400C 0029FC6C 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A4010 0029FC70 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802A4014 0029FC74 3B E0 FF FC */ li r31, -4 -/* 802A4018 0029FC78 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802A401C 0029FC7C 7C 9E 23 78 */ mr r30, r4 -/* 802A4020 0029FC80 93 A1 00 14 */ stw r29, 0x14(r1) -/* 802A4024 0029FC84 7C 7D 1B 78 */ mr r29, r3 -/* 802A4028 0029FC88 4B FC A7 35 */ bl OSDisableInterrupts -/* 802A402C 0029FC8C 57 A0 06 FF */ clrlwi. r0, r29, 0x1b -/* 802A4030 0029FC90 40 82 00 E0 */ bne lbl_802A4110 -/* 802A4034 0029FC94 3C 80 80 53 */ lis r4, 0x8053 -/* 802A4038 0029FC98 84 04 6B B0 */ lwzu r0, 0x6bb0(r4) -/* 802A403C 0029FC9C 3B E0 00 00 */ li r31, 0 -/* 802A4040 0029FCA0 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4044 0029FCA4 41 82 00 78 */ beq lbl_802A40BC -/* 802A4048 0029FCA8 80 04 00 10 */ lwz r0, 0x10(r4) -/* 802A404C 0029FCAC 3B E0 00 01 */ li r31, 1 -/* 802A4050 0029FCB0 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4054 0029FCB4 41 82 00 68 */ beq lbl_802A40BC -/* 802A4058 0029FCB8 80 04 00 20 */ lwz r0, 0x20(r4) -/* 802A405C 0029FCBC 3B E0 00 02 */ li r31, 2 -/* 802A4060 0029FCC0 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4064 0029FCC4 41 82 00 58 */ beq lbl_802A40BC -/* 802A4068 0029FCC8 80 04 00 30 */ lwz r0, 0x30(r4) -/* 802A406C 0029FCCC 3B E0 00 03 */ li r31, 3 -/* 802A4070 0029FCD0 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4074 0029FCD4 41 82 00 48 */ beq lbl_802A40BC -/* 802A4078 0029FCD8 80 04 00 40 */ lwz r0, 0x40(r4) -/* 802A407C 0029FCDC 3B E0 00 04 */ li r31, 4 -/* 802A4080 0029FCE0 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4084 0029FCE4 41 82 00 38 */ beq lbl_802A40BC -/* 802A4088 0029FCE8 80 04 00 50 */ lwz r0, 0x50(r4) -/* 802A408C 0029FCEC 3B E0 00 05 */ li r31, 5 -/* 802A4090 0029FCF0 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4094 0029FCF4 41 82 00 28 */ beq lbl_802A40BC -/* 802A4098 0029FCF8 80 04 00 60 */ lwz r0, 0x60(r4) -/* 802A409C 0029FCFC 3B E0 00 06 */ li r31, 6 -/* 802A40A0 0029FD00 2C 00 00 00 */ cmpwi r0, 0 -/* 802A40A4 0029FD04 41 82 00 18 */ beq lbl_802A40BC -/* 802A40A8 0029FD08 80 04 00 70 */ lwz r0, 0x70(r4) -/* 802A40AC 0029FD0C 3B E0 00 07 */ li r31, 7 -/* 802A40B0 0029FD10 2C 00 00 00 */ cmpwi r0, 0 -/* 802A40B4 0029FD14 41 82 00 08 */ beq lbl_802A40BC -/* 802A40B8 0029FD18 3B E0 00 08 */ li r31, 8 -lbl_802A40BC: -/* 802A40BC 0029FD1C 2C 1F 00 08 */ cmpwi r31, 8 -/* 802A40C0 0029FD20 40 82 00 0C */ bne lbl_802A40CC -/* 802A40C4 0029FD24 3B E0 FF FB */ li r31, -5 -/* 802A40C8 0029FD28 48 00 00 48 */ b lbl_802A4110 -lbl_802A40CC: -/* 802A40CC 0029FD2C 3C A0 80 53 */ lis r5, lbl_80536BB0@ha -/* 802A40D0 0029FD30 57 E0 20 36 */ slwi r0, r31, 4 -/* 802A40D4 0029FD34 38 A5 6B B0 */ addi r5, r5, lbl_80536BB0@l -/* 802A40D8 0029FD38 3C 80 BA BE */ lis r4, 0xbabe -/* 802A40DC 0029FD3C 7C C5 02 14 */ add r6, r5, r0 -/* 802A40E0 0029FD40 38 00 00 00 */ li r0, 0 -/* 802A40E4 0029FD44 93 A6 00 00 */ stw r29, 0(r6) -/* 802A40E8 0029FD48 38 BE FF F0 */ addi r5, r30, -16 -/* 802A40EC 0029FD4C 93 C6 00 08 */ stw r30, 8(r6) -/* 802A40F0 0029FD50 93 A6 00 0C */ stw r29, 0xc(r6) -/* 802A40F4 0029FD54 90 9D 00 00 */ stw r4, 0(r29) -/* 802A40F8 0029FD58 80 86 00 0C */ lwz r4, 0xc(r6) -/* 802A40FC 0029FD5C 90 A4 00 04 */ stw r5, 4(r4) -/* 802A4100 0029FD60 80 86 00 0C */ lwz r4, 0xc(r6) -/* 802A4104 0029FD64 90 04 00 08 */ stw r0, 8(r4) -/* 802A4108 0029FD68 80 86 00 0C */ lwz r4, 0xc(r6) -/* 802A410C 0029FD6C 90 04 00 0C */ stw r0, 0xc(r4) -lbl_802A4110: -/* 802A4110 0029FD70 4B FC A6 75 */ bl OSRestoreInterrupts -/* 802A4114 0029FD74 7F E3 FB 78 */ mr r3, r31 -/* 802A4118 0029FD78 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802A411C 0029FD7C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802A4120 0029FD80 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 802A4124 0029FD84 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A4128 0029FD88 7C 08 03 A6 */ mtlr r0 -/* 802A412C 0029FD8C 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A4130 0029FD90 4E 80 00 20 */ blr -lbl_802A4134: -/* 802A4134 0029FD94 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A4138 0029FD98 7C 08 02 A6 */ mflr r0 -/* 802A413C 0029FD9C 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A4140 0029FDA0 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802A4144 0029FDA4 3B E0 00 00 */ li r31, 0 -/* 802A4148 0029FDA8 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802A414C 0029FDAC 7C BE 2B 78 */ mr r30, r5 -/* 802A4150 0029FDB0 93 A1 00 14 */ stw r29, 0x14(r1) -/* 802A4154 0029FDB4 7C 9D 23 78 */ mr r29, r4 -/* 802A4158 0029FDB8 93 81 00 10 */ stw r28, 0x10(r1) -/* 802A415C 0029FDBC 7C 7C 1B 78 */ mr r28, r3 -/* 802A4160 0029FDC0 4B FC A5 FD */ bl OSDisableInterrupts -/* 802A4164 0029FDC4 2C 1D 00 00 */ cmpwi r29, 0 -/* 802A4168 0029FDC8 41 82 01 A8 */ beq lbl_802A4310 -/* 802A416C 0029FDCC 2C 1E 00 00 */ cmpwi r30, 0 -/* 802A4170 0029FDD0 41 82 01 A0 */ beq lbl_802A4310 -/* 802A4174 0029FDD4 38 1E FF FF */ addi r0, r30, -1 -/* 802A4178 0029FDD8 7F C0 00 39 */ and. r0, r30, r0 -/* 802A417C 0029FDDC 40 82 01 94 */ bne lbl_802A4310 -/* 802A4180 0029FDE0 28 1E 00 20 */ cmplwi r30, 0x20 -/* 802A4184 0029FDE4 40 80 00 08 */ bge lbl_802A418C -/* 802A4188 0029FDE8 3B C0 00 20 */ li r30, 0x20 -lbl_802A418C: -/* 802A418C 0029FDEC 2C 1C 00 00 */ cmpwi r28, 0 -/* 802A4190 0029FDF0 38 1D 00 1F */ addi r0, r29, 0x1f -/* 802A4194 0029FDF4 54 1D 00 34 */ rlwinm r29, r0, 0, 0, 0x1a -/* 802A4198 0029FDF8 41 80 00 24 */ blt lbl_802A41BC -/* 802A419C 0029FDFC 2C 1C 00 08 */ cmpwi r28, 8 -/* 802A41A0 0029FE00 40 80 00 1C */ bge lbl_802A41BC -/* 802A41A4 0029FE04 3C 80 80 53 */ lis r4, lbl_80536BB0@ha -/* 802A41A8 0029FE08 57 80 20 36 */ slwi r0, r28, 4 -/* 802A41AC 0029FE0C 38 84 6B B0 */ addi r4, r4, lbl_80536BB0@l -/* 802A41B0 0029FE10 7C 04 00 6E */ lwzux r0, r4, r0 -/* 802A41B4 0029FE14 2C 00 00 00 */ cmpwi r0, 0 -/* 802A41B8 0029FE18 40 82 00 0C */ bne lbl_802A41C4 -lbl_802A41BC: -/* 802A41BC 0029FE1C 3B E0 00 00 */ li r31, 0 -/* 802A41C0 0029FE20 48 00 01 50 */ b lbl_802A4310 -lbl_802A41C4: -/* 802A41C4 0029FE24 81 04 00 0C */ lwz r8, 0xc(r4) -/* 802A41C8 0029FE28 38 DE FF FF */ addi r6, r30, -1 -/* 802A41CC 0029FE2C 38 A0 00 00 */ li r5, 0 -/* 802A41D0 0029FE30 48 00 00 58 */ b lbl_802A4228 -lbl_802A41D4: -/* 802A41D4 0029FE34 80 E8 00 04 */ lwz r7, 4(r8) -/* 802A41D8 0029FE38 38 08 00 10 */ addi r0, r8, 0x10 -/* 802A41DC 0029FE3C 7C 00 30 38 */ and r0, r0, r6 -/* 802A41E0 0029FE40 7C 07 E8 40 */ cmplw r7, r29 -/* 802A41E4 0029FE44 7C 00 F0 50 */ subf r0, r0, r30 -/* 802A41E8 0029FE48 7C C0 00 38 */ and r0, r6, r0 -/* 802A41EC 0029FE4C 40 82 00 14 */ bne lbl_802A4200 -/* 802A41F0 0029FE50 2C 00 00 00 */ cmpwi r0, 0 -/* 802A41F4 0029FE54 40 82 00 0C */ bne lbl_802A4200 -/* 802A41F8 0029FE58 7D 05 43 78 */ mr r5, r8 -/* 802A41FC 0029FE5C 48 00 00 34 */ b lbl_802A4230 -lbl_802A4200: -/* 802A4200 0029FE60 7C 1D 02 14 */ add r0, r29, r0 -/* 802A4204 0029FE64 7C 07 00 40 */ cmplw r7, r0 -/* 802A4208 0029FE68 41 80 00 1C */ blt lbl_802A4224 -/* 802A420C 0029FE6C 2C 05 00 00 */ cmpwi r5, 0 -/* 802A4210 0029FE70 41 82 00 10 */ beq lbl_802A4220 -/* 802A4214 0029FE74 80 05 00 04 */ lwz r0, 4(r5) -/* 802A4218 0029FE78 7C 07 00 40 */ cmplw r7, r0 -/* 802A421C 0029FE7C 40 80 00 08 */ bge lbl_802A4224 -lbl_802A4220: -/* 802A4220 0029FE80 7D 05 43 78 */ mr r5, r8 -lbl_802A4224: -/* 802A4224 0029FE84 81 08 00 0C */ lwz r8, 0xc(r8) -lbl_802A4228: -/* 802A4228 0029FE88 2C 08 00 00 */ cmpwi r8, 0 -/* 802A422C 0029FE8C 40 82 FF A8 */ bne lbl_802A41D4 -lbl_802A4230: -/* 802A4230 0029FE90 2C 05 00 00 */ cmpwi r5, 0 -/* 802A4234 0029FE94 41 82 00 DC */ beq lbl_802A4310 -/* 802A4238 0029FE98 38 FE FF FF */ addi r7, r30, -1 -/* 802A423C 0029FE9C 38 05 00 10 */ addi r0, r5, 0x10 -/* 802A4240 0029FEA0 7C 00 38 38 */ and r0, r0, r7 -/* 802A4244 0029FEA4 80 C5 00 04 */ lwz r6, 4(r5) -/* 802A4248 0029FEA8 7C 00 F0 50 */ subf r0, r0, r30 -/* 802A424C 0029FEAC 7C E8 00 38 */ and r8, r7, r0 -/* 802A4250 0029FEB0 7C FD 42 14 */ add r7, r29, r8 -/* 802A4254 0029FEB4 38 07 00 10 */ addi r0, r7, 0x10 -/* 802A4258 0029FEB8 7C 06 00 40 */ cmplw r6, r0 -/* 802A425C 0029FEBC 40 81 00 48 */ ble lbl_802A42A4 -/* 802A4260 0029FEC0 7C C5 EA 14 */ add r6, r5, r29 -/* 802A4264 0029FEC4 3C 00 BA BE */ lis r0, 0xbabe -/* 802A4268 0029FEC8 7D 28 32 14 */ add r9, r8, r6 -/* 802A426C 0029FECC 90 09 00 10 */ stw r0, 0x10(r9) -/* 802A4270 0029FED0 80 05 00 04 */ lwz r0, 4(r5) -/* 802A4274 0029FED4 7C 1D 00 50 */ subf r0, r29, r0 -/* 802A4278 0029FED8 7C C8 00 50 */ subf r6, r8, r0 -/* 802A427C 0029FEDC 38 06 FF F0 */ addi r0, r6, -16 -/* 802A4280 0029FEE0 90 09 00 14 */ stw r0, 0x14(r9) -/* 802A4284 0029FEE4 80 C5 00 0C */ lwz r6, 0xc(r5) -/* 802A4288 0029FEE8 2C 06 00 00 */ cmpwi r6, 0 -/* 802A428C 0029FEEC 90 C9 00 1C */ stw r6, 0x1c(r9) -/* 802A4290 0029FEF0 39 29 00 10 */ addi r9, r9, 0x10 -/* 802A4294 0029FEF4 41 82 00 08 */ beq lbl_802A429C -/* 802A4298 0029FEF8 91 26 00 08 */ stw r9, 8(r6) -lbl_802A429C: -/* 802A429C 0029FEFC 91 25 00 0C */ stw r9, 0xc(r5) -/* 802A42A0 0029FF00 90 E5 00 04 */ stw r7, 4(r5) -lbl_802A42A4: -/* 802A42A4 0029FF04 3C C0 BA BE */ lis r6, 0xBABE0001@ha -/* 802A42A8 0029FF08 38 06 00 01 */ addi r0, r6, 0xBABE0001@l -/* 802A42AC 0029FF0C 90 05 00 00 */ stw r0, 0(r5) -/* 802A42B0 0029FF10 80 C5 00 08 */ lwz r6, 8(r5) -/* 802A42B4 0029FF14 2C 06 00 00 */ cmpwi r6, 0 -/* 802A42B8 0029FF18 41 82 00 10 */ beq lbl_802A42C8 -/* 802A42BC 0029FF1C 80 05 00 0C */ lwz r0, 0xc(r5) -/* 802A42C0 0029FF20 90 06 00 0C */ stw r0, 0xc(r6) -/* 802A42C4 0029FF24 48 00 00 0C */ b lbl_802A42D0 -lbl_802A42C8: -/* 802A42C8 0029FF28 80 05 00 0C */ lwz r0, 0xc(r5) -/* 802A42CC 0029FF2C 90 04 00 0C */ stw r0, 0xc(r4) -lbl_802A42D0: -/* 802A42D0 0029FF30 80 85 00 0C */ lwz r4, 0xc(r5) -/* 802A42D4 0029FF34 2C 04 00 00 */ cmpwi r4, 0 -/* 802A42D8 0029FF38 41 82 00 0C */ beq lbl_802A42E4 -/* 802A42DC 0029FF3C 80 05 00 08 */ lwz r0, 8(r5) -/* 802A42E0 0029FF40 90 04 00 08 */ stw r0, 8(r4) -lbl_802A42E4: -/* 802A42E4 0029FF44 38 00 00 00 */ li r0, 0 -/* 802A42E8 0029FF48 7F E5 42 14 */ add r31, r5, r8 -/* 802A42EC 0029FF4C 90 05 00 0C */ stw r0, 0xc(r5) -/* 802A42F0 0029FF50 2C 08 00 00 */ cmpwi r8, 0 -/* 802A42F4 0029FF54 3B FF 00 10 */ addi r31, r31, 0x10 -/* 802A42F8 0029FF58 90 05 00 08 */ stw r0, 8(r5) -/* 802A42FC 0029FF5C 41 82 00 14 */ beq lbl_802A4310 -/* 802A4300 0029FF60 3C 80 BA BE */ lis r4, 0xBABE0002@ha -/* 802A4304 0029FF64 38 04 00 02 */ addi r0, r4, 0xBABE0002@l -/* 802A4308 0029FF68 90 1F FF F0 */ stw r0, -0x10(r31) -/* 802A430C 0029FF6C 90 BF FF F8 */ stw r5, -8(r31) -lbl_802A4310: -/* 802A4310 0029FF70 4B FC A4 75 */ bl OSRestoreInterrupts -/* 802A4314 0029FF74 7F E3 FB 78 */ mr r3, r31 -/* 802A4318 0029FF78 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802A431C 0029FF7C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802A4320 0029FF80 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 802A4324 0029FF84 83 81 00 10 */ lwz r28, 0x10(r1) -/* 802A4328 0029FF88 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A432C 0029FF8C 7C 08 03 A6 */ mtlr r0 -/* 802A4330 0029FF90 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A4334 0029FF94 4E 80 00 20 */ blr - -.global func_802A4338 -func_802A4338: -/* 802A4338 0029FF98 4B FF FD FC */ b lbl_802A4134 - -.global func_802A433C -func_802A433C: -/* 802A433C 0029FF9C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A4340 0029FFA0 7C 08 02 A6 */ mflr r0 -/* 802A4344 0029FFA4 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A4348 0029FFA8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802A434C 0029FFAC 3B E0 FF FC */ li r31, -4 -/* 802A4350 0029FFB0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802A4354 0029FFB4 7C 9E 23 78 */ mr r30, r4 -/* 802A4358 0029FFB8 93 A1 00 14 */ stw r29, 0x14(r1) -/* 802A435C 0029FFBC 7C 7D 1B 78 */ mr r29, r3 -/* 802A4360 0029FFC0 4B FC A3 FD */ bl OSDisableInterrupts -/* 802A4364 0029FFC4 2C 1E 00 00 */ cmpwi r30, 0 -/* 802A4368 0029FFC8 41 82 01 9C */ beq lbl_802A4504 -/* 802A436C 0029FFCC 2C 1D 00 00 */ cmpwi r29, 0 -/* 802A4370 0029FFD0 41 80 00 28 */ blt lbl_802A4398 -/* 802A4374 0029FFD4 2C 1D 00 08 */ cmpwi r29, 8 -/* 802A4378 0029FFD8 40 80 00 20 */ bge lbl_802A4398 -/* 802A437C 0029FFDC 3C 80 80 53 */ lis r4, lbl_80536BB0@ha -/* 802A4380 0029FFE0 57 A0 20 36 */ slwi r0, r29, 4 -/* 802A4384 0029FFE4 38 84 6B B0 */ addi r4, r4, lbl_80536BB0@l -/* 802A4388 0029FFE8 7C A4 02 14 */ add r5, r4, r0 -/* 802A438C 0029FFEC 7C 84 00 2E */ lwzx r4, r4, r0 -/* 802A4390 0029FFF0 2C 04 00 00 */ cmpwi r4, 0 -/* 802A4394 0029FFF4 40 82 00 0C */ bne lbl_802A43A0 -lbl_802A4398: -/* 802A4398 0029FFF8 3B E0 FF FC */ li r31, -4 -/* 802A439C 0029FFFC 48 00 01 68 */ b lbl_802A4504 -lbl_802A43A0: -/* 802A43A0 002A0000 38 04 00 10 */ addi r0, r4, 0x10 -/* 802A43A4 002A0004 7C 1E 00 40 */ cmplw r30, r0 -/* 802A43A8 002A0008 41 80 01 5C */ blt lbl_802A4504 -/* 802A43AC 002A000C 80 05 00 08 */ lwz r0, 8(r5) -/* 802A43B0 002A0010 7C 04 02 14 */ add r0, r4, r0 -/* 802A43B4 002A0014 7C 1E 00 40 */ cmplw r30, r0 -/* 802A43B8 002A0018 41 81 01 4C */ bgt lbl_802A4504 -/* 802A43BC 002A001C 80 9E FF F0 */ lwz r4, -0x10(r30) -/* 802A43C0 002A0020 38 DE FF F0 */ addi r6, r30, -16 -/* 802A43C4 002A0024 3C 04 45 42 */ addis r0, r4, 0x4542 -/* 802A43C8 002A0028 28 00 00 02 */ cmplwi r0, 2 -/* 802A43CC 002A002C 40 82 00 08 */ bne lbl_802A43D4 -/* 802A43D0 002A0030 80 C6 00 08 */ lwz r6, 8(r6) -lbl_802A43D4: -/* 802A43D4 002A0034 80 86 00 00 */ lwz r4, 0(r6) -/* 802A43D8 002A0038 3C 04 45 42 */ addis r0, r4, 0x4542 -/* 802A43DC 002A003C 28 00 00 01 */ cmplwi r0, 1 -/* 802A43E0 002A0040 40 82 01 24 */ bne lbl_802A4504 -/* 802A43E4 002A0044 3C 00 BA BE */ lis r0, 0xbabe -/* 802A43E8 002A0048 90 06 00 00 */ stw r0, 0(r6) -/* 802A43EC 002A004C 80 85 00 0C */ lwz r4, 0xc(r5) -/* 802A43F0 002A0050 7C 87 23 78 */ mr r7, r4 -/* 802A43F4 002A0054 48 00 00 1C */ b lbl_802A4410 -lbl_802A43F8: -/* 802A43F8 002A0058 80 07 00 0C */ lwz r0, 0xc(r7) -/* 802A43FC 002A005C 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4400 002A0060 41 82 00 18 */ beq lbl_802A4418 -/* 802A4404 002A0064 7C 00 30 40 */ cmplw r0, r6 -/* 802A4408 002A0068 41 81 00 10 */ bgt lbl_802A4418 -/* 802A440C 002A006C 7C 07 03 78 */ mr r7, r0 -lbl_802A4410: -/* 802A4410 002A0070 2C 07 00 00 */ cmpwi r7, 0 -/* 802A4414 002A0074 40 82 FF E4 */ bne lbl_802A43F8 -lbl_802A4418: -/* 802A4418 002A0078 2C 07 00 00 */ cmpwi r7, 0 -/* 802A441C 002A007C 41 82 00 30 */ beq lbl_802A444C -/* 802A4420 002A0080 7C 06 38 40 */ cmplw r6, r7 -/* 802A4424 002A0084 40 81 00 28 */ ble lbl_802A444C -/* 802A4428 002A0088 90 E6 00 08 */ stw r7, 8(r6) -/* 802A442C 002A008C 80 07 00 0C */ lwz r0, 0xc(r7) -/* 802A4430 002A0090 90 06 00 0C */ stw r0, 0xc(r6) -/* 802A4434 002A0094 90 C7 00 0C */ stw r6, 0xc(r7) -/* 802A4438 002A0098 80 86 00 0C */ lwz r4, 0xc(r6) -/* 802A443C 002A009C 2C 04 00 00 */ cmpwi r4, 0 -/* 802A4440 002A00A0 41 82 00 2C */ beq lbl_802A446C -/* 802A4444 002A00A4 90 C4 00 08 */ stw r6, 8(r4) -/* 802A4448 002A00A8 48 00 00 24 */ b lbl_802A446C -lbl_802A444C: -/* 802A444C 002A00AC 90 86 00 0C */ stw r4, 0xc(r6) -/* 802A4450 002A00B0 38 00 00 00 */ li r0, 0 -/* 802A4454 002A00B4 90 C5 00 0C */ stw r6, 0xc(r5) -/* 802A4458 002A00B8 90 06 00 08 */ stw r0, 8(r6) -/* 802A445C 002A00BC 80 86 00 0C */ lwz r4, 0xc(r6) -/* 802A4460 002A00C0 2C 04 00 00 */ cmpwi r4, 0 -/* 802A4464 002A00C4 41 82 00 08 */ beq lbl_802A446C -/* 802A4468 002A00C8 90 C4 00 08 */ stw r6, 8(r4) -lbl_802A446C: -/* 802A446C 002A00CC 2C 06 00 00 */ cmpwi r6, 0 -/* 802A4470 002A00D0 41 82 00 44 */ beq lbl_802A44B4 -/* 802A4474 002A00D4 80 06 00 04 */ lwz r0, 4(r6) -/* 802A4478 002A00D8 80 A6 00 0C */ lwz r5, 0xc(r6) -/* 802A447C 002A00DC 7C 86 02 14 */ add r4, r6, r0 -/* 802A4480 002A00E0 38 04 00 10 */ addi r0, r4, 0x10 -/* 802A4484 002A00E4 7C 05 00 40 */ cmplw r5, r0 -/* 802A4488 002A00E8 40 82 00 2C */ bne lbl_802A44B4 -/* 802A448C 002A00EC 80 85 00 0C */ lwz r4, 0xc(r5) -/* 802A4490 002A00F0 2C 04 00 00 */ cmpwi r4, 0 -/* 802A4494 002A00F4 90 86 00 0C */ stw r4, 0xc(r6) -/* 802A4498 002A00F8 41 82 00 08 */ beq lbl_802A44A0 -/* 802A449C 002A00FC 90 C4 00 08 */ stw r6, 8(r4) -lbl_802A44A0: -/* 802A44A0 002A0100 80 86 00 04 */ lwz r4, 4(r6) -/* 802A44A4 002A0104 80 05 00 04 */ lwz r0, 4(r5) -/* 802A44A8 002A0108 7C 80 22 14 */ add r4, r0, r4 -/* 802A44AC 002A010C 38 04 00 10 */ addi r0, r4, 0x10 -/* 802A44B0 002A0110 90 06 00 04 */ stw r0, 4(r6) -lbl_802A44B4: -/* 802A44B4 002A0114 80 A6 00 08 */ lwz r5, 8(r6) -/* 802A44B8 002A0118 2C 05 00 00 */ cmpwi r5, 0 -/* 802A44BC 002A011C 41 82 00 44 */ beq lbl_802A4500 -/* 802A44C0 002A0120 80 05 00 04 */ lwz r0, 4(r5) -/* 802A44C4 002A0124 80 C5 00 0C */ lwz r6, 0xc(r5) -/* 802A44C8 002A0128 7C 85 02 14 */ add r4, r5, r0 -/* 802A44CC 002A012C 38 04 00 10 */ addi r0, r4, 0x10 -/* 802A44D0 002A0130 7C 06 00 40 */ cmplw r6, r0 -/* 802A44D4 002A0134 40 82 00 2C */ bne lbl_802A4500 -/* 802A44D8 002A0138 80 86 00 0C */ lwz r4, 0xc(r6) -/* 802A44DC 002A013C 2C 04 00 00 */ cmpwi r4, 0 -/* 802A44E0 002A0140 90 85 00 0C */ stw r4, 0xc(r5) -/* 802A44E4 002A0144 41 82 00 08 */ beq lbl_802A44EC -/* 802A44E8 002A0148 90 A4 00 08 */ stw r5, 8(r4) -lbl_802A44EC: -/* 802A44EC 002A014C 80 85 00 04 */ lwz r4, 4(r5) -/* 802A44F0 002A0150 80 06 00 04 */ lwz r0, 4(r6) -/* 802A44F4 002A0154 7C 80 22 14 */ add r4, r0, r4 -/* 802A44F8 002A0158 38 04 00 10 */ addi r0, r4, 0x10 -/* 802A44FC 002A015C 90 05 00 04 */ stw r0, 4(r5) -lbl_802A4500: -/* 802A4500 002A0160 3B E0 00 00 */ li r31, 0 -lbl_802A4504: -/* 802A4504 002A0164 4B FC A2 81 */ bl OSRestoreInterrupts -/* 802A4508 002A0168 7F E3 FB 78 */ mr r3, r31 -/* 802A450C 002A016C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802A4510 002A0170 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802A4514 002A0174 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 802A4518 002A0178 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A451C 002A017C 7C 08 03 A6 */ mtlr r0 -/* 802A4520 002A0180 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A4524 002A0184 4E 80 00 20 */ blr - -.global func_802A4528 -func_802A4528: -/* 802A4528 002A0188 38 80 00 00 */ li r4, 0 -/* 802A452C 002A018C 3C A0 80 53 */ lis r5, lbl_80536CB0@ha -/* 802A4530 002A0190 3C C0 80 53 */ lis r6, lbl_80536C30@ha -/* 802A4534 002A0194 38 00 00 02 */ li r0, 2 -/* 802A4538 002A0198 90 8D AE 10 */ stw r4, lbl_806400D0-_SDA_BASE_(r13) -/* 802A453C 002A019C 38 A5 6C B0 */ addi r5, r5, lbl_80536CB0@l -/* 802A4540 002A01A0 38 C6 6C 30 */ addi r6, r6, lbl_80536C30@l -/* 802A4544 002A01A4 38 60 FF FF */ li r3, -1 -/* 802A4548 002A01A8 90 8D AE 14 */ stw r4, lbl_806400D4-_SDA_BASE_(r13) -/* 802A454C 002A01AC 7C 09 03 A6 */ mtctr r0 -lbl_802A4550: -/* 802A4550 002A01B0 90 85 00 00 */ stw r4, 0(r5) -/* 802A4554 002A01B4 90 66 00 00 */ stw r3, 0(r6) -/* 802A4558 002A01B8 90 85 00 04 */ stw r4, 4(r5) -/* 802A455C 002A01BC 90 66 00 04 */ stw r3, 4(r6) -/* 802A4560 002A01C0 90 85 00 08 */ stw r4, 8(r5) -/* 802A4564 002A01C4 90 66 00 08 */ stw r3, 8(r6) -/* 802A4568 002A01C8 90 85 00 0C */ stw r4, 0xc(r5) -/* 802A456C 002A01CC 90 66 00 0C */ stw r3, 0xc(r6) -/* 802A4570 002A01D0 90 85 00 10 */ stw r4, 0x10(r5) -/* 802A4574 002A01D4 90 66 00 10 */ stw r3, 0x10(r6) -/* 802A4578 002A01D8 90 85 00 14 */ stw r4, 0x14(r5) -/* 802A457C 002A01DC 90 66 00 14 */ stw r3, 0x14(r6) -/* 802A4580 002A01E0 90 85 00 18 */ stw r4, 0x18(r5) -/* 802A4584 002A01E4 90 66 00 18 */ stw r3, 0x18(r6) -/* 802A4588 002A01E8 90 85 00 1C */ stw r4, 0x1c(r5) -/* 802A458C 002A01EC 90 66 00 1C */ stw r3, 0x1c(r6) -/* 802A4590 002A01F0 90 85 00 20 */ stw r4, 0x20(r5) -/* 802A4594 002A01F4 90 66 00 20 */ stw r3, 0x20(r6) -/* 802A4598 002A01F8 90 85 00 24 */ stw r4, 0x24(r5) -/* 802A459C 002A01FC 90 66 00 24 */ stw r3, 0x24(r6) -/* 802A45A0 002A0200 90 85 00 28 */ stw r4, 0x28(r5) -/* 802A45A4 002A0204 90 66 00 28 */ stw r3, 0x28(r6) -/* 802A45A8 002A0208 90 85 00 2C */ stw r4, 0x2c(r5) -/* 802A45AC 002A020C 90 66 00 2C */ stw r3, 0x2c(r6) -/* 802A45B0 002A0210 90 85 00 30 */ stw r4, 0x30(r5) -/* 802A45B4 002A0214 90 66 00 30 */ stw r3, 0x30(r6) -/* 802A45B8 002A0218 90 85 00 34 */ stw r4, 0x34(r5) -/* 802A45BC 002A021C 90 66 00 34 */ stw r3, 0x34(r6) -/* 802A45C0 002A0220 90 85 00 38 */ stw r4, 0x38(r5) -/* 802A45C4 002A0224 90 66 00 38 */ stw r3, 0x38(r6) -/* 802A45C8 002A0228 90 85 00 3C */ stw r4, 0x3c(r5) -/* 802A45CC 002A022C 38 A5 00 40 */ addi r5, r5, 0x40 -/* 802A45D0 002A0230 90 66 00 3C */ stw r3, 0x3c(r6) -/* 802A45D4 002A0234 38 C6 00 40 */ addi r6, r6, 0x40 -/* 802A45D8 002A0238 42 00 FF 78 */ bdnz lbl_802A4550 -/* 802A45DC 002A023C 4E 80 00 20 */ blr - -.global func_802A45E0 -func_802A45E0: -/* 802A45E0 002A0240 80 CD AE 10 */ lwz r6, lbl_806400D0-_SDA_BASE_(r13) -/* 802A45E4 002A0244 3D 00 80 53 */ lis r8, lbl_80536CB0@ha -/* 802A45E8 002A0248 80 AD AE 14 */ lwz r5, lbl_806400D4-_SDA_BASE_(r13) -/* 802A45EC 002A024C 3D 20 80 53 */ lis r9, lbl_80536C30@ha -/* 802A45F0 002A0250 38 C6 00 01 */ addi r6, r6, 1 -/* 802A45F4 002A0254 38 00 00 20 */ li r0, 0x20 -/* 802A45F8 002A0258 38 A5 00 01 */ addi r5, r5, 1 -/* 802A45FC 002A025C 90 CD AE 10 */ stw r6, lbl_806400D0-_SDA_BASE_(r13) -/* 802A4600 002A0260 39 08 6C B0 */ addi r8, r8, lbl_80536CB0@l -/* 802A4604 002A0264 39 29 6C 30 */ addi r9, r9, lbl_80536C30@l -/* 802A4608 002A0268 90 AD AE 14 */ stw r5, lbl_806400D4-_SDA_BASE_(r13) -/* 802A460C 002A026C 38 E0 00 00 */ li r7, 0 -/* 802A4610 002A0270 7C 09 03 A6 */ mtctr r0 -lbl_802A4614: -/* 802A4614 002A0274 80 08 00 00 */ lwz r0, 0(r8) -/* 802A4618 002A0278 2C 00 00 00 */ cmpwi r0, 0 -/* 802A461C 002A027C 40 82 00 30 */ bne lbl_802A464C -/* 802A4620 002A0280 80 09 00 00 */ lwz r0, 0(r9) -/* 802A4624 002A0284 2C 00 FF FF */ cmpwi r0, -1 -/* 802A4628 002A0288 40 82 00 24 */ bne lbl_802A464C -/* 802A462C 002A028C 3C C0 80 53 */ lis r6, lbl_80536CB0@ha -/* 802A4630 002A0290 3C A0 80 53 */ lis r5, lbl_80536C30@ha -/* 802A4634 002A0294 54 E0 10 3A */ slwi r0, r7, 2 -/* 802A4638 002A0298 38 C6 6C B0 */ addi r6, r6, lbl_80536CB0@l -/* 802A463C 002A029C 38 A5 6C 30 */ addi r5, r5, lbl_80536C30@l -/* 802A4640 002A02A0 7C 66 01 2E */ stwx r3, r6, r0 -/* 802A4644 002A02A4 7C 85 01 2E */ stwx r4, r5, r0 -/* 802A4648 002A02A8 4E 80 00 20 */ blr -lbl_802A464C: -/* 802A464C 002A02AC 39 08 00 04 */ addi r8, r8, 4 -/* 802A4650 002A02B0 39 29 00 04 */ addi r9, r9, 4 -/* 802A4654 002A02B4 38 E7 00 01 */ addi r7, r7, 1 -/* 802A4658 002A02B8 42 00 FF BC */ bdnz lbl_802A4614 -/* 802A465C 002A02BC 4E 80 00 20 */ blr - -.global cCameraManager_PushWorldUpVector -cCameraManager_PushWorldUpVector: -/* 802A4660 002A02C0 80 6D AE 14 */ lwz r3, lbl_806400D4-_SDA_BASE_(r13) -/* 802A4664 002A02C4 38 03 FF FF */ addi r0, r3, -1 -/* 802A4668 002A02C8 90 0D AE 14 */ stw r0, lbl_806400D4-_SDA_BASE_(r13) -/* 802A466C 002A02CC 4E 80 00 20 */ blr - -.global func_802A4670 -func_802A4670: -/* 802A4670 002A02D0 80 AD AE 10 */ lwz r5, lbl_806400D0-_SDA_BASE_(r13) -/* 802A4674 002A02D4 3C C0 80 53 */ lis r6, lbl_80536CB0@ha -/* 802A4678 002A02D8 3C E0 80 53 */ lis r7, lbl_80536C30@ha -/* 802A467C 002A02DC 38 00 00 20 */ li r0, 0x20 -/* 802A4680 002A02E0 38 A5 FF FF */ addi r5, r5, -1 -/* 802A4684 002A02E4 38 C6 6C B0 */ addi r6, r6, lbl_80536CB0@l -/* 802A4688 002A02E8 90 AD AE 10 */ stw r5, lbl_806400D0-_SDA_BASE_(r13) -/* 802A468C 002A02EC 38 E7 6C 30 */ addi r7, r7, lbl_80536C30@l -/* 802A4690 002A02F0 38 A0 00 00 */ li r5, 0 -/* 802A4694 002A02F4 7C 09 03 A6 */ mtctr r0 -lbl_802A4698: -/* 802A4698 002A02F8 80 06 00 00 */ lwz r0, 0(r6) -/* 802A469C 002A02FC 7C 03 00 40 */ cmplw r3, r0 -/* 802A46A0 002A0300 40 82 00 38 */ bne lbl_802A46D8 -/* 802A46A4 002A0304 80 07 00 00 */ lwz r0, 0(r7) -/* 802A46A8 002A0308 7C 04 00 00 */ cmpw r4, r0 -/* 802A46AC 002A030C 40 82 00 2C */ bne lbl_802A46D8 -/* 802A46B0 002A0310 3C 80 80 53 */ lis r4, lbl_80536CB0@ha -/* 802A46B4 002A0314 3C 60 80 53 */ lis r3, lbl_80536C30@ha -/* 802A46B8 002A0318 54 A6 10 3A */ slwi r6, r5, 2 -/* 802A46BC 002A031C 38 A0 00 00 */ li r5, 0 -/* 802A46C0 002A0320 38 84 6C B0 */ addi r4, r4, lbl_80536CB0@l -/* 802A46C4 002A0324 38 63 6C 30 */ addi r3, r3, lbl_80536C30@l -/* 802A46C8 002A0328 38 00 FF FF */ li r0, -1 -/* 802A46CC 002A032C 7C A4 31 2E */ stwx r5, r4, r6 -/* 802A46D0 002A0330 7C 03 31 2E */ stwx r0, r3, r6 -/* 802A46D4 002A0334 4E 80 00 20 */ blr -lbl_802A46D8: -/* 802A46D8 002A0338 38 C6 00 04 */ addi r6, r6, 4 -/* 802A46DC 002A033C 38 E7 00 04 */ addi r7, r7, 4 -/* 802A46E0 002A0340 38 A5 00 01 */ addi r5, r5, 1 -/* 802A46E4 002A0344 42 00 FF B4 */ bdnz lbl_802A4698 -/* 802A46E8 002A0348 4E 80 00 20 */ blr - -.global func_802A46EC -func_802A46EC: -/* 802A46EC 002A034C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802A46F0 002A0350 7C 08 02 A6 */ mflr r0 -/* 802A46F4 002A0354 90 01 00 14 */ stw r0, 0x14(r1) -/* 802A46F8 002A0358 80 0D 89 94 */ lwz r0, lbl_8063DC54-_SDA_BASE_(r13) -/* 802A46FC 002A035C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802A4700 002A0360 3B E0 00 00 */ li r31, 0 -/* 802A4704 002A0364 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4708 002A0368 93 C1 00 08 */ stw r30, 8(r1) -/* 802A470C 002A036C 41 82 00 14 */ beq lbl_802A4720 -/* 802A4710 002A0370 4B FF E1 E5 */ bl IPCGetBufferLo -/* 802A4714 002A0374 90 6D AE 20 */ stw r3, lbl_806400E0-_SDA_BASE_(r13) -/* 802A4718 002A0378 4B FF E1 D5 */ bl IPCGetBufferHi -/* 802A471C 002A037C 90 6D AE 24 */ stw r3, lbl_806400E4-_SDA_BASE_(r13) -lbl_802A4720: -/* 802A4720 002A0380 80 6D AE 20 */ lwz r3, lbl_806400E0-_SDA_BASE_(r13) -/* 802A4724 002A0384 80 0D 89 94 */ lwz r0, lbl_8063DC54-_SDA_BASE_(r13) -/* 802A4728 002A0388 38 63 00 1F */ addi r3, r3, 0x1f -/* 802A472C 002A038C 54 63 00 34 */ rlwinm r3, r3, 0, 0, 0x1a -/* 802A4730 002A0390 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4734 002A0394 90 6D AE 18 */ stw r3, lbl_806400D8-_SDA_BASE_(r13) -/* 802A4738 002A0398 41 82 00 2C */ beq lbl_802A4764 -/* 802A473C 002A039C 80 0D AE 24 */ lwz r0, lbl_806400E4-_SDA_BASE_(r13) -/* 802A4740 002A03A0 38 83 00 40 */ addi r4, r3, 0x40 -/* 802A4744 002A03A4 7C 04 00 40 */ cmplw r4, r0 -/* 802A4748 002A03A8 40 81 00 1C */ ble lbl_802A4764 -/* 802A474C 002A03AC 3C 60 80 44 */ lis r3, lbl_8043BF90@ha -/* 802A4750 002A03B0 38 63 BF 90 */ addi r3, r3, lbl_8043BF90@l -/* 802A4754 002A03B4 4C C6 31 82 */ crclr 6 -/* 802A4758 002A03B8 4B D6 33 6D */ bl func_80007AC4 -/* 802A475C 002A03BC 3B E0 FF EA */ li r31, -22 -/* 802A4760 002A03C0 48 00 00 98 */ b lbl_802A47F8 -lbl_802A4764: -/* 802A4764 002A03C4 38 8D 89 98 */ addi r4, r13, lbl_8063DC58-_SDA_BASE_ -/* 802A4768 002A03C8 4B F2 9B 69 */ bl strcpy -/* 802A476C 002A03CC 80 6D AE 18 */ lwz r3, lbl_806400D8-_SDA_BASE_(r13) -/* 802A4770 002A03D0 38 80 00 00 */ li r4, 0 -/* 802A4774 002A03D4 4B FF E9 E5 */ bl IOS_Open -/* 802A4778 002A03D8 2C 03 00 00 */ cmpwi r3, 0 -/* 802A477C 002A03DC 90 6D 89 90 */ stw r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4780 002A03E0 40 80 00 0C */ bge lbl_802A478C -/* 802A4784 002A03E4 7C 7F 1B 78 */ mr r31, r3 -/* 802A4788 002A03E8 48 00 00 70 */ b lbl_802A47F8 -lbl_802A478C: -/* 802A478C 002A03EC 80 8D 89 94 */ lwz r4, lbl_8063DC54-_SDA_BASE_(r13) -/* 802A4790 002A03F0 83 CD AE 18 */ lwz r30, lbl_806400D8-_SDA_BASE_(r13) -/* 802A4794 002A03F4 2C 04 00 00 */ cmpwi r4, 0 -/* 802A4798 002A03F8 41 82 00 2C */ beq lbl_802A47C4 -/* 802A479C 002A03FC 80 0D AE 24 */ lwz r0, lbl_806400E4-_SDA_BASE_(r13) -/* 802A47A0 002A0400 38 7E 15 40 */ addi r3, r30, 0x1540 -/* 802A47A4 002A0404 7C 03 00 40 */ cmplw r3, r0 -/* 802A47A8 002A0408 40 81 00 1C */ ble lbl_802A47C4 -/* 802A47AC 002A040C 3C 60 80 44 */ lis r3, lbl_8043BF90@ha -/* 802A47B0 002A0410 38 63 BF 90 */ addi r3, r3, lbl_8043BF90@l -/* 802A47B4 002A0414 4C C6 31 82 */ crclr 6 -/* 802A47B8 002A0418 4B D6 33 0D */ bl func_80007AC4 -/* 802A47BC 002A041C 3B E0 FF EA */ li r31, -22 -/* 802A47C0 002A0420 48 00 00 38 */ b lbl_802A47F8 -lbl_802A47C4: -/* 802A47C4 002A0424 2C 04 00 00 */ cmpwi r4, 0 -/* 802A47C8 002A0428 41 82 00 14 */ beq lbl_802A47DC -/* 802A47CC 002A042C 38 7E 15 40 */ addi r3, r30, 0x1540 -/* 802A47D0 002A0430 4B FF E1 2D */ bl IPCSetBufferLo -/* 802A47D4 002A0434 38 00 00 00 */ li r0, 0 -/* 802A47D8 002A0438 90 0D 89 94 */ stw r0, lbl_8063DC54-_SDA_BASE_(r13) -lbl_802A47DC: -/* 802A47DC 002A043C 7F C3 F3 78 */ mr r3, r30 -/* 802A47E0 002A0440 38 80 15 40 */ li r4, 0x1540 -/* 802A47E4 002A0444 4B FF F8 21 */ bl func_802A4004 -/* 802A47E8 002A0448 2C 03 00 00 */ cmpwi r3, 0 -/* 802A47EC 002A044C 90 6D AE 28 */ stw r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A47F0 002A0450 40 80 00 08 */ bge lbl_802A47F8 -/* 802A47F4 002A0454 3B E0 FF EA */ li r31, -22 -lbl_802A47F8: -/* 802A47F8 002A0458 7F E3 FB 78 */ mr r3, r31 -/* 802A47FC 002A045C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802A4800 002A0460 83 C1 00 08 */ lwz r30, 8(r1) -/* 802A4804 002A0464 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802A4808 002A0468 7C 08 03 A6 */ mtlr r0 -/* 802A480C 002A046C 38 21 00 10 */ addi r1, r1, 0x10 -/* 802A4810 002A0470 4E 80 00 20 */ blr -lbl_802A4814: -/* 802A4814 002A0474 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802A4818 002A0478 7C 08 02 A6 */ mflr r0 -/* 802A481C 002A047C 2C 83 00 00 */ cmpwi cr1, r3, 0 -/* 802A4820 002A0480 90 01 00 14 */ stw r0, 0x14(r1) -/* 802A4824 002A0484 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802A4828 002A0488 7C 9F 23 78 */ mr r31, r4 -/* 802A482C 002A048C 93 C1 00 08 */ stw r30, 8(r1) -/* 802A4830 002A0490 7C 7E 1B 78 */ mr r30, r3 -/* 802A4834 002A0494 41 84 00 F4 */ blt cr1, lbl_802A4928 -/* 802A4838 002A0498 80 04 01 08 */ lwz r0, 0x108(r4) -/* 802A483C 002A049C 2C 00 00 03 */ cmpwi r0, 3 -/* 802A4840 002A04A0 41 82 00 5C */ beq lbl_802A489C -/* 802A4844 002A04A4 40 80 00 14 */ bge lbl_802A4858 -/* 802A4848 002A04A8 2C 00 00 01 */ cmpwi r0, 1 -/* 802A484C 002A04AC 41 82 00 18 */ beq lbl_802A4864 -/* 802A4850 002A04B0 40 80 00 28 */ bge lbl_802A4878 -/* 802A4854 002A04B4 48 00 00 D4 */ b lbl_802A4928 -lbl_802A4858: -/* 802A4858 002A04B8 2C 00 00 05 */ cmpwi r0, 5 -/* 802A485C 002A04BC 40 80 00 CC */ bge lbl_802A4928 -/* 802A4860 002A04C0 48 00 00 94 */ b lbl_802A48F4 -lbl_802A4864: -/* 802A4864 002A04C4 40 86 00 C4 */ bne cr1, lbl_802A4928 -/* 802A4868 002A04C8 80 64 01 0C */ lwz r3, 0x10c(r4) -/* 802A486C 002A04CC 38 A0 00 1C */ li r5, 0x1c -/* 802A4870 002A04D0 4B D5 F7 91 */ bl memcpy -/* 802A4874 002A04D4 48 00 00 B4 */ b lbl_802A4928 -lbl_802A4878: -/* 802A4878 002A04D8 40 86 00 B0 */ bne cr1, lbl_802A4928 -/* 802A487C 002A04DC 38 04 00 3F */ addi r0, r4, 0x3f -/* 802A4880 002A04E0 80 64 01 0C */ lwz r3, 0x10c(r4) -/* 802A4884 002A04E4 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a -/* 802A4888 002A04E8 38 04 00 5F */ addi r0, r4, 0x5f -/* 802A488C 002A04EC 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a -/* 802A4890 002A04F0 80 04 00 00 */ lwz r0, 0(r4) -/* 802A4894 002A04F4 90 03 00 00 */ stw r0, 0(r3) -/* 802A4898 002A04F8 48 00 00 90 */ b lbl_802A4928 -lbl_802A489C: -/* 802A489C 002A04FC 40 86 00 8C */ bne cr1, lbl_802A4928 -/* 802A48A0 002A0500 38 04 00 5F */ addi r0, r4, 0x5f -/* 802A48A4 002A0504 80 64 01 0C */ lwz r3, 0x10c(r4) -/* 802A48A8 002A0508 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a -/* 802A48AC 002A050C 80 05 00 00 */ lwz r0, 0(r5) -/* 802A48B0 002A0510 90 03 00 00 */ stw r0, 0(r3) -/* 802A48B4 002A0514 A0 05 00 04 */ lhz r0, 4(r5) -/* 802A48B8 002A0518 80 64 01 10 */ lwz r3, 0x110(r4) -/* 802A48BC 002A051C B0 03 00 00 */ sth r0, 0(r3) -/* 802A48C0 002A0520 88 05 00 49 */ lbz r0, 0x49(r5) -/* 802A48C4 002A0524 80 64 01 14 */ lwz r3, 0x114(r4) -/* 802A48C8 002A0528 90 03 00 00 */ stw r0, 0(r3) -/* 802A48CC 002A052C 88 05 00 46 */ lbz r0, 0x46(r5) -/* 802A48D0 002A0530 80 64 01 18 */ lwz r3, 0x118(r4) -/* 802A48D4 002A0534 90 03 00 00 */ stw r0, 0(r3) -/* 802A48D8 002A0538 88 05 00 47 */ lbz r0, 0x47(r5) -/* 802A48DC 002A053C 80 64 01 1C */ lwz r3, 0x11c(r4) -/* 802A48E0 002A0540 90 03 00 00 */ stw r0, 0(r3) -/* 802A48E4 002A0544 88 05 00 48 */ lbz r0, 0x48(r5) -/* 802A48E8 002A0548 80 64 01 20 */ lwz r3, 0x120(r4) -/* 802A48EC 002A054C 90 03 00 00 */ stw r0, 0(r3) -/* 802A48F0 002A0550 48 00 00 38 */ b lbl_802A4928 -lbl_802A48F4: -/* 802A48F4 002A0554 40 86 00 34 */ bne cr1, lbl_802A4928 -/* 802A48F8 002A0558 38 04 00 3F */ addi r0, r4, 0x3f -/* 802A48FC 002A055C 80 64 01 0C */ lwz r3, 0x10c(r4) -/* 802A4900 002A0560 54 05 00 34 */ rlwinm r5, r0, 0, 0, 0x1a -/* 802A4904 002A0564 38 05 00 5F */ addi r0, r5, 0x5f -/* 802A4908 002A0568 54 06 00 34 */ rlwinm r6, r0, 0, 0, 0x1a -/* 802A490C 002A056C 80 A6 00 00 */ lwz r5, 0(r6) -/* 802A4910 002A0570 38 06 00 23 */ addi r0, r6, 0x23 -/* 802A4914 002A0574 54 06 00 34 */ rlwinm r6, r0, 0, 0, 0x1a -/* 802A4918 002A0578 90 A3 00 00 */ stw r5, 0(r3) -/* 802A491C 002A057C 80 06 00 00 */ lwz r0, 0(r6) -/* 802A4920 002A0580 80 64 01 10 */ lwz r3, 0x110(r4) -/* 802A4924 002A0584 90 03 00 00 */ stw r0, 0(r3) -lbl_802A4928: -/* 802A4928 002A0588 38 00 00 00 */ li r0, 0 -/* 802A492C 002A058C 90 0D AE 1C */ stw r0, lbl_806400DC-_SDA_BASE_(r13) -/* 802A4930 002A0590 81 9F 01 00 */ lwz r12, 0x100(r31) -/* 802A4934 002A0594 2C 0C 00 00 */ cmpwi r12, 0 -/* 802A4938 002A0598 41 82 00 14 */ beq lbl_802A494C -/* 802A493C 002A059C 7F C3 F3 78 */ mr r3, r30 -/* 802A4940 002A05A0 80 9F 01 04 */ lwz r4, 0x104(r31) -/* 802A4944 002A05A4 7D 89 03 A6 */ mtctr r12 -/* 802A4948 002A05A8 4E 80 04 21 */ bctrl -lbl_802A494C: -/* 802A494C 002A05AC 2C 1F 00 00 */ cmpwi r31, 0 -/* 802A4950 002A05B0 41 82 00 10 */ beq lbl_802A4960 -/* 802A4954 002A05B4 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4958 002A05B8 7F E4 FB 78 */ mr r4, r31 -/* 802A495C 002A05BC 4B FF F9 E1 */ bl func_802A433C -lbl_802A4960: -/* 802A4960 002A05C0 7F C3 F3 78 */ mr r3, r30 -/* 802A4964 002A05C4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802A4968 002A05C8 83 C1 00 08 */ lwz r30, 8(r1) -/* 802A496C 002A05CC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802A4970 002A05D0 7C 08 03 A6 */ mtlr r0 -/* 802A4974 002A05D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 802A4978 002A05D8 4E 80 00 20 */ blr - -.global func_802A497C -func_802A497C: -/* 802A497C 002A05DC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802A4980 002A05E0 7C 08 02 A6 */ mflr r0 -/* 802A4984 002A05E4 90 01 00 34 */ stw r0, 0x34(r1) -/* 802A4988 002A05E8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A498C 002A05EC 4B F2 27 95 */ bl _savegpr_25 -/* 802A4990 002A05F0 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4994 002A05F4 7C 79 1B 78 */ mr r25, r3 -/* 802A4998 002A05F8 7C 9A 23 78 */ mr r26, r4 -/* 802A499C 002A05FC 7C BB 2B 78 */ mr r27, r5 -/* 802A49A0 002A0600 7C DC 33 78 */ mr r28, r6 -/* 802A49A4 002A0604 7C FD 3B 78 */ mr r29, r7 -/* 802A49A8 002A0608 3B C0 00 00 */ li r30, 0 -/* 802A49AC 002A060C 41 82 00 24 */ beq lbl_802A49D0 -/* 802A49B0 002A0610 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A49B4 002A0614 2C 00 00 00 */ cmpwi r0, 0 -/* 802A49B8 002A0618 41 80 00 18 */ blt lbl_802A49D0 -/* 802A49BC 002A061C 38 80 00 40 */ li r4, 0x40 -/* 802A49C0 002A0620 4B FF DF 45 */ bl strnlen -/* 802A49C4 002A0624 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A49C8 002A0628 7C 7F 1B 78 */ mr r31, r3 -/* 802A49CC 002A062C 40 82 00 0C */ bne lbl_802A49D8 -lbl_802A49D0: -/* 802A49D0 002A0630 3B E0 FF 9B */ li r31, -101 -/* 802A49D4 002A0634 48 00 00 68 */ b lbl_802A4A3C -lbl_802A49D8: -/* 802A49D8 002A0638 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A49DC 002A063C 38 80 01 40 */ li r4, 0x140 -/* 802A49E0 002A0640 38 A0 00 20 */ li r5, 0x20 -/* 802A49E4 002A0644 4B FF F9 55 */ bl func_802A4338 -/* 802A49E8 002A0648 2C 03 00 00 */ cmpwi r3, 0 -/* 802A49EC 002A064C 7C 7E 1B 78 */ mr r30, r3 -/* 802A49F0 002A0650 40 82 00 0C */ bne lbl_802A49FC -/* 802A49F4 002A0654 3B E0 FF EA */ li r31, -22 -/* 802A49F8 002A0658 48 00 00 44 */ b lbl_802A4A3C -lbl_802A49FC: -/* 802A49FC 002A065C 7F 24 CB 78 */ mr r4, r25 -/* 802A4A00 002A0660 38 BF 00 01 */ addi r5, r31, 1 -/* 802A4A04 002A0664 38 63 00 06 */ addi r3, r3, 6 -/* 802A4A08 002A0668 4B D5 F5 F9 */ bl memcpy -/* 802A4A0C 002A066C 9B 5E 00 49 */ stb r26, 0x49(r30) -/* 802A4A10 002A0670 7F C5 F3 78 */ mr r5, r30 -/* 802A4A14 002A0674 38 80 00 03 */ li r4, 3 -/* 802A4A18 002A0678 38 C0 00 4C */ li r6, 0x4c -/* 802A4A1C 002A067C 9B 7E 00 46 */ stb r27, 0x46(r30) -/* 802A4A20 002A0680 38 E0 00 00 */ li r7, 0 -/* 802A4A24 002A0684 39 00 00 00 */ li r8, 0 -/* 802A4A28 002A0688 9B 9E 00 47 */ stb r28, 0x47(r30) -/* 802A4A2C 002A068C 9B BE 00 48 */ stb r29, 0x48(r30) -/* 802A4A30 002A0690 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4A34 002A0694 4B FF F0 BD */ bl IOS_Ioctl -/* 802A4A38 002A0698 7C 7F 1B 78 */ mr r31, r3 -lbl_802A4A3C: -/* 802A4A3C 002A069C 2C 1E 00 00 */ cmpwi r30, 0 -/* 802A4A40 002A06A0 41 82 00 14 */ beq lbl_802A4A54 -/* 802A4A44 002A06A4 41 82 00 10 */ beq lbl_802A4A54 -/* 802A4A48 002A06A8 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4A4C 002A06AC 7F C4 F3 78 */ mr r4, r30 -/* 802A4A50 002A06B0 4B FF F8 ED */ bl func_802A433C -lbl_802A4A54: -/* 802A4A54 002A06B4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A4A58 002A06B8 7F E3 FB 78 */ mr r3, r31 -/* 802A4A5C 002A06BC 4B F2 27 11 */ bl _restgpr_25 -/* 802A4A60 002A06C0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802A4A64 002A06C4 7C 08 03 A6 */ mtlr r0 -/* 802A4A68 002A06C8 38 21 00 30 */ addi r1, r1, 0x30 -/* 802A4A6C 002A06CC 4E 80 00 20 */ blr - -.global func_802A4A70 -func_802A4A70: -/* 802A4A70 002A06D0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802A4A74 002A06D4 7C 08 02 A6 */ mflr r0 -/* 802A4A78 002A06D8 90 01 00 34 */ stw r0, 0x34(r1) -/* 802A4A7C 002A06DC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A4A80 002A06E0 4B F2 26 99 */ bl _savegpr_23 -/* 802A4A84 002A06E4 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4A88 002A06E8 7C 77 1B 78 */ mr r23, r3 -/* 802A4A8C 002A06EC 7C 98 23 78 */ mr r24, r4 -/* 802A4A90 002A06F0 7C B9 2B 78 */ mr r25, r5 -/* 802A4A94 002A06F4 7C DA 33 78 */ mr r26, r6 -/* 802A4A98 002A06F8 7C FB 3B 78 */ mr r27, r7 -/* 802A4A9C 002A06FC 7D 1C 43 78 */ mr r28, r8 -/* 802A4AA0 002A0700 7D 3D 4B 78 */ mr r29, r9 -/* 802A4AA4 002A0704 41 82 00 24 */ beq lbl_802A4AC8 -/* 802A4AA8 002A0708 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4AAC 002A070C 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4AB0 002A0710 41 80 00 18 */ blt lbl_802A4AC8 -/* 802A4AB4 002A0714 38 80 00 40 */ li r4, 0x40 -/* 802A4AB8 002A0718 4B FF DE 4D */ bl strnlen -/* 802A4ABC 002A071C 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A4AC0 002A0720 7C 7F 1B 78 */ mr r31, r3 -/* 802A4AC4 002A0724 40 82 00 0C */ bne lbl_802A4AD0 -lbl_802A4AC8: -/* 802A4AC8 002A0728 38 60 FF 9B */ li r3, -101 -/* 802A4ACC 002A072C 48 00 00 80 */ b lbl_802A4B4C -lbl_802A4AD0: -/* 802A4AD0 002A0730 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4AD4 002A0734 38 80 01 40 */ li r4, 0x140 -/* 802A4AD8 002A0738 38 A0 00 20 */ li r5, 0x20 -/* 802A4ADC 002A073C 4B FF F8 5D */ bl func_802A4338 -/* 802A4AE0 002A0740 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4AE4 002A0744 7C 7E 1B 78 */ mr r30, r3 -/* 802A4AE8 002A0748 40 82 00 0C */ bne lbl_802A4AF4 -/* 802A4AEC 002A074C 38 60 FF 8A */ li r3, -118 -/* 802A4AF0 002A0750 48 00 00 5C */ b lbl_802A4B4C -lbl_802A4AF4: -/* 802A4AF4 002A0754 93 83 01 00 */ stw r28, 0x100(r3) -/* 802A4AF8 002A0758 38 00 00 00 */ li r0, 0 -/* 802A4AFC 002A075C 7E E4 BB 78 */ mr r4, r23 -/* 802A4B00 002A0760 38 BF 00 01 */ addi r5, r31, 1 -/* 802A4B04 002A0764 93 A3 01 04 */ stw r29, 0x104(r3) -/* 802A4B08 002A0768 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A4B0C 002A076C 38 63 00 06 */ addi r3, r3, 6 -/* 802A4B10 002A0770 4B D5 F4 F1 */ bl memcpy -/* 802A4B14 002A0774 9B 1E 00 49 */ stb r24, 0x49(r30) -/* 802A4B18 002A0778 3D 20 80 2A */ lis r9, lbl_802A4814@ha -/* 802A4B1C 002A077C 7F C5 F3 78 */ mr r5, r30 -/* 802A4B20 002A0780 7F CA F3 78 */ mr r10, r30 -/* 802A4B24 002A0784 9B 3E 00 46 */ stb r25, 0x46(r30) -/* 802A4B28 002A0788 39 29 48 14 */ addi r9, r9, lbl_802A4814@l -/* 802A4B2C 002A078C 38 80 00 03 */ li r4, 3 -/* 802A4B30 002A0790 38 C0 00 4C */ li r6, 0x4c -/* 802A4B34 002A0794 9B 5E 00 47 */ stb r26, 0x47(r30) -/* 802A4B38 002A0798 38 E0 00 00 */ li r7, 0 -/* 802A4B3C 002A079C 39 00 00 00 */ li r8, 0 -/* 802A4B40 002A07A0 9B 7E 00 48 */ stb r27, 0x48(r30) -/* 802A4B44 002A07A4 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4B48 002A07A8 4B FF EE 71 */ bl IOS_IoctlAsync -lbl_802A4B4C: -/* 802A4B4C 002A07AC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A4B50 002A07B0 4B F2 26 15 */ bl _restgpr_23 -/* 802A4B54 002A07B4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802A4B58 002A07B8 7C 08 03 A6 */ mtlr r0 -/* 802A4B5C 002A07BC 38 21 00 30 */ addi r1, r1, 0x30 -/* 802A4B60 002A07C0 4E 80 00 20 */ blr - -.global func_802A4B64 -func_802A4B64: -/* 802A4B64 002A07C4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A4B68 002A07C8 7C 08 02 A6 */ mflr r0 -/* 802A4B6C 002A07CC 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A4B70 002A07D0 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A4B74 002A07D4 4B F2 25 B1 */ bl _savegpr_26 -/* 802A4B78 002A07D8 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4B7C 002A07DC 7C 7A 1B 78 */ mr r26, r3 -/* 802A4B80 002A07E0 7C 9B 23 78 */ mr r27, r4 -/* 802A4B84 002A07E4 7C BC 2B 78 */ mr r28, r5 -/* 802A4B88 002A07E8 3B A0 00 00 */ li r29, 0 -/* 802A4B8C 002A07EC 41 82 00 34 */ beq lbl_802A4BC0 -/* 802A4B90 002A07F0 2C 05 00 00 */ cmpwi r5, 0 -/* 802A4B94 002A07F4 41 82 00 2C */ beq lbl_802A4BC0 -/* 802A4B98 002A07F8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4B9C 002A07FC 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4BA0 002A0800 41 80 00 20 */ blt lbl_802A4BC0 -/* 802A4BA4 002A0804 54 80 06 FF */ clrlwi. r0, r4, 0x1b -/* 802A4BA8 002A0808 40 82 00 18 */ bne lbl_802A4BC0 -/* 802A4BAC 002A080C 38 80 00 40 */ li r4, 0x40 -/* 802A4BB0 002A0810 4B FF DD 55 */ bl strnlen -/* 802A4BB4 002A0814 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A4BB8 002A0818 7C 7F 1B 78 */ mr r31, r3 -/* 802A4BBC 002A081C 40 82 00 0C */ bne lbl_802A4BC8 -lbl_802A4BC0: -/* 802A4BC0 002A0820 3B E0 FF 9B */ li r31, -101 -/* 802A4BC4 002A0824 48 00 00 C0 */ b lbl_802A4C84 -lbl_802A4BC8: -/* 802A4BC8 002A0828 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4BCC 002A082C 38 80 01 40 */ li r4, 0x140 -/* 802A4BD0 002A0830 38 A0 00 20 */ li r5, 0x20 -/* 802A4BD4 002A0834 4B FF F7 65 */ bl func_802A4338 -/* 802A4BD8 002A0838 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4BDC 002A083C 7C 7D 1B 78 */ mr r29, r3 -/* 802A4BE0 002A0840 40 82 00 0C */ bne lbl_802A4BEC -/* 802A4BE4 002A0844 3B E0 FF EA */ li r31, -22 -/* 802A4BE8 002A0848 48 00 00 9C */ b lbl_802A4C84 -lbl_802A4BEC: -/* 802A4BEC 002A084C 38 03 00 3F */ addi r0, r3, 0x3f -/* 802A4BF0 002A0850 7F 44 D3 78 */ mr r4, r26 -/* 802A4BF4 002A0854 54 1E 00 34 */ rlwinm r30, r0, 0, 0, 0x1a -/* 802A4BF8 002A0858 38 BF 00 01 */ addi r5, r31, 1 -/* 802A4BFC 002A085C 7F C3 F3 78 */ mr r3, r30 -/* 802A4C00 002A0860 4B D5 F4 01 */ bl memcpy -/* 802A4C04 002A0864 93 DD 00 00 */ stw r30, 0(r29) -/* 802A4C08 002A0868 38 60 00 40 */ li r3, 0x40 -/* 802A4C0C 002A086C 38 1E 00 5F */ addi r0, r30, 0x5f -/* 802A4C10 002A0870 2C 1B 00 00 */ cmpwi r27, 0 -/* 802A4C14 002A0874 90 7D 00 04 */ stw r3, 4(r29) -/* 802A4C18 002A0878 54 1E 00 34 */ rlwinm r30, r0, 0, 0, 0x1a -/* 802A4C1C 002A087C 38 60 00 04 */ li r3, 4 -/* 802A4C20 002A0880 93 DD 00 08 */ stw r30, 8(r29) -/* 802A4C24 002A0884 90 7D 00 0C */ stw r3, 0xc(r29) -/* 802A4C28 002A0888 41 82 00 30 */ beq lbl_802A4C58 -/* 802A4C2C 002A088C 80 1C 00 00 */ lwz r0, 0(r28) -/* 802A4C30 002A0890 38 A0 00 02 */ li r5, 2 -/* 802A4C34 002A0894 38 C0 00 02 */ li r6, 2 -/* 802A4C38 002A0898 90 1E 00 00 */ stw r0, 0(r30) -/* 802A4C3C 002A089C 93 7D 00 10 */ stw r27, 0x10(r29) -/* 802A4C40 002A08A0 80 1C 00 00 */ lwz r0, 0(r28) -/* 802A4C44 002A08A4 1C 00 00 0D */ mulli r0, r0, 0xd -/* 802A4C48 002A08A8 90 1D 00 14 */ stw r0, 0x14(r29) -/* 802A4C4C 002A08AC 93 DD 00 18 */ stw r30, 0x18(r29) -/* 802A4C50 002A08B0 90 7D 00 1C */ stw r3, 0x1c(r29) -/* 802A4C54 002A08B4 48 00 00 0C */ b lbl_802A4C60 -lbl_802A4C58: -/* 802A4C58 002A08B8 38 A0 00 01 */ li r5, 1 -/* 802A4C5C 002A08BC 38 C0 00 01 */ li r6, 1 -lbl_802A4C60: -/* 802A4C60 002A08C0 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4C64 002A08C4 7F A7 EB 78 */ mr r7, r29 -/* 802A4C68 002A08C8 38 80 00 04 */ li r4, 4 -/* 802A4C6C 002A08CC 4B FF F1 D5 */ bl IOS_Ioctlv -/* 802A4C70 002A08D0 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4C74 002A08D4 7C 7F 1B 78 */ mr r31, r3 -/* 802A4C78 002A08D8 40 82 00 0C */ bne lbl_802A4C84 -/* 802A4C7C 002A08DC 80 1E 00 00 */ lwz r0, 0(r30) -/* 802A4C80 002A08E0 90 1C 00 00 */ stw r0, 0(r28) -lbl_802A4C84: -/* 802A4C84 002A08E4 2C 1D 00 00 */ cmpwi r29, 0 -/* 802A4C88 002A08E8 41 82 00 14 */ beq lbl_802A4C9C -/* 802A4C8C 002A08EC 41 82 00 10 */ beq lbl_802A4C9C -/* 802A4C90 002A08F0 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4C94 002A08F4 7F A4 EB 78 */ mr r4, r29 -/* 802A4C98 002A08F8 4B FF F6 A5 */ bl func_802A433C -lbl_802A4C9C: -/* 802A4C9C 002A08FC 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A4CA0 002A0900 7F E3 FB 78 */ mr r3, r31 -/* 802A4CA4 002A0904 4B F2 24 CD */ bl _restgpr_26 -/* 802A4CA8 002A0908 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A4CAC 002A090C 7C 08 03 A6 */ mtlr r0 -/* 802A4CB0 002A0910 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A4CB4 002A0914 4E 80 00 20 */ blr - -.global func_802A4CB8 -func_802A4CB8: -/* 802A4CB8 002A0918 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802A4CBC 002A091C 7C 08 02 A6 */ mflr r0 -/* 802A4CC0 002A0920 90 01 00 34 */ stw r0, 0x34(r1) -/* 802A4CC4 002A0924 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A4CC8 002A0928 4B F2 24 59 */ bl _savegpr_25 -/* 802A4CCC 002A092C 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4CD0 002A0930 7C 79 1B 78 */ mr r25, r3 -/* 802A4CD4 002A0934 7C 9A 23 78 */ mr r26, r4 -/* 802A4CD8 002A0938 7C BB 2B 78 */ mr r27, r5 -/* 802A4CDC 002A093C 7C DC 33 78 */ mr r28, r6 -/* 802A4CE0 002A0940 7C FD 3B 78 */ mr r29, r7 -/* 802A4CE4 002A0944 41 82 00 34 */ beq lbl_802A4D18 -/* 802A4CE8 002A0948 2C 05 00 00 */ cmpwi r5, 0 -/* 802A4CEC 002A094C 41 82 00 2C */ beq lbl_802A4D18 -/* 802A4CF0 002A0950 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4CF4 002A0954 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4CF8 002A0958 41 80 00 20 */ blt lbl_802A4D18 -/* 802A4CFC 002A095C 54 80 06 FF */ clrlwi. r0, r4, 0x1b -/* 802A4D00 002A0960 40 82 00 18 */ bne lbl_802A4D18 -/* 802A4D04 002A0964 38 80 00 40 */ li r4, 0x40 -/* 802A4D08 002A0968 4B FF DB FD */ bl strnlen -/* 802A4D0C 002A096C 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A4D10 002A0970 7C 7F 1B 78 */ mr r31, r3 -/* 802A4D14 002A0974 40 82 00 0C */ bne lbl_802A4D20 -lbl_802A4D18: -/* 802A4D18 002A0978 38 60 FF 9B */ li r3, -101 -/* 802A4D1C 002A097C 48 00 00 CC */ b lbl_802A4DE8 -lbl_802A4D20: -/* 802A4D20 002A0980 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4D24 002A0984 38 80 01 40 */ li r4, 0x140 -/* 802A4D28 002A0988 38 A0 00 20 */ li r5, 0x20 -/* 802A4D2C 002A098C 4B FF F6 0D */ bl func_802A4338 -/* 802A4D30 002A0990 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4D34 002A0994 7C 7E 1B 78 */ mr r30, r3 -/* 802A4D38 002A0998 40 82 00 0C */ bne lbl_802A4D44 -/* 802A4D3C 002A099C 38 60 FF 8A */ li r3, -118 -/* 802A4D40 002A09A0 48 00 00 A8 */ b lbl_802A4DE8 -lbl_802A4D44: -/* 802A4D44 002A09A4 93 83 01 00 */ stw r28, 0x100(r3) -/* 802A4D48 002A09A8 38 C0 00 02 */ li r6, 2 -/* 802A4D4C 002A09AC 38 03 00 3F */ addi r0, r3, 0x3f -/* 802A4D50 002A09B0 7F 24 CB 78 */ mr r4, r25 -/* 802A4D54 002A09B4 93 A3 01 04 */ stw r29, 0x104(r3) -/* 802A4D58 002A09B8 54 1D 00 34 */ rlwinm r29, r0, 0, 0, 0x1a -/* 802A4D5C 002A09BC 38 BF 00 01 */ addi r5, r31, 1 -/* 802A4D60 002A09C0 90 C3 01 08 */ stw r6, 0x108(r3) -/* 802A4D64 002A09C4 93 63 01 0C */ stw r27, 0x10c(r3) -/* 802A4D68 002A09C8 7F A3 EB 78 */ mr r3, r29 -/* 802A4D6C 002A09CC 4B D5 F2 95 */ bl memcpy -/* 802A4D70 002A09D0 93 BE 00 00 */ stw r29, 0(r30) -/* 802A4D74 002A09D4 38 60 00 40 */ li r3, 0x40 -/* 802A4D78 002A09D8 38 1D 00 5F */ addi r0, r29, 0x5f -/* 802A4D7C 002A09DC 2C 1A 00 00 */ cmpwi r26, 0 -/* 802A4D80 002A09E0 90 7E 00 04 */ stw r3, 4(r30) -/* 802A4D84 002A09E4 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a -/* 802A4D88 002A09E8 38 60 00 04 */ li r3, 4 -/* 802A4D8C 002A09EC 90 9E 00 08 */ stw r4, 8(r30) -/* 802A4D90 002A09F0 90 7E 00 0C */ stw r3, 0xc(r30) -/* 802A4D94 002A09F4 41 82 00 30 */ beq lbl_802A4DC4 -/* 802A4D98 002A09F8 80 1B 00 00 */ lwz r0, 0(r27) -/* 802A4D9C 002A09FC 38 A0 00 02 */ li r5, 2 -/* 802A4DA0 002A0A00 38 C0 00 02 */ li r6, 2 -/* 802A4DA4 002A0A04 90 04 00 00 */ stw r0, 0(r4) -/* 802A4DA8 002A0A08 93 5E 00 10 */ stw r26, 0x10(r30) -/* 802A4DAC 002A0A0C 80 1B 00 00 */ lwz r0, 0(r27) -/* 802A4DB0 002A0A10 1C 00 00 0D */ mulli r0, r0, 0xd -/* 802A4DB4 002A0A14 90 1E 00 14 */ stw r0, 0x14(r30) -/* 802A4DB8 002A0A18 90 9E 00 18 */ stw r4, 0x18(r30) -/* 802A4DBC 002A0A1C 90 7E 00 1C */ stw r3, 0x1c(r30) -/* 802A4DC0 002A0A20 48 00 00 0C */ b lbl_802A4DCC -lbl_802A4DC4: -/* 802A4DC4 002A0A24 38 A0 00 01 */ li r5, 1 -/* 802A4DC8 002A0A28 38 C0 00 01 */ li r6, 1 -lbl_802A4DCC: -/* 802A4DCC 002A0A2C 3D 00 80 2A */ lis r8, lbl_802A4814@ha -/* 802A4DD0 002A0A30 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4DD4 002A0A34 7F C7 F3 78 */ mr r7, r30 -/* 802A4DD8 002A0A38 7F C9 F3 78 */ mr r9, r30 -/* 802A4DDC 002A0A3C 39 08 48 14 */ addi r8, r8, lbl_802A4814@l -/* 802A4DE0 002A0A40 38 80 00 04 */ li r4, 4 -/* 802A4DE4 002A0A44 4B FF EF 79 */ bl IOS_IoctlvAsync -lbl_802A4DE8: -/* 802A4DE8 002A0A48 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A4DEC 002A0A4C 4B F2 23 81 */ bl _restgpr_25 -/* 802A4DF0 002A0A50 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802A4DF4 002A0A54 7C 08 03 A6 */ mtlr r0 -/* 802A4DF8 002A0A58 38 21 00 30 */ addi r1, r1, 0x30 -/* 802A4DFC 002A0A5C 4E 80 00 20 */ blr - -.global func_802A4E00 -func_802A4E00: -/* 802A4E00 002A0A60 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802A4E04 002A0A64 7C 08 02 A6 */ mflr r0 -/* 802A4E08 002A0A68 90 01 00 34 */ stw r0, 0x34(r1) -/* 802A4E0C 002A0A6C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A4E10 002A0A70 4B F2 23 09 */ bl _savegpr_23 -/* 802A4E14 002A0A74 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4E18 002A0A78 7C 7E 1B 78 */ mr r30, r3 -/* 802A4E1C 002A0A7C 7C 97 23 78 */ mr r23, r4 -/* 802A4E20 002A0A80 7C B8 2B 78 */ mr r24, r5 -/* 802A4E24 002A0A84 7C D9 33 78 */ mr r25, r6 -/* 802A4E28 002A0A88 7C FA 3B 78 */ mr r26, r7 -/* 802A4E2C 002A0A8C 7D 1B 43 78 */ mr r27, r8 -/* 802A4E30 002A0A90 7D 3C 4B 78 */ mr r28, r9 -/* 802A4E34 002A0A94 3B A0 00 00 */ li r29, 0 -/* 802A4E38 002A0A98 41 82 00 54 */ beq lbl_802A4E8C -/* 802A4E3C 002A0A9C 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4E40 002A0AA0 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4E44 002A0AA4 41 80 00 48 */ blt lbl_802A4E8C -/* 802A4E48 002A0AA8 38 80 00 40 */ li r4, 0x40 -/* 802A4E4C 002A0AAC 4B FF DA B9 */ bl strnlen -/* 802A4E50 002A0AB0 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A4E54 002A0AB4 7C 7F 1B 78 */ mr r31, r3 -/* 802A4E58 002A0AB8 41 82 00 34 */ beq lbl_802A4E8C -/* 802A4E5C 002A0ABC 2C 17 00 00 */ cmpwi r23, 0 -/* 802A4E60 002A0AC0 41 82 00 2C */ beq lbl_802A4E8C -/* 802A4E64 002A0AC4 2C 18 00 00 */ cmpwi r24, 0 -/* 802A4E68 002A0AC8 41 82 00 24 */ beq lbl_802A4E8C -/* 802A4E6C 002A0ACC 2C 19 00 00 */ cmpwi r25, 0 -/* 802A4E70 002A0AD0 41 82 00 1C */ beq lbl_802A4E8C -/* 802A4E74 002A0AD4 2C 1A 00 00 */ cmpwi r26, 0 -/* 802A4E78 002A0AD8 41 82 00 14 */ beq lbl_802A4E8C -/* 802A4E7C 002A0ADC 2C 1B 00 00 */ cmpwi r27, 0 -/* 802A4E80 002A0AE0 41 82 00 0C */ beq lbl_802A4E8C -/* 802A4E84 002A0AE4 2C 1C 00 00 */ cmpwi r28, 0 -/* 802A4E88 002A0AE8 40 82 00 0C */ bne lbl_802A4E94 -lbl_802A4E8C: -/* 802A4E8C 002A0AEC 3B E0 FF 9B */ li r31, -101 -/* 802A4E90 002A0AF0 48 00 00 94 */ b lbl_802A4F24 -lbl_802A4E94: -/* 802A4E94 002A0AF4 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4E98 002A0AF8 38 80 01 40 */ li r4, 0x140 -/* 802A4E9C 002A0AFC 38 A0 00 20 */ li r5, 0x20 -/* 802A4EA0 002A0B00 4B FF F4 99 */ bl func_802A4338 -/* 802A4EA4 002A0B04 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4EA8 002A0B08 7C 7D 1B 78 */ mr r29, r3 -/* 802A4EAC 002A0B0C 40 82 00 0C */ bne lbl_802A4EB8 -/* 802A4EB0 002A0B10 3B E0 FF EA */ li r31, -22 -/* 802A4EB4 002A0B14 48 00 00 70 */ b lbl_802A4F24 -lbl_802A4EB8: -/* 802A4EB8 002A0B18 7F C4 F3 78 */ mr r4, r30 -/* 802A4EBC 002A0B1C 38 BF 00 01 */ addi r5, r31, 1 -/* 802A4EC0 002A0B20 4B D5 F1 41 */ bl memcpy -/* 802A4EC4 002A0B24 38 1D 00 5F */ addi r0, r29, 0x5f -/* 802A4EC8 002A0B28 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4ECC 002A0B2C 54 1E 00 34 */ rlwinm r30, r0, 0, 0, 0x1a -/* 802A4ED0 002A0B30 7F A5 EB 78 */ mr r5, r29 -/* 802A4ED4 002A0B34 7F C7 F3 78 */ mr r7, r30 -/* 802A4ED8 002A0B38 38 80 00 06 */ li r4, 6 -/* 802A4EDC 002A0B3C 38 C0 00 40 */ li r6, 0x40 -/* 802A4EE0 002A0B40 39 00 00 4C */ li r8, 0x4c -/* 802A4EE4 002A0B44 4B FF EC 0D */ bl IOS_Ioctl -/* 802A4EE8 002A0B48 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4EEC 002A0B4C 7C 7F 1B 78 */ mr r31, r3 -/* 802A4EF0 002A0B50 40 82 00 34 */ bne lbl_802A4F24 -/* 802A4EF4 002A0B54 80 1E 00 00 */ lwz r0, 0(r30) -/* 802A4EF8 002A0B58 90 17 00 00 */ stw r0, 0(r23) -/* 802A4EFC 002A0B5C A0 1E 00 04 */ lhz r0, 4(r30) -/* 802A4F00 002A0B60 B0 18 00 00 */ sth r0, 0(r24) -/* 802A4F04 002A0B64 88 1E 00 49 */ lbz r0, 0x49(r30) -/* 802A4F08 002A0B68 90 19 00 00 */ stw r0, 0(r25) -/* 802A4F0C 002A0B6C 88 1E 00 46 */ lbz r0, 0x46(r30) -/* 802A4F10 002A0B70 90 1A 00 00 */ stw r0, 0(r26) -/* 802A4F14 002A0B74 88 1E 00 47 */ lbz r0, 0x47(r30) -/* 802A4F18 002A0B78 90 1B 00 00 */ stw r0, 0(r27) -/* 802A4F1C 002A0B7C 88 1E 00 48 */ lbz r0, 0x48(r30) -/* 802A4F20 002A0B80 90 1C 00 00 */ stw r0, 0(r28) -lbl_802A4F24: -/* 802A4F24 002A0B84 2C 1D 00 00 */ cmpwi r29, 0 -/* 802A4F28 002A0B88 41 82 00 14 */ beq lbl_802A4F3C -/* 802A4F2C 002A0B8C 41 82 00 10 */ beq lbl_802A4F3C -/* 802A4F30 002A0B90 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4F34 002A0B94 7F A4 EB 78 */ mr r4, r29 -/* 802A4F38 002A0B98 4B FF F4 05 */ bl func_802A433C -lbl_802A4F3C: -/* 802A4F3C 002A0B9C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A4F40 002A0BA0 7F E3 FB 78 */ mr r3, r31 -/* 802A4F44 002A0BA4 4B F2 22 21 */ bl _restgpr_23 -/* 802A4F48 002A0BA8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802A4F4C 002A0BAC 7C 08 03 A6 */ mtlr r0 -/* 802A4F50 002A0BB0 38 21 00 30 */ addi r1, r1, 0x30 -/* 802A4F54 002A0BB4 4E 80 00 20 */ blr - -.global func_802A4F58 -func_802A4F58: -/* 802A4F58 002A0BB8 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 802A4F5C 002A0BBC 7C 08 02 A6 */ mflr r0 -/* 802A4F60 002A0BC0 90 01 00 44 */ stw r0, 0x44(r1) -/* 802A4F64 002A0BC4 39 61 00 40 */ addi r11, r1, 0x40 -/* 802A4F68 002A0BC8 4B F2 21 A9 */ bl _savegpr_21 -/* 802A4F6C 002A0BCC 2C 03 00 00 */ cmpwi r3, 0 -/* 802A4F70 002A0BD0 83 A1 00 48 */ lwz r29, 0x48(r1) -/* 802A4F74 002A0BD4 7C 75 1B 78 */ mr r21, r3 -/* 802A4F78 002A0BD8 7C 96 23 78 */ mr r22, r4 -/* 802A4F7C 002A0BDC 7C B7 2B 78 */ mr r23, r5 -/* 802A4F80 002A0BE0 7C D8 33 78 */ mr r24, r6 -/* 802A4F84 002A0BE4 7C F9 3B 78 */ mr r25, r7 -/* 802A4F88 002A0BE8 7D 1A 43 78 */ mr r26, r8 -/* 802A4F8C 002A0BEC 7D 3B 4B 78 */ mr r27, r9 -/* 802A4F90 002A0BF0 7D 5C 53 78 */ mr r28, r10 -/* 802A4F94 002A0BF4 41 82 00 54 */ beq lbl_802A4FE8 -/* 802A4F98 002A0BF8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A4F9C 002A0BFC 2C 00 00 00 */ cmpwi r0, 0 -/* 802A4FA0 002A0C00 41 80 00 48 */ blt lbl_802A4FE8 -/* 802A4FA4 002A0C04 38 80 00 40 */ li r4, 0x40 -/* 802A4FA8 002A0C08 4B FF D9 5D */ bl strnlen -/* 802A4FAC 002A0C0C 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A4FB0 002A0C10 7C 7F 1B 78 */ mr r31, r3 -/* 802A4FB4 002A0C14 41 82 00 34 */ beq lbl_802A4FE8 -/* 802A4FB8 002A0C18 2C 16 00 00 */ cmpwi r22, 0 -/* 802A4FBC 002A0C1C 41 82 00 2C */ beq lbl_802A4FE8 -/* 802A4FC0 002A0C20 2C 17 00 00 */ cmpwi r23, 0 -/* 802A4FC4 002A0C24 41 82 00 24 */ beq lbl_802A4FE8 -/* 802A4FC8 002A0C28 2C 18 00 00 */ cmpwi r24, 0 -/* 802A4FCC 002A0C2C 41 82 00 1C */ beq lbl_802A4FE8 -/* 802A4FD0 002A0C30 2C 19 00 00 */ cmpwi r25, 0 -/* 802A4FD4 002A0C34 41 82 00 14 */ beq lbl_802A4FE8 -/* 802A4FD8 002A0C38 2C 1A 00 00 */ cmpwi r26, 0 -/* 802A4FDC 002A0C3C 41 82 00 0C */ beq lbl_802A4FE8 -/* 802A4FE0 002A0C40 2C 1B 00 00 */ cmpwi r27, 0 -/* 802A4FE4 002A0C44 40 82 00 0C */ bne lbl_802A4FF0 -lbl_802A4FE8: -/* 802A4FE8 002A0C48 38 60 FF 9B */ li r3, -101 -/* 802A4FEC 002A0C4C 48 00 00 88 */ b lbl_802A5074 -lbl_802A4FF0: -/* 802A4FF0 002A0C50 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A4FF4 002A0C54 38 80 01 40 */ li r4, 0x140 -/* 802A4FF8 002A0C58 38 A0 00 20 */ li r5, 0x20 -/* 802A4FFC 002A0C5C 4B FF F3 3D */ bl func_802A4338 -/* 802A5000 002A0C60 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5004 002A0C64 7C 7E 1B 78 */ mr r30, r3 -/* 802A5008 002A0C68 40 82 00 0C */ bne lbl_802A5014 -/* 802A500C 002A0C6C 38 60 FF 8A */ li r3, -118 -/* 802A5010 002A0C70 48 00 00 64 */ b lbl_802A5074 -lbl_802A5014: -/* 802A5014 002A0C74 92 C3 01 0C */ stw r22, 0x10c(r3) -/* 802A5018 002A0C78 38 00 00 03 */ li r0, 3 -/* 802A501C 002A0C7C 7E A4 AB 78 */ mr r4, r21 -/* 802A5020 002A0C80 38 BF 00 01 */ addi r5, r31, 1 -/* 802A5024 002A0C84 92 E3 01 10 */ stw r23, 0x110(r3) -/* 802A5028 002A0C88 93 03 01 14 */ stw r24, 0x114(r3) -/* 802A502C 002A0C8C 93 23 01 18 */ stw r25, 0x118(r3) -/* 802A5030 002A0C90 93 43 01 1C */ stw r26, 0x11c(r3) -/* 802A5034 002A0C94 93 63 01 20 */ stw r27, 0x120(r3) -/* 802A5038 002A0C98 93 83 01 00 */ stw r28, 0x100(r3) -/* 802A503C 002A0C9C 93 A3 01 04 */ stw r29, 0x104(r3) -/* 802A5040 002A0CA0 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A5044 002A0CA4 4B D5 EF BD */ bl memcpy -/* 802A5048 002A0CA8 38 1E 00 5F */ addi r0, r30, 0x5f -/* 802A504C 002A0CAC 3D 20 80 2A */ lis r9, lbl_802A4814@ha -/* 802A5050 002A0CB0 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5054 002A0CB4 7F C5 F3 78 */ mr r5, r30 -/* 802A5058 002A0CB8 7F CA F3 78 */ mr r10, r30 -/* 802A505C 002A0CBC 54 07 00 34 */ rlwinm r7, r0, 0, 0, 0x1a -/* 802A5060 002A0CC0 39 29 48 14 */ addi r9, r9, lbl_802A4814@l -/* 802A5064 002A0CC4 38 80 00 06 */ li r4, 6 -/* 802A5068 002A0CC8 38 C0 00 40 */ li r6, 0x40 -/* 802A506C 002A0CCC 39 00 00 4C */ li r8, 0x4c -/* 802A5070 002A0CD0 4B FF E9 49 */ bl IOS_IoctlAsync -lbl_802A5074: -/* 802A5074 002A0CD4 39 61 00 40 */ addi r11, r1, 0x40 -/* 802A5078 002A0CD8 4B F2 20 E5 */ bl _restgpr_21 -/* 802A507C 002A0CDC 80 01 00 44 */ lwz r0, 0x44(r1) -/* 802A5080 002A0CE0 7C 08 03 A6 */ mtlr r0 -/* 802A5084 002A0CE4 38 21 00 40 */ addi r1, r1, 0x40 -/* 802A5088 002A0CE8 4E 80 00 20 */ blr - -.global func_802A508C -func_802A508C: -/* 802A508C 002A0CEC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A5090 002A0CF0 7C 08 02 A6 */ mflr r0 -/* 802A5094 002A0CF4 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5098 002A0CF8 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A509C 002A0CFC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802A50A0 002A0D00 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802A50A4 002A0D04 3B C0 00 00 */ li r30, 0 -/* 802A50A8 002A0D08 93 A1 00 14 */ stw r29, 0x14(r1) -/* 802A50AC 002A0D0C 7C 7D 1B 78 */ mr r29, r3 -/* 802A50B0 002A0D10 41 82 00 24 */ beq lbl_802A50D4 -/* 802A50B4 002A0D14 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A50B8 002A0D18 2C 00 00 00 */ cmpwi r0, 0 -/* 802A50BC 002A0D1C 41 80 00 18 */ blt lbl_802A50D4 -/* 802A50C0 002A0D20 38 80 00 40 */ li r4, 0x40 -/* 802A50C4 002A0D24 4B FF D8 41 */ bl strnlen -/* 802A50C8 002A0D28 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A50CC 002A0D2C 7C 7F 1B 78 */ mr r31, r3 -/* 802A50D0 002A0D30 40 82 00 0C */ bne lbl_802A50DC -lbl_802A50D4: -/* 802A50D4 002A0D34 3B E0 FF 9B */ li r31, -101 -/* 802A50D8 002A0D38 48 00 00 54 */ b lbl_802A512C -lbl_802A50DC: -/* 802A50DC 002A0D3C 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A50E0 002A0D40 38 80 01 40 */ li r4, 0x140 -/* 802A50E4 002A0D44 38 A0 00 20 */ li r5, 0x20 -/* 802A50E8 002A0D48 4B FF F2 51 */ bl func_802A4338 -/* 802A50EC 002A0D4C 2C 03 00 00 */ cmpwi r3, 0 -/* 802A50F0 002A0D50 7C 7E 1B 78 */ mr r30, r3 -/* 802A50F4 002A0D54 40 82 00 0C */ bne lbl_802A5100 -/* 802A50F8 002A0D58 3B E0 FF EA */ li r31, -22 -/* 802A50FC 002A0D5C 48 00 00 30 */ b lbl_802A512C -lbl_802A5100: -/* 802A5100 002A0D60 7F A4 EB 78 */ mr r4, r29 -/* 802A5104 002A0D64 38 BF 00 01 */ addi r5, r31, 1 -/* 802A5108 002A0D68 4B D5 EE F9 */ bl memcpy -/* 802A510C 002A0D6C 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5110 002A0D70 7F C5 F3 78 */ mr r5, r30 -/* 802A5114 002A0D74 38 80 00 07 */ li r4, 7 -/* 802A5118 002A0D78 38 C0 00 40 */ li r6, 0x40 -/* 802A511C 002A0D7C 38 E0 00 00 */ li r7, 0 -/* 802A5120 002A0D80 39 00 00 00 */ li r8, 0 -/* 802A5124 002A0D84 4B FF E9 CD */ bl IOS_Ioctl -/* 802A5128 002A0D88 7C 7F 1B 78 */ mr r31, r3 -lbl_802A512C: -/* 802A512C 002A0D8C 2C 1E 00 00 */ cmpwi r30, 0 -/* 802A5130 002A0D90 41 82 00 14 */ beq lbl_802A5144 -/* 802A5134 002A0D94 41 82 00 10 */ beq lbl_802A5144 -/* 802A5138 002A0D98 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A513C 002A0D9C 7F C4 F3 78 */ mr r4, r30 -/* 802A5140 002A0DA0 4B FF F1 FD */ bl func_802A433C -lbl_802A5144: -/* 802A5144 002A0DA4 7F E3 FB 78 */ mr r3, r31 -/* 802A5148 002A0DA8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802A514C 002A0DAC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802A5150 002A0DB0 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 802A5154 002A0DB4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A5158 002A0DB8 7C 08 03 A6 */ mtlr r0 -/* 802A515C 002A0DBC 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A5160 002A0DC0 4E 80 00 20 */ blr - -.global func_802A5164 -func_802A5164: -/* 802A5164 002A0DC4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A5168 002A0DC8 7C 08 02 A6 */ mflr r0 -/* 802A516C 002A0DCC 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A5170 002A0DD0 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A5174 002A0DD4 4B F2 1F B5 */ bl _savegpr_27 -/* 802A5178 002A0DD8 2C 03 00 00 */ cmpwi r3, 0 -/* 802A517C 002A0DDC 7C 7B 1B 78 */ mr r27, r3 -/* 802A5180 002A0DE0 7C 9C 23 78 */ mr r28, r4 -/* 802A5184 002A0DE4 7C BD 2B 78 */ mr r29, r5 -/* 802A5188 002A0DE8 41 82 00 24 */ beq lbl_802A51AC -/* 802A518C 002A0DEC 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5190 002A0DF0 2C 00 00 00 */ cmpwi r0, 0 -/* 802A5194 002A0DF4 41 80 00 18 */ blt lbl_802A51AC -/* 802A5198 002A0DF8 38 80 00 40 */ li r4, 0x40 -/* 802A519C 002A0DFC 4B FF D7 69 */ bl strnlen -/* 802A51A0 002A0E00 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A51A4 002A0E04 7C 7F 1B 78 */ mr r31, r3 -/* 802A51A8 002A0E08 40 82 00 0C */ bne lbl_802A51B4 -lbl_802A51AC: -/* 802A51AC 002A0E0C 38 60 FF 9B */ li r3, -101 -/* 802A51B0 002A0E10 48 00 00 6C */ b lbl_802A521C -lbl_802A51B4: -/* 802A51B4 002A0E14 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A51B8 002A0E18 38 80 01 40 */ li r4, 0x140 -/* 802A51BC 002A0E1C 38 A0 00 20 */ li r5, 0x20 -/* 802A51C0 002A0E20 4B FF F1 79 */ bl func_802A4338 -/* 802A51C4 002A0E24 2C 03 00 00 */ cmpwi r3, 0 -/* 802A51C8 002A0E28 7C 7E 1B 78 */ mr r30, r3 -/* 802A51CC 002A0E2C 40 82 00 0C */ bne lbl_802A51D8 -/* 802A51D0 002A0E30 38 60 FF 8A */ li r3, -118 -/* 802A51D4 002A0E34 48 00 00 48 */ b lbl_802A521C -lbl_802A51D8: -/* 802A51D8 002A0E38 7F 64 DB 78 */ mr r4, r27 -/* 802A51DC 002A0E3C 38 BF 00 01 */ addi r5, r31, 1 -/* 802A51E0 002A0E40 4B D5 EE 21 */ bl memcpy -/* 802A51E4 002A0E44 93 9E 01 00 */ stw r28, 0x100(r30) -/* 802A51E8 002A0E48 3D 20 80 2A */ lis r9, lbl_802A4814@ha -/* 802A51EC 002A0E4C 38 00 00 00 */ li r0, 0 -/* 802A51F0 002A0E50 7F C5 F3 78 */ mr r5, r30 -/* 802A51F4 002A0E54 93 BE 01 04 */ stw r29, 0x104(r30) -/* 802A51F8 002A0E58 7F CA F3 78 */ mr r10, r30 -/* 802A51FC 002A0E5C 39 29 48 14 */ addi r9, r9, lbl_802A4814@l -/* 802A5200 002A0E60 38 80 00 07 */ li r4, 7 -/* 802A5204 002A0E64 90 1E 01 08 */ stw r0, 0x108(r30) -/* 802A5208 002A0E68 38 C0 00 40 */ li r6, 0x40 -/* 802A520C 002A0E6C 38 E0 00 00 */ li r7, 0 -/* 802A5210 002A0E70 39 00 00 00 */ li r8, 0 -/* 802A5214 002A0E74 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5218 002A0E78 4B FF E7 A1 */ bl IOS_IoctlAsync -lbl_802A521C: -/* 802A521C 002A0E7C 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A5220 002A0E80 4B F2 1F 55 */ bl _restgpr_27 -/* 802A5224 002A0E84 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A5228 002A0E88 7C 08 03 A6 */ mtlr r0 -/* 802A522C 002A0E8C 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A5230 002A0E90 4E 80 00 20 */ blr - -.global func_802A5234 -func_802A5234: -/* 802A5234 002A0E94 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802A5238 002A0E98 7C 08 02 A6 */ mflr r0 -/* 802A523C 002A0E9C 90 01 00 34 */ stw r0, 0x34(r1) -/* 802A5240 002A0EA0 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A5244 002A0EA4 4B F2 1E DD */ bl _savegpr_25 -/* 802A5248 002A0EA8 2C 03 00 00 */ cmpwi r3, 0 -/* 802A524C 002A0EAC 7C 79 1B 78 */ mr r25, r3 -/* 802A5250 002A0EB0 7C 9A 23 78 */ mr r26, r4 -/* 802A5254 002A0EB4 7C BB 2B 78 */ mr r27, r5 -/* 802A5258 002A0EB8 7C DC 33 78 */ mr r28, r6 -/* 802A525C 002A0EBC 41 82 00 44 */ beq lbl_802A52A0 -/* 802A5260 002A0EC0 2C 04 00 00 */ cmpwi r4, 0 -/* 802A5264 002A0EC4 41 82 00 3C */ beq lbl_802A52A0 -/* 802A5268 002A0EC8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A526C 002A0ECC 2C 00 00 00 */ cmpwi r0, 0 -/* 802A5270 002A0ED0 41 80 00 30 */ blt lbl_802A52A0 -/* 802A5274 002A0ED4 38 80 00 40 */ li r4, 0x40 -/* 802A5278 002A0ED8 4B FF D6 8D */ bl strnlen -/* 802A527C 002A0EDC 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A5280 002A0EE0 7C 7E 1B 78 */ mr r30, r3 -/* 802A5284 002A0EE4 41 82 00 1C */ beq lbl_802A52A0 -/* 802A5288 002A0EE8 7F 43 D3 78 */ mr r3, r26 -/* 802A528C 002A0EEC 38 80 00 40 */ li r4, 0x40 -/* 802A5290 002A0EF0 4B FF D6 75 */ bl strnlen -/* 802A5294 002A0EF4 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A5298 002A0EF8 7C 7F 1B 78 */ mr r31, r3 -/* 802A529C 002A0EFC 40 82 00 0C */ bne lbl_802A52A8 -lbl_802A52A0: -/* 802A52A0 002A0F00 38 60 FF 9B */ li r3, -101 -/* 802A52A4 002A0F04 48 00 00 7C */ b lbl_802A5320 -lbl_802A52A8: -/* 802A52A8 002A0F08 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A52AC 002A0F0C 38 80 01 40 */ li r4, 0x140 -/* 802A52B0 002A0F10 38 A0 00 20 */ li r5, 0x20 -/* 802A52B4 002A0F14 4B FF F0 85 */ bl func_802A4338 -/* 802A52B8 002A0F18 2C 03 00 00 */ cmpwi r3, 0 -/* 802A52BC 002A0F1C 7C 7D 1B 78 */ mr r29, r3 -/* 802A52C0 002A0F20 40 82 00 0C */ bne lbl_802A52CC -/* 802A52C4 002A0F24 38 60 FF 8A */ li r3, -118 -/* 802A52C8 002A0F28 48 00 00 58 */ b lbl_802A5320 -lbl_802A52CC: -/* 802A52CC 002A0F2C 93 63 01 00 */ stw r27, 0x100(r3) -/* 802A52D0 002A0F30 38 00 00 00 */ li r0, 0 -/* 802A52D4 002A0F34 7F 24 CB 78 */ mr r4, r25 -/* 802A52D8 002A0F38 38 BE 00 01 */ addi r5, r30, 1 -/* 802A52DC 002A0F3C 93 83 01 04 */ stw r28, 0x104(r3) -/* 802A52E0 002A0F40 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A52E4 002A0F44 4B D5 ED 1D */ bl memcpy -/* 802A52E8 002A0F48 7F 44 D3 78 */ mr r4, r26 -/* 802A52EC 002A0F4C 38 7D 00 40 */ addi r3, r29, 0x40 -/* 802A52F0 002A0F50 38 BF 00 01 */ addi r5, r31, 1 -/* 802A52F4 002A0F54 4B D5 ED 0D */ bl memcpy -/* 802A52F8 002A0F58 3D 20 80 2A */ lis r9, lbl_802A4814@ha -/* 802A52FC 002A0F5C 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5300 002A0F60 7F A5 EB 78 */ mr r5, r29 -/* 802A5304 002A0F64 7F AA EB 78 */ mr r10, r29 -/* 802A5308 002A0F68 39 29 48 14 */ addi r9, r9, lbl_802A4814@l -/* 802A530C 002A0F6C 38 80 00 08 */ li r4, 8 -/* 802A5310 002A0F70 38 C0 00 80 */ li r6, 0x80 -/* 802A5314 002A0F74 38 E0 00 00 */ li r7, 0 -/* 802A5318 002A0F78 39 00 00 00 */ li r8, 0 -/* 802A531C 002A0F7C 4B FF E6 9D */ bl IOS_IoctlAsync -lbl_802A5320: -/* 802A5320 002A0F80 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A5324 002A0F84 4B F2 1E 49 */ bl _restgpr_25 -/* 802A5328 002A0F88 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802A532C 002A0F8C 7C 08 03 A6 */ mtlr r0 -/* 802A5330 002A0F90 38 21 00 30 */ addi r1, r1, 0x30 -/* 802A5334 002A0F94 4E 80 00 20 */ blr - -.global func_802A5338 -func_802A5338: -/* 802A5338 002A0F98 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802A533C 002A0F9C 7C 08 02 A6 */ mflr r0 -/* 802A5340 002A0FA0 90 01 00 34 */ stw r0, 0x34(r1) -/* 802A5344 002A0FA4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A5348 002A0FA8 4B F2 1D D9 */ bl _savegpr_25 -/* 802A534C 002A0FAC 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5350 002A0FB0 7C 79 1B 78 */ mr r25, r3 -/* 802A5354 002A0FB4 7C 9A 23 78 */ mr r26, r4 -/* 802A5358 002A0FB8 7C BB 2B 78 */ mr r27, r5 -/* 802A535C 002A0FBC 7C DF 33 78 */ mr r31, r6 -/* 802A5360 002A0FC0 7C FC 3B 78 */ mr r28, r7 -/* 802A5364 002A0FC4 41 82 00 34 */ beq lbl_802A5398 -/* 802A5368 002A0FC8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A536C 002A0FCC 2C 00 00 00 */ cmpwi r0, 0 -/* 802A5370 002A0FD0 41 80 00 28 */ blt lbl_802A5398 -/* 802A5374 002A0FD4 2C 04 00 00 */ cmpwi r4, 0 -/* 802A5378 002A0FD8 41 82 00 20 */ beq lbl_802A5398 -/* 802A537C 002A0FDC 2C 05 00 00 */ cmpwi r5, 0 -/* 802A5380 002A0FE0 41 82 00 18 */ beq lbl_802A5398 -/* 802A5384 002A0FE4 38 80 00 40 */ li r4, 0x40 -/* 802A5388 002A0FE8 4B FF D5 7D */ bl strnlen -/* 802A538C 002A0FEC 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A5390 002A0FF0 7C 7E 1B 78 */ mr r30, r3 -/* 802A5394 002A0FF4 40 82 00 0C */ bne lbl_802A53A0 -lbl_802A5398: -/* 802A5398 002A0FF8 38 60 FF 9B */ li r3, -101 -/* 802A539C 002A0FFC 48 00 00 A8 */ b lbl_802A5444 -lbl_802A53A0: -/* 802A53A0 002A1000 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A53A4 002A1004 38 80 01 40 */ li r4, 0x140 -/* 802A53A8 002A1008 38 A0 00 20 */ li r5, 0x20 -/* 802A53AC 002A100C 4B FF EF 8D */ bl func_802A4338 -/* 802A53B0 002A1010 2C 03 00 00 */ cmpwi r3, 0 -/* 802A53B4 002A1014 7C 7D 1B 78 */ mr r29, r3 -/* 802A53B8 002A1018 40 82 00 0C */ bne lbl_802A53C4 -/* 802A53BC 002A101C 38 60 FF 8A */ li r3, -118 -/* 802A53C0 002A1020 48 00 00 84 */ b lbl_802A5444 -lbl_802A53C4: -/* 802A53C4 002A1024 93 E3 01 00 */ stw r31, 0x100(r3) -/* 802A53C8 002A1028 3B E0 00 04 */ li r31, 4 -/* 802A53CC 002A102C 38 03 00 37 */ addi r0, r3, 0x37 -/* 802A53D0 002A1030 7F 24 CB 78 */ mr r4, r25 -/* 802A53D4 002A1034 93 83 01 04 */ stw r28, 0x104(r3) -/* 802A53D8 002A1038 54 1C 00 34 */ rlwinm r28, r0, 0, 0, 0x1a -/* 802A53DC 002A103C 38 BE 00 01 */ addi r5, r30, 1 -/* 802A53E0 002A1040 93 E3 01 08 */ stw r31, 0x108(r3) -/* 802A53E4 002A1044 93 43 01 0C */ stw r26, 0x10c(r3) -/* 802A53E8 002A1048 93 63 01 10 */ stw r27, 0x110(r3) -/* 802A53EC 002A104C 7F 83 E3 78 */ mr r3, r28 -/* 802A53F0 002A1050 4B D5 EC 11 */ bl memcpy -/* 802A53F4 002A1054 93 9D 00 00 */ stw r28, 0(r29) -/* 802A53F8 002A1058 38 60 00 40 */ li r3, 0x40 -/* 802A53FC 002A105C 3D 00 80 2A */ lis r8, lbl_802A4814@ha -/* 802A5400 002A1060 38 1C 00 5F */ addi r0, r28, 0x5f -/* 802A5404 002A1064 90 7D 00 04 */ stw r3, 4(r29) -/* 802A5408 002A1068 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a -/* 802A540C 002A106C 38 03 00 23 */ addi r0, r3, 0x23 -/* 802A5410 002A1070 7F A7 EB 78 */ mr r7, r29 -/* 802A5414 002A1074 90 7D 00 08 */ stw r3, 8(r29) -/* 802A5418 002A1078 54 00 00 34 */ rlwinm r0, r0, 0, 0, 0x1a -/* 802A541C 002A107C 7F A9 EB 78 */ mr r9, r29 -/* 802A5420 002A1080 39 08 48 14 */ addi r8, r8, lbl_802A4814@l -/* 802A5424 002A1084 93 FD 00 0C */ stw r31, 0xc(r29) -/* 802A5428 002A1088 38 80 00 0C */ li r4, 0xc -/* 802A542C 002A108C 38 A0 00 01 */ li r5, 1 -/* 802A5430 002A1090 38 C0 00 02 */ li r6, 2 -/* 802A5434 002A1094 90 1D 00 10 */ stw r0, 0x10(r29) -/* 802A5438 002A1098 93 FD 00 14 */ stw r31, 0x14(r29) -/* 802A543C 002A109C 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5440 002A10A0 4B FF E9 1D */ bl IOS_IoctlvAsync -lbl_802A5444: -/* 802A5444 002A10A4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A5448 002A10A8 4B F2 1D 25 */ bl _restgpr_25 -/* 802A544C 002A10AC 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802A5450 002A10B0 7C 08 03 A6 */ mtlr r0 -/* 802A5454 002A10B4 38 21 00 30 */ addi r1, r1, 0x30 -/* 802A5458 002A10B8 4E 80 00 20 */ blr - -.global func_802A545C -func_802A545C: -/* 802A545C 002A10BC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802A5460 002A10C0 7C 08 02 A6 */ mflr r0 -/* 802A5464 002A10C4 90 01 00 34 */ stw r0, 0x34(r1) -/* 802A5468 002A10C8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A546C 002A10CC 4B F2 1C B5 */ bl _savegpr_25 -/* 802A5470 002A10D0 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5474 002A10D4 7C 79 1B 78 */ mr r25, r3 -/* 802A5478 002A10D8 7C 9A 23 78 */ mr r26, r4 -/* 802A547C 002A10DC 7C BB 2B 78 */ mr r27, r5 -/* 802A5480 002A10E0 7C DC 33 78 */ mr r28, r6 -/* 802A5484 002A10E4 7C FD 3B 78 */ mr r29, r7 -/* 802A5488 002A10E8 3B C0 00 00 */ li r30, 0 -/* 802A548C 002A10EC 41 82 00 24 */ beq lbl_802A54B0 -/* 802A5490 002A10F0 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5494 002A10F4 2C 00 00 00 */ cmpwi r0, 0 -/* 802A5498 002A10F8 41 80 00 18 */ blt lbl_802A54B0 -/* 802A549C 002A10FC 38 80 00 40 */ li r4, 0x40 -/* 802A54A0 002A1100 4B FF D4 65 */ bl strnlen -/* 802A54A4 002A1104 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A54A8 002A1108 7C 7F 1B 78 */ mr r31, r3 -/* 802A54AC 002A110C 40 82 00 0C */ bne lbl_802A54B8 -lbl_802A54B0: -/* 802A54B0 002A1110 3B E0 FF 9B */ li r31, -101 -/* 802A54B4 002A1114 48 00 00 68 */ b lbl_802A551C -lbl_802A54B8: -/* 802A54B8 002A1118 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A54BC 002A111C 38 80 01 40 */ li r4, 0x140 -/* 802A54C0 002A1120 38 A0 00 20 */ li r5, 0x20 -/* 802A54C4 002A1124 4B FF EE 75 */ bl func_802A4338 -/* 802A54C8 002A1128 2C 03 00 00 */ cmpwi r3, 0 -/* 802A54CC 002A112C 7C 7E 1B 78 */ mr r30, r3 -/* 802A54D0 002A1130 40 82 00 0C */ bne lbl_802A54DC -/* 802A54D4 002A1134 3B E0 FF EA */ li r31, -22 -/* 802A54D8 002A1138 48 00 00 44 */ b lbl_802A551C -lbl_802A54DC: -/* 802A54DC 002A113C 7F 24 CB 78 */ mr r4, r25 -/* 802A54E0 002A1140 38 BF 00 01 */ addi r5, r31, 1 -/* 802A54E4 002A1144 38 63 00 06 */ addi r3, r3, 6 -/* 802A54E8 002A1148 4B D5 EB 19 */ bl memcpy -/* 802A54EC 002A114C 9B 5E 00 49 */ stb r26, 0x49(r30) -/* 802A54F0 002A1150 7F C5 F3 78 */ mr r5, r30 -/* 802A54F4 002A1154 38 80 00 09 */ li r4, 9 -/* 802A54F8 002A1158 38 C0 00 4C */ li r6, 0x4c -/* 802A54FC 002A115C 9B 7E 00 46 */ stb r27, 0x46(r30) -/* 802A5500 002A1160 38 E0 00 00 */ li r7, 0 -/* 802A5504 002A1164 39 00 00 00 */ li r8, 0 -/* 802A5508 002A1168 9B 9E 00 47 */ stb r28, 0x47(r30) -/* 802A550C 002A116C 9B BE 00 48 */ stb r29, 0x48(r30) -/* 802A5510 002A1170 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5514 002A1174 4B FF E5 DD */ bl IOS_Ioctl -/* 802A5518 002A1178 7C 7F 1B 78 */ mr r31, r3 -lbl_802A551C: -/* 802A551C 002A117C 2C 1E 00 00 */ cmpwi r30, 0 -/* 802A5520 002A1180 41 82 00 14 */ beq lbl_802A5534 -/* 802A5524 002A1184 41 82 00 10 */ beq lbl_802A5534 -/* 802A5528 002A1188 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A552C 002A118C 7F C4 F3 78 */ mr r4, r30 -/* 802A5530 002A1190 4B FF EE 0D */ bl func_802A433C -lbl_802A5534: -/* 802A5534 002A1194 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A5538 002A1198 7F E3 FB 78 */ mr r3, r31 -/* 802A553C 002A119C 4B F2 1C 31 */ bl _restgpr_25 -/* 802A5540 002A11A0 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802A5544 002A11A4 7C 08 03 A6 */ mtlr r0 -/* 802A5548 002A11A8 38 21 00 30 */ addi r1, r1, 0x30 -/* 802A554C 002A11AC 4E 80 00 20 */ blr - -.global func_802A5550 -func_802A5550: -/* 802A5550 002A11B0 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 802A5554 002A11B4 7C 08 02 A6 */ mflr r0 -/* 802A5558 002A11B8 90 01 00 34 */ stw r0, 0x34(r1) -/* 802A555C 002A11BC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A5560 002A11C0 4B F2 1B B9 */ bl _savegpr_23 -/* 802A5564 002A11C4 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5568 002A11C8 7C 77 1B 78 */ mr r23, r3 -/* 802A556C 002A11CC 7C 98 23 78 */ mr r24, r4 -/* 802A5570 002A11D0 7C B9 2B 78 */ mr r25, r5 -/* 802A5574 002A11D4 7C DA 33 78 */ mr r26, r6 -/* 802A5578 002A11D8 7C FB 3B 78 */ mr r27, r7 -/* 802A557C 002A11DC 7D 1C 43 78 */ mr r28, r8 -/* 802A5580 002A11E0 7D 3D 4B 78 */ mr r29, r9 -/* 802A5584 002A11E4 41 82 00 24 */ beq lbl_802A55A8 -/* 802A5588 002A11E8 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A558C 002A11EC 2C 00 00 00 */ cmpwi r0, 0 -/* 802A5590 002A11F0 41 80 00 18 */ blt lbl_802A55A8 -/* 802A5594 002A11F4 38 80 00 40 */ li r4, 0x40 -/* 802A5598 002A11F8 4B FF D3 6D */ bl strnlen -/* 802A559C 002A11FC 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A55A0 002A1200 7C 7F 1B 78 */ mr r31, r3 -/* 802A55A4 002A1204 40 82 00 0C */ bne lbl_802A55B0 -lbl_802A55A8: -/* 802A55A8 002A1208 38 60 FF 9B */ li r3, -101 -/* 802A55AC 002A120C 48 00 00 80 */ b lbl_802A562C -lbl_802A55B0: -/* 802A55B0 002A1210 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A55B4 002A1214 38 80 01 40 */ li r4, 0x140 -/* 802A55B8 002A1218 38 A0 00 20 */ li r5, 0x20 -/* 802A55BC 002A121C 4B FF ED 7D */ bl func_802A4338 -/* 802A55C0 002A1220 2C 03 00 00 */ cmpwi r3, 0 -/* 802A55C4 002A1224 7C 7E 1B 78 */ mr r30, r3 -/* 802A55C8 002A1228 40 82 00 0C */ bne lbl_802A55D4 -/* 802A55CC 002A122C 38 60 FF 8A */ li r3, -118 -/* 802A55D0 002A1230 48 00 00 5C */ b lbl_802A562C -lbl_802A55D4: -/* 802A55D4 002A1234 93 83 01 00 */ stw r28, 0x100(r3) -/* 802A55D8 002A1238 38 00 00 00 */ li r0, 0 -/* 802A55DC 002A123C 7E E4 BB 78 */ mr r4, r23 -/* 802A55E0 002A1240 38 BF 00 01 */ addi r5, r31, 1 -/* 802A55E4 002A1244 93 A3 01 04 */ stw r29, 0x104(r3) -/* 802A55E8 002A1248 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A55EC 002A124C 38 63 00 06 */ addi r3, r3, 6 -/* 802A55F0 002A1250 4B D5 EA 11 */ bl memcpy -/* 802A55F4 002A1254 9B 1E 00 49 */ stb r24, 0x49(r30) -/* 802A55F8 002A1258 3D 20 80 2A */ lis r9, lbl_802A4814@ha -/* 802A55FC 002A125C 7F C5 F3 78 */ mr r5, r30 -/* 802A5600 002A1260 7F CA F3 78 */ mr r10, r30 -/* 802A5604 002A1264 9B 3E 00 46 */ stb r25, 0x46(r30) -/* 802A5608 002A1268 39 29 48 14 */ addi r9, r9, lbl_802A4814@l -/* 802A560C 002A126C 38 80 00 09 */ li r4, 9 -/* 802A5610 002A1270 38 C0 00 4C */ li r6, 0x4c -/* 802A5614 002A1274 9B 5E 00 47 */ stb r26, 0x47(r30) -/* 802A5618 002A1278 38 E0 00 00 */ li r7, 0 -/* 802A561C 002A127C 39 00 00 00 */ li r8, 0 -/* 802A5620 002A1280 9B 7E 00 48 */ stb r27, 0x48(r30) -/* 802A5624 002A1284 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5628 002A1288 4B FF E3 91 */ bl IOS_IoctlAsync -lbl_802A562C: -/* 802A562C 002A128C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A5630 002A1290 4B F2 1B 35 */ bl _restgpr_23 -/* 802A5634 002A1294 80 01 00 34 */ lwz r0, 0x34(r1) -/* 802A5638 002A1298 7C 08 03 A6 */ mtlr r0 -/* 802A563C 002A129C 38 21 00 30 */ addi r1, r1, 0x30 -/* 802A5640 002A12A0 4E 80 00 20 */ blr - -.global func_802A5644 -func_802A5644: -/* 802A5644 002A12A4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A5648 002A12A8 7C 08 02 A6 */ mflr r0 -/* 802A564C 002A12AC 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5650 002A12B0 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A5654 002A12B4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802A5658 002A12B8 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802A565C 002A12BC 3B C0 00 00 */ li r30, 0 -/* 802A5660 002A12C0 93 A1 00 14 */ stw r29, 0x14(r1) -/* 802A5664 002A12C4 7C 9D 23 78 */ mr r29, r4 -/* 802A5668 002A12C8 93 81 00 10 */ stw r28, 0x10(r1) -/* 802A566C 002A12CC 7C 7C 1B 78 */ mr r28, r3 -/* 802A5670 002A12D0 41 82 00 18 */ beq lbl_802A5688 -/* 802A5674 002A12D4 38 80 00 40 */ li r4, 0x40 -/* 802A5678 002A12D8 4B FF D2 8D */ bl strnlen -/* 802A567C 002A12DC 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A5680 002A12E0 7C 7F 1B 78 */ mr r31, r3 -/* 802A5684 002A12E4 40 82 00 0C */ bne lbl_802A5690 -lbl_802A5688: -/* 802A5688 002A12E8 3B E0 FF 9B */ li r31, -101 -/* 802A568C 002A12EC 48 00 00 44 */ b lbl_802A56D0 -lbl_802A5690: -/* 802A5690 002A12F0 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A5694 002A12F4 38 80 01 40 */ li r4, 0x140 -/* 802A5698 002A12F8 38 A0 00 20 */ li r5, 0x20 -/* 802A569C 002A12FC 4B FF EC 9D */ bl func_802A4338 -/* 802A56A0 002A1300 2C 03 00 00 */ cmpwi r3, 0 -/* 802A56A4 002A1304 7C 7E 1B 78 */ mr r30, r3 -/* 802A56A8 002A1308 40 82 00 0C */ bne lbl_802A56B4 -/* 802A56AC 002A130C 3B E0 FF EA */ li r31, -22 -/* 802A56B0 002A1310 48 00 00 20 */ b lbl_802A56D0 -lbl_802A56B4: -/* 802A56B4 002A1314 7F 84 E3 78 */ mr r4, r28 -/* 802A56B8 002A1318 38 BF 00 01 */ addi r5, r31, 1 -/* 802A56BC 002A131C 4B D5 E9 45 */ bl memcpy -/* 802A56C0 002A1320 7F C3 F3 78 */ mr r3, r30 -/* 802A56C4 002A1324 7F A4 EB 78 */ mr r4, r29 -/* 802A56C8 002A1328 4B FF DA 91 */ bl IOS_Open -/* 802A56CC 002A132C 7C 7F 1B 78 */ mr r31, r3 -lbl_802A56D0: -/* 802A56D0 002A1330 2C 1E 00 00 */ cmpwi r30, 0 -/* 802A56D4 002A1334 41 82 00 14 */ beq lbl_802A56E8 -/* 802A56D8 002A1338 41 82 00 10 */ beq lbl_802A56E8 -/* 802A56DC 002A133C 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A56E0 002A1340 7F C4 F3 78 */ mr r4, r30 -/* 802A56E4 002A1344 4B FF EC 59 */ bl func_802A433C -lbl_802A56E8: -/* 802A56E8 002A1348 7F E3 FB 78 */ mr r3, r31 -/* 802A56EC 002A134C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802A56F0 002A1350 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802A56F4 002A1354 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 802A56F8 002A1358 83 81 00 10 */ lwz r28, 0x10(r1) -/* 802A56FC 002A135C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A5700 002A1360 7C 08 03 A6 */ mtlr r0 -/* 802A5704 002A1364 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A5708 002A1368 4E 80 00 20 */ blr - -.global func_802A570C -func_802A570C: -/* 802A570C 002A136C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A5710 002A1370 7C 08 02 A6 */ mflr r0 -/* 802A5714 002A1374 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A5718 002A1378 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A571C 002A137C 4B F2 1A 09 */ bl _savegpr_26 -/* 802A5720 002A1380 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5724 002A1384 7C 7A 1B 78 */ mr r26, r3 -/* 802A5728 002A1388 7C 9B 23 78 */ mr r27, r4 -/* 802A572C 002A138C 7C BC 2B 78 */ mr r28, r5 -/* 802A5730 002A1390 7C DD 33 78 */ mr r29, r6 -/* 802A5734 002A1394 41 82 00 18 */ beq lbl_802A574C -/* 802A5738 002A1398 38 80 00 40 */ li r4, 0x40 -/* 802A573C 002A139C 4B FF D1 C9 */ bl strnlen -/* 802A5740 002A13A0 28 03 00 40 */ cmplwi r3, 0x40 -/* 802A5744 002A13A4 7C 7F 1B 78 */ mr r31, r3 -/* 802A5748 002A13A8 40 82 00 0C */ bne lbl_802A5754 -lbl_802A574C: -/* 802A574C 002A13AC 38 60 FF 9B */ li r3, -101 -/* 802A5750 002A13B0 48 00 00 5C */ b lbl_802A57AC -lbl_802A5754: -/* 802A5754 002A13B4 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A5758 002A13B8 38 80 01 40 */ li r4, 0x140 -/* 802A575C 002A13BC 38 A0 00 20 */ li r5, 0x20 -/* 802A5760 002A13C0 4B FF EB D9 */ bl func_802A4338 -/* 802A5764 002A13C4 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5768 002A13C8 7C 7E 1B 78 */ mr r30, r3 -/* 802A576C 002A13CC 40 82 00 0C */ bne lbl_802A5778 -/* 802A5770 002A13D0 38 60 FF 8A */ li r3, -118 -/* 802A5774 002A13D4 48 00 00 38 */ b lbl_802A57AC -lbl_802A5778: -/* 802A5778 002A13D8 93 83 01 00 */ stw r28, 0x100(r3) -/* 802A577C 002A13DC 38 00 00 00 */ li r0, 0 -/* 802A5780 002A13E0 7F 44 D3 78 */ mr r4, r26 -/* 802A5784 002A13E4 38 BF 00 01 */ addi r5, r31, 1 -/* 802A5788 002A13E8 93 A3 01 04 */ stw r29, 0x104(r3) -/* 802A578C 002A13EC 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A5790 002A13F0 4B D5 E8 71 */ bl memcpy -/* 802A5794 002A13F4 3C A0 80 2A */ lis r5, lbl_802A4814@ha -/* 802A5798 002A13F8 7F C3 F3 78 */ mr r3, r30 -/* 802A579C 002A13FC 7F 64 DB 78 */ mr r4, r27 -/* 802A57A0 002A1400 7F C6 F3 78 */ mr r6, r30 -/* 802A57A4 002A1404 38 A5 48 14 */ addi r5, r5, lbl_802A4814@l -/* 802A57A8 002A1408 4B FF D8 99 */ bl IOS_OpenAsync -lbl_802A57AC: -/* 802A57AC 002A140C 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A57B0 002A1410 4B F2 19 C1 */ bl _restgpr_26 -/* 802A57B4 002A1414 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A57B8 002A1418 7C 08 03 A6 */ mtlr r0 -/* 802A57BC 002A141C 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A57C0 002A1420 4E 80 00 20 */ blr - -.global func_802A57C4 -func_802A57C4: -/* 802A57C4 002A1424 2C 04 00 00 */ cmpwi r4, 0 -/* 802A57C8 002A1428 41 82 00 0C */ beq lbl_802A57D4 -/* 802A57CC 002A142C 54 80 06 FF */ clrlwi. r0, r4, 0x1b -/* 802A57D0 002A1430 41 82 00 0C */ beq lbl_802A57DC -lbl_802A57D4: -/* 802A57D4 002A1434 38 60 FF 9B */ li r3, -101 -/* 802A57D8 002A1438 4E 80 00 20 */ blr -lbl_802A57DC: -/* 802A57DC 002A143C 7C 87 23 78 */ mr r7, r4 -/* 802A57E0 002A1440 38 80 00 0B */ li r4, 0xb -/* 802A57E4 002A1444 38 A0 00 00 */ li r5, 0 -/* 802A57E8 002A1448 38 C0 00 00 */ li r6, 0 -/* 802A57EC 002A144C 39 00 00 08 */ li r8, 8 -/* 802A57F0 002A1450 4B FF E3 00 */ b IOS_Ioctl -/* 802A57F4 002A1454 4E 80 00 20 */ blr - -.global func_802A57F8 -func_802A57F8: -/* 802A57F8 002A1458 4B FF E0 D8 */ b IOS_Seek - -.global func_802A57FC -func_802A57FC: -/* 802A57FC 002A145C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A5800 002A1460 7C 08 02 A6 */ mflr r0 -/* 802A5804 002A1464 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A5808 002A1468 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A580C 002A146C 4B F2 19 1D */ bl _savegpr_27 -/* 802A5810 002A1470 7C 7B 1B 78 */ mr r27, r3 -/* 802A5814 002A1474 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A5818 002A1478 7C 9C 23 78 */ mr r28, r4 -/* 802A581C 002A147C 7C BD 2B 78 */ mr r29, r5 -/* 802A5820 002A1480 7C DE 33 78 */ mr r30, r6 -/* 802A5824 002A1484 7C FF 3B 78 */ mr r31, r7 -/* 802A5828 002A1488 38 80 01 40 */ li r4, 0x140 -/* 802A582C 002A148C 38 A0 00 20 */ li r5, 0x20 -/* 802A5830 002A1490 4B FF EB 09 */ bl func_802A4338 -/* 802A5834 002A1494 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5838 002A1498 40 82 00 0C */ bne lbl_802A5844 -/* 802A583C 002A149C 38 60 FF 8A */ li r3, -118 -/* 802A5840 002A14A0 48 00 00 30 */ b lbl_802A5870 -lbl_802A5844: -/* 802A5844 002A14A4 93 C3 01 00 */ stw r30, 0x100(r3) -/* 802A5848 002A14A8 3C C0 80 2A */ lis r6, lbl_802A4814@ha -/* 802A584C 002A14AC 38 00 00 00 */ li r0, 0 -/* 802A5850 002A14B0 7F 84 E3 78 */ mr r4, r28 -/* 802A5854 002A14B4 93 E3 01 04 */ stw r31, 0x104(r3) -/* 802A5858 002A14B8 7F A5 EB 78 */ mr r5, r29 -/* 802A585C 002A14BC 7C 67 1B 78 */ mr r7, r3 -/* 802A5860 002A14C0 38 C6 48 14 */ addi r6, r6, lbl_802A4814@l -/* 802A5864 002A14C4 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A5868 002A14C8 7F 63 DB 78 */ mr r3, r27 -/* 802A586C 002A14CC 4B FF DF 85 */ bl IOS_SeekAsync -lbl_802A5870: -/* 802A5870 002A14D0 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A5874 002A14D4 4B F2 19 01 */ bl _restgpr_27 -/* 802A5878 002A14D8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A587C 002A14DC 7C 08 03 A6 */ mtlr r0 -/* 802A5880 002A14E0 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A5884 002A14E4 4E 80 00 20 */ blr - -.global func_802A5888 -func_802A5888: -/* 802A5888 002A14E8 2C 04 00 00 */ cmpwi r4, 0 -/* 802A588C 002A14EC 41 82 00 0C */ beq lbl_802A5898 -/* 802A5890 002A14F0 54 80 06 FF */ clrlwi. r0, r4, 0x1b -/* 802A5894 002A14F4 41 82 00 0C */ beq lbl_802A58A0 -lbl_802A5898: -/* 802A5898 002A14F8 38 60 FF 9B */ li r3, -101 -/* 802A589C 002A14FC 4E 80 00 20 */ blr -lbl_802A58A0: -/* 802A58A0 002A1500 4B FF DC 40 */ b IOS_Read -/* 802A58A4 002A1504 4E 80 00 20 */ blr - -.global func_802A58A8 -func_802A58A8: -/* 802A58A8 002A1508 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A58AC 002A150C 7C 08 02 A6 */ mflr r0 -/* 802A58B0 002A1510 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A58B4 002A1514 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A58B8 002A1518 4B F2 18 71 */ bl _savegpr_27 -/* 802A58BC 002A151C 2C 04 00 00 */ cmpwi r4, 0 -/* 802A58C0 002A1520 7C 7B 1B 78 */ mr r27, r3 -/* 802A58C4 002A1524 7C 9C 23 78 */ mr r28, r4 -/* 802A58C8 002A1528 7C BD 2B 78 */ mr r29, r5 -/* 802A58CC 002A152C 7C DE 33 78 */ mr r30, r6 -/* 802A58D0 002A1530 7C FF 3B 78 */ mr r31, r7 -/* 802A58D4 002A1534 41 82 00 0C */ beq lbl_802A58E0 -/* 802A58D8 002A1538 54 80 06 FF */ clrlwi. r0, r4, 0x1b -/* 802A58DC 002A153C 41 82 00 0C */ beq lbl_802A58E8 -lbl_802A58E0: -/* 802A58E0 002A1540 38 60 FF 9B */ li r3, -101 -/* 802A58E4 002A1544 48 00 00 50 */ b lbl_802A5934 -lbl_802A58E8: -/* 802A58E8 002A1548 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A58EC 002A154C 38 80 01 40 */ li r4, 0x140 -/* 802A58F0 002A1550 38 A0 00 20 */ li r5, 0x20 -/* 802A58F4 002A1554 4B FF EA 45 */ bl func_802A4338 -/* 802A58F8 002A1558 2C 03 00 00 */ cmpwi r3, 0 -/* 802A58FC 002A155C 40 82 00 0C */ bne lbl_802A5908 -/* 802A5900 002A1560 38 60 FF 8A */ li r3, -118 -/* 802A5904 002A1564 48 00 00 30 */ b lbl_802A5934 -lbl_802A5908: -/* 802A5908 002A1568 93 C3 01 00 */ stw r30, 0x100(r3) -/* 802A590C 002A156C 3C C0 80 2A */ lis r6, lbl_802A4814@ha -/* 802A5910 002A1570 38 00 00 00 */ li r0, 0 -/* 802A5914 002A1574 7F 84 E3 78 */ mr r4, r28 -/* 802A5918 002A1578 93 E3 01 04 */ stw r31, 0x104(r3) -/* 802A591C 002A157C 7F A5 EB 78 */ mr r5, r29 -/* 802A5920 002A1580 7C 67 1B 78 */ mr r7, r3 -/* 802A5924 002A1584 38 C6 48 14 */ addi r6, r6, lbl_802A4814@l -/* 802A5928 002A1588 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A592C 002A158C 7F 63 DB 78 */ mr r3, r27 -/* 802A5930 002A1590 4B FF DA B1 */ bl IOS_ReadAsync -lbl_802A5934: -/* 802A5934 002A1594 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A5938 002A1598 4B F2 18 3D */ bl _restgpr_27 -/* 802A593C 002A159C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A5940 002A15A0 7C 08 03 A6 */ mtlr r0 -/* 802A5944 002A15A4 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A5948 002A15A8 4E 80 00 20 */ blr - -.global func_802A594C -func_802A594C: -/* 802A594C 002A15AC 2C 04 00 00 */ cmpwi r4, 0 -/* 802A5950 002A15B0 41 82 00 0C */ beq lbl_802A595C -/* 802A5954 002A15B4 54 80 06 FF */ clrlwi. r0, r4, 0x1b -/* 802A5958 002A15B8 41 82 00 0C */ beq lbl_802A5964 -lbl_802A595C: -/* 802A595C 002A15BC 38 60 FF 9B */ li r3, -101 -/* 802A5960 002A15C0 4E 80 00 20 */ blr -lbl_802A5964: -/* 802A5964 002A15C4 4B FF DD 84 */ b IOS_Write -/* 802A5968 002A15C8 4E 80 00 20 */ blr - -.global func_802A596C -func_802A596C: -/* 802A596C 002A15CC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A5970 002A15D0 7C 08 02 A6 */ mflr r0 -/* 802A5974 002A15D4 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A5978 002A15D8 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A597C 002A15DC 4B F2 17 AD */ bl _savegpr_27 -/* 802A5980 002A15E0 2C 04 00 00 */ cmpwi r4, 0 -/* 802A5984 002A15E4 7C 7B 1B 78 */ mr r27, r3 -/* 802A5988 002A15E8 7C 9C 23 78 */ mr r28, r4 -/* 802A598C 002A15EC 7C BD 2B 78 */ mr r29, r5 -/* 802A5990 002A15F0 7C DE 33 78 */ mr r30, r6 -/* 802A5994 002A15F4 7C FF 3B 78 */ mr r31, r7 -/* 802A5998 002A15F8 41 82 00 0C */ beq lbl_802A59A4 -/* 802A599C 002A15FC 54 80 06 FF */ clrlwi. r0, r4, 0x1b -/* 802A59A0 002A1600 41 82 00 0C */ beq lbl_802A59AC -lbl_802A59A4: -/* 802A59A4 002A1604 38 60 FF 9B */ li r3, -101 -/* 802A59A8 002A1608 48 00 00 50 */ b lbl_802A59F8 -lbl_802A59AC: -/* 802A59AC 002A160C 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A59B0 002A1610 38 80 01 40 */ li r4, 0x140 -/* 802A59B4 002A1614 38 A0 00 20 */ li r5, 0x20 -/* 802A59B8 002A1618 4B FF E9 81 */ bl func_802A4338 -/* 802A59BC 002A161C 2C 03 00 00 */ cmpwi r3, 0 -/* 802A59C0 002A1620 40 82 00 0C */ bne lbl_802A59CC -/* 802A59C4 002A1624 38 60 FF 8A */ li r3, -118 -/* 802A59C8 002A1628 48 00 00 30 */ b lbl_802A59F8 -lbl_802A59CC: -/* 802A59CC 002A162C 93 C3 01 00 */ stw r30, 0x100(r3) -/* 802A59D0 002A1630 3C C0 80 2A */ lis r6, lbl_802A4814@ha -/* 802A59D4 002A1634 38 00 00 00 */ li r0, 0 -/* 802A59D8 002A1638 7F 84 E3 78 */ mr r4, r28 -/* 802A59DC 002A163C 93 E3 01 04 */ stw r31, 0x104(r3) -/* 802A59E0 002A1640 7F A5 EB 78 */ mr r5, r29 -/* 802A59E4 002A1644 7C 67 1B 78 */ mr r7, r3 -/* 802A59E8 002A1648 38 C6 48 14 */ addi r6, r6, lbl_802A4814@l -/* 802A59EC 002A164C 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A59F0 002A1650 7F 63 DB 78 */ mr r3, r27 -/* 802A59F4 002A1654 4B FF DB F5 */ bl IOS_WriteAsync -lbl_802A59F8: -/* 802A59F8 002A1658 39 61 00 20 */ addi r11, r1, 0x20 -/* 802A59FC 002A165C 4B F2 17 79 */ bl _restgpr_27 -/* 802A5A00 002A1660 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A5A04 002A1664 7C 08 03 A6 */ mtlr r0 -/* 802A5A08 002A1668 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A5A0C 002A166C 4E 80 00 20 */ blr - -.global func_802A5A10 -func_802A5A10: -/* 802A5A10 002A1670 4B FF D9 28 */ b IOS_Close - -.global func_802A5A14 -func_802A5A14: -/* 802A5A14 002A1674 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802A5A18 002A1678 7C 08 02 A6 */ mflr r0 -/* 802A5A1C 002A167C 90 01 00 24 */ stw r0, 0x24(r1) -/* 802A5A20 002A1680 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802A5A24 002A1684 7C BF 2B 78 */ mr r31, r5 -/* 802A5A28 002A1688 38 A0 00 20 */ li r5, 0x20 -/* 802A5A2C 002A168C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802A5A30 002A1690 7C 9E 23 78 */ mr r30, r4 -/* 802A5A34 002A1694 38 80 01 40 */ li r4, 0x140 -/* 802A5A38 002A1698 93 A1 00 14 */ stw r29, 0x14(r1) -/* 802A5A3C 002A169C 7C 7D 1B 78 */ mr r29, r3 -/* 802A5A40 002A16A0 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A5A44 002A16A4 4B FF E8 F5 */ bl func_802A4338 -/* 802A5A48 002A16A8 2C 03 00 00 */ cmpwi r3, 0 -/* 802A5A4C 002A16AC 40 82 00 0C */ bne lbl_802A5A58 -/* 802A5A50 002A16B0 38 60 FF 8A */ li r3, -118 -/* 802A5A54 002A16B4 48 00 00 28 */ b lbl_802A5A7C -lbl_802A5A58: -/* 802A5A58 002A16B8 93 C3 01 00 */ stw r30, 0x100(r3) -/* 802A5A5C 002A16BC 3C 80 80 2A */ lis r4, lbl_802A4814@ha -/* 802A5A60 002A16C0 38 00 00 00 */ li r0, 0 -/* 802A5A64 002A16C4 7C 65 1B 78 */ mr r5, r3 -/* 802A5A68 002A16C8 93 E3 01 04 */ stw r31, 0x104(r3) -/* 802A5A6C 002A16CC 38 84 48 14 */ addi r4, r4, lbl_802A4814@l -/* 802A5A70 002A16D0 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A5A74 002A16D4 7F A3 EB 78 */ mr r3, r29 -/* 802A5A78 002A16D8 4B FF D8 01 */ bl IOS_CloseAsync -lbl_802A5A7C: -/* 802A5A7C 002A16DC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802A5A80 002A16E0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802A5A84 002A16E4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802A5A88 002A16E8 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 802A5A8C 002A16EC 7C 08 03 A6 */ mtlr r0 -/* 802A5A90 002A16F0 38 21 00 20 */ addi r1, r1, 0x20 -/* 802A5A94 002A16F4 4E 80 00 20 */ blr - -.global func_802A5A98 -func_802A5A98: -/* 802A5A98 002A16F8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802A5A9C 002A16FC 7C 08 02 A6 */ mflr r0 -/* 802A5AA0 002A1700 38 A0 00 20 */ li r5, 0x20 -/* 802A5AA4 002A1704 90 01 00 14 */ stw r0, 0x14(r1) -/* 802A5AA8 002A1708 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802A5AAC 002A170C 7C 9F 23 78 */ mr r31, r4 -/* 802A5AB0 002A1710 38 80 01 40 */ li r4, 0x140 -/* 802A5AB4 002A1714 93 C1 00 08 */ stw r30, 8(r1) -/* 802A5AB8 002A1718 7C 7E 1B 78 */ mr r30, r3 -/* 802A5ABC 002A171C 80 6D AE 28 */ lwz r3, lbl_806400E8-_SDA_BASE_(r13) -/* 802A5AC0 002A1720 4B FF E8 79 */ bl func_802A4338 -/* 802A5AC4 002A1724 80 0D 89 90 */ lwz r0, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5AC8 002A1728 2C 00 00 00 */ cmpwi r0, 0 -/* 802A5ACC 002A172C 40 80 00 0C */ bge lbl_802A5AD8 -/* 802A5AD0 002A1730 38 60 FF 9B */ li r3, -101 -/* 802A5AD4 002A1734 48 00 00 3C */ b lbl_802A5B10 -lbl_802A5AD8: -/* 802A5AD8 002A1738 93 C3 01 00 */ stw r30, 0x100(r3) -/* 802A5ADC 002A173C 3D 20 80 2A */ lis r9, lbl_802A4814@ha -/* 802A5AE0 002A1740 38 00 00 00 */ li r0, 0 -/* 802A5AE4 002A1744 7C 6A 1B 78 */ mr r10, r3 -/* 802A5AE8 002A1748 93 E3 01 04 */ stw r31, 0x104(r3) -/* 802A5AEC 002A174C 39 29 48 14 */ addi r9, r9, lbl_802A4814@l -/* 802A5AF0 002A1750 38 80 00 0D */ li r4, 0xd -/* 802A5AF4 002A1754 38 A0 00 00 */ li r5, 0 -/* 802A5AF8 002A1758 90 03 01 08 */ stw r0, 0x108(r3) -/* 802A5AFC 002A175C 38 C0 00 00 */ li r6, 0 -/* 802A5B00 002A1760 38 E0 00 00 */ li r7, 0 -/* 802A5B04 002A1764 39 00 00 00 */ li r8, 0 -/* 802A5B08 002A1768 80 6D 89 90 */ lwz r3, lbl_8063DC50-_SDA_BASE_(r13) -/* 802A5B0C 002A176C 4B FF DE AD */ bl IOS_IoctlAsync -lbl_802A5B10: -/* 802A5B10 002A1770 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802A5B14 002A1774 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802A5B18 002A1778 83 C1 00 08 */ lwz r30, 8(r1) -/* 802A5B1C 002A177C 7C 08 03 A6 */ mtlr r0 -/* 802A5B20 002A1780 38 21 00 10 */ addi r1, r1, 0x10 -/* 802A5B24 002A1784 4E 80 00 20 */ blr - .global func_802A5B28 func_802A5B28: /* 802A5B28 002A1788 94 21 FF F0 */ stwu r1, -0x10(r1) @@ -1999,6 +28,7 @@ lbl_802A5B68: /* 802A5B78 002A17D8 7C 08 03 A6 */ mtlr r0 /* 802A5B7C 002A17DC 38 21 00 10 */ addi r1, r1, 0x10 /* 802A5B80 002A17E0 4E 80 00 20 */ blr + lbl_802A5B84: /* 802A5B84 002A17E4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802A5B88 002A17E8 7C 08 02 A6 */ mflr r0 diff --git a/asm/text_8_8.s b/asm/text_8_8.s index a033b2c..81873bb 100644 --- a/asm/text_8_8.s +++ b/asm/text_8_8.s @@ -400,7 +400,7 @@ lbl_802B3E18: lbl_802B3E1C: /* 802B3E1C 002AFA7C 80 6D AE 98 */ lwz r3, lbl_80640158-_SDA_BASE_(r13) /* 802B3E20 002AFA80 38 80 10 00 */ li r4, 0x1000 -/* 802B3E24 002AFA84 4B FF 01 E1 */ bl func_802A4004 +/* 802B3E24 002AFA84 4B FF 01 E1 */ bl iosCreateHeap /* 802B3E28 002AFA88 2C 03 00 00 */ cmpwi r3, 0 /* 802B3E2C 002AFA8C 90 6D 89 B0 */ stw r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B3E30 002AFA90 40 80 00 14 */ bge lbl_802B3E44 @@ -468,7 +468,7 @@ lbl_802B3EF0: /* 802B3F0C 002AFB6C 41 82 00 30 */ beq lbl_802B3F3C /* 802B3F10 002AFB70 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B3F14 002AFB74 7F C4 F3 78 */ mr r4, r30 -/* 802B3F18 002AFB78 4B FF 04 25 */ bl func_802A433C +/* 802B3F18 002AFB78 4B FF 04 25 */ bl iosFree /* 802B3F1C 002AFB7C 2C 03 00 00 */ cmpwi r3, 0 /* 802B3F20 002AFB80 40 80 00 1C */ bge lbl_802B3F3C /* 802B3F24 002AFB84 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -502,7 +502,7 @@ lbl_802B3F80: /* 802B3F84 002AFBE4 41 82 00 30 */ beq lbl_802B3FB4 /* 802B3F88 002AFBE8 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B3F8C 002AFBEC 7F 64 DB 78 */ mr r4, r27 -/* 802B3F90 002AFBF0 4B FF 03 AD */ bl func_802A433C +/* 802B3F90 002AFBF0 4B FF 03 AD */ bl iosFree /* 802B3F94 002AFBF4 2C 03 00 00 */ cmpwi r3, 0 /* 802B3F98 002AFBF8 40 80 00 1C */ bge lbl_802B3FB4 /* 802B3F9C 002AFBFC 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -542,7 +542,7 @@ lbl_802B4010: /* 802B4010 002AFC70 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4014 002AFC74 38 80 00 80 */ li r4, 0x80 /* 802B4018 002AFC78 38 A0 00 20 */ li r5, 0x20 -/* 802B401C 002AFC7C 4B FF 03 1D */ bl func_802A4338 +/* 802B401C 002AFC7C 4B FF 03 1D */ bl iosAllocAligned /* 802B4020 002AFC80 2C 03 00 00 */ cmpwi r3, 0 /* 802B4024 002AFC84 7C 7D 1B 78 */ mr r29, r3 /* 802B4028 002AFC88 40 82 00 1C */ bne lbl_802B4044 @@ -587,7 +587,7 @@ lbl_802B40B4: /* 802B40B8 002AFD18 41 82 00 30 */ beq lbl_802B40E8 /* 802B40BC 002AFD1C 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B40C0 002AFD20 7F A4 EB 78 */ mr r4, r29 -/* 802B40C4 002AFD24 4B FF 02 79 */ bl func_802A433C +/* 802B40C4 002AFD24 4B FF 02 79 */ bl iosFree /* 802B40C8 002AFD28 2C 03 00 00 */ cmpwi r3, 0 /* 802B40CC 002AFD2C 40 80 00 1C */ bge lbl_802B40E8 /* 802B40D0 002AFD30 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -623,7 +623,7 @@ func_802B4104: /* 802B4138 002AFD98 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B413C 002AFD9C 38 80 00 80 */ li r4, 0x80 /* 802B4140 002AFDA0 38 A0 00 20 */ li r5, 0x20 -/* 802B4144 002AFDA4 4B FF 01 F5 */ bl func_802A4338 +/* 802B4144 002AFDA4 4B FF 01 F5 */ bl iosAllocAligned /* 802B4148 002AFDA8 2C 03 00 00 */ cmpwi r3, 0 /* 802B414C 002AFDAC 7C 7E 1B 78 */ mr r30, r3 /* 802B4150 002AFDB0 40 82 00 1C */ bne lbl_802B416C @@ -662,7 +662,7 @@ lbl_802B4188: /* 802B41CC 002AFE2C 41 82 00 30 */ beq lbl_802B41FC /* 802B41D0 002AFE30 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B41D4 002AFE34 7F C4 F3 78 */ mr r4, r30 -/* 802B41D8 002AFE38 4B FF 01 65 */ bl func_802A433C +/* 802B41D8 002AFE38 4B FF 01 65 */ bl iosFree /* 802B41DC 002AFE3C 2C 03 00 00 */ cmpwi r3, 0 /* 802B41E0 002AFE40 40 80 00 1C */ bge lbl_802B41FC /* 802B41E4 002AFE44 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -700,7 +700,7 @@ func_802B4218: /* 802B4254 002AFEB4 3B FF DA 28 */ addi r31, r31, lbl_8043DA28@l /* 802B4258 002AFEB8 38 80 00 60 */ li r4, 0x60 /* 802B425C 002AFEBC 38 A0 00 20 */ li r5, 0x20 -/* 802B4260 002AFEC0 4B FF 00 D9 */ bl func_802A4338 +/* 802B4260 002AFEC0 4B FF 00 D9 */ bl iosAllocAligned /* 802B4264 002AFEC4 2C 03 00 00 */ cmpwi r3, 0 /* 802B4268 002AFEC8 7C 7C 1B 78 */ mr r28, r3 /* 802B426C 002AFECC 40 82 00 1C */ bne lbl_802B4288 @@ -714,7 +714,7 @@ lbl_802B4288: /* 802B4288 002AFEE8 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B428C 002AFEEC 38 80 00 20 */ li r4, 0x20 /* 802B4290 002AFEF0 38 A0 00 20 */ li r5, 0x20 -/* 802B4294 002AFEF4 4B FF 00 A5 */ bl func_802A4338 +/* 802B4294 002AFEF4 4B FF 00 A5 */ bl iosAllocAligned /* 802B4298 002AFEF8 2C 03 00 00 */ cmpwi r3, 0 /* 802B429C 002AFEFC 7C 7B 1B 78 */ mr r27, r3 /* 802B42A0 002AFF00 40 82 00 1C */ bne lbl_802B42BC @@ -728,7 +728,7 @@ lbl_802B42BC: /* 802B42BC 002AFF1C 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B42C0 002AFF20 38 80 00 20 */ li r4, 0x20 /* 802B42C4 002AFF24 38 A0 00 20 */ li r5, 0x20 -/* 802B42C8 002AFF28 4B FF 00 71 */ bl func_802A4338 +/* 802B42C8 002AFF28 4B FF 00 71 */ bl iosAllocAligned /* 802B42CC 002AFF2C 2C 03 00 00 */ cmpwi r3, 0 /* 802B42D0 002AFF30 7C 7A 1B 78 */ mr r26, r3 /* 802B42D4 002AFF34 40 82 00 1C */ bne lbl_802B42F0 @@ -789,7 +789,7 @@ lbl_802B43A0: /* 802B43A0 002B0000 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B43A4 002B0004 38 80 00 80 */ li r4, 0x80 /* 802B43A8 002B0008 38 A0 00 20 */ li r5, 0x20 -/* 802B43AC 002B000C 4B FE FF 8D */ bl func_802A4338 +/* 802B43AC 002B000C 4B FE FF 8D */ bl iosAllocAligned /* 802B43B0 002B0010 2C 03 00 00 */ cmpwi r3, 0 /* 802B43B4 002B0014 7C 7E 1B 78 */ mr r30, r3 /* 802B43B8 002B0018 40 82 00 1C */ bne lbl_802B43D4 @@ -838,7 +838,7 @@ lbl_802B43F0: /* 802B445C 002B00BC 41 82 00 30 */ beq lbl_802B448C /* 802B4460 002B00C0 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4464 002B00C4 7F C4 F3 78 */ mr r4, r30 -/* 802B4468 002B00C8 4B FE FE D5 */ bl func_802A433C +/* 802B4468 002B00C8 4B FE FE D5 */ bl iosFree /* 802B446C 002B00CC 2C 03 00 00 */ cmpwi r3, 0 /* 802B4470 002B00D0 40 80 00 1C */ bge lbl_802B448C /* 802B4474 002B00D4 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -852,7 +852,7 @@ lbl_802B448C: /* 802B4490 002B00F0 41 82 00 30 */ beq lbl_802B44C0 /* 802B4494 002B00F4 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4498 002B00F8 7F 64 DB 78 */ mr r4, r27 -/* 802B449C 002B00FC 4B FE FE A1 */ bl func_802A433C +/* 802B449C 002B00FC 4B FE FE A1 */ bl iosFree /* 802B44A0 002B0100 2C 03 00 00 */ cmpwi r3, 0 /* 802B44A4 002B0104 40 80 00 1C */ bge lbl_802B44C0 /* 802B44A8 002B0108 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -866,7 +866,7 @@ lbl_802B44C0: /* 802B44C4 002B0124 41 82 00 30 */ beq lbl_802B44F4 /* 802B44C8 002B0128 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B44CC 002B012C 7F 44 D3 78 */ mr r4, r26 -/* 802B44D0 002B0130 4B FE FE 6D */ bl func_802A433C +/* 802B44D0 002B0130 4B FE FE 6D */ bl iosFree /* 802B44D4 002B0134 2C 03 00 00 */ cmpwi r3, 0 /* 802B44D8 002B0138 40 80 00 1C */ bge lbl_802B44F4 /* 802B44DC 002B013C 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -880,7 +880,7 @@ lbl_802B44F4: /* 802B44F8 002B0158 41 82 00 30 */ beq lbl_802B4528 /* 802B44FC 002B015C 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4500 002B0160 7F 84 E3 78 */ mr r4, r28 -/* 802B4504 002B0164 4B FE FE 39 */ bl func_802A433C +/* 802B4504 002B0164 4B FE FE 39 */ bl iosFree /* 802B4508 002B0168 2C 03 00 00 */ cmpwi r3, 0 /* 802B450C 002B016C 40 80 00 1C */ bge lbl_802B4528 /* 802B4510 002B0170 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -1030,7 +1030,7 @@ lbl_802B4710: /* 802B4710 002B0370 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4714 002B0374 38 80 00 E0 */ li r4, 0xe0 /* 802B4718 002B0378 38 A0 00 20 */ li r5, 0x20 -/* 802B471C 002B037C 4B FE FC 1D */ bl func_802A4338 +/* 802B471C 002B037C 4B FE FC 1D */ bl iosAllocAligned /* 802B4720 002B0380 2C 03 00 00 */ cmpwi r3, 0 /* 802B4724 002B0384 7C 7E 1B 78 */ mr r30, r3 /* 802B4728 002B0388 40 82 00 1C */ bne lbl_802B4744 @@ -1044,7 +1044,7 @@ lbl_802B4744: /* 802B4744 002B03A4 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4748 002B03A8 38 80 00 20 */ li r4, 0x20 /* 802B474C 002B03AC 38 A0 00 20 */ li r5, 0x20 -/* 802B4750 002B03B0 4B FE FB E9 */ bl func_802A4338 +/* 802B4750 002B03B0 4B FE FB E9 */ bl iosAllocAligned /* 802B4754 002B03B4 2C 03 00 00 */ cmpwi r3, 0 /* 802B4758 002B03B8 7C 7D 1B 78 */ mr r29, r3 /* 802B475C 002B03BC 40 82 00 1C */ bne lbl_802B4778 @@ -1058,7 +1058,7 @@ lbl_802B4778: /* 802B4778 002B03D8 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B477C 002B03DC 38 80 00 20 */ li r4, 0x20 /* 802B4780 002B03E0 38 A0 00 20 */ li r5, 0x20 -/* 802B4784 002B03E4 4B FE FB B5 */ bl func_802A4338 +/* 802B4784 002B03E4 4B FE FB B5 */ bl iosAllocAligned /* 802B4788 002B03E8 2C 03 00 00 */ cmpwi r3, 0 /* 802B478C 002B03EC 7C 7C 1B 78 */ mr r28, r3 /* 802B4790 002B03F0 40 82 00 1C */ bne lbl_802B47AC @@ -1072,7 +1072,7 @@ lbl_802B47AC: /* 802B47AC 002B040C 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B47B0 002B0410 38 80 00 20 */ li r4, 0x20 /* 802B47B4 002B0414 38 A0 00 20 */ li r5, 0x20 -/* 802B47B8 002B0418 4B FE FB 81 */ bl func_802A4338 +/* 802B47B8 002B0418 4B FE FB 81 */ bl iosAllocAligned /* 802B47BC 002B041C 2C 03 00 00 */ cmpwi r3, 0 /* 802B47C0 002B0420 7C 7B 1B 78 */ mr r27, r3 /* 802B47C4 002B0424 40 82 00 1C */ bne lbl_802B47E0 @@ -1086,7 +1086,7 @@ lbl_802B47E0: /* 802B47E0 002B0440 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B47E4 002B0444 38 80 00 20 */ li r4, 0x20 /* 802B47E8 002B0448 38 A0 00 20 */ li r5, 0x20 -/* 802B47EC 002B044C 4B FE FB 4D */ bl func_802A4338 +/* 802B47EC 002B044C 4B FE FB 4D */ bl iosAllocAligned /* 802B47F0 002B0450 2C 03 00 00 */ cmpwi r3, 0 /* 802B47F4 002B0454 7C 7A 1B 78 */ mr r26, r3 /* 802B47F8 002B0458 40 82 00 1C */ bne lbl_802B4814 @@ -1100,7 +1100,7 @@ lbl_802B4814: /* 802B4814 002B0474 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4818 002B0478 38 80 00 20 */ li r4, 0x20 /* 802B481C 002B047C 38 A0 00 20 */ li r5, 0x20 -/* 802B4820 002B0480 4B FE FB 19 */ bl func_802A4338 +/* 802B4820 002B0480 4B FE FB 19 */ bl iosAllocAligned /* 802B4824 002B0484 2C 03 00 00 */ cmpwi r3, 0 /* 802B4828 002B0488 7C 79 1B 78 */ mr r25, r3 /* 802B482C 002B048C 40 82 00 1C */ bne lbl_802B4848 @@ -1114,7 +1114,7 @@ lbl_802B4848: /* 802B4848 002B04A8 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B484C 002B04AC 38 80 00 20 */ li r4, 0x20 /* 802B4850 002B04B0 38 A0 00 20 */ li r5, 0x20 -/* 802B4854 002B04B4 4B FE FA E5 */ bl func_802A4338 +/* 802B4854 002B04B4 4B FE FA E5 */ bl iosAllocAligned /* 802B4858 002B04B8 2C 03 00 00 */ cmpwi r3, 0 /* 802B485C 002B04BC 7C 78 1B 78 */ mr r24, r3 /* 802B4860 002B04C0 40 82 00 1C */ bne lbl_802B487C @@ -1204,7 +1204,7 @@ lbl_802B49A0: /* 802B49A0 002B0600 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B49A4 002B0604 38 80 00 80 */ li r4, 0x80 /* 802B49A8 002B0608 38 A0 00 20 */ li r5, 0x20 -/* 802B49AC 002B060C 4B FE F9 8D */ bl func_802A4338 +/* 802B49AC 002B060C 4B FE F9 8D */ bl iosAllocAligned /* 802B49B0 002B0610 2C 03 00 00 */ cmpwi r3, 0 /* 802B49B4 002B0614 7C 6E 1B 78 */ mr r14, r3 /* 802B49B8 002B0618 40 82 00 1C */ bne lbl_802B49D4 @@ -1261,7 +1261,7 @@ lbl_802B49F0: /* 802B4A7C 002B06DC 41 82 00 30 */ beq lbl_802B4AAC /* 802B4A80 002B06E0 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4A84 002B06E4 7D C4 73 78 */ mr r4, r14 -/* 802B4A88 002B06E8 4B FE F8 B5 */ bl func_802A433C +/* 802B4A88 002B06E8 4B FE F8 B5 */ bl iosFree /* 802B4A8C 002B06EC 2C 03 00 00 */ cmpwi r3, 0 /* 802B4A90 002B06F0 40 80 00 1C */ bge lbl_802B4AAC /* 802B4A94 002B06F4 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -1275,7 +1275,7 @@ lbl_802B4AAC: /* 802B4AB0 002B0710 41 82 00 30 */ beq lbl_802B4AE0 /* 802B4AB4 002B0714 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4AB8 002B0718 7F A4 EB 78 */ mr r4, r29 -/* 802B4ABC 002B071C 4B FE F8 81 */ bl func_802A433C +/* 802B4ABC 002B071C 4B FE F8 81 */ bl iosFree /* 802B4AC0 002B0720 2C 03 00 00 */ cmpwi r3, 0 /* 802B4AC4 002B0724 40 80 00 1C */ bge lbl_802B4AE0 /* 802B4AC8 002B0728 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -1289,7 +1289,7 @@ lbl_802B4AE0: /* 802B4AE4 002B0744 41 82 00 30 */ beq lbl_802B4B14 /* 802B4AE8 002B0748 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4AEC 002B074C 7F 84 E3 78 */ mr r4, r28 -/* 802B4AF0 002B0750 4B FE F8 4D */ bl func_802A433C +/* 802B4AF0 002B0750 4B FE F8 4D */ bl iosFree /* 802B4AF4 002B0754 2C 03 00 00 */ cmpwi r3, 0 /* 802B4AF8 002B0758 40 80 00 1C */ bge lbl_802B4B14 /* 802B4AFC 002B075C 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -1303,7 +1303,7 @@ lbl_802B4B14: /* 802B4B18 002B0778 41 82 00 30 */ beq lbl_802B4B48 /* 802B4B1C 002B077C 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4B20 002B0780 7F 44 D3 78 */ mr r4, r26 -/* 802B4B24 002B0784 4B FE F8 19 */ bl func_802A433C +/* 802B4B24 002B0784 4B FE F8 19 */ bl iosFree /* 802B4B28 002B0788 2C 03 00 00 */ cmpwi r3, 0 /* 802B4B2C 002B078C 40 80 00 1C */ bge lbl_802B4B48 /* 802B4B30 002B0790 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -1317,7 +1317,7 @@ lbl_802B4B48: /* 802B4B4C 002B07AC 41 82 00 30 */ beq lbl_802B4B7C /* 802B4B50 002B07B0 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4B54 002B07B4 7F 24 CB 78 */ mr r4, r25 -/* 802B4B58 002B07B8 4B FE F7 E5 */ bl func_802A433C +/* 802B4B58 002B07B8 4B FE F7 E5 */ bl iosFree /* 802B4B5C 002B07BC 2C 03 00 00 */ cmpwi r3, 0 /* 802B4B60 002B07C0 40 80 00 1C */ bge lbl_802B4B7C /* 802B4B64 002B07C4 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -1331,7 +1331,7 @@ lbl_802B4B7C: /* 802B4B80 002B07E0 41 82 00 30 */ beq lbl_802B4BB0 /* 802B4B84 002B07E4 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4B88 002B07E8 7F 04 C3 78 */ mr r4, r24 -/* 802B4B8C 002B07EC 4B FE F7 B1 */ bl func_802A433C +/* 802B4B8C 002B07EC 4B FE F7 B1 */ bl iosFree /* 802B4B90 002B07F0 2C 03 00 00 */ cmpwi r3, 0 /* 802B4B94 002B07F4 40 80 00 1C */ bge lbl_802B4BB0 /* 802B4B98 002B07F8 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -1345,7 +1345,7 @@ lbl_802B4BB0: /* 802B4BB4 002B0814 41 82 00 30 */ beq lbl_802B4BE4 /* 802B4BB8 002B0818 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4BBC 002B081C 7F 64 DB 78 */ mr r4, r27 -/* 802B4BC0 002B0820 4B FE F7 7D */ bl func_802A433C +/* 802B4BC0 002B0820 4B FE F7 7D */ bl iosFree /* 802B4BC4 002B0824 2C 03 00 00 */ cmpwi r3, 0 /* 802B4BC8 002B0828 40 80 00 1C */ bge lbl_802B4BE4 /* 802B4BCC 002B082C 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) @@ -1359,7 +1359,7 @@ lbl_802B4BE4: /* 802B4BE8 002B0848 41 82 00 30 */ beq lbl_802B4C18 /* 802B4BEC 002B084C 80 6D 89 B0 */ lwz r3, lbl_8063DC70-_SDA_BASE_(r13) /* 802B4BF0 002B0850 7F C4 F3 78 */ mr r4, r30 -/* 802B4BF4 002B0854 4B FE F7 49 */ bl func_802A433C +/* 802B4BF4 002B0854 4B FE F7 49 */ bl iosFree /* 802B4BF8 002B0858 2C 03 00 00 */ cmpwi r3, 0 /* 802B4BFC 002B085C 40 80 00 1C */ bge lbl_802B4C18 /* 802B4C00 002B0860 80 8D 89 B0 */ lwz r4, lbl_8063DC70-_SDA_BASE_(r13) diff --git a/asm/text_9.s b/asm/text_9.s index 7f6a095..d94b022 100644 --- a/asm/text_9.s +++ b/asm/text_9.s @@ -23611,7 +23611,7 @@ lbl_802E7504: /* 802E7534 002E3194 7F A9 EB 78 */ mr r9, r29 /* 802E7538 002E3198 38 61 00 18 */ addi r3, r1, 0x18 /* 802E753C 002E319C 39 08 9F 08 */ addi r8, r8, lbl_802E9F08@l -/* 802E7540 002E31A0 4B FB E0 11 */ bl func_802A5550 +/* 802E7540 002E31A0 4B FB E0 11 */ bl ISFS_CreateFileAsync /* 802E7544 002E31A4 48 00 00 1C */ b lbl_802E7560 lbl_802E7548: /* 802E7548 002E31A8 80 A1 00 10 */ lwz r5, 0x10(r1) @@ -23619,7 +23619,7 @@ lbl_802E7548: /* 802E7550 002E31B0 80 C1 00 0C */ lwz r6, 0xc(r1) /* 802E7554 002E31B4 38 61 00 18 */ addi r3, r1, 0x18 /* 802E7558 002E31B8 80 E1 00 08 */ lwz r7, 8(r1) -/* 802E755C 002E31BC 4B FB DF 01 */ bl func_802A545C +/* 802E755C 002E31BC 4B FB DF 01 */ bl ISFS_CreateFile lbl_802E7560: /* 802E7560 002E31C0 39 61 00 70 */ addi r11, r1, 0x70 /* 802E7564 002E31C4 4B ED FC 11 */ bl _restgpr_27 @@ -23807,7 +23807,7 @@ lbl_802E7778: /* 802E77DC 002E343C 48 00 00 0C */ b lbl_802E77E8 lbl_802E77E0: /* 802E77E0 002E3440 38 61 00 08 */ addi r3, r1, 8 -/* 802E77E4 002E3444 4B FB D8 A9 */ bl func_802A508C +/* 802E77E4 002E3444 4B FB D8 A9 */ bl ISFS_Delete lbl_802E77E8: /* 802E77E8 002E3448 48 00 1C 21 */ bl func_802E9408 lbl_802E77EC: @@ -23859,7 +23859,7 @@ lbl_802E7838: /* 802E7890 002E34F0 7F E5 FB 78 */ mr r5, r31 /* 802E7894 002E34F4 38 61 00 08 */ addi r3, r1, 8 /* 802E7898 002E34F8 38 84 9F 08 */ addi r4, r4, lbl_802E9F08@l -/* 802E789C 002E34FC 4B FB D8 C9 */ bl func_802A5164 +/* 802E789C 002E34FC 4B FB D8 C9 */ bl ISFS_DeleteAsync /* 802E78A0 002E3500 48 00 1B 69 */ bl func_802E9408 lbl_802E78A4: /* 802E78A4 002E3504 80 01 00 64 */ lwz r0, 0x64(r1) @@ -23887,7 +23887,7 @@ func_802E78C0: /* 802E78F0 002E3550 80 7D 00 00 */ lwz r3, 0(r29) /* 802E78F4 002E3554 7F C4 F3 78 */ mr r4, r30 /* 802E78F8 002E3558 7F E5 FB 78 */ mr r5, r31 -/* 802E78FC 002E355C 4B FB DF 8D */ bl func_802A5888 +/* 802E78FC 002E355C 4B FB DF 8D */ bl ISFS_Read /* 802E7900 002E3560 48 00 1B 09 */ bl func_802E9408 /* 802E7904 002E3564 48 00 00 08 */ b lbl_802E790C lbl_802E7908: @@ -23926,7 +23926,7 @@ lbl_802E7964: /* 802E7974 002E35D4 80 7B 00 00 */ lwz r3, 0(r27) /* 802E7978 002E35D8 7F E7 FB 78 */ mr r7, r31 /* 802E797C 002E35DC 38 C6 9F 08 */ addi r6, r6, lbl_802E9F08@l -/* 802E7980 002E35E0 4B FB DF 29 */ bl func_802A58A8 +/* 802E7980 002E35E0 4B FB DF 29 */ bl ISFS_ReadAsync /* 802E7984 002E35E4 48 00 1A 85 */ bl func_802E9408 lbl_802E7988: /* 802E7988 002E35E8 39 61 00 20 */ addi r11, r1, 0x20 @@ -23953,7 +23953,7 @@ func_802E79A0: /* 802E79D0 002E3630 80 7D 00 00 */ lwz r3, 0(r29) /* 802E79D4 002E3634 7F C4 F3 78 */ mr r4, r30 /* 802E79D8 002E3638 7F E5 FB 78 */ mr r5, r31 -/* 802E79DC 002E363C 4B FB DF 71 */ bl func_802A594C +/* 802E79DC 002E363C 4B FB DF 71 */ bl ISFS_Write /* 802E79E0 002E3640 48 00 1A 29 */ bl func_802E9408 /* 802E79E4 002E3644 48 00 00 08 */ b lbl_802E79EC lbl_802E79E8: @@ -23992,7 +23992,7 @@ lbl_802E7A44: /* 802E7A54 002E36B4 80 7B 00 00 */ lwz r3, 0(r27) /* 802E7A58 002E36B8 7F E7 FB 78 */ mr r7, r31 /* 802E7A5C 002E36BC 38 C6 9F 08 */ addi r6, r6, lbl_802E9F08@l -/* 802E7A60 002E36C0 4B FB DF 0D */ bl func_802A596C +/* 802E7A60 002E36C0 4B FB DF 0D */ bl ISFS_WriteAsync /* 802E7A64 002E36C4 48 00 19 A5 */ bl func_802E9408 lbl_802E7A68: /* 802E7A68 002E36C8 39 61 00 20 */ addi r11, r1, 0x20 @@ -24041,7 +24041,7 @@ lbl_802E7AF4: /* 802E7AF4 002E3754 38 A0 00 02 */ li r5, 2 lbl_802E7AF8: /* 802E7AF8 002E3758 7F C4 F3 78 */ mr r4, r30 -/* 802E7AFC 002E375C 4B FB DC FD */ bl func_802A57F8 +/* 802E7AFC 002E375C 4B FB DC FD */ bl ISFS_Seek /* 802E7B00 002E3760 48 00 19 09 */ bl func_802E9408 lbl_802E7B04: /* 802E7B04 002E3764 80 01 00 24 */ lwz r0, 0x24(r1) @@ -24096,7 +24096,7 @@ lbl_802E7BA0: /* 802E7BA4 002E3804 7F 84 E3 78 */ mr r4, r28 /* 802E7BA8 002E3808 7F E7 FB 78 */ mr r7, r31 /* 802E7BAC 002E380C 38 C6 9F 08 */ addi r6, r6, lbl_802E9F08@l -/* 802E7BB0 002E3810 4B FB DC 4D */ bl func_802A57FC +/* 802E7BB0 002E3810 4B FB DC 4D */ bl ISFS_SeekAsync /* 802E7BB4 002E3814 48 00 18 55 */ bl func_802E9408 lbl_802E7BB8: /* 802E7BB8 002E3818 39 61 00 20 */ addi r11, r1, 0x20 @@ -24158,7 +24158,7 @@ lbl_802E7C78: /* 802E7C84 002E38E4 7F E7 FB 78 */ mr r7, r31 /* 802E7C88 002E38E8 38 61 00 08 */ addi r3, r1, 8 /* 802E7C8C 002E38EC 38 C6 9F 08 */ addi r6, r6, lbl_802E9F08@l -/* 802E7C90 002E38F0 4B FB D0 29 */ bl func_802A4CB8 +/* 802E7C90 002E38F0 4B FB D0 29 */ bl ISFS_ReadDirAsync lbl_802E7C94: /* 802E7C94 002E38F4 48 00 17 75 */ bl func_802E9408 lbl_802E7C98: @@ -24234,7 +24234,7 @@ lbl_802E7D58: /* 802E7D98 002E39F8 7F A9 EB 78 */ mr r9, r29 /* 802E7D9C 002E39FC 38 61 00 18 */ addi r3, r1, 0x18 /* 802E7DA0 002E3A00 39 08 9F 08 */ addi r8, r8, lbl_802E9F08@l -/* 802E7DA4 002E3A04 4B FB CC CD */ bl func_802A4A70 +/* 802E7DA4 002E3A04 4B FB CC CD */ bl ISFS_CreateDirAsync /* 802E7DA8 002E3A08 48 00 00 1C */ b lbl_802E7DC4 lbl_802E7DAC: /* 802E7DAC 002E3A0C 80 A1 00 10 */ lwz r5, 0x10(r1) @@ -24242,7 +24242,7 @@ lbl_802E7DAC: /* 802E7DB4 002E3A14 80 C1 00 0C */ lwz r6, 0xc(r1) /* 802E7DB8 002E3A18 38 61 00 18 */ addi r3, r1, 0x18 /* 802E7DBC 002E3A1C 80 E1 00 08 */ lwz r7, 8(r1) -/* 802E7DC0 002E3A20 4B FB CB BD */ bl func_802A497C +/* 802E7DC0 002E3A20 4B FB CB BD */ bl ISFS_CreateDir lbl_802E7DC4: /* 802E7DC4 002E3A24 39 61 00 70 */ addi r11, r1, 0x70 /* 802E7DC8 002E3A28 4B ED F3 AD */ bl _restgpr_27 @@ -24341,7 +24341,7 @@ func_802E7ECC: lbl_802E7F08: /* 802E7F08 002E3B68 80 7E 00 00 */ lwz r3, 0(r30) /* 802E7F0C 002E3B6C 38 81 00 20 */ addi r4, r1, 0x20 -/* 802E7F10 002E3B70 4B FB D8 B5 */ bl func_802A57C4 +/* 802E7F10 002E3B70 4B FB D8 B5 */ bl ISFS_GetFileStats /* 802E7F14 002E3B74 2C 03 00 00 */ cmpwi r3, 0 /* 802E7F18 002E3B78 40 82 00 1C */ bne lbl_802E7F34 /* 802E7F1C 002E3B7C 2C 1F 00 00 */ cmpwi r31, 0 @@ -24488,7 +24488,7 @@ lbl_802E80D0: /* 802E80F4 002E3D54 39 1D 00 28 */ addi r8, r29, 0x28 /* 802E80F8 002E3D58 39 3D 00 2C */ addi r9, r29, 0x2c /* 802E80FC 002E3D5C 39 4A 81 88 */ addi r10, r10, lbl_802E8188@l -/* 802E8100 002E3D60 4B FB CE 59 */ bl func_802A4F58 +/* 802E8100 002E3D60 4B FB CE 59 */ bl ISFS_GetAttrAsync /* 802E8104 002E3D64 48 00 00 64 */ b lbl_802E8168 lbl_802E8108: /* 802E8108 002E3D68 38 00 00 00 */ li r0, 0 @@ -24503,7 +24503,7 @@ lbl_802E8108: /* 802E812C 002E3D8C 39 21 00 10 */ addi r9, r1, 0x10 /* 802E8130 002E3D90 90 01 00 14 */ stw r0, 0x14(r1) /* 802E8134 002E3D94 90 01 00 10 */ stw r0, 0x10(r1) -/* 802E8138 002E3D98 4B FB CC C9 */ bl func_802A4E00 +/* 802E8138 002E3D98 4B FB CC C9 */ bl ISFS_GetAttr /* 802E813C 002E3D9C 2C 03 00 00 */ cmpwi r3, 0 /* 802E8140 002E3DA0 7C 7F 1B 78 */ mr r31, r3 /* 802E8144 002E3DA4 40 82 00 20 */ bne lbl_802E8164 @@ -24700,12 +24700,12 @@ lbl_802E83C0: /* 802E83D0 002E4030 7F 86 E3 78 */ mr r6, r28 /* 802E83D4 002E4034 38 61 00 08 */ addi r3, r1, 8 /* 802E83D8 002E4038 38 A5 86 10 */ addi r5, r5, lbl_802E8610@l -/* 802E83DC 002E403C 4B FB D3 31 */ bl func_802A570C +/* 802E83DC 002E403C 4B FB D3 31 */ bl ISFS_OpenAsync /* 802E83E0 002E4040 48 00 00 10 */ b lbl_802E83F0 lbl_802E83E4: /* 802E83E4 002E4044 7F E4 FB 78 */ mr r4, r31 /* 802E83E8 002E4048 38 61 00 08 */ addi r3, r1, 8 -/* 802E83EC 002E404C 4B FB D2 59 */ bl func_802A5644 +/* 802E83EC 002E404C 4B FB D2 59 */ bl ISFS_Open lbl_802E83F0: /* 802E83F0 002E4050 39 61 00 60 */ addi r11, r1, 0x60 /* 802E83F4 002E4054 4B ED ED 81 */ bl _restgpr_27 @@ -24919,7 +24919,7 @@ lbl_802E86B0: /* 802E86C0 002E4320 48 00 00 20 */ b lbl_802E86E0 lbl_802E86C4: /* 802E86C4 002E4324 80 7F 00 00 */ lwz r3, 0(r31) -/* 802E86C8 002E4328 4B FB D3 49 */ bl func_802A5A10 +/* 802E86C8 002E4328 4B FB D3 49 */ bl ISFS_Close /* 802E86CC 002E432C 2C 03 00 00 */ cmpwi r3, 0 /* 802E86D0 002E4330 40 82 00 0C */ bne lbl_802E86DC /* 802E86D4 002E4334 38 00 00 02 */ li r0, 2 @@ -24962,7 +24962,7 @@ lbl_802E8740: /* 802E874C 002E43AC 93 BF 00 08 */ stw r29, 8(r31) /* 802E8750 002E43B0 38 84 8F 8C */ addi r4, r4, lbl_802E8F8C@l /* 802E8754 002E43B4 80 7D 00 00 */ lwz r3, 0(r29) -/* 802E8758 002E43B8 4B FB D2 BD */ bl func_802A5A14 +/* 802E8758 002E43B8 4B FB D2 BD */ bl ISFS_CloseAsync /* 802E875C 002E43BC 48 00 0C AD */ bl func_802E9408 lbl_802E8760: /* 802E8760 002E43C0 80 01 00 24 */ lwz r0, 0x24(r1) @@ -25021,7 +25021,7 @@ lbl_802E8804: /* 802E881C 002E447C 93 BE 00 04 */ stw r29, 4(r30) /* 802E8820 002E4480 38 A5 8C 60 */ addi r5, r5, lbl_802E8C60@l /* 802E8824 002E4484 38 80 00 01 */ li r4, 1 -/* 802E8828 002E4488 4B FB CE E5 */ bl func_802A570C +/* 802E8828 002E4488 4B FB CE E5 */ bl ISFS_OpenAsync /* 802E882C 002E448C 2C 03 00 00 */ cmpwi r3, 0 /* 802E8830 002E4490 40 82 00 0C */ bne lbl_802E883C /* 802E8834 002E4494 38 60 00 00 */ li r3, 0 @@ -25049,7 +25049,7 @@ lbl_802E8844: /* 802E8884 002E44E4 38 E0 00 03 */ li r7, 3 /* 802E8888 002E44E8 93 7E 00 80 */ stw r27, 0x80(r30) /* 802E888C 002E44EC 93 9E 00 84 */ stw r28, 0x84(r30) -/* 802E8890 002E44F0 4B FB C1 E1 */ bl func_802A4A70 +/* 802E8890 002E44F0 4B FB C1 E1 */ bl ISFS_CreateDirAsync /* 802E8894 002E44F4 2C 03 00 00 */ cmpwi r3, 0 /* 802E8898 002E44F8 40 82 00 08 */ bne lbl_802E88A0 /* 802E889C 002E44FC 48 00 00 0C */ b lbl_802E88A8 @@ -25109,7 +25109,7 @@ lbl_802E8928: /* 802E8958 002E45B8 39 24 00 2C */ addi r9, r4, 0x2c /* 802E895C 002E45BC 39 4A 88 CC */ addi r10, r10, lbl_802E88CC@l /* 802E8960 002E45C0 38 84 00 18 */ addi r4, r4, 0x18 -/* 802E8964 002E45C4 4B FB C5 F5 */ bl func_802A4F58 +/* 802E8964 002E45C4 4B FB C5 F5 */ bl ISFS_GetAttrAsync /* 802E8968 002E45C8 7C 66 1B 78 */ mr r6, r3 /* 802E896C 002E45CC 48 00 02 98 */ b lbl_802E8C04 lbl_802E8970: @@ -25120,7 +25120,7 @@ lbl_802E8970: /* 802E8980 002E45E0 38 7D 00 08 */ addi r3, r29, 8 /* 802E8984 002E45E4 38 80 00 01 */ li r4, 1 /* 802E8988 002E45E8 38 A5 88 CC */ addi r5, r5, lbl_802E88CC@l -/* 802E898C 002E45EC 4B FB CD 81 */ bl func_802A570C +/* 802E898C 002E45EC 4B FB CD 81 */ bl ISFS_OpenAsync /* 802E8990 002E45F0 7C 66 1B 78 */ mr r6, r3 /* 802E8994 002E45F4 48 00 02 70 */ b lbl_802E8C04 lbl_802E8998: @@ -25150,7 +25150,7 @@ lbl_802E8998: /* 802E89F4 002E4654 38 A0 00 03 */ li r5, 3 /* 802E89F8 002E4658 38 C0 00 00 */ li r6, 0 /* 802E89FC 002E465C 38 E0 00 00 */ li r7, 0 -/* 802E8A00 002E4660 4B FB C0 71 */ bl func_802A4A70 +/* 802E8A00 002E4660 4B FB C0 71 */ bl ISFS_CreateDirAsync /* 802E8A04 002E4664 7C 66 1B 78 */ mr r6, r3 /* 802E8A08 002E4668 48 00 01 FC */ b lbl_802E8C04 lbl_802E8A0C: @@ -25178,7 +25178,7 @@ lbl_802E8A0C: /* 802E8A60 002E46C0 38 7D 00 48 */ addi r3, r29, 0x48 /* 802E8A64 002E46C4 80 FF 00 2C */ lwz r7, 0x2c(r31) /* 802E8A68 002E46C8 39 08 88 CC */ addi r8, r8, lbl_802E88CC@l -/* 802E8A6C 002E46CC 4B FB CA E5 */ bl func_802A5550 +/* 802E8A6C 002E46CC 4B FB CA E5 */ bl ISFS_CreateFileAsync /* 802E8A70 002E46D0 7C 66 1B 78 */ mr r6, r3 /* 802E8A74 002E46D4 48 00 01 90 */ b lbl_802E8C04 lbl_802E8A78: @@ -25194,7 +25194,7 @@ lbl_802E8A78: /* 802E8A9C 002E46FC 38 7D 00 48 */ addi r3, r29, 0x48 /* 802E8AA0 002E4700 38 80 00 02 */ li r4, 2 /* 802E8AA4 002E4704 38 A5 88 CC */ addi r5, r5, lbl_802E88CC@l -/* 802E8AA8 002E4708 4B FB CC 65 */ bl func_802A570C +/* 802E8AA8 002E4708 4B FB CC 65 */ bl ISFS_OpenAsync /* 802E8AAC 002E470C 7C 66 1B 78 */ mr r6, r3 /* 802E8AB0 002E4710 48 00 01 54 */ b lbl_802E8C04 lbl_802E8AB4: @@ -25205,7 +25205,7 @@ lbl_802E8AB4: /* 802E8AC4 002E4724 38 7D 00 48 */ addi r3, r29, 0x48 /* 802E8AC8 002E4728 38 80 00 03 */ li r4, 3 /* 802E8ACC 002E472C 38 A5 88 CC */ addi r5, r5, lbl_802E88CC@l -/* 802E8AD0 002E4730 4B FB CC 3D */ bl func_802A570C +/* 802E8AD0 002E4730 4B FB CC 3D */ bl ISFS_OpenAsync /* 802E8AD4 002E4734 7C 66 1B 78 */ mr r6, r3 /* 802E8AD8 002E4738 48 00 01 2C */ b lbl_802E8C04 lbl_802E8ADC: @@ -25225,7 +25225,7 @@ lbl_802E8AE4: /* 802E8B0C 002E476C 80 84 00 80 */ lwz r4, 0x80(r4) /* 802E8B10 002E4770 80 7D 00 04 */ lwz r3, 4(r29) /* 802E8B14 002E4774 80 BF 00 84 */ lwz r5, 0x84(r31) -/* 802E8B18 002E4778 4B FB CD 91 */ bl func_802A58A8 +/* 802E8B18 002E4778 4B FB CD 91 */ bl ISFS_ReadAsync /* 802E8B1C 002E477C 7C 66 1B 78 */ mr r6, r3 /* 802E8B20 002E4780 48 00 00 E4 */ b lbl_802E8C04 lbl_802E8B24: @@ -25237,7 +25237,7 @@ lbl_802E8B24: /* 802E8B38 002E4798 7F E7 FB 78 */ mr r7, r31 /* 802E8B3C 002E479C 80 BF 00 84 */ lwz r5, 0x84(r31) /* 802E8B40 002E47A0 38 C6 88 CC */ addi r6, r6, lbl_802E88CC@l -/* 802E8B44 002E47A4 4B FB CD 65 */ bl func_802A58A8 +/* 802E8B44 002E47A4 4B FB CD 65 */ bl ISFS_ReadAsync /* 802E8B48 002E47A8 7C 66 1B 78 */ mr r6, r3 /* 802E8B4C 002E47AC 48 00 00 B8 */ b lbl_802E8C04 lbl_802E8B50: @@ -25253,7 +25253,7 @@ lbl_802E8B50: /* 802E8B74 002E47D4 7F E7 FB 78 */ mr r7, r31 /* 802E8B78 002E47D8 80 7D 00 00 */ lwz r3, 0(r29) /* 802E8B7C 002E47DC 38 C6 88 CC */ addi r6, r6, lbl_802E88CC@l -/* 802E8B80 002E47E0 4B FB CD ED */ bl func_802A596C +/* 802E8B80 002E47E0 4B FB CD ED */ bl ISFS_WriteAsync /* 802E8B84 002E47E4 7C 66 1B 78 */ mr r6, r3 /* 802E8B88 002E47E8 48 00 00 7C */ b lbl_802E8C04 lbl_802E8B8C: @@ -25264,7 +25264,7 @@ lbl_802E8B8C: /* 802E8B9C 002E47FC 38 80 00 00 */ li r4, 0 /* 802E8BA0 002E4800 38 C6 88 CC */ addi r6, r6, lbl_802E88CC@l /* 802E8BA4 002E4804 38 A0 00 00 */ li r5, 0 -/* 802E8BA8 002E4808 4B FB CC 55 */ bl func_802A57FC +/* 802E8BA8 002E4808 4B FB CC 55 */ bl ISFS_SeekAsync /* 802E8BAC 002E480C 7C 66 1B 78 */ mr r6, r3 /* 802E8BB0 002E4810 48 00 00 54 */ b lbl_802E8C04 lbl_802E8BB4: @@ -25381,7 +25381,7 @@ lbl_802E8D24: /* 802E8D3C 002E499C 93 DF 00 04 */ stw r30, 4(r31) /* 802E8D40 002E49A0 38 84 8F 30 */ addi r4, r4, lbl_802E8F30@l /* 802E8D44 002E49A4 80 7D 00 00 */ lwz r3, 0(r29) -/* 802E8D48 002E49A8 4B FB CC CD */ bl func_802A5A14 +/* 802E8D48 002E49A8 4B FB CC CD */ bl ISFS_CloseAsync /* 802E8D4C 002E49AC 48 00 00 40 */ b lbl_802E8D8C lbl_802E8D50: /* 802E8D50 002E49B0 38 03 00 FE */ addi r0, r3, 0xfe @@ -25396,7 +25396,7 @@ lbl_802E8D50: /* 802E8D74 002E49D4 93 DF 00 04 */ stw r30, 4(r31) /* 802E8D78 002E49D8 90 1F 00 7C */ stw r0, 0x7c(r31) /* 802E8D7C 002E49DC 80 7D 00 00 */ lwz r3, 0(r29) -/* 802E8D80 002E49E0 4B FB CC 95 */ bl func_802A5A14 +/* 802E8D80 002E49E0 4B FB CC 95 */ bl ISFS_CloseAsync /* 802E8D84 002E49E4 48 00 00 08 */ b lbl_802E8D8C lbl_802E8D88: /* 802E8D88 002E49E8 38 60 FF 9B */ li r3, -101 @@ -25431,7 +25431,7 @@ lbl_802E8DAC: /* 802E8DF0 002E4A50 7F E5 FB 78 */ mr r5, r31 /* 802E8DF4 002E4A54 38 84 8D AC */ addi r4, r4, lbl_802E8DAC@l /* 802E8DF8 002E4A58 80 67 00 04 */ lwz r3, 4(r7) -/* 802E8DFC 002E4A5C 4B FB CC 19 */ bl func_802A5A14 +/* 802E8DFC 002E4A5C 4B FB CC 19 */ bl ISFS_CloseAsync /* 802E8E00 002E4A60 7C 66 1B 78 */ mr r6, r3 /* 802E8E04 002E4A64 48 00 00 E0 */ b lbl_802E8EE4 lbl_802E8E08: @@ -25444,7 +25444,7 @@ lbl_802E8E08: /* 802E8E20 002E4A80 38 67 00 48 */ addi r3, r7, 0x48 /* 802E8E24 002E4A84 38 87 00 08 */ addi r4, r7, 8 /* 802E8E28 002E4A88 38 A5 8D AC */ addi r5, r5, lbl_802E8DAC@l -/* 802E8E2C 002E4A8C 4B FB C4 09 */ bl func_802A5234 +/* 802E8E2C 002E4A8C 4B FB C4 09 */ bl ISFS_RenameAsync /* 802E8E30 002E4A90 7C 66 1B 78 */ mr r6, r3 /* 802E8E34 002E4A94 48 00 00 B0 */ b lbl_802E8EE4 lbl_802E8E38: @@ -25476,7 +25476,7 @@ lbl_802E8E38: /* 802E8E9C 002E4AFC 7F E5 FB 78 */ mr r5, r31 /* 802E8EA0 002E4B00 38 61 00 08 */ addi r3, r1, 8 /* 802E8EA4 002E4B04 38 84 8D AC */ addi r4, r4, lbl_802E8DAC@l -/* 802E8EA8 002E4B08 4B FB C2 BD */ bl func_802A5164 +/* 802E8EA8 002E4B08 4B FB C2 BD */ bl ISFS_DeleteAsync /* 802E8EAC 002E4B0C 7C 66 1B 78 */ mr r6, r3 /* 802E8EB0 002E4B10 48 00 00 34 */ b lbl_802E8EE4 lbl_802E8EB4: @@ -26074,7 +26074,7 @@ lbl_802E96A4: /* 802E96A4 002E5304 38 00 00 01 */ li r0, 1 /* 802E96A8 002E5308 90 0D AF 08 */ stw r0, lbl_806401C8-_SDA_BASE_(r13) /* 802E96AC 002E530C 4B F8 50 D9 */ bl OSRestoreInterrupts -/* 802E96B0 002E5310 4B FB B0 3D */ bl func_802A46EC +/* 802E96B0 002E5310 4B FB B0 3D */ bl ISFS_OpenLib /* 802E96B4 002E5314 2C 03 00 00 */ cmpwi r3, 0 /* 802E96B8 002E5318 7C 7C 1B 78 */ mr r28, r3 /* 802E96BC 002E531C 40 82 01 2C */ bne lbl_802E97E8 @@ -26237,7 +26237,7 @@ lbl_802E9894: /* 802E98F0 002E5550 7C 7C 1B 78 */ mr r28, r3 /* 802E98F4 002E5554 38 81 00 08 */ addi r4, r1, 8 /* 802E98F8 002E5558 38 65 99 84 */ addi r3, r5, EmissionControllerFinished@l -/* 802E98FC 002E555C 4B FB C1 9D */ bl func_802A5A98 +/* 802E98FC 002E555C 4B FB C1 9D */ bl ISFS_ShutdownAsync /* 802E9900 002E5560 3C 60 10 62 */ lis r3, 0x10624DD3@ha /* 802E9904 002E5564 3F C0 80 00 */ lis r30, 0x8000 /* 802E9908 002E5568 3B A3 4D D3 */ addi r29, r3, 0x10624DD3@l @@ -26362,7 +26362,7 @@ lbl_802E9A8C: /* 802E9A98 002E56F8 38 BE 00 30 */ addi r5, r30, 0x30 /* 802E9A9C 002E56FC 38 C6 9D 1C */ addi r6, r6, lbl_802E9D1C@l /* 802E9AA0 002E5700 38 80 00 00 */ li r4, 0 -/* 802E9AA4 002E5704 4B FB B2 15 */ bl func_802A4CB8 +/* 802E9AA4 002E5704 4B FB B2 15 */ bl ISFS_ReadDirAsync /* 802E9AA8 002E5708 48 00 01 60 */ b lbl_802E9C08 lbl_802E9AAC: /* 802E9AAC 002E570C 38 00 00 00 */ li r0, 0 @@ -26447,7 +26447,7 @@ lbl_802E9BC8: /* 802E9BC8 002E5828 38 61 00 10 */ addi r3, r1, 0x10 /* 802E9BCC 002E582C 38 A1 00 08 */ addi r5, r1, 8 /* 802E9BD0 002E5830 38 80 00 00 */ li r4, 0 -/* 802E9BD4 002E5834 4B FB AF 91 */ bl func_802A4B64 +/* 802E9BD4 002E5834 4B FB AF 91 */ bl ISFS_ReadDir /* 802E9BD8 002E5838 2C 03 00 00 */ cmpwi r3, 0 /* 802E9BDC 002E583C 7C 7F 1B 78 */ mr r31, r3 /* 802E9BE0 002E5840 40 82 00 24 */ bne lbl_802E9C04 @@ -26842,7 +26842,7 @@ lbl_802EA118: /* 802EA128 002E5D88 38 BC 00 30 */ addi r5, r28, 0x30 /* 802EA12C 002E5D8C 38 C6 A3 C0 */ addi r6, r6, lbl_802EA3C0@l /* 802EA130 002E5D90 38 80 00 00 */ li r4, 0 -/* 802EA134 002E5D94 4B FB AB 85 */ bl func_802A4CB8 +/* 802EA134 002E5D94 4B FB AB 85 */ bl ISFS_ReadDirAsync /* 802EA138 002E5D98 48 00 01 78 */ b lbl_802EA2B0 lbl_802EA13C: /* 802EA13C 002E5D9C 38 00 00 00 */ li r0, 0 @@ -26932,7 +26932,7 @@ lbl_802EA264: /* 802EA26C 002E5ECC 90 01 00 08 */ stw r0, 8(r1) /* 802EA270 002E5ED0 38 A1 00 08 */ addi r5, r1, 8 /* 802EA274 002E5ED4 38 80 00 00 */ li r4, 0 -/* 802EA278 002E5ED8 4B FB A8 ED */ bl func_802A4B64 +/* 802EA278 002E5ED8 4B FB A8 ED */ bl ISFS_ReadDir /* 802EA27C 002E5EDC 2C 03 00 00 */ cmpwi r3, 0 /* 802EA280 002E5EE0 41 82 00 0C */ beq lbl_802EA28C /* 802EA284 002E5EE4 2C 03 FF 9A */ cmpwi r3, -102 @@ -27263,7 +27263,7 @@ lbl_802EA6A8: /* 802EA6EC 002E634C 38 9F 00 9C */ addi r4, r31, 0x9c /* 802EA6F0 002E6350 38 BF 00 A0 */ addi r5, r31, 0xa0 /* 802EA6F4 002E6354 38 C6 A7 18 */ addi r6, r6, lbl_802EA718@l -/* 802EA6F8 002E6358 4B FB AC 41 */ bl func_802A5338 +/* 802EA6F8 002E6358 4B FB AC 41 */ bl ISFS_GetUsageAsync /* 802EA6FC 002E635C 4B FF ED 0D */ bl func_802E9408 lbl_802EA700: /* 802EA700 002E6360 39 61 00 20 */ addi r11, r1, 0x20 @@ -27306,7 +27306,7 @@ lbl_802EA76C: /* 802EA788 002E63E8 90 04 00 B4 */ stw r0, 0xb4(r4) /* 802EA78C 002E63EC 38 84 00 AC */ addi r4, r4, 0xac /* 802EA790 002E63F0 38 C6 A7 18 */ addi r6, r6, lbl_802EA718@l -/* 802EA794 002E63F4 4B FB AB A5 */ bl func_802A5338 +/* 802EA794 002E63F4 4B FB AB A5 */ bl ISFS_GetUsageAsync /* 802EA798 002E63F8 2C 03 00 00 */ cmpwi r3, 0 /* 802EA79C 002E63FC 41 82 01 9C */ beq lbl_802EA938 /* 802EA7A0 002E6400 4B FF EC 69 */ bl func_802E9408 @@ -31311,7 +31311,7 @@ func_802EDDAC: lbl_802EDDFC: /* 802EDDFC 002E9A5C 7F C3 F3 78 */ mr r3, r30 /* 802EDE00 002E9A60 7F A4 EB 78 */ mr r4, r29 -/* 802EDE04 002E9A64 4B FB 62 01 */ bl func_802A4004 +/* 802EDE04 002E9A64 4B FB 62 01 */ bl iosCreateHeap /* 802EDE08 002E9A68 90 7F 00 08 */ stw r3, 8(r31) /* 802EDE0C 002E9A6C 80 1F 00 08 */ lwz r0, 8(r31) /* 802EDE10 002E9A70 2C 00 00 00 */ cmpwi r0, 0 @@ -31349,7 +31349,7 @@ func_802EDE50: /* 802EDE6C 002E9ACC 80 63 00 08 */ lwz r3, 8(r3) /* 802EDE70 002E9AD0 38 80 00 0C */ li r4, 0xc /* 802EDE74 002E9AD4 38 A0 00 20 */ li r5, 0x20 -/* 802EDE78 002E9AD8 4B FB 64 C1 */ bl func_802A4338 +/* 802EDE78 002E9AD8 4B FB 64 C1 */ bl iosAllocAligned /* 802EDE7C 002E9ADC 38 03 00 08 */ addi r0, r3, 8 /* 802EDE80 002E9AE0 7C 7E 1B 78 */ mr r30, r3 /* 802EDE84 002E9AE4 90 03 00 00 */ stw r0, 0(r3) @@ -31365,7 +31365,7 @@ func_802EDE50: /* 802EDEAC 002E9B0C 4B FF FE B1 */ bl func_802EDD5C /* 802EDEB0 002E9B10 80 63 00 08 */ lwz r3, 8(r3) /* 802EDEB4 002E9B14 7F C4 F3 78 */ mr r4, r30 -/* 802EDEB8 002E9B18 4B FB 64 85 */ bl func_802A433C +/* 802EDEB8 002E9B18 4B FB 64 85 */ bl iosFree /* 802EDEBC 002E9B1C 7F E3 FB 78 */ mr r3, r31 /* 802EDEC0 002E9B20 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EDEC4 002E9B24 83 C1 00 08 */ lwz r30, 8(r1) @@ -31398,7 +31398,7 @@ func_802EDEEC: /* 802EDF18 002E9B78 80 63 00 08 */ lwz r3, 8(r3) /* 802EDF1C 002E9B7C 38 80 01 98 */ li r4, 0x198 /* 802EDF20 002E9B80 38 A0 00 20 */ li r5, 0x20 -/* 802EDF24 002E9B84 4B FB 64 15 */ bl func_802A4338 +/* 802EDF24 002E9B84 4B FB 64 15 */ bl iosAllocAligned /* 802EDF28 002E9B88 38 03 00 10 */ addi r0, r3, 0x10 /* 802EDF2C 002E9B8C 38 83 01 90 */ addi r4, r3, 0x190 /* 802EDF30 002E9B90 90 03 00 00 */ stw r0, 0(r3) @@ -31429,7 +31429,7 @@ lbl_802EDF4C: /* 802EDF90 002E9BF0 4B FF FD CD */ bl func_802EDD5C /* 802EDF94 002E9BF4 80 63 00 08 */ lwz r3, 8(r3) /* 802EDF98 002E9BF8 7F C4 F3 78 */ mr r4, r30 -/* 802EDF9C 002E9BFC 4B FB 63 A1 */ bl func_802A433C +/* 802EDF9C 002E9BFC 4B FB 63 A1 */ bl iosFree /* 802EDFA0 002E9C00 7F E3 FB 78 */ mr r3, r31 /* 802EDFA4 002E9C04 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EDFA8 002E9C08 83 C1 00 18 */ lwz r30, 0x18(r1) @@ -31454,7 +31454,7 @@ func_802EDFC4: /* 802EDFE8 002E9C48 80 63 00 08 */ lwz r3, 8(r3) /* 802EDFEC 002E9C4C 38 80 00 14 */ li r4, 0x14 /* 802EDFF0 002E9C50 38 A0 00 20 */ li r5, 0x20 -/* 802EDFF4 002E9C54 4B FB 63 45 */ bl func_802A4338 +/* 802EDFF4 002E9C54 4B FB 63 45 */ bl iosAllocAligned /* 802EDFF8 002E9C58 38 03 00 10 */ addi r0, r3, 0x10 /* 802EDFFC 002E9C5C 7C 7E 1B 78 */ mr r30, r3 /* 802EE000 002E9C60 90 03 00 00 */ stw r0, 0(r3) @@ -31473,7 +31473,7 @@ func_802EDFC4: /* 802EE034 002E9C94 4B FF FD 29 */ bl func_802EDD5C /* 802EE038 002E9C98 80 63 00 08 */ lwz r3, 8(r3) /* 802EE03C 002E9C9C 7F C4 F3 78 */ mr r4, r30 -/* 802EE040 002E9CA0 4B FB 62 FD */ bl func_802A433C +/* 802EE040 002E9CA0 4B FB 62 FD */ bl iosFree /* 802EE044 002E9CA4 7F E3 FB 78 */ mr r3, r31 /* 802EE048 002E9CA8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EE04C 002E9CAC 83 C1 00 18 */ lwz r30, 0x18(r1) @@ -31495,7 +31495,7 @@ func_802EE064: /* 802EE080 002E9CE0 80 63 00 08 */ lwz r3, 8(r3) /* 802EE084 002E9CE4 38 80 00 0C */ li r4, 0xc /* 802EE088 002E9CE8 38 A0 00 20 */ li r5, 0x20 -/* 802EE08C 002E9CEC 4B FB 62 AD */ bl func_802A4338 +/* 802EE08C 002E9CEC 4B FB 62 AD */ bl iosAllocAligned /* 802EE090 002E9CF0 B3 C3 00 08 */ sth r30, 8(r3) /* 802EE094 002E9CF4 38 83 00 08 */ addi r4, r3, 8 /* 802EE098 002E9CF8 7C 7E 1B 78 */ mr r30, r3 @@ -31511,7 +31511,7 @@ func_802EE064: /* 802EE0C0 002E9D20 4B FF FC 9D */ bl func_802EDD5C /* 802EE0C4 002E9D24 80 63 00 08 */ lwz r3, 8(r3) /* 802EE0C8 002E9D28 7F C4 F3 78 */ mr r4, r30 -/* 802EE0CC 002E9D2C 4B FB 62 71 */ bl func_802A433C +/* 802EE0CC 002E9D2C 4B FB 62 71 */ bl iosFree /* 802EE0D0 002E9D30 7F E3 FB 78 */ mr r3, r31 /* 802EE0D4 002E9D34 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EE0D8 002E9D38 83 C1 00 08 */ lwz r30, 8(r1) @@ -31532,7 +31532,7 @@ func_802EE0EC: /* 802EE108 002E9D68 80 63 00 08 */ lwz r3, 8(r3) /* 802EE10C 002E9D6C 38 80 00 10 */ li r4, 0x10 /* 802EE110 002E9D70 38 A0 00 20 */ li r5, 0x20 -/* 802EE114 002E9D74 4B FB 62 25 */ bl func_802A4338 +/* 802EE114 002E9D74 4B FB 62 25 */ bl iosAllocAligned /* 802EE118 002E9D78 38 03 00 08 */ addi r0, r3, 8 /* 802EE11C 002E9D7C 7C 7E 1B 78 */ mr r30, r3 /* 802EE120 002E9D80 90 03 00 00 */ stw r0, 0(r3) @@ -31551,7 +31551,7 @@ func_802EE0EC: /* 802EE154 002E9DB4 4B FF FC 09 */ bl func_802EDD5C /* 802EE158 002E9DB8 80 63 00 08 */ lwz r3, 8(r3) /* 802EE15C 002E9DBC 7F C4 F3 78 */ mr r4, r30 -/* 802EE160 002E9DC0 4B FB 61 DD */ bl func_802A433C +/* 802EE160 002E9DC0 4B FB 61 DD */ bl iosFree /* 802EE164 002E9DC4 7F E3 FB 78 */ mr r3, r31 /* 802EE168 002E9DC8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EE16C 002E9DCC 83 C1 00 08 */ lwz r30, 8(r1) @@ -31582,7 +31582,7 @@ lbl_802EE1BC: /* 802EE1C0 002E9E20 80 63 00 08 */ lwz r3, 8(r3) /* 802EE1C4 002E9E24 38 80 00 20 */ li r4, 0x20 /* 802EE1C8 002E9E28 38 A0 00 20 */ li r5, 0x20 -/* 802EE1CC 002E9E2C 4B FB 61 6D */ bl func_802A4338 +/* 802EE1CC 002E9E2C 4B FB 61 6D */ bl iosAllocAligned /* 802EE1D0 002E9E30 38 03 00 10 */ addi r0, r3, 0x10 /* 802EE1D4 002E9E34 7C 7F 1B 78 */ mr r31, r3 /* 802EE1D8 002E9E38 90 03 00 08 */ stw r0, 8(r3) @@ -31631,7 +31631,7 @@ lbl_802EE1BC: /* 802EE284 002E9EE4 4B FF FA D9 */ bl func_802EDD5C /* 802EE288 002E9EE8 80 63 00 08 */ lwz r3, 8(r3) /* 802EE28C 002E9EEC 7F E4 FB 78 */ mr r4, r31 -/* 802EE290 002E9EF0 4B FB 60 AD */ bl func_802A433C +/* 802EE290 002E9EF0 4B FB 60 AD */ bl iosFree /* 802EE294 002E9EF4 7F 83 E3 78 */ mr r3, r28 lbl_802EE298: /* 802EE298 002E9EF8 80 01 00 24 */ lwz r0, 0x24(r1) @@ -31656,7 +31656,7 @@ func_802EE2B8: /* 802EE2D8 002E9F38 80 63 00 08 */ lwz r3, 8(r3) /* 802EE2DC 002E9F3C 38 80 00 98 */ li r4, 0x98 /* 802EE2E0 002E9F40 38 A0 00 20 */ li r5, 0x20 -/* 802EE2E4 002E9F44 4B FB 60 55 */ bl func_802A4338 +/* 802EE2E4 002E9F44 4B FB 60 55 */ bl iosAllocAligned /* 802EE2E8 002E9F48 38 83 00 08 */ addi r4, r3, 8 /* 802EE2EC 002E9F4C 38 00 00 48 */ li r0, 0x48 /* 802EE2F0 002E9F50 7C 7E 1B 78 */ mr r30, r3 @@ -31691,7 +31691,7 @@ lbl_802EE348: /* 802EE35C 002E9FBC 4B FF FA 01 */ bl func_802EDD5C /* 802EE360 002E9FC0 80 63 00 08 */ lwz r3, 8(r3) /* 802EE364 002E9FC4 7F C4 F3 78 */ mr r4, r30 -/* 802EE368 002E9FC8 4B FB 5F D5 */ bl func_802A433C +/* 802EE368 002E9FC8 4B FB 5F D5 */ bl iosFree /* 802EE36C 002E9FCC 7F E3 FB 78 */ mr r3, r31 /* 802EE370 002E9FD0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EE374 002E9FD4 83 C1 00 18 */ lwz r30, 0x18(r1) @@ -31714,7 +31714,7 @@ func_802EE38C: /* 802EE3AC 002EA00C 80 63 00 08 */ lwz r3, 8(r3) /* 802EE3B0 002EA010 38 80 00 9C */ li r4, 0x9c /* 802EE3B4 002EA014 38 A0 00 20 */ li r5, 0x20 -/* 802EE3B8 002EA018 4B FB 5F 81 */ bl func_802A4338 +/* 802EE3B8 002EA018 4B FB 5F 81 */ bl iosAllocAligned /* 802EE3BC 002EA01C 38 83 00 08 */ addi r4, r3, 8 /* 802EE3C0 002EA020 38 00 00 4A */ li r0, 0x4a /* 802EE3C4 002EA024 7C 7E 1B 78 */ mr r30, r3 @@ -31750,7 +31750,7 @@ lbl_802EE420: /* 802EE434 002EA094 4B FF F9 29 */ bl func_802EDD5C /* 802EE438 002EA098 80 63 00 08 */ lwz r3, 8(r3) /* 802EE43C 002EA09C 7F C4 F3 78 */ mr r4, r30 -/* 802EE440 002EA0A0 4B FB 5E FD */ bl func_802A433C +/* 802EE440 002EA0A0 4B FB 5E FD */ bl iosFree /* 802EE444 002EA0A4 7F E3 FB 78 */ mr r3, r31 /* 802EE448 002EA0A8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EE44C 002EA0AC 83 C1 00 18 */ lwz r30, 0x18(r1) @@ -31773,7 +31773,7 @@ func_802EE464: /* 802EE484 002EA0E4 80 63 00 08 */ lwz r3, 8(r3) /* 802EE488 002EA0E8 38 80 00 08 */ li r4, 8 /* 802EE48C 002EA0EC 38 A0 00 20 */ li r5, 0x20 -/* 802EE490 002EA0F0 4B FB 5E A9 */ bl func_802A4338 +/* 802EE490 002EA0F0 4B FB 5E A9 */ bl iosAllocAligned /* 802EE494 002EA0F4 93 C3 00 00 */ stw r30, 0(r3) /* 802EE498 002EA0F8 7C 7E 1B 78 */ mr r30, r3 /* 802EE49C 002EA0FC 3C A0 00 01 */ lis r5, 0x00008000@ha @@ -31787,7 +31787,7 @@ func_802EE464: /* 802EE4BC 002EA11C 4B FF F8 A1 */ bl func_802EDD5C /* 802EE4C0 002EA120 80 63 00 08 */ lwz r3, 8(r3) /* 802EE4C4 002EA124 7F C4 F3 78 */ mr r4, r30 -/* 802EE4C8 002EA128 4B FB 5E 75 */ bl func_802A433C +/* 802EE4C8 002EA128 4B FB 5E 75 */ bl iosFree /* 802EE4CC 002EA12C 7F E3 FB 78 */ mr r3, r31 /* 802EE4D0 002EA130 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EE4D4 002EA134 83 C1 00 08 */ lwz r30, 8(r1) diff --git a/obj_files.mk b/obj_files.mk index 5c176e3..719c634 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -215,6 +215,9 @@ TEXT_O_FILES := \ $(BUILD_DIR)/asm/text_8_6.o \ $(BUILD_DIR)/asm/SDK/ipcMain.o \ $(BUILD_DIR)/asm/SDK/ipcclt.o \ + $(BUILD_DIR)/asm/SDK/memory.o \ + $(BUILD_DIR)/asm/SDK/ipcProfile.o \ + $(BUILD_DIR)/asm/SDK/fs.o \ $(BUILD_DIR)/asm/text_8_7.o \ $(BUILD_DIR)/asm/text_8_8.o \ $(BUILD_DIR)/asm/text_9.o \ -- cgit v1.2.3