d_a_tag_myna_light OK (#1954)

* d_a_tag_myna_light OK

* Clean up d_a_tag_myna_light
This commit is contained in:
Jacob Patzer 2023-10-03 00:24:09 -07:00 committed by GitHub
parent 016a5e683b
commit 232af7945b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
16 changed files with 185 additions and 894 deletions

View File

@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes)
.init | 97.972973% | 9280 | 9472
.extab | 100.000000% | 96 | 96
.extabindex | 100.000000% | 96 | 96
.text | 33.360248% | 1199816 | 3596544
.text | 34.017879% | 1223468 | 3596544
.ctors | 100.000000% | 448 | 448
.dtors | 100.000000% | 32 | 32
.rodata | 100.000000% | 193856 | 193856
.data | 100.000000% | 197632 | 197632
.sdata | 100.000000% | 1408 | 1408
.sdata2 | 100.000000% | 20832 | 20832
Total | 40.385090% | 1623752 | 4020672
Total | 40.973350% | 1647404 | 4020672
## Total
Section | Percentage | Decompiled (bytes) | Total (bytes)
---|---|---|---
main.dol | 40.385090% | 1623752 | 4020672
RELs | 34.516071% | 3969460 | 11500324
Total | 36.036424% | 5593212 | 15520996
main.dol | 40.973350% | 1647404 | 4020672
RELs | 34.533253% | 3971436 | 11500324
Total | 36.201543% | 5618840 | 15520996
## RELs
@ -748,7 +748,7 @@ d_a_tag_msg | 37.563971% | 1468 | 3908
d_a_tag_mstop | 43.995098% | 1436 | 3264
d_a_tag_mwait | 100.000000% | 2896 | 2896
d_a_tag_myna2 | 98.401826% | 1724 | 1752
d_a_tag_myna_light | 36.747759% | 1148 | 3124
d_a_tag_myna_light | 100.000000% | 3124 | 3124
d_a_tag_pachi | 51.107595% | 1292 | 2528
d_a_tag_poFire | 100.000000% | 1688 | 1688
d_a_tag_push | 41.000000% | 1148 | 2800
@ -785,4 +785,4 @@ d_a_vrbox2 | 44.907111% | 2804 | 6244
d_a_warp_bug | 100.000000% | 2024 | 2024
d_a_ykgr | 44.400631% | 2252 | 5072
f_pc_profile_lst | 100.000000% | 28156 | 28156
Total | 34.516071% | 3969460 | 11500324
Total | 34.533253% | 3971436 | 11500324

View File

@ -1,25 +0,0 @@
lbl_80D5CB9C:
/* 80D5CB9C 38 80 00 00 */ li r4, 0
/* 80D5CBA0 38 C0 00 01 */ li r6, 1
/* 80D5CBA4 7C 85 23 78 */ mr r5, r4
/* 80D5CBA8 38 00 00 02 */ li r0, 2
/* 80D5CBAC 7C 09 03 A6 */ mtctr r0
lbl_80D5CBB0:
/* 80D5CBB0 39 04 05 70 */ addi r8, r4, 0x570
/* 80D5CBB4 7C E3 40 2E */ lwzx r7, r3, r8
/* 80D5CBB8 28 07 00 00 */ cmplwi r7, 0
/* 80D5CBBC 41 82 00 28 */ beq lbl_80D5CBE4
/* 80D5CBC0 80 07 00 F4 */ lwz r0, 0xf4(r7)
/* 80D5CBC4 54 00 06 B0 */ rlwinm r0, r0, 0, 0x1a, 0x18
/* 80D5CBC8 90 07 00 F4 */ stw r0, 0xf4(r7)
/* 80D5CBCC 7C E3 40 2E */ lwzx r7, r3, r8
/* 80D5CBD0 80 07 00 F4 */ lwz r0, 0xf4(r7)
/* 80D5CBD4 60 00 00 01 */ ori r0, r0, 1
/* 80D5CBD8 90 07 00 F4 */ stw r0, 0xf4(r7)
/* 80D5CBDC 90 C7 00 24 */ stw r6, 0x24(r7)
/* 80D5CBE0 7C A3 41 2E */ stwx r5, r3, r8
lbl_80D5CBE4:
/* 80D5CBE4 38 84 00 04 */ addi r4, r4, 4
/* 80D5CBE8 42 00 FF C8 */ bdnz lbl_80D5CBB0
/* 80D5CBEC 38 60 00 01 */ li r3, 1
/* 80D5CBF0 4E 80 00 20 */ blr

View File

@ -1,47 +0,0 @@
lbl_80D5CD94:
/* 80D5CD94 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80D5CD98 7C 08 02 A6 */ mflr r0
/* 80D5CD9C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80D5CDA0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80D5CDA4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80D5CDA8 7C 7E 1B 78 */ mr r30, r3
/* 80D5CDAC 3C 60 80 D6 */ lis r3, lit_3694@ha /* 0x80D5D300@ha */
/* 80D5CDB0 3B E3 D3 00 */ addi r31, r3, lit_3694@l /* 0x80D5D300@l */
/* 80D5CDB4 88 1E 05 79 */ lbz r0, 0x579(r30)
/* 80D5CDB8 28 00 00 00 */ cmplwi r0, 0
/* 80D5CDBC 41 82 00 20 */ beq lbl_80D5CDDC
/* 80D5CDC0 38 7E 05 6C */ addi r3, r30, 0x56c
/* 80D5CDC4 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5CDC8 C0 5F 00 10 */ lfs f2, 0x10(r31)
/* 80D5CDCC C0 7F 00 14 */ lfs f3, 0x14(r31)
/* 80D5CDD0 C0 9F 00 18 */ lfs f4, 0x18(r31)
/* 80D5CDD4 4B 51 2B A9 */ bl cLib_addCalc__FPfffff
/* 80D5CDD8 48 00 00 1C */ b lbl_80D5CDF4
lbl_80D5CDDC:
/* 80D5CDDC 38 7E 05 6C */ addi r3, r30, 0x56c
/* 80D5CDE0 C0 3F 00 1C */ lfs f1, 0x1c(r31)
/* 80D5CDE4 C0 5F 00 10 */ lfs f2, 0x10(r31)
/* 80D5CDE8 C0 7F 00 14 */ lfs f3, 0x14(r31)
/* 80D5CDEC C0 9F 00 18 */ lfs f4, 0x18(r31)
/* 80D5CDF0 4B 51 2B 8D */ bl cLib_addCalc__FPfffff
lbl_80D5CDF4:
/* 80D5CDF4 C0 3E 05 6C */ lfs f1, 0x56c(r30)
/* 80D5CDF8 C0 1F 00 20 */ lfs f0, 0x20(r31)
/* 80D5CDFC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80D5CE00 4C 41 13 82 */ cror 2, 1, 2
/* 80D5CE04 40 82 00 20 */ bne lbl_80D5CE24
/* 80D5CE08 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80D5CE0C 90 01 00 08 */ stw r0, 8(r1)
/* 80D5CE10 38 7E 04 D0 */ addi r3, r30, 0x4d0
/* 80D5CE14 38 81 00 08 */ addi r4, r1, 8
/* 80D5CE18 C0 3E 05 6C */ lfs f1, 0x56c(r30)
/* 80D5CE1C 38 A0 00 00 */ li r5, 0
/* 80D5CE20 4B 44 CF 41 */ bl dKy_BossLight_set__FP4cXyzP8_GXColorfUc
lbl_80D5CE24:
/* 80D5CE24 38 60 00 01 */ li r3, 1
/* 80D5CE28 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80D5CE2C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80D5CE30 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80D5CE34 7C 08 03 A6 */ mtlr r0
/* 80D5CE38 38 21 00 20 */ addi r1, r1, 0x20
/* 80D5CE3C 4E 80 00 20 */ blr

View File

@ -1,111 +0,0 @@
lbl_80D5CBF4:
/* 80D5CBF4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80D5CBF8 7C 08 02 A6 */ mflr r0
/* 80D5CBFC 90 01 00 34 */ stw r0, 0x34(r1)
/* 80D5CC00 39 61 00 30 */ addi r11, r1, 0x30
/* 80D5CC04 4B 60 55 D5 */ bl _savegpr_28
/* 80D5CC08 7C 7E 1B 78 */ mr r30, r3
/* 80D5CC0C 3C 80 80 D6 */ lis r4, lit_3694@ha /* 0x80D5D300@ha */
/* 80D5CC10 3B E4 D3 00 */ addi r31, r4, lit_3694@l /* 0x80D5D300@l */
/* 80D5CC14 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5CC18 38 84 61 C0 */ addi r4, r4, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D5CC1C C0 24 00 34 */ lfs f1, 0x34(r4)
/* 80D5CC20 C0 1F 00 00 */ lfs f0, 0(r31)
/* 80D5CC24 EC 00 00 72 */ fmuls f0, f0, f1
/* 80D5CC28 FC 00 00 1E */ fctiwz f0, f0
/* 80D5CC2C D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80D5CC30 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5CC34 54 1C 06 3E */ clrlwi r28, r0, 0x18
/* 80D5CC38 48 00 05 11 */ bl getTurnOnTime__17daTag_MynaLight_cFv
/* 80D5CC3C 54 7D 06 3E */ clrlwi r29, r3, 0x18
/* 80D5CC40 7F C3 F3 78 */ mr r3, r30
/* 80D5CC44 48 00 05 11 */ bl getTurnOffTime__17daTag_MynaLight_cFv
/* 80D5CC48 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80D5CC4C 7C 00 E8 40 */ cmplw r0, r29
/* 80D5CC50 40 81 00 44 */ ble lbl_80D5CC94
/* 80D5CC54 7F C3 F3 78 */ mr r3, r30
/* 80D5CC58 48 00 04 F1 */ bl getTurnOnTime__17daTag_MynaLight_cFv
/* 80D5CC5C 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80D5CC60 7C 1C 00 40 */ cmplw r28, r0
/* 80D5CC64 41 80 00 24 */ blt lbl_80D5CC88
/* 80D5CC68 7F C3 F3 78 */ mr r3, r30
/* 80D5CC6C 48 00 04 E9 */ bl getTurnOffTime__17daTag_MynaLight_cFv
/* 80D5CC70 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80D5CC74 7C 1C 00 40 */ cmplw r28, r0
/* 80D5CC78 40 80 00 10 */ bge lbl_80D5CC88
/* 80D5CC7C 38 00 00 01 */ li r0, 1
/* 80D5CC80 98 1E 05 78 */ stb r0, 0x578(r30)
/* 80D5CC84 48 00 00 4C */ b lbl_80D5CCD0
lbl_80D5CC88:
/* 80D5CC88 38 00 00 00 */ li r0, 0
/* 80D5CC8C 98 1E 05 78 */ stb r0, 0x578(r30)
/* 80D5CC90 48 00 00 40 */ b lbl_80D5CCD0
lbl_80D5CC94:
/* 80D5CC94 7F C3 F3 78 */ mr r3, r30
/* 80D5CC98 48 00 04 BD */ bl getTurnOffTime__17daTag_MynaLight_cFv
/* 80D5CC9C 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80D5CCA0 7C 1C 00 40 */ cmplw r28, r0
/* 80D5CCA4 41 80 00 24 */ blt lbl_80D5CCC8
/* 80D5CCA8 7F C3 F3 78 */ mr r3, r30
/* 80D5CCAC 48 00 04 9D */ bl getTurnOnTime__17daTag_MynaLight_cFv
/* 80D5CCB0 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80D5CCB4 7C 1C 00 40 */ cmplw r28, r0
/* 80D5CCB8 40 80 00 10 */ bge lbl_80D5CCC8
/* 80D5CCBC 38 00 00 00 */ li r0, 0
/* 80D5CCC0 98 1E 05 78 */ stb r0, 0x578(r30)
/* 80D5CCC4 48 00 00 0C */ b lbl_80D5CCD0
lbl_80D5CCC8:
/* 80D5CCC8 38 00 00 01 */ li r0, 1
/* 80D5CCCC 98 1E 05 78 */ stb r0, 0x578(r30)
lbl_80D5CCD0:
/* 80D5CCD0 88 1E 05 79 */ lbz r0, 0x579(r30)
/* 80D5CCD4 28 00 00 00 */ cmplwi r0, 0
/* 80D5CCD8 41 82 00 A0 */ beq lbl_80D5CD78
/* 80D5CCDC 3C 60 80 45 */ lis r3, mStayNo__20dStage_roomControl_c+0x0@ha /* 0x80450D64@ha */
/* 80D5CCE0 38 63 0D 64 */ addi r3, r3, mStayNo__20dStage_roomControl_c+0x0@l /* 0x80450D64@l */
/* 80D5CCE4 88 63 00 00 */ lbz r3, 0(r3)
/* 80D5CCE8 7C 63 07 75 */ extsb. r3, r3
/* 80D5CCEC 41 82 00 4C */ beq lbl_80D5CD38
/* 80D5CCF0 4B 2D 03 7D */ bl dComIfGp_getReverb__Fi
/* 80D5CCF4 7C 67 1B 78 */ mr r7, r3
/* 80D5CCF8 3C 60 00 08 */ lis r3, 0x0008 /* 0x0008011D@ha */
/* 80D5CCFC 38 03 01 1D */ addi r0, r3, 0x011D /* 0x0008011D@l */
/* 80D5CD00 90 01 00 0C */ stw r0, 0xc(r1)
/* 80D5CD04 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80D5CD08 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80D5CD0C 80 63 00 00 */ lwz r3, 0(r3)
/* 80D5CD10 38 81 00 0C */ addi r4, r1, 0xc
/* 80D5CD14 38 BE 04 D0 */ addi r5, r30, 0x4d0
/* 80D5CD18 38 C0 00 00 */ li r6, 0
/* 80D5CD1C C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5CD20 FC 40 08 90 */ fmr f2, f1
/* 80D5CD24 C0 7F 00 08 */ lfs f3, 8(r31)
/* 80D5CD28 FC 80 18 90 */ fmr f4, f3
/* 80D5CD2C 39 00 00 00 */ li r8, 0
/* 80D5CD30 4B 54 F7 DD */ bl seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
/* 80D5CD34 48 00 00 44 */ b lbl_80D5CD78
lbl_80D5CD38:
/* 80D5CD38 3C 60 00 08 */ lis r3, 0x0008 /* 0x0008011D@ha */
/* 80D5CD3C 38 03 01 1D */ addi r0, r3, 0x011D /* 0x0008011D@l */
/* 80D5CD40 90 01 00 08 */ stw r0, 8(r1)
/* 80D5CD44 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80D5CD48 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80D5CD4C 80 63 00 00 */ lwz r3, 0(r3)
/* 80D5CD50 38 81 00 08 */ addi r4, r1, 8
/* 80D5CD54 38 BE 04 D0 */ addi r5, r30, 0x4d0
/* 80D5CD58 38 C0 00 00 */ li r6, 0
/* 80D5CD5C 38 E0 00 00 */ li r7, 0
/* 80D5CD60 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5CD64 FC 40 08 90 */ fmr f2, f1
/* 80D5CD68 C0 7F 00 08 */ lfs f3, 8(r31)
/* 80D5CD6C FC 80 18 90 */ fmr f4, f3
/* 80D5CD70 39 00 00 00 */ li r8, 0
/* 80D5CD74 4B 54 F7 99 */ bl seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
lbl_80D5CD78:
/* 80D5CD78 38 60 00 01 */ li r3, 1
/* 80D5CD7C 39 61 00 30 */ addi r11, r1, 0x30
/* 80D5CD80 4B 60 54 A5 */ bl _restgpr_28
/* 80D5CD84 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80D5CD88 7C 08 03 A6 */ mtlr r0
/* 80D5CD8C 38 21 00 30 */ addi r1, r1, 0x30
/* 80D5CD90 4E 80 00 20 */ blr

View File

@ -1,26 +0,0 @@
lbl_80D5D298:
/* 80D5D298 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5D29C 7C 08 02 A6 */ mflr r0
/* 80D5D2A0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5D2A4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D5D2A8 93 C1 00 08 */ stw r30, 8(r1)
/* 80D5D2AC 7C 7E 1B 79 */ or. r30, r3, r3
/* 80D5D2B0 7C 9F 23 78 */ mr r31, r4
/* 80D5D2B4 41 82 00 28 */ beq lbl_80D5D2DC
/* 80D5D2B8 3C 80 80 D6 */ lis r4, __vt__17daTag_MynaLight_c@ha /* 0x80D5D398@ha */
/* 80D5D2BC 38 04 D3 98 */ addi r0, r4, __vt__17daTag_MynaLight_c@l /* 0x80D5D398@l */
/* 80D5D2C0 90 1E 05 68 */ stw r0, 0x568(r30)
/* 80D5D2C4 38 80 00 00 */ li r4, 0
/* 80D5D2C8 4B 2B B9 C5 */ bl __dt__10fopAc_ac_cFv
/* 80D5D2CC 7F E0 07 35 */ extsh. r0, r31
/* 80D5D2D0 40 81 00 0C */ ble lbl_80D5D2DC
/* 80D5D2D4 7F C3 F3 78 */ mr r3, r30
/* 80D5D2D8 4B 57 1A 65 */ bl __dl__FPv
lbl_80D5D2DC:
/* 80D5D2DC 7F C3 F3 78 */ mr r3, r30
/* 80D5D2E0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D5D2E4 83 C1 00 08 */ lwz r30, 8(r1)
/* 80D5D2E8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5D2EC 7C 08 03 A6 */ mtlr r0
/* 80D5D2F0 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5D2F4 4E 80 00 20 */ blr

View File

@ -1,28 +0,0 @@
lbl_80D5CB38:
/* 80D5CB38 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5CB3C 7C 08 02 A6 */ mflr r0
/* 80D5CB40 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5CB44 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D5CB48 7C 7F 1B 78 */ mr r31, r3
/* 80D5CB4C 80 03 04 A0 */ lwz r0, 0x4a0(r3)
/* 80D5CB50 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 80D5CB54 40 82 00 28 */ bne lbl_80D5CB7C
/* 80D5CB58 28 1F 00 00 */ cmplwi r31, 0
/* 80D5CB5C 41 82 00 14 */ beq lbl_80D5CB70
/* 80D5CB60 4B 2B C0 05 */ bl __ct__10fopAc_ac_cFv
/* 80D5CB64 3C 60 80 D6 */ lis r3, __vt__17daTag_MynaLight_c@ha /* 0x80D5D398@ha */
/* 80D5CB68 38 03 D3 98 */ addi r0, r3, __vt__17daTag_MynaLight_c@l /* 0x80D5D398@l */
/* 80D5CB6C 90 1F 05 68 */ stw r0, 0x568(r31)
lbl_80D5CB70:
/* 80D5CB70 80 1F 04 A0 */ lwz r0, 0x4a0(r31)
/* 80D5CB74 60 00 00 08 */ ori r0, r0, 8
/* 80D5CB78 90 1F 04 A0 */ stw r0, 0x4a0(r31)
lbl_80D5CB7C:
/* 80D5CB7C 7F E3 FB 78 */ mr r3, r31
/* 80D5CB80 48 00 05 E1 */ bl initialize__17daTag_MynaLight_cFv
/* 80D5CB84 38 60 00 04 */ li r3, 4
/* 80D5CB88 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D5CB8C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5CB90 7C 08 03 A6 */ mtlr r0
/* 80D5CB94 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5CB98 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80D5D210:
/* 80D5D210 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5D214 7C 08 02 A6 */ mflr r0
/* 80D5D218 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5D21C 4B FF F9 1D */ bl create__17daTag_MynaLight_cFv
/* 80D5D220 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5D224 7C 08 03 A6 */ mtlr r0
/* 80D5D228 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5D22C 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80D5D230:
/* 80D5D230 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5D234 7C 08 02 A6 */ mflr r0
/* 80D5D238 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5D23C 4B FF F9 61 */ bl Delete__17daTag_MynaLight_cFv
/* 80D5D240 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5D244 7C 08 03 A6 */ mtlr r0
/* 80D5D248 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5D24C 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80D5D270:
/* 80D5D270 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5D274 7C 08 02 A6 */ mflr r0
/* 80D5D278 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5D27C 4B FF FB 19 */ bl Draw__17daTag_MynaLight_cFv
/* 80D5D280 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5D284 7C 08 03 A6 */ mtlr r0
/* 80D5D288 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5D28C 4E 80 00 20 */ blr

View File

@ -1,9 +0,0 @@
lbl_80D5D250:
/* 80D5D250 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5D254 7C 08 02 A6 */ mflr r0
/* 80D5D258 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5D25C 4B FF F9 99 */ bl Execute__17daTag_MynaLight_cFv
/* 80D5D260 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5D264 7C 08 03 A6 */ mtlr r0
/* 80D5D268 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5D26C 4E 80 00 20 */ blr

View File

@ -1,4 +0,0 @@
lbl_80D5D154:
/* 80D5D154 80 03 00 B0 */ lwz r0, 0xb0(r3)
/* 80D5D158 54 03 DE FE */ rlwinm r3, r0, 0x1b, 0x1b, 0x1f
/* 80D5D15C 4E 80 00 20 */ blr

View File

@ -1,4 +0,0 @@
lbl_80D5D148:
/* 80D5D148 80 03 00 B0 */ lwz r0, 0xb0(r3)
/* 80D5D14C 54 03 06 FE */ clrlwi r3, r0, 0x1b
/* 80D5D150 4E 80 00 20 */ blr

View File

@ -1,46 +0,0 @@
lbl_80D5D160:
/* 80D5D160 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80D5D164 7C 08 02 A6 */ mflr r0
/* 80D5D168 90 01 00 14 */ stw r0, 0x14(r1)
/* 80D5D16C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80D5D170 93 C1 00 08 */ stw r30, 8(r1)
/* 80D5D174 7C 7E 1B 78 */ mr r30, r3
/* 80D5D178 3C 80 80 D6 */ lis r4, lit_3694@ha /* 0x80D5D300@ha */
/* 80D5D17C 3B E4 D3 00 */ addi r31, r4, lit_3694@l /* 0x80D5D300@l */
/* 80D5D180 C0 3F 00 38 */ lfs f1, 0x38(r31)
/* 80D5D184 C0 5F 00 3C */ lfs f2, 0x3c(r31)
/* 80D5D188 FC 60 08 90 */ fmr f3, f1
/* 80D5D18C C0 9F 00 40 */ lfs f4, 0x40(r31)
/* 80D5D190 C0 BF 00 44 */ lfs f5, 0x44(r31)
/* 80D5D194 FC C0 20 90 */ fmr f6, f4
/* 80D5D198 4B 2B D3 B1 */ bl fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff
/* 80D5D19C 38 80 00 00 */ li r4, 0
/* 80D5D1A0 90 9E 05 5C */ stw r4, 0x55c(r30)
/* 80D5D1A4 A8 1E 04 B6 */ lha r0, 0x4b6(r30)
/* 80D5D1A8 B0 9E 04 DC */ sth r4, 0x4dc(r30)
/* 80D5D1AC B0 1E 04 DE */ sth r0, 0x4de(r30)
/* 80D5D1B0 B0 9E 04 E0 */ sth r4, 0x4e0(r30)
/* 80D5D1B4 A8 1E 04 DC */ lha r0, 0x4dc(r30)
/* 80D5D1B8 B0 1E 04 E4 */ sth r0, 0x4e4(r30)
/* 80D5D1BC A8 1E 04 DE */ lha r0, 0x4de(r30)
/* 80D5D1C0 B0 1E 04 E6 */ sth r0, 0x4e6(r30)
/* 80D5D1C4 A8 1E 04 E0 */ lha r0, 0x4e0(r30)
/* 80D5D1C8 B0 1E 04 E8 */ sth r0, 0x4e8(r30)
/* 80D5D1CC C0 1F 00 1C */ lfs f0, 0x1c(r31)
/* 80D5D1D0 D0 1E 05 6C */ stfs f0, 0x56c(r30)
/* 80D5D1D4 98 9E 05 79 */ stb r4, 0x579(r30)
/* 80D5D1D8 98 9E 05 78 */ stb r4, 0x578(r30)
/* 80D5D1DC 7C 83 23 78 */ mr r3, r4
/* 80D5D1E0 38 00 00 02 */ li r0, 2
/* 80D5D1E4 7C 09 03 A6 */ mtctr r0
lbl_80D5D1E8:
/* 80D5D1E8 38 03 05 70 */ addi r0, r3, 0x570
/* 80D5D1EC 7C 9E 01 2E */ stwx r4, r30, r0
/* 80D5D1F0 38 63 00 04 */ addi r3, r3, 4
/* 80D5D1F4 42 00 FF F4 */ bdnz lbl_80D5D1E8
/* 80D5D1F8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80D5D1FC 83 C1 00 08 */ lwz r30, 8(r1)
/* 80D5D200 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80D5D204 7C 08 03 A6 */ mtlr r0
/* 80D5D208 38 21 00 10 */ addi r1, r1, 0x10
/* 80D5D20C 4E 80 00 20 */ blr

View File

@ -1,204 +0,0 @@
lbl_80D5CE40:
/* 80D5CE40 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 80D5CE44 7C 08 02 A6 */ mflr r0
/* 80D5CE48 90 01 00 84 */ stw r0, 0x84(r1)
/* 80D5CE4C 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 80D5CE50 93 C1 00 78 */ stw r30, 0x78(r1)
/* 80D5CE54 7C 7E 1B 78 */ mr r30, r3
/* 80D5CE58 3C 60 80 D6 */ lis r3, lit_3694@ha /* 0x80D5D300@ha */
/* 80D5CE5C 3B E3 D3 00 */ addi r31, r3, lit_3694@l /* 0x80D5D300@l */
/* 80D5CE60 88 9E 05 78 */ lbz r4, 0x578(r30)
/* 80D5CE64 88 1E 05 79 */ lbz r0, 0x579(r30)
/* 80D5CE68 7C 64 00 50 */ subf r3, r4, r0
/* 80D5CE6C 30 03 FF FF */ addic r0, r3, -1
/* 80D5CE70 7C 00 19 10 */ subfe r0, r0, r3
/* 80D5CE74 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 80D5CE78 41 82 02 B4 */ beq lbl_80D5D12C
/* 80D5CE7C 98 9E 05 79 */ stb r4, 0x579(r30)
/* 80D5CE80 88 1E 05 79 */ lbz r0, 0x579(r30)
/* 80D5CE84 28 00 00 00 */ cmplwi r0, 0
/* 80D5CE88 41 82 01 B8 */ beq lbl_80D5D040
/* 80D5CE8C 3C 60 80 45 */ lis r3, mStayNo__20dStage_roomControl_c+0x0@ha /* 0x80450D64@ha */
/* 80D5CE90 38 63 0D 64 */ addi r3, r3, mStayNo__20dStage_roomControl_c+0x0@l /* 0x80450D64@l */
/* 80D5CE94 88 63 00 00 */ lbz r3, 0(r3)
/* 80D5CE98 7C 63 07 75 */ extsb. r3, r3
/* 80D5CE9C 41 82 00 4C */ beq lbl_80D5CEE8
/* 80D5CEA0 4B 2D 01 CD */ bl dComIfGp_getReverb__Fi
/* 80D5CEA4 7C 67 1B 78 */ mr r7, r3
/* 80D5CEA8 3C 60 00 08 */ lis r3, 0x0008 /* 0x0008011E@ha */
/* 80D5CEAC 38 03 01 1E */ addi r0, r3, 0x011E /* 0x0008011E@l */
/* 80D5CEB0 90 01 00 2C */ stw r0, 0x2c(r1)
/* 80D5CEB4 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80D5CEB8 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80D5CEBC 80 63 00 00 */ lwz r3, 0(r3)
/* 80D5CEC0 38 81 00 2C */ addi r4, r1, 0x2c
/* 80D5CEC4 38 BE 04 D0 */ addi r5, r30, 0x4d0
/* 80D5CEC8 38 C0 00 00 */ li r6, 0
/* 80D5CECC C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5CED0 FC 40 08 90 */ fmr f2, f1
/* 80D5CED4 C0 7F 00 08 */ lfs f3, 8(r31)
/* 80D5CED8 FC 80 18 90 */ fmr f4, f3
/* 80D5CEDC 39 00 00 00 */ li r8, 0
/* 80D5CEE0 4B 54 EA A5 */ bl seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
/* 80D5CEE4 48 00 00 44 */ b lbl_80D5CF28
lbl_80D5CEE8:
/* 80D5CEE8 3C 60 00 08 */ lis r3, 0x0008 /* 0x0008011E@ha */
/* 80D5CEEC 38 03 01 1E */ addi r0, r3, 0x011E /* 0x0008011E@l */
/* 80D5CEF0 90 01 00 28 */ stw r0, 0x28(r1)
/* 80D5CEF4 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80D5CEF8 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80D5CEFC 80 63 00 00 */ lwz r3, 0(r3)
/* 80D5CF00 38 81 00 28 */ addi r4, r1, 0x28
/* 80D5CF04 38 BE 04 D0 */ addi r5, r30, 0x4d0
/* 80D5CF08 38 C0 00 00 */ li r6, 0
/* 80D5CF0C 38 E0 00 00 */ li r7, 0
/* 80D5CF10 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5CF14 FC 40 08 90 */ fmr f2, f1
/* 80D5CF18 C0 7F 00 08 */ lfs f3, 8(r31)
/* 80D5CF1C FC 80 18 90 */ fmr f4, f3
/* 80D5CF20 39 00 00 00 */ li r8, 0
/* 80D5CF24 4B 54 EA 61 */ bl seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
lbl_80D5CF28:
/* 80D5CF28 C0 5F 00 24 */ lfs f2, 0x24(r31)
/* 80D5CF2C D0 41 00 48 */ stfs f2, 0x48(r1)
/* 80D5CF30 C0 3F 00 28 */ lfs f1, 0x28(r31)
/* 80D5CF34 D0 21 00 4C */ stfs f1, 0x4c(r1)
/* 80D5CF38 C0 1F 00 2C */ lfs f0, 0x2c(r31)
/* 80D5CF3C D0 01 00 50 */ stfs f0, 0x50(r1)
/* 80D5CF40 D0 41 00 6C */ stfs f2, 0x6c(r1)
/* 80D5CF44 D0 21 00 70 */ stfs f1, 0x70(r1)
/* 80D5CF48 D0 01 00 74 */ stfs f0, 0x74(r1)
/* 80D5CF4C C0 1F 00 30 */ lfs f0, 0x30(r31)
/* 80D5CF50 D0 01 00 3C */ stfs f0, 0x3c(r1)
/* 80D5CF54 D0 01 00 40 */ stfs f0, 0x40(r1)
/* 80D5CF58 D0 01 00 44 */ stfs f0, 0x44(r1)
/* 80D5CF5C D0 01 00 60 */ stfs f0, 0x60(r1)
/* 80D5CF60 D0 01 00 64 */ stfs f0, 0x64(r1)
/* 80D5CF64 D0 01 00 68 */ stfs f0, 0x68(r1)
/* 80D5CF68 C0 1F 00 34 */ lfs f0, 0x34(r31)
/* 80D5CF6C D0 01 00 30 */ stfs f0, 0x30(r1)
/* 80D5CF70 D0 01 00 34 */ stfs f0, 0x34(r1)
/* 80D5CF74 D0 01 00 38 */ stfs f0, 0x38(r1)
/* 80D5CF78 D0 01 00 54 */ stfs f0, 0x54(r1)
/* 80D5CF7C D0 01 00 58 */ stfs f0, 0x58(r1)
/* 80D5CF80 D0 01 00 5C */ stfs f0, 0x5c(r1)
/* 80D5CF84 80 1E 05 70 */ lwz r0, 0x570(r30)
/* 80D5CF88 28 00 00 00 */ cmplwi r0, 0
/* 80D5CF8C 40 82 00 54 */ bne lbl_80D5CFE0
/* 80D5CF90 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5CF94 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D5CF98 80 63 5D 3C */ lwz r3, 0x5d3c(r3)
/* 80D5CF9C 38 80 00 00 */ li r4, 0
/* 80D5CFA0 90 81 00 08 */ stw r4, 8(r1)
/* 80D5CFA4 38 00 FF FF */ li r0, -1
/* 80D5CFA8 90 01 00 0C */ stw r0, 0xc(r1)
/* 80D5CFAC 90 81 00 10 */ stw r4, 0x10(r1)
/* 80D5CFB0 90 81 00 14 */ stw r4, 0x14(r1)
/* 80D5CFB4 90 81 00 18 */ stw r4, 0x18(r1)
/* 80D5CFB8 38 80 00 00 */ li r4, 0
/* 80D5CFBC 38 A0 03 AD */ li r5, 0x3ad
/* 80D5CFC0 38 DE 04 D0 */ addi r6, r30, 0x4d0
/* 80D5CFC4 38 E0 00 00 */ li r7, 0
/* 80D5CFC8 39 1E 04 DC */ addi r8, r30, 0x4dc
/* 80D5CFCC 39 21 00 60 */ addi r9, r1, 0x60
/* 80D5CFD0 39 40 00 FF */ li r10, 0xff
/* 80D5CFD4 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5CFD8 4B 2E FA B9 */ bl set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf
/* 80D5CFDC 90 7E 05 70 */ stw r3, 0x570(r30)
lbl_80D5CFE0:
/* 80D5CFE0 80 1E 05 74 */ lwz r0, 0x574(r30)
/* 80D5CFE4 28 00 00 00 */ cmplwi r0, 0
/* 80D5CFE8 40 82 01 44 */ bne lbl_80D5D12C
/* 80D5CFEC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 0x804061C0@ha */
/* 80D5CFF0 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l /* 0x804061C0@l */
/* 80D5CFF4 80 63 5D 3C */ lwz r3, 0x5d3c(r3)
/* 80D5CFF8 38 80 00 00 */ li r4, 0
/* 80D5CFFC 90 81 00 08 */ stw r4, 8(r1)
/* 80D5D000 38 00 FF FF */ li r0, -1
/* 80D5D004 90 01 00 0C */ stw r0, 0xc(r1)
/* 80D5D008 90 81 00 10 */ stw r4, 0x10(r1)
/* 80D5D00C 90 81 00 14 */ stw r4, 0x14(r1)
/* 80D5D010 90 81 00 18 */ stw r4, 0x18(r1)
/* 80D5D014 38 80 00 00 */ li r4, 0
/* 80D5D018 38 A0 03 AF */ li r5, 0x3af
/* 80D5D01C 38 DE 04 D0 */ addi r6, r30, 0x4d0
/* 80D5D020 38 E0 00 00 */ li r7, 0
/* 80D5D024 39 1E 04 DC */ addi r8, r30, 0x4dc
/* 80D5D028 39 21 00 54 */ addi r9, r1, 0x54
/* 80D5D02C 39 40 00 FF */ li r10, 0xff
/* 80D5D030 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5D034 4B 2E FA 5D */ bl set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf
/* 80D5D038 90 7E 05 74 */ stw r3, 0x574(r30)
/* 80D5D03C 48 00 00 F0 */ b lbl_80D5D12C
lbl_80D5D040:
/* 80D5D040 3C 60 80 45 */ lis r3, mStayNo__20dStage_roomControl_c+0x0@ha /* 0x80450D64@ha */
/* 80D5D044 38 63 0D 64 */ addi r3, r3, mStayNo__20dStage_roomControl_c+0x0@l /* 0x80450D64@l */
/* 80D5D048 88 63 00 00 */ lbz r3, 0(r3)
/* 80D5D04C 7C 63 07 75 */ extsb. r3, r3
/* 80D5D050 41 82 00 4C */ beq lbl_80D5D09C
/* 80D5D054 4B 2D 00 19 */ bl dComIfGp_getReverb__Fi
/* 80D5D058 7C 67 1B 78 */ mr r7, r3
/* 80D5D05C 3C 60 00 08 */ lis r3, 0x0008 /* 0x0008011F@ha */
/* 80D5D060 38 03 01 1F */ addi r0, r3, 0x011F /* 0x0008011F@l */
/* 80D5D064 90 01 00 24 */ stw r0, 0x24(r1)
/* 80D5D068 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80D5D06C 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80D5D070 80 63 00 00 */ lwz r3, 0(r3)
/* 80D5D074 38 81 00 24 */ addi r4, r1, 0x24
/* 80D5D078 38 BE 04 D0 */ addi r5, r30, 0x4d0
/* 80D5D07C 38 C0 00 00 */ li r6, 0
/* 80D5D080 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5D084 FC 40 08 90 */ fmr f2, f1
/* 80D5D088 C0 7F 00 08 */ lfs f3, 8(r31)
/* 80D5D08C FC 80 18 90 */ fmr f4, f3
/* 80D5D090 39 00 00 00 */ li r8, 0
/* 80D5D094 4B 54 E8 F1 */ bl seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
/* 80D5D098 48 00 00 44 */ b lbl_80D5D0DC
lbl_80D5D09C:
/* 80D5D09C 3C 60 00 08 */ lis r3, 0x0008 /* 0x0008011F@ha */
/* 80D5D0A0 38 03 01 1F */ addi r0, r3, 0x011F /* 0x0008011F@l */
/* 80D5D0A4 90 01 00 20 */ stw r0, 0x20(r1)
/* 80D5D0A8 3C 60 80 45 */ lis r3, mAudioMgrPtr__10Z2AudioMgr@ha /* 0x80451368@ha */
/* 80D5D0AC 38 63 13 68 */ addi r3, r3, mAudioMgrPtr__10Z2AudioMgr@l /* 0x80451368@l */
/* 80D5D0B0 80 63 00 00 */ lwz r3, 0(r3)
/* 80D5D0B4 38 81 00 20 */ addi r4, r1, 0x20
/* 80D5D0B8 38 BE 04 D0 */ addi r5, r30, 0x4d0
/* 80D5D0BC 38 C0 00 00 */ li r6, 0
/* 80D5D0C0 38 E0 00 00 */ li r7, 0
/* 80D5D0C4 C0 3F 00 04 */ lfs f1, 4(r31)
/* 80D5D0C8 FC 40 08 90 */ fmr f2, f1
/* 80D5D0CC C0 7F 00 08 */ lfs f3, 8(r31)
/* 80D5D0D0 FC 80 18 90 */ fmr f4, f3
/* 80D5D0D4 39 00 00 00 */ li r8, 0
/* 80D5D0D8 4B 54 E8 AD */ bl seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc
lbl_80D5D0DC:
/* 80D5D0DC 38 60 00 00 */ li r3, 0
/* 80D5D0E0 38 A0 00 01 */ li r5, 1
/* 80D5D0E4 7C 64 1B 78 */ mr r4, r3
/* 80D5D0E8 38 00 00 02 */ li r0, 2
/* 80D5D0EC 7C 09 03 A6 */ mtctr r0
lbl_80D5D0F0:
/* 80D5D0F0 38 E3 05 70 */ addi r7, r3, 0x570
/* 80D5D0F4 7C DE 38 2E */ lwzx r6, r30, r7
/* 80D5D0F8 28 06 00 00 */ cmplwi r6, 0
/* 80D5D0FC 41 82 00 28 */ beq lbl_80D5D124
/* 80D5D100 80 06 00 F4 */ lwz r0, 0xf4(r6)
/* 80D5D104 54 00 06 B0 */ rlwinm r0, r0, 0, 0x1a, 0x18
/* 80D5D108 90 06 00 F4 */ stw r0, 0xf4(r6)
/* 80D5D10C 7C DE 38 2E */ lwzx r6, r30, r7
/* 80D5D110 80 06 00 F4 */ lwz r0, 0xf4(r6)
/* 80D5D114 60 00 00 01 */ ori r0, r0, 1
/* 80D5D118 90 06 00 F4 */ stw r0, 0xf4(r6)
/* 80D5D11C 90 A6 00 24 */ stw r5, 0x24(r6)
/* 80D5D120 7C 9E 39 2E */ stwx r4, r30, r7
lbl_80D5D124:
/* 80D5D124 38 63 00 04 */ addi r3, r3, 4
/* 80D5D128 42 00 FF C8 */ bdnz lbl_80D5D0F0
lbl_80D5D12C:
/* 80D5D12C 88 7E 05 79 */ lbz r3, 0x579(r30)
/* 80D5D130 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 80D5D134 83 C1 00 78 */ lwz r30, 0x78(r1)
/* 80D5D138 80 01 00 84 */ lwz r0, 0x84(r1)
/* 80D5D13C 7C 08 03 A6 */ mtlr r0
/* 80D5D140 38 21 00 80 */ addi r1, r1, 0x80
/* 80D5D144 4E 80 00 20 */ blr

View File

@ -2,5 +2,33 @@
#define D_A_TAG_MYNA_LIGHT_H
#include "dolphin/types.h"
#include "f_op/f_op_actor_mng.h"
class daTag_MynaLight_c : public fopAc_ac_c {
public:
/* 80D5CB38 */ int create();
/* 80D5CB9C */ int Delete();
/* 80D5CBF4 */ int Execute();
/* 80D5CD94 */ int Draw();
/* 80D5CE40 */ bool setTurnOnOffChange();
/* 80D5D148 */ u32 getTurnOnTime();
/* 80D5D154 */ u32 getTurnOffTime();
/* 80D5D160 */ void initialize();
/* 80D5D298 */ virtual ~daTag_MynaLight_c();
bool checkTurnOnOffChange() {
bool var1 = mTurnOnFlag - field_0x578;
return var1 & 0xFF;
}
/* 0x568 */ // vtable
/* 0x56C */ f32 field_0x56c;
/* 0x570 */ JPABaseEmitter* field_0x570[2];
/* 0x578 */ bool field_0x578;
/* 0x579 */ bool mTurnOnFlag;
}; // Size: 0x57C
STATIC_ASSERT(sizeof(daTag_MynaLight_c) == 0x57C);
#endif /* D_A_TAG_MYNA_LIGHT_H */

View File

@ -1,401 +1,195 @@
//
// Generated By: dol2asm
// Translation Unit: d_a_tag_myna_light
//
#include "rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light.h"
#include "dol2asm.h"
//
// Types:
//
struct fopAc_ac_c {
/* 80018B64 */ fopAc_ac_c();
/* 80018C8C */ ~fopAc_ac_c();
};
struct daTag_MynaLight_c {
/* 80D5CB38 */ void create();
/* 80D5CB9C */ void Delete();
/* 80D5CBF4 */ void Execute();
/* 80D5CD94 */ void Draw();
/* 80D5CE40 */ void setTurnOnOffChange();
/* 80D5D148 */ void getTurnOnTime();
/* 80D5D154 */ void getTurnOffTime();
/* 80D5D160 */ void initialize();
/* 80D5D298 */ ~daTag_MynaLight_c();
};
struct dPa_levelEcallBack {};
struct dKy_tevstr_c {};
struct csXyz {};
struct _GXColor {};
struct cXyz {};
struct dPa_control_c {
/* 8004CA90 */ void set(u8, u16, cXyz const*, dKy_tevstr_c const*, csXyz const*, cXyz const*,
u8, dPa_levelEcallBack*, s8, _GXColor const*, _GXColor const*,
cXyz const*, f32);
};
struct JAISoundID {};
struct Vec {};
struct Z2SeMgr {
/* 802AB984 */ void seStart(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
/* 802AC50C */ void seStartLevel(JAISoundID, Vec const*, u32, s8, f32, f32, f32, f32, u8);
};
struct Z2AudioMgr {
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
//
// Forward References:
//
extern "C" void create__17daTag_MynaLight_cFv();
extern "C" void Delete__17daTag_MynaLight_cFv();
extern "C" void Execute__17daTag_MynaLight_cFv();
extern "C" void Draw__17daTag_MynaLight_cFv();
extern "C" void setTurnOnOffChange__17daTag_MynaLight_cFv();
extern "C" void getTurnOnTime__17daTag_MynaLight_cFv();
extern "C" void getTurnOffTime__17daTag_MynaLight_cFv();
extern "C" void initialize__17daTag_MynaLight_cFv();
extern "C" static void daTag_MynaLight_Create__FPv();
extern "C" static void daTag_MynaLight_Delete__FPv();
extern "C" static void daTag_MynaLight_Execute__FPv();
extern "C" static void daTag_MynaLight_Draw__FPv();
extern "C" static bool daTag_MynaLight_IsDelete__FPv();
extern "C" void __dt__17daTag_MynaLight_cFv();
//
// External References:
//
extern "C" void __ct__10fopAc_ac_cFv();
extern "C" void __dt__10fopAc_ac_cFv();
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
extern "C" void dComIfGp_getReverb__Fi();
extern "C" void
set__13dPa_control_cFUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
extern "C" void dKy_BossLight_set__FP4cXyzP8_GXColorfUc();
extern "C" void cLib_addCalc__FPfffff();
extern "C" void seStart__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void seStartLevel__7Z2SeMgrF10JAISoundIDPC3VecUlScffffUc();
extern "C" void __dl__FPv();
extern "C" void _savegpr_28();
extern "C" void _restgpr_28();
extern "C" extern void* g_fopAc_Method[8];
extern "C" extern void* g_fpcLf_Method[5 + 1 /* padding */];
extern "C" extern u8 g_dComIfG_gameInfo[122384];
extern "C" extern u8 mStayNo__20dStage_roomControl_c[4];
extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */];
//
// Declarations:
//
/* ############################################################################################## */
/* 80D5D348-80D5D368 -00001 0020+00 1/0 0/0 0/0 .data daTag_MynaLight_MethodTable */
SECTION_DATA static void* daTag_MynaLight_MethodTable[8] = {
(void*)daTag_MynaLight_Create__FPv,
(void*)daTag_MynaLight_Delete__FPv,
(void*)daTag_MynaLight_Execute__FPv,
(void*)daTag_MynaLight_IsDelete__FPv,
(void*)daTag_MynaLight_Draw__FPv,
(void*)NULL,
(void*)NULL,
(void*)NULL,
};
/* 80D5D368-80D5D398 -00001 0030+00 0/0 0/0 1/0 .data g_profile_TAG_MNLIGHT */
SECTION_DATA extern void* g_profile_TAG_MNLIGHT[12] = {
(void*)0xFFFFFFFD, (void*)0x0007FFFD,
(void*)0x01250000, (void*)&g_fpcLf_Method,
(void*)0x0000057C, (void*)NULL,
(void*)NULL, (void*)&g_fopAc_Method,
(void*)0x00490000, (void*)&daTag_MynaLight_MethodTable,
(void*)0x00064100, (void*)0x050E0000,
};
/* 80D5D398-80D5D3A4 000050 000C+00 2/2 0/0 0/0 .data __vt__17daTag_MynaLight_c */
SECTION_DATA extern void* __vt__17daTag_MynaLight_c[3] = {
(void*)NULL /* RTTI */,
(void*)NULL,
(void*)__dt__17daTag_MynaLight_cFv,
};
#include "JSystem/JKernel/JKRHeap.h"
#include "d/com/d_com_inf_game.h"
#include "d/d_procname.h"
#include "d/d_stage.h"
#include "d/particle/d_particle.h"
/* 80D5CB38-80D5CB9C 000078 0064+00 1/1 0/0 0/0 .text create__17daTag_MynaLight_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_MynaLight_c::create() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/create__17daTag_MynaLight_cFv.s"
int daTag_MynaLight_c::create() {
fopAcM_SetupActor(this, daTag_MynaLight_c);
initialize();
return 4;
}
#pragma pop
/* 80D5CB9C-80D5CBF4 0000DC 0058+00 1/1 0/0 0/0 .text Delete__17daTag_MynaLight_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_MynaLight_c::Delete() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/Delete__17daTag_MynaLight_cFv.s"
int daTag_MynaLight_c::Delete() {
for (int i = 0; i < 2; i++) {
if (field_0x570[i] != NULL) {
field_0x570[i]->quitImmortalEmitter();
field_0x570[i]->becomeInvalidEmitter();
field_0x570[i] = NULL;
}
}
return 1;
}
#pragma pop
/* ############################################################################################## */
/* 80D5D300-80D5D304 000000 0004+00 4/4 0/0 0/0 .rodata @3694 */
SECTION_RODATA static f32 const lit_3694 = 1.0f / 15.0f;
COMPILER_STRIP_GATE(0x80D5D300, &lit_3694);
/* 80D5D304-80D5D308 000004 0004+00 0/3 0/0 0/0 .rodata @3695 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3695 = 1.0f;
COMPILER_STRIP_GATE(0x80D5D304, &lit_3695);
#pragma pop
/* 80D5D308-80D5D30C 000008 0004+00 0/2 0/0 0/0 .rodata @3696 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3696 = -1.0f;
COMPILER_STRIP_GATE(0x80D5D308, &lit_3696);
#pragma pop
/* 80D5CBF4-80D5CD94 000134 01A0+00 1/1 0/0 0/0 .text Execute__17daTag_MynaLight_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_MynaLight_c::Execute() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/Execute__17daTag_MynaLight_cFv.s"
int daTag_MynaLight_c::Execute() {
u8 uVar1 = (int)(dComIfGs_getTime() * 0.06666667f) & 0xFF;
u8 turn_on_time = getTurnOnTime() & 0xFF;
u8 turn_off_time = getTurnOffTime() & 0xFF;
if (turn_off_time > turn_on_time) {
if (uVar1 >= (getTurnOnTime() & 0xFF) && uVar1 < (getTurnOffTime() & 0xFF)) {
field_0x578 = true;
} else {
field_0x578 = false;
}
} else {
if (uVar1 >= (getTurnOffTime() & 0xFF) && uVar1 < (getTurnOnTime() & 0xFF)) {
field_0x578 = false;
} else {
field_0x578 = true;
}
}
if (mTurnOnFlag) {
if (dComIfGp_roomControl_getStayNo() != 0) {
i_mDoAud_seStartLevel(Z2SE_OBJ_MYNA_LIGHT_BURNING, (Vec*)&current.pos, 0,
dComIfGp_getReverb(dComIfGp_roomControl_getStayNo()));
} else {
i_mDoAud_seStartLevel(Z2SE_OBJ_MYNA_LIGHT_BURNING, (Vec*)&current.pos, 0, 0);
}
}
return 1;
}
#pragma pop
/* ############################################################################################## */
/* 80D5D30C-80D5D310 00000C 0004+00 0/1 0/0 0/0 .rodata @3706 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3706 = 0xBC6642FF;
COMPILER_STRIP_GATE(0x80D5D30C, &lit_3706);
#pragma pop
/* 80D5D310-80D5D314 000010 0004+00 0/1 0/0 0/0 .rodata @3708 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3708 = 0.5f;
COMPILER_STRIP_GATE(0x80D5D310, &lit_3708);
#pragma pop
/* 80D5D314-80D5D318 000014 0004+00 0/1 0/0 0/0 .rodata @3709 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3709 = 1.0f / 10.0f;
COMPILER_STRIP_GATE(0x80D5D314, &lit_3709);
#pragma pop
/* 80D5D318-80D5D31C 000018 0004+00 0/1 0/0 0/0 .rodata @3710 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3710 = 0x38D1B717;
COMPILER_STRIP_GATE(0x80D5D318, &lit_3710);
#pragma pop
/* 80D5D31C-80D5D320 00001C 0004+00 0/2 0/0 0/0 .rodata @3711 */
#pragma push
#pragma force_active on
SECTION_RODATA static u8 const lit_3711[4] = {
0x00,
0x00,
0x00,
0x00,
};
COMPILER_STRIP_GATE(0x80D5D31C, &lit_3711);
#pragma pop
/* 80D5D320-80D5D324 000020 0004+00 0/1 0/0 0/0 .rodata @3712 */
#pragma push
#pragma force_active on
SECTION_RODATA static u32 const lit_3712 = 0x358637BD;
COMPILER_STRIP_GATE(0x80D5D320, &lit_3712);
#pragma pop
/* 80D5CD94-80D5CE40 0002D4 00AC+00 1/1 0/0 0/0 .text Draw__17daTag_MynaLight_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_MynaLight_c::Draw() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/Draw__17daTag_MynaLight_cFv.s"
int daTag_MynaLight_c::Draw() {
if (mTurnOnFlag) {
cLib_addCalc(&field_0x56c, 1.0f, 0.5f, 0.1f, 0.0001f);
} else {
cLib_addCalc(&field_0x56c, 0.0f, 0.5f, 0.1f, 0.0001f);
}
if (field_0x56c >= 0.000001f) {
GXColor color = {0xBC, 0x66, 0x42, 0xFF};
dKy_BossLight_set(&current.pos, &color, field_0x56c, 0);
}
return 1;
}
#pragma pop
/* ############################################################################################## */
/* 80D5D324-80D5D328 000024 0004+00 0/1 0/0 0/0 .rodata @3811 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3811 = -5122.0f;
COMPILER_STRIP_GATE(0x80D5D324, &lit_3811);
#pragma pop
/* 80D5D328-80D5D32C 000028 0004+00 0/1 0/0 0/0 .rodata @3812 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3812 = -124.0f;
COMPILER_STRIP_GATE(0x80D5D328, &lit_3812);
#pragma pop
/* 80D5D32C-80D5D330 00002C 0004+00 0/1 0/0 0/0 .rodata @3813 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3813 = -3067.0f;
COMPILER_STRIP_GATE(0x80D5D32C, &lit_3813);
#pragma pop
/* 80D5D330-80D5D334 000030 0004+00 0/1 0/0 0/0 .rodata @3814 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3814 = 2.0f / 5.0f;
COMPILER_STRIP_GATE(0x80D5D330, &lit_3814);
#pragma pop
/* 80D5D334-80D5D338 000034 0004+00 0/1 0/0 0/0 .rodata @3815 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3815 = 0.25f;
COMPILER_STRIP_GATE(0x80D5D334, &lit_3815);
#pragma pop
/* 80D5CE40-80D5D148 000380 0308+00 0/0 0/0 1/1 .text setTurnOnOffChange__17daTag_MynaLight_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_MynaLight_c::setTurnOnOffChange() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/setTurnOnOffChange__17daTag_MynaLight_cFv.s"
bool daTag_MynaLight_c::setTurnOnOffChange() {
if (checkTurnOnOffChange()) {
mTurnOnFlag = field_0x578;
if (mTurnOnFlag) {
if (dComIfGp_roomControl_getStayNo() != 0) {
mDoAud_seStart(Z2SE_OBJ_MYNA_LIGHT_ON, (Vec*)&current.pos, 0,
dComIfGp_getReverb(dComIfGp_roomControl_getStayNo()));
} else {
mDoAud_seStart(Z2SE_OBJ_MYNA_LIGHT_ON, (Vec*)&current.pos, 0, 0);
}
cXyz unused_scale = cXyz(-5122.0f, -124.0f, -3067.0f);
cXyz scale_1 = cXyz(0.4f, 0.4f, 0.4f);
cXyz scale_2 = cXyz(0.25f, 0.25f, 0.25f);
if (field_0x570[0] == NULL) {
field_0x570[0] =
dComIfGp_particle_set(0x3AD, &current.pos, &current.angle, &scale_1);
}
if (field_0x570[1] == NULL) {
field_0x570[1] =
dComIfGp_particle_set(0x3AF, &current.pos, &current.angle, &scale_2);
}
} else {
if (dComIfGp_roomControl_getStayNo() != 0) {
mDoAud_seStart(Z2SE_OBJ_MYNA_LIGHT_OFF, (Vec*)&current.pos, 0,
dComIfGp_getReverb(dComIfGp_roomControl_getStayNo()));
} else {
mDoAud_seStart(Z2SE_OBJ_MYNA_LIGHT_OFF, (Vec*)&current.pos, 0, 0);
}
for (int i = 0; i < 2; i++) {
if (field_0x570[i] != NULL) {
field_0x570[i]->quitImmortalEmitter();
field_0x570[i]->becomeInvalidEmitter();
field_0x570[i] = NULL;
}
}
}
}
return mTurnOnFlag;
}
#pragma pop
/* 80D5D148-80D5D154 000688 000C+00 1/1 0/0 0/0 .text getTurnOnTime__17daTag_MynaLight_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_MynaLight_c::getTurnOnTime() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/getTurnOnTime__17daTag_MynaLight_cFv.s"
u32 daTag_MynaLight_c::getTurnOnTime() {
return fopAcM_GetParam(this) & 0x1F;
}
#pragma pop
/* 80D5D154-80D5D160 000694 000C+00 1/1 0/0 0/0 .text getTurnOffTime__17daTag_MynaLight_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_MynaLight_c::getTurnOffTime() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/getTurnOffTime__17daTag_MynaLight_cFv.s"
u32 daTag_MynaLight_c::getTurnOffTime() {
return fopAcM_GetParam(this) >> 5 & 0x1F;
}
#pragma pop
/* ############################################################################################## */
/* 80D5D338-80D5D33C 000038 0004+00 0/1 0/0 0/0 .rodata @3851 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3851 = -30.0f;
COMPILER_STRIP_GATE(0x80D5D338, &lit_3851);
#pragma pop
/* 80D5D33C-80D5D340 00003C 0004+00 0/1 0/0 0/0 .rodata @3852 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3852 = -15.0f;
COMPILER_STRIP_GATE(0x80D5D33C, &lit_3852);
#pragma pop
/* 80D5D340-80D5D344 000040 0004+00 0/1 0/0 0/0 .rodata @3853 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3853 = 30.0f;
COMPILER_STRIP_GATE(0x80D5D340, &lit_3853);
#pragma pop
/* 80D5D344-80D5D348 000044 0004+00 0/1 0/0 0/0 .rodata @3854 */
#pragma push
#pragma force_active on
SECTION_RODATA static f32 const lit_3854 = 45.0f;
COMPILER_STRIP_GATE(0x80D5D344, &lit_3854);
#pragma pop
/* 80D5D160-80D5D210 0006A0 00B0+00 1/1 0/0 0/0 .text initialize__17daTag_MynaLight_cFv
*/
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void daTag_MynaLight_c::initialize() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/initialize__17daTag_MynaLight_cFv.s"
void daTag_MynaLight_c::initialize() {
fopAcM_setCullSizeBox(this, -30.0, -15.0, -30.0, 30.0, 45.0, 30.0);
mAttentionInfo.mFlags = 0;
current.angle.set(0, orig.angle.y, 0);
shape_angle = current.angle;
field_0x56c = 0.0f;
mTurnOnFlag = false;
field_0x578 = false;
for (int i = 0; i < 2; i++) {
field_0x570[i] = NULL;
}
}
#pragma pop
/* 80D5D210-80D5D230 000750 0020+00 1/0 0/0 0/0 .text daTag_MynaLight_Create__FPv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTag_MynaLight_Create(void* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/daTag_MynaLight_Create__FPv.s"
static int daTag_MynaLight_Create(void* i_this) {
return static_cast<daTag_MynaLight_c*>(i_this)->create();
}
#pragma pop
/* 80D5D230-80D5D250 000770 0020+00 1/0 0/0 0/0 .text daTag_MynaLight_Delete__FPv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTag_MynaLight_Delete(void* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/daTag_MynaLight_Delete__FPv.s"
static int daTag_MynaLight_Delete(void* i_this) {
return static_cast<daTag_MynaLight_c*>(i_this)->Delete();
}
#pragma pop
/* 80D5D250-80D5D270 000790 0020+00 1/0 0/0 0/0 .text daTag_MynaLight_Execute__FPv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTag_MynaLight_Execute(void* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/daTag_MynaLight_Execute__FPv.s"
static int daTag_MynaLight_Execute(void* i_this) {
return static_cast<daTag_MynaLight_c*>(i_this)->Execute();
}
#pragma pop
/* 80D5D270-80D5D290 0007B0 0020+00 1/0 0/0 0/0 .text daTag_MynaLight_Draw__FPv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
static asm void daTag_MynaLight_Draw(void* param_0) {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/daTag_MynaLight_Draw__FPv.s"
static int daTag_MynaLight_Draw(void* i_this) {
return static_cast<daTag_MynaLight_c*>(i_this)->Draw();
}
#pragma pop
/* 80D5D290-80D5D298 0007D0 0008+00 1/0 0/0 0/0 .text daTag_MynaLight_IsDelete__FPv */
static bool daTag_MynaLight_IsDelete(void* param_0) {
return true;
static int daTag_MynaLight_IsDelete(void* i_this) {
return 1;
}
/* 80D5D298-80D5D2F8 0007D8 0060+00 1/0 0/0 0/0 .text __dt__17daTag_MynaLight_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm daTag_MynaLight_c::~daTag_MynaLight_c() {
nofralloc
#include "asm/rel/d/a/tag/d_a_tag_myna_light/d_a_tag_myna_light/__dt__17daTag_MynaLight_cFv.s"
}
#pragma pop
daTag_MynaLight_c::~daTag_MynaLight_c() {}
/* ############################################################################################## */
/* 80D5D348-80D5D368 -00001 0020+00 1/0 0/0 0/0 .data daTag_MynaLight_MethodTable */
static actor_method_class daTag_MynaLight_MethodTable = {
(process_method_func)daTag_MynaLight_Create, (process_method_func)daTag_MynaLight_Delete,
(process_method_func)daTag_MynaLight_Execute, (process_method_func)daTag_MynaLight_IsDelete,
(process_method_func)daTag_MynaLight_Draw,
};
/* 80D5D368-80D5D398 -00001 0030+00 0/0 0/0 1/0 .data g_profile_TAG_MNLIGHT */
extern actor_process_profile_definition g_profile_TAG_MNLIGHT = {
fpcLy_CURRENT_e,
7,
fpcLy_CURRENT_e,
PROC_TAG_MNLIGHT,
&g_fpcLf_Method.mBase,
sizeof(daTag_MynaLight_c),
0,
0,
&g_fopAc_Method.base,
0x49,
&daTag_MynaLight_MethodTable,
0x64100,
0x05,
fopAc_CULLBOX_CUSTOM_e,
};