Fix some JSUConvertOffsetToPtr issues (#2063)

* Fix some JSUConvertOffsetToPtr issues

* Match some J3DAnmLoader functions
This commit is contained in:
hatal175
2024-02-05 07:21:05 +02:00
committed by GitHub
parent e0bdd7b473
commit 1a93dc596a
33 changed files with 161 additions and 907 deletions
@@ -1,8 +0,0 @@
lbl_803341CC:
/* 803341CC 3C 80 80 3D */ lis r4, __vt__16J3DClusterLoader@ha /* 0x803CF0F8@ha */
/* 803341D0 38 04 F0 F8 */ addi r0, r4, __vt__16J3DClusterLoader@l /* 0x803CF0F8@l */
/* 803341D4 90 03 00 00 */ stw r0, 0(r3)
/* 803341D8 3C 80 80 3D */ lis r4, __vt__20J3DClusterLoader_v15@ha /* 0x803CF0E8@ha */
/* 803341DC 38 04 F0 E8 */ addi r0, r4, __vt__20J3DClusterLoader_v15@l /* 0x803CF0E8@l */
/* 803341E0 90 03 00 00 */ stw r0, 0(r3)
/* 803341E4 4E 80 00 20 */ blr
@@ -1,26 +0,0 @@
lbl_803341E8:
/* 803341E8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803341EC 7C 08 02 A6 */ mflr r0
/* 803341F0 90 01 00 14 */ stw r0, 0x14(r1)
/* 803341F4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803341F8 7C 7F 1B 79 */ or. r31, r3, r3
/* 803341FC 41 82 00 30 */ beq lbl_8033422C
/* 80334200 3C 60 80 3D */ lis r3, __vt__20J3DClusterLoader_v15@ha /* 0x803CF0E8@ha */
/* 80334204 38 03 F0 E8 */ addi r0, r3, __vt__20J3DClusterLoader_v15@l /* 0x803CF0E8@l */
/* 80334208 90 1F 00 00 */ stw r0, 0(r31)
/* 8033420C 41 82 00 10 */ beq lbl_8033421C
/* 80334210 3C 60 80 3D */ lis r3, __vt__16J3DClusterLoader@ha /* 0x803CF0F8@ha */
/* 80334214 38 03 F0 F8 */ addi r0, r3, __vt__16J3DClusterLoader@l /* 0x803CF0F8@l */
/* 80334218 90 1F 00 00 */ stw r0, 0(r31)
lbl_8033421C:
/* 8033421C 7C 80 07 35 */ extsh. r0, r4
/* 80334220 40 81 00 0C */ ble lbl_8033422C
/* 80334224 7F E3 FB 78 */ mr r3, r31
/* 80334228 4B F9 AB 15 */ bl __dl__FPv
lbl_8033422C:
/* 8033422C 7F E3 FB 78 */ mr r3, r31
/* 80334230 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80334234 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80334238 7C 08 03 A6 */ mtlr r0
/* 8033423C 38 21 00 10 */ addi r1, r1, 0x10
/* 80334240 4E 80 00 20 */ blr
@@ -1,52 +0,0 @@
lbl_80334244:
/* 80334244 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80334248 7C 08 02 A6 */ mflr r0
/* 8033424C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80334250 39 61 00 20 */ addi r11, r1, 0x20
/* 80334254 48 02 DF 7D */ bl _savegpr_26
/* 80334258 7C 7A 1B 78 */ mr r26, r3
/* 8033425C 7C 9F 23 78 */ mr r31, r4
/* 80334260 38 60 00 28 */ li r3, 0x28
/* 80334264 4B F9 A9 E9 */ bl __nw__FUl
/* 80334268 7C 60 1B 79 */ or. r0, r3, r3
/* 8033426C 41 82 00 0C */ beq lbl_80334278
/* 80334270 4B FF 9F 89 */ bl __ct__13J3DDeformDataFv
/* 80334274 7C 60 1B 78 */ mr r0, r3
lbl_80334278:
/* 80334278 90 1A 00 04 */ stw r0, 4(r26)
/* 8033427C 3B 9F 00 20 */ addi r28, r31, 0x20
/* 80334280 3B 60 00 00 */ li r27, 0
/* 80334284 3C 60 43 4C */ lis r3, 0x434C /* 0x434C5331@ha */
/* 80334288 3B A3 53 31 */ addi r29, r3, 0x5331 /* 0x434C5331@l */
/* 8033428C 3C 60 80 3A */ lis r3, J3DClusterLoader__stringBase0@ha /* 0x803A2098@ha */
/* 80334290 3B C3 20 98 */ addi r30, r3, J3DClusterLoader__stringBase0@l /* 0x803A2098@l */
/* 80334294 83 FF 00 0C */ lwz r31, 0xc(r31)
/* 80334298 48 00 00 3C */ b lbl_803342D4
lbl_8033429C:
/* 8033429C 80 1C 00 00 */ lwz r0, 0(r28)
/* 803342A0 7C 00 E8 00 */ cmpw r0, r29
/* 803342A4 41 82 00 08 */ beq lbl_803342AC
/* 803342A8 48 00 00 14 */ b lbl_803342BC
lbl_803342AC:
/* 803342AC 7F 43 D3 78 */ mr r3, r26
/* 803342B0 7F 84 E3 78 */ mr r4, r28
/* 803342B4 48 00 00 45 */ bl readCluster__20J3DClusterLoader_v15FPC15J3DClusterBlock
/* 803342B8 48 00 00 10 */ b lbl_803342C8
lbl_803342BC:
/* 803342BC 7F C3 F3 78 */ mr r3, r30
/* 803342C0 4C C6 31 82 */ crclr 6
/* 803342C4 4B CD 27 F9 */ bl OSReport
lbl_803342C8:
/* 803342C8 80 1C 00 04 */ lwz r0, 4(r28)
/* 803342CC 7F 9C 02 14 */ add r28, r28, r0
/* 803342D0 3B 7B 00 01 */ addi r27, r27, 1
lbl_803342D4:
/* 803342D4 7C 1B F8 40 */ cmplw r27, r31
/* 803342D8 41 80 FF C4 */ blt lbl_8033429C
/* 803342DC 80 7A 00 04 */ lwz r3, 4(r26)
/* 803342E0 39 61 00 20 */ addi r11, r1, 0x20
/* 803342E4 48 02 DF 39 */ bl _restgpr_26
/* 803342E8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803342EC 7C 08 03 A6 */ mtlr r0
/* 803342F0 38 21 00 20 */ addi r1, r1, 0x20
/* 803342F4 4E 80 00 20 */ blr
@@ -1,121 +0,0 @@
lbl_80336168:
/* 80336168 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 8033616C 7C 08 02 A6 */ mflr r0
/* 80336170 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 80336174 39 61 00 A0 */ addi r11, r1, 0xa0
/* 80336178 48 02 C0 61 */ bl _savegpr_28
/* 8033617C 7C 7E 1B 78 */ mr r30, r3
/* 80336180 7C 9C 23 78 */ mr r28, r4
/* 80336184 7C BF 2B 78 */ mr r31, r5
/* 80336188 38 61 00 08 */ addi r3, r1, 8
/* 8033618C 4B FF A0 A9 */ bl __ct__18J3DMaterialFactoryFRC18J3DMaterialDLBlock
/* 80336190 80 7E 00 08 */ lwz r3, 8(r30)
/* 80336194 A0 03 00 04 */ lhz r0, 4(r3)
/* 80336198 28 00 00 00 */ cmplwi r0, 0
/* 8033619C 40 82 01 18 */ bne lbl_803362B4
/* 803361A0 38 00 00 01 */ li r0, 1
/* 803361A4 B0 03 00 1C */ sth r0, 0x1c(r3)
/* 803361A8 A0 1C 00 08 */ lhz r0, 8(r28)
/* 803361AC 80 7E 00 08 */ lwz r3, 8(r30)
/* 803361B0 B0 03 00 04 */ sth r0, 4(r3)
/* 803361B4 80 7E 00 08 */ lwz r3, 8(r30)
/* 803361B8 B0 03 00 06 */ sth r0, 6(r3)
/* 803361BC 80 1C 00 20 */ lwz r0, 0x20(r28)
/* 803361C0 28 00 00 00 */ cmplwi r0, 0
/* 803361C4 41 82 00 3C */ beq lbl_80336200
/* 803361C8 38 60 00 10 */ li r3, 0x10
/* 803361CC 4B F9 8A 81 */ bl __nw__FUl
/* 803361D0 7C 7D 1B 79 */ or. r29, r3, r3
/* 803361D4 41 82 00 20 */ beq lbl_803361F4
/* 803361D8 7F 83 E3 78 */ mr r3, r28
/* 803361DC 80 9C 00 20 */ lwz r4, 0x20(r28)
/* 803361E0 4B FD 43 51 */ bl func_8030A530
/* 803361E4 7C 64 1B 78 */ mr r4, r3
/* 803361E8 7F A3 EB 78 */ mr r3, r29
/* 803361EC 4B FA 87 F5 */ bl __ct__10JUTNameTabFPC7ResNTAB
/* 803361F0 7C 7D 1B 78 */ mr r29, r3
lbl_803361F4:
/* 803361F4 80 7E 00 08 */ lwz r3, 8(r30)
/* 803361F8 93 A3 00 0C */ stw r29, 0xc(r3)
/* 803361FC 48 00 00 10 */ b lbl_8033620C
lbl_80336200:
/* 80336200 38 00 00 00 */ li r0, 0
/* 80336204 80 7E 00 08 */ lwz r3, 8(r30)
/* 80336208 90 03 00 0C */ stw r0, 0xc(r3)
lbl_8033620C:
/* 8033620C 80 7E 00 08 */ lwz r3, 8(r30)
/* 80336210 A0 03 00 04 */ lhz r0, 4(r3)
/* 80336214 54 03 10 3A */ slwi r3, r0, 2
/* 80336218 4B F9 8A AD */ bl __nwa__FUl
/* 8033621C 80 9E 00 08 */ lwz r4, 8(r30)
/* 80336220 90 64 00 08 */ stw r3, 8(r4)
/* 80336224 38 00 00 00 */ li r0, 0
/* 80336228 80 7E 00 08 */ lwz r3, 8(r30)
/* 8033622C 90 03 00 10 */ stw r0, 0x10(r3)
/* 80336230 3B 80 00 00 */ li r28, 0
/* 80336234 7F FD FB 78 */ mr r29, r31
/* 80336238 48 00 00 30 */ b lbl_80336268
lbl_8033623C:
/* 8033623C 38 61 00 08 */ addi r3, r1, 8
/* 80336240 38 80 00 00 */ li r4, 0
/* 80336244 38 A0 00 01 */ li r5, 1
/* 80336248 57 86 04 3E */ clrlwi r6, r28, 0x10
/* 8033624C 7F A7 EB 78 */ mr r7, r29
/* 80336250 4B FF A1 75 */ bl create__18J3DMaterialFactoryCFP11J3DMaterialQ218J3DMaterialFactory12MaterialTypeiUl
/* 80336254 80 9E 00 08 */ lwz r4, 8(r30)
/* 80336258 80 84 00 08 */ lwz r4, 8(r4)
/* 8033625C 57 80 13 BA */ rlwinm r0, r28, 2, 0xe, 0x1d
/* 80336260 7C 64 01 2E */ stwx r3, r4, r0
/* 80336264 3B 9C 00 01 */ addi r28, r28, 1
lbl_80336268:
/* 80336268 57 84 04 3E */ clrlwi r4, r28, 0x10
/* 8033626C 80 7E 00 08 */ lwz r3, 8(r30)
/* 80336270 A0 03 00 04 */ lhz r0, 4(r3)
/* 80336274 7C 04 00 40 */ cmplw r4, r0
/* 80336278 41 80 FF C4 */ blt lbl_8033623C
/* 8033627C 38 C0 00 00 */ li r6, 0
/* 80336280 3C 80 C0 00 */ lis r4, 0xc000
/* 80336284 48 00 00 18 */ b lbl_8033629C
lbl_80336288:
/* 80336288 80 65 00 08 */ lwz r3, 8(r5)
/* 8033628C 54 C0 13 BA */ rlwinm r0, r6, 2, 0xe, 0x1d
/* 80336290 7C 63 00 2E */ lwzx r3, r3, r0
/* 80336294 90 83 00 20 */ stw r4, 0x20(r3)
/* 80336298 38 C6 00 01 */ addi r6, r6, 1
lbl_8033629C:
/* 8033629C 54 C3 04 3E */ clrlwi r3, r6, 0x10
/* 803362A0 80 BE 00 08 */ lwz r5, 8(r30)
/* 803362A4 A0 05 00 04 */ lhz r0, 4(r5)
/* 803362A8 7C 03 00 40 */ cmplw r3, r0
/* 803362AC 41 80 FF DC */ blt lbl_80336288
/* 803362B0 48 00 00 54 */ b lbl_80336304
lbl_803362B4:
/* 803362B4 3B 80 00 00 */ li r28, 0
/* 803362B8 7F FD FB 78 */ mr r29, r31
/* 803362BC 48 00 00 34 */ b lbl_803362F0
lbl_803362C0:
/* 803362C0 57 86 04 3E */ clrlwi r6, r28, 0x10
/* 803362C4 57 9F 13 BA */ rlwinm r31, r28, 2, 0xe, 0x1d
/* 803362C8 38 61 00 08 */ addi r3, r1, 8
/* 803362CC 80 84 00 08 */ lwz r4, 8(r4)
/* 803362D0 7C 84 F8 2E */ lwzx r4, r4, r31
/* 803362D4 38 A0 00 01 */ li r5, 1
/* 803362D8 7F A7 EB 78 */ mr r7, r29
/* 803362DC 4B FF A0 E9 */ bl create__18J3DMaterialFactoryCFP11J3DMaterialQ218J3DMaterialFactory12MaterialTypeiUl
/* 803362E0 80 9E 00 08 */ lwz r4, 8(r30)
/* 803362E4 80 84 00 08 */ lwz r4, 8(r4)
/* 803362E8 7C 64 F9 2E */ stwx r3, r4, r31
/* 803362EC 3B 9C 00 01 */ addi r28, r28, 1
lbl_803362F0:
/* 803362F0 57 83 04 3E */ clrlwi r3, r28, 0x10
/* 803362F4 80 9E 00 08 */ lwz r4, 8(r30)
/* 803362F8 A0 04 00 04 */ lhz r0, 4(r4)
/* 803362FC 7C 03 00 40 */ cmplw r3, r0
/* 80336300 41 80 FF C0 */ blt lbl_803362C0
lbl_80336304:
/* 80336304 39 61 00 A0 */ addi r11, r1, 0xa0
/* 80336308 48 02 BF 1D */ bl _restgpr_28
/* 8033630C 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 80336310 7C 08 03 A6 */ mtlr r0
/* 80336314 38 21 00 A0 */ addi r1, r1, 0xa0
/* 80336318 4E 80 00 20 */ blr