Z2SeqMgr mostly done (#2053)

This commit is contained in:
Caroline Madsen
2024-01-29 15:50:13 -08:00
committed by GitHub
parent 36a29bc4fe
commit 16259ec265
27 changed files with 2275 additions and 525 deletions
+4 -4
View File
@@ -7,22 +7,22 @@ Section | Percentage | Decompiled (bytes) | Total (bytes)
.init | 97.972973% | 9280 | 9472 .init | 97.972973% | 9280 | 9472
.extab | 100.000000% | 96 | 96 .extab | 100.000000% | 96 | 96
.extabindex | 100.000000% | 96 | 96 .extabindex | 100.000000% | 96 | 96
.text | 44.556552% | 1602496 | 3596544 .text | 45.154571% | 1624004 | 3596544
.ctors | 100.000000% | 448 | 448 .ctors | 100.000000% | 448 | 448
.dtors | 100.000000% | 32 | 32 .dtors | 100.000000% | 32 | 32
.rodata | 100.000000% | 193856 | 193856 .rodata | 100.000000% | 193856 | 193856
.data | 100.000000% | 197632 | 197632 .data | 100.000000% | 197632 | 197632
.sdata | 100.000000% | 1408 | 1408 .sdata | 100.000000% | 1408 | 1408
.sdata2 | 100.000000% | 20832 | 20832 .sdata2 | 100.000000% | 20832 | 20832
Total | 50.400331% | 2026432 | 4020672 Total | 50.935267% | 2047940 | 4020672
## Total ## Total
Section | Percentage | Decompiled (bytes) | Total (bytes) Section | Percentage | Decompiled (bytes) | Total (bytes)
---|---|---|--- ---|---|---|---
main.dol | 50.400331% | 2026432 | 4020672 main.dol | 50.935267% | 2047940 | 4020672
RELs | 35.541016% | 4087332 | 11500324 RELs | 35.541016% | 4087332 | 11500324
Total | 39.390281% | 6113764 | 15520996 Total | 39.528855% | 6135272 | 15520996
## RELs ## RELs
@@ -1,13 +0,0 @@
lbl_802AFDEC:
/* 802AFDEC 80 63 00 0C */ lwz r3, 0xc(r3)
/* 802AFDF0 28 03 00 00 */ cmplwi r3, 0
/* 802AFDF4 41 82 00 1C */ beq lbl_802AFE10
/* 802AFDF8 88 83 00 1E */ lbz r4, 0x1e(r3)
/* 802AFDFC 38 00 00 03 */ li r0, 3
/* 802AFE00 38 60 FF FF */ li r3, -1
/* 802AFE04 7C 00 20 10 */ subfc r0, r0, r4
/* 802AFE08 7C 63 01 90 */ subfze r3, r3
/* 802AFE0C 4E 80 00 20 */ blr
lbl_802AFE10:
/* 802AFE10 38 60 00 00 */ li r3, 0
/* 802AFE14 4E 80 00 20 */ blr
@@ -1,58 +0,0 @@
lbl_802AFE18:
/* 802AFE18 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802AFE1C 7C 08 02 A6 */ mflr r0
/* 802AFE20 90 01 00 24 */ stw r0, 0x24(r1)
/* 802AFE24 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802AFE28 7C 7F 1B 78 */ mr r31, r3
/* 802AFE2C 80 63 00 0C */ lwz r3, 0xc(r3)
/* 802AFE30 28 03 00 00 */ cmplwi r3, 0
/* 802AFE34 41 82 00 0C */ beq lbl_802AFE40
/* 802AFE38 38 63 00 1C */ addi r3, r3, 0x1c
/* 802AFE3C 4B FF 24 09 */ bl unlockIfLocked__15JAISoundStatus_Fv
lbl_802AFE40:
/* 802AFE40 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 802AFE44 28 03 00 00 */ cmplwi r3, 0
/* 802AFE48 41 82 00 10 */ beq lbl_802AFE58
/* 802AFE4C 80 83 00 18 */ lwz r4, 0x18(r3)
/* 802AFE50 90 81 00 0C */ stw r4, 0xc(r1)
/* 802AFE54 48 00 00 08 */ b lbl_802AFE5C
lbl_802AFE58:
/* 802AFE58 38 80 FF FF */ li r4, -1
lbl_802AFE5C:
/* 802AFE5C 3C 04 00 01 */ addis r0, r4, 1
/* 802AFE60 28 00 FF FF */ cmplwi r0, 0xffff
/* 802AFE64 40 82 00 1C */ bne lbl_802AFE80
/* 802AFE68 80 7F 00 00 */ lwz r3, 0(r31)
/* 802AFE6C 28 03 00 00 */ cmplwi r3, 0
/* 802AFE70 41 82 00 58 */ beq lbl_802AFEC8
/* 802AFE74 38 80 00 1E */ li r4, 0x1e
/* 802AFE78 4B FF 26 65 */ bl stop__8JAISoundFUl
/* 802AFE7C 48 00 00 4C */ b lbl_802AFEC8
lbl_802AFE80:
/* 802AFE80 28 03 00 00 */ cmplwi r3, 0
/* 802AFE84 41 82 00 10 */ beq lbl_802AFE94
/* 802AFE88 80 83 00 18 */ lwz r4, 0x18(r3)
/* 802AFE8C 90 81 00 08 */ stw r4, 8(r1)
/* 802AFE90 48 00 00 08 */ b lbl_802AFE98
lbl_802AFE94:
/* 802AFE94 38 80 FF FF */ li r4, -1
lbl_802AFE98:
/* 802AFE98 3C 04 FE 00 */ addis r0, r4, 0xfe00
/* 802AFE9C 28 00 00 00 */ cmplwi r0, 0
/* 802AFEA0 40 82 00 28 */ bne lbl_802AFEC8
/* 802AFEA4 28 03 00 00 */ cmplwi r3, 0
/* 802AFEA8 41 82 00 08 */ beq lbl_802AFEB0
/* 802AFEAC 4B FF 26 ED */ bl stop__8JAISoundFv
lbl_802AFEB0:
/* 802AFEB0 7F E3 FB 78 */ mr r3, r31
/* 802AFEB4 3C 80 01 00 */ lis r4, 0x0100 /* 0x010000A9@ha */
/* 802AFEB8 38 84 00 A9 */ addi r4, r4, 0x00A9 /* 0x010000A9@l */
/* 802AFEBC 38 A0 00 00 */ li r5, 0
/* 802AFEC0 38 C0 00 00 */ li r6, 0
/* 802AFEC4 4B FF F1 4D */ bl bgmStart__8Z2SeqMgrFUlUll
lbl_802AFEC8:
/* 802AFEC8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802AFECC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802AFED0 7C 08 03 A6 */ mtlr r0
/* 802AFED4 38 21 00 20 */ addi r1, r1, 0x20
/* 802AFED8 4E 80 00 20 */ blr
@@ -1,52 +0,0 @@
lbl_802AFEDC:
/* 802AFEDC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802AFEE0 7C 08 02 A6 */ mflr r0
/* 802AFEE4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802AFEE8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802AFEEC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802AFEF0 7C 7E 1B 78 */ mr r30, r3
/* 802AFEF4 7C 9F 23 78 */ mr r31, r4
/* 802AFEF8 80 83 00 0C */ lwz r4, 0xc(r3)
/* 802AFEFC 28 04 00 00 */ cmplwi r4, 0
/* 802AFF00 41 82 00 10 */ beq lbl_802AFF10
/* 802AFF04 80 64 00 18 */ lwz r3, 0x18(r4)
/* 802AFF08 90 61 00 0C */ stw r3, 0xc(r1)
/* 802AFF0C 48 00 00 08 */ b lbl_802AFF14
lbl_802AFF10:
/* 802AFF10 38 60 FF FF */ li r3, -1
lbl_802AFF14:
/* 802AFF14 3C 03 FE 00 */ addis r0, r3, 0xfe00
/* 802AFF18 28 00 00 3F */ cmplwi r0, 0x3f
/* 802AFF1C 41 82 00 28 */ beq lbl_802AFF44
/* 802AFF20 28 04 00 00 */ cmplwi r4, 0
/* 802AFF24 41 82 00 10 */ beq lbl_802AFF34
/* 802AFF28 80 64 00 18 */ lwz r3, 0x18(r4)
/* 802AFF2C 90 61 00 08 */ stw r3, 8(r1)
/* 802AFF30 48 00 00 08 */ b lbl_802AFF38
lbl_802AFF34:
/* 802AFF34 38 60 FF FF */ li r3, -1
lbl_802AFF38:
/* 802AFF38 3C 03 FE 00 */ addis r0, r3, 0xfe00
/* 802AFF3C 28 00 00 5C */ cmplwi r0, 0x5c
/* 802AFF40 40 82 00 18 */ bne lbl_802AFF58
lbl_802AFF44:
/* 802AFF44 80 6D 85 FC */ lwz r3, __OSReport_disable-0x1C(r13)
/* 802AFF48 3C 80 80 3A */ lis r4, Z2SeqMgr__stringBase0@ha /* 0x8039BA08@ha */
/* 802AFF4C 38 84 BA 08 */ addi r4, r4, Z2SeqMgr__stringBase0@l /* 0x8039BA08@l */
/* 802AFF50 38 84 02 76 */ addi r4, r4, 0x276
/* 802AFF54 48 00 62 95 */ bl setDemoName__11Z2StatusMgrFPc
lbl_802AFF58:
/* 802AFF58 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 802AFF5C 28 03 00 00 */ cmplwi r3, 0
/* 802AFF60 41 82 00 0C */ beq lbl_802AFF6C
/* 802AFF64 7F E4 FB 78 */ mr r4, r31
/* 802AFF68 4B FF 25 75 */ bl stop__8JAISoundFUl
lbl_802AFF6C:
/* 802AFF6C 38 7E 00 0C */ addi r3, r30, 0xc
/* 802AFF70 4B FF 22 15 */ bl releaseSound__14JAISoundHandleFv
/* 802AFF74 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802AFF78 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802AFF7C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802AFF80 7C 08 03 A6 */ mtlr r0
/* 802AFF84 38 21 00 20 */ addi r1, r1, 0x20
/* 802AFF88 4E 80 00 20 */ blr
@@ -1,48 +0,0 @@
lbl_802B3EAC:
/* 802B3EAC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B3EB0 80 A3 00 00 */ lwz r5, 0(r3)
/* 802B3EB4 28 05 00 00 */ cmplwi r5, 0
/* 802B3EB8 41 82 00 10 */ beq lbl_802B3EC8
/* 802B3EBC 80 05 00 18 */ lwz r0, 0x18(r5)
/* 802B3EC0 90 01 00 10 */ stw r0, 0x10(r1)
/* 802B3EC4 48 00 00 08 */ b lbl_802B3ECC
lbl_802B3EC8:
/* 802B3EC8 38 00 FF FF */ li r0, -1
lbl_802B3ECC:
/* 802B3ECC 7C 04 00 40 */ cmplw r4, r0
/* 802B3ED0 40 82 00 0C */ bne lbl_802B3EDC
/* 802B3ED4 38 60 00 01 */ li r3, 1
/* 802B3ED8 48 00 00 60 */ b lbl_802B3F38
lbl_802B3EDC:
/* 802B3EDC 80 A3 00 04 */ lwz r5, 4(r3)
/* 802B3EE0 28 05 00 00 */ cmplwi r5, 0
/* 802B3EE4 41 82 00 10 */ beq lbl_802B3EF4
/* 802B3EE8 80 05 00 18 */ lwz r0, 0x18(r5)
/* 802B3EEC 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B3EF0 48 00 00 08 */ b lbl_802B3EF8
lbl_802B3EF4:
/* 802B3EF4 38 00 FF FF */ li r0, -1
lbl_802B3EF8:
/* 802B3EF8 7C 04 00 40 */ cmplw r4, r0
/* 802B3EFC 40 82 00 0C */ bne lbl_802B3F08
/* 802B3F00 38 60 00 01 */ li r3, 1
/* 802B3F04 48 00 00 34 */ b lbl_802B3F38
lbl_802B3F08:
/* 802B3F08 80 63 00 0C */ lwz r3, 0xc(r3)
/* 802B3F0C 28 03 00 00 */ cmplwi r3, 0
/* 802B3F10 41 82 00 10 */ beq lbl_802B3F20
/* 802B3F14 80 03 00 18 */ lwz r0, 0x18(r3)
/* 802B3F18 90 01 00 08 */ stw r0, 8(r1)
/* 802B3F1C 48 00 00 08 */ b lbl_802B3F24
lbl_802B3F20:
/* 802B3F20 38 00 FF FF */ li r0, -1
lbl_802B3F24:
/* 802B3F24 7C 04 00 40 */ cmplw r4, r0
/* 802B3F28 40 82 00 0C */ bne lbl_802B3F34
/* 802B3F2C 38 60 00 01 */ li r3, 1
/* 802B3F30 48 00 00 08 */ b lbl_802B3F38
lbl_802B3F34:
/* 802B3F34 38 60 00 00 */ li r3, 0
lbl_802B3F38:
/* 802B3F38 38 21 00 20 */ addi r1, r1, 0x20
/* 802B3F3C 4E 80 00 20 */ blr
@@ -1,72 +0,0 @@
lbl_802B545C:
/* 802B545C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B5460 7C 08 02 A6 */ mflr r0
/* 802B5464 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B5468 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B546C 7C 7F 1B 78 */ mr r31, r3
/* 802B5470 80 6D 86 00 */ lwz r3, __OSReport_disable-0x18(r13)
/* 802B5474 88 03 00 1D */ lbz r0, 0x1d(r3)
/* 802B5478 28 00 00 00 */ cmplwi r0, 0
/* 802B547C 41 82 00 DC */ beq lbl_802B5558
/* 802B5480 88 1F 00 D0 */ lbz r0, 0xd0(r31)
/* 802B5484 54 00 F7 FF */ rlwinm. r0, r0, 0x1e, 0x1f, 0x1f
/* 802B5488 41 82 00 D0 */ beq lbl_802B5558
/* 802B548C 80 6D 85 FC */ lwz r3, __OSReport_disable-0x1C(r13)
/* 802B5490 48 00 12 A5 */ bl checkDayTime__11Z2StatusMgrFv
/* 802B5494 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802B5498 41 82 00 8C */ beq lbl_802B5524
/* 802B549C 3C 00 01 00 */ lis r0, 0x100
/* 802B54A0 90 01 00 0C */ stw r0, 0xc(r1)
/* 802B54A4 80 6D 85 E0 */ lwz r3, __OSReport_disable-0x38(r13)
/* 802B54A8 38 81 00 0C */ addi r4, r1, 0xc
/* 802B54AC 7F E5 FB 78 */ mr r5, r31
/* 802B54B0 38 C0 00 00 */ li r6, 0
/* 802B54B4 81 83 00 00 */ lwz r12, 0(r3)
/* 802B54B8 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B54BC 7D 89 03 A6 */ mtctr r12
/* 802B54C0 4E 80 04 21 */ bctrl
/* 802B54C4 7F E3 FB 78 */ mr r3, r31
/* 802B54C8 38 80 00 00 */ li r4, 0
/* 802B54CC 4B FF AA C1 */ bl changeBgmStatus__8Z2SeqMgrFl
/* 802B54D0 38 80 00 00 */ li r4, 0
/* 802B54D4 98 9F 00 C4 */ stb r4, 0xc4(r31)
/* 802B54D8 80 6D 8D E0 */ lwz r3, mLinkPtr__14Z2CreatureLink(r13)
/* 802B54DC 88 03 00 CB */ lbz r0, 0xcb(r3)
/* 802B54E0 54 00 FF FF */ rlwinm. r0, r0, 0x1f, 0x1f, 0x1f
/* 802B54E4 41 82 00 24 */ beq lbl_802B5508
/* 802B54E8 38 60 00 01 */ li r3, 1
/* 802B54EC 88 1F 00 D0 */ lbz r0, 0xd0(r31)
/* 802B54F0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c
/* 802B54F4 98 1F 00 D0 */ stb r0, 0xd0(r31)
/* 802B54F8 98 9F 00 C3 */ stb r4, 0xc3(r31)
/* 802B54FC 7F E3 FB 78 */ mr r3, r31
/* 802B5500 48 00 00 6D */ bl fieldRidingMute__8Z2SeqMgrFv
/* 802B5504 48 00 00 54 */ b lbl_802B5558
lbl_802B5508:
/* 802B5508 88 1F 00 D0 */ lbz r0, 0xd0(r31)
/* 802B550C 50 80 1F 38 */ rlwimi r0, r4, 3, 0x1c, 0x1c
/* 802B5510 98 1F 00 D0 */ stb r0, 0xd0(r31)
/* 802B5514 98 9F 00 C3 */ stb r4, 0xc3(r31)
/* 802B5518 7F E3 FB 78 */ mr r3, r31
/* 802B551C 48 00 00 51 */ bl fieldRidingMute__8Z2SeqMgrFv
/* 802B5520 48 00 00 38 */ b lbl_802B5558
lbl_802B5524:
/* 802B5524 3C 60 01 00 */ lis r3, 0x0100 /* 0x01000001@ha */
/* 802B5528 38 03 00 01 */ addi r0, r3, 0x0001 /* 0x01000001@l */
/* 802B552C 90 01 00 08 */ stw r0, 8(r1)
/* 802B5530 80 6D 85 E0 */ lwz r3, __OSReport_disable-0x38(r13)
/* 802B5534 38 81 00 08 */ addi r4, r1, 8
/* 802B5538 7F E5 FB 78 */ mr r5, r31
/* 802B553C 38 C0 00 00 */ li r6, 0
/* 802B5540 81 83 00 00 */ lwz r12, 0(r3)
/* 802B5544 81 8C 00 08 */ lwz r12, 8(r12)
/* 802B5548 7D 89 03 A6 */ mtctr r12
/* 802B554C 4E 80 04 21 */ bctrl
/* 802B5550 38 00 00 00 */ li r0, 0
/* 802B5554 98 1F 00 BC */ stb r0, 0xbc(r31)
lbl_802B5558:
/* 802B5558 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B555C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B5560 7C 08 03 A6 */ mtlr r0
/* 802B5564 38 21 00 20 */ addi r1, r1, 0x20
/* 802B5568 4E 80 00 20 */ blr
@@ -1,20 +0,0 @@
lbl_802B5750:
/* 802B5750 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B5754 7C 08 02 A6 */ mflr r0
/* 802B5758 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B575C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802B5760 7C 7F 1B 78 */ mr r31, r3
/* 802B5764 7F E4 FB 78 */ mr r4, r31
/* 802B5768 38 A0 00 05 */ li r5, 5
/* 802B576C 4B FF E7 D5 */ bl getChildTrackVolume__8Z2SeqMgrFP14JAISoundHandlei
/* 802B5770 D0 3F 00 C8 */ stfs f1, 0xc8(r31)
/* 802B5774 7F E3 FB 78 */ mr r3, r31
/* 802B5778 7F E4 FB 78 */ mr r4, r31
/* 802B577C 38 A0 00 0C */ li r5, 0xc
/* 802B5780 4B FF E7 C1 */ bl getChildTrackVolume__8Z2SeqMgrFP14JAISoundHandlei
/* 802B5784 D0 3F 00 CC */ stfs f1, 0xcc(r31)
/* 802B5788 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802B578C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B5790 7C 08 03 A6 */ mtlr r0
/* 802B5794 38 21 00 10 */ addi r1, r1, 0x10
/* 802B5798 4E 80 00 20 */ blr
@@ -1,17 +0,0 @@
lbl_802B4128:
/* 802B4128 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802B412C 7C 08 02 A6 */ mflr r0
/* 802B4130 90 01 00 14 */ stw r0, 0x14(r1)
/* 802B4134 80 6D 85 C8 */ lwz r3, __OSReport_disable-0x50(r13)
/* 802B4138 28 03 00 00 */ cmplwi r3, 0
/* 802B413C 41 82 00 18 */ beq lbl_802B4154
/* 802B4140 38 80 00 00 */ li r4, 0
/* 802B4144 38 A0 02 BC */ li r5, 0x2bc
/* 802B4148 38 C0 04 4C */ li r6, 0x44c
/* 802B414C 38 E0 05 DC */ li r7, 0x5dc
/* 802B4150 48 00 B8 31 */ bl setForceBattleArea__13Z2SoundObjMgrFbUsUsUs
lbl_802B4154:
/* 802B4154 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802B4158 7C 08 03 A6 */ mtlr r0
/* 802B415C 38 21 00 10 */ addi r1, r1, 0x10
/* 802B4160 4E 80 00 20 */ blr
@@ -1,53 +0,0 @@
lbl_802B4164:
/* 802B4164 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802B4168 7C 08 02 A6 */ mflr r0
/* 802B416C 90 01 00 24 */ stw r0, 0x24(r1)
/* 802B4170 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802B4174 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802B4178 7C 7E 1B 78 */ mr r30, r3
/* 802B417C 7C 9F 23 78 */ mr r31, r4
/* 802B4180 88 03 00 D0 */ lbz r0, 0xd0(r3)
/* 802B4184 54 03 E7 FE */ rlwinm r3, r0, 0x1c, 0x1f, 0x1f
/* 802B4188 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 802B418C 7C 03 00 40 */ cmplw r3, r0
/* 802B4190 41 82 00 68 */ beq lbl_802B41F8
/* 802B4194 28 00 00 00 */ cmplwi r0, 0
/* 802B4198 41 82 00 60 */ beq lbl_802B41F8
/* 802B419C 80 9E 00 04 */ lwz r4, 4(r30)
/* 802B41A0 28 04 00 00 */ cmplwi r4, 0
/* 802B41A4 41 82 00 10 */ beq lbl_802B41B4
/* 802B41A8 80 64 00 18 */ lwz r3, 0x18(r4)
/* 802B41AC 90 61 00 0C */ stw r3, 0xc(r1)
/* 802B41B0 48 00 00 08 */ b lbl_802B41B8
lbl_802B41B4:
/* 802B41B4 38 60 FF FF */ li r3, -1
lbl_802B41B8:
/* 802B41B8 3C 03 FF 00 */ addis r0, r3, 0xff00
/* 802B41BC 28 00 00 0F */ cmplwi r0, 0xf
/* 802B41C0 41 82 00 28 */ beq lbl_802B41E8
/* 802B41C4 28 04 00 00 */ cmplwi r4, 0
/* 802B41C8 41 82 00 10 */ beq lbl_802B41D8
/* 802B41CC 80 64 00 18 */ lwz r3, 0x18(r4)
/* 802B41D0 90 61 00 08 */ stw r3, 8(r1)
/* 802B41D4 48 00 00 08 */ b lbl_802B41DC
lbl_802B41D8:
/* 802B41D8 38 60 FF FF */ li r3, -1
lbl_802B41DC:
/* 802B41DC 3C 03 FF 00 */ addis r0, r3, 0xff00
/* 802B41E0 28 00 00 1B */ cmplwi r0, 0x1b
/* 802B41E4 40 82 00 14 */ bne lbl_802B41F8
lbl_802B41E8:
/* 802B41E8 7F C3 F3 78 */ mr r3, r30
/* 802B41EC 88 8D 82 E2 */ lbz r4, struct_80450862+0x0(r13)
/* 802B41F0 88 AD 82 E1 */ lbz r5, struct_80450861+0x0(r13)
/* 802B41F4 48 00 10 11 */ bl stopBattleBgm__8Z2SeqMgrFUcUc
lbl_802B41F8:
/* 802B41F8 88 1E 00 D0 */ lbz r0, 0xd0(r30)
/* 802B41FC 53 E0 26 F6 */ rlwimi r0, r31, 4, 0x1b, 0x1b
/* 802B4200 98 1E 00 D0 */ stb r0, 0xd0(r30)
/* 802B4204 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802B4208 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802B420C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802B4210 7C 08 03 A6 */ mtlr r0
/* 802B4214 38 21 00 20 */ addi r1, r1, 0x20
/* 802B4218 4E 80 00 20 */ blr
@@ -1,5 +0,0 @@
lbl_802B43D0:
/* 802B43D0 88 03 00 D0 */ lbz r0, 0xd0(r3)
/* 802B43D4 50 80 3E 30 */ rlwimi r0, r4, 7, 0x18, 0x18
/* 802B43D8 98 03 00 D0 */ stb r0, 0xd0(r3)
/* 802B43DC 4E 80 00 20 */ blr
@@ -1,5 +0,0 @@
lbl_802B3398:
/* 802B3398 88 03 00 D0 */ lbz r0, 0xd0(r3)
/* 802B339C 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f
/* 802B33A0 98 03 00 D0 */ stb r0, 0xd0(r3)
/* 802B33A4 4E 80 00 20 */ blr
+9 -6
View File
@@ -51,7 +51,7 @@ struct JAISoundStatus_ {
bool isDead() { return state.unk == 6;} bool isDead() { return state.unk == 6;}
inline bool isPlaying() { return state.unk == 5; } inline bool isPlaying() { return state.unk == 5; }
bool isPrepared() { return state.unk >= 3; }
inline bool isMute() { return field_0x0.flags.mute; } inline bool isMute() { return field_0x0.flags.mute; }
inline bool isPaused() { return field_0x0.flags.paused; } inline bool isPaused() { return field_0x0.flags.paused; }
void pauseWhenOut() { void pauseWhenOut() {
@@ -97,7 +97,7 @@ struct JAISoundStatus_ {
} flags; } flags;
} state; } state;
/* 0x4 */ u32 user_data; /* 0x4 */ u32 user_data;
}; // Size: 0x6 }; // Size: 0x8
struct JAISoundFader { struct JAISoundFader {
void forceIn() { void forceIn() {
@@ -236,10 +236,14 @@ public:
bool isHandleAttached() const { return handle_ != NULL; } bool isHandleAttached() const { return handle_ != NULL; }
bool hasLifeTime() const { return status_.field_0x1.flags.flag2; } bool hasLifeTime() const { return status_.field_0x1.flags.flag2; }
void removeLifeTime_() { status_.field_0x1.flags.flag1 = false; } void removeLifeTime_() { status_.field_0x1.flags.flag1 = false; }
bool isPrepared() { return status_.isPrepared(); }
void unlockIfLocked() { status_.unlockIfLocked(); }
void lockWhenPrepared() { status_.lockWhenPrepared(); }
void stop_JAISound_() { void stop_JAISound_() {
status_.state.flags.flag5 = 0; status_.state.flags.flag5 = 0;
status_.state.flags.flag1 = 1; status_.state.flags.flag1 = 1;
} }
bool isStopping() { bool isStopping() {
bool isStopping = false; bool isStopping = false;
if (status_.state.flags.flag1) { if (status_.state.flags.flag1) {
@@ -278,10 +282,9 @@ public:
return audible_ != NULL; return audible_ != NULL;
} }
void fadeIn(u32 param_1) { JAISoundFader& getFader() { return fader; }
fader.fadeInFromOut(param_1); void fadeIn(u32 i_count) { fader.fadeInFromOut(i_count); }
return; void fadeOut(u32 i_count) { fader.fadeOut(i_count); }
}
JAISoundParamsProperty& getProperty() { return params.mProperty; } JAISoundParamsProperty& getProperty() { return params.mProperty; }
+8 -8
View File
@@ -18,32 +18,32 @@ struct JAISoundParamsProperty {
struct JAISoundParamsTransition { struct JAISoundParamsTransition {
struct TTransition { struct TTransition {
void zero() { void zero() {
field_0x0 = 0.0f; mStep = 0.0f;
mCount = 0; mCount = 0;
field_0x4 = 0.0f; mDest = 0.0f;
} }
void set(f32 newValue, f32 intensity, u32 fadeCount) { void set(f32 newValue, f32 intensity, u32 fadeCount) {
mCount = fadeCount; mCount = fadeCount;
field_0x0 = (newValue - intensity) / mCount; mStep = (newValue - intensity) / mCount;
field_0x4 = newValue; mDest = newValue;
} }
f32 apply(f32 param_0) { f32 apply(f32 param_0) {
if (mCount > 1) { if (mCount > 1) {
mCount--; mCount--;
param_0 += field_0x0; param_0 += mStep;
} else { } else {
if (mCount == 1) { if (mCount == 1) {
mCount = 0; mCount = 0;
param_0 = field_0x4; param_0 = mDest;
} }
} }
return param_0; return param_0;
} }
/* 0x0 */ f32 field_0x0; /* 0x0 */ f32 mStep;
/* 0x4 */ f32 field_0x4; /* 0x4 */ f32 mDest;
/* 0x8 */ u32 mCount; /* 0x8 */ u32 mCount;
}; // Size: 0xC }; // Size: 0xC
+1
View File
@@ -81,6 +81,7 @@ public:
void i_setLinkState(u8 i_state) { mLinkState = i_state; } void i_setLinkState(u8 i_state) { mLinkState = i_state; }
Z2SoundObjSimple& getKantera() { return mKantera; } Z2SoundObjSimple& getKantera() { return mKantera; }
u8 getLinkHp() const { return mLinkHp; } u8 getLinkHp() const { return mLinkHp; }
u8 getMovingTime() { return mMovingTime; }
static Z2CreatureLink* mLinkPtr; static Z2CreatureLink* mLinkPtr;
+1
View File
@@ -54,5 +54,6 @@ extern u8 struct_80450868;
extern u8 struct_80450869; extern u8 struct_80450869;
extern u8 struct_8045086A; extern u8 struct_8045086A;
extern u8 struct_8045086B; extern u8 struct_8045086B;
extern u8 data_8045086C;
#endif /* Z2PARAM_H */ #endif /* Z2PARAM_H */
+2
View File
@@ -32,7 +32,9 @@ public:
bool isSceneExist() const { return sceneExist; } bool isSceneExist() const { return sceneExist; }
int getCurrentSceneNum() const { return sceneNum; } int getCurrentSceneNum() const { return sceneNum; }
s8 getCurrentRoomNum() { return roomNum; }
bool isInGame() const { return inGame; } bool isInGame() const { return inGame; }
void setInGame(bool i_inGame) { inGame = i_inGame; }
bool isInDarkness() const { return inDarkness; } bool isInDarkness() const { return inDarkness; }
s8 getRoomReverb() const { return dComIfGp_getReverb(roomNum); } s8 getRoomReverb() const { return dComIfGp_getReverb(roomNum); }
+97 -28
View File
@@ -4,13 +4,6 @@
#include "JSystem/JAudio2/JAISoundHandles.h" #include "JSystem/JAudio2/JAISoundHandles.h"
#include "JSystem/JAudio2/JASGadget.h" #include "JSystem/JAudio2/JASGadget.h"
// move TTransition / Z2SoundFader ?
struct TTransition {
/* 0x0 */ float field_0x0;
/* 0x4 */ float field_0x4;
/* 0x8 */ u32 mCount;
}; // Size = 0xC
struct Z2SoundFader { struct Z2SoundFader {
void move(f32 vol, u32 count) { void move(f32 vol, u32 count) {
if (count != 0) { if (count != 0) {
@@ -21,6 +14,61 @@ struct Z2SoundFader {
} }
} }
void forceIn() {
mIntensity = 1.0f;
mTransition.zero();
}
void forceOut() {
mIntensity = 0.0f;
mTransition.zero();
}
void fadeIn(u32 count) {
if (count != 0) {
mTransition.set(1.0f, mIntensity, count);
} else {
forceIn();
}
}
void fadeOut(u32 count) {
if (count != 0) {
mTransition.set(0.0f, mIntensity, count);
} else {
forceOut();
}
}
void fadeInFromOut(u32 count) {
mIntensity = 0.0f;
fadeIn(count);
}
u32 getCount() {
return mTransition.mCount;
}
f32 getIntensity() {
return mIntensity;
}
f32 getDest() {
if (getCount() != 0) {
return mTransition.mDest;
} else {
return mIntensity;
}
}
void calc() {
mIntensity = mTransition.apply(mIntensity);
}
f32 get() {
return getIntensity();
}
/* 0x0 */ float mIntensity; /* 0x0 */ float mIntensity;
/* 0x4 */ JAISoundParamsTransition::TTransition mTransition; /* 0x4 */ JAISoundParamsTransition::TTransition mTransition;
}; // Size = 0x10 }; // Size = 0x10
@@ -35,7 +83,7 @@ public:
void subBgmStop(); void subBgmStop();
void subBgmStopInner(); void subBgmStopInner();
void bgmStreamPrepare(u32); void bgmStreamPrepare(u32);
int bgmStreamCheckReady(); bool bgmStreamCheckReady();
void bgmStreamPlay(); void bgmStreamPlay();
void bgmStreamStop(u32); void bgmStreamStop(u32);
void changeBgmStatus(s32); void changeBgmStatus(s32);
@@ -52,7 +100,7 @@ public:
void setTimeProcVolMod(bool, u32); void setTimeProcVolMod(bool, u32);
void processBgmFramework(); void processBgmFramework();
bool checkBgmIDPlaying(u32); bool checkBgmIDPlaying(u32);
void getChildTrackVolume(JAISoundHandle*, int); f32 getChildTrackVolume(JAISoundHandle*, int);
void setChildTrackVolume(JAISoundHandle*, int, float, u32, float, float); void setChildTrackVolume(JAISoundHandle*, int, float, u32, float, float);
void resetBattleBgmParams(); void resetBattleBgmParams();
void setBattleBgmOff(bool); void setBattleBgmOff(bool);
@@ -90,20 +138,24 @@ public:
void i_bgmAllUnMute(u32 count) { mAllBgmMaster.move(1.0f, count); } void i_bgmAllUnMute(u32 count) { mAllBgmMaster.move(1.0f, count); }
void i_muteSceneBgm(u32 count, f32 vol) { void i_muteSceneBgm(u32 count, f32 vol) {
field_0x44.move(vol, count); mSceneBgm.move(vol, count);
} }
void i_unMuteSceneBgm(u32 count) { void i_unMuteSceneBgm(u32 count) {
mBgmPause.move(1.0f, 0); mBgmPause.move(1.0f, 0);
field_0x44.move(1.0f, count); mSceneBgm.move(1.0f, count);
} }
void bgmAllMute(u32 count, f32 val) { void bgmAllMute(u32 count, f32 val) {
mAllBgmMaster.mTransition.set(val, mAllBgmMaster.mIntensity, count); mAllBgmMaster.mTransition.set(val, mAllBgmMaster.mIntensity, count);
} }
void bgmAllUnMute(u32 count) {
mAllBgmMaster.move(1.0f, count);
}
bool isItemGetDemo() { bool isItemGetDemo() {
return field_0x08.isSoundAttached() || field_0xba != 0; return mFanfareHandle.isSoundAttached() || mFanfareCount != 0;
} }
u32 getMainBgmID() { u32 getMainBgmID() {
@@ -122,39 +174,56 @@ public:
return -1; return -1;
} }
u32 getStreamBgmID() {
if (mStreamBgmHandle) {
return mStreamBgmHandle->getID();
}
return -1;
}
JAISoundHandle* getMainBgmHandle() { return &mMainBgmHandle; } JAISoundHandle* getMainBgmHandle() { return &mMainBgmHandle; }
/* 0x00 */ JAISoundHandle mMainBgmHandle; /* 0x00 */ JAISoundHandle mMainBgmHandle;
/* 0x04 */ JAISoundHandle mSubBgmHandle; /* 0x04 */ JAISoundHandle mSubBgmHandle;
/* 0x08 */ JAISoundHandle field_0x08; /* 0x08 */ JAISoundHandle mFanfareHandle;
/* 0x0C */ JAISoundHandle field_0x0c; /* 0x0C */ JAISoundHandle mStreamBgmHandle;
/* 0x10 */ JAISoundID field_0x10; /* 0x10 */ JAISoundID mFanfareID;
/* 0x14 */ Z2SoundFader mMainBgmMaster; /* 0x14 */ Z2SoundFader mMainBgmMaster;
/* 0x24 */ Z2SoundFader mSubBgmMaster; /* 0x24 */ Z2SoundFader mSubBgmMaster;
/* 0x34 */ Z2SoundFader mBgmPause; /* 0x34 */ Z2SoundFader mBgmPause;
/* 0x44 */ Z2SoundFader field_0x44; /* 0x44 */ Z2SoundFader mSceneBgm;
/* 0x54 */ Z2SoundFader mFanfareMute; /* 0x54 */ Z2SoundFader mFanfareMute;
/* 0x64 */ Z2SoundFader field_0x64; /* 0x64 */ Z2SoundFader mStreamBgmMaster;
/* 0x74 */ Z2SoundFader mAllBgmMaster; /* 0x74 */ Z2SoundFader mAllBgmMaster;
/* 0x84 */ Z2SoundFader field_0x84; /* 0x84 */ Z2SoundFader field_0x84;
/* 0x94 */ Z2SoundFader mWindStone; /* 0x94 */ Z2SoundFader mWindStone;
/* 0xA4 */ Z2SoundFader field_0xa4; /* 0xA4 */ Z2SoundFader field_0xa4;
/* 0xB4 */ f32 mTwilightGateVol; /* 0xB4 */ f32 mTwilightGateVol;
/* 0xB8 */ u16 field_0xb8; /* 0xB8 */ s16 field_0xb8;
/* 0xBA */ u8 field_0xba; /* 0xBA */ u8 mFanfareCount;
/* 0xBB */ u8 field_0xbb; /* 0xBB */ u8 mDekuToadCount;
/* 0xBC */ u8 field_0xbc; /* 0xBC */ u8 mBgmStatus;
/* 0xBD */ u8 field_0xbd; /* 0xBD */ u8 mSubBgmStatus;
/* 0xBE */ u8 field_0xbe; /* 0xBE */ u8 mBattleDistState;
/* 0xBF */ u8 field_0xbf; /* 0xBF */ u8 mBattleSeqState;
/* 0xC0 */ u8 field_0xc0; /* 0xC0 */ u8 mBattleSeqCount;
/* 0xC1 */ u8 field_0xc1; /* 0xC1 */ u8 field_0xc1;
/* 0xC2 */ u8 field_0xc2; /* 0xC2 */ u8 mBattleLastHit;
/* 0xC3 */ u8 field_0xc3; /* 0xC3 */ u8 mRideCount;
/* 0xC4 */ u8 field_0xc4; /* 0xC4 */ u8 field_0xc4;
/* 0xC8 */ f32 field_0xc8; /* 0xC8 */ f32 field_0xc8;
/* 0xCC */ f32 field_0xcc; /* 0xCC */ f32 field_0xcc;
/* 0xD0 */ u8 mFlags; /* 0xD0 */ struct {
bool mBattleDistIgnore : 1;
bool flag1 : 1;
bool mBattleSearched : 1;
bool mBattleBgmOff : 1;
bool mRiding : 1;
bool flag5 : 1;
bool flag6 : 1;
bool flag7 : 1;
} mFlags;
}; // Size = 0xD4 }; // Size = 0xD4
inline Z2SeqMgr* Z2GetSeqMgr() { inline Z2SeqMgr* Z2GetSeqMgr() {
+1 -1
View File
@@ -25,7 +25,7 @@ public:
/* 802AA9E8 */ void multiVolumeSoundID(JAISoundID, f32); /* 802AA9E8 */ void multiVolumeSoundID(JAISoundID, f32);
/* 802AAAC4 */ void isPlayingSoundID(JAISoundID); /* 802AAAC4 */ void isPlayingSoundID(JAISoundID);
/* 802A9EE8 */ virtual int startSound(JAISoundID, JAISoundHandle*, /* 802A9EE8 */ virtual bool startSound(JAISoundID, JAISoundHandle*,
JGeometry::TVec3<f32> const*); JGeometry::TVec3<f32> const*);
JAISeMgr* getSeMgr() { return &mSeMgr; } JAISeMgr* getSeMgr() { return &mSeMgr; }
+1
View File
@@ -30,6 +30,7 @@ public:
bool removeEnemy(JSULink<Z2CreatureEnemy>*); bool removeEnemy(JSULink<Z2CreatureEnemy>*);
u8 isTwilightBattle(); u8 isTwilightBattle();
u8 getEnemyNumVeryFar() { return mEnemyNumVeryFar; }
bool isForceBattle() { return mForceBattle; } bool isForceBattle() { return mForceBattle; }
JSUList<Z2CreatureEnemy>* getEnemyList() { return this; } JSUList<Z2CreatureEnemy>* getEnemyList() { return this; }
+4
View File
@@ -15,4 +15,8 @@ struct Z2SoundStarter : public JAISoundStarter, public JASGlobalInstance<Z2Sound
float, float, float, float, u32); float, float, float, float, u32);
}; };
inline Z2SoundStarter* Z2GetSoundStarter() {
return JASGlobalInstance<Z2SoundStarter>::getInstance();
}
#endif /* Z2SOUNDSTARTER_H */ #endif /* Z2SOUNDSTARTER_H */

Some files were not shown because too many files have changed in this diff Show More