diff options
Diffstat (limited to 'asm')
| -rw-r--r-- | asm/libstdc++/NMWException.s | 235 | ||||
| -rw-r--r-- | asm/text_1.s | 42 | ||||
| -rw-r--r-- | asm/text_10_2.s | 36 | ||||
| -rw-r--r-- | asm/text_11.s | 16 | ||||
| -rw-r--r-- | asm/text_2.s | 2 | ||||
| -rw-r--r-- | asm/text_4.s | 2 | ||||
| -rw-r--r-- | asm/text_5.s | 4 | ||||
| -rw-r--r-- | asm/text_5_2.s | 243 | ||||
| -rw-r--r-- | asm/text_6_2.s | 26 | ||||
| -rw-r--r-- | asm/text_7.s | 10 | 
10 files changed, 304 insertions, 312 deletions
| diff --git a/asm/libstdc++/NMWException.s b/asm/libstdc++/NMWException.s new file mode 100644 index 0000000..697ecdd --- /dev/null +++ b/asm/libstdc++/NMWException.s @@ -0,0 +1,235 @@ +.include "macros.inc" + +.section .text, "ax"  # 0x80006980 - 0x803E1E60 + +.global __construct_new_array +__construct_new_array: +/* 801C6CA8 001C2908  94 21 FF C0 */	stwu r1, -0x40(r1) +/* 801C6CAC 001C290C  7C 08 02 A6 */	mflr r0 +/* 801C6CB0 001C2910  2C 03 00 00 */	cmpwi r3, 0 +/* 801C6CB4 001C2914  90 01 00 44 */	stw r0, 0x44(r1) +/* 801C6CB8 001C2918  BF 61 00 2C */	stmw r27, 0x2c(r1) +/* 801C6CBC 001C291C  7C 7E 1B 78 */	mr r30, r3 +/* 801C6CC0 001C2920  7C 9B 23 78 */	mr r27, r4 +/* 801C6CC4 001C2924  7C DC 33 78 */	mr r28, r6 +/* 801C6CC8 001C2928  7C FD 3B 78 */	mr r29, r7 +/* 801C6CCC 001C292C  41 82 00 C8 */	beq lbl_801C6D94 +/* 801C6CD0 001C2930  2C 04 00 00 */	cmpwi r4, 0 +/* 801C6CD4 001C2934  90 C3 00 00 */	stw r6, 0(r3) +/* 801C6CD8 001C2938  3B C3 00 10 */	addi r30, r3, 0x10 +/* 801C6CDC 001C293C  90 E3 00 04 */	stw r7, 4(r3) +/* 801C6CE0 001C2940  41 82 00 B4 */	beq lbl_801C6D94 +/* 801C6CE4 001C2944  38 00 00 00 */	li r0, 0 +/* 801C6CE8 001C2948  93 C1 00 08 */	stw r30, 8(r1) +/* 801C6CEC 001C294C  7F DF F3 78 */	mr r31, r30 +/* 801C6CF0 001C2950  90 C1 00 0C */	stw r6, 0xc(r1) +/* 801C6CF4 001C2954  90 E1 00 10 */	stw r7, 0x10(r1) +/* 801C6CF8 001C2958  90 A1 00 14 */	stw r5, 0x14(r1) +/* 801C6CFC 001C295C  90 01 00 18 */	stw r0, 0x18(r1) +/* 801C6D00 001C2960  48 00 00 28 */	b lbl_801C6D28 +lbl_801C6D04: +/* 801C6D04 001C2964  7F 6C DB 78 */	mr r12, r27 +/* 801C6D08 001C2968  7F E3 FB 78 */	mr r3, r31 +/* 801C6D0C 001C296C  38 80 00 01 */	li r4, 1 +/* 801C6D10 001C2970  7D 89 03 A6 */	mtctr r12 +/* 801C6D14 001C2974  4E 80 04 21 */	bctrl +/* 801C6D18 001C2978  80 61 00 18 */	lwz r3, 0x18(r1) +/* 801C6D1C 001C297C  7F FF E2 14 */	add r31, r31, r28 +/* 801C6D20 001C2980  38 03 00 01 */	addi r0, r3, 1 +/* 801C6D24 001C2984  90 01 00 18 */	stw r0, 0x18(r1) +lbl_801C6D28: +/* 801C6D28 001C2988  80 81 00 18 */	lwz r4, 0x18(r1) +/* 801C6D2C 001C298C  7C 04 E8 40 */	cmplw r4, r29 +/* 801C6D30 001C2990  41 80 FF D4 */	blt lbl_801C6D04 +/* 801C6D34 001C2994  80 01 00 10 */	lwz r0, 0x10(r1) +/* 801C6D38 001C2998  7C 04 00 40 */	cmplw r4, r0 +/* 801C6D3C 001C299C  40 80 00 58 */	bge lbl_801C6D94 +/* 801C6D40 001C29A0  80 01 00 14 */	lwz r0, 0x14(r1) +/* 801C6D44 001C29A4  2C 00 00 00 */	cmpwi r0, 0 +/* 801C6D48 001C29A8  41 82 00 4C */	beq lbl_801C6D94 +/* 801C6D4C 001C29AC  80 01 00 0C */	lwz r0, 0xc(r1) +/* 801C6D50 001C29B0  80 61 00 08 */	lwz r3, 8(r1) +/* 801C6D54 001C29B4  7C 00 21 D6 */	mullw r0, r0, r4 +/* 801C6D58 001C29B8  7F E3 02 14 */	add r31, r3, r0 +/* 801C6D5C 001C29BC  48 00 00 2C */	b lbl_801C6D88 +lbl_801C6D60: +/* 801C6D60 001C29C0  80 01 00 0C */	lwz r0, 0xc(r1) +/* 801C6D64 001C29C4  38 80 FF FF */	li r4, -1 +/* 801C6D68 001C29C8  81 81 00 14 */	lwz r12, 0x14(r1) +/* 801C6D6C 001C29CC  7F E0 F8 50 */	subf r31, r0, r31 +/* 801C6D70 001C29D0  7F E3 FB 78 */	mr r3, r31 +/* 801C6D74 001C29D4  7D 89 03 A6 */	mtctr r12 +/* 801C6D78 001C29D8  4E 80 04 21 */	bctrl +/* 801C6D7C 001C29DC  80 61 00 18 */	lwz r3, 0x18(r1) +/* 801C6D80 001C29E0  38 03 FF FF */	addi r0, r3, -1 +/* 801C6D84 001C29E4  90 01 00 18 */	stw r0, 0x18(r1) +lbl_801C6D88: +/* 801C6D88 001C29E8  80 01 00 18 */	lwz r0, 0x18(r1) +/* 801C6D8C 001C29EC  2C 00 00 00 */	cmpwi r0, 0 +/* 801C6D90 001C29F0  40 82 FF D0 */	bne lbl_801C6D60 +lbl_801C6D94: +/* 801C6D94 001C29F4  7F C3 F3 78 */	mr r3, r30 +/* 801C6D98 001C29F8  BB 61 00 2C */	lmw r27, 0x2c(r1) +/* 801C6D9C 001C29FC  80 01 00 44 */	lwz r0, 0x44(r1) +/* 801C6DA0 001C2A00  7C 08 03 A6 */	mtlr r0 +/* 801C6DA4 001C2A04  38 21 00 40 */	addi r1, r1, 0x40 +/* 801C6DA8 001C2A08  4E 80 00 20 */	blr + +.global __dt__26__partial_array_destructorFv +__dt__26__partial_array_destructorFv: +/* 801C6DAC 001C2A0C  94 21 FF E0 */	stwu r1, -0x20(r1) +/* 801C6DB0 001C2A10  7C 08 02 A6 */	mflr r0 +/* 801C6DB4 001C2A14  2C 03 00 00 */	cmpwi r3, 0 +/* 801C6DB8 001C2A18  90 01 00 24 */	stw r0, 0x24(r1) +/* 801C6DBC 001C2A1C  93 E1 00 1C */	stw r31, 0x1c(r1) +/* 801C6DC0 001C2A20  93 C1 00 18 */	stw r30, 0x18(r1) +/* 801C6DC4 001C2A24  7C 9E 23 78 */	mr r30, r4 +/* 801C6DC8 001C2A28  93 A1 00 14 */	stw r29, 0x14(r1) +/* 801C6DCC 001C2A2C  7C 7D 1B 78 */	mr r29, r3 +/* 801C6DD0 001C2A30  41 82 00 78 */	beq lbl_801C6E48 +/* 801C6DD4 001C2A34  80 83 00 10 */	lwz r4, 0x10(r3) +/* 801C6DD8 001C2A38  80 03 00 08 */	lwz r0, 8(r3) +/* 801C6DDC 001C2A3C  7C 04 00 40 */	cmplw r4, r0 +/* 801C6DE0 001C2A40  40 80 00 58 */	bge lbl_801C6E38 +/* 801C6DE4 001C2A44  80 03 00 0C */	lwz r0, 0xc(r3) +/* 801C6DE8 001C2A48  2C 00 00 00 */	cmpwi r0, 0 +/* 801C6DEC 001C2A4C  41 82 00 4C */	beq lbl_801C6E38 +/* 801C6DF0 001C2A50  80 03 00 04 */	lwz r0, 4(r3) +/* 801C6DF4 001C2A54  80 63 00 00 */	lwz r3, 0(r3) +/* 801C6DF8 001C2A58  7C 00 21 D6 */	mullw r0, r0, r4 +/* 801C6DFC 001C2A5C  7F E3 02 14 */	add r31, r3, r0 +/* 801C6E00 001C2A60  48 00 00 2C */	b lbl_801C6E2C +lbl_801C6E04: +/* 801C6E04 001C2A64  80 1D 00 04 */	lwz r0, 4(r29) +/* 801C6E08 001C2A68  38 80 FF FF */	li r4, -1 +/* 801C6E0C 001C2A6C  81 9D 00 0C */	lwz r12, 0xc(r29) +/* 801C6E10 001C2A70  7F E0 F8 50 */	subf r31, r0, r31 +/* 801C6E14 001C2A74  7F E3 FB 78 */	mr r3, r31 +/* 801C6E18 001C2A78  7D 89 03 A6 */	mtctr r12 +/* 801C6E1C 001C2A7C  4E 80 04 21 */	bctrl +/* 801C6E20 001C2A80  80 7D 00 10 */	lwz r3, 0x10(r29) +/* 801C6E24 001C2A84  38 03 FF FF */	addi r0, r3, -1 +/* 801C6E28 001C2A88  90 1D 00 10 */	stw r0, 0x10(r29) +lbl_801C6E2C: +/* 801C6E2C 001C2A8C  80 1D 00 10 */	lwz r0, 0x10(r29) +/* 801C6E30 001C2A90  2C 00 00 00 */	cmpwi r0, 0 +/* 801C6E34 001C2A94  40 82 FF D0 */	bne lbl_801C6E04 +lbl_801C6E38: +/* 801C6E38 001C2A98  2C 1E 00 00 */	cmpwi r30, 0 +/* 801C6E3C 001C2A9C  40 81 00 0C */	ble lbl_801C6E48 +/* 801C6E40 001C2AA0  7F A3 EB 78 */	mr r3, r29 +/* 801C6E44 001C2AA4  48 01 3C 75 */	bl func_801DAAB8 +lbl_801C6E48: +/* 801C6E48 001C2AA8  83 E1 00 1C */	lwz r31, 0x1c(r1) +/* 801C6E4C 001C2AAC  7F A3 EB 78 */	mr r3, r29 +/* 801C6E50 001C2AB0  83 C1 00 18 */	lwz r30, 0x18(r1) +/* 801C6E54 001C2AB4  83 A1 00 14 */	lwz r29, 0x14(r1) +/* 801C6E58 001C2AB8  80 01 00 24 */	lwz r0, 0x24(r1) +/* 801C6E5C 001C2ABC  7C 08 03 A6 */	mtlr r0 +/* 801C6E60 001C2AC0  38 21 00 20 */	addi r1, r1, 0x20 +/* 801C6E64 001C2AC4  4E 80 00 20 */	blr + +.global __construct_array +__construct_array: +/* 801C6E68 001C2AC8  94 21 FF D0 */	stwu r1, -0x30(r1) +/* 801C6E6C 001C2ACC  7C 08 02 A6 */	mflr r0 +/* 801C6E70 001C2AD0  90 01 00 34 */	stw r0, 0x34(r1) +/* 801C6E74 001C2AD4  38 00 00 00 */	li r0, 0 +/* 801C6E78 001C2AD8  93 E1 00 2C */	stw r31, 0x2c(r1) +/* 801C6E7C 001C2ADC  7C 7F 1B 78 */	mr r31, r3 +/* 801C6E80 001C2AE0  93 C1 00 28 */	stw r30, 0x28(r1) +/* 801C6E84 001C2AE4  7C FE 3B 78 */	mr r30, r7 +/* 801C6E88 001C2AE8  93 A1 00 24 */	stw r29, 0x24(r1) +/* 801C6E8C 001C2AEC  7C DD 33 78 */	mr r29, r6 +/* 801C6E90 001C2AF0  93 81 00 20 */	stw r28, 0x20(r1) +/* 801C6E94 001C2AF4  7C 9C 23 78 */	mr r28, r4 +/* 801C6E98 001C2AF8  90 61 00 08 */	stw r3, 8(r1) +/* 801C6E9C 001C2AFC  90 C1 00 0C */	stw r6, 0xc(r1) +/* 801C6EA0 001C2B00  90 E1 00 10 */	stw r7, 0x10(r1) +/* 801C6EA4 001C2B04  90 A1 00 14 */	stw r5, 0x14(r1) +/* 801C6EA8 001C2B08  90 01 00 18 */	stw r0, 0x18(r1) +/* 801C6EAC 001C2B0C  48 00 00 28 */	b lbl_801C6ED4 +lbl_801C6EB0: +/* 801C6EB0 001C2B10  7F 8C E3 78 */	mr r12, r28 +/* 801C6EB4 001C2B14  7F E3 FB 78 */	mr r3, r31 +/* 801C6EB8 001C2B18  38 80 00 01 */	li r4, 1 +/* 801C6EBC 001C2B1C  7D 89 03 A6 */	mtctr r12 +/* 801C6EC0 001C2B20  4E 80 04 21 */	bctrl +/* 801C6EC4 001C2B24  80 61 00 18 */	lwz r3, 0x18(r1) +/* 801C6EC8 001C2B28  7F FF EA 14 */	add r31, r31, r29 +/* 801C6ECC 001C2B2C  38 03 00 01 */	addi r0, r3, 1 +/* 801C6ED0 001C2B30  90 01 00 18 */	stw r0, 0x18(r1) +lbl_801C6ED4: +/* 801C6ED4 001C2B34  80 81 00 18 */	lwz r4, 0x18(r1) +/* 801C6ED8 001C2B38  7C 04 F0 40 */	cmplw r4, r30 +/* 801C6EDC 001C2B3C  41 80 FF D4 */	blt lbl_801C6EB0 +/* 801C6EE0 001C2B40  80 01 00 10 */	lwz r0, 0x10(r1) +/* 801C6EE4 001C2B44  7C 04 00 40 */	cmplw r4, r0 +/* 801C6EE8 001C2B48  40 80 00 58 */	bge lbl_801C6F40 +/* 801C6EEC 001C2B4C  80 01 00 14 */	lwz r0, 0x14(r1) +/* 801C6EF0 001C2B50  2C 00 00 00 */	cmpwi r0, 0 +/* 801C6EF4 001C2B54  41 82 00 4C */	beq lbl_801C6F40 +/* 801C6EF8 001C2B58  80 01 00 0C */	lwz r0, 0xc(r1) +/* 801C6EFC 001C2B5C  80 61 00 08 */	lwz r3, 8(r1) +/* 801C6F00 001C2B60  7C 00 21 D6 */	mullw r0, r0, r4 +/* 801C6F04 001C2B64  7F E3 02 14 */	add r31, r3, r0 +/* 801C6F08 001C2B68  48 00 00 2C */	b lbl_801C6F34 +lbl_801C6F0C: +/* 801C6F0C 001C2B6C  80 01 00 0C */	lwz r0, 0xc(r1) +/* 801C6F10 001C2B70  38 80 FF FF */	li r4, -1 +/* 801C6F14 001C2B74  81 81 00 14 */	lwz r12, 0x14(r1) +/* 801C6F18 001C2B78  7F E0 F8 50 */	subf r31, r0, r31 +/* 801C6F1C 001C2B7C  7F E3 FB 78 */	mr r3, r31 +/* 801C6F20 001C2B80  7D 89 03 A6 */	mtctr r12 +/* 801C6F24 001C2B84  4E 80 04 21 */	bctrl +/* 801C6F28 001C2B88  80 61 00 18 */	lwz r3, 0x18(r1) +/* 801C6F2C 001C2B8C  38 03 FF FF */	addi r0, r3, -1 +/* 801C6F30 001C2B90  90 01 00 18 */	stw r0, 0x18(r1) +lbl_801C6F34: +/* 801C6F34 001C2B94  80 01 00 18 */	lwz r0, 0x18(r1) +/* 801C6F38 001C2B98  2C 00 00 00 */	cmpwi r0, 0 +/* 801C6F3C 001C2B9C  40 82 FF D0 */	bne lbl_801C6F0C +lbl_801C6F40: +/* 801C6F40 001C2BA0  80 01 00 34 */	lwz r0, 0x34(r1) +/* 801C6F44 001C2BA4  83 E1 00 2C */	lwz r31, 0x2c(r1) +/* 801C6F48 001C2BA8  83 C1 00 28 */	lwz r30, 0x28(r1) +/* 801C6F4C 001C2BAC  83 A1 00 24 */	lwz r29, 0x24(r1) +/* 801C6F50 001C2BB0  83 81 00 20 */	lwz r28, 0x20(r1) +/* 801C6F54 001C2BB4  7C 08 03 A6 */	mtlr r0 +/* 801C6F58 001C2BB8  38 21 00 30 */	addi r1, r1, 0x30 +/* 801C6F5C 001C2BBC  4E 80 00 20 */	blr + +.global __destroy_arr +__destroy_arr: +/* 801C6F60 001C2BC0  94 21 FF E0 */	stwu r1, -0x20(r1) +/* 801C6F64 001C2BC4  7C 08 02 A6 */	mflr r0 +/* 801C6F68 001C2BC8  90 01 00 24 */	stw r0, 0x24(r1) +/* 801C6F6C 001C2BCC  7C 05 31 D6 */	mullw r0, r5, r6 +/* 801C6F70 001C2BD0  93 E1 00 1C */	stw r31, 0x1c(r1) +/* 801C6F74 001C2BD4  93 C1 00 18 */	stw r30, 0x18(r1) +/* 801C6F78 001C2BD8  7C DE 33 78 */	mr r30, r6 +/* 801C6F7C 001C2BDC  7F E3 02 14 */	add r31, r3, r0 +/* 801C6F80 001C2BE0  93 A1 00 14 */	stw r29, 0x14(r1) +/* 801C6F84 001C2BE4  7C BD 2B 78 */	mr r29, r5 +/* 801C6F88 001C2BE8  93 81 00 10 */	stw r28, 0x10(r1) +/* 801C6F8C 001C2BEC  7C 9C 23 78 */	mr r28, r4 +/* 801C6F90 001C2BF0  48 00 00 20 */	b lbl_801C6FB0 +lbl_801C6F94: +/* 801C6F94 001C2BF4  7F FD F8 50 */	subf r31, r29, r31 +/* 801C6F98 001C2BF8  7F 8C E3 78 */	mr r12, r28 +/* 801C6F9C 001C2BFC  7F E3 FB 78 */	mr r3, r31 +/* 801C6FA0 001C2C00  38 80 FF FF */	li r4, -1 +/* 801C6FA4 001C2C04  7D 89 03 A6 */	mtctr r12 +/* 801C6FA8 001C2C08  4E 80 04 21 */	bctrl +/* 801C6FAC 001C2C0C  3B DE FF FF */	addi r30, r30, -1 +lbl_801C6FB0: +/* 801C6FB0 001C2C10  2C 1E 00 00 */	cmpwi r30, 0 +/* 801C6FB4 001C2C14  40 82 FF E0 */	bne lbl_801C6F94 +/* 801C6FB8 001C2C18  80 01 00 24 */	lwz r0, 0x24(r1) +/* 801C6FBC 001C2C1C  83 E1 00 1C */	lwz r31, 0x1c(r1) +/* 801C6FC0 001C2C20  83 C1 00 18 */	lwz r30, 0x18(r1) +/* 801C6FC4 001C2C24  83 A1 00 14 */	lwz r29, 0x14(r1) +/* 801C6FC8 001C2C28  83 81 00 10 */	lwz r28, 0x10(r1) +/* 801C6FCC 001C2C2C  7C 08 03 A6 */	mtlr r0 +/* 801C6FD0 001C2C30  38 21 00 20 */	addi r1, r1, 0x20 +/* 801C6FD4 001C2C34  4E 80 00 20 */	blr diff --git a/asm/text_1.s b/asm/text_1.s index 9dceb1f..c896bab 100644 --- a/asm/text_1.s +++ b/asm/text_1.s @@ -4857,7 +4857,7 @@ func_8000AB6C:  /* 8000ABC4 00006824  38 84 AC 34 */	addi r4, r4, lbl_8000AC34@l  /* 8000ABC8 00006828  38 A0 00 00 */	li r5, 0  /* 8000ABCC 0000682C  38 C0 00 08 */	li r6, 8 -/* 8000ABD0 00006830  48 1B C0 D9 */	bl func_801C6CA8 +/* 8000ABD0 00006830  48 1B C0 D9 */	bl __construct_new_array  /* 8000ABD4 00006834  90 7C 00 08 */	stw r3, 8(r28)  /* 8000ABD8 00006838  3B A0 00 00 */	li r29, 0  /* 8000ABDC 0000683C  3B E0 00 00 */	li r31, 0 @@ -7012,7 +7012,7 @@ func_8000C7F0:  /* 8000C834 00008494  38 E0 00 04 */	li r7, 4  /* 8000C838 00008498  93 63 00 08 */	stw r27, 8(r3)  /* 8000C83C 0000849C  38 63 00 0C */	addi r3, r3, 0xc -/* 8000C840 000084A0  48 1B A6 29 */	bl func_801C6E68 +/* 8000C840 000084A0  48 1B A6 29 */	bl __construct_array  /* 8000C844 000084A4  3B 80 00 FF */	li r28, 0xff  /* 8000C848 000084A8  9B 7F 00 3C */	stb r27, 0x3c(r31)  /* 8000C84C 000084AC  38 7F 10 70 */	addi r3, r31, 0x1070 @@ -7040,7 +7040,7 @@ func_8000C7F0:  /* 8000C8A4 00008504  93 7F 12 64 */	stw r27, 0x1264(r31)  /* 8000C8A8 00008508  38 C0 01 00 */	li r6, 0x100  /* 8000C8AC 0000850C  38 E0 00 14 */	li r7, 0x14 -/* 8000C8B0 00008510  48 1B A5 B9 */	bl func_801C6E68 +/* 8000C8B0 00008510  48 1B A5 B9 */	bl __construct_array  /* 8000C8B4 00008514  38 00 FF FF */	li r0, -1  /* 8000C8B8 00008518  3F C0 80 03 */	lis r30, func_80035CE0@ha  /* 8000C8BC 0000851C  3F A0 80 01 */	lis r29, func_8000CC28@ha @@ -7052,13 +7052,13 @@ func_8000C7F0:  /* 8000C8D4 00008534  38 C0 09 74 */	li r6, 0x974  /* 8000C8D8 00008538  38 E0 00 06 */	li r7, 6  /* 8000C8DC 0000853C  93 7F 26 6C */	stw r27, 0x266c(r31) -/* 8000C8E0 00008540  48 1B A5 89 */	bl func_801C6E68 +/* 8000C8E0 00008540  48 1B A5 89 */	bl __construct_array  /* 8000C8E4 00008544  38 7F 61 9C */	addi r3, r31, 0x619c  /* 8000C8E8 00008548  38 9E 5C E0 */	addi r4, r30, 0x5ce0  /* 8000C8EC 0000854C  38 BD CC 28 */	addi r5, r29, -13272  /* 8000C8F0 00008550  38 C0 09 74 */	li r6, 0x974  /* 8000C8F4 00008554  38 E0 00 06 */	li r7, 6 -/* 8000C8F8 00008558  48 1B A5 71 */	bl func_801C6E68 +/* 8000C8F8 00008558  48 1B A5 71 */	bl __construct_array  /* 8000C8FC 0000855C  3C 7F 00 01 */	addis r3, r31, 1  /* 8000C900 00008560  3F C0 80 01 */	lis r30, lbl_8000CC84@ha  /* 8000C904 00008564  3F A0 80 01 */	lis r29, lbl_8000CCF0@ha @@ -7067,14 +7067,14 @@ func_8000C7F0:  /* 8000C910 00008570  38 E0 00 04 */	li r7, 4  /* 8000C914 00008574  38 BD CC F0 */	addi r5, r29, lbl_8000CCF0@l  /* 8000C918 00008578  38 63 9A 58 */	addi r3, r3, -26024 -/* 8000C91C 0000857C  48 1B A5 4D */	bl func_801C6E68 +/* 8000C91C 0000857C  48 1B A5 4D */	bl __construct_array  /* 8000C920 00008580  3C 7F 00 01 */	addis r3, r31, 1  /* 8000C924 00008584  38 9E CC 84 */	addi r4, r30, -13180  /* 8000C928 00008588  38 BD CC F0 */	addi r5, r29, -13072  /* 8000C92C 0000858C  38 C0 00 58 */	li r6, 0x58  /* 8000C930 00008590  38 E0 00 04 */	li r7, 4  /* 8000C934 00008594  38 63 9B CC */	addi r3, r3, -25652 -/* 8000C938 00008598  48 1B A5 31 */	bl func_801C6E68 +/* 8000C938 00008598  48 1B A5 31 */	bl __construct_array  /* 8000C93C 0000859C  3C 7F 00 01 */	addis r3, r31, 1  /* 8000C940 000085A0  3F A0 80 02 */	lis r29, lbl_8001929C@ha  /* 8000C944 000085A4  3F C0 80 01 */	lis r30, lbl_8000CD30@ha @@ -7083,14 +7083,14 @@ func_8000C7F0:  /* 8000C950 000085B0  38 E0 00 02 */	li r7, 2  /* 8000C954 000085B4  38 BE CD 30 */	addi r5, r30, lbl_8000CD30@l  /* 8000C958 000085B8  38 63 9D 3C */	addi r3, r3, -25284 -/* 8000C95C 000085BC  48 1B A5 0D */	bl func_801C6E68 +/* 8000C95C 000085BC  48 1B A5 0D */	bl __construct_array  /* 8000C960 000085C0  3C 7F 00 01 */	addis r3, r31, 1  /* 8000C964 000085C4  38 9D 92 9C */	addi r4, r29, -28004  /* 8000C968 000085C8  38 BE CD 30 */	addi r5, r30, -13008  /* 8000C96C 000085CC  38 C0 00 1C */	li r6, 0x1c  /* 8000C970 000085D0  38 E0 00 02 */	li r7, 2  /* 8000C974 000085D4  38 63 9D 74 */	addi r3, r3, -25228 -/* 8000C978 000085D8  48 1B A4 F1 */	bl func_801C6E68 +/* 8000C978 000085D8  48 1B A4 F1 */	bl __construct_array  /* 8000C97C 000085DC  3C DF 00 01 */	addis r6, r31, 1  /* 8000C980 000085E0  38 7F 00 68 */	addi r3, r31, 0x68  /* 8000C984 000085E4  9B 66 9D AE */	stb r27, -0x6252(r6) @@ -30769,7 +30769,7 @@ func_800217CC:  /* 80021804 0001D464  98 88 9D BD */	stb r4, -0x6243(r8)  /* 80021808 0001D468  7C A4 2B 78 */	mr r4, r5  /* 8002180C 0001D46C  7D 86 02 14 */	add r12, r6, r0 -/* 80021810 0001D470  48 1A 57 C9 */	bl func_801C6FD8 +/* 80021810 0001D470  48 1A 57 C9 */	bl __ptmf_scall  /* 80021814 0001D474  60 00 00 00 */	nop  /* 80021818 0001D478  3C 9F 00 01 */	addis r4, r31, 1  /* 8002181C 0001D47C  88 64 9D BD */	lbz r3, -0x6243(r4) @@ -31253,7 +31253,7 @@ func_80021EC4:  /* 80021EFC 0001DB5C  98 88 9D BC */	stb r4, -0x6244(r8)  /* 80021F00 0001DB60  7C A4 2B 78 */	mr r4, r5  /* 80021F04 0001DB64  7D 86 02 14 */	add r12, r6, r0 -/* 80021F08 0001DB68  48 1A 50 D1 */	bl func_801C6FD8 +/* 80021F08 0001DB68  48 1A 50 D1 */	bl __ptmf_scall  /* 80021F0C 0001DB6C  60 00 00 00 */	nop  /* 80021F10 0001DB70  3C 9F 00 01 */	addis r4, r31, 1  /* 80021F14 0001DB74  88 64 9D BC */	lbz r3, -0x6244(r4) @@ -35113,7 +35113,7 @@ func_80025390:  /* 80025408 00021068  38 84 54 78 */	addi r4, r4, func_80025478@l  /* 8002540C 0002106C  38 C0 00 20 */	li r6, 0x20  /* 80025410 00021070  38 E0 00 08 */	li r7, 8 -/* 80025414 00021074  48 1A 18 95 */	bl func_801C6CA8 +/* 80025414 00021074  48 1A 18 95 */	bl __construct_new_array  /* 80025418 00021078  90 7F 00 0C */	stw r3, 0xc(r31)  lbl_8002541C:  /* 8002541C 0002107C  3C A0 80 02 */	lis r5, lbl_80027ED4@ha @@ -75183,7 +75183,7 @@ lbl_800479C4:  /* 800479E0 00043640  38 84 78 C0 */	addi r4, r4, lbl_800478C0@l  /* 800479E4 00043644  38 A0 00 00 */	li r5, 0  /* 800479E8 00043648  38 C0 00 24 */	li r6, 0x24 -/* 800479EC 0004364C  48 17 F2 BD */	bl func_801C6CA8 +/* 800479EC 0004364C  48 17 F2 BD */	bl __construct_new_array  /* 800479F0 00043650  80 1E 00 08 */	lwz r0, 8(r30)  /* 800479F4 00043654  90 7E 00 2C */	stw r3, 0x2c(r30)  /* 800479F8 00043658  54 03 10 3A */	slwi r3, r0, 2 @@ -81829,7 +81829,7 @@ func_8004D724:  /* 8004D750 000493B0  38 A0 00 08 */	li r5, 8  /* 8004D754 000493B4  38 84 ED 5C */	addi r4, r4, lbl_8004ED5C@l  /* 8004D758 000493B8  38 C0 00 20 */	li r6, 0x20 -/* 8004D75C 000493BC  48 17 98 05 */	bl func_801C6F60 +/* 8004D75C 000493BC  48 17 98 05 */	bl __destroy_arr  lbl_8004D760:  /* 8004D760 000493C0  38 7F 34 C0 */	addi r3, r31, 0x34c0  /* 8004D764 000493C4  38 80 FF FF */	li r4, -1 @@ -81839,19 +81839,19 @@ lbl_8004D760:  /* 8004D774 000493D4  38 84 DE F8 */	addi r4, r4, lbl_8004DEF8@l  /* 8004D778 000493D8  38 A0 00 68 */	li r5, 0x68  /* 8004D77C 000493DC  38 C0 00 20 */	li r6, 0x20 -/* 8004D780 000493E0  48 17 97 E1 */	bl func_801C6F60 +/* 8004D780 000493E0  48 17 97 E1 */	bl __destroy_arr  /* 8004D784 000493E4  3C 80 80 04 */	lis r4, lbl_80047908@ha  /* 8004D788 000493E8  38 7F 1D 40 */	addi r3, r31, 0x1d40  /* 8004D78C 000493EC  38 84 79 08 */	addi r4, r4, lbl_80047908@l  /* 8004D790 000493F0  38 A0 00 38 */	li r5, 0x38  /* 8004D794 000493F4  38 C0 00 30 */	li r6, 0x30 -/* 8004D798 000493F8  48 17 97 C9 */	bl func_801C6F60 +/* 8004D798 000493F8  48 17 97 C9 */	bl __destroy_arr  /* 8004D79C 000493FC  3C 80 80 05 */	lis r4, lbl_80048748@ha  /* 8004D7A0 00049400  7F E3 FB 78 */	mr r3, r31  /* 8004D7A4 00049404  38 84 87 48 */	addi r4, r4, lbl_80048748@l  /* 8004D7A8 00049408  38 A0 00 9C */	li r5, 0x9c  /* 8004D7AC 0004940C  38 C0 00 30 */	li r6, 0x30 -/* 8004D7B0 00049410  48 17 97 B1 */	bl func_801C6F60 +/* 8004D7B0 00049410  48 17 97 B1 */	bl __destroy_arr  /* 8004D7B4 00049414  7F E3 FB 78 */	mr r3, r31  /* 8004D7B8 00049418  48 18 D3 01 */	bl func_801DAAB8  lbl_8004D7BC: @@ -81916,7 +81916,7 @@ func_8004D85C:  /* 8004D87C 000494DC  93 E1 00 0C */	stw r31, 0xc(r1)  /* 8004D880 000494E0  7C 7F 1B 78 */	mr r31, r3  /* 8004D884 000494E4  38 E0 00 30 */	li r7, 0x30 -/* 8004D888 000494E8  48 17 95 E1 */	bl func_801C6E68 +/* 8004D888 000494E8  48 17 95 E1 */	bl __construct_array  /* 8004D88C 000494EC  3C 80 80 04 */	lis r4, lbl_800478E4@ha  /* 8004D890 000494F0  3C A0 80 04 */	lis r5, lbl_80047908@ha  /* 8004D894 000494F4  38 7F 1D 40 */	addi r3, r31, 0x1d40 @@ -81924,7 +81924,7 @@ func_8004D85C:  /* 8004D89C 000494FC  38 84 78 E4 */	addi r4, r4, lbl_800478E4@l  /* 8004D8A0 00049500  38 A5 79 08 */	addi r5, r5, lbl_80047908@l  /* 8004D8A4 00049504  38 E0 00 30 */	li r7, 0x30 -/* 8004D8A8 00049508  48 17 95 C1 */	bl func_801C6E68 +/* 8004D8A8 00049508  48 17 95 C1 */	bl __construct_array  /* 8004D8AC 0004950C  3C 80 80 05 */	lis r4, lbl_8004DE88@ha  /* 8004D8B0 00049510  3C A0 80 05 */	lis r5, lbl_8004DEF8@ha  /* 8004D8B4 00049514  38 7F 27 C0 */	addi r3, r31, 0x27c0 @@ -81932,7 +81932,7 @@ func_8004D85C:  /* 8004D8BC 0004951C  38 84 DE 88 */	addi r4, r4, lbl_8004DE88@l  /* 8004D8C0 00049520  38 A5 DE F8 */	addi r5, r5, lbl_8004DEF8@l  /* 8004D8C4 00049524  38 E0 00 20 */	li r7, 0x20 -/* 8004D8C8 00049528  48 17 95 A1 */	bl func_801C6E68 +/* 8004D8C8 00049528  48 17 95 A1 */	bl __construct_array  /* 8004D8CC 0004952C  38 7F 34 C0 */	addi r3, r31, 0x34c0  /* 8004D8D0 00049530  48 00 11 21 */	bl func_8004E9F0  /* 8004D8D4 00049534  38 7F 35 10 */	addi r3, r31, 0x3510 @@ -83736,7 +83736,7 @@ func_8004F0BC:  /* 8004F0DC 0004AD3C  93 E1 00 0C */	stw r31, 0xc(r1)  /* 8004F0E0 0004AD40  7C 7F 1B 78 */	mr r31, r3  /* 8004F0E4 0004AD44  38 E0 00 20 */	li r7, 0x20 -/* 8004F0E8 0004AD48  48 17 7D 81 */	bl func_801C6E68 +/* 8004F0E8 0004AD48  48 17 7D 81 */	bl __construct_array  /* 8004F0EC 0004AD4C  38 7F 01 00 */	addi r3, r31, 0x100  /* 8004F0F0 0004AD50  38 80 00 00 */	li r4, 0  /* 8004F0F4 0004AD54  38 A0 00 80 */	li r5, 0x80 diff --git a/asm/text_10_2.s b/asm/text_10_2.s index 312e270..b0b8131 100644 --- a/asm/text_10_2.s +++ b/asm/text_10_2.s @@ -37751,7 +37751,7 @@ lbl_80366758:  /* 80366780 003623E0  D0 21 00 40 */	stfs f1, 0x40(r1)
  /* 80366784 003623E4  D0 01 00 44 */	stfs f0, 0x44(r1)
  /* 80366788 003623E8  92 A1 00 28 */	stw r21, 0x28(r1)
 -/* 8036678C 003623EC  4B E6 08 4D */	bl func_801C6FD8
 +/* 8036678C 003623EC  4B E6 08 4D */	bl __ptmf_scall
  /* 80366790 003623F0  60 00 00 00 */	nop
  /* 80366794 003623F4  C3 A2 A5 34 */	lfs f29, lbl_80642B34-_SDA2_BASE_(r2)
  /* 80366798 003623F8  7C 79 1B 78 */	mr r25, r3
 @@ -38058,7 +38058,7 @@ lbl_80366BE8:  lbl_80366BF4:
  /* 80366BF4 00362854  38 61 00 28 */	addi r3, r1, 0x28
  /* 80366BF8 00362858  39 81 00 2C */	addi r12, r1, 0x2c
 -/* 80366BFC 0036285C  4B E6 03 DD */	bl func_801C6FD8
 +/* 80366BFC 0036285C  4B E6 03 DD */	bl __ptmf_scall
  /* 80366C00 00362860  60 00 00 00 */	nop
  /* 80366C04 00362864  7C 79 1B 78 */	mr r25, r3
  lbl_80366C08:
 @@ -38237,7 +38237,7 @@ func_80366D80:  /* 80366E74 00362AD4  92 E1 00 48 */	stw r23, 0x48(r1)
  /* 80366E78 00362AD8  38 61 00 48 */	addi r3, r1, 0x48
  /* 80366E7C 00362ADC  39 81 00 4C */	addi r12, r1, 0x4c
 -/* 80366E80 00362AE0  4B E6 01 59 */	bl func_801C6FD8
 +/* 80366E80 00362AE0  4B E6 01 59 */	bl __ptmf_scall
  /* 80366E84 00362AE4  60 00 00 00 */	nop
  /* 80366E88 00362AE8  C3 A2 A5 34 */	lfs f29, lbl_80642B34-_SDA2_BASE_(r2)
  /* 80366E8C 00362AEC  7C 79 1B 78 */	mr r25, r3
 @@ -38804,7 +38804,7 @@ lbl_803676F0:  lbl_803676FC:
  /* 803676FC 0036335C  38 61 00 48 */	addi r3, r1, 0x48
  /* 80367700 00363360  39 81 00 4C */	addi r12, r1, 0x4c
 -/* 80367704 00363364  4B E5 F8 D5 */	bl func_801C6FD8
 +/* 80367704 00363364  4B E5 F8 D5 */	bl __ptmf_scall
  /* 80367708 00363368  60 00 00 00 */	nop
  /* 8036770C 0036336C  7C 79 1B 78 */	mr r25, r3
  lbl_80367710:
 @@ -39644,7 +39644,7 @@ lbl_80368364:  /* 80368374 00363FD4  38 A5 84 6C */	addi r5, r5, lbl_8036846C@l
  /* 80368378 00363FD8  38 E0 00 03 */	li r7, 3
  /* 8036837C 00363FDC  38 63 00 B4 */	addi r3, r3, 0xb4
 -/* 80368380 00363FE0  4B E5 EA E9 */	bl func_801C6E68
 +/* 80368380 00363FE0  4B E5 EA E9 */	bl __construct_array
  /* 80368384 00363FE4  C0 02 A5 4C */	lfs f0, lbl_80642B4C-_SDA2_BASE_(r2)
  /* 80368388 00363FE8  38 00 00 00 */	li r0, 0
  /* 8036838C 00363FEC  90 1F 00 34 */	stw r0, 0x34(r31)
 @@ -39772,7 +39772,7 @@ lbl_80368528:  /* 80368554 003641B4  38 84 84 6C */	addi r4, r4, lbl_8036846C@l
  /* 80368558 003641B8  38 C0 00 03 */	li r6, 3
  /* 8036855C 003641BC  38 63 00 B4 */	addi r3, r3, 0xb4
 -/* 80368560 003641C0  4B E5 EA 01 */	bl func_801C6F60
 +/* 80368560 003641C0  4B E5 EA 01 */	bl __destroy_arr
  /* 80368564 003641C4  34 7E 00 08 */	addic. r3, r30, 8
  /* 80368568 003641C8  41 82 00 0C */	beq lbl_80368574
  /* 8036856C 003641CC  38 80 00 00 */	li r4, 0
 @@ -59496,7 +59496,7 @@ lbl_8037954C:  /* 80379568 003751C8  38 84 8B 54 */	addi r4, r4, lbl_80378B54@l
  /* 8037956C 003751CC  38 A5 8B 74 */	addi r5, r5, lbl_80378B74@l
  /* 80379570 003751D0  38 E0 00 80 */	li r7, 0x80
 -/* 80379574 003751D4  4B E4 D8 F5 */	bl func_801C6E68
 +/* 80379574 003751D4  4B E4 D8 F5 */	bl __construct_array
  /* 80379578 003751D8  3B BF 00 48 */	addi r29, r31, 0x48
  /* 8037957C 003751DC  7F A3 EB 78 */	mr r3, r29
  /* 80379580 003751E0  4B EF 63 C9 */	bl func_8026F948
 @@ -59565,7 +59565,7 @@ lbl_8037963C:  /* 8037965C 003752BC  38 84 8B 74 */	addi r4, r4, lbl_80378B74@l
  /* 80379660 003752C0  38 A0 00 0C */	li r5, 0xc
  /* 80379664 003752C4  38 C0 00 80 */	li r6, 0x80
 -/* 80379668 003752C8  4B E4 D8 F9 */	bl func_801C6F60
 +/* 80379668 003752C8  4B E4 D8 F9 */	bl __destroy_arr
  /* 8037966C 003752CC  3C 80 80 38 */	lis r4, lbl_80378BCC@ha
  /* 80379670 003752D0  3C A0 80 38 */	lis r5, lbl_80378BEC@ha
  /* 80379674 003752D4  38 61 06 38 */	addi r3, r1, 0x638
 @@ -59573,7 +59573,7 @@ lbl_8037963C:  /* 8037967C 003752DC  38 84 8B CC */	addi r4, r4, lbl_80378BCC@l
  /* 80379680 003752E0  38 A5 8B EC */	addi r5, r5, lbl_80378BEC@l
  /* 80379684 003752E4  38 E0 00 80 */	li r7, 0x80
 -/* 80379688 003752E8  4B E4 D7 E1 */	bl func_801C6E68
 +/* 80379688 003752E8  4B E4 D7 E1 */	bl __construct_array
  /* 8037968C 003752EC  3B BF 00 70 */	addi r29, r31, 0x70
  /* 80379690 003752F0  7F A3 EB 78 */	mr r3, r29
  /* 80379694 003752F4  4B EF 62 B5 */	bl func_8026F948
 @@ -59642,7 +59642,7 @@ lbl_80379750:  /* 80379770 003753D0  38 84 8B EC */	addi r4, r4, lbl_80378BEC@l
  /* 80379774 003753D4  38 A0 00 0C */	li r5, 0xc
  /* 80379778 003753D8  38 C0 00 80 */	li r6, 0x80
 -/* 8037977C 003753DC  4B E4 D7 E5 */	bl func_801C6F60
 +/* 8037977C 003753DC  4B E4 D7 E5 */	bl __destroy_arr
  /* 80379780 003753E0  3C 80 80 38 */	lis r4, lbl_80378C44@ha
  /* 80379784 003753E4  3C A0 80 38 */	lis r5, lbl_80378C64@ha
  /* 80379788 003753E8  38 61 00 38 */	addi r3, r1, 0x38
 @@ -59650,7 +59650,7 @@ lbl_80379750:  /* 80379790 003753F0  38 84 8C 44 */	addi r4, r4, lbl_80378C44@l
  /* 80379794 003753F4  38 A5 8C 64 */	addi r5, r5, lbl_80378C64@l
  /* 80379798 003753F8  38 E0 00 80 */	li r7, 0x80
 -/* 8037979C 003753FC  4B E4 D6 CD */	bl func_801C6E68
 +/* 8037979C 003753FC  4B E4 D6 CD */	bl __construct_array
  /* 803797A0 00375400  3B BF 00 98 */	addi r29, r31, 0x98
  /* 803797A4 00375404  7F A3 EB 78 */	mr r3, r29
  /* 803797A8 00375408  4B EF 61 A1 */	bl func_8026F948
 @@ -59719,7 +59719,7 @@ lbl_80379864:  /* 80379884 003754E4  38 84 8C 64 */	addi r4, r4, lbl_80378C64@l
  /* 80379888 003754E8  38 A0 00 0C */	li r5, 0xc
  /* 8037988C 003754EC  38 C0 00 80 */	li r6, 0x80
 -/* 80379890 003754F0  4B E4 D6 D1 */	bl func_801C6F60
 +/* 80379890 003754F0  4B E4 D6 D1 */	bl __destroy_arr
  /* 80379894 003754F4  39 61 12 50 */	addi r11, r1, 0x1250
  /* 80379898 003754F8  4B E4 D8 D9 */	bl func_801C7170
  /* 8037989C 003754FC  80 01 12 54 */	lwz r0, 0x1254(r1)
 @@ -61546,7 +61546,7 @@ func_8037B140:  /* 8037B174 00376DD4  38 84 AC A0 */	addi r4, r4, lbl_8037ACA0@l
  /* 8037B178 00376DD8  38 A5 AC C0 */	addi r5, r5, lbl_8037ACC0@l
  /* 8037B17C 00376DDC  38 E0 00 80 */	li r7, 0x80
 -/* 8037B180 00376DE0  4B E4 BC E9 */	bl func_801C6E68
 +/* 8037B180 00376DE0  4B E4 BC E9 */	bl __construct_array
  /* 8037B184 00376DE4  48 00 00 5C */	b lbl_8037B1E0
  lbl_8037B188:
  /* 8037B188 00376DE8  83 BA 00 10 */	lwz r29, 0x10(r26)
 @@ -61610,7 +61610,7 @@ lbl_8037B23C:  /* 8037B254 00376EB4  38 84 AC C0 */	addi r4, r4, lbl_8037ACC0@l
  /* 8037B258 00376EB8  38 A0 00 0C */	li r5, 0xc
  /* 8037B25C 00376EBC  38 C0 00 80 */	li r6, 0x80
 -/* 8037B260 00376EC0  4B E4 BD 01 */	bl func_801C6F60
 +/* 8037B260 00376EC0  4B E4 BD 01 */	bl __destroy_arr
  /* 8037B264 00376EC4  7F C3 F3 78 */	mr r3, r30
  /* 8037B268 00376EC8  4B EF 47 BD */	bl func_8026FA24
  /* 8037B26C 00376ECC  39 61 06 30 */	addi r11, r1, 0x630
 @@ -63990,7 +63990,7 @@ func_8037D2B0:  /* 8037D344 00378FA4  91 3E 01 2C */	stw r9, 0x12c(r30)
  /* 8037D348 00378FA8  91 3E 01 30 */	stw r9, 0x130(r30)
  /* 8037D34C 00378FAC  93 FE 01 34 */	stw r31, 0x134(r30)
 -/* 8037D350 00378FB0  4B E4 9B 19 */	bl func_801C6E68
 +/* 8037D350 00378FB0  4B E4 9B 19 */	bl __construct_array
  /* 8037D354 00378FB4  93 FE 07 BC */	stw r31, 0x7bc(r30)
  /* 8037D358 00378FB8  93 FE 07 C0 */	stw r31, 0x7c0(r30)
  /* 8037D35C 00378FBC  88 0D B2 80 */	lbz r0, lbl_80640540-_SDA_BASE_(r13)
 @@ -64100,7 +64100,7 @@ lbl_8037D4D4:  /* 8037D4DC 0037913C  38 84 D4 0C */	addi r4, r4, lbl_8037D40C@l
  /* 8037D4E0 00379140  38 A0 00 34 */	li r5, 0x34
  /* 8037D4E4 00379144  38 C0 00 20 */	li r6, 0x20
 -/* 8037D4E8 00379148  4B E4 9A 79 */	bl func_801C6F60
 +/* 8037D4E8 00379148  4B E4 9A 79 */	bl __destroy_arr
  /* 8037D4EC 0037914C  34 7D 01 28 */	addic. r3, r29, 0x128
  /* 8037D4F0 00379150  41 82 00 0C */	beq lbl_8037D4FC
  /* 8037D4F4 00379154  38 80 00 00 */	li r4, 0
 @@ -66702,7 +66702,7 @@ func_8037F980:  /* 8037F9B4 0037B614  38 A5 FA 80 */	addi r5, r5, lbl_8037FA80@l
  /* 8037F9B8 0037B618  38 C0 00 0C */	li r6, 0xc
  /* 8037F9BC 0037B61C  38 E0 00 03 */	li r7, 3
 -/* 8037F9C0 0037B620  4B E4 74 A9 */	bl func_801C6E68
 +/* 8037F9C0 0037B620  4B E4 74 A9 */	bl __construct_array
  /* 8037F9C4 0037B624  38 00 00 00 */	li r0, 0
  /* 8037F9C8 0037B628  38 7F 00 2C */	addi r3, r31, 0x2c
  /* 8037F9CC 0037B62C  90 1F 00 24 */	stw r0, 0x24(r31)
 @@ -66740,7 +66740,7 @@ lbl_8037FA1C:  /* 8037FA44 0037B6A4  38 A0 00 0C */	li r5, 0xc
  /* 8037FA48 0037B6A8  38 84 FA 80 */	addi r4, r4, lbl_8037FA80@l
  /* 8037FA4C 0037B6AC  38 C0 00 03 */	li r6, 3
 -/* 8037FA50 0037B6B0  4B E4 75 11 */	bl func_801C6F60
 +/* 8037FA50 0037B6B0  4B E4 75 11 */	bl __destroy_arr
  /* 8037FA54 0037B6B4  2C 1F 00 00 */	cmpwi r31, 0
  /* 8037FA58 0037B6B8  40 81 00 0C */	ble lbl_8037FA64
  /* 8037FA5C 0037B6BC  7F C3 F3 78 */	mr r3, r30
 diff --git a/asm/text_11.s b/asm/text_11.s index c3d70dc..15770b1 100644 --- a/asm/text_11.s +++ b/asm/text_11.s @@ -6768,7 +6768,7 @@ func_80386DC0:  /* 80386E08 00382A68  38 A5 26 98 */	addi r5, r5, func_80362698@l  /* 80386E0C 00382A6C  38 C0 00 04 */	li r6, 4  /* 80386E10 00382A70  38 E0 00 04 */	li r7, 4 -/* 80386E14 00382A74  4B E4 00 55 */	bl func_801C6E68 +/* 80386E14 00382A74  4B E4 00 55 */	bl __construct_array  /* 80386E18 00382A78  38 7C 00 E4 */	addi r3, r28, 0xe4  /* 80386E1C 00382A7C  48 00 79 59 */	bl func_8038E774  /* 80386E20 00382A80  88 1D 00 5E */	lbz r0, 0x5e(r29) @@ -6862,7 +6862,7 @@ lbl_80386F58:  /* 80386F68 00382BC8  38 84 26 98 */	addi r4, r4, func_80362698@l  /* 80386F6C 00382BCC  38 A0 00 04 */	li r5, 4  /* 80386F70 00382BD0  38 C0 00 04 */	li r6, 4 -/* 80386F74 00382BD4  4B E3 FF ED */	bl func_801C6F60 +/* 80386F74 00382BD4  4B E3 FF ED */	bl __destroy_arr  /* 80386F78 00382BD8  7F C3 F3 78 */	mr r3, r30  /* 80386F7C 00382BDC  38 80 00 00 */	li r4, 0  /* 80386F80 00382BE0  4B FF E1 01 */	bl func_80385080 @@ -7165,7 +7165,7 @@ func_80387390:  /* 803873D0 00383030  38 A5 26 98 */	addi r5, r5, func_80362698@l  /* 803873D4 00383034  38 C0 00 04 */	li r6, 4  /* 803873D8 00383038  38 E0 00 02 */	li r7, 2 -/* 803873DC 0038303C  4B E3 FA 8D */	bl func_801C6E68 +/* 803873DC 0038303C  4B E3 FA 8D */	bl __construct_array  /* 803873E0 00383040  A0 1D 00 4C */	lhz r0, 0x4c(r29)  /* 803873E4 00383044  C0 02 A8 70 */	lfs f0, lbl_80642E70-_SDA2_BASE_(r2)  /* 803873E8 00383048  54 1F FC 3F */	rlwinm. r31, r0, 0x1f, 0x10, 0x1f @@ -7409,7 +7409,7 @@ lbl_80387754:  /* 80387770 003833D0  38 84 26 98 */	addi r4, r4, func_80362698@l  /* 80387774 003833D4  38 A0 00 04 */	li r5, 4  /* 80387778 003833D8  38 C0 00 02 */	li r6, 2 -/* 8038777C 003833DC  4B E3 F7 E5 */	bl func_801C6F60 +/* 8038777C 003833DC  4B E3 F7 E5 */	bl __destroy_arr  /* 80387780 003833E0  7F C3 F3 78 */	mr r3, r30  /* 80387784 003833E4  38 80 00 00 */	li r4, 0  /* 80387788 003833E8  4B FF D8 F9 */	bl func_80385080 @@ -7928,7 +7928,7 @@ func_80387EB4:  /* 80387EF8 00383B58  38 A5 26 98 */	addi r5, r5, func_80362698@l  /* 80387EFC 00383B5C  38 C0 00 04 */	li r6, 4  /* 80387F00 00383B60  38 E0 00 04 */	li r7, 4 -/* 80387F04 00383B64  4B E3 EF 65 */	bl func_801C6E68 +/* 80387F04 00383B64  4B E3 EF 65 */	bl __construct_array  /* 80387F08 00383B68  38 7B 00 10 */	addi r3, r27, 0x10  /* 80387F0C 00383B6C  48 00 68 69 */	bl func_8038E774  /* 80387F10 00383B70  80 19 00 60 */	lwz r0, 0x60(r25) @@ -8116,7 +8116,7 @@ lbl_803881A0:  /* 803881B4 00383E14  38 A0 00 04 */	li r5, 4  /* 803881B8 00383E18  38 84 26 98 */	addi r4, r4, func_80362698@l  /* 803881BC 00383E1C  38 C0 00 04 */	li r6, 4 -/* 803881C0 00383E20  4B E3 ED A1 */	bl func_801C6F60 +/* 803881C0 00383E20  4B E3 ED A1 */	bl __destroy_arr  lbl_803881C4:  /* 803881C4 00383E24  7F 83 E3 78 */	mr r3, r28  /* 803881C8 00383E28  38 80 00 00 */	li r4, 0 @@ -10573,7 +10573,7 @@ func_8038A6DC:  /* 8038A734 00386394  91 23 00 08 */	stw r9, 8(r3)  /* 8038A738 00386398  91 23 00 0C */	stw r9, 0xc(r3)  /* 8038A73C 0038639C  38 63 00 28 */	addi r3, r3, 0x28 -/* 8038A740 003863A0  4B E3 C7 29 */	bl func_801C6E68 +/* 8038A740 003863A0  4B E3 C7 29 */	bl __construct_array  /* 8038A744 003863A4  38 82 AA 48 */	addi r4, r2, lbl_80643048-_SDA2_BASE_  /* 8038A748 003863A8  80 0F 00 3C */	lwz r0, 0x3c(r15)  /* 8038A74C 003863AC  80 6F 00 38 */	lwz r3, 0x38(r15) @@ -11665,7 +11665,7 @@ lbl_8038B770:  /* 8038B778 003873D8  38 84 26 98 */	addi r4, r4, func_80362698@l  /* 8038B77C 003873DC  38 A0 00 04 */	li r5, 4  /* 8038B780 003873E0  38 C0 00 04 */	li r6, 4 -/* 8038B784 003873E4  4B E3 B7 DD */	bl func_801C6F60 +/* 8038B784 003873E4  4B E3 B7 DD */	bl __destroy_arr  /* 8038B788 003873E8  34 7E 00 04 */	addic. r3, r30, 4  /* 8038B78C 003873EC  41 82 00 0C */	beq lbl_8038B798  /* 8038B790 003873F0  38 80 00 00 */	li r4, 0 diff --git a/asm/text_2.s b/asm/text_2.s index fbd2e48..af002ee 100644 --- a/asm/text_2.s +++ b/asm/text_2.s @@ -46923,7 +46923,7 @@ func_8008A27C:  /* 8008A2C4 00085F24  38 A0 00 00 */	li r5, 0  /* 8008A2C8 00085F28  38 E0 00 18 */	li r7, 0x18  /* 8008A2CC 00085F2C  98 08 00 04 */	stb r0, 4(r8) -/* 8008A2D0 00085F30  48 13 CB 98 */	b func_801C6E68 +/* 8008A2D0 00085F30  48 13 CB 98 */	b __construct_array  .global func_8008A2D4  func_8008A2D4: diff --git a/asm/text_4.s b/asm/text_4.s index 53306fa..d5a8373 100644 --- a/asm/text_4.s +++ b/asm/text_4.s @@ -85088,7 +85088,7 @@ lbl_80164C9C:  /* 80164CD8 00160938  38 A0 00 00 */	li r5, 0  /* 80164CDC 0016093C  38 E0 00 80 */	li r7, 0x80  /* 80164CE0 00160940  98 08 00 04 */	stb r0, 4(r8) -/* 80164CE4 00160944  48 06 21 84 */	b func_801C6E68 +/* 80164CE4 00160944  48 06 21 84 */	b __construct_array  lbl_80164CE8:  /* 80164CE8 00160948  38 00 00 00 */	li r0, 0  /* 80164CEC 0016094C  B0 03 00 00 */	sth r0, 0(r3) diff --git a/asm/text_5.s b/asm/text_5.s index dca25f9..f5cb63a 100644 --- a/asm/text_5.s +++ b/asm/text_5.s @@ -6137,7 +6137,7 @@ func_80177DEC:  /* 80177E30 00173A90  38 C0 00 0C */	li r6, 0xc  /* 80177E34 00173A94  38 A5 7E B8 */	addi r5, r5, lbl_80177EB8@l  /* 80177E38 00173A98  38 E0 00 04 */	li r7, 4 -/* 80177E3C 00173A9C  48 04 F0 2D */	bl func_801C6E68 +/* 80177E3C 00173A9C  48 04 F0 2D */	bl __construct_array  /* 80177E40 00173AA0  93 DB 00 B0 */	stw r30, 0xb0(r27)  /* 80177E44 00173AA4  3B 80 00 00 */	li r28, 0  /* 80177E48 00173AA8  3B A0 00 00 */	li r29, 0 @@ -6216,7 +6216,7 @@ func_80177F20:  /* 80177F4C 00173BAC  38 84 7E B8 */	addi r4, r4, lbl_80177EB8@l  /* 80177F50 00173BB0  38 C0 00 04 */	li r6, 4  /* 80177F54 00173BB4  38 63 00 B8 */	addi r3, r3, 0xb8 -/* 80177F58 00173BB8  48 04 F0 09 */	bl func_801C6F60 +/* 80177F58 00173BB8  48 04 F0 09 */	bl __destroy_arr  /* 80177F5C 00173BBC  2C 1F 00 00 */	cmpwi r31, 0  /* 80177F60 00173BC0  40 81 00 0C */	ble lbl_80177F6C  /* 80177F64 00173BC4  7F C3 F3 78 */	mr r3, r30 diff --git a/asm/text_5_2.s b/asm/text_5_2.s index 5d2fdd0..c994039 100644 --- a/asm/text_5_2.s +++ b/asm/text_5_2.s @@ -2,249 +2,6 @@  .section .text, "ax"  # 0x80006980 - 0x803E1E60 -.global func_801C6CA8 -func_801C6CA8: -/* 801C6CA8 001C2908  94 21 FF C0 */	stwu r1, -0x40(r1) -/* 801C6CAC 001C290C  7C 08 02 A6 */	mflr r0 -/* 801C6CB0 001C2910  2C 03 00 00 */	cmpwi r3, 0 -/* 801C6CB4 001C2914  90 01 00 44 */	stw r0, 0x44(r1) -/* 801C6CB8 001C2918  BF 61 00 2C */	stmw r27, 0x2c(r1) -/* 801C6CBC 001C291C  7C 7E 1B 78 */	mr r30, r3 -/* 801C6CC0 001C2920  7C 9B 23 78 */	mr r27, r4 -/* 801C6CC4 001C2924  7C DC 33 78 */	mr r28, r6 -/* 801C6CC8 001C2928  7C FD 3B 78 */	mr r29, r7 -/* 801C6CCC 001C292C  41 82 00 C8 */	beq lbl_801C6D94 -/* 801C6CD0 001C2930  2C 04 00 00 */	cmpwi r4, 0 -/* 801C6CD4 001C2934  90 C3 00 00 */	stw r6, 0(r3) -/* 801C6CD8 001C2938  3B C3 00 10 */	addi r30, r3, 0x10 -/* 801C6CDC 001C293C  90 E3 00 04 */	stw r7, 4(r3) -/* 801C6CE0 001C2940  41 82 00 B4 */	beq lbl_801C6D94 -/* 801C6CE4 001C2944  38 00 00 00 */	li r0, 0 -/* 801C6CE8 001C2948  93 C1 00 08 */	stw r30, 8(r1) -/* 801C6CEC 001C294C  7F DF F3 78 */	mr r31, r30 -/* 801C6CF0 001C2950  90 C1 00 0C */	stw r6, 0xc(r1) -/* 801C6CF4 001C2954  90 E1 00 10 */	stw r7, 0x10(r1) -/* 801C6CF8 001C2958  90 A1 00 14 */	stw r5, 0x14(r1) -/* 801C6CFC 001C295C  90 01 00 18 */	stw r0, 0x18(r1) -/* 801C6D00 001C2960  48 00 00 28 */	b lbl_801C6D28 -lbl_801C6D04: -/* 801C6D04 001C2964  7F 6C DB 78 */	mr r12, r27 -/* 801C6D08 001C2968  7F E3 FB 78 */	mr r3, r31 -/* 801C6D0C 001C296C  38 80 00 01 */	li r4, 1 -/* 801C6D10 001C2970  7D 89 03 A6 */	mtctr r12 -/* 801C6D14 001C2974  4E 80 04 21 */	bctrl -/* 801C6D18 001C2978  80 61 00 18 */	lwz r3, 0x18(r1) -/* 801C6D1C 001C297C  7F FF E2 14 */	add r31, r31, r28 -/* 801C6D20 001C2980  38 03 00 01 */	addi r0, r3, 1 -/* 801C6D24 001C2984  90 01 00 18 */	stw r0, 0x18(r1) -lbl_801C6D28: -/* 801C6D28 001C2988  80 81 00 18 */	lwz r4, 0x18(r1) -/* 801C6D2C 001C298C  7C 04 E8 40 */	cmplw r4, r29 -/* 801C6D30 001C2990  41 80 FF D4 */	blt lbl_801C6D04 -/* 801C6D34 001C2994  80 01 00 10 */	lwz r0, 0x10(r1) -/* 801C6D38 001C2998  7C 04 00 40 */	cmplw r4, r0 -/* 801C6D3C 001C299C  40 80 00 58 */	bge lbl_801C6D94 -/* 801C6D40 001C29A0  80 01 00 14 */	lwz r0, 0x14(r1) -/* 801C6D44 001C29A4  2C 00 00 00 */	cmpwi r0, 0 -/* 801C6D48 001C29A8  41 82 00 4C */	beq lbl_801C6D94 -/* 801C6D4C 001C29AC  80 01 00 0C */	lwz r0, 0xc(r1) -/* 801C6D50 001C29B0  80 61 00 08 */	lwz r3, 8(r1) -/* 801C6D54 001C29B4  7C 00 21 D6 */	mullw r0, r0, r4 -/* 801C6D58 001C29B8  7F E3 02 14 */	add r31, r3, r0 -/* 801C6D5C 001C29BC  48 00 00 2C */	b lbl_801C6D88 -lbl_801C6D60: -/* 801C6D60 001C29C0  80 01 00 0C */	lwz r0, 0xc(r1) -/* 801C6D64 001C29C4  38 80 FF FF */	li r4, -1 -/* 801C6D68 001C29C8  81 81 00 14 */	lwz r12, 0x14(r1) -/* 801C6D6C 001C29CC  7F E0 F8 50 */	subf r31, r0, r31 -/* 801C6D70 001C29D0  7F E3 FB 78 */	mr r3, r31 -/* 801C6D74 001C29D4  7D 89 03 A6 */	mtctr r12 -/* 801C6D78 001C29D8  4E 80 04 21 */	bctrl -/* 801C6D7C 001C29DC  80 61 00 18 */	lwz r3, 0x18(r1) -/* 801C6D80 001C29E0  38 03 FF FF */	addi r0, r3, -1 -/* 801C6D84 001C29E4  90 01 00 18 */	stw r0, 0x18(r1) -lbl_801C6D88: -/* 801C6D88 001C29E8  80 01 00 18 */	lwz r0, 0x18(r1) -/* 801C6D8C 001C29EC  2C 00 00 00 */	cmpwi r0, 0 -/* 801C6D90 001C29F0  40 82 FF D0 */	bne lbl_801C6D60 -lbl_801C6D94: -/* 801C6D94 001C29F4  7F C3 F3 78 */	mr r3, r30 -/* 801C6D98 001C29F8  BB 61 00 2C */	lmw r27, 0x2c(r1) -/* 801C6D9C 001C29FC  80 01 00 44 */	lwz r0, 0x44(r1) -/* 801C6DA0 001C2A00  7C 08 03 A6 */	mtlr r0 -/* 801C6DA4 001C2A04  38 21 00 40 */	addi r1, r1, 0x40 -/* 801C6DA8 001C2A08  4E 80 00 20 */	blr -/* 801C6DAC 001C2A0C  94 21 FF E0 */	stwu r1, -0x20(r1) -/* 801C6DB0 001C2A10  7C 08 02 A6 */	mflr r0 -/* 801C6DB4 001C2A14  2C 03 00 00 */	cmpwi r3, 0 -/* 801C6DB8 001C2A18  90 01 00 24 */	stw r0, 0x24(r1) -/* 801C6DBC 001C2A1C  93 E1 00 1C */	stw r31, 0x1c(r1) -/* 801C6DC0 001C2A20  93 C1 00 18 */	stw r30, 0x18(r1) -/* 801C6DC4 001C2A24  7C 9E 23 78 */	mr r30, r4 -/* 801C6DC8 001C2A28  93 A1 00 14 */	stw r29, 0x14(r1) -/* 801C6DCC 001C2A2C  7C 7D 1B 78 */	mr r29, r3 -/* 801C6DD0 001C2A30  41 82 00 78 */	beq lbl_801C6E48 -/* 801C6DD4 001C2A34  80 83 00 10 */	lwz r4, 0x10(r3) -/* 801C6DD8 001C2A38  80 03 00 08 */	lwz r0, 8(r3) -/* 801C6DDC 001C2A3C  7C 04 00 40 */	cmplw r4, r0 -/* 801C6DE0 001C2A40  40 80 00 58 */	bge lbl_801C6E38 -/* 801C6DE4 001C2A44  80 03 00 0C */	lwz r0, 0xc(r3) -/* 801C6DE8 001C2A48  2C 00 00 00 */	cmpwi r0, 0 -/* 801C6DEC 001C2A4C  41 82 00 4C */	beq lbl_801C6E38 -/* 801C6DF0 001C2A50  80 03 00 04 */	lwz r0, 4(r3) -/* 801C6DF4 001C2A54  80 63 00 00 */	lwz r3, 0(r3) -/* 801C6DF8 001C2A58  7C 00 21 D6 */	mullw r0, r0, r4 -/* 801C6DFC 001C2A5C  7F E3 02 14 */	add r31, r3, r0 -/* 801C6E00 001C2A60  48 00 00 2C */	b lbl_801C6E2C -lbl_801C6E04: -/* 801C6E04 001C2A64  80 1D 00 04 */	lwz r0, 4(r29) -/* 801C6E08 001C2A68  38 80 FF FF */	li r4, -1 -/* 801C6E0C 001C2A6C  81 9D 00 0C */	lwz r12, 0xc(r29) -/* 801C6E10 001C2A70  7F E0 F8 50 */	subf r31, r0, r31 -/* 801C6E14 001C2A74  7F E3 FB 78 */	mr r3, r31 -/* 801C6E18 001C2A78  7D 89 03 A6 */	mtctr r12 -/* 801C6E1C 001C2A7C  4E 80 04 21 */	bctrl -/* 801C6E20 001C2A80  80 7D 00 10 */	lwz r3, 0x10(r29) -/* 801C6E24 001C2A84  38 03 FF FF */	addi r0, r3, -1 -/* 801C6E28 001C2A88  90 1D 00 10 */	stw r0, 0x10(r29) -lbl_801C6E2C: -/* 801C6E2C 001C2A8C  80 1D 00 10 */	lwz r0, 0x10(r29) -/* 801C6E30 001C2A90  2C 00 00 00 */	cmpwi r0, 0 -/* 801C6E34 001C2A94  40 82 FF D0 */	bne lbl_801C6E04 -lbl_801C6E38: -/* 801C6E38 001C2A98  2C 1E 00 00 */	cmpwi r30, 0 -/* 801C6E3C 001C2A9C  40 81 00 0C */	ble lbl_801C6E48 -/* 801C6E40 001C2AA0  7F A3 EB 78 */	mr r3, r29 -/* 801C6E44 001C2AA4  48 01 3C 75 */	bl func_801DAAB8 -lbl_801C6E48: -/* 801C6E48 001C2AA8  83 E1 00 1C */	lwz r31, 0x1c(r1) -/* 801C6E4C 001C2AAC  7F A3 EB 78 */	mr r3, r29 -/* 801C6E50 001C2AB0  83 C1 00 18 */	lwz r30, 0x18(r1) -/* 801C6E54 001C2AB4  83 A1 00 14 */	lwz r29, 0x14(r1) -/* 801C6E58 001C2AB8  80 01 00 24 */	lwz r0, 0x24(r1) -/* 801C6E5C 001C2ABC  7C 08 03 A6 */	mtlr r0 -/* 801C6E60 001C2AC0  38 21 00 20 */	addi r1, r1, 0x20 -/* 801C6E64 001C2AC4  4E 80 00 20 */	blr - -.global func_801C6E68 -func_801C6E68: -/* 801C6E68 001C2AC8  94 21 FF D0 */	stwu r1, -0x30(r1) -/* 801C6E6C 001C2ACC  7C 08 02 A6 */	mflr r0 -/* 801C6E70 001C2AD0  90 01 00 34 */	stw r0, 0x34(r1) -/* 801C6E74 001C2AD4  38 00 00 00 */	li r0, 0 -/* 801C6E78 001C2AD8  93 E1 00 2C */	stw r31, 0x2c(r1) -/* 801C6E7C 001C2ADC  7C 7F 1B 78 */	mr r31, r3 -/* 801C6E80 001C2AE0  93 C1 00 28 */	stw r30, 0x28(r1) -/* 801C6E84 001C2AE4  7C FE 3B 78 */	mr r30, r7 -/* 801C6E88 001C2AE8  93 A1 00 24 */	stw r29, 0x24(r1) -/* 801C6E8C 001C2AEC  7C DD 33 78 */	mr r29, r6 -/* 801C6E90 001C2AF0  93 81 00 20 */	stw r28, 0x20(r1) -/* 801C6E94 001C2AF4  7C 9C 23 78 */	mr r28, r4 -/* 801C6E98 001C2AF8  90 61 00 08 */	stw r3, 8(r1) -/* 801C6E9C 001C2AFC  90 C1 00 0C */	stw r6, 0xc(r1) -/* 801C6EA0 001C2B00  90 E1 00 10 */	stw r7, 0x10(r1) -/* 801C6EA4 001C2B04  90 A1 00 14 */	stw r5, 0x14(r1) -/* 801C6EA8 001C2B08  90 01 00 18 */	stw r0, 0x18(r1) -/* 801C6EAC 001C2B0C  48 00 00 28 */	b lbl_801C6ED4 -lbl_801C6EB0: -/* 801C6EB0 001C2B10  7F 8C E3 78 */	mr r12, r28 -/* 801C6EB4 001C2B14  7F E3 FB 78 */	mr r3, r31 -/* 801C6EB8 001C2B18  38 80 00 01 */	li r4, 1 -/* 801C6EBC 001C2B1C  7D 89 03 A6 */	mtctr r12 -/* 801C6EC0 001C2B20  4E 80 04 21 */	bctrl -/* 801C6EC4 001C2B24  80 61 00 18 */	lwz r3, 0x18(r1) -/* 801C6EC8 001C2B28  7F FF EA 14 */	add r31, r31, r29 -/* 801C6ECC 001C2B2C  38 03 00 01 */	addi r0, r3, 1 -/* 801C6ED0 001C2B30  90 01 00 18 */	stw r0, 0x18(r1) -lbl_801C6ED4: -/* 801C6ED4 001C2B34  80 81 00 18 */	lwz r4, 0x18(r1) -/* 801C6ED8 001C2B38  7C 04 F0 40 */	cmplw r4, r30 -/* 801C6EDC 001C2B3C  41 80 FF D4 */	blt lbl_801C6EB0 -/* 801C6EE0 001C2B40  80 01 00 10 */	lwz r0, 0x10(r1) -/* 801C6EE4 001C2B44  7C 04 00 40 */	cmplw r4, r0 -/* 801C6EE8 001C2B48  40 80 00 58 */	bge lbl_801C6F40 -/* 801C6EEC 001C2B4C  80 01 00 14 */	lwz r0, 0x14(r1) -/* 801C6EF0 001C2B50  2C 00 00 00 */	cmpwi r0, 0 -/* 801C6EF4 001C2B54  41 82 00 4C */	beq lbl_801C6F40 -/* 801C6EF8 001C2B58  80 01 00 0C */	lwz r0, 0xc(r1) -/* 801C6EFC 001C2B5C  80 61 00 08 */	lwz r3, 8(r1) -/* 801C6F00 001C2B60  7C 00 21 D6 */	mullw r0, r0, r4 -/* 801C6F04 001C2B64  7F E3 02 14 */	add r31, r3, r0 -/* 801C6F08 001C2B68  48 00 00 2C */	b lbl_801C6F34 -lbl_801C6F0C: -/* 801C6F0C 001C2B6C  80 01 00 0C */	lwz r0, 0xc(r1) -/* 801C6F10 001C2B70  38 80 FF FF */	li r4, -1 -/* 801C6F14 001C2B74  81 81 00 14 */	lwz r12, 0x14(r1) -/* 801C6F18 001C2B78  7F E0 F8 50 */	subf r31, r0, r31 -/* 801C6F1C 001C2B7C  7F E3 FB 78 */	mr r3, r31 -/* 801C6F20 001C2B80  7D 89 03 A6 */	mtctr r12 -/* 801C6F24 001C2B84  4E 80 04 21 */	bctrl -/* 801C6F28 001C2B88  80 61 00 18 */	lwz r3, 0x18(r1) -/* 801C6F2C 001C2B8C  38 03 FF FF */	addi r0, r3, -1 -/* 801C6F30 001C2B90  90 01 00 18 */	stw r0, 0x18(r1) -lbl_801C6F34: -/* 801C6F34 001C2B94  80 01 00 18 */	lwz r0, 0x18(r1) -/* 801C6F38 001C2B98  2C 00 00 00 */	cmpwi r0, 0 -/* 801C6F3C 001C2B9C  40 82 FF D0 */	bne lbl_801C6F0C -lbl_801C6F40: -/* 801C6F40 001C2BA0  80 01 00 34 */	lwz r0, 0x34(r1) -/* 801C6F44 001C2BA4  83 E1 00 2C */	lwz r31, 0x2c(r1) -/* 801C6F48 001C2BA8  83 C1 00 28 */	lwz r30, 0x28(r1) -/* 801C6F4C 001C2BAC  83 A1 00 24 */	lwz r29, 0x24(r1) -/* 801C6F50 001C2BB0  83 81 00 20 */	lwz r28, 0x20(r1) -/* 801C6F54 001C2BB4  7C 08 03 A6 */	mtlr r0 -/* 801C6F58 001C2BB8  38 21 00 30 */	addi r1, r1, 0x30 -/* 801C6F5C 001C2BBC  4E 80 00 20 */	blr - -.global func_801C6F60 -func_801C6F60: -/* 801C6F60 001C2BC0  94 21 FF E0 */	stwu r1, -0x20(r1) -/* 801C6F64 001C2BC4  7C 08 02 A6 */	mflr r0 -/* 801C6F68 001C2BC8  90 01 00 24 */	stw r0, 0x24(r1) -/* 801C6F6C 001C2BCC  7C 05 31 D6 */	mullw r0, r5, r6 -/* 801C6F70 001C2BD0  93 E1 00 1C */	stw r31, 0x1c(r1) -/* 801C6F74 001C2BD4  93 C1 00 18 */	stw r30, 0x18(r1) -/* 801C6F78 001C2BD8  7C DE 33 78 */	mr r30, r6 -/* 801C6F7C 001C2BDC  7F E3 02 14 */	add r31, r3, r0 -/* 801C6F80 001C2BE0  93 A1 00 14 */	stw r29, 0x14(r1) -/* 801C6F84 001C2BE4  7C BD 2B 78 */	mr r29, r5 -/* 801C6F88 001C2BE8  93 81 00 10 */	stw r28, 0x10(r1) -/* 801C6F8C 001C2BEC  7C 9C 23 78 */	mr r28, r4 -/* 801C6F90 001C2BF0  48 00 00 20 */	b lbl_801C6FB0 -lbl_801C6F94: -/* 801C6F94 001C2BF4  7F FD F8 50 */	subf r31, r29, r31 -/* 801C6F98 001C2BF8  7F 8C E3 78 */	mr r12, r28 -/* 801C6F9C 001C2BFC  7F E3 FB 78 */	mr r3, r31 -/* 801C6FA0 001C2C00  38 80 FF FF */	li r4, -1 -/* 801C6FA4 001C2C04  7D 89 03 A6 */	mtctr r12 -/* 801C6FA8 001C2C08  4E 80 04 21 */	bctrl -/* 801C6FAC 001C2C0C  3B DE FF FF */	addi r30, r30, -1 -lbl_801C6FB0: -/* 801C6FB0 001C2C10  2C 1E 00 00 */	cmpwi r30, 0 -/* 801C6FB4 001C2C14  40 82 FF E0 */	bne lbl_801C6F94 -/* 801C6FB8 001C2C18  80 01 00 24 */	lwz r0, 0x24(r1) -/* 801C6FBC 001C2C1C  83 E1 00 1C */	lwz r31, 0x1c(r1) -/* 801C6FC0 001C2C20  83 C1 00 18 */	lwz r30, 0x18(r1) -/* 801C6FC4 001C2C24  83 A1 00 14 */	lwz r29, 0x14(r1) -/* 801C6FC8 001C2C28  83 81 00 10 */	lwz r28, 0x10(r1) -/* 801C6FCC 001C2C2C  7C 08 03 A6 */	mtlr r0 -/* 801C6FD0 001C2C30  38 21 00 20 */	addi r1, r1, 0x20 -/* 801C6FD4 001C2C34  4E 80 00 20 */	blr - -.global func_801C6FD8 -func_801C6FD8: -/* 801C6FD8 001C2C38  80 0C 00 00 */	lwz r0, 0(r12) -/* 801C6FDC 001C2C3C  81 6C 00 04 */	lwz r11, 4(r12) -/* 801C6FE0 001C2C40  81 8C 00 08 */	lwz r12, 8(r12) -/* 801C6FE4 001C2C44  7C 63 02 14 */	add r3, r3, r0 -/* 801C6FE8 001C2C48  2C 0B 00 00 */	cmpwi r11, 0 -/* 801C6FEC 001C2C4C  41 80 00 0C */	blt lbl_801C6FF8 -/* 801C6FF0 001C2C50  7D 83 60 2E */	lwzx r12, r3, r12 -/* 801C6FF4 001C2C54  7D 8C 58 2E */	lwzx r12, r12, r11 -lbl_801C6FF8: -/* 801C6FF8 001C2C58  7D 89 03 A6 */	mtctr r12 -/* 801C6FFC 001C2C5C  4E 80 04 20 */	bctr -  .global func_801C7000  func_801C7000:  /* 801C7000 001C2C60  94 21 FF F0 */	stwu r1, -0x10(r1) diff --git a/asm/text_6_2.s b/asm/text_6_2.s index 1051ff0..14509c0 100644 --- a/asm/text_6_2.s +++ b/asm/text_6_2.s @@ -9321,7 +9321,7 @@ func_801DF040:  /* 801DF104 001DAD64  38 84 A2 94 */	addi r4, r4, func_8002A294@l  /* 801DF108 001DAD68  38 A0 00 00 */	li r5, 0  /* 801DF10C 001DAD6C  38 C0 00 0C */	li r6, 0xc -/* 801DF110 001DAD70  4B FE 7B 99 */	bl func_801C6CA8 +/* 801DF110 001DAD70  4B FE 7B 99 */	bl __construct_new_array  /* 801DF114 001DAD74  90 7E 01 3C */	stw r3, 0x13c(r30)  /* 801DF118 001DAD78  A0 1F 00 32 */	lhz r0, 0x32(r31)  /* 801DF11C 001DAD7C  80 9F 00 38 */	lwz r4, 0x38(r31) @@ -9343,7 +9343,7 @@ lbl_801DF138:  /* 801DF158 001DADB8  38 84 A2 94 */	addi r4, r4, func_8002A294@l  /* 801DF15C 001DADBC  38 A0 00 00 */	li r5, 0  /* 801DF160 001DADC0  38 C0 00 0C */	li r6, 0xc -/* 801DF164 001DADC4  4B FE 7B 45 */	bl func_801C6CA8 +/* 801DF164 001DADC4  4B FE 7B 45 */	bl __construct_new_array  /* 801DF168 001DADC8  90 7E 01 40 */	stw r3, 0x140(r30)  /* 801DF16C 001DADCC  A0 1F 00 34 */	lhz r0, 0x34(r31)  /* 801DF170 001DADD0  80 9F 00 3C */	lwz r4, 0x3c(r31) @@ -18158,7 +18158,7 @@ func_801E6BF8:  /* 801E6CC4 001E2924  38 84 CF 20 */	addi r4, r4, lbl_801ECF20@l  /* 801E6CC8 001E2928  38 A0 00 00 */	li r5, 0  /* 801E6CCC 001E292C  38 C0 00 30 */	li r6, 0x30 -/* 801E6CD0 001E2930  4B FD FF D9 */	bl func_801C6CA8 +/* 801E6CD0 001E2930  4B FD FF D9 */	bl __construct_new_array  /* 801E6CD4 001E2934  90 7A 00 18 */	stw r3, 0x18(r26)  lbl_801E6CD8:  /* 801E6CD8 001E2938  83 FB 00 84 */	lwz r31, 0x84(r27) @@ -27547,7 +27547,7 @@ func_801EF58C:  /* 801EF5E0 001EB240  38 84 A8 4C */	addi r4, r4, func_8002A84C@l  /* 801EF5E4 001EB244  38 A0 00 00 */	li r5, 0  /* 801EF5E8 001EB248  38 C0 00 04 */	li r6, 4 -/* 801EF5EC 001EB24C  4B FD 76 BD */	bl func_801C6CA8 +/* 801EF5EC 001EB24C  4B FD 76 BD */	bl __construct_new_array  /* 801EF5F0 001EB250  2C 03 00 00 */	cmpwi r3, 0  /* 801EF5F4 001EB254  7C 7F 1B 78 */	mr r31, r3  /* 801EF5F8 001EB258  41 82 00 30 */	beq lbl_801EF628 @@ -27617,7 +27617,7 @@ lbl_801EF6D0:  /* 801EF6E4 001EB344  38 9D A2 98 */	addi r4, r29, -23912  /* 801EF6E8 001EB348  38 A0 00 00 */	li r5, 0  /* 801EF6EC 001EB34C  38 C0 00 08 */	li r6, 8 -/* 801EF6F0 001EB350  4B FD 75 B9 */	bl func_801C6CA8 +/* 801EF6F0 001EB350  4B FD 75 B9 */	bl __construct_new_array  /* 801EF6F4 001EB354  2C 03 00 00 */	cmpwi r3, 0  /* 801EF6F8 001EB358  7C 7C 1B 78 */	mr r28, r3  /* 801EF6FC 001EB35C  41 82 00 44 */	beq lbl_801EF740 @@ -46510,21 +46510,21 @@ lbl_801FFF6C:  /* 801FFFD4 001FBC34  38 A0 00 00 */	li r5, 0  /* 801FFFD8 001FBC38  98 07 00 04 */	stb r0, 4(r7)  /* 801FFFDC 001FBC3C  38 E0 00 18 */	li r7, 0x18 -/* 801FFFE0 001FBC40  4B FC 6E 89 */	bl func_801C6E68 +/* 801FFFE0 001FBC40  4B FC 6E 89 */	bl __construct_array  /* 801FFFE4 001FBC44  3C 80 80 20 */	lis r4, lbl_802000B4@ha  /* 801FFFE8 001FBC48  38 7F 01 98 */	addi r3, r31, 0x198  /* 801FFFEC 001FBC4C  38 84 00 B4 */	addi r4, r4, lbl_802000B4@l  /* 801FFFF0 001FBC50  38 A0 00 00 */	li r5, 0  /* 801FFFF4 001FBC54  38 C0 00 14 */	li r6, 0x14  /* 801FFFF8 001FBC58  38 E0 00 10 */	li r7, 0x10 -/* 801FFFFC 001FBC5C  4B FC 6E 6D */	bl func_801C6E68 +/* 801FFFFC 001FBC5C  4B FC 6E 6D */	bl __construct_array  /* 80200000 001FBC60  3C 80 80 20 */	lis r4, lbl_802000B8@ha  /* 80200004 001FBC64  38 7F 04 58 */	addi r3, r31, 0x458  /* 80200008 001FBC68  38 84 00 B8 */	addi r4, r4, lbl_802000B8@l  /* 8020000C 001FBC6C  38 A0 00 00 */	li r5, 0  /* 80200010 001FBC70  38 C0 00 10 */	li r6, 0x10  /* 80200014 001FBC74  38 E0 00 18 */	li r7, 0x18 -/* 80200018 001FBC78  4B FC 6E 51 */	bl func_801C6E68 +/* 80200018 001FBC78  4B FC 6E 51 */	bl __construct_array  /* 8020001C 001FBC7C  C0 62 98 D4 */	lfs f3, lbl_80641ED4-_SDA2_BASE_(r2)  /* 80200020 001FBC80  38 ED A1 78 */	addi r7, r13, lbl_8063F438-_SDA_BASE_  /* 80200024 001FBC84  C0 E2 98 C8 */	lfs f7, lbl_80641EC8-_SDA2_BASE_(r2) @@ -46605,7 +46605,7 @@ func_802000BC:  /* 80200138 001FBD98  92 DF 00 3C */	stw r22, 0x3c(r31)  /* 8020013C 001FBD9C  92 DF 00 40 */	stw r22, 0x40(r31)  /* 80200140 001FBDA0  92 DF 00 44 */	stw r22, 0x44(r31) -/* 80200144 001FBDA4  4B FC 6D 25 */	bl func_801C6E68 +/* 80200144 001FBDA4  4B FC 6D 25 */	bl __construct_array  /* 80200148 001FBDA8  B2 DF 01 08 */	sth r22, 0x108(r31)  /* 8020014C 001FBDAC  B2 DF 01 0A */	sth r22, 0x10a(r31)  /* 80200150 001FBDB0  92 DF 01 0C */	stw r22, 0x10c(r31) @@ -46821,7 +46821,7 @@ lbl_80200468:  /* 80200470 001FC0D0  38 84 2D B0 */	addi r4, r4, lbl_80202DB0@l  /* 80200474 001FC0D4  38 A0 00 18 */	li r5, 0x18  /* 80200478 001FC0D8  38 C0 00 08 */	li r6, 8 -/* 8020047C 001FC0DC  4B FC 6A E5 */	bl func_801C6F60 +/* 8020047C 001FC0DC  4B FC 6A E5 */	bl __destroy_arr  /* 80200480 001FC0E0  34 1E 00 24 */	addic. r0, r30, 0x24  /* 80200484 001FC0E4  41 82 00 28 */	beq lbl_802004AC  /* 80200488 001FC0E8  80 7E 00 24 */	lwz r3, 0x24(r30) @@ -79629,7 +79629,7 @@ lbl_8021D614:  /* 8021D648 002192A8  38 84 EA 24 */	addi r4, r4, lbl_8021EA24@l  /* 8021D64C 002192AC  38 A0 00 00 */	li r5, 0  /* 8021D650 002192B0  38 C0 00 3C */	li r6, 0x3c -/* 8021D654 002192B4  4B FA 96 55 */	bl func_801C6CA8 +/* 8021D654 002192B4  4B FA 96 55 */	bl __construct_new_array  /* 8021D658 002192B8  2C 03 00 00 */	cmpwi r3, 0  /* 8021D65C 002192BC  90 7C 00 14 */	stw r3, 0x14(r28)  /* 8021D660 002192C0  41 82 01 DC */	beq lbl_8021D83C @@ -79641,7 +79641,7 @@ lbl_8021D614:  /* 8021D678 002192D8  38 84 A2 94 */	addi r4, r4, func_8002A294@l  /* 8021D67C 002192DC  38 A0 00 00 */	li r5, 0  /* 8021D680 002192E0  38 C0 00 0C */	li r6, 0xc -/* 8021D684 002192E4  4B FA 96 25 */	bl func_801C6CA8 +/* 8021D684 002192E4  4B FA 96 25 */	bl __construct_new_array  /* 8021D688 002192E8  2C 03 00 00 */	cmpwi r3, 0  /* 8021D68C 002192EC  90 7C 00 18 */	stw r3, 0x18(r28)  /* 8021D690 002192F0  41 82 01 AC */	beq lbl_8021D83C @@ -83377,7 +83377,7 @@ lbl_80220D5C:  /* 80220DB4 0021CA14  38 A0 00 00 */	li r5, 0  /* 80220DB8 0021CA18  38 E0 00 08 */	li r7, 8  /* 80220DBC 0021CA1C  98 08 00 04 */	stb r0, 4(r8) -/* 80220DC0 0021CA20  4B FA 60 A8 */	b func_801C6E68 +/* 80220DC0 0021CA20  4B FA 60 A8 */	b __construct_array  .global func_80220DC4  func_80220DC4: diff --git a/asm/text_7.s b/asm/text_7.s index 5da67f1..012b6b8 100644 --- a/asm/text_7.s +++ b/asm/text_7.s @@ -6118,7 +6118,7 @@ func_80227E58:  /* 80227EA0 00223B00  38 84 7B 84 */	addi r4, r4, lbl_80227B84@l  /* 80227EA4 00223B04  38 A0 00 00 */	li r5, 0  /* 80227EA8 00223B08  38 C0 00 34 */	li r6, 0x34 -/* 80227EAC 00223B0C  4B F9 ED FD */	bl func_801C6CA8 +/* 80227EAC 00223B0C  4B F9 ED FD */	bl __construct_new_array  /* 80227EB0 00223B10  2C 03 00 00 */	cmpwi r3, 0  /* 80227EB4 00223B14  90 7E 00 00 */	stw r3, 0(r30)  /* 80227EB8 00223B18  40 82 00 0C */	bne lbl_80227EC4 @@ -7280,7 +7280,7 @@ func_80228D38:  /* 80228D70 002249D0  38 84 8B 0C */	addi r4, r4, lbl_80228B0C@l  /* 80228D74 002249D4  38 A0 00 00 */	li r5, 0  /* 80228D78 002249D8  38 C0 02 24 */	li r6, 0x224 -/* 80228D7C 002249DC  4B F9 DF 2D */	bl func_801C6CA8 +/* 80228D7C 002249DC  4B F9 DF 2D */	bl __construct_new_array  /* 80228D80 002249E0  38 00 00 00 */	li r0, 0  /* 80228D84 002249E4  90 7C 00 00 */	stw r3, 0(r28)  /* 80228D88 002249E8  3B C0 00 00 */	li r30, 0 @@ -57125,7 +57125,7 @@ func_8025450C:  /* 8025456C 002501CC  93 E3 00 2C */	stw r31, 0x2c(r3)  /* 80254570 002501D0  93 E3 00 48 */	stw r31, 0x48(r3)  /* 80254574 002501D4  38 63 00 4C */	addi r3, r3, 0x4c -/* 80254578 002501D8  4B F7 28 F1 */	bl func_801C6E68 +/* 80254578 002501D8  4B F7 28 F1 */	bl __construct_array  /* 8025457C 002501DC  9B FE 00 AC */	stb r31, 0xac(r30)  /* 80254580 002501E0  38 7E 00 30 */	addi r3, r30, 0x30  /* 80254584 002501E4  38 80 00 00 */	li r4, 0 @@ -57264,7 +57264,7 @@ lbl_8025474C:  /* 80254768 002503C8  38 C0 00 2C */	li r6, 0x2c  /* 8025476C 002503CC  38 84 AA 3C */	addi r4, r4, func_8037AA3C@l  /* 80254770 002503D0  38 A5 AA 84 */	addi r5, r5, func_8037AA84@l -/* 80254774 002503D4  4B F7 25 35 */	bl func_801C6CA8 +/* 80254774 002503D4  4B F7 25 35 */	bl __construct_new_array  /* 80254778 002503D8  90 7E 00 08 */	stw r3, 8(r30)  /* 8025477C 002503DC  38 60 00 28 */	li r3, 0x28  /* 80254780 002503E0  4B F8 62 B1 */	bl func_801DAA30 @@ -57338,7 +57338,7 @@ lbl_80254860:  /* 8025487C 002504DC  38 C0 00 04 */	li r6, 4  /* 80254880 002504E0  38 84 6E 80 */	addi r4, r4, lbl_80256E80@l  /* 80254884 002504E4  38 A5 6E 8C */	addi r5, r5, lbl_80256E8C@l -/* 80254888 002504E8  4B F7 24 21 */	bl func_801C6CA8 +/* 80254888 002504E8  4B F7 24 21 */	bl __construct_new_array  /* 8025488C 002504EC  38 1A 00 01 */	addi r0, r26, 1  /* 80254890 002504F0  93 9E 00 20 */	stw r28, 0x20(r30)  /* 80254894 002504F4  83 1E 00 1C */	lwz r24, 0x1c(r30) | 
