diff options
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | asm/darray.s | 812 | ||||
-rw-r--r-- | asm/md5c.s | 4 | ||||
-rw-r--r-- | asm/text_1.s | 72 | ||||
-rw-r--r-- | asm/text_10.s | 12 | ||||
-rw-r--r-- | asm/text_10_2.s | 112 | ||||
-rw-r--r-- | asm/text_11.s | 80 | ||||
-rw-r--r-- | asm/text_2.s | 12 | ||||
-rw-r--r-- | asm/text_3.s | 44 | ||||
-rw-r--r-- | asm/text_4.s | 44 | ||||
-rw-r--r-- | asm/text_5.s | 164 | ||||
-rw-r--r-- | asm/text_6.s | 36 | ||||
-rw-r--r-- | asm/text_7.s | 32 | ||||
-rw-r--r-- | asm/text_7_2.s | 18 | ||||
-rw-r--r-- | asm/text_8.s | 96 | ||||
-rw-r--r-- | asm/text_9.s | 134 | ||||
-rw-r--r-- | include/darray.h | 29 | ||||
-rw-r--r-- | include/hashtable.h | 13 | ||||
-rw-r--r-- | include/nonport.h | 16 | ||||
-rw-r--r-- | include/qsort.h | 15 | ||||
-rw-r--r-- | obj_files.mk | 2 | ||||
-rw-r--r-- | src/SDK/OS/OSAlloc.c | 12 | ||||
-rw-r--r-- | src/darray.c | 453 | ||||
-rw-r--r-- | src/hashtable.c | 27 |
24 files changed, 965 insertions, 1276 deletions
@@ -71,7 +71,7 @@ INCLUDES := -i . -I- -i include -i include/SDK ASFLAGS := -mgekko -I include LDFLAGS := -map $(MAP) -fp hard -nodefaults -CFLAGS := -Cpp_exceptions off -proc gekko -fp hard -O4,p -nodefaults -msgstyle gcc $(INCLUDES) +CFLAGS := -Cpp_exceptions off -proc gekko -fp hard -O4,p -nodefaults -msgstyle gcc -ipa file $(INCLUDES) # for postprocess.py PROCFLAGS := -fprologue-fixup=old_stack diff --git a/asm/darray.s b/asm/darray.s deleted file mode 100644 index a14be52..0000000 --- a/asm/darray.s +++ /dev/null @@ -1,812 +0,0 @@ -.include "macros.inc"
-
-.section .text, "ax" # 0x80006980 - 0x803E1E60
-
-.global ArrayNew
-ArrayNew:
-/* 80335DB8 00331A18 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80335DBC 00331A1C 7C 08 02 A6 */ mflr r0
-/* 80335DC0 00331A20 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80335DC4 00331A24 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 80335DC8 00331A28 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 80335DCC 00331A2C 7C BE 2B 78 */ mr r30, r5
-/* 80335DD0 00331A30 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 80335DD4 00331A34 7C 9D 23 78 */ mr r29, r4
-/* 80335DD8 00331A38 93 81 00 10 */ stw r28, 0x10(r1)
-/* 80335DDC 00331A3C 7C 7C 1B 78 */ mr r28, r3
-/* 80335DE0 00331A40 38 60 00 18 */ li r3, 0x18
-/* 80335DE4 00331A44 48 00 35 31 */ bl gsimalloc
-/* 80335DE8 00331A48 2C 1D 00 00 */ cmpwi r29, 0
-/* 80335DEC 00331A4C 7C 7F 1B 78 */ mr r31, r3
-/* 80335DF0 00331A50 40 82 00 08 */ bne lbl_80335DF8
-/* 80335DF4 00331A54 3B A0 00 08 */ li r29, 8
-lbl_80335DF8:
-/* 80335DF8 00331A58 38 00 00 00 */ li r0, 0
-/* 80335DFC 00331A5C 2C 1D 00 00 */ cmpwi r29, 0
-/* 80335E00 00331A60 90 03 00 00 */ stw r0, 0(r3)
-/* 80335E04 00331A64 93 A3 00 04 */ stw r29, 4(r3)
-/* 80335E08 00331A68 93 83 00 08 */ stw r28, 8(r3)
-/* 80335E0C 00331A6C 93 A3 00 0C */ stw r29, 0xc(r3)
-/* 80335E10 00331A70 93 C3 00 10 */ stw r30, 0x10(r3)
-/* 80335E14 00331A74 41 82 00 18 */ beq lbl_80335E2C
-/* 80335E18 00331A78 80 03 00 08 */ lwz r0, 8(r3)
-/* 80335E1C 00331A7C 7C 7D 01 D6 */ mullw r3, r29, r0
-/* 80335E20 00331A80 48 00 34 F5 */ bl gsimalloc
-/* 80335E24 00331A84 90 7F 00 14 */ stw r3, 0x14(r31)
-/* 80335E28 00331A88 48 00 00 08 */ b lbl_80335E30
-lbl_80335E2C:
-/* 80335E2C 00331A8C 90 03 00 14 */ stw r0, 0x14(r3)
-lbl_80335E30:
-/* 80335E30 00331A90 7F E3 FB 78 */ mr r3, r31
-/* 80335E34 00331A94 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 80335E38 00331A98 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 80335E3C 00331A9C 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 80335E40 00331AA0 83 81 00 10 */ lwz r28, 0x10(r1)
-/* 80335E44 00331AA4 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80335E48 00331AA8 7C 08 03 A6 */ mtlr r0
-/* 80335E4C 00331AAC 38 21 00 20 */ addi r1, r1, 0x20
-/* 80335E50 00331AB0 4E 80 00 20 */ blr
-
-.global ArrayFree
-ArrayFree:
-/* 80335E54 00331AB4 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80335E58 00331AB8 7C 08 02 A6 */ mflr r0
-/* 80335E5C 00331ABC 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80335E60 00331AC0 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80335E64 00331AC4 3B E0 00 00 */ li r31, 0
-/* 80335E68 00331AC8 93 C1 00 08 */ stw r30, 8(r1)
-/* 80335E6C 00331ACC 7C 7E 1B 78 */ mr r30, r3
-/* 80335E70 00331AD0 48 00 00 44 */ b lbl_80335EB4
-lbl_80335E74:
-/* 80335E74 00331AD4 81 9E 00 10 */ lwz r12, 0x10(r30)
-/* 80335E78 00331AD8 2C 0C 00 00 */ cmpwi r12, 0
-/* 80335E7C 00331ADC 41 82 00 34 */ beq lbl_80335EB0
-/* 80335E80 00331AE0 2C 1F 00 00 */ cmpwi r31, 0
-/* 80335E84 00331AE4 41 80 00 0C */ blt lbl_80335E90
-/* 80335E88 00331AE8 7C 1F 00 00 */ cmpw r31, r0
-/* 80335E8C 00331AEC 41 80 00 0C */ blt lbl_80335E98
-lbl_80335E90:
-/* 80335E90 00331AF0 38 60 00 00 */ li r3, 0
-/* 80335E94 00331AF4 48 00 00 14 */ b lbl_80335EA8
-lbl_80335E98:
-/* 80335E98 00331AF8 80 1E 00 08 */ lwz r0, 8(r30)
-/* 80335E9C 00331AFC 80 7E 00 14 */ lwz r3, 0x14(r30)
-/* 80335EA0 00331B00 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 80335EA4 00331B04 7C 63 02 14 */ add r3, r3, r0
-lbl_80335EA8:
-/* 80335EA8 00331B08 7D 89 03 A6 */ mtctr r12
-/* 80335EAC 00331B0C 4E 80 04 21 */ bctrl
-lbl_80335EB0:
-/* 80335EB0 00331B10 3B FF 00 01 */ addi r31, r31, 1
-lbl_80335EB4:
-/* 80335EB4 00331B14 80 1E 00 00 */ lwz r0, 0(r30)
-/* 80335EB8 00331B18 7C 1F 00 00 */ cmpw r31, r0
-/* 80335EBC 00331B1C 41 80 FF B8 */ blt lbl_80335E74
-/* 80335EC0 00331B20 80 7E 00 14 */ lwz r3, 0x14(r30)
-/* 80335EC4 00331B24 48 00 34 75 */ bl gsifree
-/* 80335EC8 00331B28 7F C3 F3 78 */ mr r3, r30
-/* 80335ECC 00331B2C 48 00 34 6D */ bl gsifree
-/* 80335ED0 00331B30 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80335ED4 00331B34 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80335ED8 00331B38 83 C1 00 08 */ lwz r30, 8(r1)
-/* 80335EDC 00331B3C 7C 08 03 A6 */ mtlr r0
-/* 80335EE0 00331B40 38 21 00 10 */ addi r1, r1, 0x10
-/* 80335EE4 00331B44 4E 80 00 20 */ blr
-
-.global ArrayLength
-ArrayLength:
-/* 80335EE8 00331B48 80 63 00 00 */ lwz r3, 0(r3)
-/* 80335EEC 00331B4C 4E 80 00 20 */ blr
-
-.global ArrayNth
-ArrayNth:
-/* 80335EF0 00331B50 2C 04 00 00 */ cmpwi r4, 0
-/* 80335EF4 00331B54 41 80 00 10 */ blt lbl_80335F04
-/* 80335EF8 00331B58 80 03 00 00 */ lwz r0, 0(r3)
-/* 80335EFC 00331B5C 7C 04 00 00 */ cmpw r4, r0
-/* 80335F00 00331B60 41 80 00 0C */ blt lbl_80335F0C
-lbl_80335F04:
-/* 80335F04 00331B64 38 60 00 00 */ li r3, 0
-/* 80335F08 00331B68 4E 80 00 20 */ blr
-lbl_80335F0C:
-/* 80335F0C 00331B6C 80 03 00 08 */ lwz r0, 8(r3)
-/* 80335F10 00331B70 80 63 00 14 */ lwz r3, 0x14(r3)
-/* 80335F14 00331B74 7C 00 21 D6 */ mullw r0, r0, r4
-/* 80335F18 00331B78 7C 63 02 14 */ add r3, r3, r0
-/* 80335F1C 00331B7C 4E 80 00 20 */ blr
-
-.global ArrayAppend
-ArrayAppend:
-/* 80335F20 00331B80 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80335F24 00331B84 7C 08 02 A6 */ mflr r0
-/* 80335F28 00331B88 2C 03 00 00 */ cmpwi r3, 0
-/* 80335F2C 00331B8C 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80335F30 00331B90 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 80335F34 00331B94 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 80335F38 00331B98 7C 9E 23 78 */ mr r30, r4
-/* 80335F3C 00331B9C 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 80335F40 00331BA0 7C 7D 1B 78 */ mr r29, r3
-/* 80335F44 00331BA4 41 82 00 E4 */ beq lbl_80336028
-/* 80335F48 00331BA8 83 E3 00 00 */ lwz r31, 0(r3)
-/* 80335F4C 00331BAC 80 A3 00 04 */ lwz r5, 4(r3)
-/* 80335F50 00331BB0 7C 1F 28 00 */ cmpw r31, r5
-/* 80335F54 00331BB4 40 82 00 24 */ bne lbl_80335F78
-/* 80335F58 00331BB8 80 83 00 0C */ lwz r4, 0xc(r3)
-/* 80335F5C 00331BBC 80 1D 00 08 */ lwz r0, 8(r29)
-/* 80335F60 00331BC0 7C A5 22 14 */ add r5, r5, r4
-/* 80335F64 00331BC4 7C 85 01 D6 */ mullw r4, r5, r0
-/* 80335F68 00331BC8 90 A3 00 04 */ stw r5, 4(r3)
-/* 80335F6C 00331BCC 80 63 00 14 */ lwz r3, 0x14(r3)
-/* 80335F70 00331BD0 48 00 33 B5 */ bl func_80339324
-/* 80335F74 00331BD4 90 7D 00 14 */ stw r3, 0x14(r29)
-lbl_80335F78:
-/* 80335F78 00331BD8 80 7D 00 00 */ lwz r3, 0(r29)
-/* 80335F7C 00331BDC 38 A3 00 01 */ addi r5, r3, 1
-/* 80335F80 00331BE0 38 C5 FF FF */ addi r6, r5, -1
-/* 80335F84 00331BE4 90 BD 00 00 */ stw r5, 0(r29)
-/* 80335F88 00331BE8 7C 1F 30 00 */ cmpw r31, r6
-/* 80335F8C 00331BEC 40 80 00 64 */ bge lbl_80335FF0
-/* 80335F90 00331BF0 34 9F 00 01 */ addic. r4, r31, 1
-/* 80335F94 00331BF4 41 80 00 0C */ blt lbl_80335FA0
-/* 80335F98 00331BF8 7C 04 28 00 */ cmpw r4, r5
-/* 80335F9C 00331BFC 41 80 00 0C */ blt lbl_80335FA8
-lbl_80335FA0:
-/* 80335FA0 00331C00 38 60 00 00 */ li r3, 0
-/* 80335FA4 00331C04 48 00 00 14 */ b lbl_80335FB8
-lbl_80335FA8:
-/* 80335FA8 00331C08 80 1D 00 08 */ lwz r0, 8(r29)
-/* 80335FAC 00331C0C 80 7D 00 14 */ lwz r3, 0x14(r29)
-/* 80335FB0 00331C10 7C 00 21 D6 */ mullw r0, r0, r4
-/* 80335FB4 00331C14 7C 63 02 14 */ add r3, r3, r0
-lbl_80335FB8:
-/* 80335FB8 00331C18 2C 1F 00 00 */ cmpwi r31, 0
-/* 80335FBC 00331C1C 41 80 00 0C */ blt lbl_80335FC8
-/* 80335FC0 00331C20 7C 1F 28 00 */ cmpw r31, r5
-/* 80335FC4 00331C24 41 80 00 0C */ blt lbl_80335FD0
-lbl_80335FC8:
-/* 80335FC8 00331C28 38 80 00 00 */ li r4, 0
-/* 80335FCC 00331C2C 48 00 00 14 */ b lbl_80335FE0
-lbl_80335FD0:
-/* 80335FD0 00331C30 80 1D 00 08 */ lwz r0, 8(r29)
-/* 80335FD4 00331C34 80 9D 00 14 */ lwz r4, 0x14(r29)
-/* 80335FD8 00331C38 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 80335FDC 00331C3C 7C 84 02 14 */ add r4, r4, r0
-lbl_80335FE0:
-/* 80335FE0 00331C40 80 BD 00 08 */ lwz r5, 8(r29)
-/* 80335FE4 00331C44 7C 1F 30 50 */ subf r0, r31, r6
-/* 80335FE8 00331C48 7C A5 01 D6 */ mullw r5, r5, r0
-/* 80335FEC 00331C4C 4B E9 42 89 */ bl func_801CA274
-lbl_80335FF0:
-/* 80335FF0 00331C50 2C 1F 00 00 */ cmpwi r31, 0
-/* 80335FF4 00331C54 41 80 00 10 */ blt lbl_80336004
-/* 80335FF8 00331C58 80 1D 00 00 */ lwz r0, 0(r29)
-/* 80335FFC 00331C5C 7C 1F 00 00 */ cmpw r31, r0
-/* 80336000 00331C60 41 80 00 0C */ blt lbl_8033600C
-lbl_80336004:
-/* 80336004 00331C64 38 60 00 00 */ li r3, 0
-/* 80336008 00331C68 48 00 00 14 */ b lbl_8033601C
-lbl_8033600C:
-/* 8033600C 00331C6C 80 1D 00 08 */ lwz r0, 8(r29)
-/* 80336010 00331C70 80 7D 00 14 */ lwz r3, 0x14(r29)
-/* 80336014 00331C74 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 80336018 00331C78 7C 63 02 14 */ add r3, r3, r0
-lbl_8033601C:
-/* 8033601C 00331C7C 80 BD 00 08 */ lwz r5, 8(r29)
-/* 80336020 00331C80 7F C4 F3 78 */ mr r4, r30
-/* 80336024 00331C84 4B CC DF DD */ bl memcpy
-lbl_80336028:
-/* 80336028 00331C88 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 8033602C 00331C8C 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 80336030 00331C90 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 80336034 00331C94 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 80336038 00331C98 7C 08 03 A6 */ mtlr r0
-/* 8033603C 00331C9C 38 21 00 20 */ addi r1, r1, 0x20
-/* 80336040 00331CA0 4E 80 00 20 */ blr
-
-.global ArrayInsertSorted
-ArrayInsertSorted:
-/* 80336044 00331CA4 94 21 FF D0 */ stwu r1, -0x30(r1)
-/* 80336048 00331CA8 7C 08 02 A6 */ mflr r0
-/* 8033604C 00331CAC 90 01 00 34 */ stw r0, 0x34(r1)
-/* 80336050 00331CB0 39 61 00 30 */ addi r11, r1, 0x30
-/* 80336054 00331CB4 4B E9 10 C9 */ bl func_801C711C
-/* 80336058 00331CB8 80 C3 00 00 */ lwz r6, 0(r3)
-/* 8033605C 00331CBC 7C 7D 1B 78 */ mr r29, r3
-/* 80336060 00331CC0 83 83 00 08 */ lwz r28, 8(r3)
-/* 80336064 00331CC4 7C 9E 23 78 */ mr r30, r4
-/* 80336068 00331CC8 83 E3 00 14 */ lwz r31, 0x14(r3)
-/* 8033606C 00331CCC 7C B8 2B 78 */ mr r24, r5
-/* 80336070 00331CD0 3B 46 FF FF */ addi r26, r6, -1
-/* 80336074 00331CD4 3B 20 00 00 */ li r25, 0
-/* 80336078 00331CD8 48 00 00 3C */ b lbl_803360B4
-lbl_8033607C:
-/* 8033607C 00331CDC 7C 19 D2 14 */ add r0, r25, r26
-/* 80336080 00331CE0 7F 0C C3 78 */ mr r12, r24
-/* 80336084 00331CE4 7C 1B 0E 70 */ srawi r27, r0, 1
-/* 80336088 00331CE8 7F C4 F3 78 */ mr r4, r30
-/* 8033608C 00331CEC 7C 1B E1 D6 */ mullw r0, r27, r28
-/* 80336090 00331CF0 7C 7F 02 14 */ add r3, r31, r0
-/* 80336094 00331CF4 7D 89 03 A6 */ mtctr r12
-/* 80336098 00331CF8 4E 80 04 21 */ bctrl
-/* 8033609C 00331CFC 2C 03 00 00 */ cmpwi r3, 0
-/* 803360A0 00331D00 40 80 00 08 */ bge lbl_803360A8
-/* 803360A4 00331D04 3B 3B 00 01 */ addi r25, r27, 1
-lbl_803360A8:
-/* 803360A8 00331D08 2C 03 00 00 */ cmpwi r3, 0
-/* 803360AC 00331D0C 41 80 00 08 */ blt lbl_803360B4
-/* 803360B0 00331D10 3B 5B FF FF */ addi r26, r27, -1
-lbl_803360B4:
-/* 803360B4 00331D14 7C 19 D0 00 */ cmpw r25, r26
-/* 803360B8 00331D18 40 81 FF C4 */ ble lbl_8033607C
-/* 803360BC 00331D1C 7C D9 E1 D6 */ mullw r6, r25, r28
-/* 803360C0 00331D20 80 7D 00 14 */ lwz r3, 0x14(r29)
-/* 803360C4 00331D24 80 BD 00 08 */ lwz r5, 8(r29)
-/* 803360C8 00331D28 80 1D 00 00 */ lwz r0, 0(r29)
-/* 803360CC 00331D2C 80 9D 00 04 */ lwz r4, 4(r29)
-/* 803360D0 00331D30 7C DF 32 14 */ add r6, r31, r6
-/* 803360D4 00331D34 7C C3 30 50 */ subf r6, r3, r6
-/* 803360D8 00331D38 7C 00 20 00 */ cmpw r0, r4
-/* 803360DC 00331D3C 7F E6 2B D6 */ divw r31, r6, r5
-/* 803360E0 00331D40 40 82 00 1C */ bne lbl_803360FC
-/* 803360E4 00331D44 80 1D 00 0C */ lwz r0, 0xc(r29)
-/* 803360E8 00331D48 7C 04 02 14 */ add r0, r4, r0
-/* 803360EC 00331D4C 7C 80 29 D6 */ mullw r4, r0, r5
-/* 803360F0 00331D50 90 1D 00 04 */ stw r0, 4(r29)
-/* 803360F4 00331D54 48 00 32 31 */ bl func_80339324
-/* 803360F8 00331D58 90 7D 00 14 */ stw r3, 0x14(r29)
-lbl_803360FC:
-/* 803360FC 00331D5C 80 7D 00 00 */ lwz r3, 0(r29)
-/* 80336100 00331D60 38 A3 00 01 */ addi r5, r3, 1
-/* 80336104 00331D64 38 C5 FF FF */ addi r6, r5, -1
-/* 80336108 00331D68 90 BD 00 00 */ stw r5, 0(r29)
-/* 8033610C 00331D6C 7C 1F 30 00 */ cmpw r31, r6
-/* 80336110 00331D70 40 80 00 64 */ bge lbl_80336174
-/* 80336114 00331D74 34 9F 00 01 */ addic. r4, r31, 1
-/* 80336118 00331D78 41 80 00 0C */ blt lbl_80336124
-/* 8033611C 00331D7C 7C 04 28 00 */ cmpw r4, r5
-/* 80336120 00331D80 41 80 00 0C */ blt lbl_8033612C
-lbl_80336124:
-/* 80336124 00331D84 38 60 00 00 */ li r3, 0
-/* 80336128 00331D88 48 00 00 14 */ b lbl_8033613C
-lbl_8033612C:
-/* 8033612C 00331D8C 80 1D 00 08 */ lwz r0, 8(r29)
-/* 80336130 00331D90 80 7D 00 14 */ lwz r3, 0x14(r29)
-/* 80336134 00331D94 7C 00 21 D6 */ mullw r0, r0, r4
-/* 80336138 00331D98 7C 63 02 14 */ add r3, r3, r0
-lbl_8033613C:
-/* 8033613C 00331D9C 2C 1F 00 00 */ cmpwi r31, 0
-/* 80336140 00331DA0 41 80 00 0C */ blt lbl_8033614C
-/* 80336144 00331DA4 7C 1F 28 00 */ cmpw r31, r5
-/* 80336148 00331DA8 41 80 00 0C */ blt lbl_80336154
-lbl_8033614C:
-/* 8033614C 00331DAC 38 80 00 00 */ li r4, 0
-/* 80336150 00331DB0 48 00 00 14 */ b lbl_80336164
-lbl_80336154:
-/* 80336154 00331DB4 80 1D 00 08 */ lwz r0, 8(r29)
-/* 80336158 00331DB8 80 9D 00 14 */ lwz r4, 0x14(r29)
-/* 8033615C 00331DBC 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 80336160 00331DC0 7C 84 02 14 */ add r4, r4, r0
-lbl_80336164:
-/* 80336164 00331DC4 80 BD 00 08 */ lwz r5, 8(r29)
-/* 80336168 00331DC8 7C 1F 30 50 */ subf r0, r31, r6
-/* 8033616C 00331DCC 7C A5 01 D6 */ mullw r5, r5, r0
-/* 80336170 00331DD0 4B E9 41 05 */ bl func_801CA274
-lbl_80336174:
-/* 80336174 00331DD4 2C 1F 00 00 */ cmpwi r31, 0
-/* 80336178 00331DD8 41 80 00 10 */ blt lbl_80336188
-/* 8033617C 00331DDC 80 1D 00 00 */ lwz r0, 0(r29)
-/* 80336180 00331DE0 7C 1F 00 00 */ cmpw r31, r0
-/* 80336184 00331DE4 41 80 00 0C */ blt lbl_80336190
-lbl_80336188:
-/* 80336188 00331DE8 38 60 00 00 */ li r3, 0
-/* 8033618C 00331DEC 48 00 00 14 */ b lbl_803361A0
-lbl_80336190:
-/* 80336190 00331DF0 80 1D 00 08 */ lwz r0, 8(r29)
-/* 80336194 00331DF4 80 7D 00 14 */ lwz r3, 0x14(r29)
-/* 80336198 00331DF8 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 8033619C 00331DFC 7C 63 02 14 */ add r3, r3, r0
-lbl_803361A0:
-/* 803361A0 00331E00 80 BD 00 08 */ lwz r5, 8(r29)
-/* 803361A4 00331E04 7F C4 F3 78 */ mr r4, r30
-/* 803361A8 00331E08 4B CC DE 59 */ bl memcpy
-/* 803361AC 00331E0C 39 61 00 30 */ addi r11, r1, 0x30
-/* 803361B0 00331E10 4B E9 0F B9 */ bl func_801C7168
-/* 803361B4 00331E14 80 01 00 34 */ lwz r0, 0x34(r1)
-/* 803361B8 00331E18 7C 08 03 A6 */ mtlr r0
-/* 803361BC 00331E1C 38 21 00 30 */ addi r1, r1, 0x30
-/* 803361C0 00331E20 4E 80 00 20 */ blr
-
-.global ArrayRemoveAt
-ArrayRemoveAt:
-/* 803361C4 00331E24 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 803361C8 00331E28 7C 08 02 A6 */ mflr r0
-/* 803361CC 00331E2C 90 01 00 14 */ stw r0, 0x14(r1)
-/* 803361D0 00331E30 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 803361D4 00331E34 7C 7F 1B 78 */ mr r31, r3
-/* 803361D8 00331E38 80 E3 00 00 */ lwz r7, 0(r3)
-/* 803361DC 00331E3C 39 07 FF FF */ addi r8, r7, -1
-/* 803361E0 00331E40 7C 04 40 00 */ cmpw r4, r8
-/* 803361E4 00331E44 40 80 00 6C */ bge lbl_80336250
-/* 803361E8 00331E48 2C 04 00 00 */ cmpwi r4, 0
-/* 803361EC 00331E4C 41 80 00 0C */ blt lbl_803361F8
-/* 803361F0 00331E50 7C 04 38 00 */ cmpw r4, r7
-/* 803361F4 00331E54 41 80 00 0C */ blt lbl_80336200
-lbl_803361F8:
-/* 803361F8 00331E58 38 C0 00 00 */ li r6, 0
-/* 803361FC 00331E5C 48 00 00 14 */ b lbl_80336210
-lbl_80336200:
-/* 80336200 00331E60 80 03 00 08 */ lwz r0, 8(r3)
-/* 80336204 00331E64 80 A3 00 14 */ lwz r5, 0x14(r3)
-/* 80336208 00331E68 7C 00 21 D6 */ mullw r0, r0, r4
-/* 8033620C 00331E6C 7C C5 02 14 */ add r6, r5, r0
-lbl_80336210:
-/* 80336210 00331E70 34 A4 00 01 */ addic. r5, r4, 1
-/* 80336214 00331E74 41 80 00 0C */ blt lbl_80336220
-/* 80336218 00331E78 7C 05 38 00 */ cmpw r5, r7
-/* 8033621C 00331E7C 41 80 00 0C */ blt lbl_80336228
-lbl_80336220:
-/* 80336220 00331E80 38 E0 00 00 */ li r7, 0
-/* 80336224 00331E84 48 00 00 14 */ b lbl_80336238
-lbl_80336228:
-/* 80336228 00331E88 80 03 00 08 */ lwz r0, 8(r3)
-/* 8033622C 00331E8C 80 63 00 14 */ lwz r3, 0x14(r3)
-/* 80336230 00331E90 7C 00 29 D6 */ mullw r0, r0, r5
-/* 80336234 00331E94 7C E3 02 14 */ add r7, r3, r0
-lbl_80336238:
-/* 80336238 00331E98 80 BF 00 08 */ lwz r5, 8(r31)
-/* 8033623C 00331E9C 7C 04 40 50 */ subf r0, r4, r8
-/* 80336240 00331EA0 7C C3 33 78 */ mr r3, r6
-/* 80336244 00331EA4 7C E4 3B 78 */ mr r4, r7
-/* 80336248 00331EA8 7C A5 01 D6 */ mullw r5, r5, r0
-/* 8033624C 00331EAC 4B E9 40 29 */ bl func_801CA274
-lbl_80336250:
-/* 80336250 00331EB0 80 7F 00 00 */ lwz r3, 0(r31)
-/* 80336254 00331EB4 38 03 FF FF */ addi r0, r3, -1
-/* 80336258 00331EB8 90 1F 00 00 */ stw r0, 0(r31)
-/* 8033625C 00331EBC 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 80336260 00331EC0 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80336264 00331EC4 7C 08 03 A6 */ mtlr r0
-/* 80336268 00331EC8 38 21 00 10 */ addi r1, r1, 0x10
-/* 8033626C 00331ECC 4E 80 00 20 */ blr
-
-.global ArrayDeleteAt
-ArrayDeleteAt:
-/* 80336270 00331ED0 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 80336274 00331ED4 7C 08 02 A6 */ mflr r0
-/* 80336278 00331ED8 90 01 00 14 */ stw r0, 0x14(r1)
-/* 8033627C 00331EDC 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80336280 00331EE0 7C 7F 1B 78 */ mr r31, r3
-/* 80336284 00331EE4 93 C1 00 08 */ stw r30, 8(r1)
-/* 80336288 00331EE8 7C 9E 23 78 */ mr r30, r4
-/* 8033628C 00331EEC 81 83 00 10 */ lwz r12, 0x10(r3)
-/* 80336290 00331EF0 2C 0C 00 00 */ cmpwi r12, 0
-/* 80336294 00331EF4 41 82 00 38 */ beq lbl_803362CC
-/* 80336298 00331EF8 2C 04 00 00 */ cmpwi r4, 0
-/* 8033629C 00331EFC 41 80 00 10 */ blt lbl_803362AC
-/* 803362A0 00331F00 80 03 00 00 */ lwz r0, 0(r3)
-/* 803362A4 00331F04 7C 04 00 00 */ cmpw r4, r0
-/* 803362A8 00331F08 41 80 00 0C */ blt lbl_803362B4
-lbl_803362AC:
-/* 803362AC 00331F0C 38 60 00 00 */ li r3, 0
-/* 803362B0 00331F10 48 00 00 14 */ b lbl_803362C4
-lbl_803362B4:
-/* 803362B4 00331F14 80 03 00 08 */ lwz r0, 8(r3)
-/* 803362B8 00331F18 80 63 00 14 */ lwz r3, 0x14(r3)
-/* 803362BC 00331F1C 7C 00 21 D6 */ mullw r0, r0, r4
-/* 803362C0 00331F20 7C 63 02 14 */ add r3, r3, r0
-lbl_803362C4:
-/* 803362C4 00331F24 7D 89 03 A6 */ mtctr r12
-/* 803362C8 00331F28 4E 80 04 21 */ bctrl
-lbl_803362CC:
-/* 803362CC 00331F2C 80 9F 00 00 */ lwz r4, 0(r31)
-/* 803362D0 00331F30 38 C4 FF FF */ addi r6, r4, -1
-/* 803362D4 00331F34 7C 1E 30 00 */ cmpw r30, r6
-/* 803362D8 00331F38 40 80 00 64 */ bge lbl_8033633C
-/* 803362DC 00331F3C 2C 1E 00 00 */ cmpwi r30, 0
-/* 803362E0 00331F40 41 80 00 0C */ blt lbl_803362EC
-/* 803362E4 00331F44 7C 1E 20 00 */ cmpw r30, r4
-/* 803362E8 00331F48 41 80 00 0C */ blt lbl_803362F4
-lbl_803362EC:
-/* 803362EC 00331F4C 38 60 00 00 */ li r3, 0
-/* 803362F0 00331F50 48 00 00 14 */ b lbl_80336304
-lbl_803362F4:
-/* 803362F4 00331F54 80 1F 00 08 */ lwz r0, 8(r31)
-/* 803362F8 00331F58 80 7F 00 14 */ lwz r3, 0x14(r31)
-/* 803362FC 00331F5C 7C 00 F1 D6 */ mullw r0, r0, r30
-/* 80336300 00331F60 7C 63 02 14 */ add r3, r3, r0
-lbl_80336304:
-/* 80336304 00331F64 34 BE 00 01 */ addic. r5, r30, 1
-/* 80336308 00331F68 41 80 00 0C */ blt lbl_80336314
-/* 8033630C 00331F6C 7C 05 20 00 */ cmpw r5, r4
-/* 80336310 00331F70 41 80 00 0C */ blt lbl_8033631C
-lbl_80336314:
-/* 80336314 00331F74 38 80 00 00 */ li r4, 0
-/* 80336318 00331F78 48 00 00 14 */ b lbl_8033632C
-lbl_8033631C:
-/* 8033631C 00331F7C 80 1F 00 08 */ lwz r0, 8(r31)
-/* 80336320 00331F80 80 9F 00 14 */ lwz r4, 0x14(r31)
-/* 80336324 00331F84 7C 00 29 D6 */ mullw r0, r0, r5
-/* 80336328 00331F88 7C 84 02 14 */ add r4, r4, r0
-lbl_8033632C:
-/* 8033632C 00331F8C 80 BF 00 08 */ lwz r5, 8(r31)
-/* 80336330 00331F90 7C 1E 30 50 */ subf r0, r30, r6
-/* 80336334 00331F94 7C A5 01 D6 */ mullw r5, r5, r0
-/* 80336338 00331F98 4B E9 3F 3D */ bl func_801CA274
-lbl_8033633C:
-/* 8033633C 00331F9C 80 7F 00 00 */ lwz r3, 0(r31)
-/* 80336340 00331FA0 38 03 FF FF */ addi r0, r3, -1
-/* 80336344 00331FA4 90 1F 00 00 */ stw r0, 0(r31)
-/* 80336348 00331FA8 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 8033634C 00331FAC 83 C1 00 08 */ lwz r30, 8(r1)
-/* 80336350 00331FB0 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 80336354 00331FB4 7C 08 03 A6 */ mtlr r0
-/* 80336358 00331FB8 38 21 00 10 */ addi r1, r1, 0x10
-/* 8033635C 00331FBC 4E 80 00 20 */ blr
-
-.global ArrayReplaceAt
-ArrayReplaceAt:
-/* 80336360 00331FC0 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80336364 00331FC4 7C 08 02 A6 */ mflr r0
-/* 80336368 00331FC8 90 01 00 24 */ stw r0, 0x24(r1)
-/* 8033636C 00331FCC 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 80336370 00331FD0 7C BF 2B 78 */ mr r31, r5
-/* 80336374 00331FD4 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 80336378 00331FD8 7C 9E 23 78 */ mr r30, r4
-/* 8033637C 00331FDC 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 80336380 00331FE0 7C 7D 1B 78 */ mr r29, r3
-/* 80336384 00331FE4 81 83 00 10 */ lwz r12, 0x10(r3)
-/* 80336388 00331FE8 2C 0C 00 00 */ cmpwi r12, 0
-/* 8033638C 00331FEC 41 82 00 38 */ beq lbl_803363C4
-/* 80336390 00331FF0 2C 05 00 00 */ cmpwi r5, 0
-/* 80336394 00331FF4 41 80 00 10 */ blt lbl_803363A4
-/* 80336398 00331FF8 80 03 00 00 */ lwz r0, 0(r3)
-/* 8033639C 00331FFC 7C 05 00 00 */ cmpw r5, r0
-/* 803363A0 00332000 41 80 00 0C */ blt lbl_803363AC
-lbl_803363A4:
-/* 803363A4 00332004 38 60 00 00 */ li r3, 0
-/* 803363A8 00332008 48 00 00 14 */ b lbl_803363BC
-lbl_803363AC:
-/* 803363AC 0033200C 80 03 00 08 */ lwz r0, 8(r3)
-/* 803363B0 00332010 80 63 00 14 */ lwz r3, 0x14(r3)
-/* 803363B4 00332014 7C 00 29 D6 */ mullw r0, r0, r5
-/* 803363B8 00332018 7C 63 02 14 */ add r3, r3, r0
-lbl_803363BC:
-/* 803363BC 0033201C 7D 89 03 A6 */ mtctr r12
-/* 803363C0 00332020 4E 80 04 21 */ bctrl
-lbl_803363C4:
-/* 803363C4 00332024 2C 1F 00 00 */ cmpwi r31, 0
-/* 803363C8 00332028 41 80 00 10 */ blt lbl_803363D8
-/* 803363CC 0033202C 80 1D 00 00 */ lwz r0, 0(r29)
-/* 803363D0 00332030 7C 1F 00 00 */ cmpw r31, r0
-/* 803363D4 00332034 41 80 00 0C */ blt lbl_803363E0
-lbl_803363D8:
-/* 803363D8 00332038 38 60 00 00 */ li r3, 0
-/* 803363DC 0033203C 48 00 00 14 */ b lbl_803363F0
-lbl_803363E0:
-/* 803363E0 00332040 80 1D 00 08 */ lwz r0, 8(r29)
-/* 803363E4 00332044 80 7D 00 14 */ lwz r3, 0x14(r29)
-/* 803363E8 00332048 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 803363EC 0033204C 7C 63 02 14 */ add r3, r3, r0
-lbl_803363F0:
-/* 803363F0 00332050 80 BD 00 08 */ lwz r5, 8(r29)
-/* 803363F4 00332054 7F C4 F3 78 */ mr r4, r30
-/* 803363F8 00332058 4B CC DC 09 */ bl memcpy
-/* 803363FC 0033205C 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80336400 00332060 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 80336404 00332064 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 80336408 00332068 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 8033640C 0033206C 7C 08 03 A6 */ mtlr r0
-/* 80336410 00332070 38 21 00 20 */ addi r1, r1, 0x20
-/* 80336414 00332074 4E 80 00 20 */ blr
-
-.global ArraySort
-ArraySort:
-/* 80336418 00332078 7C 65 1B 78 */ mr r5, r3
-/* 8033641C 0033207C 7C 86 23 78 */ mr r6, r4
-/* 80336420 00332080 80 85 00 00 */ lwz r4, 0(r5)
-/* 80336424 00332084 80 63 00 14 */ lwz r3, 0x14(r3)
-/* 80336428 00332088 80 A5 00 08 */ lwz r5, 8(r5)
-/* 8033642C 0033208C 4B E9 67 A0 */ b func_801CCBCC
-
-.global ArraySearch
-ArraySearch:
-/* 80336430 00332090 94 21 FF D0 */ stwu r1, -0x30(r1)
-/* 80336434 00332094 7C 08 02 A6 */ mflr r0
-/* 80336438 00332098 90 01 00 34 */ stw r0, 0x34(r1)
-/* 8033643C 0033209C 39 61 00 30 */ addi r11, r1, 0x30
-/* 80336440 003320A0 4B E9 0C D9 */ bl _savegpr_23
-/* 80336444 003320A4 2C 03 00 00 */ cmpwi r3, 0
-/* 80336448 003320A8 7C 7C 1B 78 */ mr r28, r3
-/* 8033644C 003320AC 7C 9D 23 78 */ mr r29, r4
-/* 80336450 003320B0 7C BE 2B 78 */ mr r30, r5
-/* 80336454 003320B4 3B E0 00 01 */ li r31, 1
-/* 80336458 003320B8 41 82 00 10 */ beq lbl_80336468
-/* 8033645C 003320BC 80 A3 00 00 */ lwz r5, 0(r3)
-/* 80336460 003320C0 2C 05 00 00 */ cmpwi r5, 0
-/* 80336464 003320C4 40 82 00 0C */ bne lbl_80336470
-lbl_80336468:
-/* 80336468 003320C8 38 60 FF FF */ li r3, -1
-/* 8033646C 003320CC 48 00 01 44 */ b lbl_803365B0
-lbl_80336470:
-/* 80336470 003320D0 2C 07 00 00 */ cmpwi r7, 0
-/* 80336474 003320D4 41 82 00 9C */ beq lbl_80336510
-/* 80336478 003320D8 2C 06 00 00 */ cmpwi r6, 0
-/* 8033647C 003320DC 41 80 00 0C */ blt lbl_80336488
-/* 80336480 003320E0 7C 06 28 00 */ cmpw r6, r5
-/* 80336484 003320E4 41 80 00 0C */ blt lbl_80336490
-lbl_80336488:
-/* 80336488 003320E8 3B 60 00 00 */ li r27, 0
-/* 8033648C 003320EC 48 00 00 14 */ b lbl_803364A0
-lbl_80336490:
-/* 80336490 003320F0 80 03 00 08 */ lwz r0, 8(r3)
-/* 80336494 003320F4 80 83 00 14 */ lwz r4, 0x14(r3)
-/* 80336498 003320F8 7C 00 31 D6 */ mullw r0, r0, r6
-/* 8033649C 003320FC 7F 64 02 14 */ add r27, r4, r0
-lbl_803364A0:
-/* 803364A0 00332100 7C 86 28 50 */ subf r4, r6, r5
-/* 803364A4 00332104 83 43 00 08 */ lwz r26, 8(r3)
-/* 803364A8 00332108 3B 04 FF FF */ addi r24, r4, -1
-/* 803364AC 0033210C 3A E0 00 00 */ li r23, 0
-/* 803364B0 00332110 3B E0 00 00 */ li r31, 0
-/* 803364B4 00332114 48 00 00 48 */ b lbl_803364FC
-lbl_803364B8:
-/* 803364B8 00332118 7C 17 C2 14 */ add r0, r23, r24
-/* 803364BC 0033211C 7F CC F3 78 */ mr r12, r30
-/* 803364C0 00332120 7C 19 0E 70 */ srawi r25, r0, 1
-/* 803364C4 00332124 7F A4 EB 78 */ mr r4, r29
-/* 803364C8 00332128 7C 19 D1 D6 */ mullw r0, r25, r26
-/* 803364CC 0033212C 7C 7B 02 14 */ add r3, r27, r0
-/* 803364D0 00332130 7D 89 03 A6 */ mtctr r12
-/* 803364D4 00332134 4E 80 04 21 */ bctrl
-/* 803364D8 00332138 2C 03 00 00 */ cmpwi r3, 0
-/* 803364DC 0033213C 40 82 00 08 */ bne lbl_803364E4
-/* 803364E0 00332140 3B E0 00 01 */ li r31, 1
-lbl_803364E4:
-/* 803364E4 00332144 2C 03 00 00 */ cmpwi r3, 0
-/* 803364E8 00332148 40 80 00 08 */ bge lbl_803364F0
-/* 803364EC 0033214C 3A F9 00 01 */ addi r23, r25, 1
-lbl_803364F0:
-/* 803364F0 00332150 2C 03 00 00 */ cmpwi r3, 0
-/* 803364F4 00332154 41 80 00 08 */ blt lbl_803364FC
-/* 803364F8 00332158 3B 19 FF FF */ addi r24, r25, -1
-lbl_803364FC:
-/* 803364FC 0033215C 7C 17 C0 00 */ cmpw r23, r24
-/* 80336500 00332160 40 81 FF B8 */ ble lbl_803364B8
-/* 80336504 00332164 7C 17 D1 D6 */ mullw r0, r23, r26
-/* 80336508 00332168 7C 9B 02 14 */ add r4, r27, r0
-/* 8033650C 0033216C 48 00 00 7C */ b lbl_80336588
-lbl_80336510:
-/* 80336510 00332170 2C 06 00 00 */ cmpwi r6, 0
-/* 80336514 00332174 41 80 00 0C */ blt lbl_80336520
-/* 80336518 00332178 7C 06 28 00 */ cmpw r6, r5
-/* 8033651C 0033217C 41 80 00 0C */ blt lbl_80336528
-lbl_80336520:
-/* 80336520 00332180 3A E0 00 00 */ li r23, 0
-/* 80336524 00332184 48 00 00 14 */ b lbl_80336538
-lbl_80336528:
-/* 80336528 00332188 80 03 00 08 */ lwz r0, 8(r3)
-/* 8033652C 0033218C 80 83 00 14 */ lwz r4, 0x14(r3)
-/* 80336530 00332190 7C 00 31 D6 */ mullw r0, r0, r6
-/* 80336534 00332194 7E E4 02 14 */ add r23, r4, r0
-lbl_80336538:
-/* 80336538 00332198 83 23 00 08 */ lwz r25, 8(r3)
-/* 8033653C 0033219C 7F 06 28 50 */ subf r24, r6, r5
-/* 80336540 003321A0 3B 40 00 00 */ li r26, 0
-/* 80336544 003321A4 3B 60 00 00 */ li r27, 0
-/* 80336548 003321A8 48 00 00 34 */ b lbl_8033657C
-lbl_8033654C:
-/* 8033654C 003321AC 7F CC F3 78 */ mr r12, r30
-/* 80336550 003321B0 7F A3 EB 78 */ mr r3, r29
-/* 80336554 003321B4 7C 97 DA 14 */ add r4, r23, r27
-/* 80336558 003321B8 7D 89 03 A6 */ mtctr r12
-/* 8033655C 003321BC 4E 80 04 21 */ bctrl
-/* 80336560 003321C0 2C 03 00 00 */ cmpwi r3, 0
-/* 80336564 003321C4 40 82 00 10 */ bne lbl_80336574
-/* 80336568 003321C8 7C 19 D1 D6 */ mullw r0, r25, r26
-/* 8033656C 003321CC 7C 97 02 14 */ add r4, r23, r0
-/* 80336570 003321D0 48 00 00 18 */ b lbl_80336588
-lbl_80336574:
-/* 80336574 003321D4 7F 7B CA 14 */ add r27, r27, r25
-/* 80336578 003321D8 3B 5A 00 01 */ addi r26, r26, 1
-lbl_8033657C:
-/* 8033657C 003321DC 7C 1A C0 00 */ cmpw r26, r24
-/* 80336580 003321E0 41 80 FF CC */ blt lbl_8033654C
-/* 80336584 003321E4 38 80 00 00 */ li r4, 0
-lbl_80336588:
-/* 80336588 003321E8 2C 04 00 00 */ cmpwi r4, 0
-/* 8033658C 003321EC 41 82 00 20 */ beq lbl_803365AC
-/* 80336590 003321F0 2C 1F 00 00 */ cmpwi r31, 0
-/* 80336594 003321F4 41 82 00 18 */ beq lbl_803365AC
-/* 80336598 003321F8 80 7C 00 14 */ lwz r3, 0x14(r28)
-/* 8033659C 003321FC 80 1C 00 08 */ lwz r0, 8(r28)
-/* 803365A0 00332200 7C 63 20 50 */ subf r3, r3, r4
-/* 803365A4 00332204 7C 63 03 D6 */ divw r3, r3, r0
-/* 803365A8 00332208 48 00 00 08 */ b lbl_803365B0
-lbl_803365AC:
-/* 803365AC 0033220C 38 60 FF FF */ li r3, -1
-lbl_803365B0:
-/* 803365B0 00332210 39 61 00 30 */ addi r11, r1, 0x30
-/* 803365B4 00332214 4B E9 0B B1 */ bl _restgpr_23
-/* 803365B8 00332218 80 01 00 34 */ lwz r0, 0x34(r1)
-/* 803365BC 0033221C 7C 08 03 A6 */ mtlr r0
-/* 803365C0 00332220 38 21 00 30 */ addi r1, r1, 0x30
-/* 803365C4 00332224 4E 80 00 20 */ blr
-
-.global ArrayMapBackwards
-ArrayMapBackwards:
-/* 803365C8 00332228 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 803365CC 0033222C 7C 08 02 A6 */ mflr r0
-/* 803365D0 00332230 90 01 00 24 */ stw r0, 0x24(r1)
-/* 803365D4 00332234 93 E1 00 1C */ stw r31, 0x1c(r1)
-/* 803365D8 00332238 93 C1 00 18 */ stw r30, 0x18(r1)
-/* 803365DC 0033223C 7C BE 2B 78 */ mr r30, r5
-/* 803365E0 00332240 93 A1 00 14 */ stw r29, 0x14(r1)
-/* 803365E4 00332244 7C 9D 23 78 */ mr r29, r4
-/* 803365E8 00332248 93 81 00 10 */ stw r28, 0x10(r1)
-/* 803365EC 0033224C 7C 7C 1B 78 */ mr r28, r3
-/* 803365F0 00332250 80 C3 00 00 */ lwz r6, 0(r3)
-/* 803365F4 00332254 3B E6 FF FF */ addi r31, r6, -1
-/* 803365F8 00332258 48 00 00 44 */ b lbl_8033663C
-lbl_803365FC:
-/* 803365FC 0033225C 2C 1F 00 00 */ cmpwi r31, 0
-/* 80336600 00332260 41 80 00 10 */ blt lbl_80336610
-/* 80336604 00332264 80 1C 00 00 */ lwz r0, 0(r28)
-/* 80336608 00332268 7C 1F 00 00 */ cmpw r31, r0
-/* 8033660C 0033226C 41 80 00 0C */ blt lbl_80336618
-lbl_80336610:
-/* 80336610 00332270 38 60 00 00 */ li r3, 0
-/* 80336614 00332274 48 00 00 14 */ b lbl_80336628
-lbl_80336618:
-/* 80336618 00332278 80 1C 00 08 */ lwz r0, 8(r28)
-/* 8033661C 0033227C 80 7C 00 14 */ lwz r3, 0x14(r28)
-/* 80336620 00332280 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 80336624 00332284 7C 63 02 14 */ add r3, r3, r0
-lbl_80336628:
-/* 80336628 00332288 7F AC EB 78 */ mr r12, r29
-/* 8033662C 0033228C 7F C4 F3 78 */ mr r4, r30
-/* 80336630 00332290 7D 89 03 A6 */ mtctr r12
-/* 80336634 00332294 4E 80 04 21 */ bctrl
-/* 80336638 00332298 3B FF FF FF */ addi r31, r31, -1
-lbl_8033663C:
-/* 8033663C 0033229C 2C 1F 00 00 */ cmpwi r31, 0
-/* 80336640 003322A0 40 80 FF BC */ bge lbl_803365FC
-/* 80336644 003322A4 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 80336648 003322A8 83 E1 00 1C */ lwz r31, 0x1c(r1)
-/* 8033664C 003322AC 83 C1 00 18 */ lwz r30, 0x18(r1)
-/* 80336650 003322B0 83 A1 00 14 */ lwz r29, 0x14(r1)
-/* 80336654 003322B4 83 81 00 10 */ lwz r28, 0x10(r1)
-/* 80336658 003322B8 7C 08 03 A6 */ mtlr r0
-/* 8033665C 003322BC 38 21 00 20 */ addi r1, r1, 0x20
-/* 80336660 003322C0 4E 80 00 20 */ blr
-
-.global ArrayMapBackwards2
-ArrayMapBackwards2:
-/* 80336664 003322C4 94 21 FF E0 */ stwu r1, -0x20(r1)
-/* 80336668 003322C8 7C 08 02 A6 */ mflr r0
-/* 8033666C 003322CC 90 01 00 24 */ stw r0, 0x24(r1)
-/* 80336670 003322D0 39 61 00 20 */ addi r11, r1, 0x20
-/* 80336674 003322D4 4B E9 0A B5 */ bl _savegpr_27
-/* 80336678 003322D8 80 C3 00 00 */ lwz r6, 0(r3)
-/* 8033667C 003322DC 7C 7B 1B 78 */ mr r27, r3
-/* 80336680 003322E0 7C 9C 23 78 */ mr r28, r4
-/* 80336684 003322E4 7C BD 2B 78 */ mr r29, r5
-/* 80336688 003322E8 3B C6 FF FF */ addi r30, r6, -1
-/* 8033668C 003322EC 48 00 00 58 */ b lbl_803366E4
-lbl_80336690:
-/* 80336690 003322F0 2C 1E 00 00 */ cmpwi r30, 0
-/* 80336694 003322F4 41 80 00 10 */ blt lbl_803366A4
-/* 80336698 003322F8 80 1B 00 00 */ lwz r0, 0(r27)
-/* 8033669C 003322FC 7C 1E 00 00 */ cmpw r30, r0
-/* 803366A0 00332300 41 80 00 0C */ blt lbl_803366AC
-lbl_803366A4:
-/* 803366A4 00332304 3B E0 00 00 */ li r31, 0
-/* 803366A8 00332308 48 00 00 14 */ b lbl_803366BC
-lbl_803366AC:
-/* 803366AC 0033230C 80 1B 00 08 */ lwz r0, 8(r27)
-/* 803366B0 00332310 80 7B 00 14 */ lwz r3, 0x14(r27)
-/* 803366B4 00332314 7C 00 F1 D6 */ mullw r0, r0, r30
-/* 803366B8 00332318 7F E3 02 14 */ add r31, r3, r0
-lbl_803366BC:
-/* 803366BC 0033231C 7F 8C E3 78 */ mr r12, r28
-/* 803366C0 00332320 7F E3 FB 78 */ mr r3, r31
-/* 803366C4 00332324 7F A4 EB 78 */ mr r4, r29
-/* 803366C8 00332328 7D 89 03 A6 */ mtctr r12
-/* 803366CC 0033232C 4E 80 04 21 */ bctrl
-/* 803366D0 00332330 2C 03 00 00 */ cmpwi r3, 0
-/* 803366D4 00332334 40 82 00 0C */ bne lbl_803366E0
-/* 803366D8 00332338 7F E3 FB 78 */ mr r3, r31
-/* 803366DC 0033233C 48 00 00 14 */ b lbl_803366F0
-lbl_803366E0:
-/* 803366E0 00332340 3B DE FF FF */ addi r30, r30, -1
-lbl_803366E4:
-/* 803366E4 00332344 2C 1E 00 00 */ cmpwi r30, 0
-/* 803366E8 00332348 40 80 FF A8 */ bge lbl_80336690
-/* 803366EC 0033234C 38 60 00 00 */ li r3, 0
-lbl_803366F0:
-/* 803366F0 00332350 39 61 00 20 */ addi r11, r1, 0x20
-/* 803366F4 00332354 4B E9 0A 81 */ bl _restgpr_27
-/* 803366F8 00332358 80 01 00 24 */ lwz r0, 0x24(r1)
-/* 803366FC 0033235C 7C 08 03 A6 */ mtlr r0
-/* 80336700 00332360 38 21 00 20 */ addi r1, r1, 0x20
-/* 80336704 00332364 4E 80 00 20 */ blr
-
-.global ArrayClear
-ArrayClear:
-/* 80336708 00332368 94 21 FF F0 */ stwu r1, -0x10(r1)
-/* 8033670C 0033236C 7C 08 02 A6 */ mflr r0
-/* 80336710 00332370 90 01 00 14 */ stw r0, 0x14(r1)
-/* 80336714 00332374 93 E1 00 0C */ stw r31, 0xc(r1)
-/* 80336718 00332378 93 C1 00 08 */ stw r30, 8(r1)
-/* 8033671C 0033237C 7C 7E 1B 78 */ mr r30, r3
-/* 80336720 00332380 80 83 00 00 */ lwz r4, 0(r3)
-/* 80336724 00332384 3B E4 FF FF */ addi r31, r4, -1
-/* 80336728 00332388 48 00 00 C4 */ b lbl_803367EC
-lbl_8033672C:
-/* 8033672C 0033238C 81 9E 00 10 */ lwz r12, 0x10(r30)
-/* 80336730 00332390 2C 0C 00 00 */ cmpwi r12, 0
-/* 80336734 00332394 41 82 00 38 */ beq lbl_8033676C
-/* 80336738 00332398 2C 1F 00 00 */ cmpwi r31, 0
-/* 8033673C 0033239C 41 80 00 10 */ blt lbl_8033674C
-/* 80336740 003323A0 80 1E 00 00 */ lwz r0, 0(r30)
-/* 80336744 003323A4 7C 1F 00 00 */ cmpw r31, r0
-/* 80336748 003323A8 41 80 00 0C */ blt lbl_80336754
-lbl_8033674C:
-/* 8033674C 003323AC 38 60 00 00 */ li r3, 0
-/* 80336750 003323B0 48 00 00 14 */ b lbl_80336764
-lbl_80336754:
-/* 80336754 003323B4 80 1E 00 08 */ lwz r0, 8(r30)
-/* 80336758 003323B8 80 7E 00 14 */ lwz r3, 0x14(r30)
-/* 8033675C 003323BC 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 80336760 003323C0 7C 63 02 14 */ add r3, r3, r0
-lbl_80336764:
-/* 80336764 003323C4 7D 89 03 A6 */ mtctr r12
-/* 80336768 003323C8 4E 80 04 21 */ bctrl
-lbl_8033676C:
-/* 8033676C 003323CC 80 9E 00 00 */ lwz r4, 0(r30)
-/* 80336770 003323D0 38 C4 FF FF */ addi r6, r4, -1
-/* 80336774 003323D4 7C 1F 30 00 */ cmpw r31, r6
-/* 80336778 003323D8 40 80 00 64 */ bge lbl_803367DC
-/* 8033677C 003323DC 2C 1F 00 00 */ cmpwi r31, 0
-/* 80336780 003323E0 41 80 00 0C */ blt lbl_8033678C
-/* 80336784 003323E4 7C 1F 20 00 */ cmpw r31, r4
-/* 80336788 003323E8 41 80 00 0C */ blt lbl_80336794
-lbl_8033678C:
-/* 8033678C 003323EC 38 60 00 00 */ li r3, 0
-/* 80336790 003323F0 48 00 00 14 */ b lbl_803367A4
-lbl_80336794:
-/* 80336794 003323F4 80 1E 00 08 */ lwz r0, 8(r30)
-/* 80336798 003323F8 80 7E 00 14 */ lwz r3, 0x14(r30)
-/* 8033679C 003323FC 7C 00 F9 D6 */ mullw r0, r0, r31
-/* 803367A0 00332400 7C 63 02 14 */ add r3, r3, r0
-lbl_803367A4:
-/* 803367A4 00332404 34 BF 00 01 */ addic. r5, r31, 1
-/* 803367A8 00332408 41 80 00 0C */ blt lbl_803367B4
-/* 803367AC 0033240C 7C 05 20 00 */ cmpw r5, r4
-/* 803367B0 00332410 41 80 00 0C */ blt lbl_803367BC
-lbl_803367B4:
-/* 803367B4 00332414 38 80 00 00 */ li r4, 0
-/* 803367B8 00332418 48 00 00 14 */ b lbl_803367CC
-lbl_803367BC:
-/* 803367BC 0033241C 80 1E 00 08 */ lwz r0, 8(r30)
-/* 803367C0 00332420 80 9E 00 14 */ lwz r4, 0x14(r30)
-/* 803367C4 00332424 7C 00 29 D6 */ mullw r0, r0, r5
-/* 803367C8 00332428 7C 84 02 14 */ add r4, r4, r0
-lbl_803367CC:
-/* 803367CC 0033242C 80 BE 00 08 */ lwz r5, 8(r30)
-/* 803367D0 00332430 7C 1F 30 50 */ subf r0, r31, r6
-/* 803367D4 00332434 7C A5 01 D6 */ mullw r5, r5, r0
-/* 803367D8 00332438 4B E9 3A 9D */ bl func_801CA274
-lbl_803367DC:
-/* 803367DC 0033243C 80 7E 00 00 */ lwz r3, 0(r30)
-/* 803367E0 00332440 3B FF FF FF */ addi r31, r31, -1
-/* 803367E4 00332444 38 03 FF FF */ addi r0, r3, -1
-/* 803367E8 00332448 90 1E 00 00 */ stw r0, 0(r30)
-lbl_803367EC:
-/* 803367EC 0033244C 2C 1F 00 00 */ cmpwi r31, 0
-/* 803367F0 00332450 40 80 FF 3C */ bge lbl_8033672C
-/* 803367F4 00332454 80 01 00 14 */ lwz r0, 0x14(r1)
-/* 803367F8 00332458 83 E1 00 0C */ lwz r31, 0xc(r1)
-/* 803367FC 0033245C 83 C1 00 08 */ lwz r30, 8(r1)
-/* 80336800 00332460 7C 08 03 A6 */ mtlr r0
-/* 80336804 00332464 38 21 00 10 */ addi r1, r1, 0x10
-/* 80336808 00332468 4E 80 00 20 */ blr
@@ -885,7 +885,7 @@ MD5Digest: /* 80337A10 00333670 7C 08 02 A6 */ mflr r0
/* 80337A14 00333674 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 80337A18 00333678 39 61 00 A0 */ addi r11, r1, 0xa0
-/* 80337A1C 0033367C 4B E8 F7 01 */ bl func_801C711C
+/* 80337A1C 0033367C 4B E8 F7 01 */ bl _savegpr_24
/* 80337A20 00333680 3D 20 67 45 */ lis r9, 0x67452301@ha
/* 80337A24 00333684 3D 00 EF CE */ lis r8, 0xEFCDAB89@ha
/* 80337A28 00333688 39 40 00 00 */ li r10, 0
@@ -988,7 +988,7 @@ lbl_80337B84: /* 80337BA4 00333804 3B 9C 00 01 */ addi r28, r28, 1
/* 80337BA8 00333808 41 80 FF DC */ blt lbl_80337B84
/* 80337BAC 0033380C 39 61 00 A0 */ addi r11, r1, 0xa0
-/* 80337BB0 00333810 4B E8 F5 B9 */ bl func_801C7168
+/* 80337BB0 00333810 4B E8 F5 B9 */ bl _restgpr_24
/* 80337BB4 00333814 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 80337BB8 00333818 7C 08 03 A6 */ mtlr r0
/* 80337BBC 0033381C 38 21 00 A0 */ addi r1, r1, 0xa0
diff --git a/asm/text_1.s b/asm/text_1.s index 615e7b2..f6da148 100644 --- a/asm/text_1.s +++ b/asm/text_1.s @@ -4018,7 +4018,7 @@ lbl_8000A0F0: /* 8000A0F4 00005D54 7C 08 02 A6 */ mflr r0 /* 8000A0F8 00005D58 90 01 00 34 */ stw r0, 0x34(r1) /* 8000A0FC 00005D5C 39 61 00 30 */ addi r11, r1, 0x30 -/* 8000A100 00005D60 48 1B D0 1D */ bl func_801C711C +/* 8000A100 00005D60 48 1B D0 1D */ bl _savegpr_24 /* 8000A104 00005D64 88 03 00 00 */ lbz r0, 0(r3) /* 8000A108 00005D68 7C 7E 1B 78 */ mr r30, r3 /* 8000A10C 00005D6C 2C 00 00 00 */ cmpwi r0, 0 @@ -4318,7 +4318,7 @@ lbl_8000A52C: /* 8000A530 00006190 41 80 FE A0 */ blt lbl_8000A3D0 lbl_8000A534: /* 8000A534 00006194 39 61 00 30 */ addi r11, r1, 0x30 -/* 8000A538 00006198 48 1B CC 31 */ bl func_801C7168 +/* 8000A538 00006198 48 1B CC 31 */ bl _restgpr_24 /* 8000A53C 0000619C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8000A540 000061A0 7C 08 03 A6 */ mtlr r0 /* 8000A544 000061A4 38 21 00 30 */ addi r1, r1, 0x30 @@ -11049,7 +11049,7 @@ func_800101FC: /* 80010200 0000BE60 7C 08 02 A6 */ mflr r0 /* 80010204 0000BE64 90 01 00 44 */ stw r0, 0x44(r1) /* 80010208 0000BE68 39 61 00 40 */ addi r11, r1, 0x40 -/* 8001020C 0000BE6C 48 1B 6F 11 */ bl func_801C711C +/* 8001020C 0000BE6C 48 1B 6F 11 */ bl _savegpr_24 /* 80010210 0000BE70 7C 7B 1B 78 */ mr r27, r3 /* 80010214 0000BE74 7C 9C 23 78 */ mr r28, r4 /* 80010218 0000BE78 7C BD 2B 78 */ mr r29, r5 @@ -11554,7 +11554,7 @@ lbl_80010920: /* 8001094C 0000C5AC 90 7C 00 00 */ stw r3, 0(r28) lbl_80010950: /* 80010950 0000C5B0 39 61 00 40 */ addi r11, r1, 0x40 -/* 80010954 0000C5B4 48 1B 68 15 */ bl func_801C7168 +/* 80010954 0000C5B4 48 1B 68 15 */ bl _restgpr_24 /* 80010958 0000C5B8 80 01 00 44 */ lwz r0, 0x44(r1) /* 8001095C 0000C5BC 7C 08 03 A6 */ mtlr r0 /* 80010960 0000C5C0 38 21 00 40 */ addi r1, r1, 0x40 @@ -17172,7 +17172,7 @@ func_8001585C: /* 80015860 000114C0 7C 08 02 A6 */ mflr r0 /* 80015864 000114C4 90 01 00 34 */ stw r0, 0x34(r1) /* 80015868 000114C8 39 61 00 30 */ addi r11, r1, 0x30 -/* 8001586C 000114CC 48 1B 18 B1 */ bl func_801C711C +/* 8001586C 000114CC 48 1B 18 B1 */ bl _savegpr_24 /* 80015870 000114D0 7C 7B 1B 78 */ mr r27, r3 /* 80015874 000114D4 7C 9C 23 78 */ mr r28, r4 /* 80015878 000114D8 7C BD 2B 78 */ mr r29, r5 @@ -17233,7 +17233,7 @@ lbl_80015938: /* 8001594C 000115AC 48 00 E8 5D */ bl func_800241A8 lbl_80015950: /* 80015950 000115B0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80015954 000115B4 48 1B 18 15 */ bl func_801C7168 +/* 80015954 000115B4 48 1B 18 15 */ bl _restgpr_24 /* 80015958 000115B8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8001595C 000115BC 7C 08 03 A6 */ mtlr r0 /* 80015960 000115C0 38 21 00 30 */ addi r1, r1, 0x30 @@ -30261,7 +30261,7 @@ func_800210FC: /* 80021100 0001CD60 7C 08 02 A6 */ mflr r0 /* 80021104 0001CD64 90 01 00 34 */ stw r0, 0x34(r1) /* 80021108 0001CD68 39 61 00 30 */ addi r11, r1, 0x30 -/* 8002110C 0001CD6C 48 1A 60 11 */ bl func_801C711C +/* 8002110C 0001CD6C 48 1A 60 11 */ bl _savegpr_24 /* 80021110 0001CD70 2C 04 00 00 */ cmpwi r4, 0 /* 80021114 0001CD74 7C 79 1B 78 */ mr r25, r3 /* 80021118 0001CD78 7C 9A 23 78 */ mr r26, r4 @@ -30452,7 +30452,7 @@ lbl_800213B4: /* 800213B4 0001D014 38 60 00 01 */ li r3, 1 lbl_800213B8: /* 800213B8 0001D018 39 61 00 30 */ addi r11, r1, 0x30 -/* 800213BC 0001D01C 48 1A 5D AD */ bl func_801C7168 +/* 800213BC 0001D01C 48 1A 5D AD */ bl _restgpr_24 /* 800213C0 0001D020 80 01 00 34 */ lwz r0, 0x34(r1) /* 800213C4 0001D024 7C 08 03 A6 */ mtlr r0 /* 800213C8 0001D028 38 21 00 30 */ addi r1, r1, 0x30 @@ -33776,7 +33776,7 @@ func_800242D0: /* 800242D4 0001FF34 7C 08 02 A6 */ mflr r0 /* 800242D8 0001FF38 90 01 00 34 */ stw r0, 0x34(r1) /* 800242DC 0001FF3C 39 61 00 30 */ addi r11, r1, 0x30 -/* 800242E0 0001FF40 48 1A 2E 3D */ bl func_801C711C +/* 800242E0 0001FF40 48 1A 2E 3D */ bl _savegpr_24 /* 800242E4 0001FF44 83 A3 00 64 */ lwz r29, 0x64(r3) /* 800242E8 0001FF48 7C B9 2B 78 */ mr r25, r5 /* 800242EC 0001FF4C 7C A3 2A 14 */ add r5, r3, r5 @@ -33881,7 +33881,7 @@ lbl_8002445C: /* 80024464 000200C4 38 60 FF FF */ li r3, -1 lbl_80024468: /* 80024468 000200C8 39 61 00 30 */ addi r11, r1, 0x30 -/* 8002446C 000200CC 48 1A 2C FD */ bl func_801C7168 +/* 8002446C 000200CC 48 1A 2C FD */ bl _restgpr_24 /* 80024470 000200D0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80024474 000200D4 7C 08 03 A6 */ mtlr r0 /* 80024478 000200D8 38 21 00 30 */ addi r1, r1, 0x30 @@ -33893,7 +33893,7 @@ func_80024480: /* 80024484 000200E4 7C 08 02 A6 */ mflr r0 /* 80024488 000200E8 90 01 00 34 */ stw r0, 0x34(r1) /* 8002448C 000200EC 39 61 00 30 */ addi r11, r1, 0x30 -/* 80024490 000200F0 48 1A 2C 8D */ bl func_801C711C +/* 80024490 000200F0 48 1A 2C 8D */ bl _savegpr_24 /* 80024494 000200F4 80 03 00 50 */ lwz r0, 0x50(r3) /* 80024498 000200F8 7C 7F 1B 78 */ mr r31, r3 /* 8002449C 000200FC 7C 98 23 78 */ mr r24, r4 @@ -34033,7 +34033,7 @@ lbl_80024668: /* 8002466C 000202CC 98 83 9D B4 */ stb r4, -0x624c(r3) lbl_80024670: /* 80024670 000202D0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80024674 000202D4 48 1A 2A F5 */ bl func_801C7168 +/* 80024674 000202D4 48 1A 2A F5 */ bl _restgpr_24 /* 80024678 000202D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8002467C 000202DC 7C 08 03 A6 */ mtlr r0 /* 80024680 000202E0 38 21 00 30 */ addi r1, r1, 0x30 @@ -35364,7 +35364,7 @@ lbl_800257E8: /* 800257FC 0002145C DB E1 01 50 */ stfd f31, 0x150(r1) /* 80025800 00021460 F3 E1 01 58 */ psq_st f31, 344(r1), 0, qr0 /* 80025804 00021464 39 61 01 50 */ addi r11, r1, 0x150 -/* 80025808 00021468 48 1A 19 15 */ bl func_801C711C +/* 80025808 00021468 48 1A 19 15 */ bl _savegpr_24 /* 8002580C 0002146C 3C 00 43 30 */ lis r0, 0x4330 /* 80025810 00021470 7C 7B 1B 78 */ mr r27, r3 /* 80025814 00021474 90 01 01 10 */ stw r0, 0x110(r1) @@ -37871,7 +37871,7 @@ lbl_80027A34: /* 80027A34 00023694 E3 E1 01 58 */ psq_l f31, 344(r1), 0, qr0 /* 80027A38 00023698 39 61 01 50 */ addi r11, r1, 0x150 /* 80027A3C 0002369C CB E1 01 50 */ lfd f31, 0x150(r1) -/* 80027A40 000236A0 48 19 F7 29 */ bl func_801C7168 +/* 80027A40 000236A0 48 19 F7 29 */ bl _restgpr_24 /* 80027A44 000236A4 80 01 01 64 */ lwz r0, 0x164(r1) /* 80027A48 000236A8 7C 08 03 A6 */ mtlr r0 /* 80027A4C 000236AC 38 21 01 60 */ addi r1, r1, 0x160 @@ -51816,7 +51816,7 @@ func_80033C6C: /* 80033C80 0002F8E0 DB C1 00 E0 */ stfd f30, 0xe0(r1) /* 80033C84 0002F8E4 F3 C1 00 E8 */ psq_st f30, 232(r1), 0, qr0 /* 80033C88 0002F8E8 39 61 00 E0 */ addi r11, r1, 0xe0 -/* 80033C8C 0002F8EC 48 19 34 91 */ bl func_801C711C +/* 80033C8C 0002F8EC 48 19 34 91 */ bl _savegpr_24 /* 80033C90 0002F8F0 7C 7F 1B 78 */ mr r31, r3 /* 80033C94 0002F8F4 38 61 00 08 */ addi r3, r1, 8 /* 80033C98 0002F8F8 48 00 16 E9 */ bl func_80035380 @@ -52084,7 +52084,7 @@ func_80033C6C: /* 800340B0 0002FD10 E3 C1 00 E8 */ psq_l f30, 232(r1), 0, qr0 /* 800340B4 0002FD14 39 61 00 E0 */ addi r11, r1, 0xe0 /* 800340B8 0002FD18 CB C1 00 E0 */ lfd f30, 0xe0(r1) -/* 800340BC 0002FD1C 48 19 30 AD */ bl func_801C7168 +/* 800340BC 0002FD1C 48 19 30 AD */ bl _restgpr_24 /* 800340C0 0002FD20 80 01 01 04 */ lwz r0, 0x104(r1) /* 800340C4 0002FD24 7C 08 03 A6 */ mtlr r0 /* 800340C8 0002FD28 38 21 01 00 */ addi r1, r1, 0x100 @@ -64963,7 +64963,7 @@ func_8003EDEC: /* 8003EDF0 0003AA50 7C 08 02 A6 */ mflr r0 /* 8003EDF4 0003AA54 90 01 00 54 */ stw r0, 0x54(r1) /* 8003EDF8 0003AA58 39 61 00 50 */ addi r11, r1, 0x50 -/* 8003EDFC 0003AA5C 48 18 83 21 */ bl func_801C711C +/* 8003EDFC 0003AA5C 48 18 83 21 */ bl _savegpr_24 /* 8003EE00 0003AA60 3C C0 80 64 */ lis r6, lbl_8063CE34@ha /* 8003EE04 0003AA64 7C 7C 1B 78 */ mr r28, r3 /* 8003EE08 0003AA68 3B E6 CE 34 */ addi r31, r6, lbl_8063CE34@l @@ -65288,7 +65288,7 @@ lbl_8003F27C: /* 8003F27C 0003AEDC 7C 19 E0 40 */ cmplw r25, r28 /* 8003F280 0003AEE0 40 82 FE FC */ bne lbl_8003F17C /* 8003F284 0003AEE4 39 61 00 50 */ addi r11, r1, 0x50 -/* 8003F288 0003AEE8 48 18 7E E1 */ bl func_801C7168 +/* 8003F288 0003AEE8 48 18 7E E1 */ bl _restgpr_24 /* 8003F28C 0003AEEC 80 01 00 54 */ lwz r0, 0x54(r1) /* 8003F290 0003AEF0 7C 08 03 A6 */ mtlr r0 /* 8003F294 0003AEF4 38 21 00 50 */ addi r1, r1, 0x50 @@ -65300,7 +65300,7 @@ func_8003F29C: /* 8003F2A0 0003AF00 7C 08 02 A6 */ mflr r0 /* 8003F2A4 0003AF04 90 01 01 E4 */ stw r0, 0x1e4(r1) /* 8003F2A8 0003AF08 39 61 01 E0 */ addi r11, r1, 0x1e0 -/* 8003F2AC 0003AF0C 48 18 7E 71 */ bl func_801C711C +/* 8003F2AC 0003AF0C 48 18 7E 71 */ bl _savegpr_24 /* 8003F2B0 0003AF10 3D 20 80 64 */ lis r9, lbl_8063CE34@ha /* 8003F2B4 0003AF14 7C 7D 1B 78 */ mr r29, r3 /* 8003F2B8 0003AF18 39 29 CE 34 */ addi r9, r9, lbl_8063CE34@l @@ -65468,7 +65468,7 @@ lbl_8003F4F4: /* 8003F500 0003B160 38 60 00 01 */ li r3, 1 lbl_8003F504: /* 8003F504 0003B164 39 61 01 E0 */ addi r11, r1, 0x1e0 -/* 8003F508 0003B168 48 18 7C 61 */ bl func_801C7168 +/* 8003F508 0003B168 48 18 7C 61 */ bl _restgpr_24 /* 8003F50C 0003B16C 80 01 01 E4 */ lwz r0, 0x1e4(r1) /* 8003F510 0003B170 7C 08 03 A6 */ mtlr r0 /* 8003F514 0003B174 38 21 01 E0 */ addi r1, r1, 0x1e0 @@ -65545,7 +65545,7 @@ func_8003F604: /* 8003F608 0003B268 7C 08 02 A6 */ mflr r0 /* 8003F60C 0003B26C 90 01 00 34 */ stw r0, 0x34(r1) /* 8003F610 0003B270 39 61 00 30 */ addi r11, r1, 0x30 -/* 8003F614 0003B274 48 18 7B 09 */ bl func_801C711C +/* 8003F614 0003B274 48 18 7B 09 */ bl _savegpr_24 /* 8003F618 0003B278 3C A0 80 64 */ lis r5, lbl_8063CE34@ha /* 8003F61C 0003B27C 7C 99 23 78 */ mr r25, r4 /* 8003F620 0003B280 80 83 00 04 */ lwz r4, 4(r3) @@ -65600,7 +65600,7 @@ lbl_8003F6C0: /* 8003F6D8 0003B338 7F 63 DB 78 */ mr r3, r27 lbl_8003F6DC: /* 8003F6DC 0003B33C 39 61 00 30 */ addi r11, r1, 0x30 -/* 8003F6E0 0003B340 48 18 7A 89 */ bl func_801C7168 +/* 8003F6E0 0003B340 48 18 7A 89 */ bl _restgpr_24 /* 8003F6E4 0003B344 80 01 00 34 */ lwz r0, 0x34(r1) /* 8003F6E8 0003B348 7C 08 03 A6 */ mtlr r0 /* 8003F6EC 0003B34C 38 21 00 30 */ addi r1, r1, 0x30 @@ -69996,7 +69996,7 @@ func_80043310: /* 80043344 0003EFA4 DB 41 00 40 */ stfd f26, 0x40(r1) /* 80043348 0003EFA8 F3 41 00 48 */ psq_st f26, 72(r1), 0, qr0 /* 8004334C 0003EFAC 39 61 00 40 */ addi r11, r1, 0x40 -/* 80043350 0003EFB0 48 18 3D CD */ bl func_801C711C +/* 80043350 0003EFB0 48 18 3D CD */ bl _savegpr_24 /* 80043354 0003EFB4 C0 02 83 50 */ lfs f0, lbl_80640950-_SDA2_BASE_(r2) /* 80043358 0003EFB8 FF E0 10 90 */ fmr f31, f2 /* 8004335C 0003EFBC 7C 7F 1B 78 */ mr r31, r3 @@ -70183,7 +70183,7 @@ lbl_800435D4: /* 8004361C 0003F27C E3 41 00 48 */ psq_l f26, 72(r1), 0, qr0 /* 80043620 0003F280 CB 41 00 40 */ lfd f26, 0x40(r1) /* 80043624 0003F284 39 61 00 40 */ addi r11, r1, 0x40 -/* 80043628 0003F288 48 18 3B 41 */ bl func_801C7168 +/* 80043628 0003F288 48 18 3B 41 */ bl _restgpr_24 /* 8004362C 0003F28C 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 80043630 0003F290 7C 08 03 A6 */ mtlr r0 /* 80043634 0003F294 38 21 00 A0 */ addi r1, r1, 0xa0 @@ -72240,7 +72240,7 @@ func_800452F8: /* 800452FC 00040F5C 7C 08 02 A6 */ mflr r0 /* 80045300 00040F60 90 01 00 34 */ stw r0, 0x34(r1) /* 80045304 00040F64 39 61 00 30 */ addi r11, r1, 0x30 -/* 80045308 00040F68 48 18 1E 15 */ bl func_801C711C +/* 80045308 00040F68 48 18 1E 15 */ bl _savegpr_24 /* 8004530C 00040F6C 54 80 10 3A */ slwi r0, r4, 2 /* 80045310 00040F70 7C 78 1B 78 */ mr r24, r3 /* 80045314 00040F74 7F E3 02 14 */ add r31, r3, r0 @@ -72273,7 +72273,7 @@ lbl_80045370: /* 8004537C 00040FDC 38 00 00 01 */ li r0, 1 /* 80045380 00040FE0 39 61 00 30 */ addi r11, r1, 0x30 /* 80045384 00040FE4 98 18 00 3F */ stb r0, 0x3f(r24) -/* 80045388 00040FE8 48 18 1D E1 */ bl func_801C7168 +/* 80045388 00040FE8 48 18 1D E1 */ bl _restgpr_24 /* 8004538C 00040FEC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80045390 00040FF0 7C 08 03 A6 */ mtlr r0 /* 80045394 00040FF4 38 21 00 30 */ addi r1, r1, 0x30 @@ -72667,7 +72667,7 @@ func_80045890: /* 80045894 000414F4 7C 08 02 A6 */ mflr r0 /* 80045898 000414F8 90 01 00 34 */ stw r0, 0x34(r1) /* 8004589C 000414FC 39 61 00 30 */ addi r11, r1, 0x30 -/* 800458A0 00041500 48 18 18 7D */ bl func_801C711C +/* 800458A0 00041500 48 18 18 7D */ bl _savegpr_24 /* 800458A4 00041504 7C 78 1B 78 */ mr r24, r3 /* 800458A8 00041508 7C 99 23 78 */ mr r25, r4 /* 800458AC 0004150C 7C BA 2B 78 */ mr r26, r5 @@ -72713,7 +72713,7 @@ lbl_80045920: /* 80045940 000415A0 4B FF 13 AD */ bl func_80036CEC lbl_80045944: /* 80045944 000415A4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80045948 000415A8 48 18 18 21 */ bl func_801C7168 +/* 80045948 000415A8 48 18 18 21 */ bl _restgpr_24 /* 8004594C 000415AC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80045950 000415B0 7C 08 03 A6 */ mtlr r0 /* 80045954 000415B4 38 21 00 30 */ addi r1, r1, 0x30 @@ -75333,7 +75333,7 @@ func_80047C4C: /* 80047C60 000438C0 DB C1 00 30 */ stfd f30, 0x30(r1) /* 80047C64 000438C4 F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 /* 80047C68 000438C8 39 61 00 30 */ addi r11, r1, 0x30 -/* 80047C6C 000438CC 48 17 F4 B1 */ bl func_801C711C +/* 80047C6C 000438CC 48 17 F4 B1 */ bl _savegpr_24 /* 80047C70 000438D0 FF C0 08 90 */ fmr f30, f1 /* 80047C74 000438D4 7C 78 1B 78 */ mr r24, r3 /* 80047C78 000438D8 7C 99 23 78 */ mr r25, r4 @@ -75504,7 +75504,7 @@ lbl_80047EB4: /* 80047EC4 00043B24 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 /* 80047EC8 00043B28 39 61 00 30 */ addi r11, r1, 0x30 /* 80047ECC 00043B2C CB C1 00 30 */ lfd f30, 0x30(r1) -/* 80047ED0 00043B30 48 17 F2 99 */ bl func_801C7168 +/* 80047ED0 00043B30 48 17 F2 99 */ bl _restgpr_24 /* 80047ED4 00043B34 80 01 00 54 */ lwz r0, 0x54(r1) /* 80047ED8 00043B38 7C 08 03 A6 */ mtlr r0 /* 80047EDC 00043B3C 38 21 00 50 */ addi r1, r1, 0x50 @@ -77037,7 +77037,7 @@ func_80049338: /* 8004933C 00044F9C 7C 08 02 A6 */ mflr r0 /* 80049340 00044FA0 90 01 00 34 */ stw r0, 0x34(r1) /* 80049344 00044FA4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80049348 00044FA8 48 17 DD D5 */ bl func_801C711C +/* 80049348 00044FA8 48 17 DD D5 */ bl _savegpr_24 /* 8004934C 00044FAC 7C 7C 1B 78 */ mr r28, r3 /* 80049350 00044FB0 7C 83 23 78 */ mr r3, r4 /* 80049354 00044FB4 A3 5C 00 DE */ lhz r26, 0xde(r28) @@ -77128,7 +77128,7 @@ lbl_80049460: /* 8004946C 000450CC 38 60 00 00 */ li r3, 0 lbl_80049470: /* 80049470 000450D0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80049474 000450D4 48 17 DC F5 */ bl func_801C7168 +/* 80049474 000450D4 48 17 DC F5 */ bl _restgpr_24 /* 80049478 000450D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8004947C 000450DC 7C 08 03 A6 */ mtlr r0 /* 80049480 000450E0 38 21 00 30 */ addi r1, r1, 0x30 @@ -98721,7 +98721,7 @@ func_8005C2F4: /* 8005C318 00057F78 DB 81 00 30 */ stfd f28, 0x30(r1) /* 8005C31C 00057F7C F3 81 00 38 */ psq_st f28, 56(r1), 0, qr0 /* 8005C320 00057F80 39 61 00 30 */ addi r11, r1, 0x30 -/* 8005C324 00057F84 48 16 AD F9 */ bl func_801C711C +/* 8005C324 00057F84 48 16 AD F9 */ bl _savegpr_24 /* 8005C328 00057F88 2C 04 00 00 */ cmpwi r4, 0 /* 8005C32C 00057F8C 7C 7E 1B 78 */ mr r30, r3 /* 8005C330 00057F90 7C 98 23 78 */ mr r24, r4 @@ -98886,7 +98886,7 @@ lbl_8005C558: /* 8005C570 000581D0 E3 81 00 38 */ psq_l f28, 56(r1), 0, qr0 /* 8005C574 000581D4 39 61 00 30 */ addi r11, r1, 0x30 /* 8005C578 000581D8 CB 81 00 30 */ lfd f28, 0x30(r1) -/* 8005C57C 000581DC 48 16 AB ED */ bl func_801C7168 +/* 8005C57C 000581DC 48 16 AB ED */ bl _restgpr_24 /* 8005C580 000581E0 80 01 00 74 */ lwz r0, 0x74(r1) /* 8005C584 000581E4 7C 08 03 A6 */ mtlr r0 /* 8005C588 000581E8 38 21 00 70 */ addi r1, r1, 0x70 @@ -99299,7 +99299,7 @@ func_8005CB24: /* 8005CB28 00058788 7C 08 02 A6 */ mflr r0 /* 8005CB2C 0005878C 90 01 00 34 */ stw r0, 0x34(r1) /* 8005CB30 00058790 39 61 00 30 */ addi r11, r1, 0x30 -/* 8005CB34 00058794 48 16 A5 E9 */ bl func_801C711C +/* 8005CB34 00058794 48 16 A5 E9 */ bl _savegpr_24 /* 8005CB38 00058798 7C 78 1B 78 */ mr r24, r3 /* 8005CB3C 0005879C 7C 99 23 78 */ mr r25, r4 /* 8005CB40 000587A0 7C BA 2B 78 */ mr r26, r5 @@ -99405,7 +99405,7 @@ lbl_8005CC84: /* 8005CCB8 00058918 4B FF EC A5 */ bl func_8005B95C lbl_8005CCBC: /* 8005CCBC 0005891C 39 61 00 30 */ addi r11, r1, 0x30 -/* 8005CCC0 00058920 48 16 A4 A9 */ bl func_801C7168 +/* 8005CCC0 00058920 48 16 A4 A9 */ bl _restgpr_24 /* 8005CCC4 00058924 80 01 00 34 */ lwz r0, 0x34(r1) /* 8005CCC8 00058928 7C 08 03 A6 */ mtlr r0 /* 8005CCCC 0005892C 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/asm/text_10.s b/asm/text_10.s index e99a6b9..c35765c 100644 --- a/asm/text_10.s +++ b/asm/text_10.s @@ -153,7 +153,7 @@ func_80328D70: /* 80328D74 003249D4 7C 08 02 A6 */ mflr r0 /* 80328D78 003249D8 90 01 01 44 */ stw r0, 0x144(r1) /* 80328D7C 003249DC 39 61 01 40 */ addi r11, r1, 0x140 -/* 80328D80 003249E0 4B E9 E3 9D */ bl func_801C711C +/* 80328D80 003249E0 4B E9 E3 9D */ bl _savegpr_24 /* 80328D84 003249E4 81 2D B0 68 */ lwz r9, lbl_80640328-_SDA_BASE_(r13) /* 80328D88 003249E8 3F E0 80 44 */ lis r31, lbl_80447FE0@ha /* 80328D8C 003249EC 7C 78 1B 78 */ mr r24, r3 @@ -1960,7 +1960,7 @@ lbl_8032A78C: /* 8032A78C 003263EC 38 60 00 01 */ li r3, 1 lbl_8032A790: /* 8032A790 003263F0 39 61 01 40 */ addi r11, r1, 0x140 -/* 8032A794 003263F4 4B E9 C9 D5 */ bl func_801C7168 +/* 8032A794 003263F4 4B E9 C9 D5 */ bl _restgpr_24 /* 8032A798 003263F8 80 01 01 44 */ lwz r0, 0x144(r1) /* 8032A79C 003263FC 7C 08 03 A6 */ mtlr r0 /* 8032A7A0 00326400 38 21 01 40 */ addi r1, r1, 0x140 @@ -7689,7 +7689,7 @@ func_8032F848: /* 8032F84C 0032B4AC 7C 08 02 A6 */ mflr r0 /* 8032F850 0032B4B0 90 01 00 34 */ stw r0, 0x34(r1) /* 8032F854 0032B4B4 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032F858 0032B4B8 4B E9 78 C5 */ bl func_801C711C +/* 8032F858 0032B4B8 4B E9 78 C5 */ bl _savegpr_24 /* 8032F85C 0032B4BC 7C 7C 1B 78 */ mr r28, r3 /* 8032F860 0032B4C0 3B E0 00 00 */ li r31, 0 /* 8032F864 0032B4C4 3B C0 00 00 */ li r30, 0 @@ -7815,7 +7815,7 @@ lbl_8032FA14: /* 8032FA14 0032B674 38 60 00 01 */ li r3, 1 lbl_8032FA18: /* 8032FA18 0032B678 39 61 00 30 */ addi r11, r1, 0x30 -/* 8032FA1C 0032B67C 4B E9 77 4D */ bl func_801C7168 +/* 8032FA1C 0032B67C 4B E9 77 4D */ bl _restgpr_24 /* 8032FA20 0032B680 80 01 00 34 */ lwz r0, 0x34(r1) /* 8032FA24 0032B684 7C 08 03 A6 */ mtlr r0 /* 8032FA28 0032B688 38 21 00 30 */ addi r1, r1, 0x30 @@ -9016,7 +9016,7 @@ func_80330B0C: /* 80330B10 0032C770 7C 08 02 A6 */ mflr r0 /* 80330B14 0032C774 90 01 00 34 */ stw r0, 0x34(r1) /* 80330B18 0032C778 39 61 00 30 */ addi r11, r1, 0x30 -/* 80330B1C 0032C77C 4B E9 66 01 */ bl func_801C711C +/* 80330B1C 0032C77C 4B E9 66 01 */ bl _savegpr_24 /* 80330B20 0032C780 1F 04 00 38 */ mulli r24, r4, 0x38 /* 80330B24 0032C784 80 0D B0 70 */ lwz r0, lbl_80640330-_SDA_BASE_(r13) /* 80330B28 0032C788 3F 40 80 45 */ lis r26, lbl_804498B8@ha @@ -9182,7 +9182,7 @@ lbl_80330D6C: /* 80330D6C 0032C9CC 38 60 00 01 */ li r3, 1 lbl_80330D70: /* 80330D70 0032C9D0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80330D74 0032C9D4 4B E9 63 F5 */ bl func_801C7168 +/* 80330D74 0032C9D4 4B E9 63 F5 */ bl _restgpr_24 /* 80330D78 0032C9D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80330D7C 0032C9DC 7C 08 03 A6 */ mtlr r0 /* 80330D80 0032C9E0 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/asm/text_10_2.s b/asm/text_10_2.s index fb0c052..8686b10 100644 --- a/asm/text_10_2.s +++ b/asm/text_10_2.s @@ -1775,8 +1775,8 @@ gsimalloc: /* 8033931C 00334F7C 7D 89 03 A6 */ mtctr r12
/* 80339320 00334F80 4E 80 04 20 */ bctr
-.global func_80339324
-func_80339324:
+.global gsirealloc
+gsirealloc:
/* 80339324 00334F84 3C A0 80 61 */ lis r5, lbl_80610928@ha
/* 80339328 00334F88 38 A5 09 28 */ addi r5, r5, lbl_80610928@l
/* 8033932C 00334F8C 81 85 00 08 */ lwz r12, 8(r5)
@@ -4852,7 +4852,7 @@ lbl_8033BE20: /* 8033BE30 00337A90 38 61 02 14 */ addi r3, r1, 0x214
/* 8033BE34 00337A94 38 81 02 18 */ addi r4, r1, 0x218
/* 8033BE38 00337A98 54 05 10 3A */ slwi r5, r0, 2
-/* 8033BE3C 00337A9C 4B E8 E4 39 */ bl func_801CA274
+/* 8033BE3C 00337A9C 4B E8 E4 39 */ bl memmove
/* 8033BE40 00337AA0 80 01 02 10 */ lwz r0, 0x210(r1)
/* 8033BE44 00337AA4 54 00 10 3A */ slwi r0, r0, 2
/* 8033BE48 00337AA8 7F 38 01 2E */ stwx r25, r24, r0
@@ -7265,7 +7265,7 @@ lbl_8033DFB0: /* 8033DFB8 00339C18 90 7D 02 0C */ stw r3, 0x20c(r29)
/* 8033DFBC 00339C1C 38 83 00 01 */ addi r4, r3, 1
/* 8033DFC0 00339C20 80 7D 02 08 */ lwz r3, 0x208(r29)
-/* 8033DFC4 00339C24 4B FF B3 61 */ bl func_80339324
+/* 8033DFC4 00339C24 4B FF B3 61 */ bl gsirealloc
/* 8033DFC8 00339C28 2C 03 00 00 */ cmpwi r3, 0
/* 8033DFCC 00339C2C 40 82 00 18 */ bne lbl_8033DFE4
/* 8033DFD0 00339C30 7F 83 E3 78 */ mr r3, r28
@@ -7289,7 +7289,7 @@ lbl_8033DFE8: /* 8033E010 00339C70 90 7D 02 00 */ stw r3, 0x200(r29)
/* 8033E014 00339C74 38 A3 00 01 */ addi r5, r3, 1
/* 8033E018 00339C78 80 7D 01 F8 */ lwz r3, 0x1f8(r29)
-/* 8033E01C 00339C7C 4B E8 C2 59 */ bl func_801CA274
+/* 8033E01C 00339C7C 4B E8 C2 59 */ bl memmove
/* 8033E020 00339C80 83 7D 02 08 */ lwz r27, 0x208(r29)
/* 8033E024 00339C84 38 8D 8F 54 */ addi r4, r13, lbl_8063E214-_SDA_BASE_
/* 8033E028 00339C88 7F 63 DB 78 */ mr r3, r27
@@ -7525,7 +7525,7 @@ func_8033E350: /* 8033E354 00339FB4 7C 08 02 A6 */ mflr r0
/* 8033E358 00339FB8 90 01 11 B4 */ stw r0, 0x11b4(r1)
/* 8033E35C 00339FBC 39 61 11 B0 */ addi r11, r1, 0x11b0
-/* 8033E360 00339FC0 4B E8 8D BD */ bl func_801C711C
+/* 8033E360 00339FC0 4B E8 8D BD */ bl _savegpr_24
/* 8033E364 00339FC4 7C 9B 23 78 */ mr r27, r4
/* 8033E368 00339FC8 3F C0 80 45 */ lis r30, lbl_8044A700@ha
/* 8033E36C 00339FCC 83 83 00 00 */ lwz r28, 0(r3)
@@ -8242,7 +8242,7 @@ lbl_8033EDC0: /* 8033EDC0 0033AA20 38 60 00 00 */ li r3, 0
lbl_8033EDC4:
/* 8033EDC4 0033AA24 39 61 11 B0 */ addi r11, r1, 0x11b0
-/* 8033EDC8 0033AA28 4B E8 83 A1 */ bl func_801C7168
+/* 8033EDC8 0033AA28 4B E8 83 A1 */ bl _restgpr_24
/* 8033EDCC 0033AA2C 80 01 11 B4 */ lwz r0, 0x11b4(r1)
/* 8033EDD0 0033AA30 7C 08 03 A6 */ mtlr r0
/* 8033EDD4 0033AA34 38 21 11 B0 */ addi r1, r1, 0x11b0
@@ -8634,7 +8634,7 @@ func_8033F31C: /* 8033F350 0033AFB0 38 9E 40 01 */ addi r4, r30, 0x4001
/* 8033F354 0033AFB4 7C C3 33 78 */ mr r3, r6
/* 8033F358 0033AFB8 3B DE 40 00 */ addi r30, r30, 0x4000
-/* 8033F35C 0033AFBC 4B FF 9F C9 */ bl func_80339324
+/* 8033F35C 0033AFBC 4B FF 9F C9 */ bl gsirealloc
/* 8033F360 0033AFC0 2C 03 00 00 */ cmpwi r3, 0
/* 8033F364 0033AFC4 7C 66 1B 78 */ mr r6, r3
/* 8033F368 0033AFC8 40 82 00 1C */ bne lbl_8033F384
@@ -8693,7 +8693,7 @@ lbl_8033F420: /* 8033F420 0033B080 7F DE 02 14 */ add r30, r30, r0
/* 8033F424 0033B084 7F A3 EB 78 */ mr r3, r29
/* 8033F428 0033B088 38 9E 00 01 */ addi r4, r30, 1
-/* 8033F42C 0033B08C 4B FF 9E F9 */ bl func_80339324
+/* 8033F42C 0033B08C 4B FF 9E F9 */ bl gsirealloc
/* 8033F430 0033B090 2C 03 00 00 */ cmpwi r3, 0
/* 8033F434 0033B094 7C 7D 1B 78 */ mr r29, r3
/* 8033F438 0033B098 40 82 00 1C */ bne lbl_8033F454
@@ -9022,7 +9022,7 @@ lbl_8033F898: /* 8033F8A4 0033B504 7C 9A 23 78 */ mr r26, r4
/* 8033F8A8 0033B508 7F 83 E3 78 */ mr r3, r28
/* 8033F8AC 0033B50C 38 84 00 01 */ addi r4, r4, 1
-/* 8033F8B0 0033B510 4B FF 9A 75 */ bl func_80339324
+/* 8033F8B0 0033B510 4B FF 9A 75 */ bl gsirealloc
/* 8033F8B4 0033B514 2C 03 00 00 */ cmpwi r3, 0
/* 8033F8B8 0033B518 7C 7C 1B 78 */ mr r28, r3
/* 8033F8BC 0033B51C 40 82 00 1C */ bne lbl_8033F8D8
@@ -9139,7 +9139,7 @@ lbl_8033FA34: /* 8033FA44 0033B6A4 7F A3 EB 78 */ mr r3, r29
/* 8033FA48 0033B6A8 7C 9D FA 14 */ add r4, r29, r31
/* 8033FA4C 0033B6AC 38 BE 00 01 */ addi r5, r30, 1
-/* 8033FA50 0033B6B0 4B E8 A8 25 */ bl func_801CA274
+/* 8033FA50 0033B6B0 4B E8 A8 25 */ bl memmove
/* 8033FA54 0033B6B4 7F 7F D8 50 */ subf r27, r31, r27
/* 8033FA58 0033B6B8 48 00 00 08 */ b lbl_8033FA60
lbl_8033FA5C:
@@ -9281,7 +9281,7 @@ lbl_8033FC24: /* 8033FC2C 0033B88C 90 A4 00 08 */ stw r5, 8(r4)
/* 8033FC30 0033B890 41 82 00 0C */ beq lbl_8033FC3C
/* 8033FC34 0033B894 7C 83 32 14 */ add r4, r3, r6
-/* 8033FC38 0033B898 4B E8 A6 3D */ bl func_801CA274
+/* 8033FC38 0033B898 4B E8 A6 3D */ bl memmove
lbl_8033FC3C:
/* 8033FC3C 0033B89C 80 9F 00 00 */ lwz r4, 0(r31)
/* 8033FC40 0033B8A0 38 A0 00 00 */ li r5, 0
@@ -14020,7 +14020,7 @@ func_80343EDC: /* 80343EE0 0033FB40 7C 08 02 A6 */ mflr r0
/* 80343EE4 0033FB44 90 01 00 34 */ stw r0, 0x34(r1)
/* 80343EE8 0033FB48 39 61 00 30 */ addi r11, r1, 0x30
-/* 80343EEC 0033FB4C 4B E8 32 31 */ bl func_801C711C
+/* 80343EEC 0033FB4C 4B E8 32 31 */ bl _savegpr_24
/* 80343EF0 0033FB50 83 E3 00 00 */ lwz r31, 0(r3)
/* 80343EF4 0033FB54 7C 78 1B 78 */ mr r24, r3
/* 80343EF8 0033FB58 7C 99 23 78 */ mr r25, r4
@@ -14071,7 +14071,7 @@ lbl_80343F80: /* 80343FA0 0033FC00 38 60 00 00 */ li r3, 0
lbl_80343FA4:
/* 80343FA4 0033FC04 39 61 00 30 */ addi r11, r1, 0x30
-/* 80343FA8 0033FC08 4B E8 31 C1 */ bl func_801C7168
+/* 80343FA8 0033FC08 4B E8 31 C1 */ bl _restgpr_24
/* 80343FAC 0033FC0C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80343FB0 0033FC10 7C 08 03 A6 */ mtlr r0
/* 80343FB4 0033FC14 38 21 00 30 */ addi r1, r1, 0x30
@@ -17198,7 +17198,7 @@ lbl_80346B70: /* 80346B8C 003427EC 38 04 00 01 */ addi r0, r4, 1
/* 80346B90 003427F0 1C 80 00 AC */ mulli r4, r0, 0xac
/* 80346B94 003427F4 90 01 00 A4 */ stw r0, 0xa4(r1)
-/* 80346B98 003427F8 4B FF 27 8D */ bl func_80339324
+/* 80346B98 003427F8 4B FF 27 8D */ bl gsirealloc
/* 80346B9C 003427FC 2C 03 00 00 */ cmpwi r3, 0
/* 80346BA0 00342800 90 61 00 AC */ stw r3, 0xac(r1)
/* 80346BA4 00342804 40 82 00 18 */ bne lbl_80346BBC
@@ -17506,7 +17506,7 @@ lbl_80346FDC: /* 80346FF4 00342C54 80 74 00 3C */ lwz r3, 0x3c(r20)
/* 80346FF8 00342C58 38 04 00 01 */ addi r0, r4, 1
/* 80346FFC 00342C5C 54 04 10 3A */ slwi r4, r0, 2
-/* 80347000 00342C60 4B FF 23 25 */ bl func_80339324
+/* 80347000 00342C60 4B FF 23 25 */ bl gsirealloc
/* 80347004 00342C64 2C 03 00 00 */ cmpwi r3, 0
/* 80347008 00342C68 40 82 00 18 */ bne lbl_80347020
/* 8034700C 00342C6C 7F A3 EB 78 */ mr r3, r29
@@ -17552,7 +17552,7 @@ lbl_80347084: /* 803470A0 00342D00 40 81 00 D0 */ ble lbl_80347170
/* 803470A4 00342D04 80 74 00 40 */ lwz r3, 0x40(r20)
/* 803470A8 00342D08 54 04 10 3A */ slwi r4, r0, 2
-/* 803470AC 00342D0C 4B FF 22 79 */ bl func_80339324
+/* 803470AC 00342D0C 4B FF 22 79 */ bl gsirealloc
/* 803470B0 00342D10 2C 03 00 00 */ cmpwi r3, 0
/* 803470B4 00342D14 40 82 00 18 */ bne lbl_803470CC
/* 803470B8 00342D18 7F A3 EB 78 */ mr r3, r29
@@ -17676,7 +17676,7 @@ lbl_8034724C: /* 80347268 00342EC8 90 14 00 08 */ stw r0, 8(r20)
/* 8034726C 00342ECC 1C 80 01 28 */ mulli r4, r0, 0x128
/* 80347270 00342ED0 80 74 00 0C */ lwz r3, 0xc(r20)
-/* 80347274 00342ED4 4B FF 20 B1 */ bl func_80339324
+/* 80347274 00342ED4 4B FF 20 B1 */ bl gsirealloc
/* 80347278 00342ED8 2C 03 00 00 */ cmpwi r3, 0
/* 8034727C 00342EDC 90 74 00 0C */ stw r3, 0xc(r20)
/* 80347280 00342EE0 40 82 00 18 */ bne lbl_80347298
@@ -18049,7 +18049,7 @@ lbl_803477A4: /* 803477BC 0034341C 80 74 00 08 */ lwz r3, 8(r20)
/* 803477C0 00343420 38 04 00 01 */ addi r0, r4, 1
/* 803477C4 00343424 1C 80 00 AC */ mulli r4, r0, 0xac
-/* 803477C8 00343428 4B FF 1B 5D */ bl func_80339324
+/* 803477C8 00343428 4B FF 1B 5D */ bl gsirealloc
/* 803477CC 0034342C 2C 03 00 00 */ cmpwi r3, 0
/* 803477D0 00343430 40 82 00 18 */ bne lbl_803477E8
/* 803477D4 00343434 7F A3 EB 78 */ mr r3, r29
@@ -19402,7 +19402,7 @@ lbl_80348A5C: /* 80348A68 003446C8 7C 04 00 50 */ subf r0, r4, r0
/* 80348A6C 003446CC 7C 83 2A 14 */ add r4, r3, r5
/* 80348A70 003446D0 7C A5 00 50 */ subf r5, r5, r0
-/* 80348A74 003446D4 4B E8 18 01 */ bl func_801CA274
+/* 80348A74 003446D4 4B E8 18 01 */ bl memmove
/* 80348A78 003446D8 80 1E 00 08 */ lwz r0, 8(r30)
/* 80348A7C 003446DC 7C 1F 00 50 */ subf r0, r31, r0
/* 80348A80 003446E0 90 1E 00 08 */ stw r0, 8(r30)
@@ -22016,7 +22016,7 @@ func_8034AD44: /* 8034AD48 003469A8 7C 08 02 A6 */ mflr r0
/* 8034AD4C 003469AC 90 01 00 44 */ stw r0, 0x44(r1)
/* 8034AD50 003469B0 39 61 00 40 */ addi r11, r1, 0x40
-/* 8034AD54 003469B4 4B E7 C3 C9 */ bl func_801C711C
+/* 8034AD54 003469B4 4B E7 C3 C9 */ bl _savegpr_24
/* 8034AD58 003469B8 7C 7E 1B 78 */ mr r30, r3
/* 8034AD5C 003469BC 80 63 00 5C */ lwz r3, 0x5c(r3)
/* 8034AD60 003469C0 7C 98 23 78 */ mr r24, r4
@@ -22123,7 +22123,7 @@ lbl_8034AECC: /* 8034AED4 00346B34 90 1F 00 00 */ stw r0, 0(r31)
lbl_8034AED8:
/* 8034AED8 00346B38 39 61 00 40 */ addi r11, r1, 0x40
-/* 8034AEDC 00346B3C 4B E7 C2 8D */ bl func_801C7168
+/* 8034AEDC 00346B3C 4B E7 C2 8D */ bl _restgpr_24
/* 8034AEE0 00346B40 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8034AEE4 00346B44 7C 08 03 A6 */ mtlr r0
/* 8034AEE8 00346B48 38 21 00 40 */ addi r1, r1, 0x40
@@ -22794,7 +22794,7 @@ func_8034B7F0: /* 8034B7F4 00347454 7C 08 02 A6 */ mflr r0
/* 8034B7F8 00347458 90 01 00 54 */ stw r0, 0x54(r1)
/* 8034B7FC 0034745C 39 61 00 50 */ addi r11, r1, 0x50
-/* 8034B800 00347460 4B E7 B9 1D */ bl func_801C711C
+/* 8034B800 00347460 4B E7 B9 1D */ bl _savegpr_24
/* 8034B804 00347464 80 03 00 44 */ lwz r0, 0x44(r3)
/* 8034B808 00347468 7C DD 33 78 */ mr r29, r6
/* 8034B80C 0034746C 7C FE 3B 78 */ mr r30, r7
@@ -23089,7 +23089,7 @@ lbl_8034BC18: /* 8034BC30 00347890 54 03 0F FE */ srwi r3, r0, 0x1f
lbl_8034BC34:
/* 8034BC34 00347894 39 61 00 50 */ addi r11, r1, 0x50
-/* 8034BC38 00347898 4B E7 B5 31 */ bl func_801C7168
+/* 8034BC38 00347898 4B E7 B5 31 */ bl _restgpr_24
/* 8034BC3C 0034789C 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8034BC40 003478A0 7C 08 03 A6 */ mtlr r0
/* 8034BC44 003478A4 38 21 00 50 */ addi r1, r1, 0x50
@@ -23342,7 +23342,7 @@ func_8034BF94: /* 8034BF98 00347BF8 7C 08 02 A6 */ mflr r0
/* 8034BF9C 00347BFC 90 01 00 44 */ stw r0, 0x44(r1)
/* 8034BFA0 00347C00 39 61 00 40 */ addi r11, r1, 0x40
-/* 8034BFA4 00347C04 4B E7 B1 79 */ bl func_801C711C
+/* 8034BFA4 00347C04 4B E7 B1 79 */ bl _savegpr_24
/* 8034BFA8 00347C08 7C 7F 1B 78 */ mr r31, r3
/* 8034BFAC 00347C0C 3B C0 00 01 */ li r30, 1
/* 8034BFB0 00347C10 3B 40 00 08 */ li r26, 8
@@ -23487,7 +23487,7 @@ lbl_8034C198: /* 8034C1A8 00347E08 38 60 00 01 */ li r3, 1
lbl_8034C1AC:
/* 8034C1AC 00347E0C 39 61 00 40 */ addi r11, r1, 0x40
-/* 8034C1B0 00347E10 4B E7 AF B9 */ bl func_801C7168
+/* 8034C1B0 00347E10 4B E7 AF B9 */ bl _restgpr_24
/* 8034C1B4 00347E14 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8034C1B8 00347E18 7C 08 03 A6 */ mtlr r0
/* 8034C1BC 00347E1C 38 21 00 40 */ addi r1, r1, 0x40
@@ -28546,7 +28546,7 @@ lbl_8035082C: /* 80350830 0034C490 80 63 00 04 */ lwz r3, 4(r3)
/* 80350834 0034C494 7F E0 22 14 */ add r31, r0, r4
/* 80350838 0034C498 7F E4 FB 78 */ mr r4, r31
-/* 8035083C 0034C49C 4B FE 8A E9 */ bl func_80339324
+/* 8035083C 0034C49C 4B FE 8A E9 */ bl gsirealloc
/* 80350840 0034C4A0 2C 03 00 00 */ cmpwi r3, 0
/* 80350844 0034C4A4 40 82 00 0C */ bne lbl_80350850
/* 80350848 0034C4A8 38 60 00 00 */ li r3, 0
@@ -28612,7 +28612,7 @@ lbl_80350904: lbl_80350910:
/* 80350910 0034C570 7F E4 FB 78 */ mr r4, r31
/* 80350914 0034C574 38 60 00 00 */ li r3, 0
-/* 80350918 0034C578 4B FE 8A 0D */ bl func_80339324
+/* 80350918 0034C578 4B FE 8A 0D */ bl gsirealloc
/* 8035091C 0034C57C 2C 03 00 00 */ cmpwi r3, 0
/* 80350920 0034C580 40 82 00 0C */ bne lbl_8035092C
/* 80350924 0034C584 38 00 00 00 */ li r0, 0
@@ -28807,7 +28807,7 @@ lbl_80350B8C: /* 80350B8C 0034C7EC 7F C3 02 14 */ add r30, r3, r0
/* 80350B90 0034C7F0 80 7F 00 04 */ lwz r3, 4(r31)
/* 80350B94 0034C7F4 7F C4 F3 78 */ mr r4, r30
-/* 80350B98 0034C7F8 4B FE 87 8D */ bl func_80339324
+/* 80350B98 0034C7F8 4B FE 87 8D */ bl gsirealloc
/* 80350B9C 0034C7FC 2C 03 00 00 */ cmpwi r3, 0
/* 80350BA0 0034C800 40 82 00 0C */ bne lbl_80350BAC
/* 80350BA4 0034C804 38 00 00 00 */ li r0, 0
@@ -28945,7 +28945,7 @@ lbl_80350D64: /* 80350D68 0034C9C8 80 7C 00 04 */ lwz r3, 4(r28)
/* 80350D6C 0034C9CC 7F 60 22 14 */ add r27, r0, r4
/* 80350D70 0034C9D0 7F 64 DB 78 */ mr r4, r27
-/* 80350D74 0034C9D4 4B FE 85 B1 */ bl func_80339324
+/* 80350D74 0034C9D4 4B FE 85 B1 */ bl gsirealloc
/* 80350D78 0034C9D8 2C 03 00 00 */ cmpwi r3, 0
/* 80350D7C 0034C9DC 40 82 00 0C */ bne lbl_80350D88
/* 80350D80 0034C9E0 38 00 00 00 */ li r0, 0
@@ -29089,7 +29089,7 @@ lbl_80350F50: /* 80350F50 0034CBB0 7F C5 02 14 */ add r30, r5, r0
/* 80350F54 0034CBB4 80 63 00 04 */ lwz r3, 4(r3)
/* 80350F58 0034CBB8 7F C4 F3 78 */ mr r4, r30
-/* 80350F5C 0034CBBC 4B FE 83 C9 */ bl func_80339324
+/* 80350F5C 0034CBBC 4B FE 83 C9 */ bl gsirealloc
/* 80350F60 0034CBC0 2C 03 00 00 */ cmpwi r3, 0
/* 80350F64 0034CBC4 40 82 00 0C */ bne lbl_80350F70
/* 80350F68 0034CBC8 38 00 00 00 */ li r0, 0
@@ -29454,7 +29454,7 @@ lbl_8035140C: /* 8035140C 0034D06C 80 7F 00 C4 */ lwz r3, 0xc4(r31)
/* 80351410 0034D070 7F C5 F3 78 */ mr r5, r30
/* 80351414 0034D074 7C 83 22 14 */ add r4, r3, r4
-/* 80351418 0034D078 4B E7 8E 5D */ bl func_801CA274
+/* 80351418 0034D078 4B E7 8E 5D */ bl memmove
/* 8035141C 0034D07C 38 00 00 00 */ li r0, 0
/* 80351420 0034D080 93 DF 00 CC */ stw r30, 0xcc(r31)
/* 80351424 0034D084 90 1F 00 D0 */ stw r0, 0xd0(r31)
@@ -29725,7 +29725,7 @@ lbl_803517A4: /* 803517A8 0034D408 7C C3 33 78 */ mr r3, r6
/* 803517AC 0034D40C 3B 7D 00 04 */ addi r27, r29, 4
/* 803517B0 0034D410 57 64 10 3A */ slwi r4, r27, 2
-/* 803517B4 0034D414 4B FE 7B 71 */ bl func_80339324
+/* 803517B4 0034D414 4B FE 7B 71 */ bl gsirealloc
/* 803517B8 0034D418 2C 03 00 00 */ cmpwi r3, 0
/* 803517BC 0034D41C 40 82 00 0C */ bne lbl_803517C8
/* 803517C0 0034D420 38 60 FF FF */ li r3, -1
@@ -35815,7 +35815,7 @@ lbl_80356C54: /* 80356CAC 0035290C 7C C3 33 78 */ mr r3, r6
/* 80356CB0 00352910 7F 84 E3 78 */ mr r4, r28
/* 80356CB4 00352914 38 BB 00 01 */ addi r5, r27, 1
-/* 80356CB8 00352918 4B E7 35 BD */ bl func_801CA274
+/* 80356CB8 00352918 4B E7 35 BD */ bl memmove
/* 80356CBC 0035291C 93 78 00 A8 */ stw r27, 0xa8(r24)
/* 80356CC0 00352920 48 00 00 0C */ b lbl_80356CCC
lbl_80356CC4:
@@ -37744,7 +37744,7 @@ lbl_80358614: /* 80358614 00354274 90 6D B1 18 */ stw r3, lbl_806403D8-_SDA_BASE_(r13)
/* 80358618 00354278 38 83 00 01 */ addi r4, r3, 1
/* 8035861C 0035427C 80 6D B1 14 */ lwz r3, lbl_806403D4-_SDA_BASE_(r13)
-/* 80358620 00354280 4B FE 0D 05 */ bl func_80339324
+/* 80358620 00354280 4B FE 0D 05 */ bl gsirealloc
/* 80358624 00354284 2C 03 00 00 */ cmpwi r3, 0
/* 80358628 00354288 90 6D B1 14 */ stw r3, lbl_806403D4-_SDA_BASE_(r13)
/* 8035862C 0035428C 40 82 00 0C */ bne lbl_80358638
@@ -38021,7 +38021,7 @@ lbl_80358A00: /* 80358A00 00354660 80 6D B1 14 */ lwz r3, lbl_806403D4-_SDA_BASE_(r13)
/* 80358A04 00354664 7C B4 00 50 */ subf r5, r20, r0
/* 80358A08 00354668 7C 83 A2 14 */ add r4, r3, r20
-/* 80358A0C 0035466C 4B E7 18 69 */ bl func_801CA274
+/* 80358A0C 0035466C 4B E7 18 69 */ bl memmove
/* 80358A10 00354670 80 0D B1 1C */ lwz r0, lbl_806403DC-_SDA_BASE_(r13)
/* 80358A14 00354674 7C 14 00 50 */ subf r0, r20, r0
/* 80358A18 00354678 90 0D B1 1C */ stw r0, lbl_806403DC-_SDA_BASE_(r13)
@@ -40929,7 +40929,7 @@ func_8035B22C: /* 8035B230 00356E90 7C 08 02 A6 */ mflr r0
/* 8035B234 00356E94 90 01 01 44 */ stw r0, 0x144(r1)
/* 8035B238 00356E98 39 61 01 40 */ addi r11, r1, 0x140
-/* 8035B23C 00356E9C 4B E6 BE E1 */ bl func_801C711C
+/* 8035B23C 00356E9C 4B E6 BE E1 */ bl _savegpr_24
/* 8035B240 00356EA0 80 0D B0 A8 */ lwz r0, lbl_80640368-_SDA_BASE_(r13)
/* 8035B244 00356EA4 3F 20 80 45 */ lis r25, lbl_8044C560@ha
/* 8035B248 00356EA8 7C 7A 1B 78 */ mr r26, r3
@@ -41144,7 +41144,7 @@ lbl_8035B524: /* 8035B52C 0035718C 38 60 00 00 */ li r3, 0
lbl_8035B530:
/* 8035B530 00357190 39 61 01 40 */ addi r11, r1, 0x140
-/* 8035B534 00357194 4B E6 BC 35 */ bl func_801C7168
+/* 8035B534 00357194 4B E6 BC 35 */ bl _restgpr_24
/* 8035B538 00357198 80 01 01 44 */ lwz r0, 0x144(r1)
/* 8035B53C 0035719C 7C 08 03 A6 */ mtlr r0
/* 8035B540 003571A0 38 21 01 40 */ addi r1, r1, 0x140
@@ -45626,7 +45626,7 @@ func_8035F24C: /* 8035F250 0035AEB0 7C 08 02 A6 */ mflr r0
/* 8035F254 0035AEB4 90 01 00 34 */ stw r0, 0x34(r1)
/* 8035F258 0035AEB8 39 61 00 30 */ addi r11, r1, 0x30
-/* 8035F25C 0035AEBC 4B E6 7E C1 */ bl func_801C711C
+/* 8035F25C 0035AEBC 4B E6 7E C1 */ bl _savegpr_24
/* 8035F260 0035AEC0 2C 08 00 00 */ cmpwi r8, 0
/* 8035F264 0035AEC4 7C 78 1B 78 */ mr r24, r3
/* 8035F268 0035AEC8 7C 99 23 78 */ mr r25, r4
@@ -45689,7 +45689,7 @@ lbl_8035F290: /* 8035F348 0035AFA8 4B FD 9C 89 */ bl func_80338FD0
lbl_8035F34C:
/* 8035F34C 0035AFAC 39 61 00 30 */ addi r11, r1, 0x30
-/* 8035F350 0035AFB0 4B E6 7E 19 */ bl func_801C7168
+/* 8035F350 0035AFB0 4B E6 7E 19 */ bl _restgpr_24
/* 8035F354 0035AFB4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8035F358 0035AFB8 7C 08 03 A6 */ mtlr r0
/* 8035F35C 0035AFBC 38 21 00 30 */ addi r1, r1, 0x30
@@ -47999,7 +47999,7 @@ lbl_8036136C: /* 80361370 0035CFD0 41 82 00 10 */ beq lbl_80361380
/* 80361374 0035CFD4 7F 84 E3 78 */ mr r4, r28
/* 80361378 0035CFD8 7F 65 DB 78 */ mr r5, r27
-/* 8036137C 0035CFDC 4B E6 8E F9 */ bl func_801CA274
+/* 8036137C 0035CFDC 4B E6 8E F9 */ bl memmove
lbl_80361380:
/* 80361380 0035CFE0 93 7A 00 80 */ stw r27, 0x80(r26)
/* 80361384 0035CFE4 38 60 00 00 */ li r3, 0
@@ -48286,7 +48286,7 @@ func_8036173C: /* 80361740 0035D3A0 7C 08 02 A6 */ mflr r0
/* 80361744 0035D3A4 90 01 00 84 */ stw r0, 0x84(r1)
/* 80361748 0035D3A8 39 61 00 80 */ addi r11, r1, 0x80
-/* 8036174C 0035D3AC 4B E6 59 D1 */ bl func_801C711C
+/* 8036174C 0035D3AC 4B E6 59 D1 */ bl _savegpr_24
/* 80361750 0035D3B0 2C 05 00 0B */ cmpwi r5, 0xb
/* 80361754 0035D3B4 7C 7D 1B 78 */ mr r29, r3
/* 80361758 0035D3B8 7C 9E 23 78 */ mr r30, r4
@@ -48409,7 +48409,7 @@ lbl_803618D0: /* 803618F0 0035D550 38 60 00 00 */ li r3, 0
lbl_803618F4:
/* 803618F4 0035D554 39 61 00 80 */ addi r11, r1, 0x80
-/* 803618F8 0035D558 4B E6 58 71 */ bl func_801C7168
+/* 803618F8 0035D558 4B E6 58 71 */ bl _restgpr_24
/* 803618FC 0035D55C 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80361900 0035D560 7C 08 03 A6 */ mtlr r0
/* 80361904 0035D564 38 21 00 80 */ addi r1, r1, 0x80
@@ -48421,7 +48421,7 @@ func_8036190C: /* 80361910 0035D570 7C 08 02 A6 */ mflr r0
/* 80361914 0035D574 90 01 00 44 */ stw r0, 0x44(r1)
/* 80361918 0035D578 39 61 00 40 */ addi r11, r1, 0x40
-/* 8036191C 0035D57C 4B E6 58 01 */ bl func_801C711C
+/* 8036191C 0035D57C 4B E6 58 01 */ bl _savegpr_24
/* 80361920 0035D580 2C 05 00 05 */ cmpwi r5, 5
/* 80361924 0035D584 7C 78 1B 78 */ mr r24, r3
/* 80361928 0035D588 7C 99 23 78 */ mr r25, r4
@@ -48532,7 +48532,7 @@ lbl_80361A84: /* 80361AA0 0035D700 38 60 00 00 */ li r3, 0
lbl_80361AA4:
/* 80361AA4 0035D704 39 61 00 40 */ addi r11, r1, 0x40
-/* 80361AA8 0035D708 4B E6 56 C1 */ bl func_801C7168
+/* 80361AA8 0035D708 4B E6 56 C1 */ bl _restgpr_24
/* 80361AAC 0035D70C 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80361AB0 0035D710 7C 08 03 A6 */ mtlr r0
/* 80361AB4 0035D714 38 21 00 40 */ addi r1, r1, 0x40
@@ -48708,7 +48708,7 @@ lbl_80361CEC: /* 80361D04 0035D964 2C 03 00 00 */ cmpwi r3, 0
/* 80361D08 0035D968 41 82 00 0C */ beq lbl_80361D14
/* 80361D0C 0035D96C 7C 83 22 14 */ add r4, r3, r4
-/* 80361D10 0035D970 4B E6 85 65 */ bl func_801CA274
+/* 80361D10 0035D970 4B E6 85 65 */ bl memmove
lbl_80361D14:
/* 80361D14 0035D974 2C 1F 00 00 */ cmpwi r31, 0
/* 80361D18 0035D978 40 82 00 10 */ bne lbl_80361D28
@@ -71416,7 +71416,7 @@ func_80375A48: /* 80375A9C 003716FC DA C1 00 70 */ stfd f22, 0x70(r1)
/* 80375AA0 00371700 F2 C1 00 78 */ psq_st f22, 120(r1), 0, qr0
/* 80375AA4 00371704 39 61 00 70 */ addi r11, r1, 0x70
-/* 80375AA8 00371708 4B E5 16 75 */ bl func_801C711C
+/* 80375AA8 00371708 4B E5 16 75 */ bl _savegpr_24
/* 80375AAC 0037170C 3C 00 43 30 */ lis r0, 0x4330
/* 80375AB0 00371710 3B E3 00 C0 */ addi r31, r3, 0xc0
/* 80375AB4 00371714 90 01 00 38 */ stw r0, 0x38(r1)
@@ -71711,7 +71711,7 @@ lbl_80375EB8: /* 80375F00 00371B60 E2 C1 00 78 */ psq_l f22, 120(r1), 0, qr0
/* 80375F04 00371B64 39 61 00 70 */ addi r11, r1, 0x70
/* 80375F08 00371B68 CA C1 00 70 */ lfd f22, 0x70(r1)
-/* 80375F0C 00371B6C 4B E5 12 5D */ bl func_801C7168
+/* 80375F0C 00371B6C 4B E5 12 5D */ bl _restgpr_24
/* 80375F10 00371B70 80 01 01 14 */ lwz r0, 0x114(r1)
/* 80375F14 00371B74 7C 08 03 A6 */ mtlr r0
/* 80375F18 00371B78 38 21 01 10 */ addi r1, r1, 0x110
@@ -77015,7 +77015,7 @@ lbl_8037A794: /* 8037A7B4 00376414 7C 08 02 A6 */ mflr r0
/* 8037A7B8 00376418 90 01 00 44 */ stw r0, 0x44(r1)
/* 8037A7BC 0037641C 39 61 00 40 */ addi r11, r1, 0x40
-/* 8037A7C0 00376420 4B E4 C9 5D */ bl func_801C711C
+/* 8037A7C0 00376420 4B E4 C9 5D */ bl _savegpr_24
/* 8037A7C4 00376424 81 63 00 04 */ lwz r11, 4(r3)
/* 8037A7C8 00376428 7C 78 1B 78 */ mr r24, r3
/* 8037A7CC 0037642C 7C 99 23 78 */ mr r25, r4
@@ -77076,7 +77076,7 @@ lbl_8037A880: /* 8037A890 003764F0 48 00 93 F9 */ bl func_80383C88
lbl_8037A894:
/* 8037A894 003764F4 39 61 00 40 */ addi r11, r1, 0x40
-/* 8037A898 003764F8 4B E4 C8 D1 */ bl func_801C7168
+/* 8037A898 003764F8 4B E4 C8 D1 */ bl _restgpr_24
/* 8037A89C 003764FC 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8037A8A0 00376500 7C 08 03 A6 */ mtlr r0
/* 8037A8A4 00376504 38 21 00 40 */ addi r1, r1, 0x40
@@ -80817,7 +80817,7 @@ func_8037DC4C: /* 8037DC50 003798B0 7C 08 02 A6 */ mflr r0
/* 8037DC54 003798B4 90 01 02 14 */ stw r0, 0x214(r1)
/* 8037DC58 003798B8 39 61 02 10 */ addi r11, r1, 0x210
-/* 8037DC5C 003798BC 4B E4 94 C1 */ bl func_801C711C
+/* 8037DC5C 003798BC 4B E4 94 C1 */ bl _savegpr_24
/* 8037DC60 003798C0 3F E0 80 64 */ lis r31, lbl_8063CD80@ha
/* 8037DC64 003798C4 7C 7C 1B 78 */ mr r28, r3
/* 8037DC68 003798C8 3B FF CD 80 */ addi r31, r31, lbl_8063CD80@l
@@ -80970,7 +80970,7 @@ lbl_8037DE68: /* 8037DE70 00379AD0 38 60 00 01 */ li r3, 1
lbl_8037DE74:
/* 8037DE74 00379AD4 39 61 02 10 */ addi r11, r1, 0x210
-/* 8037DE78 00379AD8 4B E4 92 F1 */ bl func_801C7168
+/* 8037DE78 00379AD8 4B E4 92 F1 */ bl _restgpr_24
/* 8037DE7C 00379ADC 80 01 02 14 */ lwz r0, 0x214(r1)
/* 8037DE80 00379AE0 7C 08 03 A6 */ mtlr r0
/* 8037DE84 00379AE4 38 21 02 10 */ addi r1, r1, 0x210
@@ -81984,7 +81984,7 @@ func_8037ECBC: /* 8037ECC0 0037A920 7C 08 02 A6 */ mflr r0
/* 8037ECC4 0037A924 90 01 00 34 */ stw r0, 0x34(r1)
/* 8037ECC8 0037A928 39 61 00 30 */ addi r11, r1, 0x30
-/* 8037ECCC 0037A92C 4B E4 84 51 */ bl func_801C711C
+/* 8037ECCC 0037A92C 4B E4 84 51 */ bl _savegpr_24
/* 8037ECD0 0037A930 88 03 00 81 */ lbz r0, 0x81(r3)
/* 8037ECD4 0037A934 7C 7E 1B 78 */ mr r30, r3
/* 8037ECD8 0037A938 7C 9F 23 78 */ mr r31, r4
@@ -82092,7 +82092,7 @@ lbl_8037EE30: /* 8037EE48 0037AAA8 98 1E 00 C5 */ stb r0, 0xc5(r30)
lbl_8037EE4C:
/* 8037EE4C 0037AAAC 39 61 00 30 */ addi r11, r1, 0x30
-/* 8037EE50 0037AAB0 4B E4 83 19 */ bl func_801C7168
+/* 8037EE50 0037AAB0 4B E4 83 19 */ bl _restgpr_24
/* 8037EE54 0037AAB4 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8037EE58 0037AAB8 7C 08 03 A6 */ mtlr r0
/* 8037EE5C 0037AABC 38 21 00 30 */ addi r1, r1, 0x30
@@ -84242,7 +84242,7 @@ func_80380BD4: /* 80380BD8 0037C838 7C 08 02 A6 */ mflr r0
/* 80380BDC 0037C83C 90 01 00 34 */ stw r0, 0x34(r1)
/* 80380BE0 0037C840 39 61 00 30 */ addi r11, r1, 0x30
-/* 80380BE4 0037C844 4B E4 65 39 */ bl func_801C711C
+/* 80380BE4 0037C844 4B E4 65 39 */ bl _savegpr_24
/* 80380BE8 0037C848 7C 78 1B 78 */ mr r24, r3
/* 80380BEC 0037C84C 4B EE DB 71 */ bl OSDisableInterrupts
/* 80380BF0 0037C850 88 18 00 AC */ lbz r0, 0xac(r24)
@@ -84291,7 +84291,7 @@ lbl_80380C5C: /* 80380C84 0037C8E4 4B EE DB 01 */ bl OSRestoreInterrupts
lbl_80380C88:
/* 80380C88 0037C8E8 39 61 00 30 */ addi r11, r1, 0x30
-/* 80380C8C 0037C8EC 4B E4 64 DD */ bl func_801C7168
+/* 80380C8C 0037C8EC 4B E4 64 DD */ bl _restgpr_24
/* 80380C90 0037C8F0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80380C94 0037C8F4 7C 08 03 A6 */ mtlr r0
/* 80380C98 0037C8F8 38 21 00 30 */ addi r1, r1, 0x30
diff --git a/asm/text_11.s b/asm/text_11.s index f514e66..f652891 100644 --- a/asm/text_11.s +++ b/asm/text_11.s @@ -2812,7 +2812,7 @@ func_803836EC: /* 803836F0 0037F350 7C 08 02 A6 */ mflr r0 /* 803836F4 0037F354 90 01 00 34 */ stw r0, 0x34(r1) /* 803836F8 0037F358 39 61 00 30 */ addi r11, r1, 0x30 -/* 803836FC 0037F35C 4B E4 3A 21 */ bl func_801C711C +/* 803836FC 0037F35C 4B E4 3A 21 */ bl _savegpr_24 /* 80383700 0037F360 81 83 00 00 */ lwz r12, 0(r3) /* 80383704 0037F364 7C 78 1B 78 */ mr r24, r3 /* 80383708 0037F368 7C 99 23 78 */ mr r25, r4 @@ -2844,7 +2844,7 @@ lbl_80383764: /* 8038376C 0037F3CC 98 18 01 D0 */ stb r0, 0x1d0(r24) lbl_80383770: /* 80383770 0037F3D0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80383774 0037F3D4 4B E4 39 F5 */ bl func_801C7168 +/* 80383774 0037F3D4 4B E4 39 F5 */ bl _restgpr_24 /* 80383778 0037F3D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8038377C 0037F3DC 7C 08 03 A6 */ mtlr r0 /* 80383780 0037F3E0 38 21 00 30 */ addi r1, r1, 0x30 @@ -5593,7 +5593,7 @@ func_80385E20: /* 80385E24 00381A84 7C 08 02 A6 */ mflr r0 /* 80385E28 00381A88 90 01 00 34 */ stw r0, 0x34(r1) /* 80385E2C 00381A8C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80385E30 00381A90 4B E4 12 ED */ bl func_801C711C +/* 80385E30 00381A90 4B E4 12 ED */ bl _savegpr_24 /* 80385E34 00381A94 3B C0 00 00 */ li r30, 0 /* 80385E38 00381A98 3C C0 80 45 */ lis r6, lbl_8044E2A0@ha /* 80385E3C 00381A9C 93 C3 00 10 */ stw r30, 0x10(r3) @@ -5655,7 +5655,7 @@ lbl_80385F04: /* 80385F0C 00381B6C 41 80 FF 8C */ blt lbl_80385E98 /* 80385F10 00381B70 39 61 00 30 */ addi r11, r1, 0x30 /* 80385F14 00381B74 7F 03 C3 78 */ mr r3, r24 -/* 80385F18 00381B78 4B E4 12 51 */ bl func_801C7168 +/* 80385F18 00381B78 4B E4 12 51 */ bl _restgpr_24 /* 80385F1C 00381B7C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80385F20 00381B80 7C 08 03 A6 */ mtlr r0 /* 80385F24 00381B84 38 21 00 30 */ addi r1, r1, 0x30 @@ -14119,7 +14119,7 @@ lbl_8038DA88: /* 8038DAA8 00389708 7C 08 02 A6 */ mflr r0 /* 8038DAAC 0038970C 90 01 00 34 */ stw r0, 0x34(r1) /* 8038DAB0 00389710 39 61 00 30 */ addi r11, r1, 0x30 -/* 8038DAB4 00389714 4B E3 96 69 */ bl func_801C711C +/* 8038DAB4 00389714 4B E3 96 69 */ bl _savegpr_24 /* 8038DAB8 00389718 A0 C4 00 0C */ lhz r6, 0xc(r4) /* 8038DABC 0038971C 38 00 00 00 */ li r0, 0 /* 8038DAC0 00389720 90 83 00 0C */ stw r4, 0xc(r3) @@ -14197,7 +14197,7 @@ lbl_8038DBBC: /* 8038DBC8 00389828 41 80 FF CC */ blt lbl_8038DB94 lbl_8038DBCC: /* 8038DBCC 0038982C 39 61 00 30 */ addi r11, r1, 0x30 -/* 8038DBD0 00389830 4B E3 95 99 */ bl func_801C7168 +/* 8038DBD0 00389830 4B E3 95 99 */ bl _restgpr_24 /* 8038DBD4 00389834 80 01 00 34 */ lwz r0, 0x34(r1) /* 8038DBD8 00389838 7C 08 03 A6 */ mtlr r0 /* 8038DBDC 0038983C 38 21 00 30 */ addi r1, r1, 0x30 @@ -49198,7 +49198,7 @@ func_803AB534: /* 803AB538 003A7198 7C 08 02 A6 */ mflr r0 /* 803AB53C 003A719C 90 01 00 54 */ stw r0, 0x54(r1) /* 803AB540 003A71A0 39 61 00 50 */ addi r11, r1, 0x50 -/* 803AB544 003A71A4 4B E1 BB D9 */ bl func_801C711C +/* 803AB544 003A71A4 4B E1 BB D9 */ bl _savegpr_24 /* 803AB548 003A71A8 7C 78 1B 78 */ mr r24, r3 /* 803AB54C 003A71AC 7C 9D 23 78 */ mr r29, r4 /* 803AB550 003A71B0 48 03 38 69 */ bl func_803DEDB8 @@ -50351,7 +50351,7 @@ lbl_803AC5D4: /* 803AC5D4 003A8234 38 60 00 00 */ li r3, 0 lbl_803AC5D8: /* 803AC5D8 003A8238 39 61 00 50 */ addi r11, r1, 0x50 -/* 803AC5DC 003A823C 4B E1 AB 8D */ bl func_801C7168 +/* 803AC5DC 003A823C 4B E1 AB 8D */ bl _restgpr_24 /* 803AC5E0 003A8240 80 01 00 54 */ lwz r0, 0x54(r1) /* 803AC5E4 003A8244 7C 08 03 A6 */ mtlr r0 /* 803AC5E8 003A8248 38 21 00 50 */ addi r1, r1, 0x50 @@ -54509,7 +54509,7 @@ func_803B0040: /* 803B0044 003ABCA4 7C 08 02 A6 */ mflr r0 /* 803B0048 003ABCA8 90 01 00 44 */ stw r0, 0x44(r1) /* 803B004C 003ABCAC 39 61 00 40 */ addi r11, r1, 0x40 -/* 803B0050 003ABCB0 4B E1 70 CD */ bl func_801C711C +/* 803B0050 003ABCB0 4B E1 70 CD */ bl _savegpr_24 /* 803B0054 003ABCB4 7F E4 2A 14 */ add r31, r4, r5 /* 803B0058 003ABCB8 7C BA 2B 78 */ mr r26, r5 /* 803B005C 003ABCBC 88 BF 21 9C */ lbz r5, 0x219c(r31) @@ -54602,7 +54602,7 @@ lbl_803B0134: /* 803B01AC 003ABE0C 38 E0 00 18 */ li r7, 0x18 /* 803B01B0 003ABE10 4B FF F4 41 */ bl func_803AF5F0 /* 803B01B4 003ABE14 39 61 00 40 */ addi r11, r1, 0x40 -/* 803B01B8 003ABE18 4B E1 6F B1 */ bl func_801C7168 +/* 803B01B8 003ABE18 4B E1 6F B1 */ bl _restgpr_24 /* 803B01BC 003ABE1C 80 01 00 44 */ lwz r0, 0x44(r1) /* 803B01C0 003ABE20 7C 08 03 A6 */ mtlr r0 /* 803B01C4 003ABE24 38 21 00 40 */ addi r1, r1, 0x40 @@ -55061,7 +55061,7 @@ func_803B07FC: /* 803B0800 003AC460 7C 08 02 A6 */ mflr r0 /* 803B0804 003AC464 90 01 00 44 */ stw r0, 0x44(r1) /* 803B0808 003AC468 39 61 00 40 */ addi r11, r1, 0x40 -/* 803B080C 003AC46C 4B E1 69 11 */ bl func_801C711C +/* 803B080C 003AC46C 4B E1 69 11 */ bl _savegpr_24 /* 803B0810 003AC470 7C 78 1B 78 */ mr r24, r3 /* 803B0814 003AC474 7C 99 23 78 */ mr r25, r4 /* 803B0818 003AC478 7C BA 2B 78 */ mr r26, r5 @@ -55109,7 +55109,7 @@ lbl_803B0850: /* 803B08BC 003AC51C 38 E0 00 14 */ li r7, 0x14 /* 803B08C0 003AC520 4B FF ED 31 */ bl func_803AF5F0 /* 803B08C4 003AC524 39 61 00 40 */ addi r11, r1, 0x40 -/* 803B08C8 003AC528 4B E1 68 A1 */ bl func_801C7168 +/* 803B08C8 003AC528 4B E1 68 A1 */ bl _restgpr_24 /* 803B08CC 003AC52C 80 01 00 44 */ lwz r0, 0x44(r1) /* 803B08D0 003AC530 7C 08 03 A6 */ mtlr r0 /* 803B08D4 003AC534 38 21 00 40 */ addi r1, r1, 0x40 @@ -58802,7 +58802,7 @@ lbl_803B3C40: /* 803B3C64 003AF8C4 7C 08 02 A6 */ mflr r0 /* 803B3C68 003AF8C8 90 01 00 34 */ stw r0, 0x34(r1) /* 803B3C6C 003AF8CC 39 61 00 30 */ addi r11, r1, 0x30 -/* 803B3C70 003AF8D0 4B E1 34 AD */ bl func_801C711C +/* 803B3C70 003AF8D0 4B E1 34 AD */ bl _savegpr_24 /* 803B3C74 003AF8D4 7C 7B 1B 78 */ mr r27, r3 /* 803B3C78 003AF8D8 7C 9C 23 78 */ mr r28, r4 /* 803B3C7C 003AF8DC 3B C0 00 00 */ li r30, 0 @@ -58939,7 +58939,7 @@ lbl_803B3E40: /* 803B3E54 003AFAB4 90 1C 00 08 */ stw r0, 8(r28) lbl_803B3E58: /* 803B3E58 003AFAB8 39 61 00 30 */ addi r11, r1, 0x30 -/* 803B3E5C 003AFABC 4B E1 33 0D */ bl func_801C7168 +/* 803B3E5C 003AFABC 4B E1 33 0D */ bl _restgpr_24 /* 803B3E60 003AFAC0 80 01 00 34 */ lwz r0, 0x34(r1) /* 803B3E64 003AFAC4 7C 08 03 A6 */ mtlr r0 /* 803B3E68 003AFAC8 38 21 00 30 */ addi r1, r1, 0x30 @@ -63974,7 +63974,7 @@ lbl_803B8780: /* 803B87A0 003B4400 7C 08 02 A6 */ mflr r0 /* 803B87A4 003B4404 90 01 00 34 */ stw r0, 0x34(r1) /* 803B87A8 003B4408 39 61 00 30 */ addi r11, r1, 0x30 -/* 803B87AC 003B440C 4B E0 E9 71 */ bl func_801C711C +/* 803B87AC 003B440C 4B E0 E9 71 */ bl _savegpr_24 /* 803B87B0 003B4410 80 04 00 40 */ lwz r0, 0x40(r4) /* 803B87B4 003B4414 7C 7D 1B 78 */ mr r29, r3 /* 803B87B8 003B4418 7C 9E 23 78 */ mr r30, r4 @@ -64219,7 +64219,7 @@ lbl_803B8B24: /* 803B8B34 003B4794 90 1E 00 08 */ stw r0, 8(r30) lbl_803B8B38: /* 803B8B38 003B4798 39 61 00 30 */ addi r11, r1, 0x30 -/* 803B8B3C 003B479C 4B E0 E6 2D */ bl func_801C7168 +/* 803B8B3C 003B479C 4B E0 E6 2D */ bl _restgpr_24 /* 803B8B40 003B47A0 80 01 00 34 */ lwz r0, 0x34(r1) /* 803B8B44 003B47A4 7C 08 03 A6 */ mtlr r0 /* 803B8B48 003B47A8 38 21 00 30 */ addi r1, r1, 0x30 @@ -64843,7 +64843,7 @@ lbl_803B93F8: /* 803B9434 003B5094 7C 08 02 A6 */ mflr r0 /* 803B9438 003B5098 90 01 00 34 */ stw r0, 0x34(r1) /* 803B943C 003B509C 39 61 00 30 */ addi r11, r1, 0x30 -/* 803B9440 003B50A0 4B E0 DC DD */ bl func_801C711C +/* 803B9440 003B50A0 4B E0 DC DD */ bl _savegpr_24 /* 803B9444 003B50A4 7C 7D 1B 78 */ mr r29, r3 /* 803B9448 003B50A8 7C 9E 23 78 */ mr r30, r4 /* 803B944C 003B50AC 4B FF 33 F5 */ bl func_803AC840 @@ -65022,7 +65022,7 @@ lbl_803B96C4: /* 803B96CC 003B532C 4B DB 63 81 */ bl func_8016FA4C lbl_803B96D0: /* 803B96D0 003B5330 39 61 00 30 */ addi r11, r1, 0x30 -/* 803B96D4 003B5334 4B E0 DA 95 */ bl func_801C7168 +/* 803B96D4 003B5334 4B E0 DA 95 */ bl _restgpr_24 /* 803B96D8 003B5338 80 01 00 34 */ lwz r0, 0x34(r1) /* 803B96DC 003B533C 7C 08 03 A6 */ mtlr r0 /* 803B96E0 003B5340 38 21 00 30 */ addi r1, r1, 0x30 @@ -71398,7 +71398,7 @@ func_803BF228: /* 803BF22C 003BAE8C 7C 08 02 A6 */ mflr r0 /* 803BF230 003BAE90 90 01 00 34 */ stw r0, 0x34(r1) /* 803BF234 003BAE94 39 61 00 30 */ addi r11, r1, 0x30 -/* 803BF238 003BAE98 4B E0 7E E5 */ bl func_801C711C +/* 803BF238 003BAE98 4B E0 7E E5 */ bl _savegpr_24 /* 803BF23C 003BAE9C 7C 78 1B 78 */ mr r24, r3 /* 803BF240 003BAEA0 7C 99 23 78 */ mr r25, r4 /* 803BF244 003BAEA4 7C BC 2B 78 */ mr r28, r5 @@ -71462,7 +71462,7 @@ lbl_803BF308: lbl_803BF310: /* 803BF310 003BAF70 39 61 00 30 */ addi r11, r1, 0x30 /* 803BF314 003BAF74 7F 63 DB 78 */ mr r3, r27 -/* 803BF318 003BAF78 4B E0 7E 51 */ bl func_801C7168 +/* 803BF318 003BAF78 4B E0 7E 51 */ bl _restgpr_24 /* 803BF31C 003BAF7C 80 01 00 34 */ lwz r0, 0x34(r1) /* 803BF320 003BAF80 7C 08 03 A6 */ mtlr r0 /* 803BF324 003BAF84 38 21 00 30 */ addi r1, r1, 0x30 @@ -75373,7 +75373,7 @@ func_803C2994: /* 803C2998 003BE5F8 7C 08 02 A6 */ mflr r0 /* 803C299C 003BE5FC 90 01 00 34 */ stw r0, 0x34(r1) /* 803C29A0 003BE600 39 61 00 30 */ addi r11, r1, 0x30 -/* 803C29A4 003BE604 4B E0 47 79 */ bl func_801C711C +/* 803C29A4 003BE604 4B E0 47 79 */ bl _savegpr_24 /* 803C29A8 003BE608 7C 9A 23 78 */ mr r26, r4 /* 803C29AC 003BE60C 7C BB 2B 78 */ mr r27, r5 /* 803C29B0 003BE610 7C 79 1B 78 */ mr r25, r3 @@ -75918,7 +75918,7 @@ lbl_803C3160: lbl_803C31A0: /* 803C31A0 003BEE00 39 61 00 30 */ addi r11, r1, 0x30 /* 803C31A4 003BEE04 7F A3 EB 78 */ mr r3, r29 -/* 803C31A8 003BEE08 4B E0 3F C1 */ bl func_801C7168 +/* 803C31A8 003BEE08 4B E0 3F C1 */ bl _restgpr_24 /* 803C31AC 003BEE0C 80 01 00 34 */ lwz r0, 0x34(r1) /* 803C31B0 003BEE10 7C 08 03 A6 */ mtlr r0 /* 803C31B4 003BEE14 38 21 00 30 */ addi r1, r1, 0x30 @@ -77279,7 +77279,7 @@ func_803C44DC: /* 803C44E0 003C0140 7C 08 02 A6 */ mflr r0 /* 803C44E4 003C0144 90 01 00 34 */ stw r0, 0x34(r1) /* 803C44E8 003C0148 39 61 00 30 */ addi r11, r1, 0x30 -/* 803C44EC 003C014C 4B E0 2C 31 */ bl func_801C711C +/* 803C44EC 003C014C 4B E0 2C 31 */ bl _savegpr_24 /* 803C44F0 003C0150 7C 9A 23 78 */ mr r26, r4 /* 803C44F4 003C0154 7C BB 2B 78 */ mr r27, r5 /* 803C44F8 003C0158 7C 79 1B 78 */ mr r25, r3 @@ -77898,7 +77898,7 @@ lbl_803C4DCC: /* 803C4DCC 003C0A2C 7F E3 FB 78 */ mr r3, r31 lbl_803C4DD0: /* 803C4DD0 003C0A30 39 61 00 30 */ addi r11, r1, 0x30 -/* 803C4DD4 003C0A34 4B E0 23 95 */ bl func_801C7168 +/* 803C4DD4 003C0A34 4B E0 23 95 */ bl _restgpr_24 /* 803C4DD8 003C0A38 80 01 00 34 */ lwz r0, 0x34(r1) /* 803C4DDC 003C0A3C 7C 08 03 A6 */ mtlr r0 /* 803C4DE0 003C0A40 38 21 00 30 */ addi r1, r1, 0x30 @@ -77910,7 +77910,7 @@ func_803C4DE8: /* 803C4DEC 003C0A4C 7C 08 02 A6 */ mflr r0 /* 803C4DF0 003C0A50 90 01 00 34 */ stw r0, 0x34(r1) /* 803C4DF4 003C0A54 39 61 00 30 */ addi r11, r1, 0x30 -/* 803C4DF8 003C0A58 4B E0 23 25 */ bl func_801C711C +/* 803C4DF8 003C0A58 4B E0 23 25 */ bl _savegpr_24 /* 803C4DFC 003C0A5C 7C 99 23 78 */ mr r25, r4 /* 803C4E00 003C0A60 7C BA 2B 78 */ mr r26, r5 /* 803C4E04 003C0A64 7C 78 1B 78 */ mr r24, r3 @@ -78590,7 +78590,7 @@ lbl_803C580C: /* 803C580C 003C146C 38 60 00 01 */ li r3, 1 lbl_803C5810: /* 803C5810 003C1470 39 61 00 30 */ addi r11, r1, 0x30 -/* 803C5814 003C1474 4B E0 19 55 */ bl func_801C7168 +/* 803C5814 003C1474 4B E0 19 55 */ bl _restgpr_24 /* 803C5818 003C1478 80 01 00 34 */ lwz r0, 0x34(r1) /* 803C581C 003C147C 7C 08 03 A6 */ mtlr r0 /* 803C5820 003C1480 38 21 00 30 */ addi r1, r1, 0x30 @@ -82033,7 +82033,7 @@ func_803C88F0: /* 803C88F4 003C4554 7C 08 02 A6 */ mflr r0 /* 803C88F8 003C4558 90 01 00 34 */ stw r0, 0x34(r1) /* 803C88FC 003C455C 39 61 00 30 */ addi r11, r1, 0x30 -/* 803C8900 003C4560 4B DF E8 1D */ bl func_801C711C +/* 803C8900 003C4560 4B DF E8 1D */ bl _savegpr_24 /* 803C8904 003C4564 7C 99 23 78 */ mr r25, r4 /* 803C8908 003C4568 80 84 00 64 */ lwz r4, 0x64(r4) /* 803C890C 003C456C 7C 7B 1B 78 */ mr r27, r3 @@ -82211,7 +82211,7 @@ lbl_803C8B88: lbl_803C8BAC: /* 803C8BAC 003C480C 39 61 00 30 */ addi r11, r1, 0x30 /* 803C8BB0 003C4810 7F C3 F3 78 */ mr r3, r30 -/* 803C8BB4 003C4814 4B DF E5 B5 */ bl func_801C7168 +/* 803C8BB4 003C4814 4B DF E5 B5 */ bl _restgpr_24 /* 803C8BB8 003C4818 80 01 00 34 */ lwz r0, 0x34(r1) /* 803C8BBC 003C481C 7C 08 03 A6 */ mtlr r0 /* 803C8BC0 003C4820 38 21 00 30 */ addi r1, r1, 0x30 @@ -93533,7 +93533,7 @@ lbl_803D306C: /* 803D3078 003CECD8 7C 08 02 A6 */ mflr r0 /* 803D307C 003CECDC 90 01 00 34 */ stw r0, 0x34(r1) /* 803D3080 003CECE0 39 61 00 30 */ addi r11, r1, 0x30 -/* 803D3084 003CECE4 4B DF 40 99 */ bl func_801C711C +/* 803D3084 003CECE4 4B DF 40 99 */ bl _savegpr_24 /* 803D3088 003CECE8 80 A4 00 B4 */ lwz r5, 0xb4(r4) /* 803D308C 003CECEC 7C 9C 23 78 */ mr r28, r4 /* 803D3090 003CECF0 7C 7B 1B 78 */ mr r27, r3 @@ -93647,7 +93647,7 @@ lbl_803D31FC: lbl_803D3214: /* 803D3214 003CEE74 39 61 00 30 */ addi r11, r1, 0x30 /* 803D3218 003CEE78 38 60 00 00 */ li r3, 0 -/* 803D321C 003CEE7C 4B DF 3F 4D */ bl func_801C7168 +/* 803D321C 003CEE7C 4B DF 3F 4D */ bl _restgpr_24 /* 803D3220 003CEE80 80 01 00 34 */ lwz r0, 0x34(r1) /* 803D3224 003CEE84 7C 08 03 A6 */ mtlr r0 /* 803D3228 003CEE88 38 21 00 30 */ addi r1, r1, 0x30 @@ -103860,7 +103860,7 @@ func_803DC454: /* 803DC458 003D80B8 7C 08 02 A6 */ mflr r0 /* 803DC45C 003D80BC 90 01 00 44 */ stw r0, 0x44(r1) /* 803DC460 003D80C0 39 61 00 40 */ addi r11, r1, 0x40 -/* 803DC464 003D80C4 4B DE AC B9 */ bl func_801C711C +/* 803DC464 003D80C4 4B DE AC B9 */ bl _savegpr_24 /* 803DC468 003D80C8 7C 78 1B 78 */ mr r24, r3 /* 803DC46C 003D80CC 7C 99 23 78 */ mr r25, r4 /* 803DC470 003D80D0 4B FF DE A9 */ bl func_803DA318 @@ -103933,7 +103933,7 @@ lbl_803DC510: /* 803DC574 003D81D4 7F 44 D3 78 */ mr r4, r26 /* 803DC578 003D81D8 4B FF DD C5 */ bl func_803DA33C /* 803DC57C 003D81DC 39 61 00 40 */ addi r11, r1, 0x40 -/* 803DC580 003D81E0 4B DE AB E9 */ bl func_801C7168 +/* 803DC580 003D81E0 4B DE AB E9 */ bl _restgpr_24 /* 803DC584 003D81E4 80 01 00 44 */ lwz r0, 0x44(r1) /* 803DC588 003D81E8 7C 08 03 A6 */ mtlr r0 /* 803DC58C 003D81EC 38 21 00 40 */ addi r1, r1, 0x40 @@ -103983,7 +103983,7 @@ func_803DC614: /* 803DC618 003D8278 7C 08 02 A6 */ mflr r0 /* 803DC61C 003D827C 90 01 00 34 */ stw r0, 0x34(r1) /* 803DC620 003D8280 39 61 00 30 */ addi r11, r1, 0x30 -/* 803DC624 003D8284 4B DE AA F9 */ bl func_801C711C +/* 803DC624 003D8284 4B DE AA F9 */ bl _savegpr_24 /* 803DC628 003D8288 7C 78 1B 78 */ mr r24, r3 /* 803DC62C 003D828C 7C 9D 23 78 */ mr r29, r4 /* 803DC630 003D8290 7C BE 2B 78 */ mr r30, r5 @@ -104056,7 +104056,7 @@ lbl_803DC724: /* 803DC72C 003D838C 7F 83 E3 78 */ mr r3, r28 lbl_803DC730: /* 803DC730 003D8390 39 61 00 30 */ addi r11, r1, 0x30 -/* 803DC734 003D8394 4B DE AA 35 */ bl func_801C7168 +/* 803DC734 003D8394 4B DE AA 35 */ bl _restgpr_24 /* 803DC738 003D8398 80 01 00 34 */ lwz r0, 0x34(r1) /* 803DC73C 003D839C 7C 08 03 A6 */ mtlr r0 /* 803DC740 003D83A0 38 21 00 30 */ addi r1, r1, 0x30 @@ -109260,7 +109260,7 @@ func_803E0CAC: /* 803E0CB0 003DC910 7C 08 02 A6 */ mflr r0 /* 803E0CB4 003DC914 90 01 00 D4 */ stw r0, 0xd4(r1) /* 803E0CB8 003DC918 39 61 00 D0 */ addi r11, r1, 0xd0 -/* 803E0CBC 003DC91C 4B DE 64 61 */ bl func_801C711C +/* 803E0CBC 003DC91C 4B DE 64 61 */ bl _savegpr_24 /* 803E0CC0 003DC920 7C 7B 1B 78 */ mr r27, r3 /* 803E0CC4 003DC924 80 63 00 00 */ lwz r3, 0(r3) /* 803E0CC8 003DC928 7C 9F 23 78 */ mr r31, r4 @@ -109488,7 +109488,7 @@ lbl_803E0F98: /* 803E1034 003DCC94 48 00 09 C9 */ bl func_803E19FC /* 803E1038 003DCC98 B0 7F 00 1E */ sth r3, 0x1e(r31) /* 803E103C 003DCC9C 39 61 00 D0 */ addi r11, r1, 0xd0 -/* 803E1040 003DCCA0 4B DE 61 29 */ bl func_801C7168 +/* 803E1040 003DCCA0 4B DE 61 29 */ bl _restgpr_24 /* 803E1044 003DCCA4 80 01 00 D4 */ lwz r0, 0xd4(r1) /* 803E1048 003DCCA8 7C 08 03 A6 */ mtlr r0 /* 803E104C 003DCCAC 38 21 00 D0 */ addi r1, r1, 0xd0 @@ -109553,7 +109553,7 @@ func_803E111C: /* 803E1120 003DCD80 7C 08 02 A6 */ mflr r0 /* 803E1124 003DCD84 90 01 00 B4 */ stw r0, 0xb4(r1) /* 803E1128 003DCD88 39 61 00 B0 */ addi r11, r1, 0xb0 -/* 803E112C 003DCD8C 4B DE 5F F1 */ bl func_801C711C +/* 803E112C 003DCD8C 4B DE 5F F1 */ bl _savegpr_24 /* 803E1130 003DCD90 7C 78 1B 78 */ mr r24, r3 /* 803E1134 003DCD94 80 63 00 00 */ lwz r3, 0(r3) /* 803E1138 003DCD98 7C 99 23 78 */ mr r25, r4 @@ -109623,7 +109623,7 @@ lbl_803E120C: /* 803E1224 003DCE84 3B FF 00 EC */ addi r31, r31, 0xec /* 803E1228 003DCE88 41 80 FF 6C */ blt lbl_803E1194 /* 803E122C 003DCE8C 39 61 00 B0 */ addi r11, r1, 0xb0 -/* 803E1230 003DCE90 4B DE 5F 39 */ bl func_801C7168 +/* 803E1230 003DCE90 4B DE 5F 39 */ bl _restgpr_24 /* 803E1234 003DCE94 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 803E1238 003DCE98 7C 08 03 A6 */ mtlr r0 /* 803E123C 003DCE9C 38 21 00 B0 */ addi r1, r1, 0xb0 @@ -109937,7 +109937,7 @@ func_803E16E0: /* 803E16E4 003DD344 7C 08 02 A6 */ mflr r0 /* 803E16E8 003DD348 90 01 00 34 */ stw r0, 0x34(r1) /* 803E16EC 003DD34C 39 61 00 30 */ addi r11, r1, 0x30 -/* 803E16F0 003DD350 4B DE 5A 2D */ bl func_801C711C +/* 803E16F0 003DD350 4B DE 5A 2D */ bl _savegpr_24 /* 803E16F4 003DD354 7C 7E 1B 78 */ mr r30, r3 /* 803E16F8 003DD358 80 63 00 00 */ lwz r3, 0(r3) /* 803E16FC 003DD35C 7C 9F 23 78 */ mr r31, r4 @@ -110026,7 +110026,7 @@ lbl_803E1824: /* 803E1828 003DD488 48 00 01 E9 */ bl func_803E1A10 /* 803E182C 003DD48C 90 7F 00 04 */ stw r3, 4(r31) /* 803E1830 003DD490 39 61 00 30 */ addi r11, r1, 0x30 -/* 803E1834 003DD494 4B DE 59 35 */ bl func_801C7168 +/* 803E1834 003DD494 4B DE 59 35 */ bl _restgpr_24 /* 803E1838 003DD498 80 01 00 34 */ lwz r0, 0x34(r1) /* 803E183C 003DD49C 7C 08 03 A6 */ mtlr r0 /* 803E1840 003DD4A0 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/asm/text_2.s b/asm/text_2.s index 875a975..1a4e835 100644 --- a/asm/text_2.s +++ b/asm/text_2.s @@ -9878,7 +9878,7 @@ func_80068338: /* 8006833C 00063F9C 7C 08 02 A6 */ mflr r0 /* 80068340 00063FA0 90 01 00 74 */ stw r0, 0x74(r1) /* 80068344 00063FA4 39 61 00 70 */ addi r11, r1, 0x70 -/* 80068348 00063FA8 48 15 ED D5 */ bl func_801C711C +/* 80068348 00063FA8 48 15 ED D5 */ bl _savegpr_24 /* 8006834C 00063FAC 3C A0 80 48 */ lis r5, lbl_80478408@ha /* 80068350 00063FB0 7C 78 1B 78 */ mr r24, r3 /* 80068354 00063FB4 38 A5 84 08 */ addi r5, r5, lbl_80478408@l @@ -10648,7 +10648,7 @@ lbl_80068D38: /* 80068F18 00064B78 48 1E 72 1D */ bl func_80250134 lbl_80068F1C: /* 80068F1C 00064B7C 39 61 00 70 */ addi r11, r1, 0x70 -/* 80068F20 00064B80 48 15 E2 49 */ bl func_801C7168 +/* 80068F20 00064B80 48 15 E2 49 */ bl _restgpr_24 /* 80068F24 00064B84 80 01 00 74 */ lwz r0, 0x74(r1) /* 80068F28 00064B88 7C 08 03 A6 */ mtlr r0 /* 80068F2C 00064B8C 38 21 00 70 */ addi r1, r1, 0x70 @@ -48422,7 +48422,7 @@ func_8008B754: /* 8008B758 000873B8 7C 08 02 A6 */ mflr r0 /* 8008B75C 000873BC 90 01 00 44 */ stw r0, 0x44(r1) /* 8008B760 000873C0 39 61 00 40 */ addi r11, r1, 0x40 -/* 8008B764 000873C4 48 13 B9 B9 */ bl func_801C711C +/* 8008B764 000873C4 48 13 B9 B9 */ bl _savegpr_24 /* 8008B768 000873C8 80 0D 9A 80 */ lwz r0, lbl_8063ED40-_SDA_BASE_(r13) /* 8008B76C 000873CC 7C 7D 1B 78 */ mr r29, r3 /* 8008B770 000873D0 2C 00 00 00 */ cmpwi r0, 0 @@ -48561,7 +48561,7 @@ lbl_8008B920: /* 8008B954 000875B4 60 03 0F 00 */ ori r3, r0, 0xf00 lbl_8008B958: /* 8008B958 000875B8 39 61 00 40 */ addi r11, r1, 0x40 -/* 8008B95C 000875BC 48 13 B8 0D */ bl func_801C7168 +/* 8008B95C 000875BC 48 13 B8 0D */ bl _restgpr_24 /* 8008B960 000875C0 80 01 00 44 */ lwz r0, 0x44(r1) /* 8008B964 000875C4 7C 08 03 A6 */ mtlr r0 /* 8008B968 000875C8 38 21 00 40 */ addi r1, r1, 0x40 @@ -95658,7 +95658,7 @@ lbl_800B6ED4: /* 800B6ED8 000B2B38 7C 08 02 A6 */ mflr r0 /* 800B6EDC 000B2B3C 90 01 00 84 */ stw r0, 0x84(r1) /* 800B6EE0 000B2B40 39 61 00 80 */ addi r11, r1, 0x80 -/* 800B6EE4 000B2B44 48 11 02 39 */ bl func_801C711C +/* 800B6EE4 000B2B44 48 11 02 39 */ bl _savegpr_24 /* 800B6EE8 000B2B48 3C A0 00 01 */ lis r5, 0x0000FFFF@ha /* 800B6EEC 000B2B4C 7C 7E 1B 78 */ mr r30, r3 /* 800B6EF0 000B2B50 3B A5 FF FF */ addi r29, r5, 0x0000FFFF@l @@ -95896,7 +95896,7 @@ lbl_800B71CC: /* 800B727C 000B2EDC 48 19 8E B9 */ bl func_80250134 lbl_800B7280: /* 800B7280 000B2EE0 39 61 00 80 */ addi r11, r1, 0x80 -/* 800B7284 000B2EE4 48 10 FE E5 */ bl func_801C7168 +/* 800B7284 000B2EE4 48 10 FE E5 */ bl _restgpr_24 /* 800B7288 000B2EE8 80 01 00 84 */ lwz r0, 0x84(r1) /* 800B728C 000B2EEC 7C 08 03 A6 */ mtlr r0 /* 800B7290 000B2EF0 38 21 00 80 */ addi r1, r1, 0x80 diff --git a/asm/text_3.s b/asm/text_3.s index a0c1dc5..a33c8d7 100644 --- a/asm/text_3.s +++ b/asm/text_3.s @@ -10049,7 +10049,7 @@ func_800C4E14: /* 800C4E18 000C0A78 7C 08 02 A6 */ mflr r0 /* 800C4E1C 000C0A7C 90 01 00 44 */ stw r0, 0x44(r1) /* 800C4E20 000C0A80 39 61 00 40 */ addi r11, r1, 0x40 -/* 800C4E24 000C0A84 48 10 22 F9 */ bl func_801C711C +/* 800C4E24 000C0A84 48 10 22 F9 */ bl _savegpr_24 /* 800C4E28 000C0A88 7C 78 1B 78 */ mr r24, r3 /* 800C4E2C 000C0A8C 7C 99 23 78 */ mr r25, r4 /* 800C4E30 000C0A90 3B 60 00 00 */ li r27, 0 @@ -10270,7 +10270,7 @@ lbl_800C50E8: /* 800C5150 000C0DB0 90 83 00 D4 */ stw r4, 0xd4(r3) lbl_800C5154: /* 800C5154 000C0DB4 39 61 00 40 */ addi r11, r1, 0x40 -/* 800C5158 000C0DB8 48 10 20 11 */ bl func_801C7168 +/* 800C5158 000C0DB8 48 10 20 11 */ bl _restgpr_24 /* 800C515C 000C0DBC 80 01 00 44 */ lwz r0, 0x44(r1) /* 800C5160 000C0DC0 7C 08 03 A6 */ mtlr r0 /* 800C5164 000C0DC4 38 21 00 40 */ addi r1, r1, 0x40 @@ -26867,7 +26867,7 @@ func_800D4300: /* 800D431C 000CFF7C DB A1 01 70 */ stfd f29, 0x170(r1) /* 800D4320 000CFF80 F3 A1 01 78 */ psq_st f29, 376(r1), 0, qr0 /* 800D4324 000CFF84 39 61 01 70 */ addi r11, r1, 0x170 -/* 800D4328 000CFF88 48 0F 2D F5 */ bl func_801C711C +/* 800D4328 000CFF88 48 0F 2D F5 */ bl _savegpr_24 /* 800D432C 000CFF8C 3C 00 43 30 */ lis r0, 0x4330 /* 800D4330 000CFF90 7C 79 1B 78 */ mr r25, r3 /* 800D4334 000CFF94 90 01 01 18 */ stw r0, 0x118(r1) @@ -29054,7 +29054,7 @@ lbl_800D63FC: /* 800D640C 000D206C E3 A1 01 78 */ psq_l f29, 376(r1), 0, qr0 /* 800D6410 000D2070 39 61 01 70 */ addi r11, r1, 0x170 /* 800D6414 000D2074 CB A1 01 70 */ lfd f29, 0x170(r1) -/* 800D6418 000D2078 48 0F 0D 51 */ bl func_801C7168 +/* 800D6418 000D2078 48 0F 0D 51 */ bl _restgpr_24 /* 800D641C 000D207C 80 01 01 A4 */ lwz r0, 0x1a4(r1) /* 800D6420 000D2080 7C 08 03 A6 */ mtlr r0 /* 800D6424 000D2084 38 21 01 A0 */ addi r1, r1, 0x1a0 @@ -46107,7 +46107,7 @@ func_800E5BDC: /* 800E5BE0 000E1840 7C 08 02 A6 */ mflr r0 /* 800E5BE4 000E1844 90 01 00 34 */ stw r0, 0x34(r1) /* 800E5BE8 000E1848 39 61 00 30 */ addi r11, r1, 0x30 -/* 800E5BEC 000E184C 48 0E 15 31 */ bl func_801C711C +/* 800E5BEC 000E184C 48 0E 15 31 */ bl _savegpr_24 /* 800E5BF0 000E1850 2C 03 00 00 */ cmpwi r3, 0 /* 800E5BF4 000E1854 7C 78 1B 78 */ mr r24, r3 /* 800E5BF8 000E1858 7C 99 23 78 */ mr r25, r4 @@ -46169,7 +46169,7 @@ lbl_800E5C9C: /* 800E5CC8 000E1928 7C 06 29 AE */ stbx r0, r6, r5 lbl_800E5CCC: /* 800E5CCC 000E192C 39 61 00 30 */ addi r11, r1, 0x30 -/* 800E5CD0 000E1930 48 0E 14 99 */ bl func_801C7168 +/* 800E5CD0 000E1930 48 0E 14 99 */ bl _restgpr_24 /* 800E5CD4 000E1934 80 01 00 34 */ lwz r0, 0x34(r1) /* 800E5CD8 000E1938 7C 08 03 A6 */ mtlr r0 /* 800E5CDC 000E193C 38 21 00 30 */ addi r1, r1, 0x30 @@ -46181,7 +46181,7 @@ func_800E5CE4: /* 800E5CE8 000E1948 7C 08 02 A6 */ mflr r0 /* 800E5CEC 000E194C 90 01 00 34 */ stw r0, 0x34(r1) /* 800E5CF0 000E1950 39 61 00 30 */ addi r11, r1, 0x30 -/* 800E5CF4 000E1954 48 0E 14 29 */ bl func_801C711C +/* 800E5CF4 000E1954 48 0E 14 29 */ bl _savegpr_24 /* 800E5CF8 000E1958 2C 03 00 00 */ cmpwi r3, 0 /* 800E5CFC 000E195C 7C 78 1B 78 */ mr r24, r3 /* 800E5D00 000E1960 7C 99 23 78 */ mr r25, r4 @@ -46243,7 +46243,7 @@ lbl_800E5DA4: /* 800E5DD0 000E1A30 7C 06 29 AE */ stbx r0, r6, r5 lbl_800E5DD4: /* 800E5DD4 000E1A34 39 61 00 30 */ addi r11, r1, 0x30 -/* 800E5DD8 000E1A38 48 0E 13 91 */ bl func_801C7168 +/* 800E5DD8 000E1A38 48 0E 13 91 */ bl _restgpr_24 /* 800E5DDC 000E1A3C 80 01 00 34 */ lwz r0, 0x34(r1) /* 800E5DE0 000E1A40 7C 08 03 A6 */ mtlr r0 /* 800E5DE4 000E1A44 38 21 00 30 */ addi r1, r1, 0x30 @@ -46780,7 +46780,7 @@ func_800E64E0: /* 800E64E4 000E2144 7C 08 02 A6 */ mflr r0 /* 800E64E8 000E2148 90 01 00 34 */ stw r0, 0x34(r1) /* 800E64EC 000E214C 39 61 00 30 */ addi r11, r1, 0x30 -/* 800E64F0 000E2150 48 0E 0C 2D */ bl func_801C711C +/* 800E64F0 000E2150 48 0E 0C 2D */ bl _savegpr_24 /* 800E64F4 000E2154 3C 60 80 48 */ lis r3, lbl_8047D604@ha /* 800E64F8 000E2158 3B 00 00 00 */ li r24, 0 /* 800E64FC 000E215C 3B E0 00 00 */ li r31, 0 @@ -47081,7 +47081,7 @@ lbl_800E692C: /* 800E693C 000E259C 38 80 00 00 */ li r4, 0 /* 800E6940 000E25A0 48 00 00 45 */ bl func_800E6984 /* 800E6944 000E25A4 39 61 00 30 */ addi r11, r1, 0x30 -/* 800E6948 000E25A8 48 0E 08 21 */ bl func_801C7168 +/* 800E6948 000E25A8 48 0E 08 21 */ bl _restgpr_24 /* 800E694C 000E25AC 80 01 00 34 */ lwz r0, 0x34(r1) /* 800E6950 000E25B0 7C 08 03 A6 */ mtlr r0 /* 800E6954 000E25B4 38 21 00 30 */ addi r1, r1, 0x30 @@ -47584,7 +47584,7 @@ func_800E7044: /* 800E7048 000E2CA8 7C 08 02 A6 */ mflr r0 /* 800E704C 000E2CAC 90 01 00 34 */ stw r0, 0x34(r1) /* 800E7050 000E2CB0 39 61 00 30 */ addi r11, r1, 0x30 -/* 800E7054 000E2CB4 48 0E 00 C9 */ bl func_801C711C +/* 800E7054 000E2CB4 48 0E 00 C9 */ bl _savegpr_24 /* 800E7058 000E2CB8 3F 60 80 48 */ lis r27, lbl_8047D604@ha /* 800E705C 000E2CBC 3B 7B D6 04 */ addi r27, r27, lbl_8047D604@l /* 800E7060 000E2CC0 80 7B 00 F8 */ lwz r3, 0xf8(r27) @@ -47676,7 +47676,7 @@ lbl_800E7188: /* 800E7190 000E2DF0 2C 18 00 04 */ cmpwi r24, 4 /* 800E7194 000E2DF4 41 80 FF C8 */ blt lbl_800E715C /* 800E7198 000E2DF8 39 61 00 30 */ addi r11, r1, 0x30 -/* 800E719C 000E2DFC 48 0D FF CD */ bl func_801C7168 +/* 800E719C 000E2DFC 48 0D FF CD */ bl _restgpr_24 /* 800E71A0 000E2E00 80 01 00 34 */ lwz r0, 0x34(r1) /* 800E71A4 000E2E04 7C 08 03 A6 */ mtlr r0 /* 800E71A8 000E2E08 38 21 00 30 */ addi r1, r1, 0x30 @@ -55089,7 +55089,7 @@ lbl_800EDF30: /* 800EDF34 000E9B94 7C 08 02 A6 */ mflr r0 /* 800EDF38 000E9B98 90 01 00 34 */ stw r0, 0x34(r1) /* 800EDF3C 000E9B9C 39 61 00 30 */ addi r11, r1, 0x30 -/* 800EDF40 000E9BA0 48 0D 91 DD */ bl func_801C711C +/* 800EDF40 000E9BA0 48 0D 91 DD */ bl _savegpr_24 /* 800EDF44 000E9BA4 3F C0 80 48 */ lis r30, lbl_8047DAE0@ha /* 800EDF48 000E9BA8 7C 78 1B 78 */ mr r24, r3 /* 800EDF4C 000E9BAC 7C 99 23 78 */ mr r25, r4 @@ -55622,7 +55622,7 @@ lbl_800EE6EC: /* 800EE714 000EA374 48 16 57 A1 */ bl func_80253EB4 lbl_800EE718: /* 800EE718 000EA378 39 61 00 30 */ addi r11, r1, 0x30 -/* 800EE71C 000EA37C 48 0D 8A 4D */ bl func_801C7168 +/* 800EE71C 000EA37C 48 0D 8A 4D */ bl _restgpr_24 /* 800EE720 000EA380 80 01 00 34 */ lwz r0, 0x34(r1) /* 800EE724 000EA384 7C 08 03 A6 */ mtlr r0 /* 800EE728 000EA388 38 21 00 30 */ addi r1, r1, 0x30 @@ -58081,7 +58081,7 @@ lbl_800F0CCC: /* 800F0CD0 000EC930 7C 08 02 A6 */ mflr r0 /* 800F0CD4 000EC934 90 01 00 94 */ stw r0, 0x94(r1) /* 800F0CD8 000EC938 39 61 00 90 */ addi r11, r1, 0x90 -/* 800F0CDC 000EC93C 48 0D 64 41 */ bl func_801C711C +/* 800F0CDC 000EC93C 48 0D 64 41 */ bl _savegpr_24 /* 800F0CE0 000EC940 3F 60 80 48 */ lis r27, lbl_8047DAE0@ha /* 800F0CE4 000EC944 7C 78 1B 78 */ mr r24, r3 /* 800F0CE8 000EC948 7C 99 23 78 */ mr r25, r4 @@ -58874,7 +58874,7 @@ lbl_800F1824: /* 800F191C 000ED57C 98 19 00 0F */ stb r0, 0xf(r25) lbl_800F1920: /* 800F1920 000ED580 39 61 00 90 */ addi r11, r1, 0x90 -/* 800F1924 000ED584 48 0D 58 45 */ bl func_801C7168 +/* 800F1924 000ED584 48 0D 58 45 */ bl _restgpr_24 /* 800F1928 000ED588 80 01 00 94 */ lwz r0, 0x94(r1) /* 800F192C 000ED58C 7C 08 03 A6 */ mtlr r0 /* 800F1930 000ED590 38 21 00 90 */ addi r1, r1, 0x90 @@ -60697,7 +60697,7 @@ lbl_800F346C: /* 800F3470 000EF0D0 7C 08 02 A6 */ mflr r0 /* 800F3474 000EF0D4 90 01 00 34 */ stw r0, 0x34(r1) /* 800F3478 000EF0D8 39 61 00 30 */ addi r11, r1, 0x30 -/* 800F347C 000EF0DC 48 0D 3C A1 */ bl func_801C711C +/* 800F347C 000EF0DC 48 0D 3C A1 */ bl _savegpr_24 /* 800F3480 000EF0E0 3F 80 80 48 */ lis r28, lbl_8047DAE0@ha /* 800F3484 000EF0E4 7C 9A 23 78 */ mr r26, r4 /* 800F3488 000EF0E8 7C B8 2B 78 */ mr r24, r5 @@ -60819,7 +60819,7 @@ lbl_800F3600: /* 800F362C 000EF28C 7F 03 C3 78 */ mr r3, r24 lbl_800F3630: /* 800F3630 000EF290 39 61 00 30 */ addi r11, r1, 0x30 -/* 800F3634 000EF294 48 0D 3B 35 */ bl func_801C7168 +/* 800F3634 000EF294 48 0D 3B 35 */ bl _restgpr_24 /* 800F3638 000EF298 80 01 00 34 */ lwz r0, 0x34(r1) /* 800F363C 000EF29C 7C 08 03 A6 */ mtlr r0 /* 800F3640 000EF2A0 38 21 00 30 */ addi r1, r1, 0x30 @@ -64973,7 +64973,7 @@ func_800F72F0: /* 800F72F4 000F2F54 7C 08 02 A6 */ mflr r0 /* 800F72F8 000F2F58 90 01 00 34 */ stw r0, 0x34(r1) /* 800F72FC 000F2F5C 39 61 00 30 */ addi r11, r1, 0x30 -/* 800F7300 000F2F60 48 0C FE 1D */ bl func_801C711C +/* 800F7300 000F2F60 48 0C FE 1D */ bl _savegpr_24 /* 800F7304 000F2F64 7C 7E 1B 78 */ mr r30, r3 /* 800F7308 000F2F68 7C 9F 23 78 */ mr r31, r4 /* 800F730C 000F2F6C 4B F5 F8 C9 */ bl func_80056BD4 @@ -65361,7 +65361,7 @@ lbl_800F7888: /* 800F7888 000F34E8 38 60 00 01 */ li r3, 1 lbl_800F788C: /* 800F788C 000F34EC 39 61 00 30 */ addi r11, r1, 0x30 -/* 800F7890 000F34F0 48 0C F8 D9 */ bl func_801C7168 +/* 800F7890 000F34F0 48 0C F8 D9 */ bl _restgpr_24 /* 800F7894 000F34F4 80 01 00 34 */ lwz r0, 0x34(r1) /* 800F7898 000F34F8 7C 08 03 A6 */ mtlr r0 /* 800F789C 000F34FC 38 21 00 30 */ addi r1, r1, 0x30 @@ -78925,7 +78925,7 @@ func_80104210: /* 80104214 000FFE74 7C 08 02 A6 */ mflr r0 /* 80104218 000FFE78 90 01 00 34 */ stw r0, 0x34(r1) /* 8010421C 000FFE7C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80104220 000FFE80 48 0C 2E FD */ bl func_801C711C +/* 80104220 000FFE80 48 0C 2E FD */ bl _savegpr_24 /* 80104224 000FFE84 7C 78 1B 78 */ mr r24, r3 /* 80104228 000FFE88 7C 99 23 78 */ mr r25, r4 /* 8010422C 000FFE8C 7C BA 2B 78 */ mr r26, r5 @@ -78972,7 +78972,7 @@ lbl_80104278: /* 801042C4 000FFF24 54 60 84 3E */ srwi r0, r3, 0x10 /* 801042C8 000FFF28 39 61 00 30 */ addi r11, r1, 0x30 /* 801042CC 000FFF2C 7C 79 02 14 */ add r3, r25, r0 -/* 801042D0 000FFF30 48 0C 2E 99 */ bl func_801C7168 +/* 801042D0 000FFF30 48 0C 2E 99 */ bl _restgpr_24 /* 801042D4 000FFF34 80 01 00 34 */ lwz r0, 0x34(r1) /* 801042D8 000FFF38 7C 08 03 A6 */ mtlr r0 /* 801042DC 000FFF3C 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/asm/text_4.s b/asm/text_4.s index d473cee..2700d21 100644 --- a/asm/text_4.s +++ b/asm/text_4.s @@ -19031,7 +19031,7 @@ lbl_80129800: /* 80129804 00125464 7C 08 02 A6 */ mflr r0 /* 80129808 00125468 90 01 00 84 */ stw r0, 0x84(r1) /* 8012980C 0012546C 39 61 00 80 */ addi r11, r1, 0x80 -/* 80129810 00125470 48 09 D9 0D */ bl func_801C711C +/* 80129810 00125470 48 09 D9 0D */ bl _savegpr_24 /* 80129814 00125474 3C A0 00 01 */ lis r5, 0x0000FFFF@ha /* 80129818 00125478 7C 7E 1B 78 */ mr r30, r3 /* 8012981C 0012547C 3B A5 FF FF */ addi r29, r5, 0x0000FFFF@l @@ -19236,7 +19236,7 @@ lbl_80129A60: /* 80129B34 00125794 48 12 66 01 */ bl func_80250134 lbl_80129B38: /* 80129B38 00125798 39 61 00 80 */ addi r11, r1, 0x80 -/* 80129B3C 0012579C 48 09 D6 2D */ bl func_801C7168 +/* 80129B3C 0012579C 48 09 D6 2D */ bl _restgpr_24 /* 80129B40 001257A0 80 01 00 84 */ lwz r0, 0x84(r1) /* 80129B44 001257A4 7C 08 03 A6 */ mtlr r0 /* 80129B48 001257A8 38 21 00 80 */ addi r1, r1, 0x80 @@ -24212,7 +24212,7 @@ func_8012E3D4: /* 8012E3D8 0012A038 7C 08 02 A6 */ mflr r0 /* 8012E3DC 0012A03C 90 01 00 34 */ stw r0, 0x34(r1) /* 8012E3E0 0012A040 39 61 00 30 */ addi r11, r1, 0x30 -/* 8012E3E4 0012A044 48 09 8D 39 */ bl func_801C711C +/* 8012E3E4 0012A044 48 09 8D 39 */ bl _savegpr_24 /* 8012E3E8 0012A048 3B C0 00 00 */ li r30, 0 /* 8012E3EC 0012A04C 3B A0 00 00 */ li r29, 0 /* 8012E3F0 0012A050 3B 62 8D 8C */ addi r27, r2, lbl_8064138C-_SDA2_BASE_ @@ -24298,7 +24298,7 @@ lbl_8012E4F8: /* 8012E50C 0012A16C 38 03 FF FE */ addi r0, r3, -2 /* 8012E510 0012A170 7C 00 00 34 */ cntlzw r0, r0 /* 8012E514 0012A174 54 03 D9 7E */ srwi r3, r0, 5 -/* 8012E518 0012A178 48 09 8C 51 */ bl func_801C7168 +/* 8012E518 0012A178 48 09 8C 51 */ bl _restgpr_24 /* 8012E51C 0012A17C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8012E520 0012A180 7C 08 03 A6 */ mtlr r0 /* 8012E524 0012A184 38 21 00 30 */ addi r1, r1, 0x30 @@ -40131,7 +40131,7 @@ func_8013CD30: /* 8013CD34 00138994 7C 08 02 A6 */ mflr r0 /* 8013CD38 00138998 90 01 00 34 */ stw r0, 0x34(r1) /* 8013CD3C 0013899C 39 61 00 30 */ addi r11, r1, 0x30 -/* 8013CD40 001389A0 48 08 A3 DD */ bl func_801C711C +/* 8013CD40 001389A0 48 08 A3 DD */ bl _savegpr_24 /* 8013CD44 001389A4 3F A0 80 42 */ lis r29, lbl_8041D160@ha /* 8013CD48 001389A8 3B 80 00 00 */ li r28, 0 /* 8013CD4C 001389AC 3B BD D1 60 */ addi r29, r29, lbl_8041D160@l @@ -40167,7 +40167,7 @@ lbl_8013CD94: /* 8013CDB4 00138A14 93 43 06 58 */ stw r26, 0x658(r3) /* 8013CDB8 00138A18 41 80 FF A0 */ blt lbl_8013CD58 /* 8013CDBC 00138A1C 39 61 00 30 */ addi r11, r1, 0x30 -/* 8013CDC0 00138A20 48 08 A3 A9 */ bl func_801C7168 +/* 8013CDC0 00138A20 48 08 A3 A9 */ bl _restgpr_24 /* 8013CDC4 00138A24 80 01 00 34 */ lwz r0, 0x34(r1) /* 8013CDC8 00138A28 7C 08 03 A6 */ mtlr r0 /* 8013CDCC 00138A2C 38 21 00 30 */ addi r1, r1, 0x30 @@ -57401,7 +57401,7 @@ lbl_8014CD2C: /* 8014CD30 00148990 7C 08 02 A6 */ mflr r0 /* 8014CD34 00148994 90 01 00 74 */ stw r0, 0x74(r1) /* 8014CD38 00148998 39 61 00 70 */ addi r11, r1, 0x70 -/* 8014CD3C 0014899C 48 07 A3 E1 */ bl func_801C711C +/* 8014CD3C 0014899C 48 07 A3 E1 */ bl _savegpr_24 /* 8014CD40 001489A0 7C 7D 1B 78 */ mr r29, r3 /* 8014CD44 001489A4 7C 9E 23 78 */ mr r30, r4 /* 8014CD48 001489A8 38 C1 00 08 */ addi r6, r1, 8 @@ -57658,7 +57658,7 @@ lbl_8014CE64: /* 8014D12C 00148D8C 4B F0 C9 11 */ bl func_80059A3C lbl_8014D130: /* 8014D130 00148D90 39 61 00 70 */ addi r11, r1, 0x70 -/* 8014D134 00148D94 48 07 A0 35 */ bl func_801C7168 +/* 8014D134 00148D94 48 07 A0 35 */ bl _restgpr_24 /* 8014D138 00148D98 80 01 00 74 */ lwz r0, 0x74(r1) /* 8014D13C 00148D9C 7C 08 03 A6 */ mtlr r0 /* 8014D140 00148DA0 38 21 00 70 */ addi r1, r1, 0x70 @@ -57810,7 +57810,7 @@ lbl_8014D370: /* 8014D37C 00148FDC DB E1 00 80 */ stfd f31, 0x80(r1) /* 8014D380 00148FE0 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 /* 8014D384 00148FE4 39 61 00 80 */ addi r11, r1, 0x80 -/* 8014D388 00148FE8 48 07 9D 95 */ bl func_801C711C +/* 8014D388 00148FE8 48 07 9D 95 */ bl _savegpr_24 /* 8014D38C 00148FEC 7C 7E 1B 78 */ mr r30, r3 /* 8014D390 00148FF0 7C 9F 23 78 */ mr r31, r4 /* 8014D394 00148FF4 38 C1 00 08 */ addi r6, r1, 8 @@ -58155,7 +58155,7 @@ lbl_8014D8CC: /* 8014D8CC 0014952C E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 /* 8014D8D0 00149530 39 61 00 80 */ addi r11, r1, 0x80 /* 8014D8D4 00149534 CB E1 00 80 */ lfd f31, 0x80(r1) -/* 8014D8D8 00149538 48 07 98 91 */ bl func_801C7168 +/* 8014D8D8 00149538 48 07 98 91 */ bl _restgpr_24 /* 8014D8DC 0014953C 80 01 00 94 */ lwz r0, 0x94(r1) /* 8014D8E0 00149540 7C 08 03 A6 */ mtlr r0 /* 8014D8E4 00149544 38 21 00 90 */ addi r1, r1, 0x90 @@ -65228,7 +65228,7 @@ lbl_80153E78: /* 80153E7C 0014FADC 7C 08 02 A6 */ mflr r0 /* 80153E80 0014FAE0 90 01 00 74 */ stw r0, 0x74(r1) /* 80153E84 0014FAE4 39 61 00 70 */ addi r11, r1, 0x70 -/* 80153E88 0014FAE8 48 07 32 95 */ bl func_801C711C +/* 80153E88 0014FAE8 48 07 32 95 */ bl _savegpr_24 /* 80153E8C 0014FAEC 7C 7D 1B 78 */ mr r29, r3 /* 80153E90 0014FAF0 7C 9E 23 78 */ mr r30, r4 /* 80153E94 0014FAF4 38 C1 00 08 */ addi r6, r1, 8 @@ -65484,7 +65484,7 @@ lbl_80153FDC: /* 8015426C 0014FECC 4B F0 70 BD */ bl func_8005B328 lbl_80154270: /* 80154270 0014FED0 39 61 00 70 */ addi r11, r1, 0x70 -/* 80154274 0014FED4 48 07 2E F5 */ bl func_801C7168 +/* 80154274 0014FED4 48 07 2E F5 */ bl _restgpr_24 /* 80154278 0014FED8 80 01 00 74 */ lwz r0, 0x74(r1) /* 8015427C 0014FEDC 7C 08 03 A6 */ mtlr r0 /* 80154280 0014FEE0 38 21 00 70 */ addi r1, r1, 0x70 @@ -83898,7 +83898,7 @@ func_80163CB4: /* 80163CB8 0015F918 7C 08 02 A6 */ mflr r0 /* 80163CBC 0015F91C 90 01 00 34 */ stw r0, 0x34(r1) /* 80163CC0 0015F920 39 61 00 30 */ addi r11, r1, 0x30 -/* 80163CC4 0015F924 48 06 34 59 */ bl func_801C711C +/* 80163CC4 0015F924 48 06 34 59 */ bl _savegpr_24 /* 80163CC8 0015F928 80 0D 83 28 */ lwz r0, lbl_8063D5E8-_SDA_BASE_(r13) /* 80163CCC 0015F92C 7C 78 1B 78 */ mr r24, r3 /* 80163CD0 0015F930 83 8D 9D C0 */ lwz r28, lbl_8063F080-_SDA_BASE_(r13) @@ -83963,7 +83963,7 @@ lbl_80163D90: /* 80163DA8 0015FA08 48 10 36 15 */ bl func_802673BC lbl_80163DAC: /* 80163DAC 0015FA0C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80163DB0 0015FA10 48 06 33 B9 */ bl func_801C7168 +/* 80163DB0 0015FA10 48 06 33 B9 */ bl _restgpr_24 /* 80163DB4 0015FA14 80 01 00 34 */ lwz r0, 0x34(r1) /* 80163DB8 0015FA18 7C 08 03 A6 */ mtlr r0 /* 80163DBC 0015FA1C 38 21 00 30 */ addi r1, r1, 0x30 @@ -84032,7 +84032,7 @@ func_80163E78: /* 80163E7C 0015FADC 7C 08 02 A6 */ mflr r0 /* 80163E80 0015FAE0 90 01 00 34 */ stw r0, 0x34(r1) /* 80163E84 0015FAE4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80163E88 0015FAE8 48 06 32 95 */ bl func_801C711C +/* 80163E88 0015FAE8 48 06 32 95 */ bl _savegpr_24 /* 80163E8C 0015FAEC 3B 40 00 00 */ li r26, 0 /* 80163E90 0015FAF0 48 0F A1 41 */ bl func_8025DFD0 /* 80163E94 0015FAF4 48 0F A4 25 */ bl func_8025E2B8 @@ -84167,7 +84167,7 @@ lbl_80164060: /* 80164070 0015FCD0 41 80 FE C4 */ blt lbl_80163F34 lbl_80164074: /* 80164074 0015FCD4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80164078 0015FCD8 48 06 30 F1 */ bl func_801C7168 +/* 80164078 0015FCD8 48 06 30 F1 */ bl _restgpr_24 /* 8016407C 0015FCDC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80164080 0015FCE0 7C 08 03 A6 */ mtlr r0 /* 80164084 0015FCE4 38 21 00 30 */ addi r1, r1, 0x30 @@ -84838,7 +84838,7 @@ lbl_80164978: /* 8016497C 001605DC 7C 08 02 A6 */ mflr r0 /* 80164980 001605E0 90 01 00 34 */ stw r0, 0x34(r1) /* 80164984 001605E4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80164988 001605E8 48 06 27 95 */ bl func_801C711C +/* 80164988 001605E8 48 06 27 95 */ bl _savegpr_24 /* 8016498C 001605EC 7C 7C 1B 78 */ mr r28, r3 /* 80164990 001605F0 7C 98 23 78 */ mr r24, r4 /* 80164994 001605F4 7C B9 2B 78 */ mr r25, r5 @@ -84942,7 +84942,7 @@ lbl_80164AF4: /* 80164AF8 00160758 7F E3 FB 78 */ mr r3, r31 lbl_80164AFC: /* 80164AFC 0016075C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80164B00 00160760 48 06 26 69 */ bl func_801C7168 +/* 80164B00 00160760 48 06 26 69 */ bl _restgpr_24 /* 80164B04 00160764 80 01 00 34 */ lwz r0, 0x34(r1) /* 80164B08 00160768 7C 08 03 A6 */ mtlr r0 /* 80164B0C 0016076C 38 21 00 30 */ addi r1, r1, 0x30 @@ -89424,7 +89424,7 @@ func_801686CC: /* 801686D0 00164330 7C 08 02 A6 */ mflr r0 /* 801686D4 00164334 90 01 00 34 */ stw r0, 0x34(r1) /* 801686D8 00164338 39 61 00 30 */ addi r11, r1, 0x30 -/* 801686DC 0016433C 48 05 EA 41 */ bl func_801C711C +/* 801686DC 0016433C 48 05 EA 41 */ bl _savegpr_24 /* 801686E0 00164340 7C 99 23 78 */ mr r25, r4 /* 801686E4 00164344 7C 78 1B 78 */ mr r24, r3 /* 801686E8 00164348 7F 3E CB 78 */ mr r30, r25 @@ -89461,7 +89461,7 @@ lbl_80168740: /* 80168758 001643B8 3B FF 00 1E */ addi r31, r31, 0x1e /* 8016875C 001643BC 41 80 FF E4 */ blt lbl_80168740 /* 80168760 001643C0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80168764 001643C4 48 05 EA 05 */ bl func_801C7168 +/* 80168764 001643C4 48 05 EA 05 */ bl _restgpr_24 /* 80168768 001643C8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8016876C 001643CC 7C 08 03 A6 */ mtlr r0 /* 80168770 001643D0 38 21 00 30 */ addi r1, r1, 0x30 @@ -94990,7 +94990,7 @@ func_8016D360: /* 8016D364 00168FC4 7C 08 02 A6 */ mflr r0 /* 8016D368 00168FC8 90 01 00 34 */ stw r0, 0x34(r1) /* 8016D36C 00168FCC 39 61 00 30 */ addi r11, r1, 0x30 -/* 8016D370 00168FD0 48 05 9D AD */ bl func_801C711C +/* 8016D370 00168FD0 48 05 9D AD */ bl _savegpr_24 /* 8016D374 00168FD4 7C 78 1B 78 */ mr r24, r3 /* 8016D378 00168FD8 4B E9 F4 71 */ bl func_8000C7E8 /* 8016D37C 00168FDC 3F C0 80 49 */ lis r30, lbl_8048CDB4@ha @@ -95142,7 +95142,7 @@ lbl_8016D588: /* 8016D594 001691F4 90 03 00 10 */ stw r0, 0x10(r3) lbl_8016D598: /* 8016D598 001691F8 39 61 00 30 */ addi r11, r1, 0x30 -/* 8016D59C 001691FC 48 05 9B CD */ bl func_801C7168 +/* 8016D59C 001691FC 48 05 9B CD */ bl _restgpr_24 /* 8016D5A0 00169200 80 01 00 34 */ lwz r0, 0x34(r1) /* 8016D5A4 00169204 7C 08 03 A6 */ mtlr r0 /* 8016D5A8 00169208 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/asm/text_5.s b/asm/text_5.s index c0e4329..b3c93dc 100644 --- a/asm/text_5.s +++ b/asm/text_5.s @@ -4483,7 +4483,7 @@ func_801767CC: /* 801767D0 00172430 7C 08 02 A6 */ mflr r0 /* 801767D4 00172434 90 01 00 34 */ stw r0, 0x34(r1) /* 801767D8 00172438 39 61 00 30 */ addi r11, r1, 0x30 -/* 801767DC 0017243C 48 05 09 41 */ bl func_801C711C +/* 801767DC 0017243C 48 05 09 41 */ bl _savegpr_24 /* 801767E0 00172440 83 ED 96 F0 */ lwz r31, lbl_8063E9B0-_SDA_BASE_(r13) /* 801767E4 00172444 7C 78 1B 78 */ mr r24, r3 /* 801767E8 00172448 7C 99 23 78 */ mr r25, r4 @@ -4535,7 +4535,7 @@ lbl_80176874: /* 80176890 001724F0 38 60 00 00 */ li r3, 0 lbl_80176894: /* 80176894 001724F4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80176898 001724F8 48 05 08 D1 */ bl func_801C7168 +/* 80176898 001724F8 48 05 08 D1 */ bl _restgpr_24 /* 8017689C 001724FC 80 01 00 34 */ lwz r0, 0x34(r1) /* 801768A0 00172500 7C 08 03 A6 */ mtlr r0 /* 801768A4 00172504 38 21 00 30 */ addi r1, r1, 0x30 @@ -6508,7 +6508,7 @@ func_80178354: /* 80178358 00173FB8 7C 08 02 A6 */ mflr r0 /* 8017835C 00173FBC 90 01 00 34 */ stw r0, 0x34(r1) /* 80178360 00173FC0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80178364 00173FC4 48 04 ED B9 */ bl func_801C711C +/* 80178364 00173FC4 48 04 ED B9 */ bl _savegpr_24 /* 80178368 00173FC8 80 03 00 18 */ lwz r0, 0x18(r3) /* 8017836C 00173FCC 7C 79 1B 78 */ mr r25, r3 /* 80178370 00173FD0 7C BA 2B 78 */ mr r26, r5 @@ -6588,7 +6588,7 @@ lbl_80178460: /* 80178478 001740D8 7F 03 C3 78 */ mr r3, r24 lbl_8017847C: /* 8017847C 001740DC 39 61 00 30 */ addi r11, r1, 0x30 -/* 80178480 001740E0 48 04 EC E9 */ bl func_801C7168 +/* 80178480 001740E0 48 04 EC E9 */ bl _restgpr_24 /* 80178484 001740E4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80178488 001740E8 7C 08 03 A6 */ mtlr r0 /* 8017848C 001740EC 38 21 00 30 */ addi r1, r1, 0x30 @@ -9365,7 +9365,7 @@ func_8017AB4C: /* 8017AB50 001767B0 7C 08 02 A6 */ mflr r0 /* 8017AB54 001767B4 90 01 00 34 */ stw r0, 0x34(r1) /* 8017AB58 001767B8 39 61 00 30 */ addi r11, r1, 0x30 -/* 8017AB5C 001767BC 48 04 C5 C1 */ bl func_801C711C +/* 8017AB5C 001767BC 48 04 C5 C1 */ bl _savegpr_24 /* 8017AB60 001767C0 3D 40 80 64 */ lis r10, lbl_8063CE34@ha /* 8017AB64 001767C4 7C 79 1B 78 */ mr r25, r3 /* 8017AB68 001767C8 39 4A CE 34 */ addi r10, r10, lbl_8063CE34@l @@ -9419,7 +9419,7 @@ lbl_8017AC00: /* 8017AC1C 0017687C 7F EA FB 78 */ mr r10, r31 /* 8017AC20 00176880 48 00 00 1D */ bl func_8017AC3C /* 8017AC24 00176884 39 61 00 30 */ addi r11, r1, 0x30 -/* 8017AC28 00176888 48 04 C5 41 */ bl func_801C7168 +/* 8017AC28 00176888 48 04 C5 41 */ bl _restgpr_24 /* 8017AC2C 0017688C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8017AC30 00176890 7C 08 03 A6 */ mtlr r0 /* 8017AC34 00176894 38 21 00 30 */ addi r1, r1, 0x30 @@ -15247,7 +15247,7 @@ func_8017FB58: /* 8017FB5C 0017B7BC 7C 08 02 A6 */ mflr r0 /* 8017FB60 0017B7C0 90 01 00 34 */ stw r0, 0x34(r1) /* 8017FB64 0017B7C4 39 61 00 30 */ addi r11, r1, 0x30 -/* 8017FB68 0017B7C8 48 04 75 B5 */ bl func_801C711C +/* 8017FB68 0017B7C8 48 04 75 B5 */ bl _savegpr_24 /* 8017FB6C 0017B7CC 7C 78 1B 78 */ mr r24, r3 /* 8017FB70 0017B7D0 7C 99 23 78 */ mr r25, r4 /* 8017FB74 0017B7D4 48 22 CC B5 */ bl func_803AC828 @@ -15290,7 +15290,7 @@ lbl_8017FBF8: /* 8017FC00 0017B860 41 80 FF B4 */ blt lbl_8017FBB4 lbl_8017FC04: /* 8017FC04 0017B864 39 61 00 30 */ addi r11, r1, 0x30 -/* 8017FC08 0017B868 48 04 75 61 */ bl func_801C7168 +/* 8017FC08 0017B868 48 04 75 61 */ bl _restgpr_24 /* 8017FC0C 0017B86C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8017FC10 0017B870 7C 08 03 A6 */ mtlr r0 /* 8017FC14 0017B874 38 21 00 30 */ addi r1, r1, 0x30 @@ -16736,7 +16736,7 @@ func_80180ED4: /* 80180ED8 0017CB38 7C 08 02 A6 */ mflr r0 /* 80180EDC 0017CB3C 90 01 00 34 */ stw r0, 0x34(r1) /* 80180EE0 0017CB40 39 61 00 30 */ addi r11, r1, 0x30 -/* 80180EE4 0017CB44 48 04 62 39 */ bl func_801C711C +/* 80180EE4 0017CB44 48 04 62 39 */ bl _savegpr_24 /* 80180EE8 0017CB48 7C 7A 1B 78 */ mr r26, r3 /* 80180EEC 0017CB4C 80 6D 9F 8C */ lwz r3, lbl_8063F24C-_SDA_BASE_(r13) /* 80180EF0 0017CB50 7C 9B 23 78 */ mr r27, r4 @@ -16883,7 +16883,7 @@ lbl_801810D8: /* 801810D8 0017CD38 7F E3 FB 78 */ mr r3, r31 lbl_801810DC: /* 801810DC 0017CD3C 39 61 00 30 */ addi r11, r1, 0x30 -/* 801810E0 0017CD40 48 04 60 89 */ bl func_801C7168 +/* 801810E0 0017CD40 48 04 60 89 */ bl _restgpr_24 /* 801810E4 0017CD44 80 01 00 34 */ lwz r0, 0x34(r1) /* 801810E8 0017CD48 7C 08 03 A6 */ mtlr r0 /* 801810EC 0017CD4C 38 21 00 30 */ addi r1, r1, 0x30 @@ -16895,7 +16895,7 @@ func_801810F4: /* 801810F8 0017CD58 7C 08 02 A6 */ mflr r0 /* 801810FC 0017CD5C 90 01 00 34 */ stw r0, 0x34(r1) /* 80181100 0017CD60 39 61 00 30 */ addi r11, r1, 0x30 -/* 80181104 0017CD64 48 04 60 19 */ bl func_801C711C +/* 80181104 0017CD64 48 04 60 19 */ bl _savegpr_24 /* 80181108 0017CD68 7C 7A 1B 78 */ mr r26, r3 /* 8018110C 0017CD6C 80 6D 9F 8C */ lwz r3, lbl_8063F24C-_SDA_BASE_(r13) /* 80181110 0017CD70 7C 9B 23 78 */ mr r27, r4 @@ -17033,7 +17033,7 @@ lbl_801812D4: /* 801812D4 0017CF34 7F E3 FB 78 */ mr r3, r31 lbl_801812D8: /* 801812D8 0017CF38 39 61 00 30 */ addi r11, r1, 0x30 -/* 801812DC 0017CF3C 48 04 5E 8D */ bl func_801C7168 +/* 801812DC 0017CF3C 48 04 5E 8D */ bl _restgpr_24 /* 801812E0 0017CF40 80 01 00 34 */ lwz r0, 0x34(r1) /* 801812E4 0017CF44 7C 08 03 A6 */ mtlr r0 /* 801812E8 0017CF48 38 21 00 30 */ addi r1, r1, 0x30 @@ -17234,7 +17234,7 @@ func_80181554: /* 80181558 0017D1B8 7C 08 02 A6 */ mflr r0 /* 8018155C 0017D1BC 90 01 00 34 */ stw r0, 0x34(r1) /* 80181560 0017D1C0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80181564 0017D1C4 48 04 5B B9 */ bl func_801C711C +/* 80181564 0017D1C4 48 04 5B B9 */ bl _savegpr_24 /* 80181568 0017D1C8 7C B9 2B 78 */ mr r25, r5 /* 8018156C 0017D1CC 7C 78 1B 78 */ mr r24, r3 /* 80181570 0017D1D0 7C 9F 23 78 */ mr r31, r4 @@ -17345,7 +17345,7 @@ lbl_801816E4: /* 801816E4 0017D344 38 60 00 00 */ li r3, 0 lbl_801816E8: /* 801816E8 0017D348 39 61 00 30 */ addi r11, r1, 0x30 -/* 801816EC 0017D34C 48 04 5A 7D */ bl func_801C7168 +/* 801816EC 0017D34C 48 04 5A 7D */ bl _restgpr_24 /* 801816F0 0017D350 80 01 00 34 */ lwz r0, 0x34(r1) /* 801816F4 0017D354 7C 08 03 A6 */ mtlr r0 /* 801816F8 0017D358 38 21 00 30 */ addi r1, r1, 0x30 @@ -18658,7 +18658,7 @@ func_80182848: /* 8018284C 0017E4AC 7C 08 02 A6 */ mflr r0 /* 80182850 0017E4B0 90 01 00 34 */ stw r0, 0x34(r1) /* 80182854 0017E4B4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80182858 0017E4B8 48 04 48 C5 */ bl func_801C711C +/* 80182858 0017E4B8 48 04 48 C5 */ bl _savegpr_24 /* 8018285C 0017E4BC 7C 78 1B 78 */ mr r24, r3 /* 80182860 0017E4C0 80 6D 9F 8C */ lwz r3, lbl_8063F24C-_SDA_BASE_(r13) /* 80182864 0017E4C4 7C 99 23 78 */ mr r25, r4 @@ -18737,7 +18737,7 @@ lbl_8018296C: /* 8018296C 0017E5CC 38 60 00 00 */ li r3, 0 lbl_80182970: /* 80182970 0017E5D0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80182974 0017E5D4 48 04 47 F5 */ bl func_801C7168 +/* 80182974 0017E5D4 48 04 47 F5 */ bl _restgpr_24 /* 80182978 0017E5D8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8018297C 0017E5DC 7C 08 03 A6 */ mtlr r0 /* 80182980 0017E5E0 38 21 00 30 */ addi r1, r1, 0x30 @@ -19007,7 +19007,7 @@ func_80182D00: /* 80182D04 0017E964 7C 08 02 A6 */ mflr r0 /* 80182D08 0017E968 90 01 00 34 */ stw r0, 0x34(r1) /* 80182D0C 0017E96C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80182D10 0017E970 48 04 44 0D */ bl func_801C711C +/* 80182D10 0017E970 48 04 44 0D */ bl _savegpr_24 /* 80182D14 0017E974 2C 04 00 00 */ cmpwi r4, 0 /* 80182D18 0017E978 7C 7C 1B 78 */ mr r28, r3 /* 80182D1C 0017E97C 7C 9D 23 78 */ mr r29, r4 @@ -19325,7 +19325,7 @@ lbl_80183140: /* 80183150 0017EDB0 38 63 00 04 */ addi r3, r3, 4 lbl_80183154: /* 80183154 0017EDB4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80183158 0017EDB8 48 04 40 11 */ bl func_801C7168 +/* 80183158 0017EDB8 48 04 40 11 */ bl _restgpr_24 /* 8018315C 0017EDBC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80183160 0017EDC0 7C 08 03 A6 */ mtlr r0 /* 80183164 0017EDC4 38 21 00 30 */ addi r1, r1, 0x30 @@ -34173,7 +34173,7 @@ lbl_801900AC: /* 801900C8 0018BD28 7C 08 02 A6 */ mflr r0 /* 801900CC 0018BD2C 90 01 0B 34 */ stw r0, 0xb34(r1) /* 801900D0 0018BD30 39 61 0B 30 */ addi r11, r1, 0xb30 -/* 801900D4 0018BD34 48 03 70 49 */ bl func_801C711C +/* 801900D4 0018BD34 48 03 70 49 */ bl _savegpr_24 /* 801900D8 0018BD38 38 00 00 00 */ li r0, 0 /* 801900DC 0018BD3C 7C 78 1B 78 */ mr r24, r3 /* 801900E0 0018BD40 98 01 00 08 */ stb r0, 8(r1) @@ -34271,7 +34271,7 @@ lbl_80190230: /* 80190230 0018BE90 38 60 00 00 */ li r3, 0 lbl_80190234: /* 80190234 0018BE94 39 61 0B 30 */ addi r11, r1, 0xb30 -/* 80190238 0018BE98 48 03 6F 31 */ bl func_801C7168 +/* 80190238 0018BE98 48 03 6F 31 */ bl _restgpr_24 /* 8019023C 0018BE9C 80 01 0B 34 */ lwz r0, 0xb34(r1) /* 80190240 0018BEA0 7C 08 03 A6 */ mtlr r0 /* 80190244 0018BEA4 38 21 0B 30 */ addi r1, r1, 0xb30 @@ -47822,7 +47822,7 @@ func_8019C0D4: /* 8019C0D8 00197D38 7C 08 02 A6 */ mflr r0 /* 8019C0DC 00197D3C 90 01 00 54 */ stw r0, 0x54(r1) /* 8019C0E0 00197D40 39 61 00 50 */ addi r11, r1, 0x50 -/* 8019C0E4 00197D44 48 02 B0 39 */ bl func_801C711C +/* 8019C0E4 00197D44 48 02 B0 39 */ bl _savegpr_24 /* 8019C0E8 00197D48 7C 78 1B 78 */ mr r24, r3 /* 8019C0EC 00197D4C 7C 99 23 78 */ mr r25, r4 /* 8019C0F0 00197D50 7C BA 2B 78 */ mr r26, r5 @@ -47973,7 +47973,7 @@ lbl_8019C2EC: /* 8019C2EC 00197F4C 7C 83 23 78 */ mr r3, r4 lbl_8019C2F0: /* 8019C2F0 00197F50 39 61 00 50 */ addi r11, r1, 0x50 -/* 8019C2F4 00197F54 48 02 AE 75 */ bl func_801C7168 +/* 8019C2F4 00197F54 48 02 AE 75 */ bl _restgpr_24 /* 8019C2F8 00197F58 80 01 00 54 */ lwz r0, 0x54(r1) /* 8019C2FC 00197F5C 7C 08 03 A6 */ mtlr r0 /* 8019C300 00197F60 38 21 00 50 */ addi r1, r1, 0x50 @@ -47985,7 +47985,7 @@ func_8019C308: /* 8019C30C 00197F6C 7C 08 02 A6 */ mflr r0 /* 8019C310 00197F70 90 01 00 54 */ stw r0, 0x54(r1) /* 8019C314 00197F74 39 61 00 50 */ addi r11, r1, 0x50 -/* 8019C318 00197F78 48 02 AE 05 */ bl func_801C711C +/* 8019C318 00197F78 48 02 AE 05 */ bl _savegpr_24 /* 8019C31C 00197F7C 7C 78 1B 78 */ mr r24, r3 /* 8019C320 00197F80 7C 99 23 78 */ mr r25, r4 /* 8019C324 00197F84 7C BA 2B 78 */ mr r26, r5 @@ -48110,7 +48110,7 @@ lbl_8019C4CC: /* 8019C4CC 0019812C 7F 83 E3 78 */ mr r3, r28 lbl_8019C4D0: /* 8019C4D0 00198130 39 61 00 50 */ addi r11, r1, 0x50 -/* 8019C4D4 00198134 48 02 AC 95 */ bl func_801C7168 +/* 8019C4D4 00198134 48 02 AC 95 */ bl _restgpr_24 /* 8019C4D8 00198138 80 01 00 54 */ lwz r0, 0x54(r1) /* 8019C4DC 0019813C 7C 08 03 A6 */ mtlr r0 /* 8019C4E0 00198140 38 21 00 50 */ addi r1, r1, 0x50 @@ -48122,7 +48122,7 @@ func_8019C4E8: /* 8019C4EC 0019814C 7C 08 02 A6 */ mflr r0 /* 8019C4F0 00198150 90 01 00 54 */ stw r0, 0x54(r1) /* 8019C4F4 00198154 39 61 00 50 */ addi r11, r1, 0x50 -/* 8019C4F8 00198158 48 02 AC 25 */ bl func_801C711C +/* 8019C4F8 00198158 48 02 AC 25 */ bl _savegpr_24 /* 8019C4FC 0019815C 7C 78 1B 78 */ mr r24, r3 /* 8019C500 00198160 7C 99 23 78 */ mr r25, r4 /* 8019C504 00198164 7C BA 2B 78 */ mr r26, r5 @@ -48247,7 +48247,7 @@ lbl_8019C6AC: /* 8019C6AC 0019830C 7F 83 E3 78 */ mr r3, r28 lbl_8019C6B0: /* 8019C6B0 00198310 39 61 00 50 */ addi r11, r1, 0x50 -/* 8019C6B4 00198314 48 02 AA B5 */ bl func_801C7168 +/* 8019C6B4 00198314 48 02 AA B5 */ bl _restgpr_24 /* 8019C6B8 00198318 80 01 00 54 */ lwz r0, 0x54(r1) /* 8019C6BC 0019831C 7C 08 03 A6 */ mtlr r0 /* 8019C6C0 00198320 38 21 00 50 */ addi r1, r1, 0x50 @@ -53696,7 +53696,7 @@ lbl_801A16AC: /* 801A16B0 0019D310 7C 08 02 A6 */ mflr r0 /* 801A16B4 0019D314 90 01 00 34 */ stw r0, 0x34(r1) /* 801A16B8 0019D318 39 61 00 30 */ addi r11, r1, 0x30 -/* 801A16BC 0019D31C 48 02 5A 61 */ bl func_801C711C +/* 801A16BC 0019D31C 48 02 5A 61 */ bl _savegpr_24 /* 801A16C0 0019D320 7C FC 3B 78 */ mr r28, r7 /* 801A16C4 0019D324 7C 78 1B 78 */ mr r24, r3 /* 801A16C8 0019D328 7C 99 23 78 */ mr r25, r4 @@ -53771,7 +53771,7 @@ lbl_801A17BC: /* 801A17BC 0019D41C 38 60 00 01 */ li r3, 1 lbl_801A17C0: /* 801A17C0 0019D420 39 61 00 30 */ addi r11, r1, 0x30 -/* 801A17C4 0019D424 48 02 59 A5 */ bl func_801C7168 +/* 801A17C4 0019D424 48 02 59 A5 */ bl _restgpr_24 /* 801A17C8 0019D428 80 01 00 34 */ lwz r0, 0x34(r1) /* 801A17CC 0019D42C 7C 08 03 A6 */ mtlr r0 /* 801A17D0 0019D430 38 21 00 30 */ addi r1, r1, 0x30 @@ -54178,7 +54178,7 @@ lbl_801A1D38: /* 801A1D54 0019D9B4 7C 08 02 A6 */ mflr r0 /* 801A1D58 0019D9B8 90 01 00 34 */ stw r0, 0x34(r1) /* 801A1D5C 0019D9BC 39 61 00 30 */ addi r11, r1, 0x30 -/* 801A1D60 0019D9C0 48 02 53 BD */ bl func_801C711C +/* 801A1D60 0019D9C0 48 02 53 BD */ bl _savegpr_24 /* 801A1D64 0019D9C4 7C 78 1B 78 */ mr r24, r3 /* 801A1D68 0019D9C8 7C 99 23 78 */ mr r25, r4 /* 801A1D6C 0019D9CC 7C BA 2B 78 */ mr r26, r5 @@ -54238,7 +54238,7 @@ lbl_801A1E34: /* 801A1E34 0019DA94 38 60 00 01 */ li r3, 1 lbl_801A1E38: /* 801A1E38 0019DA98 39 61 00 30 */ addi r11, r1, 0x30 -/* 801A1E3C 0019DA9C 48 02 53 2D */ bl func_801C7168 +/* 801A1E3C 0019DA9C 48 02 53 2D */ bl _restgpr_24 /* 801A1E40 0019DAA0 80 01 00 34 */ lwz r0, 0x34(r1) /* 801A1E44 0019DAA4 7C 08 03 A6 */ mtlr r0 /* 801A1E48 0019DAA8 38 21 00 30 */ addi r1, r1, 0x30 @@ -55504,7 +55504,7 @@ lbl_801A2F48: /* 801A2F64 0019EBC4 7C 08 02 A6 */ mflr r0 /* 801A2F68 0019EBC8 90 01 00 A4 */ stw r0, 0xa4(r1) /* 801A2F6C 0019EBCC 39 61 00 A0 */ addi r11, r1, 0xa0 -/* 801A2F70 0019EBD0 48 02 41 AD */ bl func_801C711C +/* 801A2F70 0019EBD0 48 02 41 AD */ bl _savegpr_24 /* 801A2F74 0019EBD4 7C 78 1B 78 */ mr r24, r3 /* 801A2F78 0019EBD8 7C 99 23 78 */ mr r25, r4 /* 801A2F7C 0019EBDC 7C BD 2B 78 */ mr r29, r5 @@ -55574,7 +55574,7 @@ lbl_801A3060: /* 801A3068 0019ECC8 54 03 0F FE */ srwi r3, r0, 0x1f lbl_801A306C: /* 801A306C 0019ECCC 39 61 00 A0 */ addi r11, r1, 0xa0 -/* 801A3070 0019ECD0 48 02 40 F9 */ bl func_801C7168 +/* 801A3070 0019ECD0 48 02 40 F9 */ bl _restgpr_24 /* 801A3074 0019ECD4 80 01 00 A4 */ lwz r0, 0xa4(r1) /* 801A3078 0019ECD8 7C 08 03 A6 */ mtlr r0 /* 801A307C 0019ECDC 38 21 00 A0 */ addi r1, r1, 0xa0 @@ -58398,7 +58398,7 @@ lbl_801A57F8: /* 801A5834 001A1494 7C 08 02 A6 */ mflr r0 /* 801A5838 001A1498 90 01 00 34 */ stw r0, 0x34(r1) /* 801A583C 001A149C 39 61 00 30 */ addi r11, r1, 0x30 -/* 801A5840 001A14A0 48 02 18 DD */ bl func_801C711C +/* 801A5840 001A14A0 48 02 18 DD */ bl _savegpr_24 /* 801A5844 001A14A4 7C DE 33 78 */ mr r30, r6 /* 801A5848 001A14A8 7C 7D 1B 78 */ mr r29, r3 /* 801A584C 001A14AC 7C 98 23 78 */ mr r24, r4 @@ -58508,7 +58508,7 @@ lbl_801A59BC: /* 801A59C0 001A1620 39 61 00 30 */ addi r11, r1, 0x30 /* 801A59C4 001A1624 7C 00 FB 78 */ or r0, r0, r31 /* 801A59C8 001A1628 54 03 0F FE */ srwi r3, r0, 0x1f -/* 801A59CC 001A162C 48 02 17 9D */ bl func_801C7168 +/* 801A59CC 001A162C 48 02 17 9D */ bl _restgpr_24 /* 801A59D0 001A1630 80 01 00 34 */ lwz r0, 0x34(r1) /* 801A59D4 001A1634 7C 08 03 A6 */ mtlr r0 /* 801A59D8 001A1638 38 21 00 30 */ addi r1, r1, 0x30 @@ -61784,7 +61784,7 @@ lbl_801A884C: /* 801A886C 001A44CC 7C 08 02 A6 */ mflr r0 /* 801A8870 001A44D0 90 01 00 54 */ stw r0, 0x54(r1) /* 801A8874 001A44D4 39 61 00 50 */ addi r11, r1, 0x50 -/* 801A8878 001A44D8 48 01 E8 A5 */ bl func_801C711C +/* 801A8878 001A44D8 48 01 E8 A5 */ bl _savegpr_24 /* 801A887C 001A44DC 7C 78 1B 78 */ mr r24, r3 /* 801A8880 001A44E0 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801A8884 001A44E4 7C 9A 23 78 */ mr r26, r4 @@ -61925,7 +61925,7 @@ lbl_801A8A50: lbl_801A8A70: /* 801A8A70 001A46D0 39 61 00 50 */ addi r11, r1, 0x50 /* 801A8A74 001A46D4 7F 83 E3 78 */ mr r3, r28 -/* 801A8A78 001A46D8 48 01 E6 F1 */ bl func_801C7168 +/* 801A8A78 001A46D8 48 01 E6 F1 */ bl _restgpr_24 /* 801A8A7C 001A46DC 80 01 00 54 */ lwz r0, 0x54(r1) /* 801A8A80 001A46E0 7C 08 03 A6 */ mtlr r0 /* 801A8A84 001A46E4 38 21 00 50 */ addi r1, r1, 0x50 @@ -67707,7 +67707,7 @@ lbl_801ADC7C: /* 801ADC9C 001A98FC 7C 08 02 A6 */ mflr r0 /* 801ADCA0 001A9900 90 01 00 54 */ stw r0, 0x54(r1) /* 801ADCA4 001A9904 39 61 00 50 */ addi r11, r1, 0x50 -/* 801ADCA8 001A9908 48 01 94 75 */ bl func_801C711C +/* 801ADCA8 001A9908 48 01 94 75 */ bl _savegpr_24 /* 801ADCAC 001A990C 7C 79 1B 78 */ mr r25, r3 /* 801ADCB0 001A9910 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801ADCB4 001A9914 7C DE 33 78 */ mr r30, r6 @@ -67804,7 +67804,7 @@ lbl_801ADDC8: lbl_801ADE04: /* 801ADE04 001A9A64 39 61 00 50 */ addi r11, r1, 0x50 /* 801ADE08 001A9A68 7F E3 FB 78 */ mr r3, r31 -/* 801ADE0C 001A9A6C 48 01 93 5D */ bl func_801C7168 +/* 801ADE0C 001A9A6C 48 01 93 5D */ bl _restgpr_24 /* 801ADE10 001A9A70 80 01 00 54 */ lwz r0, 0x54(r1) /* 801ADE14 001A9A74 7C 08 03 A6 */ mtlr r0 /* 801ADE18 001A9A78 38 21 00 50 */ addi r1, r1, 0x50 @@ -69087,7 +69087,7 @@ lbl_801AF004: /* 801AF024 001AAC84 7C 08 02 A6 */ mflr r0 /* 801AF028 001AAC88 90 01 00 74 */ stw r0, 0x74(r1) /* 801AF02C 001AAC8C 39 61 00 70 */ addi r11, r1, 0x70 -/* 801AF030 001AAC90 48 01 80 ED */ bl func_801C711C +/* 801AF030 001AAC90 48 01 80 ED */ bl _savegpr_24 /* 801AF034 001AAC94 7C 78 1B 78 */ mr r24, r3 /* 801AF038 001AAC98 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801AF03C 001AAC9C 7C D9 33 78 */ mr r25, r6 @@ -69169,7 +69169,7 @@ lbl_801AF128: lbl_801AF148: /* 801AF148 001AADA8 39 61 00 70 */ addi r11, r1, 0x70 /* 801AF14C 001AADAC 7F 83 E3 78 */ mr r3, r28 -/* 801AF150 001AADB0 48 01 80 19 */ bl func_801C7168 +/* 801AF150 001AADB0 48 01 80 19 */ bl _restgpr_24 /* 801AF154 001AADB4 80 01 00 74 */ lwz r0, 0x74(r1) /* 801AF158 001AADB8 7C 08 03 A6 */ mtlr r0 /* 801AF15C 001AADBC 38 21 00 70 */ addi r1, r1, 0x70 @@ -71027,7 +71027,7 @@ lbl_801B0B94: /* 801B0BB4 001AC814 7C 08 02 A6 */ mflr r0 /* 801B0BB8 001AC818 90 01 00 54 */ stw r0, 0x54(r1) /* 801B0BBC 001AC81C 39 61 00 50 */ addi r11, r1, 0x50 -/* 801B0BC0 001AC820 48 01 65 5D */ bl func_801C711C +/* 801B0BC0 001AC820 48 01 65 5D */ bl _savegpr_24 /* 801B0BC4 001AC824 7C 7E 1B 78 */ mr r30, r3 /* 801B0BC8 001AC828 7C 9A 23 78 */ mr r26, r4 /* 801B0BCC 001AC82C 7C D8 33 78 */ mr r24, r6 @@ -71130,7 +71130,7 @@ lbl_801B0D18: lbl_801B0D28: /* 801B0D28 001AC988 39 61 00 50 */ addi r11, r1, 0x50 /* 801B0D2C 001AC98C 7F E3 FB 78 */ mr r3, r31 -/* 801B0D30 001AC990 48 01 64 39 */ bl func_801C7168 +/* 801B0D30 001AC990 48 01 64 39 */ bl _restgpr_24 /* 801B0D34 001AC994 80 01 00 54 */ lwz r0, 0x54(r1) /* 801B0D38 001AC998 7C 08 03 A6 */ mtlr r0 /* 801B0D3C 001AC99C 38 21 00 50 */ addi r1, r1, 0x50 @@ -71861,7 +71861,7 @@ lbl_801B1720: /* 801B1740 001AD3A0 7C 08 02 A6 */ mflr r0 /* 801B1744 001AD3A4 90 01 00 54 */ stw r0, 0x54(r1) /* 801B1748 001AD3A8 39 61 00 50 */ addi r11, r1, 0x50 -/* 801B174C 001AD3AC 48 01 59 D1 */ bl func_801C711C +/* 801B174C 001AD3AC 48 01 59 D1 */ bl _savegpr_24 /* 801B1750 001AD3B0 7C 7D 1B 78 */ mr r29, r3 /* 801B1754 001AD3B4 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801B1758 001AD3B8 7F A4 EB 78 */ mr r4, r29 @@ -71994,7 +71994,7 @@ lbl_801B191C: lbl_801B1928: /* 801B1928 001AD588 39 61 00 50 */ addi r11, r1, 0x50 /* 801B192C 001AD58C 7F C3 F3 78 */ mr r3, r30 -/* 801B1930 001AD590 48 01 58 39 */ bl func_801C7168 +/* 801B1930 001AD590 48 01 58 39 */ bl _restgpr_24 /* 801B1934 001AD594 80 01 00 54 */ lwz r0, 0x54(r1) /* 801B1938 001AD598 7C 08 03 A6 */ mtlr r0 /* 801B193C 001AD59C 38 21 00 50 */ addi r1, r1, 0x50 @@ -72069,7 +72069,7 @@ lbl_801B1A1C: /* 801B1A3C 001AD69C 7C 08 02 A6 */ mflr r0 /* 801B1A40 001AD6A0 90 01 00 74 */ stw r0, 0x74(r1) /* 801B1A44 001AD6A4 39 61 00 70 */ addi r11, r1, 0x70 -/* 801B1A48 001AD6A8 48 01 56 D5 */ bl func_801C711C +/* 801B1A48 001AD6A8 48 01 56 D5 */ bl _savegpr_24 /* 801B1A4C 001AD6AC 3B E0 00 00 */ li r31, 0 /* 801B1A50 001AD6B0 7C 7D 1B 78 */ mr r29, r3 /* 801B1A54 001AD6B4 B3 E1 00 08 */ sth r31, 8(r1) @@ -72215,7 +72215,7 @@ lbl_801B1C34: lbl_801B1C40: /* 801B1C40 001AD8A0 39 61 00 70 */ addi r11, r1, 0x70 /* 801B1C44 001AD8A4 7F E3 FB 78 */ mr r3, r31 -/* 801B1C48 001AD8A8 48 01 55 21 */ bl func_801C7168 +/* 801B1C48 001AD8A8 48 01 55 21 */ bl _restgpr_24 /* 801B1C4C 001AD8AC 80 01 00 74 */ lwz r0, 0x74(r1) /* 801B1C50 001AD8B0 7C 08 03 A6 */ mtlr r0 /* 801B1C54 001AD8B4 38 21 00 70 */ addi r1, r1, 0x70 @@ -74929,7 +74929,7 @@ lbl_801B426C: /* 801B428C 001AFEEC 7C 08 02 A6 */ mflr r0 /* 801B4290 001AFEF0 90 01 00 74 */ stw r0, 0x74(r1) /* 801B4294 001AFEF4 39 61 00 70 */ addi r11, r1, 0x70 -/* 801B4298 001AFEF8 48 01 2E 85 */ bl func_801C711C +/* 801B4298 001AFEF8 48 01 2E 85 */ bl _savegpr_24 /* 801B429C 001AFEFC 7C 7B 1B 78 */ mr r27, r3 /* 801B42A0 001AFF00 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801B42A4 001AFF04 7C 9C 23 78 */ mr r28, r4 @@ -75116,7 +75116,7 @@ lbl_801B450C: lbl_801B452C: /* 801B452C 001B018C 39 61 00 70 */ addi r11, r1, 0x70 /* 801B4530 001B0190 7F A3 EB 78 */ mr r3, r29 -/* 801B4534 001B0194 48 01 2C 35 */ bl func_801C7168 +/* 801B4534 001B0194 48 01 2C 35 */ bl _restgpr_24 /* 801B4538 001B0198 80 01 00 74 */ lwz r0, 0x74(r1) /* 801B453C 001B019C 7C 08 03 A6 */ mtlr r0 /* 801B4540 001B01A0 38 21 00 70 */ addi r1, r1, 0x70 @@ -75851,7 +75851,7 @@ lbl_801B4F5C: /* 801B4F7C 001B0BDC 7C 08 02 A6 */ mflr r0 /* 801B4F80 001B0BE0 90 01 00 74 */ stw r0, 0x74(r1) /* 801B4F84 001B0BE4 39 61 00 70 */ addi r11, r1, 0x70 -/* 801B4F88 001B0BE8 48 01 21 95 */ bl func_801C711C +/* 801B4F88 001B0BE8 48 01 21 95 */ bl _savegpr_24 /* 801B4F8C 001B0BEC 7C 7B 1B 78 */ mr r27, r3 /* 801B4F90 001B0BF0 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801B4F94 001B0BF4 7C 9C 23 78 */ mr r28, r4 @@ -76048,7 +76048,7 @@ lbl_801B5224: lbl_801B5244: /* 801B5244 001B0EA4 39 61 00 70 */ addi r11, r1, 0x70 /* 801B5248 001B0EA8 7F A3 EB 78 */ mr r3, r29 -/* 801B524C 001B0EAC 48 01 1F 1D */ bl func_801C7168 +/* 801B524C 001B0EAC 48 01 1F 1D */ bl _restgpr_24 /* 801B5250 001B0EB0 80 01 00 74 */ lwz r0, 0x74(r1) /* 801B5254 001B0EB4 7C 08 03 A6 */ mtlr r0 /* 801B5258 001B0EB8 38 21 00 70 */ addi r1, r1, 0x70 @@ -76847,7 +76847,7 @@ lbl_801B5D8C: /* 801B5DAC 001B1A0C 7C 08 02 A6 */ mflr r0 /* 801B5DB0 001B1A10 90 01 00 54 */ stw r0, 0x54(r1) /* 801B5DB4 001B1A14 39 61 00 50 */ addi r11, r1, 0x50 -/* 801B5DB8 001B1A18 48 01 13 65 */ bl func_801C711C +/* 801B5DB8 001B1A18 48 01 13 65 */ bl _savegpr_24 /* 801B5DBC 001B1A1C 7C 7E 1B 78 */ mr r30, r3 /* 801B5DC0 001B1A20 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801B5DC4 001B1A24 7C 98 23 78 */ mr r24, r4 @@ -76979,7 +76979,7 @@ lbl_801B5F7C: lbl_801B5F88: /* 801B5F88 001B1BE8 39 61 00 50 */ addi r11, r1, 0x50 /* 801B5F8C 001B1BEC 7F E3 FB 78 */ mr r3, r31 -/* 801B5F90 001B1BF0 48 01 11 D9 */ bl func_801C7168 +/* 801B5F90 001B1BF0 48 01 11 D9 */ bl _restgpr_24 /* 801B5F94 001B1BF4 80 01 00 54 */ lwz r0, 0x54(r1) /* 801B5F98 001B1BF8 7C 08 03 A6 */ mtlr r0 /* 801B5F9C 001B1BFC 38 21 00 50 */ addi r1, r1, 0x50 @@ -76988,7 +76988,7 @@ lbl_801B5F88: /* 801B5FA8 001B1C08 7C 08 02 A6 */ mflr r0 /* 801B5FAC 001B1C0C 90 01 00 54 */ stw r0, 0x54(r1) /* 801B5FB0 001B1C10 39 61 00 50 */ addi r11, r1, 0x50 -/* 801B5FB4 001B1C14 48 01 11 69 */ bl func_801C711C +/* 801B5FB4 001B1C14 48 01 11 69 */ bl _savegpr_24 /* 801B5FB8 001B1C18 7C 7E 1B 78 */ mr r30, r3 /* 801B5FBC 001B1C1C 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801B5FC0 001B1C20 7C 98 23 78 */ mr r24, r4 @@ -77120,7 +77120,7 @@ lbl_801B6178: lbl_801B6184: /* 801B6184 001B1DE4 39 61 00 50 */ addi r11, r1, 0x50 /* 801B6188 001B1DE8 7F E3 FB 78 */ mr r3, r31 -/* 801B618C 001B1DEC 48 01 0F DD */ bl func_801C7168 +/* 801B618C 001B1DEC 48 01 0F DD */ bl _restgpr_24 /* 801B6190 001B1DF0 80 01 00 54 */ lwz r0, 0x54(r1) /* 801B6194 001B1DF4 7C 08 03 A6 */ mtlr r0 /* 801B6198 001B1DF8 38 21 00 50 */ addi r1, r1, 0x50 @@ -77332,7 +77332,7 @@ lbl_801B6478: /* 801B6498 001B20F8 7C 08 02 A6 */ mflr r0 /* 801B649C 001B20FC 90 01 00 74 */ stw r0, 0x74(r1) /* 801B64A0 001B2100 39 61 00 70 */ addi r11, r1, 0x70 -/* 801B64A4 001B2104 48 01 0C 79 */ bl func_801C711C +/* 801B64A4 001B2104 48 01 0C 79 */ bl _savegpr_24 /* 801B64A8 001B2108 7C 7D 1B 78 */ mr r29, r3 /* 801B64AC 001B210C 7C DE 33 78 */ mr r30, r6 /* 801B64B0 001B2110 3B E0 00 00 */ li r31, 0 @@ -77479,7 +77479,7 @@ lbl_801B6688: lbl_801B66A8: /* 801B66A8 001B2308 39 61 00 70 */ addi r11, r1, 0x70 /* 801B66AC 001B230C 7F E3 FB 78 */ mr r3, r31 -/* 801B66B0 001B2310 48 01 0A B9 */ bl func_801C7168 +/* 801B66B0 001B2310 48 01 0A B9 */ bl _restgpr_24 /* 801B66B4 001B2314 80 01 00 74 */ lwz r0, 0x74(r1) /* 801B66B8 001B2318 7C 08 03 A6 */ mtlr r0 /* 801B66BC 001B231C 38 21 00 70 */ addi r1, r1, 0x70 @@ -79502,7 +79502,7 @@ lbl_801B8338: /* 801B8358 001B3FB8 7C 08 02 A6 */ mflr r0 /* 801B835C 001B3FBC 90 01 00 54 */ stw r0, 0x54(r1) /* 801B8360 001B3FC0 39 61 00 50 */ addi r11, r1, 0x50 -/* 801B8364 001B3FC4 48 00 ED B9 */ bl func_801C711C +/* 801B8364 001B3FC4 48 00 ED B9 */ bl _savegpr_24 /* 801B8368 001B3FC8 7C 7E 1B 78 */ mr r30, r3 /* 801B836C 001B3FCC 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801B8370 001B3FD0 7F C4 F3 78 */ mr r4, r30 @@ -79599,7 +79599,7 @@ lbl_801B8488: lbl_801B84BC: /* 801B84BC 001B411C 39 61 00 50 */ addi r11, r1, 0x50 /* 801B84C0 001B4120 7F E3 FB 78 */ mr r3, r31 -/* 801B84C4 001B4124 48 00 EC A5 */ bl func_801C7168 +/* 801B84C4 001B4124 48 00 EC A5 */ bl _restgpr_24 /* 801B84C8 001B4128 80 01 00 54 */ lwz r0, 0x54(r1) /* 801B84CC 001B412C 7C 08 03 A6 */ mtlr r0 /* 801B84D0 001B4130 38 21 00 50 */ addi r1, r1, 0x50 @@ -80366,7 +80366,7 @@ lbl_801B8FB8: /* 801B8FD8 001B4C38 7C 08 02 A6 */ mflr r0 /* 801B8FDC 001B4C3C 90 01 00 74 */ stw r0, 0x74(r1) /* 801B8FE0 001B4C40 39 61 00 70 */ addi r11, r1, 0x70 -/* 801B8FE4 001B4C44 48 00 E1 39 */ bl func_801C711C +/* 801B8FE4 001B4C44 48 00 E1 39 */ bl _savegpr_24 /* 801B8FE8 001B4C48 3B E0 00 00 */ li r31, 0 /* 801B8FEC 001B4C4C 7C 7D 1B 78 */ mr r29, r3 /* 801B8FF0 001B4C50 B3 E1 00 08 */ sth r31, 8(r1) @@ -80495,7 +80495,7 @@ lbl_801B919C: lbl_801B91A8: /* 801B91A8 001B4E08 39 61 00 70 */ addi r11, r1, 0x70 /* 801B91AC 001B4E0C 7F E3 FB 78 */ mr r3, r31 -/* 801B91B0 001B4E10 48 00 DF B9 */ bl func_801C7168 +/* 801B91B0 001B4E10 48 00 DF B9 */ bl _restgpr_24 /* 801B91B4 001B4E14 80 01 00 74 */ lwz r0, 0x74(r1) /* 801B91B8 001B4E18 7C 08 03 A6 */ mtlr r0 /* 801B91BC 001B4E1C 38 21 00 70 */ addi r1, r1, 0x70 @@ -81765,7 +81765,7 @@ lbl_801BA3A8: /* 801BA3C8 001B6028 7C 08 02 A6 */ mflr r0 /* 801BA3CC 001B602C 90 01 00 54 */ stw r0, 0x54(r1) /* 801BA3D0 001B6030 39 61 00 50 */ addi r11, r1, 0x50 -/* 801BA3D4 001B6034 48 00 CD 49 */ bl func_801C711C +/* 801BA3D4 001B6034 48 00 CD 49 */ bl _savegpr_24 /* 801BA3D8 001B6038 7C 7D 1B 78 */ mr r29, r3 /* 801BA3DC 001B603C 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801BA3E0 001B6040 7C 98 23 78 */ mr r24, r4 @@ -81928,7 +81928,7 @@ lbl_801BA608: lbl_801BA618: /* 801BA618 001B6278 39 61 00 50 */ addi r11, r1, 0x50 /* 801BA61C 001B627C 7F E3 FB 78 */ mr r3, r31 -/* 801BA620 001B6280 48 00 CB 49 */ bl func_801C7168 +/* 801BA620 001B6280 48 00 CB 49 */ bl _restgpr_24 /* 801BA624 001B6284 80 01 00 54 */ lwz r0, 0x54(r1) /* 801BA628 001B6288 7C 08 03 A6 */ mtlr r0 /* 801BA62C 001B628C 38 21 00 50 */ addi r1, r1, 0x50 @@ -83605,7 +83605,7 @@ lbl_801BBD9C: /* 801BBDC8 001B7A28 7C 08 02 A6 */ mflr r0 /* 801BBDCC 001B7A2C 90 01 00 74 */ stw r0, 0x74(r1) /* 801BBDD0 001B7A30 39 61 00 70 */ addi r11, r1, 0x70 -/* 801BBDD4 001B7A34 48 00 B3 49 */ bl func_801C711C +/* 801BBDD4 001B7A34 48 00 B3 49 */ bl _savegpr_24 /* 801BBDD8 001B7A38 3B E0 00 00 */ li r31, 0 /* 801BBDDC 001B7A3C 7C 7D 1B 78 */ mr r29, r3 /* 801BBDE0 001B7A40 B3 E1 00 08 */ sth r31, 8(r1) @@ -83741,7 +83741,7 @@ lbl_801BBF80: lbl_801BBFB4: /* 801BBFB4 001B7C14 39 61 00 70 */ addi r11, r1, 0x70 /* 801BBFB8 001B7C18 7F E3 FB 78 */ mr r3, r31 -/* 801BBFBC 001B7C1C 48 00 B1 AD */ bl func_801C7168 +/* 801BBFBC 001B7C1C 48 00 B1 AD */ bl _restgpr_24 /* 801BBFC0 001B7C20 80 01 00 74 */ lwz r0, 0x74(r1) /* 801BBFC4 001B7C24 7C 08 03 A6 */ mtlr r0 /* 801BBFC8 001B7C28 38 21 00 70 */ addi r1, r1, 0x70 @@ -83750,7 +83750,7 @@ lbl_801BBFB4: /* 801BBFD4 001B7C34 7C 08 02 A6 */ mflr r0 /* 801BBFD8 001B7C38 90 01 00 74 */ stw r0, 0x74(r1) /* 801BBFDC 001B7C3C 39 61 00 70 */ addi r11, r1, 0x70 -/* 801BBFE0 001B7C40 48 00 B1 3D */ bl func_801C711C +/* 801BBFE0 001B7C40 48 00 B1 3D */ bl _savegpr_24 /* 801BBFE4 001B7C44 7C 78 1B 78 */ mr r24, r3 /* 801BBFE8 001B7C48 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801BBFEC 001B7C4C 7C 99 23 78 */ mr r25, r4 @@ -83850,7 +83850,7 @@ lbl_801BC124: lbl_801BC13C: /* 801BC13C 001B7D9C 39 61 00 70 */ addi r11, r1, 0x70 /* 801BC140 001B7DA0 7F 83 E3 78 */ mr r3, r28 -/* 801BC144 001B7DA4 48 00 B0 25 */ bl func_801C7168 +/* 801BC144 001B7DA4 48 00 B0 25 */ bl _restgpr_24 /* 801BC148 001B7DA8 80 01 00 74 */ lwz r0, 0x74(r1) /* 801BC14C 001B7DAC 7C 08 03 A6 */ mtlr r0 /* 801BC150 001B7DB0 38 21 00 70 */ addi r1, r1, 0x70 @@ -84823,7 +84823,7 @@ lbl_801BCEDC: /* 801BCEFC 001B8B5C 7C 08 02 A6 */ mflr r0 /* 801BCF00 001B8B60 90 01 00 74 */ stw r0, 0x74(r1) /* 801BCF04 001B8B64 39 61 00 70 */ addi r11, r1, 0x70 -/* 801BCF08 001B8B68 48 00 A2 15 */ bl func_801C711C +/* 801BCF08 001B8B68 48 00 A2 15 */ bl _savegpr_24 /* 801BCF0C 001B8B6C 7C 7E 1B 78 */ mr r30, r3 /* 801BCF10 001B8B70 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801BCF14 001B8B74 7C 9F 23 78 */ mr r31, r4 @@ -84972,7 +84972,7 @@ lbl_801BD100: lbl_801BD118: /* 801BD118 001B8D78 39 61 00 70 */ addi r11, r1, 0x70 /* 801BD11C 001B8D7C 7F 43 D3 78 */ mr r3, r26 -/* 801BD120 001B8D80 48 00 A0 49 */ bl func_801C7168 +/* 801BD120 001B8D80 48 00 A0 49 */ bl _restgpr_24 /* 801BD124 001B8D84 80 01 00 74 */ lwz r0, 0x74(r1) /* 801BD128 001B8D88 7C 08 03 A6 */ mtlr r0 /* 801BD12C 001B8D8C 38 21 00 70 */ addi r1, r1, 0x70 @@ -84981,7 +84981,7 @@ lbl_801BD118: /* 801BD138 001B8D98 7C 08 02 A6 */ mflr r0 /* 801BD13C 001B8D9C 90 01 00 94 */ stw r0, 0x94(r1) /* 801BD140 001B8DA0 39 61 00 90 */ addi r11, r1, 0x90 -/* 801BD144 001B8DA4 48 00 9F D9 */ bl func_801C711C +/* 801BD144 001B8DA4 48 00 9F D9 */ bl _savegpr_24 /* 801BD148 001B8DA8 7C 7E 1B 78 */ mr r30, r3 /* 801BD14C 001B8DAC 7C B8 2B 78 */ mr r24, r5 /* 801BD150 001B8DB0 7C DF 33 78 */ mr r31, r6 @@ -85131,7 +85131,7 @@ lbl_801BD350: lbl_801BD360: /* 801BD360 001B8FC0 39 61 00 90 */ addi r11, r1, 0x90 /* 801BD364 001B8FC4 7F 43 D3 78 */ mr r3, r26 -/* 801BD368 001B8FC8 48 00 9E 01 */ bl func_801C7168 +/* 801BD368 001B8FC8 48 00 9E 01 */ bl _restgpr_24 /* 801BD36C 001B8FCC 80 01 00 94 */ lwz r0, 0x94(r1) /* 801BD370 001B8FD0 7C 08 03 A6 */ mtlr r0 /* 801BD374 001B8FD4 38 21 00 90 */ addi r1, r1, 0x90 @@ -86115,7 +86115,7 @@ lbl_801BE158: /* 801BE178 001B9DD8 7C 08 02 A6 */ mflr r0 /* 801BE17C 001B9DDC 90 01 00 74 */ stw r0, 0x74(r1) /* 801BE180 001B9DE0 39 61 00 70 */ addi r11, r1, 0x70 -/* 801BE184 001B9DE4 48 00 8F 99 */ bl func_801C711C +/* 801BE184 001B9DE4 48 00 8F 99 */ bl _savegpr_24 /* 801BE188 001B9DE8 7C 7F 1B 78 */ mr r31, r3 /* 801BE18C 001B9DEC 80 6D 9F 88 */ lwz r3, lbl_8063F248-_SDA_BASE_(r13) /* 801BE190 001B9DF0 7C 98 23 78 */ mr r24, r4 @@ -86226,7 +86226,7 @@ lbl_801BE2F0: lbl_801BE308: /* 801BE308 001B9F68 39 61 00 70 */ addi r11, r1, 0x70 /* 801BE30C 001B9F6C 7F 63 DB 78 */ mr r3, r27 -/* 801BE310 001B9F70 48 00 8E 59 */ bl func_801C7168 +/* 801BE310 001B9F70 48 00 8E 59 */ bl _restgpr_24 /* 801BE314 001B9F74 80 01 00 74 */ lwz r0, 0x74(r1) /* 801BE318 001B9F78 7C 08 03 A6 */ mtlr r0 /* 801BE31C 001B9F7C 38 21 00 70 */ addi r1, r1, 0x70 @@ -87879,7 +87879,7 @@ func_801BF9AC: /* 801BF9B0 001BB610 7C 08 02 A6 */ mflr r0 /* 801BF9B4 001BB614 90 01 00 34 */ stw r0, 0x34(r1) /* 801BF9B8 001BB618 39 61 00 30 */ addi r11, r1, 0x30 -/* 801BF9BC 001BB61C 48 00 77 61 */ bl func_801C711C +/* 801BF9BC 001BB61C 48 00 77 61 */ bl _savegpr_24 /* 801BF9C0 001BB620 88 E2 90 F0 */ lbz r7, lbl_806416F0-_SDA2_BASE_(r2) /* 801BF9C4 001BB624 7C 78 1B 78 */ mr r24, r3 /* 801BF9C8 001BB628 88 C2 90 F1 */ lbz r6, lbl_806416F1-_SDA2_BASE_(r2) @@ -87921,7 +87921,7 @@ lbl_801BFA38: /* 801BFA4C 001BB6AC 7C 03 00 50 */ subf r0, r3, r0 /* 801BFA50 001BB6B0 39 61 00 30 */ addi r11, r1, 0x30 /* 801BFA54 001BB6B4 54 03 0F FE */ srwi r3, r0, 0x1f -/* 801BFA58 001BB6B8 48 00 77 11 */ bl func_801C7168 +/* 801BFA58 001BB6B8 48 00 77 11 */ bl _restgpr_24 /* 801BFA5C 001BB6BC 80 01 00 34 */ lwz r0, 0x34(r1) /* 801BFA60 001BB6C0 7C 08 03 A6 */ mtlr r0 /* 801BFA64 001BB6C4 38 21 00 30 */ addi r1, r1, 0x30 @@ -88652,7 +88652,7 @@ func_801C0420: /* 801C0424 001BC084 7C 08 02 A6 */ mflr r0 /* 801C0428 001BC088 90 01 00 34 */ stw r0, 0x34(r1) /* 801C042C 001BC08C 39 61 00 30 */ addi r11, r1, 0x30 -/* 801C0430 001BC090 48 00 6C ED */ bl func_801C711C +/* 801C0430 001BC090 48 00 6C ED */ bl _savegpr_24 /* 801C0434 001BC094 80 CD 9F 8C */ lwz r6, lbl_8063F24C-_SDA_BASE_(r13) /* 801C0438 001BC098 7C 78 1B 78 */ mr r24, r3 /* 801C043C 001BC09C 7C 99 23 78 */ mr r25, r4 @@ -88699,7 +88699,7 @@ lbl_801C04C0: /* 801C04C4 001BC124 28 1B 00 02 */ cmplwi r27, 2 /* 801C04C8 001BC128 41 80 FF A0 */ blt lbl_801C0468 /* 801C04CC 001BC12C 39 61 00 30 */ addi r11, r1, 0x30 -/* 801C04D0 001BC130 48 00 6C 99 */ bl func_801C7168 +/* 801C04D0 001BC130 48 00 6C 99 */ bl _restgpr_24 /* 801C04D4 001BC134 80 01 00 34 */ lwz r0, 0x34(r1) /* 801C04D8 001BC138 7C 08 03 A6 */ mtlr r0 /* 801C04DC 001BC13C 38 21 00 30 */ addi r1, r1, 0x30 @@ -97258,8 +97258,8 @@ func_801C7114: _savegpr_23: /* 801C7118 001C2D78 92 EB FF DC */ stw r23, -0x24(r11) -.global func_801C711C -func_801C711C: +.global _savegpr_24 +_savegpr_24: /* 801C711C 001C2D7C 93 0B FF E0 */ stw r24, -0x20(r11) .global func_801C7120 @@ -97325,8 +97325,8 @@ func_801C7160: _restgpr_23: /* 801C7164 001C2DC4 82 EB FF DC */ lwz r23, -0x24(r11) -.global func_801C7168 -func_801C7168: +.global _restgpr_24 +_restgpr_24: /* 801C7168 001C2DC8 83 0B FF E0 */ lwz r24, -0x20(r11) .global func_801C716C @@ -100956,8 +100956,8 @@ lbl_801CA260: /* 801CA26C 001C5ECC 38 21 00 30 */ addi r1, r1, 0x30 /* 801CA270 001C5ED0 4E 80 00 20 */ blr -.global func_801CA274 -func_801CA274: +.global memmove +memmove: /* 801CA274 001C5ED4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 801CA278 001C5ED8 7C 08 02 A6 */ mflr r0 /* 801CA27C 001C5EDC 7C 66 22 78 */ xor r6, r3, r4 diff --git a/asm/text_6.s b/asm/text_6.s index 31a179a..4904fec 100644 --- a/asm/text_6.s +++ b/asm/text_6.s @@ -2652,8 +2652,8 @@ lbl_801CCBB8: /* 801CCBC4 001C8824 38 21 00 A0 */ addi r1, r1, 0xa0 /* 801CCBC8 001C8828 4E 80 00 20 */ blr -.global func_801CCBCC -func_801CCBCC: +.global qsort +qsort: /* 801CCBCC 001C882C 94 21 FF C0 */ stwu r1, -0x40(r1) /* 801CCBD0 001C8830 7C 08 02 A6 */ mflr r0 /* 801CCBD4 001C8834 28 04 00 02 */ cmplwi r4, 2 @@ -22011,7 +22011,7 @@ lbl_801DD294: /* 801DD298 001D8EF8 7C 08 02 A6 */ mflr r0 /* 801DD29C 001D8EFC 90 01 00 C4 */ stw r0, 0xc4(r1) /* 801DD2A0 001D8F00 39 61 00 C0 */ addi r11, r1, 0xc0 -/* 801DD2A4 001D8F04 4B FE 9E 79 */ bl func_801C711C +/* 801DD2A4 001D8F04 4B FE 9E 79 */ bl _savegpr_24 /* 801DD2A8 001D8F08 7C 78 1B 78 */ mr r24, r3 /* 801DD2AC 001D8F0C 7C 99 23 78 */ mr r25, r4 /* 801DD2B0 001D8F10 4B FF FC 05 */ bl func_801DCEB4 @@ -22225,7 +22225,7 @@ lbl_801DD584: /* 801DD58C 001D91EC 98 1D 00 00 */ stb r0, 0(r29) lbl_801DD590: /* 801DD590 001D91F0 39 61 00 C0 */ addi r11, r1, 0xc0 -/* 801DD594 001D91F4 4B FE 9B D5 */ bl func_801C7168 +/* 801DD594 001D91F4 4B FE 9B D5 */ bl _restgpr_24 /* 801DD598 001D91F8 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 801DD59C 001D91FC 7C 08 03 A6 */ mtlr r0 /* 801DD5A0 001D9200 38 21 00 C0 */ addi r1, r1, 0xc0 @@ -32949,7 +32949,7 @@ func_801E6BF8: /* 801E6BFC 001E285C 7C 08 02 A6 */ mflr r0 /* 801E6C00 001E2860 90 01 00 34 */ stw r0, 0x34(r1) /* 801E6C04 001E2864 39 61 00 30 */ addi r11, r1, 0x30 -/* 801E6C08 001E2868 4B FE 05 15 */ bl func_801C711C +/* 801E6C08 001E2868 4B FE 05 15 */ bl _savegpr_24 /* 801E6C0C 001E286C 7C 9B 23 78 */ mr r27, r4 /* 801E6C10 001E2870 80 84 00 84 */ lwz r4, 0x84(r4) /* 801E6C14 001E2874 7C 7A 1B 78 */ mr r26, r3 @@ -33100,7 +33100,7 @@ lbl_801E6E20: lbl_801E6E28: /* 801E6E28 001E2A88 39 61 00 30 */ addi r11, r1, 0x30 /* 801E6E2C 001E2A8C 7F 43 D3 78 */ mr r3, r26 -/* 801E6E30 001E2A90 4B FE 03 39 */ bl func_801C7168 +/* 801E6E30 001E2A90 4B FE 03 39 */ bl _restgpr_24 /* 801E6E34 001E2A94 80 01 00 34 */ lwz r0, 0x34(r1) /* 801E6E38 001E2A98 7C 08 03 A6 */ mtlr r0 /* 801E6E3C 001E2A9C 38 21 00 30 */ addi r1, r1, 0x30 @@ -33555,7 +33555,7 @@ func_801E74B0: /* 801E74B4 001E3114 7C 08 02 A6 */ mflr r0 /* 801E74B8 001E3118 90 01 00 34 */ stw r0, 0x34(r1) /* 801E74BC 001E311C 39 61 00 30 */ addi r11, r1, 0x30 -/* 801E74C0 001E3120 4B FD FC 5D */ bl func_801C711C +/* 801E74C0 001E3120 4B FD FC 5D */ bl _savegpr_24 /* 801E74C4 001E3124 88 04 00 00 */ lbz r0, 0(r4) /* 801E74C8 001E3128 7C 78 1B 78 */ mr r24, r3 /* 801E74CC 001E312C 7C 99 23 78 */ mr r25, r4 @@ -34265,7 +34265,7 @@ lbl_801E7F80: /* 801E7F88 001E3BE8 98 18 00 1F */ stb r0, 0x1f(r24) lbl_801E7F8C: /* 801E7F8C 001E3BEC 39 61 00 30 */ addi r11, r1, 0x30 -/* 801E7F90 001E3BF0 4B FD F1 D9 */ bl func_801C7168 +/* 801E7F90 001E3BF0 4B FD F1 D9 */ bl _restgpr_24 /* 801E7F94 001E3BF4 80 01 00 34 */ lwz r0, 0x34(r1) /* 801E7F98 001E3BF8 7C 08 03 A6 */ mtlr r0 /* 801E7F9C 001E3BFC 38 21 00 30 */ addi r1, r1, 0x30 @@ -55633,7 +55633,7 @@ func_801FAB0C: /* 801FAB10 001F6770 7C 08 02 A6 */ mflr r0 /* 801FAB14 001F6774 90 01 00 34 */ stw r0, 0x34(r1) /* 801FAB18 001F6778 39 61 00 30 */ addi r11, r1, 0x30 -/* 801FAB1C 001F677C 4B FC C6 01 */ bl func_801C711C +/* 801FAB1C 001F677C 4B FC C6 01 */ bl _savegpr_24 /* 801FAB20 001F6780 83 C3 00 10 */ lwz r30, 0x10(r3) /* 801FAB24 001F6784 7C 78 1B 78 */ mr r24, r3 /* 801FAB28 001F6788 3B A0 00 00 */ li r29, 0 @@ -55673,7 +55673,7 @@ lbl_801FAB90: /* 801FAB98 001F67F8 7C 03 00 40 */ cmplw r3, r0 /* 801FAB9C 001F67FC 41 80 FF 94 */ blt lbl_801FAB30 /* 801FABA0 001F6800 39 61 00 30 */ addi r11, r1, 0x30 -/* 801FABA4 001F6804 4B FC C5 C5 */ bl func_801C7168 +/* 801FABA4 001F6804 4B FC C5 C5 */ bl _restgpr_24 /* 801FABA8 001F6808 80 01 00 34 */ lwz r0, 0x34(r1) /* 801FABAC 001F680C 7C 08 03 A6 */ mtlr r0 /* 801FABB0 001F6810 38 21 00 30 */ addi r1, r1, 0x30 @@ -65519,7 +65519,7 @@ func_80203A68: /* 80203A6C 001FF6CC 7C 08 02 A6 */ mflr r0 /* 80203A70 001FF6D0 90 01 00 34 */ stw r0, 0x34(r1) /* 80203A74 001FF6D4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80203A78 001FF6D8 4B FC 36 A5 */ bl func_801C711C +/* 80203A78 001FF6D8 4B FC 36 A5 */ bl _savegpr_24 /* 80203A7C 001FF6DC 88 E5 00 01 */ lbz r7, 1(r5) /* 80203A80 001FF6E0 7C 7A 1B 78 */ mr r26, r3 /* 80203A84 001FF6E4 88 05 00 00 */ lbz r0, 0(r5) @@ -65619,7 +65619,7 @@ lbl_80203BD8: /* 80203BE0 001FF840 38 60 00 00 */ li r3, 0 lbl_80203BE4: /* 80203BE4 001FF844 39 61 00 30 */ addi r11, r1, 0x30 -/* 80203BE8 001FF848 4B FC 35 81 */ bl func_801C7168 +/* 80203BE8 001FF848 4B FC 35 81 */ bl _restgpr_24 /* 80203BEC 001FF84C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80203BF0 001FF850 7C 08 03 A6 */ mtlr r0 /* 80203BF4 001FF854 38 21 00 30 */ addi r1, r1, 0x30 @@ -73313,7 +73313,7 @@ func_8020A6B4: /* 8020A6B8 00206318 7C 08 02 A6 */ mflr r0 /* 8020A6BC 0020631C 90 01 00 34 */ stw r0, 0x34(r1) /* 8020A6C0 00206320 39 61 00 30 */ addi r11, r1, 0x30 -/* 8020A6C4 00206324 4B FB CA 59 */ bl func_801C711C +/* 8020A6C4 00206324 4B FB CA 59 */ bl _savegpr_24 /* 8020A6C8 00206328 90 83 00 FC */ stw r4, 0xfc(r3) /* 8020A6CC 0020632C 3F 60 80 42 */ lis r27, lbl_80423948@ha /* 8020A6D0 00206330 3F 80 80 42 */ lis r28, lbl_80423A48@ha @@ -73516,7 +73516,7 @@ lbl_8020A978: /* 8020A978 002065D8 93 9D 01 04 */ stw r28, 0x104(r29) lbl_8020A97C: /* 8020A97C 002065DC 39 61 00 30 */ addi r11, r1, 0x30 -/* 8020A980 002065E0 4B FB C7 E9 */ bl func_801C7168 +/* 8020A980 002065E0 4B FB C7 E9 */ bl _restgpr_24 /* 8020A984 002065E4 80 01 00 34 */ lwz r0, 0x34(r1) /* 8020A988 002065E8 7C 08 03 A6 */ mtlr r0 /* 8020A98C 002065EC 38 21 00 30 */ addi r1, r1, 0x30 @@ -83100,7 +83100,7 @@ func_8021321C: /* 80213238 0020EE98 DB A1 01 80 */ stfd f29, 0x180(r1) /* 8021323C 0020EE9C F3 A1 01 88 */ psq_st f29, 392(r1), 0, qr0 /* 80213240 0020EEA0 39 61 01 80 */ addi r11, r1, 0x180 -/* 80213244 0020EEA4 4B FB 3E D9 */ bl func_801C711C +/* 80213244 0020EEA4 4B FB 3E D9 */ bl _savegpr_24 /* 80213248 0020EEA8 FF A0 08 90 */ fmr f29, f1 /* 8021324C 0020EEAC 7C 78 1B 78 */ mr r24, r3 /* 80213250 0020EEB0 7D 3F 4B 78 */ mr r31, r9 @@ -83378,7 +83378,7 @@ lbl_80213640: /* 80213654 0020F2B4 E3 A1 01 88 */ psq_l f29, 392(r1), 0, qr0 /* 80213658 0020F2B8 CB A1 01 80 */ lfd f29, 0x180(r1) /* 8021365C 0020F2BC 39 61 01 80 */ addi r11, r1, 0x180 -/* 80213660 0020F2C0 4B FB 3B 09 */ bl func_801C7168 +/* 80213660 0020F2C0 4B FB 3B 09 */ bl _restgpr_24 /* 80213664 0020F2C4 80 01 01 B4 */ lwz r0, 0x1b4(r1) /* 80213668 0020F2C8 7C 08 03 A6 */ mtlr r0 /* 8021366C 0020F2CC 38 21 01 B0 */ addi r1, r1, 0x1b0 @@ -87569,7 +87569,7 @@ func_80217294: /* 802172E0 00212F40 DA E1 01 00 */ stfd f23, 0x100(r1) /* 802172E4 00212F44 F2 E1 01 08 */ psq_st f23, 264(r1), 0, qr0 /* 802172E8 00212F48 39 61 01 00 */ addi r11, r1, 0x100 -/* 802172EC 00212F4C 4B FA FE 31 */ bl func_801C711C +/* 802172EC 00212F4C 4B FA FE 31 */ bl _savegpr_24 /* 802172F0 00212F50 80 03 03 DC */ lwz r0, 0x3dc(r3) /* 802172F4 00212F54 3D 00 43 30 */ lis r8, 0x4330 /* 802172F8 00212F58 FF 00 08 90 */ fmr f24, f1 @@ -87913,7 +87913,7 @@ lbl_8021779C: /* 802177DC 0021343C E2 E1 01 08 */ psq_l f23, 264(r1), 0, qr0 /* 802177E0 00213440 39 61 01 00 */ addi r11, r1, 0x100 /* 802177E4 00213444 CA E1 01 00 */ lfd f23, 0x100(r1) -/* 802177E8 00213448 4B FA F9 81 */ bl func_801C7168 +/* 802177E8 00213448 4B FA F9 81 */ bl _restgpr_24 /* 802177EC 0021344C 80 01 01 94 */ lwz r0, 0x194(r1) /* 802177F0 00213450 7C 08 03 A6 */ mtlr r0 /* 802177F4 00213454 38 21 01 90 */ addi r1, r1, 0x190 diff --git a/asm/text_7.s b/asm/text_7.s index 7917d01..35121dc 100644 --- a/asm/text_7.s +++ b/asm/text_7.s @@ -5066,7 +5066,7 @@ lbl_8022704C: /* 80227050 00222CB0 7C 08 02 A6 */ mflr r0 /* 80227054 00222CB4 90 01 00 34 */ stw r0, 0x34(r1) /* 80227058 00222CB8 39 61 00 30 */ addi r11, r1, 0x30 -/* 8022705C 00222CBC 4B FA 00 C1 */ bl func_801C711C +/* 8022705C 00222CBC 4B FA 00 C1 */ bl _savegpr_24 /* 80227060 00222CC0 7C 7A 1B 78 */ mr r26, r3 /* 80227064 00222CC4 48 04 A2 95 */ bl func_802712F8 /* 80227068 00222CC8 90 7A 00 18 */ stw r3, 0x18(r26) @@ -31500,7 +31500,7 @@ func_8023DF24: /* 8023DF28 00239B88 7C 08 02 A6 */ mflr r0 /* 8023DF2C 00239B8C 90 01 00 34 */ stw r0, 0x34(r1) /* 8023DF30 00239B90 39 61 00 30 */ addi r11, r1, 0x30 -/* 8023DF34 00239B94 4B F8 91 E9 */ bl func_801C711C +/* 8023DF34 00239B94 4B F8 91 E9 */ bl _savegpr_24 /* 8023DF38 00239B98 7C 98 23 78 */ mr r24, r4 /* 8023DF3C 00239B9C 7C B9 2B 78 */ mr r25, r5 /* 8023DF40 00239BA0 7C 7B 1B 78 */ mr r27, r3 @@ -31754,7 +31754,7 @@ lbl_8023E288: /* 8023E2B4 00239F14 38 60 00 01 */ li r3, 1 lbl_8023E2B8: /* 8023E2B8 00239F18 39 61 00 30 */ addi r11, r1, 0x30 -/* 8023E2BC 00239F1C 4B F8 8E AD */ bl func_801C7168 +/* 8023E2BC 00239F1C 4B F8 8E AD */ bl _restgpr_24 /* 8023E2C0 00239F20 80 01 00 34 */ lwz r0, 0x34(r1) /* 8023E2C4 00239F24 7C 08 03 A6 */ mtlr r0 /* 8023E2C8 00239F28 38 21 00 30 */ addi r1, r1, 0x30 @@ -40409,7 +40409,7 @@ func_80245BA4: /* 80245BA8 00241808 7C 08 02 A6 */ mflr r0 /* 80245BAC 0024180C 90 01 00 34 */ stw r0, 0x34(r1) /* 80245BB0 00241810 39 61 00 30 */ addi r11, r1, 0x30 -/* 80245BB4 00241814 4B F8 15 69 */ bl func_801C711C +/* 80245BB4 00241814 4B F8 15 69 */ bl _savegpr_24 /* 80245BB8 00241818 7C 78 1B 78 */ mr r24, r3 /* 80245BBC 0024181C 7C 99 23 78 */ mr r25, r4 /* 80245BC0 00241820 7C BA 2B 78 */ mr r26, r5 @@ -40442,7 +40442,7 @@ lbl_80245C20: /* 80245C24 00241884 4B FF F7 9D */ bl func_802453C0 lbl_80245C28: /* 80245C28 00241888 39 61 00 30 */ addi r11, r1, 0x30 -/* 80245C2C 0024188C 4B F8 15 3D */ bl func_801C7168 +/* 80245C2C 0024188C 4B F8 15 3D */ bl _restgpr_24 /* 80245C30 00241890 80 01 00 34 */ lwz r0, 0x34(r1) /* 80245C34 00241894 7C 08 03 A6 */ mtlr r0 /* 80245C38 00241898 38 21 00 30 */ addi r1, r1, 0x30 @@ -43326,7 +43326,7 @@ lbl_802482B4: /* 802482B8 00243F18 7C 08 02 A6 */ mflr r0 /* 802482BC 00243F1C 90 01 00 34 */ stw r0, 0x34(r1) /* 802482C0 00243F20 39 61 00 30 */ addi r11, r1, 0x30 -/* 802482C4 00243F24 4B F7 EE 59 */ bl func_801C711C +/* 802482C4 00243F24 4B F7 EE 59 */ bl _savegpr_24 /* 802482C8 00243F28 83 6D A5 B8 */ lwz r27, lbl_8063F878-_SDA_BASE_(r13) /* 802482CC 00243F2C 3B A0 00 00 */ li r29, 0 /* 802482D0 00243F30 3F C0 80 42 */ lis r30, 0x8042 @@ -43448,7 +43448,7 @@ lbl_80248464: /* 8024846C 002440CC 41 80 FF E4 */ blt lbl_80248450 /* 80248470 002440D0 48 00 0E 11 */ bl func_80249280 /* 80248474 002440D4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80248478 002440D8 4B F7 EC F1 */ bl func_801C7168 +/* 80248478 002440D8 4B F7 EC F1 */ bl _restgpr_24 /* 8024847C 002440DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80248480 002440E0 7C 08 03 A6 */ mtlr r0 /* 80248484 002440E4 38 21 00 30 */ addi r1, r1, 0x30 @@ -50247,7 +50247,7 @@ func_8024E338: /* 8024E34C 00249FAC DB C1 00 50 */ stfd f30, 0x50(r1) /* 8024E350 00249FB0 F3 C1 00 58 */ psq_st f30, 88(r1), 0, qr0 /* 8024E354 00249FB4 39 61 00 50 */ addi r11, r1, 0x50 -/* 8024E358 00249FB8 4B F7 8D C5 */ bl func_801C711C +/* 8024E358 00249FB8 4B F7 8D C5 */ bl _savegpr_24 /* 8024E35C 00249FBC 81 0D A6 20 */ lwz r8, lbl_8063F8E0-_SDA_BASE_(r13) /* 8024E360 00249FC0 3D 60 43 30 */ lis r11, 0x4330 /* 8024E364 00249FC4 81 2D A6 1C */ lwz r9, lbl_8063F8DC-_SDA_BASE_(r13) @@ -50546,7 +50546,7 @@ lbl_8024E7D0: /* 8024E7D8 0024A438 E3 C1 00 58 */ psq_l f30, 88(r1), 0, qr0 /* 8024E7DC 0024A43C 39 61 00 50 */ addi r11, r1, 0x50 /* 8024E7E0 0024A440 CB C1 00 50 */ lfd f30, 0x50(r1) -/* 8024E7E4 0024A444 4B F7 89 85 */ bl func_801C7168 +/* 8024E7E4 0024A444 4B F7 89 85 */ bl _restgpr_24 /* 8024E7E8 0024A448 80 01 00 74 */ lwz r0, 0x74(r1) /* 8024E7EC 0024A44C 7C 08 03 A6 */ mtlr r0 /* 8024E7F0 0024A450 38 21 00 70 */ addi r1, r1, 0x70 @@ -57624,7 +57624,7 @@ func_80254C74: /* 80254C78 002508D8 7C 08 02 A6 */ mflr r0 /* 80254C7C 002508DC 90 01 00 34 */ stw r0, 0x34(r1) /* 80254C80 002508E0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80254C84 002508E4 4B F7 24 99 */ bl func_801C711C +/* 80254C84 002508E4 4B F7 24 99 */ bl _savegpr_24 /* 80254C88 002508E8 83 63 00 48 */ lwz r27, 0x48(r3) /* 80254C8C 002508EC 7C 7A 1B 78 */ mr r26, r3 /* 80254C90 002508F0 3B A3 00 4C */ addi r29, r3, 0x4c @@ -57757,7 +57757,7 @@ lbl_80254E4C: /* 80254E54 00250AB4 41 80 FF 84 */ blt lbl_80254DD8 lbl_80254E58: /* 80254E58 00250AB8 39 61 00 30 */ addi r11, r1, 0x30 -/* 80254E5C 00250ABC 4B F7 23 0D */ bl func_801C7168 +/* 80254E5C 00250ABC 4B F7 23 0D */ bl _restgpr_24 /* 80254E60 00250AC0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80254E64 00250AC4 7C 08 03 A6 */ mtlr r0 /* 80254E68 00250AC8 38 21 00 30 */ addi r1, r1, 0x30 @@ -57953,7 +57953,7 @@ func_802550F8: /* 802550FC 00250D5C 7C 08 02 A6 */ mflr r0 /* 80255100 00250D60 90 01 00 34 */ stw r0, 0x34(r1) /* 80255104 00250D64 39 61 00 30 */ addi r11, r1, 0x30 -/* 80255108 00250D68 4B F7 20 15 */ bl func_801C711C +/* 80255108 00250D68 4B F7 20 15 */ bl _savegpr_24 /* 8025510C 00250D6C 7C 78 1B 78 */ mr r24, r3 /* 80255110 00250D70 7C 99 23 78 */ mr r25, r4 /* 80255114 00250D74 7C BA 2B 78 */ mr r26, r5 @@ -58063,7 +58063,7 @@ lbl_80255288: /* 80255290 00250EF0 7F C3 F3 78 */ mr r3, r30 lbl_80255294: /* 80255294 00250EF4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80255298 00250EF8 4B F7 1E D1 */ bl func_801C7168 +/* 80255298 00250EF8 4B F7 1E D1 */ bl _restgpr_24 /* 8025529C 00250EFC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802552A0 00250F00 7C 08 03 A6 */ mtlr r0 /* 802552A4 00250F04 38 21 00 30 */ addi r1, r1, 0x30 @@ -69953,7 +69953,7 @@ func_8025F4E0: /* 8025F4E4 0025B144 7C 08 02 A6 */ mflr r0 /* 8025F4E8 0025B148 90 01 00 E4 */ stw r0, 0xe4(r1) /* 8025F4EC 0025B14C 39 61 00 E0 */ addi r11, r1, 0xe0 -/* 8025F4F0 0025B150 4B F6 7C 2D */ bl func_801C711C +/* 8025F4F0 0025B150 4B F6 7C 2D */ bl _savegpr_24 /* 8025F4F4 0025B154 7C 7E 1B 78 */ mr r30, r3 /* 8025F4F8 0025B158 3B E3 00 24 */ addi r31, r3, 0x24 /* 8025F4FC 0025B15C 7F F9 FB 78 */ mr r25, r31 @@ -70229,7 +70229,7 @@ lbl_8025F908: /* 8025F914 0025B574 3B FF 00 74 */ addi r31, r31, 0x74 /* 8025F918 0025B578 41 80 FD E4 */ blt lbl_8025F6FC /* 8025F91C 0025B57C 39 61 00 E0 */ addi r11, r1, 0xe0 -/* 8025F920 0025B580 4B F6 78 49 */ bl func_801C7168 +/* 8025F920 0025B580 4B F6 78 49 */ bl _restgpr_24 /* 8025F924 0025B584 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 8025F928 0025B588 7C 08 03 A6 */ mtlr r0 /* 8025F92C 0025B58C 38 21 00 E0 */ addi r1, r1, 0xe0 @@ -79969,7 +79969,7 @@ lbl_80267C5C: /* 80267C90 002638F0 20 1E 00 1D */ subfic r0, r30, 0x1d /* 80267C94 002638F4 7F E4 FB 78 */ mr r4, r31 /* 80267C98 002638F8 1C A0 00 0C */ mulli r5, r0, 0xc -/* 80267C9C 002638FC 4B F6 25 D9 */ bl func_801CA274 +/* 80267C9C 002638FC 4B F6 25 D9 */ bl memmove /* 80267CA0 00263900 7F A3 EB 78 */ mr r3, r29 /* 80267CA4 00263904 38 80 00 1D */ li r4, 0x1d /* 80267CA8 00263908 4B FF F8 3D */ bl func_802674E4 diff --git a/asm/text_7_2.s b/asm/text_7_2.s index 44950e0..e1be8f9 100644 --- a/asm/text_7_2.s +++ b/asm/text_7_2.s @@ -1123,7 +1123,7 @@ func_8026C474: /* 8026C478 002680D8 7C 08 02 A6 */ mflr r0 /* 8026C47C 002680DC 90 01 01 C4 */ stw r0, 0x1c4(r1) /* 8026C480 002680E0 39 61 01 C0 */ addi r11, r1, 0x1c0 -/* 8026C484 002680E4 4B F5 AC 99 */ bl func_801C711C +/* 8026C484 002680E4 4B F5 AC 99 */ bl _savegpr_24 /* 8026C488 002680E8 7C 7B 1B 78 */ mr r27, r3 /* 8026C48C 002680EC 7C 98 23 78 */ mr r24, r4 /* 8026C490 002680F0 7C BC 2B 78 */ mr r28, r5 @@ -1568,7 +1568,7 @@ lbl_8026CA94: /* 8026CAC4 00268724 4B FF F1 FD */ bl func_8026BCC0 lbl_8026CAC8: /* 8026CAC8 00268728 39 61 01 C0 */ addi r11, r1, 0x1c0 -/* 8026CACC 0026872C 4B F5 A6 9D */ bl func_801C7168 +/* 8026CACC 0026872C 4B F5 A6 9D */ bl _restgpr_24 /* 8026CAD0 00268730 80 01 01 C4 */ lwz r0, 0x1c4(r1) /* 8026CAD4 00268734 7C 08 03 A6 */ mtlr r0 /* 8026CAD8 00268738 38 21 01 C0 */ addi r1, r1, 0x1c0 @@ -2123,7 +2123,7 @@ func_8026D290: /* 8026D294 00268EF4 7C 08 02 A6 */ mflr r0 /* 8026D298 00268EF8 90 01 00 34 */ stw r0, 0x34(r1) /* 8026D29C 00268EFC 39 61 00 30 */ addi r11, r1, 0x30 -/* 8026D2A0 00268F00 4B F5 9E 7D */ bl func_801C711C +/* 8026D2A0 00268F00 4B F5 9E 7D */ bl _savegpr_24 /* 8026D2A4 00268F04 7C 7B 1B 78 */ mr r27, r3 /* 8026D2A8 00268F08 7C 9C 23 78 */ mr r28, r4 /* 8026D2AC 00268F0C 7C BD 2B 78 */ mr r29, r5 @@ -2249,7 +2249,7 @@ lbl_8026D3E8: /* 8026D474 002690D4 38 65 D4 94 */ addi r3, r5, lbl_8026D494@l /* 8026D478 002690D8 4B FF DB B9 */ bl OSSwitchFiber /* 8026D47C 002690DC 39 61 00 30 */ addi r11, r1, 0x30 -/* 8026D480 002690E0 4B F5 9C E9 */ bl func_801C7168 +/* 8026D480 002690E0 4B F5 9C E9 */ bl _restgpr_24 /* 8026D484 002690E4 80 01 00 34 */ lwz r0, 0x34(r1) /* 8026D488 002690E8 7C 08 03 A6 */ mtlr r0 /* 8026D48C 002690EC 38 21 00 30 */ addi r1, r1, 0x30 @@ -2277,7 +2277,7 @@ lbl_8026D494: /* 8026D4E0 00269140 4B FF CC 4D */ bl OSAllocFromMEM1ArenaLo /* 8026D4E4 00269144 7F 84 E3 78 */ mr r4, r28 /* 8026D4E8 00269148 7F C5 F3 78 */ mr r5, r30 -/* 8026D4EC 0026914C 4B F5 CD 89 */ bl func_801CA274 +/* 8026D4EC 0026914C 4B F5 CD 89 */ bl memmove /* 8026D4F0 00269150 90 7D 00 08 */ stw r3, 8(r29) /* 8026D4F4 00269154 3C 60 00 0A */ lis r3, 0x000A1004@ha /* 8026D4F8 00269158 38 63 10 04 */ addi r3, r3, 0x000A1004@l @@ -11951,7 +11951,7 @@ lbl_80275990: /* 802759C8 00271628 38 9F 00 30 */ addi r4, r31, 0x30 /* 802759CC 0027162C 80 1F 00 24 */ lwz r0, 0x24(r31) /* 802759D0 00271630 54 05 18 38 */ slwi r5, r0, 3 -/* 802759D4 00271634 4B F5 48 A1 */ bl func_801CA274 +/* 802759D4 00271634 4B F5 48 A1 */ bl memmove lbl_802759D8: /* 802759D8 00271638 7F 83 E3 78 */ mr r3, r28 /* 802759DC 0027163C 38 80 00 00 */ li r4, 0 @@ -12163,7 +12163,7 @@ lbl_80275C98: /* 80275CD0 00271930 38 9D 00 30 */ addi r4, r29, 0x30 /* 80275CD4 00271934 80 1D 00 24 */ lwz r0, 0x24(r29) /* 80275CD8 00271938 54 05 18 38 */ slwi r5, r0, 3 -/* 80275CDC 0027193C 4B F5 45 99 */ bl func_801CA274 +/* 80275CDC 0027193C 4B F5 45 99 */ bl memmove lbl_80275CE0: /* 80275CE0 00271940 7F 23 CB 78 */ mr r3, r25 /* 80275CE4 00271944 38 80 00 00 */ li r4, 0 @@ -14795,7 +14795,7 @@ func_802781DC: /* 802781E0 00273E40 7C 08 02 A6 */ mflr r0 /* 802781E4 00273E44 90 01 00 34 */ stw r0, 0x34(r1) /* 802781E8 00273E48 39 61 00 30 */ addi r11, r1, 0x30 -/* 802781EC 00273E4C 4B F4 EF 31 */ bl func_801C711C +/* 802781EC 00273E4C 4B F4 EF 31 */ bl _savegpr_24 /* 802781F0 00273E50 80 0D A8 C0 */ lwz r0, lbl_8063FB80-_SDA_BASE_(r13) /* 802781F4 00273E54 2C 00 00 00 */ cmpwi r0, 0 /* 802781F8 00273E58 40 82 05 14 */ bne lbl_8027870C @@ -15138,7 +15138,7 @@ lbl_802786F8: /* 80278708 00274368 48 00 33 F9 */ bl func_8027BB00 lbl_8027870C: /* 8027870C 0027436C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80278710 00274370 4B F4 EA 59 */ bl func_801C7168 +/* 80278710 00274370 4B F4 EA 59 */ bl _restgpr_24 /* 80278714 00274374 80 01 00 34 */ lwz r0, 0x34(r1) /* 80278718 00274378 7C 08 03 A6 */ mtlr r0 /* 8027871C 0027437C 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/asm/text_8.s b/asm/text_8.s index 6f69878..b7f09fd 100644 --- a/asm/text_8.s +++ b/asm/text_8.s @@ -10127,7 +10127,7 @@ func_802826D0: /* 802826D4 0027E334 7C 08 02 A6 */ mflr r0 /* 802826D8 0027E338 90 01 00 44 */ stw r0, 0x44(r1) /* 802826DC 0027E33C 39 61 00 40 */ addi r11, r1, 0x40 -/* 802826E0 0027E340 4B F4 4A 3D */ bl func_801C711C +/* 802826E0 0027E340 4B F4 4A 3D */ bl _savegpr_24 /* 802826E4 0027E344 7C 9B 23 78 */ mr r27, r4 /* 802826E8 0027E348 7C BC 2B 78 */ mr r28, r5 /* 802826EC 0027E34C 7C 7F 1B 78 */ mr r31, r3 @@ -10257,7 +10257,7 @@ lbl_80282888: /* 802828BC 0027E51C 7C 04 01 D6 */ mullw r0, r4, r0 /* 802828C0 0027E520 54 00 04 7E */ clrlwi r0, r0, 0x11 /* 802828C4 0027E524 B0 1F 00 1C */ sth r0, 0x1c(r31) -/* 802828C8 0027E528 4B F4 48 A1 */ bl func_801C7168 +/* 802828C8 0027E528 4B F4 48 A1 */ bl _restgpr_24 /* 802828CC 0027E52C 80 01 00 44 */ lwz r0, 0x44(r1) /* 802828D0 0027E530 7C 08 03 A6 */ mtlr r0 /* 802828D4 0027E534 38 21 00 40 */ addi r1, r1, 0x40 @@ -11354,7 +11354,7 @@ func_802837AC: /* 802837B0 0027F410 7C 08 02 A6 */ mflr r0 /* 802837B4 0027F414 90 01 00 64 */ stw r0, 0x64(r1) /* 802837B8 0027F418 39 61 00 60 */ addi r11, r1, 0x60 -/* 802837BC 0027F41C 4B F4 39 61 */ bl func_801C711C +/* 802837BC 0027F41C 4B F4 39 61 */ bl _savegpr_24 /* 802837C0 0027F420 2C 05 00 40 */ cmpwi r5, 0x40 /* 802837C4 0027F424 83 81 00 68 */ lwz r28, 0x68(r1) /* 802837C8 0027F428 83 A1 00 6C */ lwz r29, 0x6c(r1) @@ -11466,7 +11466,7 @@ lbl_802838A8: /* 80283930 0027F590 39 40 00 00 */ li r10, 0 /* 80283934 0027F594 4B FF FA 31 */ bl func_80283364 /* 80283938 0027F598 39 61 00 60 */ addi r11, r1, 0x60 -/* 8028393C 0027F59C 4B F4 38 2D */ bl func_801C7168 +/* 8028393C 0027F59C 4B F4 38 2D */ bl _restgpr_24 /* 80283940 0027F5A0 80 01 00 64 */ lwz r0, 0x64(r1) /* 80283944 0027F5A4 7C 08 03 A6 */ mtlr r0 /* 80283948 0027F5A8 38 21 00 60 */ addi r1, r1, 0x60 @@ -15741,7 +15741,7 @@ func_802876BC: /* 802876C0 00283320 7C 08 02 A6 */ mflr r0 /* 802876C4 00283324 90 01 00 34 */ stw r0, 0x34(r1) /* 802876C8 00283328 39 61 00 30 */ addi r11, r1, 0x30 -/* 802876CC 0028332C 4B F3 FA 51 */ bl func_801C711C +/* 802876CC 0028332C 4B F3 FA 51 */ bl _savegpr_24 /* 802876D0 00283330 7C 7A 1B 78 */ mr r26, r3 /* 802876D4 00283334 3F E0 80 42 */ lis r31, lbl_80422D48@ha /* 802876D8 00283338 83 AD A9 F0 */ lwz r29, lbl_8063FCB0-_SDA_BASE_(r13) @@ -15966,7 +15966,7 @@ lbl_8028799C: /* 802879A8 00283608 4B FF FD 40 */ b lbl_802876E8 lbl_802879AC: /* 802879AC 0028360C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802879B0 00283610 4B F3 F7 B9 */ bl func_801C7168 +/* 802879B0 00283610 4B F3 F7 B9 */ bl _restgpr_24 /* 802879B4 00283614 80 01 00 34 */ lwz r0, 0x34(r1) /* 802879B8 00283618 7C 08 03 A6 */ mtlr r0 /* 802879BC 0028361C 38 21 00 30 */ addi r1, r1, 0x30 @@ -28972,7 +28972,7 @@ func_80292F70: /* 80292F74 0028EBD4 7C 08 02 A6 */ mflr r0 /* 80292F78 0028EBD8 90 01 00 34 */ stw r0, 0x34(r1) /* 80292F7C 0028EBDC 39 61 00 30 */ addi r11, r1, 0x30 -/* 80292F80 0028EBE0 4B F3 41 9D */ bl func_801C711C +/* 80292F80 0028EBE0 4B F3 41 9D */ bl _savegpr_24 /* 80292F84 0028EBE4 7C 78 1B 78 */ mr r24, r3 /* 80292F88 0028EBE8 3B 20 00 00 */ li r25, 0 /* 80292F8C 0028EBEC 7F 1F C3 78 */ mr r31, r24 @@ -29044,7 +29044,7 @@ lbl_80293064: /* 80293074 0028ECD4 3B FF 00 04 */ addi r31, r31, 4 /* 80293078 0028ECD8 41 80 FF 20 */ blt lbl_80292F98 /* 8029307C 0028ECDC 39 61 00 30 */ addi r11, r1, 0x30 -/* 80293080 0028ECE0 4B F3 40 E9 */ bl func_801C7168 +/* 80293080 0028ECE0 4B F3 40 E9 */ bl _restgpr_24 /* 80293084 0028ECE4 80 01 00 34 */ lwz r0, 0x34(r1) /* 80293088 0028ECE8 7C 08 03 A6 */ mtlr r0 /* 8029308C 0028ECEC 38 21 00 30 */ addi r1, r1, 0x30 @@ -29142,7 +29142,7 @@ func_802931A8: /* 802931C4 0028EE24 DB A1 00 30 */ stfd f29, 0x30(r1) /* 802931C8 0028EE28 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 /* 802931CC 0028EE2C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802931D0 0028EE30 4B F3 3F 4D */ bl func_801C711C +/* 802931D0 0028EE30 4B F3 3F 4D */ bl _savegpr_24 /* 802931D4 0028EE34 80 83 01 10 */ lwz r4, 0x110(r3) /* 802931D8 0028EE38 3F E0 80 44 */ lis r31, lbl_8043A380@ha /* 802931DC 0028EE3C 7C 7E 1B 78 */ mr r30, r3 @@ -29350,7 +29350,7 @@ lbl_8029349C: /* 802934AC 0028F10C E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 /* 802934B0 0028F110 39 61 00 30 */ addi r11, r1, 0x30 /* 802934B4 0028F114 CB A1 00 30 */ lfd f29, 0x30(r1) -/* 802934B8 0028F118 4B F3 3C B1 */ bl func_801C7168 +/* 802934B8 0028F118 4B F3 3C B1 */ bl _restgpr_24 /* 802934BC 0028F11C 80 01 00 64 */ lwz r0, 0x64(r1) /* 802934C0 0028F120 7C 08 03 A6 */ mtlr r0 /* 802934C4 0028F124 38 21 00 60 */ addi r1, r1, 0x60 @@ -29599,7 +29599,7 @@ lbl_8029383C: /* 80293850 0028F4B0 DB C1 00 90 */ stfd f30, 0x90(r1) /* 80293854 0028F4B4 F3 C1 00 98 */ psq_st f30, 152(r1), 0, qr0 /* 80293858 0028F4B8 39 61 00 90 */ addi r11, r1, 0x90 -/* 8029385C 0028F4BC 4B F3 38 C1 */ bl func_801C711C +/* 8029385C 0028F4BC 4B F3 38 C1 */ bl _savegpr_24 /* 80293860 0028F4C0 80 04 01 3C */ lwz r0, 0x13c(r4) /* 80293864 0028F4C4 2C 00 00 00 */ cmpwi r0, 0 /* 80293868 0028F4C8 41 82 00 10 */ beq lbl_80293878 @@ -29970,7 +29970,7 @@ lbl_80293DC0: /* 80293DC8 0028FA28 E3 C1 00 98 */ psq_l f30, 152(r1), 0, qr0 /* 80293DCC 0028FA2C 39 61 00 90 */ addi r11, r1, 0x90 /* 80293DD0 0028FA30 CB C1 00 90 */ lfd f30, 0x90(r1) -/* 80293DD4 0028FA34 4B F3 33 95 */ bl func_801C7168 +/* 80293DD4 0028FA34 4B F3 33 95 */ bl _restgpr_24 /* 80293DD8 0028FA38 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 80293DDC 0028FA3C 7C 08 03 A6 */ mtlr r0 /* 80293DE0 0028FA40 38 21 00 B0 */ addi r1, r1, 0xb0 @@ -30088,7 +30088,7 @@ func_80293F5C: /* 80293F60 0028FBC0 7C 08 02 A6 */ mflr r0 /* 80293F64 0028FBC4 90 01 00 34 */ stw r0, 0x34(r1) /* 80293F68 0028FBC8 39 61 00 30 */ addi r11, r1, 0x30 -/* 80293F6C 0028FBCC 4B F3 31 B1 */ bl func_801C711C +/* 80293F6C 0028FBCC 4B F3 31 B1 */ bl _savegpr_24 /* 80293F70 0028FBD0 7C 78 1B 78 */ mr r24, r3 /* 80293F74 0028FBD4 3B 20 00 00 */ li r25, 0 /* 80293F78 0028FBD8 7F 1F C3 78 */ mr r31, r24 @@ -30160,7 +30160,7 @@ lbl_80294050: /* 80294060 0028FCC0 3B FF 00 04 */ addi r31, r31, 4 /* 80294064 0028FCC4 41 80 FF 20 */ blt lbl_80293F84 /* 80294068 0028FCC8 39 61 00 30 */ addi r11, r1, 0x30 -/* 8029406C 0028FCCC 4B F3 30 FD */ bl func_801C7168 +/* 8029406C 0028FCCC 4B F3 30 FD */ bl _restgpr_24 /* 80294070 0028FCD0 80 01 00 34 */ lwz r0, 0x34(r1) /* 80294074 0028FCD4 7C 08 03 A6 */ mtlr r0 /* 80294078 0028FCD8 38 21 00 30 */ addi r1, r1, 0x30 @@ -30258,7 +30258,7 @@ func_80294194: /* 802941B0 0028FE10 DB A1 00 30 */ stfd f29, 0x30(r1) /* 802941B4 0028FE14 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 /* 802941B8 0028FE18 39 61 00 30 */ addi r11, r1, 0x30 -/* 802941BC 0028FE1C 4B F3 2F 61 */ bl func_801C711C +/* 802941BC 0028FE1C 4B F3 2F 61 */ bl _savegpr_24 /* 802941C0 0028FE20 80 83 01 40 */ lwz r4, 0x140(r3) /* 802941C4 0028FE24 3F E0 80 44 */ lis r31, lbl_8043A520@ha /* 802941C8 0028FE28 7C 7E 1B 78 */ mr r30, r3 @@ -30470,7 +30470,7 @@ lbl_80294498: /* 802944A8 00290108 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 /* 802944AC 0029010C 39 61 00 30 */ addi r11, r1, 0x30 /* 802944B0 00290110 CB A1 00 30 */ lfd f29, 0x30(r1) -/* 802944B4 00290114 4B F3 2C B5 */ bl func_801C7168 +/* 802944B4 00290114 4B F3 2C B5 */ bl _restgpr_24 /* 802944B8 00290118 80 01 00 64 */ lwz r0, 0x64(r1) /* 802944BC 0029011C 7C 08 03 A6 */ mtlr r0 /* 802944C0 00290120 38 21 00 60 */ addi r1, r1, 0x60 @@ -31232,7 +31232,7 @@ lbl_80294F48: /* 80294F4C 00290BAC 7C 08 02 A6 */ mflr r0 /* 80294F50 00290BB0 90 01 00 64 */ stw r0, 0x64(r1) /* 80294F54 00290BB4 39 61 00 60 */ addi r11, r1, 0x60 -/* 80294F58 00290BB8 4B F3 21 C5 */ bl func_801C711C +/* 80294F58 00290BB8 4B F3 21 C5 */ bl _savegpr_24 /* 80294F5C 00290BBC 80 04 00 B0 */ lwz r0, 0xb0(r4) /* 80294F60 00290BC0 2C 00 00 00 */ cmpwi r0, 0 /* 80294F64 00290BC4 41 82 00 10 */ beq lbl_80294F74 @@ -31459,7 +31459,7 @@ lbl_80295290: /* 80295298 00290EF8 41 80 FD 80 */ blt lbl_80295018 lbl_8029529C: /* 8029529C 00290EFC 39 61 00 60 */ addi r11, r1, 0x60 -/* 802952A0 00290F00 4B F3 1E C9 */ bl func_801C7168 +/* 802952A0 00290F00 4B F3 1E C9 */ bl _restgpr_24 /* 802952A4 00290F04 80 01 00 64 */ lwz r0, 0x64(r1) /* 802952A8 00290F08 7C 08 03 A6 */ mtlr r0 /* 802952AC 00290F0C 38 21 00 60 */ addi r1, r1, 0x60 @@ -31471,7 +31471,7 @@ func_802952B4: /* 802952B8 00290F18 7C 08 02 A6 */ mflr r0 /* 802952BC 00290F1C 90 01 00 34 */ stw r0, 0x34(r1) /* 802952C0 00290F20 39 61 00 30 */ addi r11, r1, 0x30 -/* 802952C4 00290F24 4B F3 1E 59 */ bl func_801C711C +/* 802952C4 00290F24 4B F3 1E 59 */ bl _savegpr_24 /* 802952C8 00290F28 7C 78 1B 78 */ mr r24, r3 /* 802952CC 00290F2C 3B 20 00 00 */ li r25, 0 /* 802952D0 00290F30 7F 1E C3 78 */ mr r30, r24 @@ -31552,7 +31552,7 @@ lbl_802953B4: /* 802953DC 0029103C 38 60 00 01 */ li r3, 1 lbl_802953E0: /* 802953E0 00291040 39 61 00 30 */ addi r11, r1, 0x30 -/* 802953E4 00291044 4B F3 1D 85 */ bl func_801C7168 +/* 802953E4 00291044 4B F3 1D 85 */ bl _restgpr_24 /* 802953E8 00291048 80 01 00 34 */ lwz r0, 0x34(r1) /* 802953EC 0029104C 7C 08 03 A6 */ mtlr r0 /* 802953F0 00291050 38 21 00 30 */ addi r1, r1, 0x30 @@ -48465,7 +48465,7 @@ func_802A3D5C: /* 802A3D60 0029F9C0 7C 08 02 A6 */ mflr r0 /* 802A3D64 0029F9C4 90 01 00 34 */ stw r0, 0x34(r1) /* 802A3D68 0029F9C8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A3D6C 0029F9CC 4B F2 33 B1 */ bl func_801C711C +/* 802A3D6C 0029F9CC 4B F2 33 B1 */ bl _savegpr_24 /* 802A3D70 0029F9D0 34 01 00 08 */ addic. r0, r1, 8 /* 802A3D74 0029F9D4 7C 78 1B 78 */ mr r24, r3 /* 802A3D78 0029F9D8 7C 99 23 78 */ mr r25, r4 @@ -48517,7 +48517,7 @@ lbl_802A3DE8: lbl_802A3E24: /* 802A3E24 0029FA84 39 61 00 30 */ addi r11, r1, 0x30 /* 802A3E28 0029FA88 7F E3 FB 78 */ mr r3, r31 -/* 802A3E2C 0029FA8C 4B F2 33 3D */ bl func_801C7168 +/* 802A3E2C 0029FA8C 4B F2 33 3D */ bl _restgpr_24 /* 802A3E30 0029FA90 80 01 00 34 */ lwz r0, 0x34(r1) /* 802A3E34 0029FA94 7C 08 03 A6 */ mtlr r0 /* 802A3E38 0029FA98 38 21 00 30 */ addi r1, r1, 0x30 @@ -50808,7 +50808,7 @@ func_802A5DA8: /* 802A5DAC 002A1A0C 7C 08 02 A6 */ mflr r0 /* 802A5DB0 002A1A10 90 01 00 64 */ stw r0, 0x64(r1) /* 802A5DB4 002A1A14 39 61 00 60 */ addi r11, r1, 0x60 -/* 802A5DB8 002A1A18 4B F2 13 65 */ bl func_801C711C +/* 802A5DB8 002A1A18 4B F2 13 65 */ bl _savegpr_24 /* 802A5DBC 002A1A1C 3F E0 80 53 */ lis r31, lbl_80536D70@ha /* 802A5DC0 002A1A20 54 7E 10 3A */ slwi r30, r3, 2 /* 802A5DC4 002A1A24 3B FF 6D 70 */ addi r31, r31, lbl_80536D70@l @@ -50925,7 +50925,7 @@ lbl_802A5F58: lbl_802A5F68: /* 802A5F68 002A1BC8 39 61 00 60 */ addi r11, r1, 0x60 /* 802A5F6C 002A1BCC 7F 83 E3 78 */ mr r3, r28 -/* 802A5F70 002A1BD0 4B F2 11 F9 */ bl func_801C7168 +/* 802A5F70 002A1BD0 4B F2 11 F9 */ bl _restgpr_24 /* 802A5F74 002A1BD4 80 01 00 64 */ lwz r0, 0x64(r1) /* 802A5F78 002A1BD8 7C 08 03 A6 */ mtlr r0 /* 802A5F7C 002A1BDC 38 21 00 60 */ addi r1, r1, 0x60 @@ -51898,7 +51898,7 @@ func_802A6D40: /* 802A6D44 002A29A4 7C 08 02 A6 */ mflr r0 /* 802A6D48 002A29A8 90 01 00 34 */ stw r0, 0x34(r1) /* 802A6D4C 002A29AC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A6D50 002A29B0 4B F2 03 CD */ bl func_801C711C +/* 802A6D50 002A29B0 4B F2 03 CD */ bl _savegpr_24 /* 802A6D54 002A29B4 3F E0 80 53 */ lis r31, lbl_80536D70@ha /* 802A6D58 002A29B8 54 7E 10 3A */ slwi r30, r3, 2 /* 802A6D5C 002A29BC 3B FF 6D 70 */ addi r31, r31, lbl_80536D70@l @@ -51992,7 +51992,7 @@ lbl_802A6EA0: /* 802A6EA8 002A2B08 4B FD 2F B5 */ bl func_80279E5C lbl_802A6EAC: /* 802A6EAC 002A2B0C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A6EB0 002A2B10 4B F2 02 B9 */ bl func_801C7168 +/* 802A6EB0 002A2B10 4B F2 02 B9 */ bl _restgpr_24 /* 802A6EB4 002A2B14 80 01 00 34 */ lwz r0, 0x34(r1) /* 802A6EB8 002A2B18 7C 08 03 A6 */ mtlr r0 /* 802A6EBC 002A2B1C 38 21 00 30 */ addi r1, r1, 0x30 @@ -52670,7 +52670,7 @@ func_802A787C: /* 802A7880 002A34E0 7C 08 02 A6 */ mflr r0 /* 802A7884 002A34E4 90 01 00 34 */ stw r0, 0x34(r1) /* 802A7888 002A34E8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A788C 002A34EC 4B F1 F8 91 */ bl func_801C711C +/* 802A788C 002A34EC 4B F1 F8 91 */ bl _savegpr_24 /* 802A7890 002A34F0 3F E0 80 53 */ lis r31, lbl_80536D40@ha /* 802A7894 002A34F4 3B FF 6D 40 */ addi r31, r31, lbl_80536D40@l /* 802A7898 002A34F8 4B FC 6E C5 */ bl OSDisableInterrupts @@ -52798,7 +52798,7 @@ lbl_802A79FC: /* 802A7A6C 002A36CC 80 6D 89 A0 */ lwz r3, lbl_8063DC60-_SDA_BASE_(r13) /* 802A7A70 002A36D0 4B FC 1B E1 */ bl OSRegisterVersion /* 802A7A74 002A36D4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802A7A78 002A36D8 4B F1 F6 F1 */ bl func_801C7168 +/* 802A7A78 002A36D8 4B F1 F6 F1 */ bl _restgpr_24 /* 802A7A7C 002A36DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802A7A80 002A36E0 7C 08 03 A6 */ mtlr r0 /* 802A7A84 002A36E4 38 21 00 30 */ addi r1, r1, 0x30 @@ -57004,7 +57004,7 @@ func_802AB6FC: /* 802AB700 002A7360 7C 08 02 A6 */ mflr r0 /* 802AB704 002A7364 90 01 04 74 */ stw r0, 0x474(r1) /* 802AB708 002A7368 39 61 04 70 */ addi r11, r1, 0x470 -/* 802AB70C 002A736C 4B F1 BA 11 */ bl func_801C711C +/* 802AB70C 002A736C 4B F1 BA 11 */ bl _savegpr_24 /* 802AB710 002A7370 3C C0 80 53 */ lis r6, lbl_80536D70@ha /* 802AB714 002A7374 54 60 10 3A */ slwi r0, r3, 2 /* 802AB718 002A7378 38 C6 6D 70 */ addi r6, r6, lbl_80536D70@l @@ -58093,7 +58093,7 @@ lbl_802AC75C: /* 802AC75C 002A83BC 7F 03 C3 78 */ mr r3, r24 lbl_802AC760: /* 802AC760 002A83C0 39 61 04 70 */ addi r11, r1, 0x470 -/* 802AC764 002A83C4 4B F1 AA 05 */ bl func_801C7168 +/* 802AC764 002A83C4 4B F1 AA 05 */ bl _restgpr_24 /* 802AC768 002A83C8 80 01 04 74 */ lwz r0, 0x474(r1) /* 802AC76C 002A83CC 7C 08 03 A6 */ mtlr r0 /* 802AC770 002A83D0 38 21 04 70 */ addi r1, r1, 0x470 @@ -65511,7 +65511,7 @@ func_802B3570: /* 802B3574 002AF1D4 7C 08 02 A6 */ mflr r0 /* 802B3578 002AF1D8 90 01 00 34 */ stw r0, 0x34(r1) /* 802B357C 002AF1DC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802B3580 002AF1E0 4B F1 3B 9D */ bl func_801C711C +/* 802B3580 002AF1E0 4B F1 3B 9D */ bl _savegpr_24 /* 802B3584 002AF1E4 3D 00 80 53 */ lis r8, lbl_80536D70@ha /* 802B3588 002AF1E8 54 60 10 3A */ slwi r0, r3, 2 /* 802B358C 002AF1EC 39 08 6D 70 */ addi r8, r8, lbl_80536D70@l @@ -65556,7 +65556,7 @@ lbl_802B35FC: lbl_802B3620: /* 802B3620 002AF280 39 61 00 30 */ addi r11, r1, 0x30 /* 802B3624 002AF284 7F A3 EB 78 */ mr r3, r29 -/* 802B3628 002AF288 4B F1 3B 41 */ bl func_801C7168 +/* 802B3628 002AF288 4B F1 3B 41 */ bl _restgpr_24 /* 802B362C 002AF28C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802B3630 002AF290 7C 08 03 A6 */ mtlr r0 /* 802B3634 002AF294 38 21 00 30 */ addi r1, r1, 0x30 @@ -65568,7 +65568,7 @@ func_802B363C: /* 802B3640 002AF2A0 7C 08 02 A6 */ mflr r0 /* 802B3644 002AF2A4 90 01 00 34 */ stw r0, 0x34(r1) /* 802B3648 002AF2A8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802B364C 002AF2AC 4B F1 3A D1 */ bl func_801C711C +/* 802B364C 002AF2AC 4B F1 3A D1 */ bl _savegpr_24 /* 802B3650 002AF2B0 3D 00 80 53 */ lis r8, lbl_80536D70@ha /* 802B3654 002AF2B4 54 60 10 3A */ slwi r0, r3, 2 /* 802B3658 002AF2B8 39 08 6D 70 */ addi r8, r8, lbl_80536D70@l @@ -65613,7 +65613,7 @@ lbl_802B36C8: lbl_802B36EC: /* 802B36EC 002AF34C 39 61 00 30 */ addi r11, r1, 0x30 /* 802B36F0 002AF350 7F A3 EB 78 */ mr r3, r29 -/* 802B36F4 002AF354 4B F1 3A 75 */ bl func_801C7168 +/* 802B36F4 002AF354 4B F1 3A 75 */ bl _restgpr_24 /* 802B36F8 002AF358 80 01 00 34 */ lwz r0, 0x34(r1) /* 802B36FC 002AF35C 7C 08 03 A6 */ mtlr r0 /* 802B3700 002AF360 38 21 00 30 */ addi r1, r1, 0x30 @@ -85668,7 +85668,7 @@ func_802C4F50: /* 802C4F54 002C0BB4 7C 08 02 A6 */ mflr r0 /* 802C4F58 002C0BB8 90 01 00 44 */ stw r0, 0x44(r1) /* 802C4F5C 002C0BBC 39 61 00 40 */ addi r11, r1, 0x40 -/* 802C4F60 002C0BC0 4B F0 21 BD */ bl func_801C711C +/* 802C4F60 002C0BC0 4B F0 21 BD */ bl _savegpr_24 /* 802C4F64 002C0BC4 3C 80 80 57 */ lis r4, lbl_80568B78@ha /* 802C4F68 002C0BC8 2C 03 00 00 */ cmpwi r3, 0 /* 802C4F6C 002C0BCC 3B E4 8B 78 */ addi r31, r4, lbl_80568B78@l @@ -85811,7 +85811,7 @@ lbl_802C5148: /* 802C5154 002C0DB4 41 80 FF 00 */ blt lbl_802C5054 lbl_802C5158: /* 802C5158 002C0DB8 39 61 00 40 */ addi r11, r1, 0x40 -/* 802C515C 002C0DBC 4B F0 20 0D */ bl func_801C7168 +/* 802C515C 002C0DBC 4B F0 20 0D */ bl _restgpr_24 /* 802C5160 002C0DC0 80 01 00 44 */ lwz r0, 0x44(r1) /* 802C5164 002C0DC4 7C 08 03 A6 */ mtlr r0 /* 802C5168 002C0DC8 38 21 00 40 */ addi r1, r1, 0x40 @@ -85823,7 +85823,7 @@ func_802C5170: /* 802C5174 002C0DD4 7C 08 02 A6 */ mflr r0 /* 802C5178 002C0DD8 90 01 00 34 */ stw r0, 0x34(r1) /* 802C517C 002C0DDC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802C5180 002C0DE0 4B F0 1F 9D */ bl func_801C711C +/* 802C5180 002C0DE0 4B F0 1F 9D */ bl _savegpr_24 /* 802C5184 002C0DE4 3D 20 80 57 */ lis r9, lbl_80568B78@ha /* 802C5188 002C0DE8 7C 78 1B 78 */ mr r24, r3 /* 802C518C 002C0DEC 39 29 8B 78 */ addi r9, r9, lbl_80568B78@l @@ -85923,7 +85923,7 @@ lbl_802C52DC: /* 802C52DC 002C0F3C 38 60 00 01 */ li r3, 1 lbl_802C52E0: /* 802C52E0 002C0F40 39 61 00 30 */ addi r11, r1, 0x30 -/* 802C52E4 002C0F44 4B F0 1E 85 */ bl func_801C7168 +/* 802C52E4 002C0F44 4B F0 1E 85 */ bl _restgpr_24 /* 802C52E8 002C0F48 80 01 00 34 */ lwz r0, 0x34(r1) /* 802C52EC 002C0F4C 7C 08 03 A6 */ mtlr r0 /* 802C52F0 002C0F50 38 21 00 30 */ addi r1, r1, 0x30 @@ -90998,7 +90998,7 @@ func_802C9858: /* 802C985C 002C54BC 7C 08 02 A6 */ mflr r0 /* 802C9860 002C54C0 90 01 00 34 */ stw r0, 0x34(r1) /* 802C9864 002C54C4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802C9868 002C54C8 4B EF D8 B5 */ bl func_801C711C +/* 802C9868 002C54C8 4B EF D8 B5 */ bl _savegpr_24 /* 802C986C 002C54CC 7C 9A 23 78 */ mr r26, r4 /* 802C9870 002C54D0 7C 79 1B 78 */ mr r25, r3 /* 802C9874 002C54D4 7C BB 2B 78 */ mr r27, r5 @@ -91137,7 +91137,7 @@ lbl_802C9A38: /* 802C9A64 002C56C4 93 7A 06 2C */ stw r27, 0x62c(r26) lbl_802C9A68: /* 802C9A68 002C56C8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802C9A6C 002C56CC 4B EF D6 FD */ bl func_801C7168 +/* 802C9A6C 002C56CC 4B EF D6 FD */ bl _restgpr_24 /* 802C9A70 002C56D0 80 01 00 34 */ lwz r0, 0x34(r1) /* 802C9A74 002C56D4 7C 08 03 A6 */ mtlr r0 /* 802C9A78 002C56D8 38 21 00 30 */ addi r1, r1, 0x30 @@ -91546,7 +91546,7 @@ func_802CA00C: /* 802CA010 002C5C70 7C 08 02 A6 */ mflr r0 /* 802CA014 002C5C74 90 01 00 34 */ stw r0, 0x34(r1) /* 802CA018 002C5C78 39 61 00 30 */ addi r11, r1, 0x30 -/* 802CA01C 002C5C7C 4B EF D1 01 */ bl func_801C711C +/* 802CA01C 002C5C7C 4B EF D1 01 */ bl _savegpr_24 /* 802CA020 002C5C80 3C E0 80 57 */ lis r7, lbl_80568B78@ha /* 802CA024 002C5C84 7C 78 1B 78 */ mr r24, r3 /* 802CA028 002C5C88 38 E7 8B 78 */ addi r7, r7, lbl_80568B78@l @@ -91650,7 +91650,7 @@ lbl_802CA184: /* 802CA190 002C5DF0 41 80 FE B8 */ blt lbl_802CA048 lbl_802CA194: /* 802CA194 002C5DF4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802CA198 002C5DF8 4B EF CF D1 */ bl func_801C7168 +/* 802CA198 002C5DF8 4B EF CF D1 */ bl _restgpr_24 /* 802CA19C 002C5DFC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802CA1A0 002C5E00 7C 08 03 A6 */ mtlr r0 /* 802CA1A4 002C5E04 38 21 00 30 */ addi r1, r1, 0x30 @@ -92012,7 +92012,7 @@ func_802CA65C: /* 802CA660 002C62C0 7C 08 02 A6 */ mflr r0 /* 802CA664 002C62C4 90 01 00 44 */ stw r0, 0x44(r1) /* 802CA668 002C62C8 39 61 00 40 */ addi r11, r1, 0x40 -/* 802CA66C 002C62CC 4B EF CA B1 */ bl func_801C711C +/* 802CA66C 002C62CC 4B EF CA B1 */ bl _savegpr_24 /* 802CA670 002C62D0 3D 20 80 57 */ lis r9, lbl_80568B78@ha /* 802CA674 002C62D4 7C 78 1B 78 */ mr r24, r3 /* 802CA678 002C62D8 39 29 8B 78 */ addi r9, r9, lbl_80568B78@l @@ -92072,7 +92072,7 @@ lbl_802CA73C: /* 802CA744 002C63A4 42 00 FF 84 */ bdnz lbl_802CA6C8 lbl_802CA748: /* 802CA748 002C63A8 39 61 00 40 */ addi r11, r1, 0x40 -/* 802CA74C 002C63AC 4B EF CA 1D */ bl func_801C7168 +/* 802CA74C 002C63AC 4B EF CA 1D */ bl _restgpr_24 /* 802CA750 002C63B0 80 01 00 44 */ lwz r0, 0x44(r1) /* 802CA754 002C63B4 7C 08 03 A6 */ mtlr r0 /* 802CA758 002C63B8 38 21 00 40 */ addi r1, r1, 0x40 @@ -92929,7 +92929,7 @@ func_802CB318: /* 802CB31C 002C6F7C 7C 08 02 A6 */ mflr r0 /* 802CB320 002C6F80 90 01 00 34 */ stw r0, 0x34(r1) /* 802CB324 002C6F84 39 61 00 30 */ addi r11, r1, 0x30 -/* 802CB328 002C6F88 4B EF BD F5 */ bl func_801C711C +/* 802CB328 002C6F88 4B EF BD F5 */ bl _savegpr_24 /* 802CB32C 002C6F8C 3F E0 80 44 */ lis r31, lbl_80441890@ha /* 802CB330 002C6F90 7C 78 1B 78 */ mr r24, r3 /* 802CB334 002C6F94 7C 99 23 78 */ mr r25, r4 @@ -93230,7 +93230,7 @@ lbl_802CB760: /* 802CB760 002C73C0 7F 23 CB 78 */ mr r3, r25 lbl_802CB764: /* 802CB764 002C73C4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802CB768 002C73C8 4B EF BA 01 */ bl func_801C7168 +/* 802CB768 002C73C8 4B EF BA 01 */ bl _restgpr_24 /* 802CB76C 002C73CC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802CB770 002C73D0 7C 08 03 A6 */ mtlr r0 /* 802CB774 002C73D4 38 21 00 30 */ addi r1, r1, 0x30 @@ -93242,7 +93242,7 @@ func_802CB77C: /* 802CB780 002C73E0 7C 08 02 A6 */ mflr r0 /* 802CB784 002C73E4 90 01 00 34 */ stw r0, 0x34(r1) /* 802CB788 002C73E8 39 61 00 30 */ addi r11, r1, 0x30 -/* 802CB78C 002C73EC 4B EF B9 91 */ bl func_801C711C +/* 802CB78C 002C73EC 4B EF B9 91 */ bl _savegpr_24 /* 802CB790 002C73F0 7C 78 1B 78 */ mr r24, r3 /* 802CB794 002C73F4 7C 99 23 78 */ mr r25, r4 /* 802CB798 002C73F8 7C BA 2B 78 */ mr r26, r5 @@ -93413,7 +93413,7 @@ lbl_802CB9E0: /* 802CB9FC 002C765C 90 1F 00 04 */ stw r0, 4(r31) lbl_802CBA00: /* 802CBA00 002C7660 39 61 00 30 */ addi r11, r1, 0x30 -/* 802CBA04 002C7664 4B EF B7 65 */ bl func_801C7168 +/* 802CBA04 002C7664 4B EF B7 65 */ bl _restgpr_24 /* 802CBA08 002C7668 80 01 00 34 */ lwz r0, 0x34(r1) /* 802CBA0C 002C766C 7C 08 03 A6 */ mtlr r0 /* 802CBA10 002C7670 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/asm/text_9.s b/asm/text_9.s index ec6fd20..600a791 100644 --- a/asm/text_9.s +++ b/asm/text_9.s @@ -691,7 +691,7 @@ func_802D33E8: /* 802D33EC 002CF04C 7C 08 02 A6 */ mflr r0 /* 802D33F0 002CF050 90 01 00 34 */ stw r0, 0x34(r1) /* 802D33F4 002CF054 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D33F8 002CF058 4B EF 3D 25 */ bl func_801C711C +/* 802D33F8 002CF058 4B EF 3D 25 */ bl _savegpr_24 /* 802D33FC 002CF05C 3D 20 80 57 */ lis r9, lbl_8056B838@ha /* 802D3400 002CF060 3F E0 80 44 */ lis r31, lbl_80442740@ha /* 802D3404 002CF064 39 29 B8 38 */ addi r9, r9, lbl_8056B838@l @@ -771,7 +771,7 @@ lbl_802D34EC: lbl_802D350C: /* 802D350C 002CF16C 39 61 00 30 */ addi r11, r1, 0x30 /* 802D3510 002CF170 7F 03 C3 78 */ mr r3, r24 -/* 802D3514 002CF174 4B EF 3C 55 */ bl func_801C7168 +/* 802D3514 002CF174 4B EF 3C 55 */ bl _restgpr_24 /* 802D3518 002CF178 80 01 00 34 */ lwz r0, 0x34(r1) /* 802D351C 002CF17C 7C 08 03 A6 */ mtlr r0 /* 802D3520 002CF180 38 21 00 30 */ addi r1, r1, 0x30 @@ -1208,7 +1208,7 @@ lbl_802D3B04: /* 802D3B20 002CF780 7C 08 02 A6 */ mflr r0 /* 802D3B24 002CF784 90 01 00 34 */ stw r0, 0x34(r1) /* 802D3B28 002CF788 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D3B2C 002CF78C 4B EF 35 F1 */ bl func_801C711C +/* 802D3B2C 002CF78C 4B EF 35 F1 */ bl _savegpr_24 /* 802D3B30 002CF790 3C E0 80 57 */ lis r7, lbl_8056B838@ha /* 802D3B34 002CF794 3F E0 80 44 */ lis r31, lbl_80442858@ha /* 802D3B38 002CF798 38 E7 B8 38 */ addi r7, r7, lbl_8056B838@l @@ -1363,7 +1363,7 @@ lbl_802D3D00: /* 802D3D58 002CF9B8 4B FE 91 E9 */ bl func_802BCF40 lbl_802D3D5C: /* 802D3D5C 002CF9BC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D3D60 002CF9C0 4B EF 34 09 */ bl func_801C7168 +/* 802D3D60 002CF9C0 4B EF 34 09 */ bl _restgpr_24 /* 802D3D64 002CF9C4 80 01 00 34 */ lwz r0, 0x34(r1) /* 802D3D68 002CF9C8 7C 08 03 A6 */ mtlr r0 /* 802D3D6C 002CF9CC 38 21 00 30 */ addi r1, r1, 0x30 @@ -6513,7 +6513,7 @@ func_802D861C: /* 802D8620 002D4280 7C 08 02 A6 */ mflr r0 /* 802D8624 002D4284 90 01 00 34 */ stw r0, 0x34(r1) /* 802D8628 002D4288 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D862C 002D428C 4B EE EA F1 */ bl func_801C711C +/* 802D862C 002D428C 4B EE EA F1 */ bl _savegpr_24 /* 802D8630 002D4290 A0 03 00 04 */ lhz r0, 4(r3) /* 802D8634 002D4294 38 C0 00 00 */ li r6, 0 /* 802D8638 002D4298 B0 C3 00 06 */ sth r6, 6(r3) @@ -6631,7 +6631,7 @@ lbl_802D87D0: /* 802D87D0 002D4430 7F C3 F3 78 */ mr r3, r30 lbl_802D87D4: /* 802D87D4 002D4434 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D87D8 002D4438 4B EE E9 91 */ bl func_801C7168 +/* 802D87D8 002D4438 4B EE E9 91 */ bl _restgpr_24 /* 802D87DC 002D443C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802D87E0 002D4440 7C 08 03 A6 */ mtlr r0 /* 802D87E4 002D4444 38 21 00 30 */ addi r1, r1, 0x30 @@ -6901,7 +6901,7 @@ func_802D8B78: /* 802D8B7C 002D47DC 7C 08 02 A6 */ mflr r0 /* 802D8B80 002D47E0 90 01 00 34 */ stw r0, 0x34(r1) /* 802D8B84 002D47E4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D8B88 002D47E8 4B EE E5 95 */ bl func_801C711C +/* 802D8B88 002D47E8 4B EE E5 95 */ bl _savegpr_24 /* 802D8B8C 002D47EC A0 03 00 04 */ lhz r0, 4(r3) /* 802D8B90 002D47F0 3F C0 80 44 */ lis r30, lbl_80443E78@ha /* 802D8B94 002D47F4 7C 7B 1B 78 */ mr r27, r3 @@ -7114,7 +7114,7 @@ lbl_802D8E80: /* 802D8E8C 002D4AEC 4B FF D5 71 */ bl func_802D63FC lbl_802D8E90: /* 802D8E90 002D4AF0 39 61 00 30 */ addi r11, r1, 0x30 -/* 802D8E94 002D4AF4 4B EE E2 D5 */ bl func_801C7168 +/* 802D8E94 002D4AF4 4B EE E2 D5 */ bl _restgpr_24 /* 802D8E98 002D4AF8 80 01 00 34 */ lwz r0, 0x34(r1) /* 802D8E9C 002D4AFC 7C 08 03 A6 */ mtlr r0 /* 802D8EA0 002D4B00 38 21 00 30 */ addi r1, r1, 0x30 @@ -8868,7 +8868,7 @@ func_802DA79C: /* 802DA7A0 002D6400 7C 08 02 A6 */ mflr r0 /* 802DA7A4 002D6404 90 01 00 34 */ stw r0, 0x34(r1) /* 802DA7A8 002D6408 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DA7AC 002D640C 4B EE C9 71 */ bl func_801C711C +/* 802DA7AC 002D640C 4B EE C9 71 */ bl _savegpr_24 /* 802DA7B0 002D6410 7C 79 1B 78 */ mr r25, r3 /* 802DA7B4 002D6414 7C 9A 23 78 */ mr r26, r4 /* 802DA7B8 002D6418 7C BB 2B 78 */ mr r27, r5 @@ -8976,7 +8976,7 @@ lbl_802DA900: /* 802DA934 002D6594 4B FF D7 8D */ bl func_802D80C0 lbl_802DA938: /* 802DA938 002D6598 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DA93C 002D659C 4B EE C8 2D */ bl func_801C7168 +/* 802DA93C 002D659C 4B EE C8 2D */ bl _restgpr_24 /* 802DA940 002D65A0 80 01 00 34 */ lwz r0, 0x34(r1) /* 802DA944 002D65A4 7C 08 03 A6 */ mtlr r0 /* 802DA948 002D65A8 38 21 00 30 */ addi r1, r1, 0x30 @@ -9907,7 +9907,7 @@ func_802DB5F8: /* 802DB5FC 002D725C 7C 08 02 A6 */ mflr r0 /* 802DB600 002D7260 90 01 00 34 */ stw r0, 0x34(r1) /* 802DB604 002D7264 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DB608 002D7268 4B EE BB 15 */ bl func_801C711C +/* 802DB608 002D7268 4B EE BB 15 */ bl _savegpr_24 /* 802DB60C 002D726C 38 00 00 03 */ li r0, 3 /* 802DB610 002D7270 3F 40 80 57 */ lis r26, lbl_8056BC40@ha /* 802DB614 002D7274 38 9A BC 40 */ addi r4, r26, lbl_8056BC40@l @@ -9973,7 +9973,7 @@ lbl_802DB6E0: /* 802DB6F4 002D7354 48 00 00 1D */ bl func_802DB710 lbl_802DB6F8: /* 802DB6F8 002D7358 39 61 00 30 */ addi r11, r1, 0x30 -/* 802DB6FC 002D735C 4B EE BA 6D */ bl func_801C7168 +/* 802DB6FC 002D735C 4B EE BA 6D */ bl _restgpr_24 /* 802DB700 002D7360 80 01 00 34 */ lwz r0, 0x34(r1) /* 802DB704 002D7364 7C 08 03 A6 */ mtlr r0 /* 802DB708 002D7368 38 21 00 30 */ addi r1, r1, 0x30 @@ -18396,7 +18396,7 @@ func_802E2C50: /* 802E2C54 002DE8B4 7C 08 02 A6 */ mflr r0 /* 802E2C58 002DE8B8 90 01 00 34 */ stw r0, 0x34(r1) /* 802E2C5C 002DE8BC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802E2C60 002DE8C0 4B EE 44 BD */ bl func_801C711C +/* 802E2C60 002DE8C0 4B EE 44 BD */ bl _savegpr_24 /* 802E2C64 002DE8C4 3C A0 80 57 */ lis r5, lbl_8056C840@ha /* 802E2C68 002DE8C8 2C 03 00 00 */ cmpwi r3, 0 /* 802E2C6C 002DE8CC 38 A5 C8 40 */ addi r5, r5, lbl_8056C840@l @@ -18479,7 +18479,7 @@ lbl_802E2D68: /* 802E2D70 002DE9D0 38 60 00 00 */ li r3, 0 lbl_802E2D74: /* 802E2D74 002DE9D4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802E2D78 002DE9D8 4B EE 43 F1 */ bl func_801C7168 +/* 802E2D78 002DE9D8 4B EE 43 F1 */ bl _restgpr_24 /* 802E2D7C 002DE9DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802E2D80 002DE9E0 7C 08 03 A6 */ mtlr r0 /* 802E2D84 002DE9E4 38 21 00 30 */ addi r1, r1, 0x30 @@ -21832,7 +21832,7 @@ func_802E5C64: /* 802E5C68 002E18C8 7C 08 02 A6 */ mflr r0 /* 802E5C6C 002E18CC 90 01 00 74 */ stw r0, 0x74(r1) /* 802E5C70 002E18D0 39 61 00 70 */ addi r11, r1, 0x70 -/* 802E5C74 002E18D4 4B EE 14 A9 */ bl func_801C711C +/* 802E5C74 002E18D4 4B EE 14 A9 */ bl _savegpr_24 /* 802E5C78 002E18D8 89 26 00 00 */ lbz r9, 0(r6) /* 802E5C7C 002E18DC 38 06 00 04 */ addi r0, r6, 4 /* 802E5C80 002E18E0 89 06 00 01 */ lbz r8, 1(r6) @@ -22069,7 +22069,7 @@ lbl_802E5FB4: /* 802E5FD8 002E1C38 4B FF 01 19 */ bl func_802D60F0 lbl_802E5FDC: /* 802E5FDC 002E1C3C 39 61 00 70 */ addi r11, r1, 0x70 -/* 802E5FE0 002E1C40 4B EE 11 89 */ bl func_801C7168 +/* 802E5FE0 002E1C40 4B EE 11 89 */ bl _restgpr_24 /* 802E5FE4 002E1C44 80 01 00 74 */ lwz r0, 0x74(r1) /* 802E5FE8 002E1C48 7C 08 03 A6 */ mtlr r0 /* 802E5FEC 002E1C4C 38 21 00 70 */ addi r1, r1, 0x70 @@ -22693,7 +22693,7 @@ func_802E6870: /* 802E6874 002E24D4 7C 08 02 A6 */ mflr r0 /* 802E6878 002E24D8 90 01 00 34 */ stw r0, 0x34(r1) /* 802E687C 002E24DC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802E6880 002E24E0 4B EE 08 9D */ bl func_801C711C +/* 802E6880 002E24E0 4B EE 08 9D */ bl _savegpr_24 /* 802E6884 002E24E4 3C E0 80 57 */ lis r7, lbl_8056C840@ha /* 802E6888 002E24E8 7C 7F 1B 78 */ mr r31, r3 /* 802E688C 002E24EC 38 E7 C8 40 */ addi r7, r7, lbl_8056C840@l @@ -22769,7 +22769,7 @@ lbl_802E696C: /* 802E6990 002E25F0 4B FE F7 61 */ bl func_802D60F0 lbl_802E6994: /* 802E6994 002E25F4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802E6998 002E25F8 4B EE 07 D1 */ bl func_801C7168 +/* 802E6998 002E25F8 4B EE 07 D1 */ bl _restgpr_24 /* 802E699C 002E25FC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802E69A0 002E2600 7C 08 03 A6 */ mtlr r0 /* 802E69A4 002E2604 38 21 00 30 */ addi r1, r1, 0x30 @@ -24982,7 +24982,7 @@ lbl_802E8784: /* 802E8788 002E43E8 7C 08 02 A6 */ mflr r0 /* 802E878C 002E43EC 90 01 00 34 */ stw r0, 0x34(r1) /* 802E8790 002E43F0 39 61 00 30 */ addi r11, r1, 0x30 -/* 802E8794 002E43F4 4B ED E9 89 */ bl func_801C711C +/* 802E8794 002E43F4 4B ED E9 89 */ bl _savegpr_24 /* 802E8798 002E43F8 7C 78 1B 78 */ mr r24, r3 /* 802E879C 002E43FC 7C 99 23 78 */ mr r25, r4 /* 802E87A0 002E4400 7C BA 2B 78 */ mr r26, r5 @@ -25063,7 +25063,7 @@ lbl_802E88B0: /* 802E88B0 002E4510 38 60 FF F8 */ li r3, -8 lbl_802E88B4: /* 802E88B4 002E4514 39 61 00 30 */ addi r11, r1, 0x30 -/* 802E88B8 002E4518 4B ED E8 B1 */ bl func_801C7168 +/* 802E88B8 002E4518 4B ED E8 B1 */ bl _restgpr_24 /* 802E88BC 002E451C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802E88C0 002E4520 7C 08 03 A6 */ mtlr r0 /* 802E88C4 002E4524 38 21 00 30 */ addi r1, r1, 0x30 @@ -28170,7 +28170,7 @@ func_802EB384: /* 802EB388 002E6FE8 7C 08 02 A6 */ mflr r0 /* 802EB38C 002E6FEC 90 01 00 34 */ stw r0, 0x34(r1) /* 802EB390 002E6FF0 39 61 00 30 */ addi r11, r1, 0x30 -/* 802EB394 002E6FF4 4B ED BD 89 */ bl func_801C711C +/* 802EB394 002E6FF4 4B ED BD 89 */ bl _savegpr_24 /* 802EB398 002E6FF8 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EB39C 002E6FFC 3F E0 80 57 */ lis r31, lbl_80571060@ha /* 802EB3A0 002E7000 3B FF 10 60 */ addi r31, r31, lbl_80571060@l @@ -28202,7 +28202,7 @@ func_802EB384: /* 802EB408 002E7068 7C A0 28 50 */ subf r5, r0, r5 /* 802EB40C 002E706C 3B A6 00 02 */ addi r29, r6, 2 /* 802EB410 002E7070 38 84 00 02 */ addi r4, r4, 2 -/* 802EB414 002E7074 4B ED EE 61 */ bl func_801CA274 +/* 802EB414 002E7074 4B ED EE 61 */ bl memmove /* 802EB418 002E7078 38 98 FF FE */ addi r4, r24, -2 /* 802EB41C 002E707C 38 04 00 02 */ addi r0, r4, 2 /* 802EB420 002E7080 7C 19 00 50 */ subf r0, r25, r0 @@ -28231,7 +28231,7 @@ lbl_802EB460: /* 802EB46C 002E70CC 7C 7F 2A 14 */ add r3, r31, r5 /* 802EB470 002E70D0 7C 85 22 14 */ add r4, r5, r4 /* 802EB474 002E70D4 7C A0 D0 50 */ subf r5, r0, r26 -/* 802EB478 002E70D8 4B ED ED FD */ bl func_801CA274 +/* 802EB478 002E70D8 4B ED ED FD */ bl memmove /* 802EB47C 002E70DC 7C 1D D0 50 */ subf r0, r29, r26 /* 802EB480 002E70E0 7F A5 EB 78 */ mr r5, r29 /* 802EB484 002E70E4 7C 7F 02 14 */ add r3, r31, r0 @@ -28270,7 +28270,7 @@ lbl_802EB4D8: /* 802EB4F8 002E7158 B0 1F 00 04 */ sth r0, 4(r31) lbl_802EB4FC: /* 802EB4FC 002E715C 39 61 00 30 */ addi r11, r1, 0x30 -/* 802EB500 002E7160 4B ED BC 69 */ bl func_801C7168 +/* 802EB500 002E7160 4B ED BC 69 */ bl _restgpr_24 /* 802EB504 002E7164 80 01 00 34 */ lwz r0, 0x34(r1) /* 802EB508 002E7168 7C 08 03 A6 */ mtlr r0 /* 802EB50C 002E716C 38 21 00 30 */ addi r1, r1, 0x30 @@ -28385,7 +28385,7 @@ lbl_802EB638: /* 802EB684 002E72E4 7F 76 1A 14 */ add r27, r22, r3 /* 802EB688 002E72E8 38 64 00 02 */ addi r3, r4, 2 /* 802EB68C 002E72EC 7C A0 28 50 */ subf r5, r0, r5 -/* 802EB690 002E72F0 4B ED EB E5 */ bl func_801CA274 +/* 802EB690 002E72F0 4B ED EB E5 */ bl memmove lbl_802EB694: /* 802EB694 002E72F4 A0 76 00 00 */ lhz r3, 0(r22) /* 802EB698 002E72F8 38 03 00 02 */ addi r0, r3, 2 @@ -32456,7 +32456,7 @@ func_802EEDC8: /* 802EEDCC 002EAA2C 7C 08 02 A6 */ mflr r0 /* 802EEDD0 002EAA30 90 01 00 34 */ stw r0, 0x34(r1) /* 802EEDD4 002EAA34 39 61 00 30 */ addi r11, r1, 0x30 -/* 802EEDD8 002EAA38 4B ED 83 45 */ bl func_801C711C +/* 802EEDD8 002EAA38 4B ED 83 45 */ bl _savegpr_24 /* 802EEDDC 002EAA3C 7C 7B 1B 78 */ mr r27, r3 /* 802EEDE0 002EAA40 7C 9C 23 78 */ mr r28, r4 /* 802EEDE4 002EAA44 3B A5 FF FA */ addi r29, r5, -6 @@ -32515,7 +32515,7 @@ lbl_802EEE90: /* 802EEEA8 002EAB08 48 00 51 65 */ bl func_802F400C /* 802EEEAC 002EAB0C 39 61 00 30 */ addi r11, r1, 0x30 /* 802EEEB0 002EAB10 7F C3 F3 78 */ mr r3, r30 -/* 802EEEB4 002EAB14 4B ED 82 B5 */ bl func_801C7168 +/* 802EEEB4 002EAB14 4B ED 82 B5 */ bl _restgpr_24 /* 802EEEB8 002EAB18 80 01 00 34 */ lwz r0, 0x34(r1) /* 802EEEBC 002EAB1C 7C 08 03 A6 */ mtlr r0 /* 802EEEC0 002EAB20 38 21 00 30 */ addi r1, r1, 0x30 @@ -37672,7 +37672,7 @@ func_802F361C: /* 802F3620 002EF280 7C 08 02 A6 */ mflr r0 /* 802F3624 002EF284 90 01 00 34 */ stw r0, 0x34(r1) /* 802F3628 002EF288 39 61 00 30 */ addi r11, r1, 0x30 -/* 802F362C 002EF28C 4B ED 3A F1 */ bl func_801C711C +/* 802F362C 002EF28C 4B ED 3A F1 */ bl _savegpr_24 /* 802F3630 002EF290 2C 06 00 00 */ cmpwi r6, 0 /* 802F3634 002EF294 7C 78 1B 78 */ mr r24, r3 /* 802F3638 002EF298 7C 99 23 78 */ mr r25, r4 @@ -37721,7 +37721,7 @@ lbl_802F36DC: /* 802F36E0 002EF340 4B F7 C3 45 */ bl func_8026FA24 lbl_802F36E4: /* 802F36E4 002EF344 39 61 00 30 */ addi r11, r1, 0x30 -/* 802F36E8 002EF348 4B ED 3A 81 */ bl func_801C7168 +/* 802F36E8 002EF348 4B ED 3A 81 */ bl _restgpr_24 /* 802F36EC 002EF34C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802F36F0 002EF350 7C 08 03 A6 */ mtlr r0 /* 802F36F4 002EF354 38 21 00 30 */ addi r1, r1, 0x30 @@ -37733,7 +37733,7 @@ func_802F36FC: /* 802F3700 002EF360 7C 08 02 A6 */ mflr r0 /* 802F3704 002EF364 90 01 00 34 */ stw r0, 0x34(r1) /* 802F3708 002EF368 39 61 00 30 */ addi r11, r1, 0x30 -/* 802F370C 002EF36C 4B ED 3A 11 */ bl func_801C711C +/* 802F370C 002EF36C 4B ED 3A 11 */ bl _savegpr_24 /* 802F3710 002EF370 83 A2 AA 30 */ lwz r29, lbl_80643030-_SDA2_BASE_(r2) /* 802F3714 002EF374 7C 78 1B 78 */ mr r24, r3 /* 802F3718 002EF378 7C 99 23 78 */ mr r25, r4 @@ -37783,7 +37783,7 @@ lbl_802F37AC: /* 802F37C0 002EF420 4B F7 C2 65 */ bl func_8026FA24 lbl_802F37C4: /* 802F37C4 002EF424 39 61 00 30 */ addi r11, r1, 0x30 -/* 802F37C8 002EF428 4B ED 39 A1 */ bl func_801C7168 +/* 802F37C8 002EF428 4B ED 39 A1 */ bl _restgpr_24 /* 802F37CC 002EF42C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802F37D0 002EF430 7C 08 03 A6 */ mtlr r0 /* 802F37D4 002EF434 38 21 00 30 */ addi r1, r1, 0x30 @@ -46380,7 +46380,7 @@ func_802FAB38: /* 802FAB3C 002F679C 7C 08 02 A6 */ mflr r0 /* 802FAB40 002F67A0 90 01 00 34 */ stw r0, 0x34(r1) /* 802FAB44 002F67A4 39 61 00 30 */ addi r11, r1, 0x30 -/* 802FAB48 002F67A8 4B EC C5 D5 */ bl func_801C711C +/* 802FAB48 002F67A8 4B EC C5 D5 */ bl _savegpr_24 /* 802FAB4C 002F67AC 7D 1D 43 78 */ mr r29, r8 /* 802FAB50 002F67B0 7C 78 1B 78 */ mr r24, r3 /* 802FAB54 002F67B4 7C 99 23 78 */ mr r25, r4 @@ -46433,7 +46433,7 @@ lbl_802FABF4: /* 802FABFC 002F685C 7F A3 EB 78 */ mr r3, r29 lbl_802FAC00: /* 802FAC00 002F6860 39 61 00 30 */ addi r11, r1, 0x30 -/* 802FAC04 002F6864 4B EC C5 65 */ bl func_801C7168 +/* 802FAC04 002F6864 4B EC C5 65 */ bl _restgpr_24 /* 802FAC08 002F6868 80 01 00 34 */ lwz r0, 0x34(r1) /* 802FAC0C 002F686C 7C 08 03 A6 */ mtlr r0 /* 802FAC10 002F6870 38 21 00 30 */ addi r1, r1, 0x30 @@ -46445,7 +46445,7 @@ func_802FAC18: /* 802FAC1C 002F687C 7C 08 02 A6 */ mflr r0 /* 802FAC20 002F6880 90 01 00 34 */ stw r0, 0x34(r1) /* 802FAC24 002F6884 39 61 00 30 */ addi r11, r1, 0x30 -/* 802FAC28 002F6888 4B EC C4 F5 */ bl func_801C711C +/* 802FAC28 002F6888 4B EC C4 F5 */ bl _savegpr_24 /* 802FAC2C 002F688C 7C 78 1B 78 */ mr r24, r3 /* 802FAC30 002F6890 7C 99 23 78 */ mr r25, r4 /* 802FAC34 002F6894 7C BA 2B 78 */ mr r26, r5 @@ -46510,7 +46510,7 @@ lbl_802FAD00: /* 802FAD00 002F6960 38 60 00 01 */ li r3, 1 lbl_802FAD04: /* 802FAD04 002F6964 39 61 00 30 */ addi r11, r1, 0x30 -/* 802FAD08 002F6968 4B EC C4 61 */ bl func_801C7168 +/* 802FAD08 002F6968 4B EC C4 61 */ bl _restgpr_24 /* 802FAD0C 002F696C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802FAD10 002F6970 7C 08 03 A6 */ mtlr r0 /* 802FAD14 002F6974 38 21 00 30 */ addi r1, r1, 0x30 @@ -48874,7 +48874,7 @@ func_802FCE24: /* 802FCE28 002F8A88 7C 08 02 A6 */ mflr r0 /* 802FCE2C 002F8A8C 90 01 00 34 */ stw r0, 0x34(r1) /* 802FCE30 002F8A90 39 61 00 30 */ addi r11, r1, 0x30 -/* 802FCE34 002F8A94 4B EC A2 E9 */ bl func_801C711C +/* 802FCE34 002F8A94 4B EC A2 E9 */ bl _savegpr_24 /* 802FCE38 002F8A98 7C 7A 1B 78 */ mr r26, r3 /* 802FCE3C 002F8A9C 48 00 30 2D */ bl func_802FFE68 /* 802FCE40 002F8AA0 7C 79 1B 78 */ mr r25, r3 @@ -48969,7 +48969,7 @@ lbl_802FCF70: /* 802FCF88 002F8BE8 4B F7 2C 91 */ bl func_8026FC18 lbl_802FCF8C: /* 802FCF8C 002F8BEC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802FCF90 002F8BF0 4B EC A1 D9 */ bl func_801C7168 +/* 802FCF90 002F8BF0 4B EC A1 D9 */ bl _restgpr_24 /* 802FCF94 002F8BF4 80 01 00 34 */ lwz r0, 0x34(r1) /* 802FCF98 002F8BF8 7C 08 03 A6 */ mtlr r0 /* 802FCF9C 002F8BFC 38 21 00 30 */ addi r1, r1, 0x30 @@ -50036,7 +50036,7 @@ func_802FDE70: /* 802FDE74 002F9AD4 7C 08 02 A6 */ mflr r0 /* 802FDE78 002F9AD8 90 01 00 34 */ stw r0, 0x34(r1) /* 802FDE7C 002F9ADC 39 61 00 30 */ addi r11, r1, 0x30 -/* 802FDE80 002F9AE0 4B EC 92 9D */ bl func_801C711C +/* 802FDE80 002F9AE0 4B EC 92 9D */ bl _savegpr_24 /* 802FDE84 002F9AE4 7C 7B 1B 78 */ mr r27, r3 /* 802FDE88 002F9AE8 48 00 1F E1 */ bl func_802FFE68 /* 802FDE8C 002F9AEC 7C 78 1B 78 */ mr r24, r3 @@ -50159,7 +50159,7 @@ lbl_802FE034: /* 802FE034 002F9C94 38 60 00 01 */ li r3, 1 lbl_802FE038: /* 802FE038 002F9C98 39 61 00 30 */ addi r11, r1, 0x30 -/* 802FE03C 002F9C9C 4B EC 91 2D */ bl func_801C7168 +/* 802FE03C 002F9C9C 4B EC 91 2D */ bl _restgpr_24 /* 802FE040 002F9CA0 80 01 00 34 */ lwz r0, 0x34(r1) /* 802FE044 002F9CA4 7C 08 03 A6 */ mtlr r0 /* 802FE048 002F9CA8 38 21 00 30 */ addi r1, r1, 0x30 @@ -52666,7 +52666,7 @@ func_803001CC: /* 803001DC 002FBE3C 7C 08 02 A6 */ mflr r0 /* 803001E0 002FBE40 7D 8B 63 78 */ mr r11, r12 /* 803001E4 002FBE44 90 0C 00 04 */ stw r0, 4(r12) -/* 803001E8 002FBE48 4B EC 6F 35 */ bl func_801C711C +/* 803001E8 002FBE48 4B EC 6F 35 */ bl _savegpr_24 /* 803001EC 002FBE4C 3C C0 80 44 */ lis r6, lbl_80446240@ha /* 803001F0 002FBE50 7C 7C 1B 78 */ mr r28, r3 /* 803001F4 002FBE54 7C 9D 23 78 */ mr r29, r4 @@ -52846,7 +52846,7 @@ lbl_80300464: lbl_80300470: /* 80300470 002FC0D0 81 41 00 00 */ lwz r10, 0(r1) /* 80300474 002FC0D4 7D 4B 53 78 */ mr r11, r10 -/* 80300478 002FC0D8 4B EC 6C F1 */ bl func_801C7168 +/* 80300478 002FC0D8 4B EC 6C F1 */ bl _restgpr_24 /* 8030047C 002FC0DC 80 0A 00 04 */ lwz r0, 4(r10) /* 80300480 002FC0E0 7C 08 03 A6 */ mtlr r0 /* 80300484 002FC0E4 7D 41 53 78 */ mr r1, r10 @@ -53104,7 +53104,7 @@ func_803007F8: /* 80300808 002FC468 7C 08 02 A6 */ mflr r0 /* 8030080C 002FC46C 7D 8B 63 78 */ mr r11, r12 /* 80300810 002FC470 90 0C 00 04 */ stw r0, 4(r12) -/* 80300814 002FC474 4B EC 69 09 */ bl func_801C711C +/* 80300814 002FC474 4B EC 69 09 */ bl _savegpr_24 /* 80300818 002FC478 3F E0 80 58 */ lis r31, lbl_8057B780@ha /* 8030081C 002FC47C 3D 00 80 44 */ lis r8, lbl_80446240@ha /* 80300820 002FC480 7C 78 1B 78 */ mr r24, r3 @@ -53186,7 +53186,7 @@ lbl_803008AC: lbl_80300948: /* 80300948 002FC5A8 81 41 00 00 */ lwz r10, 0(r1) /* 8030094C 002FC5AC 7D 4B 53 78 */ mr r11, r10 -/* 80300950 002FC5B0 4B EC 68 19 */ bl func_801C7168 +/* 80300950 002FC5B0 4B EC 68 19 */ bl _restgpr_24 /* 80300954 002FC5B4 80 0A 00 04 */ lwz r0, 4(r10) /* 80300958 002FC5B8 7C 08 03 A6 */ mtlr r0 /* 8030095C 002FC5BC 7D 41 53 78 */ mr r1, r10 @@ -54824,7 +54824,7 @@ func_80301F80: /* 80301F84 002FDBE4 7C 08 02 A6 */ mflr r0 /* 80301F88 002FDBE8 90 01 00 34 */ stw r0, 0x34(r1) /* 80301F8C 002FDBEC 39 61 00 30 */ addi r11, r1, 0x30 -/* 80301F90 002FDBF0 4B EC 51 8D */ bl func_801C711C +/* 80301F90 002FDBF0 4B EC 51 8D */ bl _savegpr_24 /* 80301F94 002FDBF4 3B 40 00 00 */ li r26, 0 /* 80301F98 002FDBF8 3B C0 03 E8 */ li r30, 0x3e8 /* 80301F9C 002FDBFC 7F FA F1 D6 */ mullw r31, r26, r30 @@ -54862,7 +54862,7 @@ lbl_80302004: lbl_80302010: /* 80302010 002FDC70 39 61 00 30 */ addi r11, r1, 0x30 /* 80302014 002FDC74 7F 43 D3 78 */ mr r3, r26 -/* 80302018 002FDC78 4B EC 51 51 */ bl func_801C7168 +/* 80302018 002FDC78 4B EC 51 51 */ bl _restgpr_24 /* 8030201C 002FDC7C 80 01 00 34 */ lwz r0, 0x34(r1) /* 80302020 002FDC80 7C 08 03 A6 */ mtlr r0 /* 80302024 002FDC84 38 21 00 30 */ addi r1, r1, 0x30 @@ -67703,7 +67703,7 @@ func_8030CDA8: /* 8030CDAC 00308A0C 7C 08 02 A6 */ mflr r0 /* 8030CDB0 00308A10 90 01 00 44 */ stw r0, 0x44(r1) /* 8030CDB4 00308A14 39 61 00 40 */ addi r11, r1, 0x40 -/* 8030CDB8 00308A18 4B EB A3 65 */ bl func_801C711C +/* 8030CDB8 00308A18 4B EB A3 65 */ bl _savegpr_24 /* 8030CDBC 00308A1C 2C 03 00 00 */ cmpwi r3, 0 /* 8030CDC0 00308A20 7C 7A 1B 78 */ mr r26, r3 /* 8030CDC4 00308A24 7C 9B 23 78 */ mr r27, r4 @@ -67913,7 +67913,7 @@ lbl_8030D09C: /* 8030D0AC 00308D0C 38 60 00 00 */ li r3, 0 lbl_8030D0B0: /* 8030D0B0 00308D10 39 61 00 40 */ addi r11, r1, 0x40 -/* 8030D0B4 00308D14 4B EB A0 B5 */ bl func_801C7168 +/* 8030D0B4 00308D14 4B EB A0 B5 */ bl _restgpr_24 /* 8030D0B8 00308D18 80 01 00 44 */ lwz r0, 0x44(r1) /* 8030D0BC 00308D1C 7C 08 03 A6 */ mtlr r0 /* 8030D0C0 00308D20 38 21 00 40 */ addi r1, r1, 0x40 @@ -70857,7 +70857,7 @@ func_8030F8F0: /* 8030F8F4 0030B554 7C 08 02 A6 */ mflr r0 /* 8030F8F8 0030B558 90 01 00 44 */ stw r0, 0x44(r1) /* 8030F8FC 0030B55C 39 61 00 40 */ addi r11, r1, 0x40 -/* 8030F900 0030B560 4B EB 78 1D */ bl func_801C711C +/* 8030F900 0030B560 4B EB 78 1D */ bl _savegpr_24 /* 8030F904 0030B564 83 E3 00 34 */ lwz r31, 0x34(r3) /* 8030F908 0030B568 39 00 FF FF */ li r8, -1 /* 8030F90C 0030B56C 38 00 00 01 */ li r0, 1 @@ -70923,7 +70923,7 @@ lbl_8030F9E4: /* 8030F9E4 0030B644 38 60 00 00 */ li r3, 0 lbl_8030F9E8: /* 8030F9E8 0030B648 39 61 00 40 */ addi r11, r1, 0x40 -/* 8030F9EC 0030B64C 4B EB 77 7D */ bl func_801C7168 +/* 8030F9EC 0030B64C 4B EB 77 7D */ bl _restgpr_24 /* 8030F9F0 0030B650 80 01 00 44 */ lwz r0, 0x44(r1) /* 8030F9F4 0030B654 7C 08 03 A6 */ mtlr r0 /* 8030F9F8 0030B658 38 21 00 40 */ addi r1, r1, 0x40 @@ -72844,7 +72844,7 @@ func_80311354: /* 80311358 0030CFB8 7C 08 02 A6 */ mflr r0 /* 8031135C 0030CFBC 90 01 00 34 */ stw r0, 0x34(r1) /* 80311360 0030CFC0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80311364 0030CFC4 4B EB 5D B9 */ bl func_801C711C +/* 80311364 0030CFC4 4B EB 5D B9 */ bl _savegpr_24 /* 80311368 0030CFC8 2C 03 00 00 */ cmpwi r3, 0 /* 8031136C 0030CFCC 7C 78 1B 78 */ mr r24, r3 /* 80311370 0030CFD0 7C 99 23 78 */ mr r25, r4 @@ -73037,7 +73037,7 @@ lbl_8031160C: /* 8031160C 0030D26C 38 60 00 00 */ li r3, 0 lbl_80311610: /* 80311610 0030D270 39 61 00 30 */ addi r11, r1, 0x30 -/* 80311614 0030D274 4B EB 5B 55 */ bl func_801C7168 +/* 80311614 0030D274 4B EB 5B 55 */ bl _restgpr_24 /* 80311618 0030D278 80 01 00 34 */ lwz r0, 0x34(r1) /* 8031161C 0030D27C 7C 08 03 A6 */ mtlr r0 /* 80311620 0030D280 38 21 00 30 */ addi r1, r1, 0x30 @@ -73166,7 +73166,7 @@ func_803117CC: /* 803117D0 0030D430 7C 08 02 A6 */ mflr r0 /* 803117D4 0030D434 90 01 00 34 */ stw r0, 0x34(r1) /* 803117D8 0030D438 39 61 00 30 */ addi r11, r1, 0x30 -/* 803117DC 0030D43C 4B EB 59 41 */ bl func_801C711C +/* 803117DC 0030D43C 4B EB 59 41 */ bl _savegpr_24 /* 803117E0 0030D440 2C 03 00 00 */ cmpwi r3, 0 /* 803117E4 0030D444 7C 79 1B 78 */ mr r25, r3 /* 803117E8 0030D448 7C 9A 23 78 */ mr r26, r4 @@ -73477,7 +73477,7 @@ lbl_80311C3C: /* 80311C3C 0030D89C 7F C3 F3 78 */ mr r3, r30 lbl_80311C40: /* 80311C40 0030D8A0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80311C44 0030D8A4 4B EB 55 25 */ bl func_801C7168 +/* 80311C44 0030D8A4 4B EB 55 25 */ bl _restgpr_24 /* 80311C48 0030D8A8 80 01 00 34 */ lwz r0, 0x34(r1) /* 80311C4C 0030D8AC 7C 08 03 A6 */ mtlr r0 /* 80311C50 0030D8B0 38 21 00 30 */ addi r1, r1, 0x30 @@ -76075,7 +76075,7 @@ func_80314000: /* 80314004 0030FC64 7C 08 02 A6 */ mflr r0 /* 80314008 0030FC68 90 01 02 E4 */ stw r0, 0x2e4(r1) /* 8031400C 0030FC6C 39 61 02 E0 */ addi r11, r1, 0x2e0 -/* 80314010 0030FC70 4B EB 31 0D */ bl func_801C711C +/* 80314010 0030FC70 4B EB 31 0D */ bl _savegpr_24 /* 80314014 0030FC74 38 00 00 48 */ li r0, 0x48 /* 80314018 0030FC78 7C 9D 23 78 */ mr r29, r4 /* 8031401C 0030FC7C 7C BE 2B 78 */ mr r30, r5 @@ -76283,7 +76283,7 @@ lbl_803142F0: /* 803142F8 0030FF58 4B FF 85 F9 */ bl func_8030C8F0 lbl_803142FC: /* 803142FC 0030FF5C 39 61 02 E0 */ addi r11, r1, 0x2e0 -/* 80314300 0030FF60 4B EB 2E 69 */ bl func_801C7168 +/* 80314300 0030FF60 4B EB 2E 69 */ bl _restgpr_24 /* 80314304 0030FF64 80 01 02 E4 */ lwz r0, 0x2e4(r1) /* 80314308 0030FF68 7C 08 03 A6 */ mtlr r0 /* 8031430C 0030FF6C 38 21 02 E0 */ addi r1, r1, 0x2e0 @@ -78458,7 +78458,7 @@ func_803160E8: /* 803160EC 00311D4C 7C 08 02 A6 */ mflr r0 /* 803160F0 00311D50 90 01 00 54 */ stw r0, 0x54(r1) /* 803160F4 00311D54 39 61 00 50 */ addi r11, r1, 0x50 -/* 803160F8 00311D58 4B EB 10 25 */ bl func_801C711C +/* 803160F8 00311D58 4B EB 10 25 */ bl _savegpr_24 /* 803160FC 00311D5C 3F A0 80 58 */ lis r29, lbl_8057F5C8@ha /* 80316100 00311D60 7C 78 1B 78 */ mr r24, r3 /* 80316104 00311D64 7C 99 23 78 */ mr r25, r4 @@ -78811,7 +78811,7 @@ lbl_803165B0: /* 803165C0 00312220 54 03 D9 7E */ srwi r3, r0, 5 lbl_803165C4: /* 803165C4 00312224 39 61 00 50 */ addi r11, r1, 0x50 -/* 803165C8 00312228 4B EB 0B A1 */ bl func_801C7168 +/* 803165C8 00312228 4B EB 0B A1 */ bl _restgpr_24 /* 803165CC 0031222C 80 01 00 54 */ lwz r0, 0x54(r1) /* 803165D0 00312230 7C 08 03 A6 */ mtlr r0 /* 803165D4 00312234 38 21 00 50 */ addi r1, r1, 0x50 @@ -81056,7 +81056,7 @@ func_80318434: /* 80318438 00314098 7C 08 02 A6 */ mflr r0 /* 8031843C 0031409C 90 01 00 34 */ stw r0, 0x34(r1) /* 80318440 003140A0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80318444 003140A4 4B EA EC D9 */ bl func_801C711C +/* 80318444 003140A4 4B EA EC D9 */ bl _savegpr_24 /* 80318448 003140A8 88 C2 A4 A4 */ lbz r6, lbl_80642AA4-_SDA2_BASE_(r2) /* 8031844C 003140AC 2C 03 00 00 */ cmpwi r3, 0 /* 80318450 003140B0 88 02 A4 A5 */ lbz r0, lbl_80642AA5-_SDA2_BASE_(r2) @@ -81267,7 +81267,7 @@ lbl_8031873C: /* 8031873C 0031439C 7F 63 DB 78 */ mr r3, r27 lbl_80318740: /* 80318740 003143A0 39 61 00 30 */ addi r11, r1, 0x30 -/* 80318744 003143A4 4B EA EA 25 */ bl func_801C7168 +/* 80318744 003143A4 4B EA EA 25 */ bl _restgpr_24 /* 80318748 003143A8 80 01 00 34 */ lwz r0, 0x34(r1) /* 8031874C 003143AC 7C 08 03 A6 */ mtlr r0 /* 80318750 003143B0 38 21 00 30 */ addi r1, r1, 0x30 @@ -85666,7 +85666,7 @@ func_8031C124: /* 8031C128 00317D88 7C 08 02 A6 */ mflr r0 /* 8031C12C 00317D8C 90 01 00 34 */ stw r0, 0x34(r1) /* 8031C130 00317D90 39 61 00 30 */ addi r11, r1, 0x30 -/* 8031C134 00317D94 4B EA AF E9 */ bl func_801C711C +/* 8031C134 00317D94 4B EA AF E9 */ bl _savegpr_24 /* 8031C138 00317D98 3C E0 AA AB */ lis r7, 0xAAAAAAAB@ha /* 8031C13C 00317D9C 2C 05 00 00 */ cmpwi r5, 0 /* 8031C140 00317DA0 3B C7 AA AB */ addi r30, r7, 0xAAAAAAAB@l @@ -85769,7 +85769,7 @@ lbl_8031C290: /* 8031C298 00317EF8 7C 79 D0 50 */ subf r3, r25, r26 lbl_8031C29C: /* 8031C29C 00317EFC 39 61 00 30 */ addi r11, r1, 0x30 -/* 8031C2A0 00317F00 4B EA AE C9 */ bl func_801C7168 +/* 8031C2A0 00317F00 4B EA AE C9 */ bl _restgpr_24 /* 8031C2A4 00317F04 80 01 00 34 */ lwz r0, 0x34(r1) /* 8031C2A8 00317F08 7C 08 03 A6 */ mtlr r0 /* 8031C2AC 00317F0C 38 21 00 30 */ addi r1, r1, 0x30 @@ -90730,7 +90730,7 @@ lbl_80320704: /* 80320708 0031C368 7C 08 02 A6 */ mflr r0 /* 8032070C 0031C36C 90 01 02 44 */ stw r0, 0x244(r1) /* 80320710 0031C370 39 61 02 40 */ addi r11, r1, 0x240 -/* 80320714 0031C374 4B EA 6A 09 */ bl func_801C711C +/* 80320714 0031C374 4B EA 6A 09 */ bl _savegpr_24 /* 80320718 0031C378 3F E0 80 44 */ lis r31, lbl_80446C80@ha /* 8032071C 0031C37C 7C BD 2B 78 */ mr r29, r5 /* 80320720 0031C380 80 A4 00 04 */ lwz r5, 4(r4) @@ -90931,7 +90931,7 @@ lbl_803209DC: /* 803209F4 0031C654 98 03 00 22 */ stb r0, 0x22(r3) lbl_803209F8: /* 803209F8 0031C658 39 61 02 40 */ addi r11, r1, 0x240 -/* 803209FC 0031C65C 4B EA 67 6D */ bl func_801C7168 +/* 803209FC 0031C65C 4B EA 67 6D */ bl _restgpr_24 /* 80320A00 0031C660 80 01 02 44 */ lwz r0, 0x244(r1) /* 80320A04 0031C664 7C 08 03 A6 */ mtlr r0 /* 80320A08 0031C668 38 21 02 40 */ addi r1, r1, 0x240 @@ -95752,7 +95752,7 @@ func_80324D14: /* 80324D18 00320978 7C 08 02 A6 */ mflr r0 /* 80324D1C 0032097C 90 01 01 44 */ stw r0, 0x144(r1) /* 80324D20 00320980 39 61 01 40 */ addi r11, r1, 0x140 -/* 80324D24 00320984 4B EA 23 F9 */ bl func_801C711C +/* 80324D24 00320984 4B EA 23 F9 */ bl _savegpr_24 /* 80324D28 00320988 80 0D B0 60 */ lwz r0, lbl_80640320-_SDA_BASE_(r13) /* 80324D2C 0032098C 3F C0 80 44 */ lis r30, lbl_80447FE0@ha /* 80324D30 00320990 7C 79 1B 78 */ mr r25, r3 @@ -96003,7 +96003,7 @@ lbl_80325090: /* 803250DC 00320D3C 90 65 00 10 */ stw r3, 0x10(r5) lbl_803250E0: /* 803250E0 00320D40 39 61 01 40 */ addi r11, r1, 0x140 -/* 803250E4 00320D44 4B EA 20 85 */ bl func_801C7168 +/* 803250E4 00320D44 4B EA 20 85 */ bl _restgpr_24 /* 803250E8 00320D48 80 01 01 44 */ lwz r0, 0x144(r1) /* 803250EC 00320D4C 7C 08 03 A6 */ mtlr r0 /* 803250F0 00320D50 38 21 01 40 */ addi r1, r1, 0x140 @@ -97377,7 +97377,7 @@ lbl_80326510: /* 80326514 00322174 7C 08 02 A6 */ mflr r0 /* 80326518 00322178 90 01 00 34 */ stw r0, 0x34(r1) /* 8032651C 0032217C 39 61 00 30 */ addi r11, r1, 0x30 -/* 80326520 00322180 4B EA 0B FD */ bl func_801C711C +/* 80326520 00322180 4B EA 0B FD */ bl _savegpr_24 /* 80326524 00322184 80 6D B0 68 */ lwz r3, lbl_80640328-_SDA_BASE_(r13) /* 80326528 00322188 3F C0 80 44 */ lis r30, lbl_80447FE0@ha /* 8032652C 0032218C 7C 99 23 78 */ mr r25, r4 @@ -97725,7 +97725,7 @@ lbl_803269E4: /* 80326A40 003226A0 48 00 50 DD */ bl func_8032BB1C lbl_80326A44: /* 80326A44 003226A4 39 61 00 30 */ addi r11, r1, 0x30 -/* 80326A48 003226A8 4B EA 07 21 */ bl func_801C7168 +/* 80326A48 003226A8 4B EA 07 21 */ bl _restgpr_24 /* 80326A4C 003226AC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80326A50 003226B0 7C 08 03 A6 */ mtlr r0 /* 80326A54 003226B4 38 21 00 30 */ addi r1, r1, 0x30 diff --git a/include/darray.h b/include/darray.h index f20cb82..5c7c170 100644 --- a/include/darray.h +++ b/include/darray.h @@ -5,18 +5,33 @@ extern "C" {
#endif
+typedef s32 (*CompareFunction)(const void *, const void *);
+typedef BOOL (*MapFunction)(const void *, s32);
+typedef void (*DtorFunction)(void *);
+
typedef struct DArray {
s32 size;
- s32 unk4;
- u32 elementSz;
- s32 unkC;
- s32 unk10;
+ s32 capacity;
+ u32 elemSz;
+ s32 growAmount;
+ DtorFunction elemDtor;
char *buf;
} DArray;
-void *ArrayNew(s32 p1, s32 p3, s32 p6);
-void *ArrayNth(DArray *p1, s32 p2);
-void *ArrayMapBackwards2(DArray *p1, s32 p2, s32 p3);
+DArray *ArrayNew(u32 elemSz, s32 initialCap, DtorFunction dtor);
+void ArrayFree(DArray *d);
+s32 ArrayLength(DArray *d);
+void *ArrayNth(DArray *d, s32 n);
+void ArrayAppend(DArray *d, void *elem);
+void ArrayInsertSorted(DArray *d, void *elem, CompareFunction compar);
+void ArrayRemoveAt(DArray *d, s32 n);
+void ArrayDeleteAt(DArray *d, s32 n);
+void ArrayReplaceAt(DArray *d, void *elem, s32 n);
+void ArraySort(DArray *d, CompareFunction compar);
+s32 ArraySearch(DArray *d, void *elem, CompareFunction cmp, s32 start, s32 doBinarySearch);
+void ArrayMapBackwards(DArray *d, MapFunction map, s32 p3);
+void *ArrayMapBackwards2(DArray *d, MapFunction map, s32 p3);
+void ArrayClear(DArray *d);
#ifdef __cplusplus
}
diff --git a/include/hashtable.h b/include/hashtable.h index 0502273..784ab35 100644 --- a/include/hashtable.h +++ b/include/hashtable.h @@ -9,24 +9,23 @@ extern "C" { typedef s32 (*HashFunction)(void *, s32);
-
typedef struct HashTable {
DArray **chains;
s32 size;
- s32 unk8;
+ DtorFunction dtor;
HashFunction hashFunc;
- s32 unk10; // comparison callback?
+ CompareFunction compar;
} HashTable;
-HashTable *TableNew(s32 p1, s32 p2, HashFunction hf, s32 p4, s32 p5);
-HashTable *TableNew2(s32 p1, s32 size, s32 p3, HashFunction hf, s32 p5, s32 p6);
+HashTable *TableNew(u32 p1, s32 p2, HashFunction hf, CompareFunction cmp, DtorFunction dtor);
+HashTable *TableNew2(u32 p1, s32 size, s32 p3, HashFunction hf, CompareFunction cmp, DtorFunction dtor);
void TableFree(HashTable *table);
s32 TableCount(HashTable *table);
void TableEnter(HashTable *table, void *elem);
BOOL TableRemove(HashTable *table, void *elem);
void *TableLookup(HashTable *table, void *elem);
-void TableMapSafe(HashTable *table, s32 p2, s32 p3);
-void *TableMapSafe2(HashTable *table, s32 p2, s32 p3);
+void TableMapSafe(HashTable *table, MapFunction p2, s32 p3);
+void *TableMapSafe2(HashTable *table, MapFunction p2, s32 p3);
#ifdef __cplusplus
}
diff --git a/include/nonport.h b/include/nonport.h new file mode 100644 index 0000000..c1ed0e7 --- /dev/null +++ b/include/nonport.h @@ -0,0 +1,16 @@ +#ifndef POKEREVO_NONPORT_H
+#define POKEREVO_NONPORT_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void *gsimalloc(u32 sz);
+void *gsirealloc(void *ptr, u32 sz);
+void gsifree(void *ptr);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //POKEREVO_NONPORT_H
diff --git a/include/qsort.h b/include/qsort.h new file mode 100644 index 0000000..c13ae0e --- /dev/null +++ b/include/qsort.h @@ -0,0 +1,15 @@ +#ifndef POKEREVO_QSORT_H
+#define POKEREVO_QSORT_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+void qsort(void *base, u32 nmemb, u32 size,
+ s32 (*compar)(const void *, const void *));
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif //POKEREVO_QSORT_H
diff --git a/obj_files.mk b/obj_files.mk index c8ad886..8974758 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -26,7 +26,7 @@ TEXT_O_FILES := \ $(BUILD_DIR)/asm/text_8.o \ $(BUILD_DIR)/asm/text_9.o \ $(BUILD_DIR)/asm/text_10.o \ - $(BUILD_DIR)/asm/darray.o \ + $(BUILD_DIR)/src/darray.o \ $(BUILD_DIR)/src/hashtable.o \ $(BUILD_DIR)/asm/md5c.o \ $(BUILD_DIR)/asm/text_10_2.o \ diff --git a/src/SDK/OS/OSAlloc.c b/src/SDK/OS/OSAlloc.c index c553d8d..f0ff04d 100644 --- a/src/SDK/OS/OSAlloc.c +++ b/src/SDK/OS/OSAlloc.c @@ -2,7 +2,7 @@ #include "consts.h" #include "OS/OSAlloc.h" -inline Cell* DLAddFront(Cell* list, Cell* cell) +static inline Cell* DLAddFront(Cell* list, Cell* cell) { cell->next = list; cell->prev = NULL; @@ -12,7 +12,7 @@ inline Cell* DLAddFront(Cell* list, Cell* cell) return cell; } -inline Cell* DLExtract(Cell* list, Cell* cell) +static inline Cell* DLExtract(Cell* list, Cell* cell) { if (cell->next) { cell->next->prev = cell->prev; @@ -72,12 +72,13 @@ Cell *DLInsert(Cell *original, Cell *inserted) return inserted; } -extern HeapDesc *HeapArray; +extern HeapDesc *HeapArray; #define HEADERSIZE OSi_ROUND(sizeof(Cell), 32) #define MINOBJSIZE (HEADERSIZE+32) -void* OSAllocFromHeap(OSHeapHandle heap, u32 size) { +void* OSAllocFromHeap(OSHeapHandle heap, u32 size) +{ HeapDesc* hd; Cell* cell; Cell* newCell; @@ -126,7 +127,8 @@ void* OSAllocFromHeap(OSHeapHandle heap, u32 size) { return (void *)((char *)cell + HEADERSIZE); } -void OSFreeToHeap(OSHeapHandle heap, void* ptr) { +void OSFreeToHeap(OSHeapHandle heap, void* ptr) +{ OSHeapInfo *heapInfo; HeapDesc *hd; Cell *cell; diff --git a/src/darray.c b/src/darray.c new file mode 100644 index 0000000..0c0d194 --- /dev/null +++ b/src/darray.c @@ -0,0 +1,453 @@ +#include "types.h"
+#include "qsort.h"
+#include "nonport.h"
+#include "darray.h"
+
+#pragma auto_inline on
+
+static inline void ArrayInsert(DArray *d, void *elem, s32 n)
+{
+ if (d->size == d->capacity) {
+ s32 newCap = d->capacity + d->growAmount;
+ d->capacity = newCap;
+ d->buf = gsirealloc(d->buf, newCap * d->elemSz);
+ }
+ d->size++;
+ s32 origSize = d->size - 1;
+ if (n < origSize) {
+ memmove(ArrayNth(d, n+1), ArrayNth(d, n),
+ (origSize - n) * d->elemSz);
+ }
+ memcpy(ArrayNth(d, n), elem, d->elemSz);
+}
+
+DArray *ArrayNew(u32 elemSz, s32 initialCap, DtorFunction dtor)
+{
+ DArray *darray = gsimalloc(sizeof(DArray));
+ if (initialCap == 0)
+ initialCap = 8;
+ darray->size = 0;
+ darray->capacity = initialCap;
+ darray->elemSz = elemSz;
+ darray->growAmount = initialCap;
+ darray->elemDtor = dtor;
+ if (initialCap != 0) {
+ darray->buf = gsimalloc(initialCap * darray->elemSz);
+ } else {
+ darray->buf = NULL;
+ }
+ return darray;
+}
+
+void ArrayFree(DArray *d)
+{
+ for (s32 i = 0; i < d->size; i++) {
+ if (d->elemDtor) {
+ void *elem = ArrayNth(d, i);
+ d->elemDtor(elem);
+ }
+ }
+ gsifree(d->buf);
+ gsifree(d);
+}
+
+s32 ArrayLength(DArray *d)
+{
+ return d->size;
+}
+
+void *ArrayNth(DArray *d, s32 n)
+{
+ if (n < 0 || n >= d->size)
+ return NULL;
+ return &d->buf[d->elemSz * n];
+}
+
+void ArrayAppend(DArray *d, void *elem)
+{
+ if (d) {
+ ArrayInsert(d, elem, d->size);
+ }
+}
+
+#ifdef NONMATCHING
+void ArrayInsertSorted(DArray *d, void *elem, CompareFunction compar)
+{
+ char *buf;
+ u32 elemSz;
+ s32 mid, high, low;
+ elemSz = d->elemSz;
+ buf = d->buf;
+ high = d->size - 1;
+ low = 0;
+ while (low <= high) {
+ mid = (low + high) >> 1;
+ s32 result = compar(&buf[mid * elemSz], elem);
+ if (result < 0) {
+ low = mid + 1;
+ }
+ if (result >= 0) {
+ high = mid - 1;
+ }
+ }
+ char *recomputeLow = &buf[low * elemSz];
+ ArrayInsert(d, elem, (recomputeLow - d->buf)/ (s32)d->elemSz);
+}
+#else
+_savegpr_23();
+_restgpr_23();
+_savegpr_24();
+_restgpr_24();
+memcpy();
+memmove();
+asm void ArrayInsertSorted(DArray *d, void *elem, CompareFunction compar)
+{
+ nofralloc
+ /* 80336044 00331CA4 94 21 FF D0 */ stwu r1, -0x30(r1)
+ /* 80336048 00331CA8 7C 08 02 A6 */ mflr r0
+ /* 8033604C 00331CAC 90 01 00 34 */ stw r0, 0x34(r1)
+ /* 80336050 00331CB0 39 61 00 30 */ addi r11, r1, 0x30
+ /* 80336054 00331CB4 4B E9 10 C9 */ bl _savegpr_24
+ /* 80336058 00331CB8 80 C3 00 00 */ lwz r6, 0(r3)
+ /* 8033605C 00331CBC 7C 7D 1B 78 */ mr r29, r3
+ /* 80336060 00331CC0 83 83 00 08 */ lwz r28, 8(r3)
+ /* 80336064 00331CC4 7C 9E 23 78 */ mr r30, r4
+ /* 80336068 00331CC8 83 E3 00 14 */ lwz r31, 0x14(r3)
+ /* 8033606C 00331CCC 7C B8 2B 78 */ mr r24, r5
+ /* 80336070 00331CD0 3B 46 FF FF */ addi r26, r6, -1
+ /* 80336074 00331CD4 3B 20 00 00 */ li r25, 0
+ /* 80336078 00331CD8 48 00 00 3C */ b lbl_803360B4
+ lbl_8033607C:
+ /* 8033607C 00331CDC 7C 19 D2 14 */ add r0, r25, r26
+ /* 80336080 00331CE0 7F 0C C3 78 */ mr r12, r24
+ /* 80336084 00331CE4 7C 1B 0E 70 */ srawi r27, r0, 1
+ /* 80336088 00331CE8 7F C4 F3 78 */ mr r4, r30
+ /* 8033608C 00331CEC 7C 1B E1 D6 */ mullw r0, r27, r28
+ /* 80336090 00331CF0 7C 7F 02 14 */ add r3, r31, r0
+ /* 80336094 00331CF4 7D 89 03 A6 */ mtctr r12
+ /* 80336098 00331CF8 4E 80 04 21 */ bctrl
+ /* 8033609C 00331CFC 2C 03 00 00 */ cmpwi r3, 0
+ /* 803360A0 00331D00 40 80 00 08 */ bge lbl_803360A8
+ /* 803360A4 00331D04 3B 3B 00 01 */ addi r25, r27, 1
+ lbl_803360A8:
+ /* 803360A8 00331D08 2C 03 00 00 */ cmpwi r3, 0
+ /* 803360AC 00331D0C 41 80 00 08 */ blt lbl_803360B4
+ /* 803360B0 00331D10 3B 5B FF FF */ addi r26, r27, -1
+ lbl_803360B4:
+ /* 803360B4 00331D14 7C 19 D0 00 */ cmpw r25, r26
+ /* 803360B8 00331D18 40 81 FF C4 */ ble lbl_8033607C
+ /* 803360BC 00331D1C 7C D9 E1 D6 */ mullw r6, r25, r28
+ /* 803360C0 00331D20 80 7D 00 14 */ lwz r3, 0x14(r29)
+ /* 803360C4 00331D24 80 BD 00 08 */ lwz r5, 8(r29)
+ /* 803360C8 00331D28 80 1D 00 00 */ lwz r0, 0(r29)
+ /* 803360CC 00331D2C 80 9D 00 04 */ lwz r4, 4(r29)
+ /* 803360D0 00331D30 7C DF 32 14 */ add r6, r31, r6
+ /* 803360D4 00331D34 7C C3 30 50 */ subf r6, r3, r6
+ /* 803360D8 00331D38 7C 00 20 00 */ cmpw r0, r4
+ /* 803360DC 00331D3C 7F E6 2B D6 */ divw r31, r6, r5
+ /* 803360E0 00331D40 40 82 00 1C */ bne lbl_803360FC
+ /* 803360E4 00331D44 80 1D 00 0C */ lwz r0, 0xc(r29)
+ /* 803360E8 00331D48 7C 04 02 14 */ add r0, r4, r0
+ /* 803360EC 00331D4C 7C 80 29 D6 */ mullw r4, r0, r5
+ /* 803360F0 00331D50 90 1D 00 04 */ stw r0, 4(r29)
+ /* 803360F4 00331D54 48 00 32 31 */ bl gsirealloc
+ /* 803360F8 00331D58 90 7D 00 14 */ stw r3, 0x14(r29)
+ lbl_803360FC:
+ /* 803360FC 00331D5C 80 7D 00 00 */ lwz r3, 0(r29)
+ /* 80336100 00331D60 38 A3 00 01 */ addi r5, r3, 1
+ /* 80336104 00331D64 38 C5 FF FF */ addi r6, r5, -1
+ /* 80336108 00331D68 90 BD 00 00 */ stw r5, 0(r29)
+ /* 8033610C 00331D6C 7C 1F 30 00 */ cmpw r31, r6
+ /* 80336110 00331D70 40 80 00 64 */ bge lbl_80336174
+ /* 80336114 00331D74 34 9F 00 01 */ addic. r4, r31, 1
+ /* 80336118 00331D78 41 80 00 0C */ blt lbl_80336124
+ /* 8033611C 00331D7C 7C 04 28 00 */ cmpw r4, r5
+ /* 80336120 00331D80 41 80 00 0C */ blt lbl_8033612C
+ lbl_80336124:
+ /* 80336124 00331D84 38 60 00 00 */ li r3, 0
+ /* 80336128 00331D88 48 00 00 14 */ b lbl_8033613C
+ lbl_8033612C:
+ /* 8033612C 00331D8C 80 1D 00 08 */ lwz r0, 8(r29)
+ /* 80336130 00331D90 80 7D 00 14 */ lwz r3, 0x14(r29)
+ /* 80336134 00331D94 7C 00 21 D6 */ mullw r0, r0, r4
+ /* 80336138 00331D98 7C 63 02 14 */ add r3, r3, r0
+ lbl_8033613C:
+ /* 8033613C 00331D9C 2C 1F 00 00 */ cmpwi r31, 0
+ /* 80336140 00331DA0 41 80 00 0C */ blt lbl_8033614C
+ /* 80336144 00331DA4 7C 1F 28 00 */ cmpw r31, r5
+ /* 80336148 00331DA8 41 80 00 0C */ blt lbl_80336154
+ lbl_8033614C:
+ /* 8033614C 00331DAC 38 80 00 00 */ li r4, 0
+ /* 80336150 00331DB0 48 00 00 14 */ b lbl_80336164
+ lbl_80336154:
+ /* 80336154 00331DB4 80 1D 00 08 */ lwz r0, 8(r29)
+ /* 80336158 00331DB8 80 9D 00 14 */ lwz r4, 0x14(r29)
+ /* 8033615C 00331DBC 7C 00 F9 D6 */ mullw r0, r0, r31
+ /* 80336160 00331DC0 7C 84 02 14 */ add r4, r4, r0
+ lbl_80336164:
+ /* 80336164 00331DC4 80 BD 00 08 */ lwz r5, 8(r29)
+ /* 80336168 00331DC8 7C 1F 30 50 */ subf r0, r31, r6
+ /* 8033616C 00331DCC 7C A5 01 D6 */ mullw r5, r5, r0
+ /* 80336170 00331DD0 4B E9 41 05 */ bl memmove
+ lbl_80336174:
+ /* 80336174 00331DD4 2C 1F 00 00 */ cmpwi r31, 0
+ /* 80336178 00331DD8 41 80 00 10 */ blt lbl_80336188
+ /* 8033617C 00331DDC 80 1D 00 00 */ lwz r0, 0(r29)
+ /* 80336180 00331DE0 7C 1F 00 00 */ cmpw r31, r0
+ /* 80336184 00331DE4 41 80 00 0C */ blt lbl_80336190
+ lbl_80336188:
+ /* 80336188 00331DE8 38 60 00 00 */ li r3, 0
+ /* 8033618C 00331DEC 48 00 00 14 */ b lbl_803361A0
+ lbl_80336190:
+ /* 80336190 00331DF0 80 1D 00 08 */ lwz r0, 8(r29)
+ /* 80336194 00331DF4 80 7D 00 14 */ lwz r3, 0x14(r29)
+ /* 80336198 00331DF8 7C 00 F9 D6 */ mullw r0, r0, r31
+ /* 8033619C 00331DFC 7C 63 02 14 */ add r3, r3, r0
+ lbl_803361A0:
+ /* 803361A0 00331E00 80 BD 00 08 */ lwz r5, 8(r29)
+ /* 803361A4 00331E04 7F C4 F3 78 */ mr r4, r30
+ /* 803361A8 00331E08 4B CC DE 59 */ bl memcpy
+ /* 803361AC 00331E0C 39 61 00 30 */ addi r11, r1, 0x30
+ /* 803361B0 00331E10 4B E9 0F B9 */ bl _restgpr_24
+ /* 803361B4 00331E14 80 01 00 34 */ lwz r0, 0x34(r1)
+ /* 803361B8 00331E18 7C 08 03 A6 */ mtlr r0
+ /* 803361BC 00331E1C 38 21 00 30 */ addi r1, r1, 0x30
+ /* 803361C0 00331E20 4E 80 00 20 */ blr
+}
+#pragma peephole on
+#endif
+
+void ArrayRemoveAt(DArray *d, s32 n)
+{
+ s32 origSize = d->size;
+ s32 decOrigSize = origSize - 1;
+ if (n < decOrigSize) {
+ memmove(ArrayNth(d, n), ArrayNth(d, n+1),
+ d->elemSz * (decOrigSize - n));
+ }
+ d->size--;
+}
+
+void ArrayDeleteAt(DArray *d, s32 n)
+{
+ if (d->elemDtor) {
+ d->elemDtor(ArrayNth(d, n));
+ }
+ ArrayRemoveAt(d, n);
+}
+
+void ArrayReplaceAt(DArray *d, void *elem, s32 n)
+{
+ if (d->elemDtor) {
+ d->elemDtor(ArrayNth(d, n));
+ }
+ memcpy(ArrayNth(d, n), elem, d->elemSz);
+}
+
+void ArraySort(DArray *d, CompareFunction compar)
+{
+ qsort(d->buf, d->size, d->elemSz, compar);
+}
+
+#ifdef NONMATCHING
+s32 ArraySearch(DArray *d, void *elem, CompareFunction cmp, s32 start, s32 doBinarySearch)
+{
+ BOOL found = TRUE;
+ char *ptr;
+
+ s32 arrSize;
+ if (!d || (arrSize = d->size) == 0) {
+ return -1;
+ }
+ if (doBinarySearch) {
+ char *r27 = ArrayNth(d, start);
+ s32 high = arrSize - start - 1;
+ u32 elemSz = d->elemSz;
+ s32 low = 0;
+ found = FALSE;
+ while (low <= high) {
+ s32 mid = (low + high) >> 1;
+ s32 result = cmp(&r27[mid * elemSz], elem);
+ if (result == 0) {
+ found = TRUE;
+ }
+ if (result < 0) {
+ low = mid + 1;
+ }
+ if (result >= 0) {
+ high = mid - 1;
+ }
+ }
+ ptr = &r27[low * elemSz];
+ } else {
+ char *r23 = ArrayNth(d, start);
+ u32 elemSz = d->elemSz;
+ s32 r24 = arrSize - start;
+ for (s32 i = 0, j = 0; i < r24; j += elemSz, i++) {
+ if (cmp(elem, &r23[j]) == 0) {
+ ptr = &r23[i * elemSz];
+ goto exit;
+ }
+ }
+ ptr = NULL;
+ }
+ exit:
+ if (ptr && found) {
+ return (ptr - d->buf) / (s32)d->elemSz;
+ }
+ return -1;
+}
+#else
+asm s32 ArraySearch(DArray *d, void *elem, CompareFunction cmp, s32 start, s32 doBinarySearch)
+{
+ nofralloc
+ /* 80336430 00332090 94 21 FF D0 */ stwu r1, -0x30(r1)
+ /* 80336434 00332094 7C 08 02 A6 */ mflr r0
+ /* 80336438 00332098 90 01 00 34 */ stw r0, 0x34(r1)
+ /* 8033643C 0033209C 39 61 00 30 */ addi r11, r1, 0x30
+ /* 80336440 003320A0 4B E9 0C D9 */ bl _savegpr_23
+ /* 80336444 003320A4 2C 03 00 00 */ cmpwi r3, 0
+ /* 80336448 003320A8 7C 7C 1B 78 */ mr r28, r3
+ /* 8033644C 003320AC 7C 9D 23 78 */ mr r29, r4
+ /* 80336450 003320B0 7C BE 2B 78 */ mr r30, r5
+ /* 80336454 003320B4 3B E0 00 01 */ li r31, 1
+ /* 80336458 003320B8 41 82 00 10 */ beq lbl_80336468
+ /* 8033645C 003320BC 80 A3 00 00 */ lwz r5, 0(r3)
+ /* 80336460 003320C0 2C 05 00 00 */ cmpwi r5, 0
+ /* 80336464 003320C4 40 82 00 0C */ bne lbl_80336470
+ lbl_80336468:
+ /* 80336468 003320C8 38 60 FF FF */ li r3, -1
+ /* 8033646C 003320CC 48 00 01 44 */ b lbl_803365B0
+ lbl_80336470:
+ /* 80336470 003320D0 2C 07 00 00 */ cmpwi r7, 0
+ /* 80336474 003320D4 41 82 00 9C */ beq lbl_80336510
+ /* 80336478 003320D8 2C 06 00 00 */ cmpwi r6, 0
+ /* 8033647C 003320DC 41 80 00 0C */ blt lbl_80336488
+ /* 80336480 003320E0 7C 06 28 00 */ cmpw r6, r5
+ /* 80336484 003320E4 41 80 00 0C */ blt lbl_80336490
+ lbl_80336488:
+ /* 80336488 003320E8 3B 60 00 00 */ li r27, 0
+ /* 8033648C 003320EC 48 00 00 14 */ b lbl_803364A0
+ lbl_80336490:
+ /* 80336490 003320F0 80 03 00 08 */ lwz r0, 8(r3)
+ /* 80336494 003320F4 80 83 00 14 */ lwz r4, 0x14(r3)
+ /* 80336498 003320F8 7C 00 31 D6 */ mullw r0, r0, r6
+ /* 8033649C 003320FC 7F 64 02 14 */ add r27, r4, r0
+ lbl_803364A0:
+ /* 803364A0 00332100 7C 86 28 50 */ subf r4, r6, r5
+ /* 803364A4 00332104 83 43 00 08 */ lwz r26, 8(r3)
+ /* 803364A8 00332108 3B 04 FF FF */ addi r24, r4, -1
+ /* 803364AC 0033210C 3A E0 00 00 */ li r23, 0
+ /* 803364B0 00332110 3B E0 00 00 */ li r31, 0
+ /* 803364B4 00332114 48 00 00 48 */ b lbl_803364FC
+ lbl_803364B8:
+ /* 803364B8 00332118 7C 17 C2 14 */ add r0, r23, r24
+ /* 803364BC 0033211C 7F CC F3 78 */ mr r12, r30
+ /* 803364C0 00332120 7C 19 0E 70 */ srawi r25, r0, 1
+ /* 803364C4 00332124 7F A4 EB 78 */ mr r4, r29
+ /* 803364C8 00332128 7C 19 D1 D6 */ mullw r0, r25, r26
+ /* 803364CC 0033212C 7C 7B 02 14 */ add r3, r27, r0
+ /* 803364D0 00332130 7D 89 03 A6 */ mtctr r12
+ /* 803364D4 00332134 4E 80 04 21 */ bctrl
+ /* 803364D8 00332138 2C 03 00 00 */ cmpwi r3, 0
+ /* 803364DC 0033213C 40 82 00 08 */ bne lbl_803364E4
+ /* 803364E0 00332140 3B E0 00 01 */ li r31, 1
+ lbl_803364E4:
+ /* 803364E4 00332144 2C 03 00 00 */ cmpwi r3, 0
+ /* 803364E8 00332148 40 80 00 08 */ bge lbl_803364F0
+ /* 803364EC 0033214C 3A F9 00 01 */ addi r23, r25, 1
+ lbl_803364F0:
+ /* 803364F0 00332150 2C 03 00 00 */ cmpwi r3, 0
+ /* 803364F4 00332154 41 80 00 08 */ blt lbl_803364FC
+ /* 803364F8 00332158 3B 19 FF FF */ addi r24, r25, -1
+ lbl_803364FC:
+ /* 803364FC 0033215C 7C 17 C0 00 */ cmpw r23, r24
+ /* 80336500 00332160 40 81 FF B8 */ ble lbl_803364B8
+ /* 80336504 00332164 7C 17 D1 D6 */ mullw r0, r23, r26
+ /* 80336508 00332168 7C 9B 02 14 */ add r4, r27, r0
+ /* 8033650C 0033216C 48 00 00 7C */ b lbl_80336588
+ lbl_80336510:
+ /* 80336510 00332170 2C 06 00 00 */ cmpwi r6, 0
+ /* 80336514 00332174 41 80 00 0C */ blt lbl_80336520
+ /* 80336518 00332178 7C 06 28 00 */ cmpw r6, r5
+ /* 8033651C 0033217C 41 80 00 0C */ blt lbl_80336528
+ lbl_80336520:
+ /* 80336520 00332180 3A E0 00 00 */ li r23, 0
+ /* 80336524 00332184 48 00 00 14 */ b lbl_80336538
+ lbl_80336528:
+ /* 80336528 00332188 80 03 00 08 */ lwz r0, 8(r3)
+ /* 8033652C 0033218C 80 83 00 14 */ lwz r4, 0x14(r3)
+ /* 80336530 00332190 7C 00 31 D6 */ mullw r0, r0, r6
+ /* 80336534 00332194 7E E4 02 14 */ add r23, r4, r0
+ lbl_80336538:
+ /* 80336538 00332198 83 23 00 08 */ lwz r25, 8(r3)
+ /* 8033653C 0033219C 7F 06 28 50 */ subf r24, r6, r5
+ /* 80336540 003321A0 3B 40 00 00 */ li r26, 0
+ /* 80336544 003321A4 3B 60 00 00 */ li r27, 0
+ /* 80336548 003321A8 48 00 00 34 */ b lbl_8033657C
+ lbl_8033654C:
+ /* 8033654C 003321AC 7F CC F3 78 */ mr r12, r30
+ /* 80336550 003321B0 7F A3 EB 78 */ mr r3, r29
+ /* 80336554 003321B4 7C 97 DA 14 */ add r4, r23, r27
+ /* 80336558 003321B8 7D 89 03 A6 */ mtctr r12
+ /* 8033655C 003321BC 4E 80 04 21 */ bctrl
+ /* 80336560 003321C0 2C 03 00 00 */ cmpwi r3, 0
+ /* 80336564 003321C4 40 82 00 10 */ bne lbl_80336574
+ /* 80336568 003321C8 7C 19 D1 D6 */ mullw r0, r25, r26
+ /* 8033656C 003321CC 7C 97 02 14 */ add r4, r23, r0
+ /* 80336570 003321D0 48 00 00 18 */ b lbl_80336588
+ lbl_80336574:
+ /* 80336574 003321D4 7F 7B CA 14 */ add r27, r27, r25
+ /* 80336578 003321D8 3B 5A 00 01 */ addi r26, r26, 1
+ lbl_8033657C:
+ /* 8033657C 003321DC 7C 1A C0 00 */ cmpw r26, r24
+ /* 80336580 003321E0 41 80 FF CC */ blt lbl_8033654C
+ /* 80336584 003321E4 38 80 00 00 */ li r4, 0
+ lbl_80336588:
+ /* 80336588 003321E8 2C 04 00 00 */ cmpwi r4, 0
+ /* 8033658C 003321EC 41 82 00 20 */ beq lbl_803365AC
+ /* 80336590 003321F0 2C 1F 00 00 */ cmpwi r31, 0
+ /* 80336594 003321F4 41 82 00 18 */ beq lbl_803365AC
+ /* 80336598 003321F8 80 7C 00 14 */ lwz r3, 0x14(r28)
+ /* 8033659C 003321FC 80 1C 00 08 */ lwz r0, 8(r28)
+ /* 803365A0 00332200 7C 63 20 50 */ subf r3, r3, r4
+ /* 803365A4 00332204 7C 63 03 D6 */ divw r3, r3, r0
+ /* 803365A8 00332208 48 00 00 08 */ b lbl_803365B0
+ lbl_803365AC:
+ /* 803365AC 0033220C 38 60 FF FF */ li r3, -1
+ lbl_803365B0:
+ /* 803365B0 00332210 39 61 00 30 */ addi r11, r1, 0x30
+ /* 803365B4 00332214 4B E9 0B B1 */ bl _restgpr_23
+ /* 803365B8 00332218 80 01 00 34 */ lwz r0, 0x34(r1)
+ /* 803365BC 0033221C 7C 08 03 A6 */ mtlr r0
+ /* 803365C0 00332220 38 21 00 30 */ addi r1, r1, 0x30
+ /* 803365C4 00332224 4E 80 00 20 */ blr
+}
+#pragma peephole on
+#endif
+
+void ArrayMapBackwards(DArray *d, MapFunction map, s32 p3)
+{
+ for (s32 i = d->size - 1; i >= 0; i--) {
+ void *elem = ArrayNth(d, i);
+ map(elem, p3);
+ }
+}
+
+void *ArrayMapBackwards2(DArray *d, MapFunction map, s32 p3)
+{
+ for (s32 i = d->size - 1; i >= 0; i--) {
+ void *elem = ArrayNth(d, i);
+ if (map(elem, p3) == FALSE) {
+ return elem;
+ }
+ }
+ return NULL;
+}
+
+void ArrayClear(DArray *d)
+{
+ for (s32 i = d->size - 1; i >= 0; i--) {
+ ArrayDeleteAt(d, i);
+ }
+}
diff --git a/src/hashtable.c b/src/hashtable.c index ed880c8..d170aa7 100644 --- a/src/hashtable.c +++ b/src/hashtable.c @@ -1,21 +1,22 @@ #include "types.h"
+#include "nonport.h"
#include "hashtable.h"
-HashTable *TableNew(s32 p1, s32 p2, HashFunction hf, s32 p4, s32 p5)
+HashTable *TableNew(u32 p1, s32 p2, HashFunction hf, CompareFunction cmp, DtorFunction dtor)
{
- return TableNew2(p1, p2, 4, hf, p4, p5);
+ return TableNew2(p1, p2, 4, hf, cmp, dtor);
}
-HashTable *TableNew2(s32 p1, s32 size, s32 p3, HashFunction hf, s32 p5, s32 p6)
+HashTable *TableNew2(u32 p1, s32 size, s32 p3, HashFunction hf, CompareFunction cmp, DtorFunction dtor)
{
- HashTable *table = (HashTable *)gsimalloc(sizeof(HashTable));
- table->chains = (DArray **)gsimalloc(size * sizeof(DArray *));
+ HashTable *table = gsimalloc(sizeof(HashTable));
+ table->chains = gsimalloc(size * sizeof(DArray *));
for (s32 i = 0; i < size; i++) {
- table->chains[i] = (DArray *)ArrayNew(p1, p3, p6);
+ table->chains[i] = ArrayNew(p1, p3, dtor);
}
table->size = size;
- table->unk8 = p6;
- table->unk10 = p5;
+ table->dtor = dtor;
+ table->compar = cmp;
table->hashFunc = hf;
return table;
}
@@ -46,7 +47,7 @@ void TableEnter(HashTable *table, void *elem) {
if (table) {
s32 i = table->hashFunc(elem, table->size);
- s32 result = ArraySearch(table->chains[i], elem, table->unk10, 0, 0);
+ s32 result = ArraySearch(table->chains[i], elem, table->compar, 0, 0);
if (result == -1) {
ArrayAppend(table->chains[i], elem);
} else {
@@ -60,7 +61,7 @@ BOOL TableRemove(HashTable *table, void *elem) if (!table)
return FALSE;
s32 i = table->hashFunc(elem, table->size);
- s32 result = ArraySearch(table->chains[i], elem, table->unk10, 0, 0);
+ s32 result = ArraySearch(table->chains[i], elem, table->compar, 0, 0);
if (result == -1) {
return FALSE;
} else {
@@ -74,7 +75,7 @@ void *TableLookup(HashTable *table, void *elem) if (!table)
return NULL;
s32 i = table->hashFunc(elem, table->size);
- s32 result = ArraySearch(table->chains[i], elem, table->unk10, 0, 0);
+ s32 result = ArraySearch(table->chains[i], elem, table->compar, 0, 0);
if (result == -1) {
return NULL;
} else {
@@ -82,14 +83,14 @@ void *TableLookup(HashTable *table, void *elem) }
}
-void TableMapSafe(HashTable *table, s32 p2, s32 p3)
+void TableMapSafe(HashTable *table, MapFunction p2, s32 p3)
{
for (s32 i = 0; i < table->size; i++) {
ArrayMapBackwards(table->chains[i], p2, p3);
}
}
-void *TableMapSafe2(HashTable *table, s32 p2, s32 p3)
+void *TableMapSafe2(HashTable *table, MapFunction p2, s32 p3)
{
s32 i;
void *result;
|