d_a_tag_firewall done (#2137)

* mostly fix TVec3 ctors

* d_a_tag_firewall done

* remove asm
This commit is contained in:
TakaRikka
2024-04-21 05:27:47 -07:00
committed by GitHub
parent 151c5099ab
commit b24b477fc4
27 changed files with 369 additions and 1222 deletions
@@ -0,0 +1,93 @@
lbl_803371D0:
/* 803371D0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803371D4 7C 08 02 A6 */ mflr r0
/* 803371D8 90 01 00 14 */ stw r0, 0x14(r1)
/* 803371DC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803371E0 93 C1 00 08 */ stw r30, 8(r1)
/* 803371E4 7C 7F 1B 78 */ mr r31, r3
/* 803371E8 7C 9E 23 78 */ mr r30, r4
/* 803371EC 38 60 00 5C */ li r3, 0x5c
/* 803371F0 4B F9 7A 5D */ bl __nw__FUl
/* 803371F4 7C 64 1B 79 */ or. r4, r3, r3
/* 803371F8 41 82 00 0C */ beq lbl_80337204
/* 803371FC 4B FF 7F 75 */ bl __ct__8J3DJointFv
/* 80337200 7C 64 1B 78 */ mr r4, r3
lbl_80337204:
/* 80337204 B3 C4 00 14 */ sth r30, 0x14(r4)
/* 80337208 80 BF 00 00 */ lwz r5, 0(r31)
/* 8033720C 80 7F 00 04 */ lwz r3, 4(r31)
/* 80337210 57 C0 08 3C */ slwi r0, r30, 1
/* 80337214 7C 63 02 2E */ lhzx r3, r3, r0
/* 80337218 54 63 30 32 */ slwi r3, r3, 6
/* 8033721C 7C 65 1A 2E */ lhzx r3, r5, r3
/* 80337220 98 64 00 16 */ stb r3, 0x16(r4)
/* 80337224 80 BF 00 00 */ lwz r5, 0(r31)
/* 80337228 80 7F 00 04 */ lwz r3, 4(r31)
/* 8033722C 7C 63 02 2E */ lhzx r3, r3, r0
/* 80337230 54 63 30 32 */ slwi r3, r3, 6
/* 80337234 7C 65 1A 14 */ add r3, r5, r3
/* 80337238 88 63 00 02 */ lbz r3, 2(r3)
/* 8033723C 98 64 00 17 */ stb r3, 0x17(r4)
/* 80337240 80 BF 00 00 */ lwz r5, 0(r31)
/* 80337244 80 7F 00 04 */ lwz r3, 4(r31)
/* 80337248 7C 63 02 2E */ lhzx r3, r3, r0
/* 8033724C 54 63 30 32 */ slwi r3, r3, 6
/* 80337250 38 C3 00 04 */ addi r6, r3, 4
/* 80337254 7C C5 32 14 */ add r6, r5, r6
/* 80337258 E0 06 00 00 */ psq_l f0, 0(r6), 0, 0 /* qr0 */
/* 8033725C F0 04 00 18 */ psq_st f0, 24(r4), 0, 0 /* qr0 */
/* 80337260 C0 06 00 08 */ lfs f0, 8(r6)
/* 80337264 D0 04 00 20 */ stfs f0, 0x20(r4)
/* 80337268 80 66 00 0C */ lwz r3, 0xc(r6)
/* 8033726C 90 64 00 24 */ stw r3, 0x24(r4)
/* 80337270 A8 66 00 10 */ lha r3, 0x10(r6)
/* 80337274 B0 64 00 28 */ sth r3, 0x28(r4)
/* 80337278 E0 06 00 14 */ psq_l f0, 20(r6), 0, 0 /* qr0 */
/* 8033727C F0 04 00 2C */ psq_st f0, 44(r4), 0, 0 /* qr0 */
/* 80337280 C0 06 00 1C */ lfs f0, 0x1c(r6)
/* 80337284 D0 04 00 34 */ stfs f0, 0x34(r4)
/* 80337288 80 BF 00 00 */ lwz r5, 0(r31)
/* 8033728C 80 7F 00 04 */ lwz r3, 4(r31)
/* 80337290 7C 63 02 2E */ lhzx r3, r3, r0
/* 80337294 54 63 30 32 */ slwi r3, r3, 6
/* 80337298 7C 65 1A 14 */ add r3, r5, r3
/* 8033729C C0 03 00 24 */ lfs f0, 0x24(r3)
/* 803372A0 D0 04 00 38 */ stfs f0, 0x38(r4)
/* 803372A4 80 BF 00 00 */ lwz r5, 0(r31)
/* 803372A8 80 7F 00 04 */ lwz r3, 4(r31)
/* 803372AC 7C 63 02 2E */ lhzx r3, r3, r0
/* 803372B0 54 63 30 32 */ slwi r3, r3, 6
/* 803372B4 38 63 00 28 */ addi r3, r3, 0x28
/* 803372B8 7C 65 1A 14 */ add r3, r5, r3
/* 803372BC C0 03 00 00 */ lfs f0, 0(r3)
/* 803372C0 D0 04 00 3C */ stfs f0, 0x3c(r4)
/* 803372C4 C0 03 00 04 */ lfs f0, 4(r3)
/* 803372C8 D0 04 00 40 */ stfs f0, 0x40(r4)
/* 803372CC C0 03 00 08 */ lfs f0, 8(r3)
/* 803372D0 D0 04 00 44 */ stfs f0, 0x44(r4)
/* 803372D4 80 BF 00 00 */ lwz r5, 0(r31)
/* 803372D8 80 7F 00 04 */ lwz r3, 4(r31)
/* 803372DC 7C 03 02 2E */ lhzx r0, r3, r0
/* 803372E0 54 03 30 32 */ slwi r3, r0, 6
/* 803372E4 38 63 00 34 */ addi r3, r3, 0x34
/* 803372E8 7C 65 1A 14 */ add r3, r5, r3
/* 803372EC C0 03 00 00 */ lfs f0, 0(r3)
/* 803372F0 D0 04 00 48 */ stfs f0, 0x48(r4)
/* 803372F4 C0 03 00 04 */ lfs f0, 4(r3)
/* 803372F8 D0 04 00 4C */ stfs f0, 0x4c(r4)
/* 803372FC C0 03 00 08 */ lfs f0, 8(r3)
/* 80337300 D0 04 00 50 */ stfs f0, 0x50(r4)
/* 80337304 38 60 00 00 */ li r3, 0
/* 80337308 90 64 00 54 */ stw r3, 0x54(r4)
/* 8033730C 88 04 00 17 */ lbz r0, 0x17(r4)
/* 80337310 28 00 00 FF */ cmplwi r0, 0xff
/* 80337314 40 82 00 08 */ bne lbl_8033731C
/* 80337318 98 64 00 17 */ stb r3, 0x17(r4)
lbl_8033731C:
/* 8033731C 7C 83 23 78 */ mr r3, r4
/* 80337320 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80337324 83 C1 00 08 */ lwz r30, 8(r1)
/* 80337328 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8033732C 7C 08 03 A6 */ mtlr r0
/* 80337330 38 21 00 10 */ addi r1, r1, 0x10
/* 80337334 4E 80 00 20 */ blr
@@ -1,34 +0,0 @@
lbl_80D5939C:
/* 80D5939C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D593A0 7C 08 02 A6 */ mflr r0
/* 80D593A4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D593A8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D593AC 7C 7F 1B 78 */ mr r31, r3
/* 80D593B0 4B 32 A6 79 */ bl __ct__12dCcD_GObjInfFv
/* 80D593B4 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */
/* 80D593B8 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */
/* 80D593BC 90 1F 01 20 */ stw r0, 0x120(r31)
/* 80D593C0 3C 60 80 D6 */ lis r3, __vt__8cM3dGAab@ha /* 0x80D595A4@ha */
/* 80D593C4 38 03 95 A4 */ addi r0, r3, __vt__8cM3dGAab@l /* 0x80D595A4@l */
/* 80D593C8 90 1F 01 1C */ stw r0, 0x11c(r31)
/* 80D593CC 3C 60 80 D6 */ lis r3, __vt__8cM3dGSph@ha /* 0x80D595B0@ha */
/* 80D593D0 38 03 95 B0 */ addi r0, r3, __vt__8cM3dGSph@l /* 0x80D595B0@l */
/* 80D593D4 90 1F 01 34 */ stw r0, 0x134(r31)
/* 80D593D8 3C 60 80 3C */ lis r3, __vt__12cCcD_SphAttr@ha /* 0x803C3540@ha */
/* 80D593DC 38 63 35 40 */ addi r3, r3, __vt__12cCcD_SphAttr@l /* 0x803C3540@l */
/* 80D593E0 90 7F 01 20 */ stw r3, 0x120(r31)
/* 80D593E4 38 03 00 58 */ addi r0, r3, 0x58
/* 80D593E8 90 1F 01 34 */ stw r0, 0x134(r31)
/* 80D593EC 3C 60 80 3B */ lis r3, __vt__8dCcD_Sph@ha /* 0x803ABFC0@ha */
/* 80D593F0 38 63 BF C0 */ addi r3, r3, __vt__8dCcD_Sph@l /* 0x803ABFC0@l */
/* 80D593F4 90 7F 00 3C */ stw r3, 0x3c(r31)
/* 80D593F8 38 03 00 2C */ addi r0, r3, 0x2c
/* 80D593FC 90 1F 01 20 */ stw r0, 0x120(r31)
/* 80D59400 38 03 00 84 */ addi r0, r3, 0x84
/* 80D59404 90 1F 01 34 */ stw r0, 0x134(r31)
/* 80D59408 7F E3 FB 78 */ mr r3, r31
/* 80D5940C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D59410 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D59414 7C 08 03 A6 */ mtlr r0
/* 80D59418 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5941C 4E 80 00 20 */ blr
@@ -1,17 +0,0 @@
lbl_80D5901C:
/* 80D5901C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D59020 7C 08 02 A6 */ mflr r0
/* 80D59024 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D59028 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D5902C 7C 7F 1B 79 */ or. r31, r3, r3
/* 80D59030 41 82 00 10 */ beq lbl_80D59040
/* 80D59034 7C 80 07 35 */ extsh. r0, r4
/* 80D59038 40 81 00 08 */ ble lbl_80D59040
/* 80D5903C 4B 57 5D 01 */ bl __dl__FPv
lbl_80D59040:
/* 80D59040 7F E3 FB 78 */ mr r3, r31
/* 80D59044 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D59048 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5904C 7C 08 03 A6 */ mtlr r0
/* 80D59050 38 21 00 10 */ addi r1, r1, 0x10
/* 80D59054 4E 80 00 20 */ blr
@@ -1,20 +0,0 @@
lbl_80D59468:
/* 80D59468 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5946C 7C 08 02 A6 */ mflr r0
/* 80D59470 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D59474 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D59478 7C 7F 1B 79 */ or. r31, r3, r3
/* 80D5947C 41 82 00 1C */ beq lbl_80D59498
/* 80D59480 3C A0 80 D6 */ lis r5, __vt__8cM3dGAab@ha /* 0x80D595A4@ha */
/* 80D59484 38 05 95 A4 */ addi r0, r5, __vt__8cM3dGAab@l /* 0x80D595A4@l */
/* 80D59488 90 1F 00 18 */ stw r0, 0x18(r31)
/* 80D5948C 7C 80 07 35 */ extsh. r0, r4
/* 80D59490 40 81 00 08 */ ble lbl_80D59498
/* 80D59494 4B 57 58 A9 */ bl __dl__FPv
lbl_80D59498:
/* 80D59498 7F E3 FB 78 */ mr r3, r31
/* 80D5949C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D594A0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D594A4 7C 08 03 A6 */ mtlr r0
/* 80D594A8 38 21 00 10 */ addi r1, r1, 0x10
/* 80D594AC 4E 80 00 20 */ blr
@@ -1,20 +0,0 @@
lbl_80D59420:
/* 80D59420 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D59424 7C 08 02 A6 */ mflr r0
/* 80D59428 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5942C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D59430 7C 7F 1B 79 */ or. r31, r3, r3
/* 80D59434 41 82 00 1C */ beq lbl_80D59450
/* 80D59438 3C A0 80 D6 */ lis r5, __vt__8cM3dGSph@ha /* 0x80D595B0@ha */
/* 80D5943C 38 05 95 B0 */ addi r0, r5, __vt__8cM3dGSph@l /* 0x80D595B0@l */
/* 80D59440 90 1F 00 10 */ stw r0, 0x10(r31)
/* 80D59444 7C 80 07 35 */ extsh. r0, r4
/* 80D59448 40 81 00 08 */ ble lbl_80D59450
/* 80D5944C 4B 57 58 F1 */ bl __dl__FPv
lbl_80D59450:
/* 80D59450 7F E3 FB 78 */ mr r3, r31
/* 80D59454 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D59458 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5945C 7C 08 03 A6 */ mtlr r0
/* 80D59460 38 21 00 10 */ addi r1, r1, 0x10
/* 80D59464 4E 80 00 20 */ blr
@@ -1,55 +0,0 @@
lbl_80D592D0:
/* 80D592D0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D592D4 7C 08 02 A6 */ mflr r0
/* 80D592D8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D592DC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D592E0 93 C1 00 08 */ stw r30, 8(r1)
/* 80D592E4 7C 7E 1B 79 */ or. r30, r3, r3
/* 80D592E8 7C 9F 23 78 */ mr r31, r4
/* 80D592EC 41 82 00 94 */ beq lbl_80D59380
/* 80D592F0 3C 60 80 3B */ lis r3, __vt__8dCcD_Sph@ha /* 0x803ABFC0@ha */
/* 80D592F4 38 63 BF C0 */ addi r3, r3, __vt__8dCcD_Sph@l /* 0x803ABFC0@l */
/* 80D592F8 90 7E 00 3C */ stw r3, 0x3c(r30)
/* 80D592FC 38 03 00 2C */ addi r0, r3, 0x2c
/* 80D59300 90 1E 01 20 */ stw r0, 0x120(r30)
/* 80D59304 38 03 00 84 */ addi r0, r3, 0x84
/* 80D59308 90 1E 01 34 */ stw r0, 0x134(r30)
/* 80D5930C 34 1E 01 04 */ addic. r0, r30, 0x104
/* 80D59310 41 82 00 54 */ beq lbl_80D59364
/* 80D59314 3C 60 80 3C */ lis r3, __vt__12cCcD_SphAttr@ha /* 0x803C3540@ha */
/* 80D59318 38 63 35 40 */ addi r3, r3, __vt__12cCcD_SphAttr@l /* 0x803C3540@l */
/* 80D5931C 90 7E 01 20 */ stw r3, 0x120(r30)
/* 80D59320 38 03 00 58 */ addi r0, r3, 0x58
/* 80D59324 90 1E 01 34 */ stw r0, 0x134(r30)
/* 80D59328 34 1E 01 24 */ addic. r0, r30, 0x124
/* 80D5932C 41 82 00 10 */ beq lbl_80D5933C
/* 80D59330 3C 60 80 D6 */ lis r3, __vt__8cM3dGSph@ha /* 0x80D595B0@ha */
/* 80D59334 38 03 95 B0 */ addi r0, r3, __vt__8cM3dGSph@l /* 0x80D595B0@l */
/* 80D59338 90 1E 01 34 */ stw r0, 0x134(r30)
lbl_80D5933C:
/* 80D5933C 34 1E 01 04 */ addic. r0, r30, 0x104
/* 80D59340 41 82 00 24 */ beq lbl_80D59364
/* 80D59344 3C 60 80 3C */ lis r3, __vt__14cCcD_ShapeAttr@ha /* 0x803C36D0@ha */
/* 80D59348 38 03 36 D0 */ addi r0, r3, __vt__14cCcD_ShapeAttr@l /* 0x803C36D0@l */
/* 80D5934C 90 1E 01 20 */ stw r0, 0x120(r30)
/* 80D59350 34 1E 01 04 */ addic. r0, r30, 0x104
/* 80D59354 41 82 00 10 */ beq lbl_80D59364
/* 80D59358 3C 60 80 D6 */ lis r3, __vt__8cM3dGAab@ha /* 0x80D595A4@ha */
/* 80D5935C 38 03 95 A4 */ addi r0, r3, __vt__8cM3dGAab@l /* 0x80D595A4@l */
/* 80D59360 90 1E 01 1C */ stw r0, 0x11c(r30)
lbl_80D59364:
/* 80D59364 7F C3 F3 78 */ mr r3, r30
/* 80D59368 38 80 00 00 */ li r4, 0
/* 80D5936C 4B 32 AD 79 */ bl __dt__12dCcD_GObjInfFv
/* 80D59370 7F E0 07 35 */ extsh. r0, r31
/* 80D59374 40 81 00 0C */ ble lbl_80D59380
/* 80D59378 7F C3 F3 78 */ mr r3, r30
/* 80D5937C 4B 57 59 C1 */ bl __dl__FPv
lbl_80D59380:
/* 80D59380 7F C3 F3 78 */ mr r3, r30
/* 80D59384 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D59388 83 C1 00 08 */ lwz r30, 8(r1)
/* 80D5938C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D59390 7C 08 03 A6 */ mtlr r0
/* 80D59394 38 21 00 10 */ addi r1, r1, 0x10
/* 80D59398 4E 80 00 20 */ blr
@@ -1,147 +0,0 @@
lbl_80D590A8:
/* 80D590A8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D590AC 7C 08 02 A6 */ mflr r0
/* 80D590B0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D590B4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D590B8 93 C1 00 08 */ stw r30, 8(r1)
/* 80D590BC 7C 7F 1B 78 */ mr r31, r3
/* 80D590C0 80 03 04 A0 */ lwz r0, 0x4a0(r3)
/* 80D590C4 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80D590C8 40 82 00 88 */ bne lbl_80D59150
/* 80D590CC 7F E0 FB 79 */ or. r0, r31, r31
/* 80D590D0 41 82 00 74 */ beq lbl_80D59144
/* 80D590D4 7C 1E 03 78 */ mr r30, r0
/* 80D590D8 4B 2B FA 8D */ bl __ct__10fopAc_ac_cFv
/* 80D590DC 38 7E 06 70 */ addi r3, r30, 0x670
/* 80D590E0 3C 80 80 D6 */ lis r4, __ct__4cXyzFv@ha /* 0x80D594B0@ha */
/* 80D590E4 38 84 94 B0 */ addi r4, r4, __ct__4cXyzFv@l /* 0x80D594B0@l */
/* 80D590E8 3C A0 80 D6 */ lis r5, __dt__4cXyzFv@ha /* 0x80D5901C@ha */
/* 80D590EC 38 A5 90 1C */ addi r5, r5, __dt__4cXyzFv@l /* 0x80D5901C@l */
/* 80D590F0 38 C0 00 0C */ li r6, 0xc
/* 80D590F4 38 E0 00 14 */ li r7, 0x14
/* 80D590F8 4B 60 8C 69 */ bl __construct_array
/* 80D590FC 3C 60 80 3C */ lis r3, __vt__9cCcD_Stts@ha /* 0x803C3728@ha */
/* 80D59100 38 03 37 28 */ addi r0, r3, __vt__9cCcD_Stts@l /* 0x803C3728@l */
/* 80D59104 90 1E 07 E4 */ stw r0, 0x7e4(r30)
/* 80D59108 38 7E 07 E8 */ addi r3, r30, 0x7e8
/* 80D5910C 4B 32 A6 55 */ bl __ct__10dCcD_GSttsFv
/* 80D59110 3C 60 80 3B */ lis r3, __vt__9dCcD_Stts@ha /* 0x803AC2E4@ha */
/* 80D59114 38 63 C2 E4 */ addi r3, r3, __vt__9dCcD_Stts@l /* 0x803AC2E4@l */
/* 80D59118 90 7E 07 E4 */ stw r3, 0x7e4(r30)
/* 80D5911C 38 03 00 20 */ addi r0, r3, 0x20
/* 80D59120 90 1E 07 E8 */ stw r0, 0x7e8(r30)
/* 80D59124 38 7E 08 08 */ addi r3, r30, 0x808
/* 80D59128 3C 80 80 D6 */ lis r4, __ct__8dCcD_SphFv@ha /* 0x80D5939C@ha */
/* 80D5912C 38 84 93 9C */ addi r4, r4, __ct__8dCcD_SphFv@l /* 0x80D5939C@l */
/* 80D59130 3C A0 80 D6 */ lis r5, __dt__8dCcD_SphFv@ha /* 0x80D592D0@ha */
/* 80D59134 38 A5 92 D0 */ addi r5, r5, __dt__8dCcD_SphFv@l /* 0x80D592D0@l */
/* 80D59138 38 C0 01 38 */ li r6, 0x138
/* 80D5913C 38 E0 00 14 */ li r7, 0x14
/* 80D59140 4B 60 8C 21 */ bl __construct_array
lbl_80D59144:
/* 80D59144 80 1F 04 A0 */ lwz r0, 0x4a0(r31)
/* 80D59148 60 00 00 08 */ ori r0, r0, 8
/* 80D5914C 90 1F 04 A0 */ stw r0, 0x4a0(r31)
lbl_80D59150:
/* 80D59150 3C 60 80 D6 */ lis r3, data_80D595C4@ha /* 0x80D595C4@ha */
/* 80D59154 88 03 95 C4 */ lbz r0, data_80D595C4@l(r3) /* 0x80D595C4@l */
/* 80D59158 28 00 00 00 */ cmplwi r0, 0
/* 80D5915C 40 82 00 28 */ bne lbl_80D59184
/* 80D59160 38 00 00 FF */ li r0, 0xff
/* 80D59164 98 1F 05 68 */ stb r0, 0x568(r31)
/* 80D59168 3C 60 80 D6 */ lis r3, fire_leader@ha /* 0x80D595C0@ha */
/* 80D5916C 93 E3 95 C0 */ stw r31, fire_leader@l(r3) /* 0x80D595C0@l */
/* 80D59170 38 7F 07 CC */ addi r3, r31, 0x7cc
/* 80D59174 38 80 00 FF */ li r4, 0xff
/* 80D59178 38 A0 00 00 */ li r5, 0
/* 80D5917C 7F E6 FB 78 */ mr r6, r31
/* 80D59180 4B 32 A6 E1 */ bl Init__9dCcD_SttsFiiP10fopAc_ac_c
lbl_80D59184:
/* 80D59184 80 1F 00 B0 */ lwz r0, 0xb0(r31)
/* 80D59188 54 07 C4 3E */ rlwinm r7, r0, 0x18, 0x10, 0x1f
/* 80D5918C 3C 60 80 D6 */ lis r3, fire_leader@ha /* 0x80D595C0@ha */
/* 80D59190 38 C3 95 C0 */ addi r6, r3, fire_leader@l /* 0x80D595C0@l */
/* 80D59194 80 86 00 00 */ lwz r4, 0(r6)
/* 80D59198 3C 60 80 D6 */ lis r3, data_80D595C4@ha /* 0x80D595C4@ha */
/* 80D5919C 38 A3 95 C4 */ addi r5, r3, data_80D595C4@l /* 0x80D595C4@l */
/* 80D591A0 88 05 00 00 */ lbz r0, 0(r5)
/* 80D591A4 54 00 10 3A */ slwi r0, r0, 2
/* 80D591A8 7C 64 02 14 */ add r3, r4, r0
/* 80D591AC 90 E3 05 6C */ stw r7, 0x56c(r3)
/* 80D591B0 A8 1F 04 DC */ lha r0, 0x4dc(r31)
/* 80D591B4 54 04 04 3E */ clrlwi r4, r0, 0x10
/* 80D591B8 80 66 00 00 */ lwz r3, 0(r6)
/* 80D591BC 88 05 00 00 */ lbz r0, 0(r5)
/* 80D591C0 54 00 10 3A */ slwi r0, r0, 2
/* 80D591C4 7C 63 02 14 */ add r3, r3, r0
/* 80D591C8 90 83 05 BC */ stw r4, 0x5bc(r3)
/* 80D591CC 80 9F 00 B0 */ lwz r4, 0xb0(r31)
/* 80D591D0 80 66 00 00 */ lwz r3, 0(r6)
/* 80D591D4 88 05 00 00 */ lbz r0, 0(r5)
/* 80D591D8 7C 63 02 14 */ add r3, r3, r0
/* 80D591DC 98 83 06 5C */ stb r4, 0x65c(r3)
/* 80D591E0 80 1F 00 B0 */ lwz r0, 0xb0(r31)
/* 80D591E4 54 00 46 3E */ srwi r0, r0, 0x18
/* 80D591E8 7C 07 03 78 */ mr r7, r0
/* 80D591EC 28 00 00 FF */ cmplwi r0, 0xff
/* 80D591F0 40 82 00 08 */ bne lbl_80D591F8
/* 80D591F4 38 E0 00 00 */ li r7, 0
lbl_80D591F8:
/* 80D591F8 3C 60 80 D6 */ lis r3, fire_leader@ha /* 0x80D595C0@ha */
/* 80D591FC 38 C3 95 C0 */ addi r6, r3, fire_leader@l /* 0x80D595C0@l */
/* 80D59200 80 86 00 00 */ lwz r4, 0(r6)
/* 80D59204 3C 60 80 D6 */ lis r3, data_80D595C4@ha /* 0x80D595C4@ha */
/* 80D59208 38 A3 95 C4 */ addi r5, r3, data_80D595C4@l /* 0x80D595C4@l */
/* 80D5920C 88 05 00 00 */ lbz r0, 0(r5)
/* 80D59210 7C 64 02 14 */ add r3, r4, r0
/* 80D59214 98 E3 07 60 */ stb r7, 0x760(r3)
/* 80D59218 80 86 00 00 */ lwz r4, 0(r6)
/* 80D5921C 88 05 00 00 */ lbz r0, 0(r5)
/* 80D59220 1C 60 00 0C */ mulli r3, r0, 0xc
/* 80D59224 38 63 06 70 */ addi r3, r3, 0x670
/* 80D59228 7C 64 1A 14 */ add r3, r4, r3
/* 80D5922C C0 1F 04 D0 */ lfs f0, 0x4d0(r31)
/* 80D59230 D0 03 00 00 */ stfs f0, 0(r3)
/* 80D59234 C0 1F 04 D4 */ lfs f0, 0x4d4(r31)
/* 80D59238 D0 03 00 04 */ stfs f0, 4(r3)
/* 80D5923C C0 1F 04 D8 */ lfs f0, 0x4d8(r31)
/* 80D59240 D0 03 00 08 */ stfs f0, 8(r3)
/* 80D59244 80 C6 00 00 */ lwz r6, 0(r6)
/* 80D59248 88 A5 00 00 */ lbz r5, 0(r5)
/* 80D5924C 7C 66 2A 14 */ add r3, r6, r5
/* 80D59250 88 03 06 5C */ lbz r0, 0x65c(r3)
/* 80D59254 28 00 00 FF */ cmplwi r0, 0xff
/* 80D59258 41 82 00 18 */ beq lbl_80D59270
/* 80D5925C 38 80 00 00 */ li r4, 0
/* 80D59260 54 A0 10 3A */ slwi r0, r5, 2
/* 80D59264 7C 66 02 14 */ add r3, r6, r0
/* 80D59268 90 83 06 0C */ stw r4, 0x60c(r3)
/* 80D5926C 48 00 00 14 */ b lbl_80D59280
lbl_80D59270:
/* 80D59270 38 80 00 01 */ li r4, 1
/* 80D59274 54 A0 10 3A */ slwi r0, r5, 2
/* 80D59278 7C 66 02 14 */ add r3, r6, r0
/* 80D5927C 90 83 06 0C */ stw r4, 0x60c(r3)
lbl_80D59280:
/* 80D59280 3C 60 80 D6 */ lis r3, data_80D595C4@ha /* 0x80D595C4@ha */
/* 80D59284 38 83 95 C4 */ addi r4, r3, data_80D595C4@l /* 0x80D595C4@l */
/* 80D59288 88 64 00 00 */ lbz r3, 0(r4)
/* 80D5928C 38 03 00 01 */ addi r0, r3, 1
/* 80D59290 98 04 00 00 */ stb r0, 0(r4)
/* 80D59294 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 80D59298 28 00 00 01 */ cmplwi r0, 1
/* 80D5929C 40 81 00 0C */ ble lbl_80D592A8
/* 80D592A0 38 60 00 05 */ li r3, 5
/* 80D592A4 48 00 00 14 */ b lbl_80D592B8
lbl_80D592A8:
/* 80D592A8 38 00 00 00 */ li r0, 0
/* 80D592AC B0 1F 04 E4 */ sth r0, 0x4e4(r31)
/* 80D592B0 B0 1F 04 DC */ sth r0, 0x4dc(r31)
/* 80D592B4 38 60 00 04 */ li r3, 4
lbl_80D592B8:
/* 80D592B8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D592BC 83 C1 00 08 */ lwz r30, 8(r1)
/* 80D592C0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D592C4 7C 08 03 A6 */ mtlr r0
/* 80D592C8 38 21 00 10 */ addi r1, r1, 0x10
/* 80D592CC 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_80D594B4:
/* 80D594B4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D594B8 7C 08 02 A6 */ mflr r0
/* 80D594BC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D594C0 4B FF FB E9 */ bl create__13daTag_FWall_cFv
/* 80D594C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D594C8 7C 08 03 A6 */ mtlr r0
/* 80D594CC 38 21 00 10 */ addi r1, r1, 0x10
/* 80D594D0 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_80D59058:
/* 80D59058 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5905C 7C 08 02 A6 */ mflr r0
/* 80D59060 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D59064 4B FF F8 DD */ bl execute__13daTag_FWall_cFv
/* 80D59068 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5906C 7C 08 03 A6 */ mtlr r0
/* 80D59070 38 21 00 10 */ addi r1, r1, 0x10
/* 80D59074 4E 80 00 20 */ blr
@@ -1,9 +0,0 @@
lbl_80D59080:
/* 80D59080 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D59084 7C 08 02 A6 */ mflr r0
/* 80D59088 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5908C 4B FF FF ED */ bl _delete__13daTag_FWall_cFv
/* 80D59090 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D59094 7C 08 03 A6 */ mtlr r0
/* 80D59098 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5909C 4E 80 00 20 */ blr
@@ -1,470 +0,0 @@
lbl_80D58940:
/* 80D58940 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 80D58944 7C 08 02 A6 */ mflr r0
/* 80D58948 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 80D5894C 39 61 00 C0 */ addi r11, r1, 0xc0
/* 80D58950 4B 60 98 59 */ bl _savegpr_16
/* 80D58954 7C 77 1B 78 */ mr r23, r3
/* 80D58958 3C 60 80 D6 */ lis r3, lit_3983@ha /* 0x80D594DC@ha */
/* 80D5895C 3B 83 94 DC */ addi r28, r3, lit_3983@l /* 0x80D594DC@l */
/* 80D58960 4B 42 8C E1 */ bl dCam_getBody__Fv
/* 80D58964 7C 64 1B 78 */ mr r4, r3
/* 80D58968 38 61 00 5C */ addi r3, r1, 0x5c
/* 80D5896C 4B 42 94 F9 */ bl Eye__9dCamera_cFv
/* 80D58970 C0 01 00 5C */ lfs f0, 0x5c(r1)
/* 80D58974 D0 01 00 74 */ stfs f0, 0x74(r1)
/* 80D58978 C0 01 00 60 */ lfs f0, 0x60(r1)
/* 80D5897C D0 01 00 78 */ stfs f0, 0x78(r1)
/* 80D58980 C0 01 00 64 */ lfs f0, 0x64(r1)
/* 80D58984 D0 01 00 7C */ stfs f0, 0x7c(r1)
/* 80D58988 88 17 05 69 */ lbz r0, 0x569(r23)
/* 80D5898C 28 00 00 00 */ cmplwi r0, 0
/* 80D58990 41 82 00 A0 */ beq lbl_80D58A30
/* 80D58994 C0 1C 00 00 */ lfs f0, 0(r28)
/* 80D58998 D0 01 00 68 */ stfs f0, 0x68(r1)
/* 80D5899C D0 01 00 6C */ stfs f0, 0x6c(r1)
/* 80D589A0 D0 01 00 70 */ stfs f0, 0x70(r1)
/* 80D589A4 3A 00 00 00 */ li r16, 0
/* 80D589A8 3A 80 00 00 */ li r20, 0
/* 80D589AC 3A A0 00 00 */ li r21, 0
/* 80D589B0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D589B4 3A 43 61 C0 */ addi r18, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D589B8 3C 60 80 D6 */ lis r3, game_over_eff_name__11Tag_FWall_n@ha /* 0x80D5954C@ha */
/* 80D589BC 3A 23 95 4C */ addi r17, r3, game_over_eff_name__11Tag_FWall_n@l /* 0x80D5954C@l */
lbl_80D589C0:
/* 80D589C0 80 72 5D 3C */ lwz r3, 0x5d3c(r18)
/* 80D589C4 38 00 00 FF */ li r0, 0xff
/* 80D589C8 90 01 00 08 */ stw r0, 8(r1)
/* 80D589CC 38 80 00 00 */ li r4, 0
/* 80D589D0 90 81 00 0C */ stw r4, 0xc(r1)
/* 80D589D4 38 00 FF FF */ li r0, -1
/* 80D589D8 90 01 00 10 */ stw r0, 0x10(r1)
/* 80D589DC 90 81 00 14 */ stw r4, 0x14(r1)
/* 80D589E0 90 81 00 18 */ stw r4, 0x18(r1)
/* 80D589E4 90 81 00 1C */ stw r4, 0x1c(r1)
/* 80D589E8 3A 75 07 74 */ addi r19, r21, 0x774
/* 80D589EC 7C 97 98 2E */ lwzx r4, r23, r19
/* 80D589F0 38 A0 00 00 */ li r5, 0
/* 80D589F4 7C D1 A2 2E */ lhzx r6, r17, r20
/* 80D589F8 38 E1 00 68 */ addi r7, r1, 0x68
/* 80D589FC 39 00 00 00 */ li r8, 0
/* 80D58A00 39 20 00 00 */ li r9, 0
/* 80D58A04 39 40 00 00 */ li r10, 0
/* 80D58A08 C0 3C 00 04 */ lfs f1, 4(r28)
/* 80D58A0C 4B 2F 4A C1 */ bl set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf
/* 80D58A10 7C 77 99 2E */ stwx r3, r23, r19
/* 80D58A14 3A 10 00 01 */ addi r16, r16, 1
/* 80D58A18 2C 10 00 04 */ cmpwi r16, 4
/* 80D58A1C 3A 94 00 02 */ addi r20, r20, 2
/* 80D58A20 3A B5 00 04 */ addi r21, r21, 4
/* 80D58A24 41 80 FF 9C */ blt lbl_80D589C0
/* 80D58A28 38 60 00 01 */ li r3, 1
/* 80D58A2C 48 00 05 D8 */ b lbl_80D59004
lbl_80D58A30:
/* 80D58A30 3B 00 00 00 */ li r24, 0
/* 80D58A34 3A C0 00 00 */ li r22, 0
/* 80D58A38 3A A0 00 00 */ li r21, 0
/* 80D58A3C 3A 80 00 00 */ li r20, 0
/* 80D58A40 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D58A44 3B A3 61 C0 */ addi r29, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D58A48 3B 7D 23 3C */ addi r27, r29, 0x233c
/* 80D58A4C 3C 60 80 D6 */ lis r3, data_80D595C4@ha /* 0x80D595C4@ha */
/* 80D58A50 3B E3 95 C4 */ addi r31, r3, data_80D595C4@l /* 0x80D595C4@l */
/* 80D58A54 48 00 05 A0 */ b lbl_80D58FF4
lbl_80D58A58:
/* 80D58A58 7F 57 A2 14 */ add r26, r23, r20
/* 80D58A5C 80 1A 06 0C */ lwz r0, 0x60c(r26)
/* 80D58A60 2C 00 00 02 */ cmpwi r0, 2
/* 80D58A64 41 82 00 C8 */ beq lbl_80D58B2C
/* 80D58A68 40 80 00 14 */ bge lbl_80D58A7C
/* 80D58A6C 2C 00 00 00 */ cmpwi r0, 0
/* 80D58A70 41 82 00 18 */ beq lbl_80D58A88
/* 80D58A74 40 80 00 78 */ bge lbl_80D58AEC
/* 80D58A78 48 00 05 14 */ b lbl_80D58F8C
lbl_80D58A7C:
/* 80D58A7C 2C 00 00 04 */ cmpwi r0, 4
/* 80D58A80 40 80 05 0C */ bge lbl_80D58F8C
/* 80D58A84 48 00 02 70 */ b lbl_80D58CF4
lbl_80D58A88:
/* 80D58A88 38 00 00 00 */ li r0, 0
/* 80D58A8C 90 1A 05 6C */ stw r0, 0x56c(r26)
/* 80D58A90 88 17 05 68 */ lbz r0, 0x568(r23)
/* 80D58A94 28 00 00 FF */ cmplwi r0, 0xff
/* 80D58A98 40 82 04 F4 */ bne lbl_80D58F8C
/* 80D58A9C 9B 17 05 68 */ stb r24, 0x568(r23)
/* 80D58AA0 3B 20 00 00 */ li r25, 0
/* 80D58AA4 3B C0 00 00 */ li r30, 0
/* 80D58AA8 3C 60 80 D6 */ lis r3, cc_sph_src__11Tag_FWall_n@ha /* 0x80D5950C@ha */
/* 80D58AAC 3A 23 95 0C */ addi r17, r3, cc_sph_src__11Tag_FWall_n@l /* 0x80D5950C@l */
/* 80D58AB0 3A 57 07 CC */ addi r18, r23, 0x7cc
/* 80D58AB4 3C 60 80 D6 */ lis r3, data_80D595C4@ha /* 0x80D595C4@ha */
/* 80D58AB8 3A 63 95 C4 */ addi r19, r3, data_80D595C4@l /* 0x80D595C4@l */
/* 80D58ABC 48 00 00 20 */ b lbl_80D58ADC
lbl_80D58AC0:
/* 80D58AC0 7E 17 F2 14 */ add r16, r23, r30
/* 80D58AC4 38 70 08 08 */ addi r3, r16, 0x808
/* 80D58AC8 7E 24 8B 78 */ mr r4, r17
/* 80D58ACC 4B 32 BF 69 */ bl Set__8dCcD_SphFRC11dCcD_SrcSph
/* 80D58AD0 92 50 08 4C */ stw r18, 0x84c(r16)
/* 80D58AD4 3B 39 00 01 */ addi r25, r25, 1
/* 80D58AD8 3B DE 01 38 */ addi r30, r30, 0x138
lbl_80D58ADC:
/* 80D58ADC 88 13 00 00 */ lbz r0, 0(r19)
/* 80D58AE0 7C 19 00 00 */ cmpw r25, r0
/* 80D58AE4 40 81 FF DC */ ble lbl_80D58AC0
/* 80D58AE8 48 00 04 A4 */ b lbl_80D58F8C
lbl_80D58AEC:
/* 80D58AEC 88 17 05 68 */ lbz r0, 0x568(r23)
/* 80D58AF0 28 00 00 FF */ cmplwi r0, 0xff
/* 80D58AF4 41 82 04 98 */ beq lbl_80D58F8C
/* 80D58AF8 54 03 15 BA */ rlwinm r3, r0, 2, 0x16, 0x1d
/* 80D58AFC 38 03 05 6C */ addi r0, r3, 0x56c
/* 80D58B00 7C 77 00 2E */ lwzx r3, r23, r0
/* 80D58B04 80 1A 05 6C */ lwz r0, 0x56c(r26)
/* 80D58B08 7C 03 00 00 */ cmpw r3, r0
/* 80D58B0C 40 82 04 80 */ bne lbl_80D58F8C
/* 80D58B10 38 00 00 03 */ li r0, 3
/* 80D58B14 90 1A 06 0C */ stw r0, 0x60c(r26)
/* 80D58B18 38 75 08 08 */ addi r3, r21, 0x808
/* 80D58B1C 7C 17 18 2E */ lwzx r0, r23, r3
/* 80D58B20 60 00 00 01 */ ori r0, r0, 1
/* 80D58B24 7C 17 19 2E */ stwx r0, r23, r3
/* 80D58B28 48 00 04 64 */ b lbl_80D58F8C
lbl_80D58B2C:
/* 80D58B2C 38 75 08 08 */ addi r3, r21, 0x808
/* 80D58B30 7C 17 18 2E */ lwzx r0, r23, r3
/* 80D58B34 60 00 00 01 */ ori r0, r0, 1
/* 80D58B38 7C 17 19 2E */ stwx r0, r23, r3
/* 80D58B3C 88 77 05 68 */ lbz r3, 0x568(r23)
/* 80D58B40 7C 18 18 00 */ cmpw r24, r3
/* 80D58B44 40 82 01 A8 */ bne lbl_80D58CEC
/* 80D58B48 88 1D 4F AD */ lbz r0, 0x4fad(r29)
/* 80D58B4C 28 00 00 00 */ cmplwi r0, 0
/* 80D58B50 40 82 00 18 */ bne lbl_80D58B68
/* 80D58B54 54 63 15 BA */ rlwinm r3, r3, 2, 0x16, 0x1d
/* 80D58B58 38 83 05 6C */ addi r4, r3, 0x56c
/* 80D58B5C 7C 77 20 2E */ lwzx r3, r23, r4
/* 80D58B60 38 03 00 01 */ addi r0, r3, 1
/* 80D58B64 7C 17 21 2E */ stwx r0, r23, r4
lbl_80D58B68:
/* 80D58B68 C0 1C 00 00 */ lfs f0, 0(r28)
/* 80D58B6C D0 01 00 68 */ stfs f0, 0x68(r1)
/* 80D58B70 D0 01 00 6C */ stfs f0, 0x6c(r1)
/* 80D58B74 D0 01 00 70 */ stfs f0, 0x70(r1)
/* 80D58B78 88 17 05 68 */ lbz r0, 0x568(r23)
/* 80D58B7C 54 03 10 3A */ slwi r3, r0, 2
/* 80D58B80 38 03 05 6C */ addi r0, r3, 0x56c
/* 80D58B84 7C 17 00 2E */ lwzx r0, r23, r0
/* 80D58B88 2C 00 03 52 */ cmpwi r0, 0x352
/* 80D58B8C 40 81 00 58 */ ble lbl_80D58BE4
/* 80D58B90 80 7D 5D 3C */ lwz r3, 0x5d3c(r29)
/* 80D58B94 38 00 00 FF */ li r0, 0xff
/* 80D58B98 90 01 00 08 */ stw r0, 8(r1)
/* 80D58B9C 38 80 00 00 */ li r4, 0
/* 80D58BA0 90 81 00 0C */ stw r4, 0xc(r1)
/* 80D58BA4 38 00 FF FF */ li r0, -1
/* 80D58BA8 90 01 00 10 */ stw r0, 0x10(r1)
/* 80D58BAC 90 81 00 14 */ stw r4, 0x14(r1)
/* 80D58BB0 90 81 00 18 */ stw r4, 0x18(r1)
/* 80D58BB4 90 81 00 1C */ stw r4, 0x1c(r1)
/* 80D58BB8 80 97 07 C8 */ lwz r4, 0x7c8(r23)
/* 80D58BBC 38 A0 00 00 */ li r5, 0
/* 80D58BC0 3C C0 00 01 */ lis r6, 0x0001 /* 0x000084D2@ha */
/* 80D58BC4 38 C6 84 D2 */ addi r6, r6, 0x84D2 /* 0x000084D2@l */
/* 80D58BC8 38 E1 00 68 */ addi r7, r1, 0x68
/* 80D58BCC 39 00 00 00 */ li r8, 0
/* 80D58BD0 39 20 00 00 */ li r9, 0
/* 80D58BD4 39 40 00 00 */ li r10, 0
/* 80D58BD8 C0 3C 00 04 */ lfs f1, 4(r28)
/* 80D58BDC 4B 2F 48 F1 */ bl set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf
/* 80D58BE0 90 77 07 C8 */ stw r3, 0x7c8(r23)
lbl_80D58BE4:
/* 80D58BE4 80 7D 5D 3C */ lwz r3, 0x5d3c(r29)
/* 80D58BE8 38 00 00 FF */ li r0, 0xff
/* 80D58BEC 90 01 00 08 */ stw r0, 8(r1)
/* 80D58BF0 38 80 00 00 */ li r4, 0
/* 80D58BF4 90 81 00 0C */ stw r4, 0xc(r1)
/* 80D58BF8 38 00 FF FF */ li r0, -1
/* 80D58BFC 90 01 00 10 */ stw r0, 0x10(r1)
/* 80D58C00 90 81 00 14 */ stw r4, 0x14(r1)
/* 80D58C04 90 81 00 18 */ stw r4, 0x18(r1)
/* 80D58C08 90 81 00 1C */ stw r4, 0x1c(r1)
/* 80D58C0C 80 97 07 C4 */ lwz r4, 0x7c4(r23)
/* 80D58C10 38 A0 00 00 */ li r5, 0
/* 80D58C14 3C C0 00 01 */ lis r6, 0x0001 /* 0x000084BB@ha */
/* 80D58C18 38 C6 84 BB */ addi r6, r6, 0x84BB /* 0x000084BB@l */
/* 80D58C1C 38 E1 00 68 */ addi r7, r1, 0x68
/* 80D58C20 39 00 00 00 */ li r8, 0
/* 80D58C24 39 20 00 00 */ li r9, 0
/* 80D58C28 39 40 00 00 */ li r10, 0
/* 80D58C2C C0 3C 00 04 */ lfs f1, 4(r28)
/* 80D58C30 4B 2F 48 9D */ bl set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf
/* 80D58C34 90 77 07 C4 */ stw r3, 0x7c4(r23)
/* 80D58C38 3C 60 00 08 */ lis r3, 0x0008 /* 0x00080175@ha */
/* 80D58C3C 38 03 01 75 */ addi r0, r3, 0x0175 /* 0x00080175@l */
/* 80D58C40 90 01 00 28 */ stw r0, 0x28(r1)
/* 80D58C44 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80D58C48 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80D58C4C 80 63 00 00 */ lwz r3, 0(r3)
/* 80D58C50 38 81 00 28 */ addi r4, r1, 0x28
/* 80D58C54 38 A0 00 00 */ li r5, 0
/* 80D58C58 88 17 05 68 */ lbz r0, 0x568(r23)
/* 80D58C5C 54 06 10 3A */ slwi r6, r0, 2
/* 80D58C60 38 06 05 6C */ addi r0, r6, 0x56c
/* 80D58C64 7C D7 00 2E */ lwzx r6, r23, r0
/* 80D58C68 38 E0 00 00 */ li r7, 0
/* 80D58C6C C0 3C 00 04 */ lfs f1, 4(r28)
/* 80D58C70 FC 40 08 90 */ fmr f2, f1
/* 80D58C74 C0 7C 00 08 */ lfs f3, 8(r28)
/* 80D58C78 FC 80 18 90 */ fmr f4, f3
/* 80D58C7C 39 00 00 00 */ li r8, 0
/* 80D58C80 4B 55 38 8D */ bl seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
/* 80D58C84 88 17 05 68 */ lbz r0, 0x568(r23)
/* 80D58C88 54 03 10 3A */ slwi r3, r0, 2
/* 80D58C8C 38 03 05 6C */ addi r0, r3, 0x56c
/* 80D58C90 7C 17 00 2E */ lwzx r0, r23, r0
/* 80D58C94 2C 00 03 84 */ cmpwi r0, 0x384
/* 80D58C98 41 80 00 5C */ blt lbl_80D58CF4
/* 80D58C9C 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D58CA0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D58CA4 80 83 5D AC */ lwz r4, 0x5dac(r3)
/* 80D58CA8 80 04 05 78 */ lwz r0, 0x578(r4)
/* 80D58CAC 64 00 00 04 */ oris r0, r0, 4
/* 80D58CB0 90 04 05 78 */ stw r0, 0x578(r4)
/* 80D58CB4 38 00 00 01 */ li r0, 1
/* 80D58CB8 98 17 05 69 */ stb r0, 0x569(r23)
/* 80D58CBC C0 3C 00 00 */ lfs f1, 0(r28)
/* 80D58CC0 D0 21 00 50 */ stfs f1, 0x50(r1)
/* 80D58CC4 C0 1C 00 04 */ lfs f0, 4(r28)
/* 80D58CC8 D0 01 00 54 */ stfs f0, 0x54(r1)
/* 80D58CCC D0 21 00 58 */ stfs f1, 0x58(r1)
/* 80D58CD0 38 63 5B D4 */ addi r3, r3, 0x5bd4
/* 80D58CD4 38 80 00 08 */ li r4, 8
/* 80D58CD8 38 A0 00 1F */ li r5, 0x1f
/* 80D58CDC 38 C1 00 50 */ addi r6, r1, 0x50
/* 80D58CE0 4B 31 6D 45 */ bl StartShock__12dVibration_cFii4cXyz
/* 80D58CE4 38 60 00 01 */ li r3, 1
/* 80D58CE8 48 00 03 1C */ b lbl_80D59004
lbl_80D58CEC:
/* 80D58CEC 38 00 00 03 */ li r0, 3
/* 80D58CF0 90 1A 06 0C */ stw r0, 0x60c(r26)
lbl_80D58CF4:
/* 80D58CF4 38 18 07 60 */ addi r0, r24, 0x760
/* 80D58CF8 7C 17 00 AE */ lbzx r0, r23, r0
/* 80D58CFC 28 00 00 00 */ cmplwi r0, 0
/* 80D58D00 40 82 00 58 */ bne lbl_80D58D58
/* 80D58D04 7E 17 AA 14 */ add r16, r23, r21
/* 80D58D08 80 10 08 08 */ lwz r0, 0x808(r16)
/* 80D58D0C 60 00 00 01 */ ori r0, r0, 1
/* 80D58D10 90 10 08 08 */ stw r0, 0x808(r16)
/* 80D58D14 7C 77 B2 14 */ add r3, r23, r22
/* 80D58D18 C0 03 06 70 */ lfs f0, 0x670(r3)
/* 80D58D1C D0 01 00 68 */ stfs f0, 0x68(r1)
/* 80D58D20 C0 03 06 74 */ lfs f0, 0x674(r3)
/* 80D58D24 D0 01 00 6C */ stfs f0, 0x6c(r1)
/* 80D58D28 C0 03 06 78 */ lfs f0, 0x678(r3)
/* 80D58D2C D0 01 00 70 */ stfs f0, 0x70(r1)
/* 80D58D30 3A 30 09 2C */ addi r17, r16, 0x92c
/* 80D58D34 7E 23 8B 78 */ mr r3, r17
/* 80D58D38 38 81 00 68 */ addi r4, r1, 0x68
/* 80D58D3C 4B 51 69 0D */ bl SetC__8cM3dGSphFRC4cXyz
/* 80D58D40 7E 23 8B 78 */ mr r3, r17
/* 80D58D44 C0 3C 00 0C */ lfs f1, 0xc(r28)
/* 80D58D48 4B 51 69 C1 */ bl SetR__8cM3dGSphFf
/* 80D58D4C 7F 63 DB 78 */ mr r3, r27
/* 80D58D50 38 90 08 08 */ addi r4, r16, 0x808
/* 80D58D54 4B 50 BE 55 */ bl Set__4cCcSFP8cCcD_Obj
lbl_80D58D58:
/* 80D58D58 80 7D 5D 3C */ lwz r3, 0x5d3c(r29)
/* 80D58D5C 38 00 00 FF */ li r0, 0xff
/* 80D58D60 90 01 00 08 */ stw r0, 8(r1)
/* 80D58D64 38 80 00 00 */ li r4, 0
/* 80D58D68 90 81 00 0C */ stw r4, 0xc(r1)
/* 80D58D6C 38 00 FF FF */ li r0, -1
/* 80D58D70 90 01 00 10 */ stw r0, 0x10(r1)
/* 80D58D74 90 81 00 14 */ stw r4, 0x14(r1)
/* 80D58D78 90 81 00 18 */ stw r4, 0x18(r1)
/* 80D58D7C 90 81 00 1C */ stw r4, 0x1c(r1)
/* 80D58D80 80 9A 07 74 */ lwz r4, 0x774(r26)
/* 80D58D84 38 A0 00 00 */ li r5, 0
/* 80D58D88 3C C0 00 01 */ lis r6, 0x0001 /* 0x000084BD@ha */
/* 80D58D8C 38 C6 84 BD */ addi r6, r6, 0x84BD /* 0x000084BD@l */
/* 80D58D90 7F 37 B2 14 */ add r25, r23, r22
/* 80D58D94 3A 19 06 70 */ addi r16, r25, 0x670
/* 80D58D98 7E 07 83 78 */ mr r7, r16
/* 80D58D9C 39 00 00 00 */ li r8, 0
/* 80D58DA0 39 20 00 00 */ li r9, 0
/* 80D58DA4 39 40 00 00 */ li r10, 0
/* 80D58DA8 C0 3C 00 04 */ lfs f1, 4(r28)
/* 80D58DAC 4B 2F 47 21 */ bl set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf
/* 80D58DB0 90 7A 07 74 */ stw r3, 0x774(r26)
/* 80D58DB4 80 7D 5D 3C */ lwz r3, 0x5d3c(r29)
/* 80D58DB8 38 63 02 10 */ addi r3, r3, 0x210
/* 80D58DBC 80 9A 07 74 */ lwz r4, 0x774(r26)
/* 80D58DC0 4B 2F 2B 59 */ bl getEmitter__Q213dPa_control_c7level_cFUl
/* 80D58DC4 7C 7E 1B 79 */ or. r30, r3, r3
/* 80D58DC8 41 82 01 C4 */ beq lbl_80D58F8C
/* 80D58DCC 38 61 00 44 */ addi r3, r1, 0x44
/* 80D58DD0 38 81 00 74 */ addi r4, r1, 0x74
/* 80D58DD4 7E 05 83 78 */ mr r5, r16
/* 80D58DD8 4B 50 DD 5D */ bl __mi__4cXyzCFRC3Vec
/* 80D58DDC C0 41 00 44 */ lfs f2, 0x44(r1)
/* 80D58DE0 D0 41 00 68 */ stfs f2, 0x68(r1)
/* 80D58DE4 C0 01 00 48 */ lfs f0, 0x48(r1)
/* 80D58DE8 D0 01 00 6C */ stfs f0, 0x6c(r1)
/* 80D58DEC C0 21 00 4C */ lfs f1, 0x4c(r1)
/* 80D58DF0 D0 21 00 70 */ stfs f1, 0x70(r1)
/* 80D58DF4 D0 41 00 2C */ stfs f2, 0x2c(r1)
/* 80D58DF8 C0 1C 00 00 */ lfs f0, 0(r28)
/* 80D58DFC D0 01 00 30 */ stfs f0, 0x30(r1)
/* 80D58E00 D0 21 00 34 */ stfs f1, 0x34(r1)
/* 80D58E04 38 61 00 2C */ addi r3, r1, 0x2c
/* 80D58E08 4B 5E E3 31 */ bl PSVECSquareMag
/* 80D58E0C C0 1C 00 00 */ lfs f0, 0(r28)
/* 80D58E10 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D58E14 40 81 00 58 */ ble lbl_80D58E6C
/* 80D58E18 FC 00 08 34 */ frsqrte f0, f1
/* 80D58E1C C8 9C 00 10 */ lfd f4, 0x10(r28)
/* 80D58E20 FC 44 00 32 */ fmul f2, f4, f0
/* 80D58E24 C8 7C 00 18 */ lfd f3, 0x18(r28)
/* 80D58E28 FC 00 00 32 */ fmul f0, f0, f0
/* 80D58E2C FC 01 00 32 */ fmul f0, f1, f0
/* 80D58E30 FC 03 00 28 */ fsub f0, f3, f0
/* 80D58E34 FC 02 00 32 */ fmul f0, f2, f0
/* 80D58E38 FC 44 00 32 */ fmul f2, f4, f0
/* 80D58E3C FC 00 00 32 */ fmul f0, f0, f0
/* 80D58E40 FC 01 00 32 */ fmul f0, f1, f0
/* 80D58E44 FC 03 00 28 */ fsub f0, f3, f0
/* 80D58E48 FC 02 00 32 */ fmul f0, f2, f0
/* 80D58E4C FC 44 00 32 */ fmul f2, f4, f0
/* 80D58E50 FC 00 00 32 */ fmul f0, f0, f0
/* 80D58E54 FC 01 00 32 */ fmul f0, f1, f0
/* 80D58E58 FC 03 00 28 */ fsub f0, f3, f0
/* 80D58E5C FC 02 00 32 */ fmul f0, f2, f0
/* 80D58E60 FC 21 00 32 */ fmul f1, f1, f0
/* 80D58E64 FC 20 08 18 */ frsp f1, f1
/* 80D58E68 48 00 00 88 */ b lbl_80D58EF0
lbl_80D58E6C:
/* 80D58E6C C8 1C 00 20 */ lfd f0, 0x20(r28)
/* 80D58E70 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D58E74 40 80 00 10 */ bge lbl_80D58E84
/* 80D58E78 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D58E7C C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
/* 80D58E80 48 00 00 70 */ b lbl_80D58EF0
lbl_80D58E84:
/* 80D58E84 D0 21 00 24 */ stfs f1, 0x24(r1)
/* 80D58E88 80 81 00 24 */ lwz r4, 0x24(r1)
/* 80D58E8C 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 80D58E90 3C 00 7F 80 */ lis r0, 0x7f80
/* 80D58E94 7C 03 00 00 */ cmpw r3, r0
/* 80D58E98 41 82 00 14 */ beq lbl_80D58EAC
/* 80D58E9C 40 80 00 40 */ bge lbl_80D58EDC
/* 80D58EA0 2C 03 00 00 */ cmpwi r3, 0
/* 80D58EA4 41 82 00 20 */ beq lbl_80D58EC4
/* 80D58EA8 48 00 00 34 */ b lbl_80D58EDC
lbl_80D58EAC:
/* 80D58EAC 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D58EB0 41 82 00 0C */ beq lbl_80D58EBC
/* 80D58EB4 38 00 00 01 */ li r0, 1
/* 80D58EB8 48 00 00 28 */ b lbl_80D58EE0
lbl_80D58EBC:
/* 80D58EBC 38 00 00 02 */ li r0, 2
/* 80D58EC0 48 00 00 20 */ b lbl_80D58EE0
lbl_80D58EC4:
/* 80D58EC4 54 80 02 7F */ clrlwi. r0, r4, 9
/* 80D58EC8 41 82 00 0C */ beq lbl_80D58ED4
/* 80D58ECC 38 00 00 05 */ li r0, 5
/* 80D58ED0 48 00 00 10 */ b lbl_80D58EE0
lbl_80D58ED4:
/* 80D58ED4 38 00 00 03 */ li r0, 3
/* 80D58ED8 48 00 00 08 */ b lbl_80D58EE0
lbl_80D58EDC:
/* 80D58EDC 38 00 00 04 */ li r0, 4
lbl_80D58EE0:
/* 80D58EE0 2C 00 00 01 */ cmpwi r0, 1
/* 80D58EE4 40 82 00 0C */ bne lbl_80D58EF0
/* 80D58EE8 3C 60 80 45 */ lis r3, __float_nan@ha /* 0x80450AE0@ha */
/* 80D58EEC C0 23 0A E0 */ lfs f1, __float_nan@l(r3) /* 0x80450AE0@l */
lbl_80D58EF0:
/* 80D58EF0 C0 5C 00 28 */ lfs f2, 0x28(r28)
/* 80D58EF4 FC 01 10 40 */ fcmpo cr0, f1, f2
/* 80D58EF8 40 80 00 20 */ bge lbl_80D58F18
/* 80D58EFC C0 01 00 6C */ lfs f0, 0x6c(r1)
/* 80D58F00 FC 00 02 10 */ fabs f0, f0
/* 80D58F04 FC 00 00 18 */ frsp f0, f0
/* 80D58F08 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 80D58F0C 40 80 00 0C */ bge lbl_80D58F18
/* 80D58F10 38 80 00 00 */ li r4, 0
/* 80D58F14 48 00 00 08 */ b lbl_80D58F1C
lbl_80D58F18:
/* 80D58F18 38 80 00 FF */ li r4, 0xff
lbl_80D58F1C:
/* 80D58F1C 88 1E 00 BB */ lbz r0, 0xbb(r30)
/* 80D58F20 98 01 00 20 */ stb r0, 0x20(r1)
/* 80D58F24 38 61 00 20 */ addi r3, r1, 0x20
/* 80D58F28 38 A0 00 40 */ li r5, 0x40
/* 80D58F2C 4B 51 77 31 */ bl cLib_chaseUC__FPUcUcUc
/* 80D58F30 88 01 00 20 */ lbz r0, 0x20(r1)
/* 80D58F34 98 1E 00 BB */ stb r0, 0xbb(r30)
/* 80D58F38 C0 19 06 70 */ lfs f0, 0x670(r25)
/* 80D58F3C D0 01 00 68 */ stfs f0, 0x68(r1)
/* 80D58F40 C0 39 06 74 */ lfs f1, 0x674(r25)
/* 80D58F44 D0 21 00 6C */ stfs f1, 0x6c(r1)
/* 80D58F48 C0 19 06 78 */ lfs f0, 0x678(r25)
/* 80D58F4C D0 01 00 70 */ stfs f0, 0x70(r1)
/* 80D58F50 88 01 00 20 */ lbz r0, 0x20(r1)
/* 80D58F54 28 00 00 00 */ cmplwi r0, 0
/* 80D58F58 40 82 00 10 */ bne lbl_80D58F68
/* 80D58F5C C0 1C 00 2C */ lfs f0, 0x2c(r28)
/* 80D58F60 EC 01 00 2A */ fadds f0, f1, f0
/* 80D58F64 D0 01 00 6C */ stfs f0, 0x6c(r1)
lbl_80D58F68:
/* 80D58F68 E0 01 00 68 */ psq_l f0, 104(r1), 0, 0 /* qr0 */
/* 80D58F6C C0 21 00 70 */ lfs f1, 0x70(r1)
/* 80D58F70 F0 01 00 38 */ psq_st f0, 56(r1), 0, 0 /* qr0 */
/* 80D58F74 D0 21 00 40 */ stfs f1, 0x40(r1)
/* 80D58F78 C0 01 00 38 */ lfs f0, 0x38(r1)
/* 80D58F7C D0 1E 00 A4 */ stfs f0, 0xa4(r30)
/* 80D58F80 C0 01 00 3C */ lfs f0, 0x3c(r1)
/* 80D58F84 D0 1E 00 A8 */ stfs f0, 0xa8(r30)
/* 80D58F88 D0 3E 00 AC */ stfs f1, 0xac(r30)
lbl_80D58F8C:
/* 80D58F8C 80 9A 05 BC */ lwz r4, 0x5bc(r26)
/* 80D58F90 2C 04 00 00 */ cmpwi r4, 0
/* 80D58F94 41 82 00 50 */ beq lbl_80D58FE4
/* 80D58F98 88 17 05 68 */ lbz r0, 0x568(r23)
/* 80D58F9C 54 03 10 3A */ slwi r3, r0, 2
/* 80D58FA0 38 03 05 6C */ addi r0, r3, 0x56c
/* 80D58FA4 7C 17 00 2E */ lwzx r0, r23, r0
/* 80D58FA8 7C 00 20 00 */ cmpw r0, r4
/* 80D58FAC 40 82 00 38 */ bne lbl_80D58FE4
/* 80D58FB0 38 00 00 00 */ li r0, 0
/* 80D58FB4 90 1A 05 BC */ stw r0, 0x5bc(r26)
/* 80D58FB8 90 01 00 08 */ stw r0, 8(r1)
/* 80D58FBC 38 60 02 21 */ li r3, 0x221
/* 80D58FC0 38 80 00 00 */ li r4, 0
/* 80D58FC4 38 B6 06 70 */ addi r5, r22, 0x670
/* 80D58FC8 7C B7 2A 14 */ add r5, r23, r5
/* 80D58FCC 38 C0 FF FF */ li r6, -1
/* 80D58FD0 38 E0 00 00 */ li r7, 0
/* 80D58FD4 39 00 00 00 */ li r8, 0
/* 80D58FD8 39 20 FF FF */ li r9, -1
/* 80D58FDC 39 40 00 00 */ li r10, 0
/* 80D58FE0 4B 2C 0E 25 */ bl fopAcM_fastCreate__FsUlPC4cXyziPC5csXyzPC4cXyzScPFPv_iPv
lbl_80D58FE4:
/* 80D58FE4 3B 18 00 01 */ addi r24, r24, 1
/* 80D58FE8 3A D6 00 0C */ addi r22, r22, 0xc
/* 80D58FEC 3A B5 01 38 */ addi r21, r21, 0x138
/* 80D58FF0 3A 94 00 04 */ addi r20, r20, 4
lbl_80D58FF4:
/* 80D58FF4 88 1F 00 00 */ lbz r0, 0(r31)
/* 80D58FF8 7C 18 00 00 */ cmpw r24, r0
/* 80D58FFC 40 81 FA 5C */ ble lbl_80D58A58
/* 80D59000 38 60 00 01 */ li r3, 1
lbl_80D59004:
/* 80D59004 39 61 00 C0 */ addi r11, r1, 0xc0
/* 80D59008 4B 60 91 ED */ bl _restgpr_16
/* 80D5900C 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 80D59010 7C 08 03 A6 */ mtlr r0
/* 80D59014 38 21 00 C0 */ addi r1, r1, 0xc0
/* 80D59018 4E 80 00 20 */ blr
+1 -1
View File
@@ -69,7 +69,7 @@ public:
void clip(const JGeometry::TBox2<f32>& bounds);
void setBasePosition(J2DBasePosition position);
void setInfluencedAlpha(bool arg1, bool arg2);
JGeometry::TVec3<f32> getGlbVtx(u8 arg1) const;
Vec getGlbVtx(u8 arg1) const;
J2DPane* getFirstChildPane();
J2DPane* getNextChildPane();
J2DPane* getParentPane();
+10 -3
View File
@@ -10,10 +10,17 @@ struct J3DTextureSRTInfo;
* @ingroup jsystem-j3d
*
*/
struct J3DTransformInfo {
/* 0x00 */ JGeometry::TVec3<f32> mScale;
/* 0x0C */ JGeometry::TVec3<s16> mRotation;
/* 0x14 */ JGeometry::TVec3<f32> mTranslate;
/* 0x00 */ Vec mScale;
/* 0x0C */ SVec mRotation;
/* 0x14 */ Vec mTranslate;
inline J3DTransformInfo& operator=(const J3DTransformInfo& b) {
mScale = b.mScale;
mRotation = b.mRotation;
mTranslate = b.mTranslate;
return *this;
}
}; // Size: 0x20
extern J3DTransformInfo const j3dDefaultTransformInfo;
+12 -30
View File
@@ -85,20 +85,16 @@ inline float fsqrt_step(float mag) {
}
template <>
struct TVec3<f32> {
f32 x;
f32 y;
f32 z;
struct TVec3<f32> : public Vec {
inline TVec3(const Vec& i_vec) {
setTVec3f(&i_vec.x, &x);
}
// inline TVec3(const Vec& i_vec) {
// setTVec3f(&i_vec.x, &x);
// }
inline TVec3(const TVec3<f32>& i_vec) {
setTVec3f(&i_vec.x, &x);
}
// inline TVec3(const TVec3<f32>& i_vec) {
// setTVec3f(&i_vec.x, &x);
// }
// TVec3() {}
TVec3() {}
operator Vec*() { return (Vec*)&x; }
operator const Vec*() const { return (Vec*)&x; }
@@ -148,10 +144,10 @@ struct TVec3<f32> {
return *this;
}
// inline TVec3<f32>& operator=(const TVec3<f32>& b) {
// setTVec3f(&b.x, &this->x);
// return *this;
// }
inline TVec3<f32>& operator=(const TVec3<f32>& b) {
set(b.x, b.y, b.z);
return *this;
}
inline TVec3<f32>& operator+=(const TVec3<f32>& b) {
add(b);
@@ -164,20 +160,6 @@ struct TVec3<f32> {
// return res;
// }
inline TVec3<f32>& operator=(const TVec3<f32>& b) {
register f32* dst = &x;
const register f32* src = &b.x;
register f32 x_y;
register f32 z;
asm {
psq_l x_y, 0(src), 0, 0
psq_st x_y, 0(dst), 0, 0
lfs z, 8(src)
stfs z, 8(dst)
};
return *this;
}
f32 squared() const {
return C_VECSquareMag((Vec*)&x);
}
+1 -3
View File
@@ -216,9 +216,7 @@ struct Z2Audience : public JAIAudience, public JASGlobalInstance<Z2Audience> {
Z2SpotMic* getLinkMic() { return mLinkMic; }
JGeometry::TVec3<f32> getAudioCamPos() {
JGeometry::TVec3<f32> pos;
JGeometry::setTVec3f(*(Vec*)mAudioCamera[0].getPos(), *(Vec*)pos);
return pos;
return *mAudioCamera[0].getPos();
}
Z2Audience3DSetting* getSetting() { return &mSetting; }
+2 -1
View File
@@ -293,7 +293,7 @@ public:
FLG2_UNK_200000 = 0x200000,
FLG2_UNK_100000 = 0x100000,
FLG2_UNK_80000 = 0x80000,
FLG2_UNK_40000 = 0x40000,
FLG2_FORCE_GAMEOVER = 0x40000,
FLG2_UNK_20000 = 0x20000,
FLG2_UNK_10000 = 0x10000,
FLG2_SCN_CHG_START = 0x8000,
@@ -818,6 +818,7 @@ public:
void onPlayerShadowNoDraw() { onNoResetFlg2(FLG2_PLAYER_SHADOW); }
void offPlayerShadowNoDraw() { offNoResetFlg2(FLG2_PLAYER_SHADOW); }
void onLightSwordGetEffect() { onEndResetFlg2(ERFLG2_UNK_10); }
void onForceGameOver() { onNoResetFlg2(FLG2_FORCE_GAMEOVER); }
u32 checkBoarSingleBattle() const { return checkNoResetFlg2(FLG2_BOAR_SINGLE_BATTLE); }
@@ -1,6 +1,28 @@
#ifndef D_A_TAG_FIREWALL_H
#define D_A_TAG_FIREWALL_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
#include "d/cc/d_cc_d.h"
class daTag_FWall_c : public fopAc_ac_c {
public:
/* 80D58940 */ int execute();
/* 80D59078 */ int _delete();
/* 80D590A8 */ int create();
/* 0x568 */ u8 field_0x568;
/* 0x569 */ u8 mSetGameoverEff;
/* 0x56C */ int mWallTimer[20];
/* 0x5BC */ int mExplodeTime[20];
/* 0x60C */ int mWallMode[20];
/* 0x65C */ u8 field_0x65c[20];
/* 0x670 */ cXyz mWallPos[20];
/* 0x760 */ u8 field_0x760[20];
/* 0x774 */ u32 mUnkEmtrID0[20];
/* 0x7C4 */ u32 mUnkEmtrID1;
/* 0x7C8 */ u32 mUnkEmtrID2;
/* 0x7CC */ dCcD_Stts mCcStts;
/* 0x808 */ dCcD_Sph mCcSphs[20];
};
#endif /* D_A_TAG_FIREWALL_H */
+2 -2
View File
@@ -610,8 +610,8 @@ void J2DPane::setInfluencedAlpha(bool influencedAlpha, bool param_1) {
}
/* 802F79A8-802F7A8C 2F22E8 00E4+00 0/0 3/3 0/0 .text getGlbVtx__7J2DPaneCFUc */
JGeometry::TVec3<f32> J2DPane::getGlbVtx(u8 param_0) const {
JGeometry::TVec3<f32> out;
Vec J2DPane::getGlbVtx(u8 param_0) const {
Vec out;
if (param_0 >= 4) {
out.x = 0;
out.y = 0;
@@ -13,6 +13,8 @@
//
extern "C" u16* func_8033677C(const void*, const void*); // JSUConvertOffsetToPtr<u16>
extern "C" void* __nw__FUl();
extern "C" void __ct__8J3DJointFv();
/* 80337178-803371D0 331AB8 0058+00 0/0 1/1 0/0 .text __ct__15J3DJointFactoryFRC13J3DJointBlock */
J3DJointFactory::J3DJointFactory(J3DJointBlock const& block) {
@@ -24,7 +26,16 @@ J3DJointFactory::J3DJointFactory(J3DJointBlock const& block) {
}
/* 803371D0-80337338 331B10 0168+00 0/0 1/1 0/0 .text create__15J3DJointFactoryFi */
J3DJoint* J3DJointFactory::create(int no) {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm J3DJoint* J3DJointFactory::create(int param_0) {
nofralloc
#include "asm/JSystem/J3DGraphLoader/J3DJointFactory/create__15J3DJointFactoryFi.s"
}
#pragma pop
/* J3DJoint* J3DJointFactory::create(int no) {
J3DJoint* joint = new J3DJoint();
joint->mJntNo = no;
joint->mKind = getKind(no);
@@ -39,4 +50,4 @@ J3DJoint* J3DJointFactory::create(int no) {
joint->mScaleCompensate = 0;
return joint;
}
} */
@@ -15,9 +15,9 @@ inline float sqrt(float x) {
return ::sqrtf(x);
}
/* float abs(float num) {
return ::fabsf(num);
} */
inline float abs(float x) {
return ::fabsf(x);
}
} // namespace std
#endif
+1 -1
View File
@@ -199,7 +199,7 @@ void Z2SeMgr::modHeightAtCamera(Vec const** param_0) {
}
}
field_0x340[idx] = **param_0;
JGeometry::TVec3<f32> cam_pos = Z2GetAudience()->getAudioCamPos();
Vec cam_pos = Z2GetAudience()->getAudioCamPos();
if (field_0x340[idx].y > cam_pos.y) {
field_0x340[idx].y = cam_pos.y;
}
+2 -2
View File
@@ -467,8 +467,8 @@ void Z2WolfHowlMgr::startWindStoneSound(s8 param_0, Vec* param_1) {
if (param_1 == NULL || Z2GetLink() == NULL || Z2GetLink()->getCurrentPos() == NULL) {
return;
}
JGeometry::TVec3<f32> local_60 = Z2GetAudience()->getAudioCamPos();
f32 dVar13 = sqrtf(VECSquareDistance(param_1, local_60));
Vec local_60 = Z2GetAudience()->getAudioCamPos();
f32 dVar13 = sqrtf(VECSquareDistance(param_1, &local_60));
if (dVar13 > 2100.0f && field_0x04) {
field_0x04->stop();
} else if (dVar13 < 2100.0f && !field_0x04) {
+195 -372
View File
@@ -1,421 +1,244 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_tag_firewall
//
/**
* d_a_tag_firewall.cpp
*
*/
#include "rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall.h"
#include "dol2asm.h"
//
// Types:
//
struct fopAc_ac_c {
/* 80018B64 */ fopAc_ac_c();
};
struct daTag_FWall_c {
/* 80D58940 */ void execute();
/* 80D59078 */ bool _delete();
/* 80D590A8 */ void create();
};
struct Vec {};
struct cXyz {
/* 80266B34 */ void operator-(Vec const&) const;
/* 80D5901C */ ~cXyz();
/* 80D594B0 */ cXyz();
};
struct dVibration_c {
/* 8006FA24 */ void StartShock(int, int, cXyz);
};
struct dPa_levelEcallBack {};
struct dKy_tevstr_c {};
struct csXyz {};
struct _GXColor {};
struct dPa_control_c {
struct level_c {
/* 8004B918 */ void getEmitter(u32);
};
/* 8004D4CC */ void set(u32, u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*,
cXyz const*, u8, dPa_levelEcallBack*, s8, _GXColor const*,
_GXColor const*, cXyz const*, f32);
};
struct dCcD_Stts {
/* 80083860 */ void Init(int, int, fopAc_ac_c*);
};
struct dCcD_SrcSph {};
struct dCcD_Sph {
/* 80084A34 */ void Set(dCcD_SrcSph const&);
/* 80D592D0 */ ~dCcD_Sph();
/* 80D5939C */ dCcD_Sph();
};
struct dCcD_GStts {
/* 80083760 */ dCcD_GStts();
};
struct dCcD_GObjInf {
/* 80083A28 */ dCcD_GObjInf();
/* 800840E4 */ ~dCcD_GObjInf();
};
struct dCamera_c {
/* 80181E64 */ void Eye();
};
struct cM3dGSph {
/* 8026F648 */ void SetC(cXyz const&);
/* 8026F708 */ void SetR(f32);
/* 80D59420 */ ~cM3dGSph();
};
struct cM3dGAab {
/* 80D59468 */ ~cM3dGAab();
};
struct cCcD_Obj {};
struct cCcS {
/* 80264BA8 */ void Set(cCcD_Obj*);
};
struct JAISoundID {};
struct Z2SeMgr {
/* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
};
struct Z2AudioMgr {
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
#include "cmath.h"
#include "d/a/d_a_player.h"
#include "d/com/d_com_inf_game.h"
#include "d/d_bomb.h"
struct Tag_FWall_n {
static u8 cc_sph_src[64];
static u8 game_over_eff_name[8];
static dCcD_SrcSph cc_sph_src;
static u16 game_over_eff_name[];
};
//
// Forward References:
//
extern "C" static bool daTag_FWall_Draw__FP13daTag_FWall_c();
extern "C" void execute__13daTag_FWall_cFv();
extern "C" void __dt__4cXyzFv();
extern "C" static void daTag_FWall_Execute__FP13daTag_FWall_c();
extern "C" bool _delete__13daTag_FWall_cFv();
extern "C" static void daTag_FWall_IsDelete__FP13daTag_FWall_c();
extern "C" static bool daTag_FWall_Delete__FP13daTag_FWall_c();
extern "C" void create__13daTag_FWall_cFv();
extern "C" void __dt__8dCcD_SphFv();
extern "C" void __ct__8dCcD_SphFv();
extern "C" void __dt__8cM3dGSphFv();
extern "C" void __dt__8cM3dGAabFv();
extern "C" void __ct__4cXyzFv();
extern "C" static void daTag_FWall_Create__FP13daTag_FWall_c();
extern "C" u8 cc_sph_src__11Tag_FWall_n[64];
extern "C" u8 game_over_eff_name__11Tag_FWall_n[8];
//
// External References:
//
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void fopAcM_fastCreate__FsUlPC4cXyziPC5csXyzPC4cXyzScPFPv_iPv();
extern "C" void getEmitter__Q213dPa_control_c7level_cFUl();
extern "C" void
set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
extern "C" void StartShock__12dVibration_cFii4cXyz();
extern "C" void __ct__10dCcD_GSttsFv();
extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c();
extern "C" void __ct__12dCcD_GObjInfFv();
extern "C" void __dt__12dCcD_GObjInfFv();
extern "C" void Set__8dCcD_SphFRC11dCcD_SrcSph();
extern "C" void dCam_getBody__Fv();
extern "C" void Eye__9dCamera_cFv();
extern "C" void Set__4cCcSFP8cCcD_Obj();
extern "C" void __mi__4cXyzCFRC3Vec();
extern "C" void SetC__8cM3dGSphFRC4cXyz();
extern "C" void SetR__8cM3dGSphFf();
extern "C" void cLib_chaseUC__FPUcUcUc();
extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void __dl__FPv();
extern "C" void PSVECSquareMag();
extern "C" void __construct_array();
extern "C" void _savegpr_16();
extern "C" void _restgpr_16();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
extern "C" extern void* __vt__8dCcD_Sph[36];
extern "C" extern void* __vt__9dCcD_Stts[11];
extern "C" extern void* __vt__12cCcD_SphAttr[25];
extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
extern "C" extern void* __vt__9cCcD_Stts[8];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u32 __float_nan;
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
//
// Declarations:
//
/* 80D58938-80D58940 000078 0008+00 1/0 0/0 0/0 .text daTag_FWall_Draw__FP13daTag_FWall_c
*/
static bool daTag_FWall_Draw(daTag_FWall_c* param_0) {
return true;
static int daTag_FWall_Draw(daTag_FWall_c* i_this) {
return 1;
}
/* ############################################################################################## */
/* 80D594DC-80D594E0 000000 0004+00 1/1 0/0 0/0 .rodata @3983 */
SECTION_RODATA static u8 const lit_3983[4] = {
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80D594DC, &lit_3983);
/* 80D594E0-80D594E4 000004 0004+00 0/1 0/0 0/0 .rodata @3984 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3984 = 1.0f;
COMPILER_STRIP_GATE(0x80D594E0, &lit_3984);
#pragma pop
/* 80D594E4-80D594E8 000008 0004+00 0/1 0/0 0/0 .rodata @3985 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3985 = -1.0f;
COMPILER_STRIP_GATE(0x80D594E4, &lit_3985);
#pragma pop
/* 80D594E8-80D594EC 00000C 0004+00 0/1 0/0 0/0 .rodata @3986 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3986 = 90.0f;
COMPILER_STRIP_GATE(0x80D594E8, &lit_3986);
#pragma pop
/* 80D594EC-80D594F4 000010 0008+00 0/1 0/0 0/0 .rodata @3987 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3987[8] = {
0x3F, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D594EC, &lit_3987);
#pragma pop
/* 80D594F4-80D594FC 000018 0008+00 0/1 0/0 0/0 .rodata @3988 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3988[8] = {
0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D594F4, &lit_3988);
#pragma pop
/* 80D594FC-80D59504 000020 0008+00 0/1 0/0 0/0 .rodata @3989 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3989[8] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
};
COMPILER_STRIP_GATE(0x80D594FC, &lit_3989);
#pragma pop
/* 80D59504-80D59508 000028 0004+00 0/1 0/0 0/0 .rodata @3990 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3990 = 250.0f;
COMPILER_STRIP_GATE(0x80D59504, &lit_3990);
#pragma pop
/* 80D59508-80D5950C 00002C 0004+00 0/1 0/0 0/0 .rodata @3991 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3991 = 1000.0f;
COMPILER_STRIP_GATE(0x80D59508, &lit_3991);
#pragma pop
/* 80D5950C-80D5954C 000000 0040+00 1/1 0/0 0/0 .data cc_sph_src__11Tag_FWall_n */
SECTION_DATA u8 Tag_FWall_n::cc_sph_src[64] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0C,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x20, 0x00, 0x00,
dCcD_SrcSph Tag_FWall_n::cc_sph_src = {
{
{0x0, {{0x400, 0x1, 0xC}, {0x0, 0x0}, 0x0}}, // mObj
{dCcD_SE_METAL, 0x0, 0x0, 0x0, 0x0}, // mGObjAt
{dCcD_SE_NONE, 0x0, 0x0, 0x0, 0x2}, // mGObjTg
{0x0}, // mGObjCo
}, // mObjInf
{
{{0.0f, 0.0f, 0.0f}, 40.0f} // mSph
} // mSphAttr
};
/* 80D5954C-80D59554 000040 0008+00 1/1 0/0 0/0 .data game_over_eff_name__11Tag_FWall_n
*/
SECTION_DATA u8 Tag_FWall_n::game_over_eff_name[8] = {
0x84, 0xCC, 0x84, 0xCD, 0x84, 0xCE, 0x84, 0xCF,
};
u16 Tag_FWall_n::game_over_eff_name[] = {0x84CC, 0x84CD, 0x84CE, 0x84CF};
/* 80D595C0-80D595C4 000000 0004+00 1/1 0/0 0/0 .bss fire_leader */
static u8 fire_leader[4];
static daTag_FWall_c* fire_leader;
/* 80D595C4-80D595C8 000004 0004+00 2/2 0/0 0/0 .bss None */
static u8 data_80D595C4[4];
static u8 fire_num;
/* 80D58940-80D5901C 000080 06DC+00 1/1 0/0 0/0 .text execute__13daTag_FWall_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_FWall_c::execute() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/execute__13daTag_FWall_cFv.s"
}
#pragma pop
int daTag_FWall_c::execute() {
cXyz cam_eye = dCam_getBody()->Eye();
cXyz pos;
/* 80D5901C-80D59058 00075C 003C+00 1/1 0/0 0/0 .text __dt__4cXyzFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm cXyz::~cXyz() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/__dt__4cXyzFv.s"
if (mSetGameoverEff) {
pos.set(0.0f, 0.0f, 0.0f);
for (int i = 0; i < 4; i++) {
mUnkEmtrID0[i] = dComIfGp_particle_set(
mUnkEmtrID0[i], Tag_FWall_n::game_over_eff_name[i], &pos, NULL, NULL);
}
return 1;
}
for (int i = 0; i <= fire_num; i++) {
switch (mWallMode[i]) {
case 0:
mWallTimer[i] = 0;
if (field_0x568 == 0xFF) {
field_0x568 = i;
for (int j = 0; j <= fire_num; j++) {
mCcSphs[j].Set(Tag_FWall_n::cc_sph_src);
mCcSphs[j].SetStts(&mCcStts);
}
}
break;
case 1:
if (field_0x568 != 0xFF && mWallTimer[field_0x568] == mWallTimer[i]) {
mWallMode[i] = 3;
mCcSphs[i].OnAtSetBit();
}
break;
case 2:
mCcSphs[i].OnAtSetBit();
if (i == field_0x568) {
if (!dComIfGp_event_runCheck()) {
mWallTimer[field_0x568]++;
}
pos.set(0.0f, 0.0f, 0.0f);
if (mWallTimer[field_0x568] > 850) {
mUnkEmtrID2 = dComIfGp_particle_set(mUnkEmtrID2, 0x84D2, &pos, NULL, NULL);
}
mUnkEmtrID1 = dComIfGp_particle_set(mUnkEmtrID1, 0x84BB, &pos, NULL, NULL);
Z2GetAudioMgr()->seStartLevel(Z2SE_OBJ_BOMB_HOUSE_BURN, NULL,
mWallTimer[field_0x568], 0, 1.0f, 1.0f, -1.0f, -1.0f,
0);
if (mWallTimer[field_0x568] >= 900) {
daPy_getPlayerActorClass()->onForceGameOver();
mSetGameoverEff = true;
dComIfGp_getVibration().StartShock(8, 31, cXyz(0.0f, 1.0f, 0.0f));
return 1;
}
} else {
mWallMode[i] = 3;
}
case 3:
if (field_0x760[i] == 0) {
mCcSphs[i].OnAtSetBit();
pos = mWallPos[i];
mCcSphs[i].SetC(pos);
mCcSphs[i].SetR(90.0f);
dComIfG_Ccsp()->Set(&mCcSphs[i]);
}
mUnkEmtrID0[i] =
dComIfGp_particle_set(mUnkEmtrID0[i], 0x84BD, &mWallPos[i], NULL, NULL);
JPABaseEmitter* emitter = dComIfGp_particle_getEmitter(mUnkEmtrID0[i]);
if (emitter != NULL) {
pos = cam_eye - mWallPos[i];
u8 target_alpha;
if (pos.absXZ() < 250.0f && std::abs(pos.y) < 250.0f) {
target_alpha = 0;
} else {
target_alpha = 0xFF;
}
u8 alpha = emitter->getGlobalAlpha();
cLib_chaseUC(&alpha, target_alpha, 0x40);
emitter->setGlobalAlpha(alpha);
pos = mWallPos[i];
if (alpha == 0) {
pos.y += 1000.0f;
}
emitter->setGlobalTranslation(JGeometry::TVec3<f32>(pos));
}
break;
}
if (mExplodeTime[i] != 0 && mWallTimer[field_0x568] == mExplodeTime[i]) {
mExplodeTime[i] = 0;
dBomb_c::createNormalBombExplode(&mWallPos[i]);
}
}
return 1;
}
#pragma pop
/* 80D59058-80D59078 000798 0020+00 1/0 0/0 0/0 .text daTag_FWall_Execute__FP13daTag_FWall_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTag_FWall_Execute(daTag_FWall_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/daTag_FWall_Execute__FP13daTag_FWall_c.s"
static int daTag_FWall_Execute(daTag_FWall_c* i_this) {
return i_this->execute();
}
#pragma pop
/* 80D59078-80D59080 0007B8 0008+00 1/1 0/0 0/0 .text _delete__13daTag_FWall_cFv */
bool daTag_FWall_c::_delete() {
return true;
int daTag_FWall_c::_delete() {
return 1;
}
/* 80D59080-80D590A0 0007C0 0020+00 1/0 0/0 0/0 .text daTag_FWall_IsDelete__FP13daTag_FWall_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTag_FWall_IsDelete(daTag_FWall_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/daTag_FWall_IsDelete__FP13daTag_FWall_c.s"
static int daTag_FWall_IsDelete(daTag_FWall_c* i_this) {
return i_this->_delete();
}
#pragma pop
/* 80D590A0-80D590A8 0007E0 0008+00 1/0 0/0 0/0 .text daTag_FWall_Delete__FP13daTag_FWall_c */
static bool daTag_FWall_Delete(daTag_FWall_c* param_0) {
return true;
static int daTag_FWall_Delete(daTag_FWall_c* i_this) {
return 1;
}
/* 80D590A8-80D592D0 0007E8 0228+00 1/1 0/0 0/0 .text create__13daTag_FWall_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_FWall_c::create() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/create__13daTag_FWall_cFv.s"
}
#pragma pop
int daTag_FWall_c::create() {
fopAcM_SetupActor(this, daTag_FWall_c);
/* ############################################################################################## */
/* 80D59554-80D59574 -00001 0020+00 1/0 0/0 0/0 .data l_daTag_FWall_Method */
SECTION_DATA static void* l_daTag_FWall_Method[8] = {
(void*)daTag_FWall_Create__FP13daTag_FWall_c,
(void*)daTag_FWall_Delete__FP13daTag_FWall_c,
(void*)daTag_FWall_Execute__FP13daTag_FWall_c,
(void*)daTag_FWall_IsDelete__FP13daTag_FWall_c,
(void*)daTag_FWall_Draw__FP13daTag_FWall_c,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
if (fire_num == 0) {
field_0x568 = 0xFF;
fire_leader = this;
mCcStts.Init(0xFF, 0, this);
}
/* 80D59574-80D595A4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_FWall */
SECTION_DATA extern void* g_profile_Tag_FWall[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x01F70000, (void*)&g_fpcLf_Method,
(void*)0x00002068, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x00C50000, (void*)&l_daTag_FWall_Method,
(void*)0x00060100, (void*)NULL,
};
fire_leader->mWallTimer[fire_num] = (fopAcM_GetParam(this) >> 8) & 0xFFFF;
fire_leader->mExplodeTime[fire_num] = current.angle.x & 0xFFFF;
fire_leader->field_0x65c[fire_num] = fopAcM_GetParam(this);
/* 80D595A4-80D595B0 000098 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGAab */
SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__8cM3dGAabFv,
};
u8 temp_r0 = fopAcM_GetParam(this) >> 0x18;
if (temp_r0 == 0xFF) {
temp_r0 = 0;
}
/* 80D595B0-80D595BC 0000A4 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGSph */
SECTION_DATA extern void* __vt__8cM3dGSph[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__8cM3dGSphFv,
};
fire_leader->field_0x760[fire_num] = temp_r0;
/* 80D592D0-80D5939C 000A10 00CC+00 1/1 0/0 0/0 .text __dt__8dCcD_SphFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dCcD_Sph::~dCcD_Sph() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/__dt__8dCcD_SphFv.s"
}
#pragma pop
fire_leader->mWallPos[fire_num] = current.pos;
/* 80D5939C-80D59420 000ADC 0084+00 1/1 0/0 0/0 .text __ct__8dCcD_SphFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm dCcD_Sph::dCcD_Sph() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/__ct__8dCcD_SphFv.s"
}
#pragma pop
if (fire_leader->field_0x65c[fire_num] != 0xFF) {
fire_leader->mWallMode[fire_num] = 0;
} else {
fire_leader->mWallMode[fire_num] = 1;
}
/* 80D59420-80D59468 000B60 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGSphFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm cM3dGSph::~cM3dGSph() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/__dt__8cM3dGSphFv.s"
}
#pragma pop
if (++fire_num > 1) {
return cPhs_ERROR_e;
}
/* 80D59468-80D594B0 000BA8 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm cM3dGAab::~cM3dGAab() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/__dt__8cM3dGAabFv.s"
}
#pragma pop
/* 80D594B0-80D594B4 000BF0 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */
cXyz::cXyz() {
/* empty function */
shape_angle.x = 0;
current.angle.x = 0;
return cPhs_COMPLEATE_e;
}
/* 80D594B4-80D594D4 000BF4 0020+00 1/0 0/0 0/0 .text daTag_FWall_Create__FP13daTag_FWall_c */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTag_FWall_Create(daTag_FWall_c* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_firewall/d_a_tag_firewall/daTag_FWall_Create__FP13daTag_FWall_c.s"
static int daTag_FWall_Create(daTag_FWall_c* i_this) {
return i_this->create();
}
#pragma pop
/* 80D59554-80D59574 -00001 0020+00 1/0 0/0 0/0 .data l_daTag_FWall_Method */
static actor_method_class l_daTag_FWall_Method = {
(process_method_func)daTag_FWall_Create, (process_method_func)daTag_FWall_Delete,
(process_method_func)daTag_FWall_Execute, (process_method_func)daTag_FWall_IsDelete,
(process_method_func)daTag_FWall_Draw,
};
/* 80D59574-80D595A4 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Tag_FWall */
extern actor_process_profile_definition g_profile_Tag_FWall = {
fpcLy_CURRENT_e,
7,
fpcPi_CURRENT_e,
PROC_Tag_FWall,
&g_fpcLf_Method.mBase,
sizeof(daTag_FWall_c),
0,
0,
&g_fopAc_Method.base,
197,
&l_daTag_FWall_Method,
0x60100,
fopAc_ACTOR_e,
fopAc_CULLBOX_0_e,
};
+5 -5
View File
@@ -1286,7 +1286,7 @@ BOOL daAlink_c::checkRestartDead(int i_dmgAmount, int i_checkZoraMag) {
if (mProcID != PROC_DEAD && i_dmgAmount >= dComIfGs_getLife() && !checkMagicArmorNoDamage() &&
!dComIfGs_checkBottle(FAIRY))
{
onNoResetFlg2(FLG2_UNK_40000);
onNoResetFlg2(FLG2_FORCE_GAMEOVER);
procCoDeadInit(0);
return 1;
}
@@ -1311,7 +1311,7 @@ void daAlink_c::setDeadRideSyncPos() {
BOOL daAlink_c::checkDeadHP() {
return ((dComIfGs_getLife() == 0 && !checkResetFlg0(RFLG0_UNK_400)) &&
!dComIfGs_checkBottle(FAIRY)) ||
checkNoResetFlg2(FLG2_UNK_40000) ||
checkNoResetFlg2(FLG2_FORCE_GAMEOVER) ||
(dComIfGp_getOxygenShowFlag() && dComIfGp_getNowOxygen() == 0);
}
@@ -2853,7 +2853,7 @@ int daAlink_c::procCoDeadInit(int param_0) {
setDeadRideSyncPos();
if (checkNoResetFlg2(FLG2_UNK_40000)) {
if (checkNoResetFlg2(FLG2_FORCE_GAMEOVER)) {
if (param_0) {
if (checkWolf()) {
setSingleAnimeWolfBaseSpeed(WANM_WAIT, daAlinkHIO_wlMove_c0::m.field_0x70, 3.0f);
@@ -2960,7 +2960,7 @@ int daAlink_c::procCoDead() {
mDoAud_bgmStart(Z2BGM_GAME_OVER);
}
if (!checkNoResetFlg2(FLG2_UNK_40000)) {
if (!checkNoResetFlg2(FLG2_FORCE_GAMEOVER)) {
mProcVar3.field_0x300e++;
if (mProcVar3.field_0x300e.x == 2) {
dCam_getBody()->StartEventCamera(9, fopAcM_GetID(this), 0);
@@ -2989,7 +2989,7 @@ int daAlink_c::procCoDead() {
setDeadRideSyncPos();
if (checkAnmEnd(frameCtrl_p) || ((checkModeFlg(0x40000) && frameCtrl_p->getFrame() > 70.0f) ||
checkNoResetFlg2(FLG2_UNK_40000)))
checkNoResetFlg2(FLG2_FORCE_GAMEOVER)))
{
cLib_chaseF(&field_0x3478, 0.0f, 0.01f);
if (field_0x3478 < 0.38f) {
+4 -4
View File
@@ -589,8 +589,8 @@ void dMeter2Draw_c::draw() {
for (int j = 0; j < 3; j++) {
f32 temp_f30 = mItemParams[i].num_scale * 16.0f;
JGeometry::TVec3<f32> vtx0 = mpItemXY[i]->getPanePtr()->getGlbVtx(0);
JGeometry::TVec3<f32> vtx3 = mpItemXY[i]->getPanePtr()->getGlbVtx(3);
Vec vtx0 = mpItemXY[i]->getPanePtr()->getGlbVtx(0);
Vec vtx3 = mpItemXY[i]->getPanePtr()->getGlbVtx(3);
mpItemNumTex[i][j]->draw(mItemParams[i].num_pos_x +
(((vtx0.x + vtx3.x) * 0.5f) + (temp_f30 * j)),
@@ -3597,8 +3597,8 @@ void dMeter2Draw_c::drawKanteraMeter(u8 i_button, f32 i_alphaRate) {
i_alphaRate = mpItemXY[i_button]->getAlphaRate();
}
JGeometry::TVec3<f32> vtx0 = pane->getPanePtr()->getGlbVtx(0);
JGeometry::TVec3<f32> vtx3 = pane->getPanePtr()->getGlbVtx(3);
Vec vtx0 = pane->getPanePtr()->getGlbVtx(0);
Vec vtx3 = pane->getPanePtr()->getGlbVtx(3);
mpKanteraMeter[i_button]->setPos(((vtx0.x + vtx3.x) * 0.5f) + 9.0f + sp10[i_button],
vtx3.y + sp8[i_button]);
+1 -1
View File
@@ -83,7 +83,7 @@ void dMsgString_c::resetStringLocal(J2DTextBox* p_textBox) {
/* 80249DE4-80249ED0 244724 00EC+00 1/0 0/0 0/0 .text
* drawOutFontLocal__12dMsgString_cFP10J2DTextBoxf */
void dMsgString_c::drawOutFontLocal(J2DTextBox* p_textBox, f32 i_alpha) {
JGeometry::TVec3<f32> pos = p_textBox->getGlbVtx(0);
Vec pos = p_textBox->getGlbVtx(0);
f32 y = pos.y;
if (i_alpha == -1.0f) {
+1 -1
View File
@@ -1472,7 +1472,7 @@ static u8 lit_4054[12];
#pragma pop
/* 80424728-80424734 051448 000C+00 1/1 0/0 0/0 .bss pos$4424 */
static JGeometry::TVec3<f32> pos;
static Vec pos;
/* 8004B064-8004B168 0459A4 0104+00 2/2 0/0 0/0 .text
* createEmitter__19dPa_simpleEcallBackFP17JPAEmitterManager */