diff --git a/asm/Z2AudioLib/Z2SoundInfo/__dt__11Z2SoundInfoFv.s b/asm/Z2AudioLib/Z2SoundInfo/__dt__11Z2SoundInfoFv.s deleted file mode 100644 index 46b19eaf7cc..00000000000 --- a/asm/Z2AudioLib/Z2SoundInfo/__dt__11Z2SoundInfoFv.s +++ /dev/null @@ -1,60 +0,0 @@ -lbl_802BBBE0: -/* 802BBBE0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802BBBE4 7C 08 02 A6 */ mflr r0 -/* 802BBBE8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802BBBEC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802BBBF0 93 C1 00 08 */ stw r30, 8(r1) -/* 802BBBF4 7C 7E 1B 79 */ or. r30, r3, r3 -/* 802BBBF8 7C 9F 23 78 */ mr r31, r4 -/* 802BBBFC 41 82 00 A4 */ beq lbl_802BBCA0 -/* 802BBC00 3C 60 80 3D */ lis r3, __vt__11Z2SoundInfo@ha /* 0x803CAC48@ha */ -/* 802BBC04 38 63 AC 48 */ addi r3, r3, __vt__11Z2SoundInfo@l /* 0x803CAC48@l */ -/* 802BBC08 90 7E 00 00 */ stw r3, 0(r30) -/* 802BBC0C 38 03 00 24 */ addi r0, r3, 0x24 -/* 802BBC10 90 1E 00 04 */ stw r0, 4(r30) -/* 802BBC14 38 03 00 34 */ addi r0, r3, 0x34 -/* 802BBC18 90 1E 00 08 */ stw r0, 8(r30) -/* 802BBC1C 34 1E 00 0C */ addic. r0, r30, 0xc -/* 802BBC20 41 82 00 24 */ beq lbl_802BBC44 -/* 802BBC24 34 7E 00 0C */ addic. r3, r30, 0xc -/* 802BBC28 41 82 00 08 */ beq lbl_802BBC30 -/* 802BBC2C 38 63 FF F4 */ addi r3, r3, -12 -lbl_802BBC30: -/* 802BBC30 80 0D 85 CC */ lwz r0, __OSReport_disable-0x4C(r13) -/* 802BBC34 7C 00 18 40 */ cmplw r0, r3 -/* 802BBC38 40 82 00 0C */ bne lbl_802BBC44 -/* 802BBC3C 38 00 00 00 */ li r0, 0 -/* 802BBC40 90 0D 85 CC */ stw r0, __OSReport_disable-0x4C(r13) -lbl_802BBC44: -/* 802BBC44 38 7E 00 08 */ addi r3, r30, 8 -/* 802BBC48 38 80 00 00 */ li r4, 0 -/* 802BBC4C 4B FE 7E 8D */ bl __dt__16JAIStreamDataMgrFv -/* 802BBC50 34 1E 00 04 */ addic. r0, r30, 4 -/* 802BBC54 41 82 00 30 */ beq lbl_802BBC84 -/* 802BBC58 3C 60 80 3A */ lis r3, __vt__12JAUSoundInfo@ha /* 0x803A2F4C@ha */ -/* 802BBC5C 38 03 2F 4C */ addi r0, r3, __vt__12JAUSoundInfo@l /* 0x803A2F4C@l */ -/* 802BBC60 90 1E 00 04 */ stw r0, 4(r30) -/* 802BBC64 34 1E 00 04 */ addic. r0, r30, 4 -/* 802BBC68 41 82 00 1C */ beq lbl_802BBC84 -/* 802BBC6C 80 6D 85 D0 */ lwz r3, __OSReport_disable-0x48(r13) -/* 802BBC70 38 1E 00 04 */ addi r0, r30, 4 -/* 802BBC74 7C 03 00 40 */ cmplw r3, r0 -/* 802BBC78 40 82 00 0C */ bne lbl_802BBC84 -/* 802BBC7C 38 00 00 00 */ li r0, 0 -/* 802BBC80 90 0D 85 D0 */ stw r0, __OSReport_disable-0x48(r13) -lbl_802BBC84: -/* 802BBC84 7F C3 F3 78 */ mr r3, r30 -/* 802BBC88 38 80 00 00 */ li r4, 0 -/* 802BBC8C 4B FE 70 C5 */ bl __dt__12JAISoundInfoFv -/* 802BBC90 7F E0 07 35 */ extsh. r0, r31 -/* 802BBC94 40 81 00 0C */ ble lbl_802BBCA0 -/* 802BBC98 7F C3 F3 78 */ mr r3, r30 -/* 802BBC9C 48 01 30 A1 */ bl __dl__FPv -lbl_802BBCA0: -/* 802BBCA0 7F C3 F3 78 */ mr r3, r30 -/* 802BBCA4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802BBCA8 83 C1 00 08 */ lwz r30, 8(r1) -/* 802BBCAC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802BBCB0 7C 08 03 A6 */ mtlr r0 -/* 802BBCB4 38 21 00 10 */ addi r1, r1, 0x10 -/* 802BBCB8 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundInfo/getAudibleSwFull__11Z2SoundInfoF10JAISoundID.s b/asm/Z2AudioLib/Z2SoundInfo/getAudibleSwFull__11Z2SoundInfoF10JAISoundID.s deleted file mode 100644 index 089d8f12623..00000000000 --- a/asm/Z2AudioLib/Z2SoundInfo/getAudibleSwFull__11Z2SoundInfoF10JAISoundID.s +++ /dev/null @@ -1,205 +0,0 @@ -lbl_802BB158: -/* 802BB158 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 802BB15C 7C 08 02 A6 */ mflr r0 -/* 802BB160 90 01 00 54 */ stw r0, 0x54(r1) -/* 802BB164 39 61 00 50 */ addi r11, r1, 0x50 -/* 802BB168 48 0A 70 71 */ bl _savegpr_28 -/* 802BB16C 7C 7E 1B 78 */ mr r30, r3 -/* 802BB170 7C 9F 23 78 */ mr r31, r4 -/* 802BB174 80 04 00 00 */ lwz r0, 0(r4) -/* 802BB178 90 01 00 34 */ stw r0, 0x34(r1) -/* 802BB17C 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BB180 38 81 00 34 */ addi r4, r1, 0x34 -/* 802BB184 4B FE BF DD */ bl getTypeID__13JAUSoundTableCF10JAISoundID -/* 802BB188 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 802BB18C 2C 00 00 51 */ cmpwi r0, 0x51 -/* 802BB190 41 82 00 08 */ beq lbl_802BB198 -/* 802BB194 48 00 02 2C */ b lbl_802BB3C0 -lbl_802BB198: -/* 802BB198 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB19C 90 01 00 30 */ stw r0, 0x30(r1) -/* 802BB1A0 7F C3 F3 78 */ mr r3, r30 -/* 802BB1A4 38 81 00 30 */ addi r4, r1, 0x30 -/* 802BB1A8 48 00 09 21 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB1AC 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB1B0 50 60 E6 36 */ rlwimi r0, r3, 0x1c, 0x18, 0x1b -/* 802BB1B4 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB1B8 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB1BC 90 01 00 2C */ stw r0, 0x2c(r1) -/* 802BB1C0 7F C3 F3 78 */ mr r3, r30 -/* 802BB1C4 38 81 00 2C */ addi r4, r1, 0x2c -/* 802BB1C8 48 00 09 01 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB1CC 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 802BB1D0 41 82 00 18 */ beq lbl_802BB1E8 -/* 802BB1D4 38 60 00 00 */ li r3, 0 -/* 802BB1D8 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB1DC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 802BB1E0 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB1E4 48 00 00 14 */ b lbl_802BB1F8 -lbl_802BB1E8: -/* 802BB1E8 38 60 00 01 */ li r3, 1 -/* 802BB1EC 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB1F0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 802BB1F4 98 01 00 38 */ stb r0, 0x38(r1) -lbl_802BB1F8: -/* 802BB1F8 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB1FC 90 01 00 28 */ stw r0, 0x28(r1) -/* 802BB200 7F C3 F3 78 */ mr r3, r30 -/* 802BB204 38 81 00 28 */ addi r4, r1, 0x28 -/* 802BB208 48 00 08 C1 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB20C 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e -/* 802BB210 41 82 00 18 */ beq lbl_802BB228 -/* 802BB214 38 60 00 00 */ li r3, 0 -/* 802BB218 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB21C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 802BB220 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB224 48 00 00 14 */ b lbl_802BB238 -lbl_802BB228: -/* 802BB228 38 60 00 01 */ li r3, 1 -/* 802BB22C 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB230 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 802BB234 98 01 00 38 */ stb r0, 0x38(r1) -lbl_802BB238: -/* 802BB238 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB23C 90 01 00 24 */ stw r0, 0x24(r1) -/* 802BB240 7F C3 F3 78 */ mr r3, r30 -/* 802BB244 38 81 00 24 */ addi r4, r1, 0x24 -/* 802BB248 48 00 08 81 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB24C 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d -/* 802BB250 41 82 00 18 */ beq lbl_802BB268 -/* 802BB254 38 60 00 00 */ li r3, 0 -/* 802BB258 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB25C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 802BB260 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB264 48 00 00 14 */ b lbl_802BB278 -lbl_802BB268: -/* 802BB268 38 60 00 01 */ li r3, 1 -/* 802BB26C 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB270 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 802BB274 98 01 00 38 */ stb r0, 0x38(r1) -lbl_802BB278: -/* 802BB278 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB27C 90 01 00 20 */ stw r0, 0x20(r1) -/* 802BB280 7F C3 F3 78 */ mr r3, r30 -/* 802BB284 38 81 00 20 */ addi r4, r1, 0x20 -/* 802BB288 48 00 08 41 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB28C 54 60 02 11 */ rlwinm. r0, r3, 0, 8, 8 -/* 802BB290 41 82 00 18 */ beq lbl_802BB2A8 -/* 802BB294 38 60 00 01 */ li r3, 1 -/* 802BB298 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB29C 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 802BB2A0 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB2A4 48 00 00 14 */ b lbl_802BB2B8 -lbl_802BB2A8: -/* 802BB2A8 38 60 00 00 */ li r3, 0 -/* 802BB2AC 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB2B0 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 802BB2B4 98 01 00 38 */ stb r0, 0x38(r1) -lbl_802BB2B8: -/* 802BB2B8 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB2BC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 802BB2C0 7F C3 F3 78 */ mr r3, r30 -/* 802BB2C4 38 81 00 1C */ addi r4, r1, 0x1c -/* 802BB2C8 48 00 08 01 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB2CC 54 60 04 E7 */ rlwinm. r0, r3, 0, 0x13, 0x13 -/* 802BB2D0 41 82 00 18 */ beq lbl_802BB2E8 -/* 802BB2D4 38 60 00 00 */ li r3, 0 -/* 802BB2D8 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB2DC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 802BB2E0 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB2E4 48 00 00 14 */ b lbl_802BB2F8 -lbl_802BB2E8: -/* 802BB2E8 38 60 00 01 */ li r3, 1 -/* 802BB2EC 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB2F0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 802BB2F4 98 01 00 39 */ stb r0, 0x39(r1) -lbl_802BB2F8: -/* 802BB2F8 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB2FC 90 01 00 18 */ stw r0, 0x18(r1) -/* 802BB300 7F C3 F3 78 */ mr r3, r30 -/* 802BB304 38 81 00 18 */ addi r4, r1, 0x18 -/* 802BB308 48 00 07 C1 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB30C 54 60 04 A5 */ rlwinm. r0, r3, 0, 0x12, 0x12 -/* 802BB310 41 82 00 18 */ beq lbl_802BB328 -/* 802BB314 38 60 00 00 */ li r3, 0 -/* 802BB318 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB31C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 802BB320 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB324 48 00 00 14 */ b lbl_802BB338 -lbl_802BB328: -/* 802BB328 38 60 00 01 */ li r3, 1 -/* 802BB32C 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB330 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 802BB334 98 01 00 39 */ stb r0, 0x39(r1) -lbl_802BB338: -/* 802BB338 3B 80 00 00 */ li r28, 0 -/* 802BB33C 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB340 90 01 00 14 */ stw r0, 0x14(r1) -/* 802BB344 7F C3 F3 78 */ mr r3, r30 -/* 802BB348 38 81 00 14 */ addi r4, r1, 0x14 -/* 802BB34C 48 00 07 7D */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB350 54 60 03 19 */ rlwinm. r0, r3, 0, 0xc, 0xc -/* 802BB354 41 82 00 08 */ beq lbl_802BB35C -/* 802BB358 3B 80 00 08 */ li r28, 8 -lbl_802BB35C: -/* 802BB35C 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB360 90 01 00 10 */ stw r0, 0x10(r1) -/* 802BB364 7F C3 F3 78 */ mr r3, r30 -/* 802BB368 38 81 00 10 */ addi r4, r1, 0x10 -/* 802BB36C 48 00 07 5D */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB370 54 7D 87 7E */ rlwinm r29, r3, 0x10, 0x1d, 0x1f -/* 802BB374 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB378 90 01 00 0C */ stw r0, 0xc(r1) -/* 802BB37C 7F C3 F3 78 */ mr r3, r30 -/* 802BB380 38 81 00 0C */ addi r4, r1, 0xc -/* 802BB384 48 00 07 45 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB388 54 60 86 76 */ rlwinm r0, r3, 0x10, 0x19, 0x1b -/* 802BB38C 7F BD 02 14 */ add r29, r29, r0 -/* 802BB390 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB394 90 01 00 08 */ stw r0, 8(r1) -/* 802BB398 7F C3 F3 78 */ mr r3, r30 -/* 802BB39C 38 81 00 08 */ addi r4, r1, 8 -/* 802BB3A0 48 00 07 29 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB3A4 54 60 85 2E */ rlwinm r0, r3, 0x10, 0x14, 0x17 -/* 802BB3A8 7F BD 02 14 */ add r29, r29, r0 -/* 802BB3AC 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB3B0 53 80 06 BE */ rlwimi r0, r28, 0, 0x1a, 0x1f -/* 802BB3B4 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB3B8 B3 A1 00 3A */ sth r29, 0x3a(r1) -/* 802BB3BC 48 00 00 70 */ b lbl_802BB42C -lbl_802BB3C0: -/* 802BB3C0 38 80 00 00 */ li r4, 0 -/* 802BB3C4 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB3C8 50 80 26 36 */ rlwimi r0, r4, 4, 0x18, 0x1b -/* 802BB3CC 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB3D0 38 60 00 01 */ li r3, 1 -/* 802BB3D4 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802BB3D8 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 802BB3DC 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB3E0 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802BB3E4 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 802BB3E8 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB3EC 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802BB3F0 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 802BB3F4 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB3F8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802BB3FC 50 80 07 FE */ rlwimi r0, r4, 0, 0x1f, 0x1f -/* 802BB400 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB404 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB408 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 802BB40C 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB410 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802BB414 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 802BB418 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB41C 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 802BB420 50 80 06 BE */ rlwimi r0, r4, 0, 0x1a, 0x1f -/* 802BB424 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB428 B0 81 00 3A */ sth r4, 0x3a(r1) -lbl_802BB42C: -/* 802BB42C 80 61 00 38 */ lwz r3, 0x38(r1) -/* 802BB430 39 61 00 50 */ addi r11, r1, 0x50 -/* 802BB434 48 0A 6D F1 */ bl _restgpr_28 -/* 802BB438 80 01 00 54 */ lwz r0, 0x54(r1) -/* 802BB43C 7C 08 03 A6 */ mtlr r0 -/* 802BB440 38 21 00 50 */ addi r1, r1, 0x50 -/* 802BB444 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundInfo/getAudibleSw__11Z2SoundInfoCF10JAISoundID.s b/asm/Z2AudioLib/Z2SoundInfo/getAudibleSw__11Z2SoundInfoCF10JAISoundID.s deleted file mode 100644 index 4762c87905e..00000000000 --- a/asm/Z2AudioLib/Z2SoundInfo/getAudibleSw__11Z2SoundInfoCF10JAISoundID.s +++ /dev/null @@ -1,182 +0,0 @@ -lbl_802BB448: -/* 802BB448 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 802BB44C 7C 08 02 A6 */ mflr r0 -/* 802BB450 90 01 00 54 */ stw r0, 0x54(r1) -/* 802BB454 39 61 00 50 */ addi r11, r1, 0x50 -/* 802BB458 48 0A 6D 81 */ bl _savegpr_28 -/* 802BB45C 7C 7E 1B 78 */ mr r30, r3 -/* 802BB460 7C 9F 23 78 */ mr r31, r4 -/* 802BB464 80 04 00 00 */ lwz r0, 0(r4) -/* 802BB468 90 01 00 34 */ stw r0, 0x34(r1) -/* 802BB46C 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BB470 38 81 00 34 */ addi r4, r1, 0x34 -/* 802BB474 4B FE BC ED */ bl getTypeID__13JAUSoundTableCF10JAISoundID -/* 802BB478 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 802BB47C 2C 00 00 51 */ cmpwi r0, 0x51 -/* 802BB480 41 82 00 08 */ beq lbl_802BB488 -/* 802BB484 48 00 02 2C */ b lbl_802BB6B0 -lbl_802BB488: -/* 802BB488 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB48C 90 01 00 30 */ stw r0, 0x30(r1) -/* 802BB490 7F C3 F3 78 */ mr r3, r30 -/* 802BB494 38 81 00 30 */ addi r4, r1, 0x30 -/* 802BB498 48 00 06 31 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB49C 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB4A0 50 60 E6 36 */ rlwimi r0, r3, 0x1c, 0x18, 0x1b -/* 802BB4A4 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB4A8 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB4AC 90 01 00 2C */ stw r0, 0x2c(r1) -/* 802BB4B0 7F C3 F3 78 */ mr r3, r30 -/* 802BB4B4 38 81 00 2C */ addi r4, r1, 0x2c -/* 802BB4B8 48 00 06 11 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB4BC 54 60 07 FF */ clrlwi. r0, r3, 0x1f -/* 802BB4C0 41 82 00 18 */ beq lbl_802BB4D8 -/* 802BB4C4 38 60 00 00 */ li r3, 0 -/* 802BB4C8 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB4CC 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 802BB4D0 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB4D4 48 00 00 14 */ b lbl_802BB4E8 -lbl_802BB4D8: -/* 802BB4D8 38 60 00 01 */ li r3, 1 -/* 802BB4DC 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB4E0 50 60 1F 38 */ rlwimi r0, r3, 3, 0x1c, 0x1c -/* 802BB4E4 98 01 00 38 */ stb r0, 0x38(r1) -lbl_802BB4E8: -/* 802BB4E8 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB4EC 90 01 00 28 */ stw r0, 0x28(r1) -/* 802BB4F0 7F C3 F3 78 */ mr r3, r30 -/* 802BB4F4 38 81 00 28 */ addi r4, r1, 0x28 -/* 802BB4F8 48 00 05 D1 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB4FC 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e -/* 802BB500 41 82 00 18 */ beq lbl_802BB518 -/* 802BB504 38 60 00 00 */ li r3, 0 -/* 802BB508 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB50C 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 802BB510 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB514 48 00 00 14 */ b lbl_802BB528 -lbl_802BB518: -/* 802BB518 38 60 00 01 */ li r3, 1 -/* 802BB51C 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB520 50 60 17 7A */ rlwimi r0, r3, 2, 0x1d, 0x1d -/* 802BB524 98 01 00 38 */ stb r0, 0x38(r1) -lbl_802BB528: -/* 802BB528 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB52C 90 01 00 24 */ stw r0, 0x24(r1) -/* 802BB530 7F C3 F3 78 */ mr r3, r30 -/* 802BB534 38 81 00 24 */ addi r4, r1, 0x24 -/* 802BB538 48 00 05 91 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB53C 54 60 07 7B */ rlwinm. r0, r3, 0, 0x1d, 0x1d -/* 802BB540 41 82 00 18 */ beq lbl_802BB558 -/* 802BB544 38 60 00 00 */ li r3, 0 -/* 802BB548 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB54C 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 802BB550 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB554 48 00 00 14 */ b lbl_802BB568 -lbl_802BB558: -/* 802BB558 38 60 00 01 */ li r3, 1 -/* 802BB55C 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB560 50 60 0F BC */ rlwimi r0, r3, 1, 0x1e, 0x1e -/* 802BB564 98 01 00 38 */ stb r0, 0x38(r1) -lbl_802BB568: -/* 802BB568 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB56C 90 01 00 20 */ stw r0, 0x20(r1) -/* 802BB570 7F C3 F3 78 */ mr r3, r30 -/* 802BB574 38 81 00 20 */ addi r4, r1, 0x20 -/* 802BB578 48 00 05 51 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB57C 54 60 02 11 */ rlwinm. r0, r3, 0, 8, 8 -/* 802BB580 41 82 00 18 */ beq lbl_802BB598 -/* 802BB584 38 60 00 01 */ li r3, 1 -/* 802BB588 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB58C 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 802BB590 98 01 00 38 */ stb r0, 0x38(r1) -/* 802BB594 48 00 00 14 */ b lbl_802BB5A8 -lbl_802BB598: -/* 802BB598 38 60 00 00 */ li r3, 0 -/* 802BB59C 88 01 00 38 */ lbz r0, 0x38(r1) -/* 802BB5A0 50 60 07 FE */ rlwimi r0, r3, 0, 0x1f, 0x1f -/* 802BB5A4 98 01 00 38 */ stb r0, 0x38(r1) -lbl_802BB5A8: -/* 802BB5A8 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB5AC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 802BB5B0 7F C3 F3 78 */ mr r3, r30 -/* 802BB5B4 38 81 00 1C */ addi r4, r1, 0x1c -/* 802BB5B8 48 00 05 11 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB5BC 54 60 04 E7 */ rlwinm. r0, r3, 0, 0x13, 0x13 -/* 802BB5C0 41 82 00 18 */ beq lbl_802BB5D8 -/* 802BB5C4 38 60 00 00 */ li r3, 0 -/* 802BB5C8 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB5CC 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 802BB5D0 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB5D4 48 00 00 14 */ b lbl_802BB5E8 -lbl_802BB5D8: -/* 802BB5D8 38 60 00 01 */ li r3, 1 -/* 802BB5DC 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB5E0 50 60 3E 30 */ rlwimi r0, r3, 7, 0x18, 0x18 -/* 802BB5E4 98 01 00 39 */ stb r0, 0x39(r1) -lbl_802BB5E8: -/* 802BB5E8 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB5EC 90 01 00 18 */ stw r0, 0x18(r1) -/* 802BB5F0 7F C3 F3 78 */ mr r3, r30 -/* 802BB5F4 38 81 00 18 */ addi r4, r1, 0x18 -/* 802BB5F8 48 00 04 D1 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB5FC 54 60 04 A5 */ rlwinm. r0, r3, 0, 0x12, 0x12 -/* 802BB600 41 82 00 18 */ beq lbl_802BB618 -/* 802BB604 38 60 00 00 */ li r3, 0 -/* 802BB608 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB60C 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 802BB610 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB614 48 00 00 14 */ b lbl_802BB628 -lbl_802BB618: -/* 802BB618 38 60 00 01 */ li r3, 1 -/* 802BB61C 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB620 50 60 36 72 */ rlwimi r0, r3, 6, 0x19, 0x19 -/* 802BB624 98 01 00 39 */ stb r0, 0x39(r1) -lbl_802BB628: -/* 802BB628 3B 80 00 00 */ li r28, 0 -/* 802BB62C 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB630 90 01 00 14 */ stw r0, 0x14(r1) -/* 802BB634 7F C3 F3 78 */ mr r3, r30 -/* 802BB638 38 81 00 14 */ addi r4, r1, 0x14 -/* 802BB63C 48 00 04 8D */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB640 54 60 03 19 */ rlwinm. r0, r3, 0, 0xc, 0xc -/* 802BB644 41 82 00 08 */ beq lbl_802BB64C -/* 802BB648 3B 80 00 08 */ li r28, 8 -lbl_802BB64C: -/* 802BB64C 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB650 90 01 00 10 */ stw r0, 0x10(r1) -/* 802BB654 7F C3 F3 78 */ mr r3, r30 -/* 802BB658 38 81 00 10 */ addi r4, r1, 0x10 -/* 802BB65C 48 00 04 6D */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB660 54 7D 87 7E */ rlwinm r29, r3, 0x10, 0x1d, 0x1f -/* 802BB664 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB668 90 01 00 0C */ stw r0, 0xc(r1) -/* 802BB66C 7F C3 F3 78 */ mr r3, r30 -/* 802BB670 38 81 00 0C */ addi r4, r1, 0xc -/* 802BB674 48 00 04 55 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB678 54 60 86 76 */ rlwinm r0, r3, 0x10, 0x19, 0x1b -/* 802BB67C 7F BD 02 14 */ add r29, r29, r0 -/* 802BB680 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BB684 90 01 00 08 */ stw r0, 8(r1) -/* 802BB688 7F C3 F3 78 */ mr r3, r30 -/* 802BB68C 38 81 00 08 */ addi r4, r1, 8 -/* 802BB690 48 00 04 39 */ bl getSwBit__11Z2SoundInfoCF10JAISoundID -/* 802BB694 54 60 85 2E */ rlwinm r0, r3, 0x10, 0x14, 0x17 -/* 802BB698 7F BD 02 14 */ add r29, r29, r0 -/* 802BB69C 88 01 00 39 */ lbz r0, 0x39(r1) -/* 802BB6A0 53 80 06 BE */ rlwimi r0, r28, 0, 0x1a, 0x1f -/* 802BB6A4 98 01 00 39 */ stb r0, 0x39(r1) -/* 802BB6A8 B3 A1 00 3A */ sth r29, 0x3a(r1) -/* 802BB6AC 48 00 00 14 */ b lbl_802BB6C0 -lbl_802BB6B0: -/* 802BB6B0 3C 60 00 01 */ lis r3, 0x0001 /* 0x0000FFFF@ha */ -/* 802BB6B4 38 03 FF FF */ addi r0, r3, 0xFFFF /* 0x0000FFFF@l */ -/* 802BB6B8 B0 01 00 38 */ sth r0, 0x38(r1) -/* 802BB6BC B0 01 00 3A */ sth r0, 0x3a(r1) -lbl_802BB6C0: -/* 802BB6C0 A0 61 00 38 */ lhz r3, 0x38(r1) -/* 802BB6C4 39 61 00 50 */ addi r11, r1, 0x50 -/* 802BB6C8 48 0A 6B 5D */ bl _restgpr_28 -/* 802BB6CC 80 01 00 54 */ lwz r0, 0x54(r1) -/* 802BB6D0 7C 08 03 A6 */ mtlr r0 -/* 802BB6D4 38 21 00 50 */ addi r1, r1, 0x50 -/* 802BB6D8 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundInfo/getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID.s b/asm/Z2AudioLib/Z2SoundInfo/getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID.s deleted file mode 100644 index 51e3ca08d21..00000000000 --- a/asm/Z2AudioLib/Z2SoundInfo/getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_802BB00C: -/* 802BB00C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802BB010 7C 08 02 A6 */ mflr r0 -/* 802BB014 90 01 00 24 */ stw r0, 0x24(r1) -/* 802BB018 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802BB01C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802BB020 7C 9E 23 78 */ mr r30, r4 -/* 802BB024 80 04 00 00 */ lwz r0, 0(r4) -/* 802BB028 90 01 00 0C */ stw r0, 0xc(r1) -/* 802BB02C 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BB030 38 81 00 0C */ addi r4, r1, 0xc -/* 802BB034 4B FE C2 59 */ bl getData__13JAUSoundTableCF10JAISoundID -/* 802BB038 7C 7F 1B 78 */ mr r31, r3 -/* 802BB03C 80 1E 00 00 */ lwz r0, 0(r30) -/* 802BB040 90 01 00 08 */ stw r0, 8(r1) -/* 802BB044 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BB048 38 81 00 08 */ addi r4, r1, 8 -/* 802BB04C 4B FE C1 15 */ bl getTypeID__13JAUSoundTableCF10JAISoundID -/* 802BB050 28 1F 00 00 */ cmplwi r31, 0 -/* 802BB054 41 82 00 1C */ beq lbl_802BB070 -/* 802BB058 54 60 06 36 */ rlwinm r0, r3, 0, 0x18, 0x1b -/* 802BB05C 2C 00 00 60 */ cmpwi r0, 0x60 -/* 802BB060 41 82 00 08 */ beq lbl_802BB068 -/* 802BB064 48 00 00 0C */ b lbl_802BB070 -lbl_802BB068: -/* 802BB068 A0 7F 00 02 */ lhz r3, 2(r31) -/* 802BB06C 48 00 00 0C */ b lbl_802BB078 -lbl_802BB070: -/* 802BB070 3C 60 00 01 */ lis r3, 0x0001 /* 0x0000FFFF@ha */ -/* 802BB074 38 63 FF FF */ addi r3, r3, 0xFFFF /* 0x0000FFFF@l */ -lbl_802BB078: -/* 802BB078 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802BB07C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802BB080 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802BB084 7C 08 03 A6 */ mtlr r0 -/* 802BB088 38 21 00 20 */ addi r1, r1, 0x20 -/* 802BB08C 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundInfo/getPriority__11Z2SoundInfoCF10JAISoundID.s b/asm/Z2AudioLib/Z2SoundInfo/getPriority__11Z2SoundInfoCF10JAISoundID.s deleted file mode 100644 index ed89cb1e710..00000000000 --- a/asm/Z2AudioLib/Z2SoundInfo/getPriority__11Z2SoundInfoCF10JAISoundID.s +++ /dev/null @@ -1,33 +0,0 @@ -lbl_802BB0E0: -/* 802BB0E0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802BB0E4 7C 08 02 A6 */ mflr r0 -/* 802BB0E8 90 01 00 24 */ stw r0, 0x24(r1) -/* 802BB0EC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802BB0F0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802BB0F4 7C 9E 23 78 */ mr r30, r4 -/* 802BB0F8 80 04 00 00 */ lwz r0, 0(r4) -/* 802BB0FC 90 01 00 0C */ stw r0, 0xc(r1) -/* 802BB100 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BB104 38 81 00 0C */ addi r4, r1, 0xc -/* 802BB108 4B FE C1 85 */ bl getData__13JAUSoundTableCF10JAISoundID -/* 802BB10C 7C 7F 1B 78 */ mr r31, r3 -/* 802BB110 80 1E 00 00 */ lwz r0, 0(r30) -/* 802BB114 90 01 00 08 */ stw r0, 8(r1) -/* 802BB118 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BB11C 38 81 00 08 */ addi r4, r1, 8 -/* 802BB120 4B FE C0 41 */ bl getTypeID__13JAUSoundTableCF10JAISoundID -/* 802BB124 28 1F 00 00 */ cmplwi r31, 0 -/* 802BB128 41 82 00 14 */ beq lbl_802BB13C -/* 802BB12C 54 60 06 73 */ rlwinm. r0, r3, 0, 0x19, 0x19 -/* 802BB130 41 82 00 0C */ beq lbl_802BB13C -/* 802BB134 88 7F 00 00 */ lbz r3, 0(r31) -/* 802BB138 48 00 00 08 */ b lbl_802BB140 -lbl_802BB13C: -/* 802BB13C 38 60 00 00 */ li r3, 0 -lbl_802BB140: -/* 802BB140 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802BB144 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802BB148 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802BB14C 7C 08 03 A6 */ mtlr r0 -/* 802BB150 38 21 00 20 */ addi r1, r1, 0x20 -/* 802BB154 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundInfo/getStreamFilePath__11Z2SoundInfoF10JAISoundID.s b/asm/Z2AudioLib/Z2SoundInfo/getStreamFilePath__11Z2SoundInfoF10JAISoundID.s deleted file mode 100644 index 1fa178476f4..00000000000 --- a/asm/Z2AudioLib/Z2SoundInfo/getStreamFilePath__11Z2SoundInfoF10JAISoundID.s +++ /dev/null @@ -1,34 +0,0 @@ -lbl_802BBA10: -/* 802BBA10 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802BBA14 7C 08 02 A6 */ mflr r0 -/* 802BBA18 90 01 00 24 */ stw r0, 0x24(r1) -/* 802BBA1C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802BBA20 7C 9F 23 78 */ mr r31, r4 -/* 802BBA24 80 04 00 00 */ lwz r0, 0(r4) -/* 802BBA28 90 01 00 0C */ stw r0, 0xc(r1) -/* 802BBA2C 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BBA30 38 81 00 0C */ addi r4, r1, 0xc -/* 802BBA34 4B FE B7 2D */ bl getTypeID__13JAUSoundTableCF10JAISoundID -/* 802BBA38 54 60 06 36 */ rlwinm r0, r3, 0, 0x18, 0x1b -/* 802BBA3C 2C 00 00 70 */ cmpwi r0, 0x70 -/* 802BBA40 41 82 00 08 */ beq lbl_802BBA48 -/* 802BBA44 48 00 00 2C */ b lbl_802BBA70 -lbl_802BBA48: -/* 802BBA48 80 1F 00 00 */ lwz r0, 0(r31) -/* 802BBA4C 90 01 00 08 */ stw r0, 8(r1) -/* 802BBA50 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BBA54 38 81 00 08 */ addi r4, r1, 8 -/* 802BBA58 4B FE B8 35 */ bl getData__13JAUSoundTableCF10JAISoundID -/* 802BBA5C 80 8D 85 D8 */ lwz r4, __OSReport_disable-0x40(r13) -/* 802BBA60 80 84 00 00 */ lwz r4, 0(r4) -/* 802BBA64 80 03 00 04 */ lwz r0, 4(r3) -/* 802BBA68 7C 64 02 14 */ add r3, r4, r0 -/* 802BBA6C 48 00 00 08 */ b lbl_802BBA74 -lbl_802BBA70: -/* 802BBA70 38 60 00 00 */ li r3, 0 -lbl_802BBA74: -/* 802BBA74 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802BBA78 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802BBA7C 7C 08 03 A6 */ mtlr r0 -/* 802BBA80 38 21 00 20 */ addi r1, r1, 0x20 -/* 802BBA84 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundInfo/getSwBit__11Z2SoundInfoCF10JAISoundID.s b/asm/Z2AudioLib/Z2SoundInfo/getSwBit__11Z2SoundInfoCF10JAISoundID.s deleted file mode 100644 index cd418a56df7..00000000000 --- a/asm/Z2AudioLib/Z2SoundInfo/getSwBit__11Z2SoundInfoCF10JAISoundID.s +++ /dev/null @@ -1,36 +0,0 @@ -lbl_802BBAC8: -/* 802BBAC8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802BBACC 7C 08 02 A6 */ mflr r0 -/* 802BBAD0 90 01 00 24 */ stw r0, 0x24(r1) -/* 802BBAD4 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802BBAD8 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802BBADC 7C 9E 23 78 */ mr r30, r4 -/* 802BBAE0 80 04 00 00 */ lwz r0, 0(r4) -/* 802BBAE4 90 01 00 0C */ stw r0, 0xc(r1) -/* 802BBAE8 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BBAEC 38 81 00 0C */ addi r4, r1, 0xc -/* 802BBAF0 4B FE B7 9D */ bl getData__13JAUSoundTableCF10JAISoundID -/* 802BBAF4 7C 7F 1B 78 */ mr r31, r3 -/* 802BBAF8 80 1E 00 00 */ lwz r0, 0(r30) -/* 802BBAFC 90 01 00 08 */ stw r0, 8(r1) -/* 802BBB00 80 6D 85 D8 */ lwz r3, __OSReport_disable-0x40(r13) -/* 802BBB04 38 81 00 08 */ addi r4, r1, 8 -/* 802BBB08 4B FE B6 59 */ bl getTypeID__13JAUSoundTableCF10JAISoundID -/* 802BBB0C 28 1F 00 00 */ cmplwi r31, 0 -/* 802BBB10 41 82 00 1C */ beq lbl_802BBB2C -/* 802BBB14 54 60 06 3E */ clrlwi r0, r3, 0x18 -/* 802BBB18 2C 00 00 51 */ cmpwi r0, 0x51 -/* 802BBB1C 41 82 00 08 */ beq lbl_802BBB24 -/* 802BBB20 48 00 00 0C */ b lbl_802BBB2C -lbl_802BBB24: -/* 802BBB24 80 7F 00 04 */ lwz r3, 4(r31) -/* 802BBB28 48 00 00 08 */ b lbl_802BBB30 -lbl_802BBB2C: -/* 802BBB2C 38 60 FF FF */ li r3, -1 -lbl_802BBB30: -/* 802BBB30 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802BBB34 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802BBB38 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802BBB3C 7C 08 03 A6 */ mtlr r0 -/* 802BBB40 38 21 00 20 */ addi r1, r1, 0x20 -/* 802BBB44 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundStarter/__ct__14Z2SoundStarterFb.s b/asm/Z2AudioLib/Z2SoundStarter/__ct__14Z2SoundStarterFb.s deleted file mode 100644 index 397b73272e0..00000000000 --- a/asm/Z2AudioLib/Z2SoundStarter/__ct__14Z2SoundStarterFb.s +++ /dev/null @@ -1,27 +0,0 @@ -lbl_802AAB94: -/* 802AAB94 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802AAB98 7C 08 02 A6 */ mflr r0 -/* 802AAB9C 90 01 00 14 */ stw r0, 0x14(r1) -/* 802AABA0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802AABA4 93 C1 00 08 */ stw r30, 8(r1) -/* 802AABA8 7C 7E 1B 78 */ mr r30, r3 -/* 802AABAC 7C 9F 23 78 */ mr r31, r4 -/* 802AABB0 4B FF 83 BD */ bl __ct__15JAISoundStarterFb -/* 802AABB4 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 802AABB8 41 82 00 14 */ beq lbl_802AABCC -/* 802AABBC 34 7E 00 04 */ addic. r3, r30, 4 -/* 802AABC0 41 82 00 08 */ beq lbl_802AABC8 -/* 802AABC4 38 63 FF FC */ addi r3, r3, -4 -lbl_802AABC8: -/* 802AABC8 90 6D 85 F4 */ stw r3, __OSReport_disable-0x24(r13) -lbl_802AABCC: -/* 802AABCC 3C 60 80 3D */ lis r3, __vt__14Z2SoundStarter@ha /* 0x803C9D80@ha */ -/* 802AABD0 38 03 9D 80 */ addi r0, r3, __vt__14Z2SoundStarter@l /* 0x803C9D80@l */ -/* 802AABD4 90 1E 00 00 */ stw r0, 0(r30) -/* 802AABD8 7F C3 F3 78 */ mr r3, r30 -/* 802AABDC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802AABE0 83 C1 00 08 */ lwz r30, 8(r1) -/* 802AABE4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802AABE8 7C 08 03 A6 */ mtlr r0 -/* 802AABEC 38 21 00 10 */ addi r1, r1, 0x10 -/* 802AABF0 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundStarter/__dt__14Z2SoundStarterFv.s b/asm/Z2AudioLib/Z2SoundStarter/__dt__14Z2SoundStarterFv.s deleted file mode 100644 index 1a17565d178..00000000000 --- a/asm/Z2AudioLib/Z2SoundStarter/__dt__14Z2SoundStarterFv.s +++ /dev/null @@ -1,39 +0,0 @@ -lbl_802AAFF0: -/* 802AAFF0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802AAFF4 7C 08 02 A6 */ mflr r0 -/* 802AAFF8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802AAFFC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802AB000 93 C1 00 08 */ stw r30, 8(r1) -/* 802AB004 7C 7E 1B 79 */ or. r30, r3, r3 -/* 802AB008 7C 9F 23 78 */ mr r31, r4 -/* 802AB00C 41 82 00 54 */ beq lbl_802AB060 -/* 802AB010 3C 60 80 3D */ lis r3, __vt__14Z2SoundStarter@ha /* 0x803C9D80@ha */ -/* 802AB014 38 03 9D 80 */ addi r0, r3, __vt__14Z2SoundStarter@l /* 0x803C9D80@l */ -/* 802AB018 90 1E 00 00 */ stw r0, 0(r30) -/* 802AB01C 34 1E 00 04 */ addic. r0, r30, 4 -/* 802AB020 41 82 00 24 */ beq lbl_802AB044 -/* 802AB024 34 7E 00 04 */ addic. r3, r30, 4 -/* 802AB028 41 82 00 08 */ beq lbl_802AB030 -/* 802AB02C 38 63 FF FC */ addi r3, r3, -4 -lbl_802AB030: -/* 802AB030 80 0D 85 F4 */ lwz r0, __OSReport_disable-0x24(r13) -/* 802AB034 7C 00 18 40 */ cmplw r0, r3 -/* 802AB038 40 82 00 0C */ bne lbl_802AB044 -/* 802AB03C 38 00 00 00 */ li r0, 0 -/* 802AB040 90 0D 85 F4 */ stw r0, __OSReport_disable-0x24(r13) -lbl_802AB044: -/* 802AB044 7F C3 F3 78 */ mr r3, r30 -/* 802AB048 38 80 00 00 */ li r4, 0 -/* 802AB04C 4B FF 7F 3D */ bl __dt__15JAISoundStarterFv -/* 802AB050 7F E0 07 35 */ extsh. r0, r31 -/* 802AB054 40 81 00 0C */ ble lbl_802AB060 -/* 802AB058 7F C3 F3 78 */ mr r3, r30 -/* 802AB05C 48 02 3C E1 */ bl __dl__FPv -lbl_802AB060: -/* 802AB060 7F C3 F3 78 */ mr r3, r30 -/* 802AB064 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802AB068 83 C1 00 08 */ lwz r30, 8(r1) -/* 802AB06C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802AB070 7C 08 03 A6 */ mtlr r0 -/* 802AB074 38 21 00 10 */ addi r1, r1, 0x10 -/* 802AB078 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundStarter/func_802AABF4.s b/asm/Z2AudioLib/Z2SoundStarter/func_802AABF4.s deleted file mode 100644 index 47085e45a69..00000000000 --- a/asm/Z2AudioLib/Z2SoundStarter/func_802AABF4.s +++ /dev/null @@ -1,19 +0,0 @@ -lbl_802AABF4: -/* 802AABF4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802AABF8 7C 08 02 A6 */ mflr r0 -/* 802AABFC 90 01 00 14 */ stw r0, 0x14(r1) -/* 802AAC00 80 04 00 00 */ lwz r0, 0(r4) -/* 802AAC04 90 01 00 08 */ stw r0, 8(r1) -/* 802AAC08 38 81 00 08 */ addi r4, r1, 8 -/* 802AAC0C 38 E0 00 00 */ li r7, 0 -/* 802AAC10 C0 22 BE 58 */ lfs f1, lit_3597(r2) -/* 802AAC14 C0 42 BE 5C */ lfs f2, lit_3598(r2) -/* 802AAC18 FC 60 10 90 */ fmr f3, f2 -/* 802AAC1C C0 82 BE 60 */ lfs f4, lit_3599(r2) -/* 802AAC20 FC A0 20 90 */ fmr f5, f4 -/* 802AAC24 39 00 00 00 */ li r8, 0 -/* 802AAC28 48 00 00 15 */ bl func_802AAC3C -/* 802AAC2C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802AAC30 7C 08 03 A6 */ mtlr r0 -/* 802AAC34 38 21 00 10 */ addi r1, r1, 0x10 -/* 802AAC38 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundStarter/func_802AAC3C.s b/asm/Z2AudioLib/Z2SoundStarter/func_802AAC3C.s deleted file mode 100644 index eee09a8ef26..00000000000 --- a/asm/Z2AudioLib/Z2SoundStarter/func_802AAC3C.s +++ /dev/null @@ -1,183 +0,0 @@ -lbl_802AAC3C: -/* 802AAC3C 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 802AAC40 7C 08 02 A6 */ mflr r0 -/* 802AAC44 90 01 00 94 */ stw r0, 0x94(r1) -/* 802AAC48 DB E1 00 80 */ stfd f31, 0x80(r1) -/* 802AAC4C F3 E1 00 88 */ psq_st f31, 136(r1), 0, 0 /* qr0 */ -/* 802AAC50 DB C1 00 70 */ stfd f30, 0x70(r1) -/* 802AAC54 F3 C1 00 78 */ psq_st f30, 120(r1), 0, 0 /* qr0 */ -/* 802AAC58 DB A1 00 60 */ stfd f29, 0x60(r1) -/* 802AAC5C F3 A1 00 68 */ psq_st f29, 104(r1), 0, 0 /* qr0 */ -/* 802AAC60 DB 81 00 50 */ stfd f28, 0x50(r1) -/* 802AAC64 F3 81 00 58 */ psq_st f28, 88(r1), 0, 0 /* qr0 */ -/* 802AAC68 DB 61 00 40 */ stfd f27, 0x40(r1) -/* 802AAC6C F3 61 00 48 */ psq_st f27, 72(r1), 0, 0 /* qr0 */ -/* 802AAC70 39 61 00 40 */ addi r11, r1, 0x40 -/* 802AAC74 48 0B 75 5D */ bl _savegpr_26 -/* 802AAC78 7C 7A 1B 78 */ mr r26, r3 -/* 802AAC7C 7C 9B 23 78 */ mr r27, r4 -/* 802AAC80 7C BC 2B 78 */ mr r28, r5 -/* 802AAC84 7C DD 33 78 */ mr r29, r6 -/* 802AAC88 7C FE 3B 78 */ mr r30, r7 -/* 802AAC8C FF 60 08 90 */ fmr f27, f1 -/* 802AAC90 FF 80 10 90 */ fmr f28, f2 -/* 802AAC94 FF A0 18 90 */ fmr f29, f3 -/* 802AAC98 FF C0 20 90 */ fmr f30, f4 -/* 802AAC9C FF E0 28 90 */ fmr f31, f5 -/* 802AACA0 7D 1F 43 78 */ mr r31, r8 -/* 802AACA4 28 1E 00 06 */ cmplwi r30, 6 -/* 802AACA8 40 82 00 68 */ bne lbl_802AAD10 -/* 802AACAC 80 9B 00 00 */ lwz r4, 0(r27) -/* 802AACB0 3C 60 00 06 */ lis r3, 0x0006 /* 0x0006002C@ha */ -/* 802AACB4 38 03 00 2C */ addi r0, r3, 0x002C /* 0x0006002C@l */ -/* 802AACB8 7C 04 00 00 */ cmpw r4, r0 -/* 802AACBC 41 82 00 38 */ beq lbl_802AACF4 -/* 802AACC0 40 80 00 14 */ bge lbl_802AACD4 -/* 802AACC4 38 03 00 2B */ addi r0, r3, 0x2b -/* 802AACC8 7C 04 00 00 */ cmpw r4, r0 -/* 802AACCC 40 80 00 18 */ bge lbl_802AACE4 -/* 802AACD0 48 00 00 40 */ b lbl_802AAD10 -lbl_802AACD4: -/* 802AACD4 38 03 00 2E */ addi r0, r3, 0x2e -/* 802AACD8 7C 04 00 00 */ cmpw r4, r0 -/* 802AACDC 40 80 00 34 */ bge lbl_802AAD10 -/* 802AACE0 48 00 00 24 */ b lbl_802AAD04 -lbl_802AACE4: -/* 802AACE4 38 03 00 2E */ addi r0, r3, 0x2e -/* 802AACE8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802AACEC 90 1B 00 00 */ stw r0, 0(r27) -/* 802AACF0 48 00 00 20 */ b lbl_802AAD10 -lbl_802AACF4: -/* 802AACF4 38 03 00 2F */ addi r0, r3, 0x2f -/* 802AACF8 90 01 00 10 */ stw r0, 0x10(r1) -/* 802AACFC 90 1B 00 00 */ stw r0, 0(r27) -/* 802AAD00 48 00 00 10 */ b lbl_802AAD10 -lbl_802AAD04: -/* 802AAD04 38 03 00 30 */ addi r0, r3, 0x30 -/* 802AAD08 90 01 00 0C */ stw r0, 0xc(r1) -/* 802AAD0C 90 1B 00 00 */ stw r0, 0(r27) -lbl_802AAD10: -/* 802AAD10 88 1B 00 01 */ lbz r0, 1(r27) -/* 802AAD14 28 00 00 00 */ cmplwi r0, 0 -/* 802AAD18 41 82 00 88 */ beq lbl_802AADA0 -/* 802AAD1C 28 00 00 09 */ cmplwi r0, 9 -/* 802AAD20 41 82 00 80 */ beq lbl_802AADA0 -/* 802AAD24 80 6D 86 00 */ lwz r3, __OSReport_disable-0x18(r13) -/* 802AAD28 88 03 00 1E */ lbz r0, 0x1e(r3) -/* 802AAD2C 28 00 00 00 */ cmplwi r0, 0 -/* 802AAD30 41 82 00 0C */ beq lbl_802AAD3C -/* 802AAD34 C3 62 BE 5C */ lfs f27, lit_3598(r2) -/* 802AAD38 48 00 00 68 */ b lbl_802AADA0 -lbl_802AAD3C: -/* 802AAD3C 80 6D 85 FC */ lwz r3, __OSReport_disable-0x1C(r13) -/* 802AAD40 C0 03 00 1C */ lfs f0, 0x1c(r3) -/* 802AAD44 C0 42 BE 58 */ lfs f2, lit_3597(r2) -/* 802AAD48 FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 802AAD4C 7C 00 00 26 */ mfcr r0 -/* 802AAD50 54 00 17 FE */ rlwinm r0, r0, 2, 0x1f, 0x1f -/* 802AAD54 C8 22 BE 68 */ lfd f1, lit_3717(r2) -/* 802AAD58 90 01 00 1C */ stw r0, 0x1c(r1) -/* 802AAD5C 3C 00 43 30 */ lis r0, 0x4330 -/* 802AAD60 90 01 00 18 */ stw r0, 0x18(r1) -/* 802AAD64 C8 01 00 18 */ lfd f0, 0x18(r1) -/* 802AAD68 EC 00 08 28 */ fsubs f0, f0, f1 -/* 802AAD6C FC 00 10 00 */ fcmpu cr0, f0, f2 -/* 802AAD70 41 82 00 0C */ beq lbl_802AAD7C -/* 802AAD74 FF 60 00 90 */ fmr f27, f0 -/* 802AAD78 48 00 00 28 */ b lbl_802AADA0 -lbl_802AAD7C: -/* 802AAD7C 80 6D 85 BC */ lwz r3, __OSReport_disable-0x5C(r13) -/* 802AAD80 48 01 E6 65 */ bl getFogDensity__10Z2EnvSeMgrFv -/* 802AAD84 C0 02 BE 64 */ lfs f0, lit_3713(r2) -/* 802AAD88 EC 00 00 72 */ fmuls f0, f0, f1 -/* 802AAD8C EF 7B 00 2A */ fadds f27, f27, f0 -/* 802AAD90 C0 02 BE 5C */ lfs f0, lit_3598(r2) -/* 802AAD94 FC 1B 00 40 */ fcmpo cr0, f27, f0 -/* 802AAD98 40 81 00 08 */ ble lbl_802AADA0 -/* 802AAD9C FF 60 00 90 */ fmr f27, f0 -lbl_802AADA0: -/* 802AADA0 80 1B 00 00 */ lwz r0, 0(r27) -/* 802AADA4 90 01 00 08 */ stw r0, 8(r1) -/* 802AADA8 80 6D 8D E8 */ lwz r3, mAudioMgrPtr__10Z2AudioMgr(r13) -/* 802AADAC 38 81 00 08 */ addi r4, r1, 8 -/* 802AADB0 7F 85 E3 78 */ mr r5, r28 -/* 802AADB4 7F A6 EB 78 */ mr r6, r29 -/* 802AADB8 81 83 05 14 */ lwz r12, 0x514(r3) -/* 802AADBC 81 8C 00 08 */ lwz r12, 8(r12) -/* 802AADC0 7D 89 03 A6 */ mtctr r12 -/* 802AADC4 4E 80 04 21 */ bctrl -/* 802AADC8 7C 7B 1B 78 */ mr r27, r3 -/* 802AADCC 80 1C 00 00 */ lwz r0, 0(r28) -/* 802AADD0 28 00 00 00 */ cmplwi r0, 0 -/* 802AADD4 41 82 00 C4 */ beq lbl_802AAE98 -/* 802AADD8 28 1E 00 00 */ cmplwi r30, 0 -/* 802AADDC 41 82 00 1C */ beq lbl_802AADF8 -/* 802AADE0 7F 43 D3 78 */ mr r3, r26 -/* 802AADE4 7F 84 E3 78 */ mr r4, r28 -/* 802AADE8 38 A0 00 06 */ li r5, 6 -/* 802AADEC 57 C6 04 3E */ clrlwi r6, r30, 0x10 -/* 802AADF0 38 E0 FF FF */ li r7, -1 -/* 802AADF4 48 00 00 E9 */ bl setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc -lbl_802AADF8: -/* 802AADF8 C0 02 BE 58 */ lfs f0, lit_3597(r2) -/* 802AADFC FC 1B 00 40 */ fcmpo cr0, f27, f0 -/* 802AAE00 40 81 00 18 */ ble lbl_802AAE18 -/* 802AAE04 80 7C 00 00 */ lwz r3, 0(r28) -/* 802AAE08 38 63 00 48 */ addi r3, r3, 0x48 -/* 802AAE0C FC 20 D8 90 */ fmr f1, f27 -/* 802AAE10 7F E4 FB 78 */ mr r4, r31 -/* 802AAE14 4B FF 80 51 */ bl moveFxMix__18JAISoundParamsMoveFfUl -lbl_802AAE18: -/* 802AAE18 C0 02 BE 5C */ lfs f0, lit_3598(r2) -/* 802AAE1C FC 00 E0 00 */ fcmpu cr0, f0, f28 -/* 802AAE20 41 82 00 18 */ beq lbl_802AAE38 -/* 802AAE24 80 7C 00 00 */ lwz r3, 0(r28) -/* 802AAE28 38 63 00 48 */ addi r3, r3, 0x48 -/* 802AAE2C FC 20 E0 90 */ fmr f1, f28 -/* 802AAE30 7F E4 FB 78 */ mr r4, r31 -/* 802AAE34 4B FF 7F D9 */ bl movePitch__18JAISoundParamsMoveFfUl -lbl_802AAE38: -/* 802AAE38 C0 02 BE 5C */ lfs f0, lit_3598(r2) -/* 802AAE3C FC 00 E8 00 */ fcmpu cr0, f0, f29 -/* 802AAE40 41 82 00 18 */ beq lbl_802AAE58 -/* 802AAE44 80 7C 00 00 */ lwz r3, 0(r28) -/* 802AAE48 38 63 00 48 */ addi r3, r3, 0x48 -/* 802AAE4C FC 20 E8 90 */ fmr f1, f29 -/* 802AAE50 7F E4 FB 78 */ mr r4, r31 -/* 802AAE54 4B FF 7F 61 */ bl moveVolume__18JAISoundParamsMoveFfUl -lbl_802AAE58: -/* 802AAE58 C0 02 BE 60 */ lfs f0, lit_3599(r2) -/* 802AAE5C FC 00 F0 00 */ fcmpu cr0, f0, f30 -/* 802AAE60 41 82 00 18 */ beq lbl_802AAE78 -/* 802AAE64 80 7C 00 00 */ lwz r3, 0(r28) -/* 802AAE68 38 63 00 48 */ addi r3, r3, 0x48 -/* 802AAE6C FC 20 F0 90 */ fmr f1, f30 -/* 802AAE70 7F E4 FB 78 */ mr r4, r31 -/* 802AAE74 4B FF 80 49 */ bl movePan__18JAISoundParamsMoveFfUl -lbl_802AAE78: -/* 802AAE78 C0 02 BE 60 */ lfs f0, lit_3599(r2) -/* 802AAE7C FC 00 F8 00 */ fcmpu cr0, f0, f31 -/* 802AAE80 41 82 00 18 */ beq lbl_802AAE98 -/* 802AAE84 80 7C 00 00 */ lwz r3, 0(r28) -/* 802AAE88 38 63 00 48 */ addi r3, r3, 0x48 -/* 802AAE8C FC 20 F8 90 */ fmr f1, f31 -/* 802AAE90 7F E4 FB 78 */ mr r4, r31 -/* 802AAE94 4B FF 80 81 */ bl moveDolby__18JAISoundParamsMoveFfUl -lbl_802AAE98: -/* 802AAE98 7F 63 DB 78 */ mr r3, r27 -/* 802AAE9C E3 E1 00 88 */ psq_l f31, 136(r1), 0, 0 /* qr0 */ -/* 802AAEA0 CB E1 00 80 */ lfd f31, 0x80(r1) -/* 802AAEA4 E3 C1 00 78 */ psq_l f30, 120(r1), 0, 0 /* qr0 */ -/* 802AAEA8 CB C1 00 70 */ lfd f30, 0x70(r1) -/* 802AAEAC E3 A1 00 68 */ psq_l f29, 104(r1), 0, 0 /* qr0 */ -/* 802AAEB0 CB A1 00 60 */ lfd f29, 0x60(r1) -/* 802AAEB4 E3 81 00 58 */ psq_l f28, 88(r1), 0, 0 /* qr0 */ -/* 802AAEB8 CB 81 00 50 */ lfd f28, 0x50(r1) -/* 802AAEBC E3 61 00 48 */ psq_l f27, 72(r1), 0, 0 /* qr0 */ -/* 802AAEC0 CB 61 00 40 */ lfd f27, 0x40(r1) -/* 802AAEC4 39 61 00 40 */ addi r11, r1, 0x40 -/* 802AAEC8 48 0B 73 55 */ bl _restgpr_26 -/* 802AAECC 80 01 00 94 */ lwz r0, 0x94(r1) -/* 802AAED0 7C 08 03 A6 */ mtlr r0 -/* 802AAED4 38 21 00 90 */ addi r1, r1, 0x90 -/* 802AAED8 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundStarter/getPortData__14Z2SoundStarterFP14JAISoundHandleUlSc.s b/asm/Z2AudioLib/Z2SoundStarter/getPortData__14Z2SoundStarterFP14JAISoundHandleUlSc.s deleted file mode 100644 index 2e1dff2fb93..00000000000 --- a/asm/Z2AudioLib/Z2SoundStarter/getPortData__14Z2SoundStarterFP14JAISoundHandleUlSc.s +++ /dev/null @@ -1,36 +0,0 @@ -lbl_802AAF74: -/* 802AAF74 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802AAF78 7C 08 02 A6 */ mflr r0 -/* 802AAF7C 90 01 00 14 */ stw r0, 0x14(r1) -/* 802AAF80 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802AAF84 7C BF 2B 78 */ mr r31, r5 -/* 802AAF88 28 04 00 00 */ cmplwi r4, 0 -/* 802AAF8C 41 82 00 4C */ beq lbl_802AAFD8 -/* 802AAF90 80 64 00 00 */ lwz r3, 0(r4) -/* 802AAF94 28 03 00 00 */ cmplwi r3, 0 -/* 802AAF98 41 82 00 40 */ beq lbl_802AAFD8 -/* 802AAF9C 7C C4 07 74 */ extsb r4, r6 -/* 802AAFA0 2C 04 FF FF */ cmpwi r4, -1 -/* 802AAFA4 40 82 00 18 */ bne lbl_802AAFBC -/* 802AAFA8 81 83 00 00 */ lwz r12, 0(r3) -/* 802AAFAC 81 8C 00 20 */ lwz r12, 0x20(r12) -/* 802AAFB0 7D 89 03 A6 */ mtctr r12 -/* 802AAFB4 4E 80 04 21 */ bctrl -/* 802AAFB8 48 00 00 14 */ b lbl_802AAFCC -lbl_802AAFBC: -/* 802AAFBC 81 83 00 00 */ lwz r12, 0(r3) -/* 802AAFC0 81 8C 00 24 */ lwz r12, 0x24(r12) -/* 802AAFC4 7D 89 03 A6 */ mtctr r12 -/* 802AAFC8 4E 80 04 21 */ bctrl -lbl_802AAFCC: -/* 802AAFCC 7F E4 FB 78 */ mr r4, r31 -/* 802AAFD0 4B FE 79 AD */ bl readPort__8JASTrackFUl -/* 802AAFD4 48 00 00 08 */ b lbl_802AAFDC -lbl_802AAFD8: -/* 802AAFD8 38 60 00 00 */ li r3, 0 -lbl_802AAFDC: -/* 802AAFDC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802AAFE0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802AAFE4 7C 08 03 A6 */ mtlr r0 -/* 802AAFE8 38 21 00 10 */ addi r1, r1, 0x10 -/* 802AAFEC 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SoundStarter/setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc.s b/asm/Z2AudioLib/Z2SoundStarter/setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc.s deleted file mode 100644 index ed761b5da5b..00000000000 --- a/asm/Z2AudioLib/Z2SoundStarter/setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc.s +++ /dev/null @@ -1,42 +0,0 @@ -lbl_802AAEDC: -/* 802AAEDC 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802AAEE0 7C 08 02 A6 */ mflr r0 -/* 802AAEE4 90 01 00 24 */ stw r0, 0x24(r1) -/* 802AAEE8 39 61 00 20 */ addi r11, r1, 0x20 -/* 802AAEEC 48 0B 72 F1 */ bl _savegpr_29 -/* 802AAEF0 7C BD 2B 78 */ mr r29, r5 -/* 802AAEF4 7C DE 33 78 */ mr r30, r6 -/* 802AAEF8 7C FF 3B 78 */ mr r31, r7 -/* 802AAEFC 28 04 00 00 */ cmplwi r4, 0 -/* 802AAF00 41 82 00 5C */ beq lbl_802AAF5C -/* 802AAF04 80 64 00 00 */ lwz r3, 0(r4) -/* 802AAF08 28 03 00 00 */ cmplwi r3, 0 -/* 802AAF0C 41 82 00 50 */ beq lbl_802AAF5C -/* 802AAF10 81 83 00 00 */ lwz r12, 0(r3) -/* 802AAF14 81 8C 00 20 */ lwz r12, 0x20(r12) -/* 802AAF18 7D 89 03 A6 */ mtctr r12 -/* 802AAF1C 4E 80 04 21 */ bctrl -/* 802AAF20 7C 65 1B 78 */ mr r5, r3 -/* 802AAF24 7F E4 07 74 */ extsb r4, r31 -/* 802AAF28 2C 04 FF FF */ cmpwi r4, -1 -/* 802AAF2C 41 82 00 20 */ beq lbl_802AAF4C -/* 802AAF30 54 80 10 3A */ slwi r0, r4, 2 -/* 802AAF34 7F E5 02 14 */ add r31, r5, r0 -/* 802AAF38 80 1F 01 30 */ lwz r0, 0x130(r31) -/* 802AAF3C 28 00 00 00 */ cmplwi r0, 0 -/* 802AAF40 40 82 00 08 */ bne lbl_802AAF48 -/* 802AAF44 4B FE 6C ED */ bl openChild__8JASTrackFUl -lbl_802AAF48: -/* 802AAF48 80 BF 01 30 */ lwz r5, 0x130(r31) -lbl_802AAF4C: -/* 802AAF4C 7C A3 2B 78 */ mr r3, r5 -/* 802AAF50 7F A4 EB 78 */ mr r4, r29 -/* 802AAF54 7F C5 F3 78 */ mr r5, r30 -/* 802AAF58 4B FE 79 C1 */ bl writePort__8JASTrackFUlUs -lbl_802AAF5C: -/* 802AAF5C 39 61 00 20 */ addi r11, r1, 0x20 -/* 802AAF60 48 0B 72 C9 */ bl _restgpr_29 -/* 802AAF64 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802AAF68 7C 08 03 A6 */ mtlr r0 -/* 802AAF6C 38 21 00 20 */ addi r1, r1, 0x20 -/* 802AAF70 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SpeechMgr2/__ct__12Z2SpeechMgr2Fv.s b/asm/Z2AudioLib/Z2SpeechMgr2/__ct__12Z2SpeechMgr2Fv.s deleted file mode 100644 index 666747ed424..00000000000 --- a/asm/Z2AudioLib/Z2SpeechMgr2/__ct__12Z2SpeechMgr2Fv.s +++ /dev/null @@ -1,37 +0,0 @@ -lbl_802CBC60: -/* 802CBC60 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802CBC64 7C 08 02 A6 */ mflr r0 -/* 802CBC68 90 01 00 14 */ stw r0, 0x14(r1) -/* 802CBC6C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802CBC70 7C 7F 1B 78 */ mr r31, r3 -/* 802CBC74 93 ED 85 F0 */ stw r31, __OSReport_disable-0x28(r13) -/* 802CBC78 38 00 00 00 */ li r0, 0 -/* 802CBC7C 90 03 00 00 */ stw r0, 0(r3) -/* 802CBC80 90 03 00 04 */ stw r0, 4(r3) -/* 802CBC84 38 7F 00 08 */ addi r3, r31, 8 -/* 802CBC88 38 80 00 00 */ li r4, 0 -/* 802CBC8C 48 06 DE 59 */ bl __ct__Q25JMath13TRandom_fast_FUl -/* 802CBC90 38 7F 00 0C */ addi r3, r31, 0xc -/* 802CBC94 48 00 13 25 */ bl __ct__15Z2SpeechStarterFv -/* 802CBC98 38 00 00 00 */ li r0, 0 -/* 802CBC9C B0 1F 03 F8 */ sth r0, 0x3f8(r31) -/* 802CBCA0 38 60 FF FF */ li r3, -1 -/* 802CBCA4 B0 7F 03 FA */ sth r3, 0x3fa(r31) -/* 802CBCA8 B0 1F 03 FC */ sth r0, 0x3fc(r31) -/* 802CBCAC 98 1F 03 FE */ stb r0, 0x3fe(r31) -/* 802CBCB0 98 1F 03 FF */ stb r0, 0x3ff(r31) -/* 802CBCB4 98 1F 04 01 */ stb r0, 0x401(r31) -/* 802CBCB8 38 80 00 00 */ li r4, 0 -/* 802CBCBC 38 00 00 40 */ li r0, 0x40 -/* 802CBCC0 7C 09 03 A6 */ mtctr r0 -lbl_802CBCC4: -/* 802CBCC4 38 04 04 02 */ addi r0, r4, 0x402 -/* 802CBCC8 7C 7F 01 AE */ stbx r3, r31, r0 -/* 802CBCCC 38 84 00 01 */ addi r4, r4, 1 -/* 802CBCD0 42 00 FF F4 */ bdnz lbl_802CBCC4 -/* 802CBCD4 7F E3 FB 78 */ mr r3, r31 -/* 802CBCD8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802CBCDC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802CBCE0 7C 08 03 A6 */ mtlr r0 -/* 802CBCE4 38 21 00 10 */ addi r1, r1, 0x10 -/* 802CBCE8 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SpeechMgr2/__ct__15Z2SpeechStarterFv.s b/asm/Z2AudioLib/Z2SpeechMgr2/__ct__15Z2SpeechStarterFv.s deleted file mode 100644 index b851fe7ba87..00000000000 --- a/asm/Z2AudioLib/Z2SpeechMgr2/__ct__15Z2SpeechStarterFv.s +++ /dev/null @@ -1,17 +0,0 @@ -lbl_802CCFB8: -/* 802CCFB8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802CCFBC 7C 08 02 A6 */ mflr r0 -/* 802CCFC0 90 01 00 14 */ stw r0, 0x14(r1) -/* 802CCFC4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802CCFC8 7C 7F 1B 78 */ mr r31, r3 -/* 802CCFCC 38 80 00 00 */ li r4, 0 -/* 802CCFD0 4B FD DB C5 */ bl __ct__14Z2SoundStarterFb -/* 802CCFD4 3C 60 80 3D */ lis r3, __vt__15Z2SpeechStarter@ha /* 0x803CBF24@ha */ -/* 802CCFD8 38 03 BF 24 */ addi r0, r3, __vt__15Z2SpeechStarter@l /* 0x803CBF24@l */ -/* 802CCFDC 90 1F 00 00 */ stw r0, 0(r31) -/* 802CCFE0 7F E3 FB 78 */ mr r3, r31 -/* 802CCFE4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802CCFE8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802CCFEC 7C 08 03 A6 */ mtlr r0 -/* 802CCFF0 38 21 00 10 */ addi r1, r1, 0x10 -/* 802CCFF4 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SpeechMgr2/__dt__15Z2SpeechStarterFv.s b/asm/Z2AudioLib/Z2SpeechMgr2/__dt__15Z2SpeechStarterFv.s deleted file mode 100644 index 93fc1e6097d..00000000000 --- a/asm/Z2AudioLib/Z2SpeechMgr2/__dt__15Z2SpeechStarterFv.s +++ /dev/null @@ -1,44 +0,0 @@ -lbl_802CBCEC: -/* 802CBCEC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802CBCF0 7C 08 02 A6 */ mflr r0 -/* 802CBCF4 90 01 00 14 */ stw r0, 0x14(r1) -/* 802CBCF8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802CBCFC 93 C1 00 08 */ stw r30, 8(r1) -/* 802CBD00 7C 7E 1B 79 */ or. r30, r3, r3 -/* 802CBD04 7C 9F 23 78 */ mr r31, r4 -/* 802CBD08 41 82 00 64 */ beq lbl_802CBD6C -/* 802CBD0C 3C 60 80 3D */ lis r3, __vt__15Z2SpeechStarter@ha /* 0x803CBF24@ha */ -/* 802CBD10 38 03 BF 24 */ addi r0, r3, __vt__15Z2SpeechStarter@l /* 0x803CBF24@l */ -/* 802CBD14 90 1E 00 00 */ stw r0, 0(r30) -/* 802CBD18 41 82 00 44 */ beq lbl_802CBD5C -/* 802CBD1C 3C 60 80 3D */ lis r3, __vt__14Z2SoundStarter@ha /* 0x803C9D80@ha */ -/* 802CBD20 38 03 9D 80 */ addi r0, r3, __vt__14Z2SoundStarter@l /* 0x803C9D80@l */ -/* 802CBD24 90 1E 00 00 */ stw r0, 0(r30) -/* 802CBD28 34 1E 00 04 */ addic. r0, r30, 4 -/* 802CBD2C 41 82 00 24 */ beq lbl_802CBD50 -/* 802CBD30 34 7E 00 04 */ addic. r3, r30, 4 -/* 802CBD34 41 82 00 08 */ beq lbl_802CBD3C -/* 802CBD38 38 63 FF FC */ addi r3, r3, -4 -lbl_802CBD3C: -/* 802CBD3C 80 0D 85 F4 */ lwz r0, __OSReport_disable-0x24(r13) -/* 802CBD40 7C 00 18 40 */ cmplw r0, r3 -/* 802CBD44 40 82 00 0C */ bne lbl_802CBD50 -/* 802CBD48 38 00 00 00 */ li r0, 0 -/* 802CBD4C 90 0D 85 F4 */ stw r0, __OSReport_disable-0x24(r13) -lbl_802CBD50: -/* 802CBD50 7F C3 F3 78 */ mr r3, r30 -/* 802CBD54 38 80 00 00 */ li r4, 0 -/* 802CBD58 4B FD 72 31 */ bl __dt__15JAISoundStarterFv -lbl_802CBD5C: -/* 802CBD5C 7F E0 07 35 */ extsh. r0, r31 -/* 802CBD60 40 81 00 0C */ ble lbl_802CBD6C -/* 802CBD64 7F C3 F3 78 */ mr r3, r30 -/* 802CBD68 48 00 2F D5 */ bl __dl__FPv -lbl_802CBD6C: -/* 802CBD6C 7F C3 F3 78 */ mr r3, r30 -/* 802CBD70 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802CBD74 83 C1 00 08 */ lwz r30, 8(r1) -/* 802CBD78 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802CBD7C 7C 08 03 A6 */ mtlr r0 -/* 802CBD80 38 21 00 10 */ addi r1, r1, 0x10 -/* 802CBD84 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SpeechMgr2/framework__12Z2SpeechMgr2Fv.s b/asm/Z2AudioLib/Z2SpeechMgr2/framework__12Z2SpeechMgr2Fv.s deleted file mode 100644 index 2d49d3d95ee..00000000000 --- a/asm/Z2AudioLib/Z2SpeechMgr2/framework__12Z2SpeechMgr2Fv.s +++ /dev/null @@ -1,20 +0,0 @@ -lbl_802CC9D0: -/* 802CC9D0 88 03 03 FE */ lbz r0, 0x3fe(r3) -/* 802CC9D4 2C 00 00 03 */ cmpwi r0, 3 -/* 802CC9D8 4C 80 00 20 */ bgelr -/* 802CC9DC 2C 00 00 01 */ cmpwi r0, 1 -/* 802CC9E0 4D 80 00 20 */ bltlr -/* 802CC9E4 80 03 00 00 */ lwz r0, 0(r3) -/* 802CC9E8 28 00 00 00 */ cmplwi r0, 0 -/* 802CC9EC 41 82 00 20 */ beq lbl_802CCA0C -/* 802CC9F0 88 83 03 FF */ lbz r4, 0x3ff(r3) -/* 802CC9F4 38 04 00 01 */ addi r0, r4, 1 -/* 802CC9F8 98 03 03 FF */ stb r0, 0x3ff(r3) -/* 802CC9FC 88 03 03 FF */ lbz r0, 0x3ff(r3) -/* 802CCA00 28 00 00 1E */ cmplwi r0, 0x1e -/* 802CCA04 4C 81 00 20 */ blelr -/* 802CCA08 4E 80 00 20 */ blr -lbl_802CCA0C: -/* 802CCA0C 38 00 00 00 */ li r0, 0 -/* 802CCA10 B0 03 03 FA */ sth r0, 0x3fa(r3) -/* 802CCA14 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SpeechMgr2/isMidnaSpeak__12Z2SpeechMgr2Fv.s b/asm/Z2AudioLib/Z2SpeechMgr2/isMidnaSpeak__12Z2SpeechMgr2Fv.s deleted file mode 100644 index 59e68661d26..00000000000 --- a/asm/Z2AudioLib/Z2SpeechMgr2/isMidnaSpeak__12Z2SpeechMgr2Fv.s +++ /dev/null @@ -1,15 +0,0 @@ -lbl_802CCF88: -/* 802CCF88 88 03 03 FE */ lbz r0, 0x3fe(r3) -/* 802CCF8C 28 00 00 01 */ cmplwi r0, 1 -/* 802CCF90 41 82 00 0C */ beq lbl_802CCF9C -/* 802CCF94 28 00 00 02 */ cmplwi r0, 2 -/* 802CCF98 40 82 00 18 */ bne lbl_802CCFB0 -lbl_802CCF9C: -/* 802CCF9C 80 03 00 00 */ lwz r0, 0(r3) -/* 802CCFA0 28 00 00 00 */ cmplwi r0, 0 -/* 802CCFA4 41 82 00 0C */ beq lbl_802CCFB0 -/* 802CCFA8 38 60 00 01 */ li r3, 1 -/* 802CCFAC 4E 80 00 20 */ blr -lbl_802CCFB0: -/* 802CCFB0 38 60 00 00 */ li r3, 0 -/* 802CCFB4 4E 80 00 20 */ blr diff --git a/asm/Z2AudioLib/Z2SpeechMgr2/isNonVerbal__12Z2SpeechMgr2Fv.s b/asm/Z2AudioLib/Z2SpeechMgr2/isNonVerbal__12Z2SpeechMgr2Fv.s deleted file mode 100644 index 0e9baa39129..00000000000 --- a/asm/Z2AudioLib/Z2SpeechMgr2/isNonVerbal__12Z2SpeechMgr2Fv.s +++ /dev/null @@ -1,132 +0,0 @@ -lbl_802CC2FC: -/* 802CC2FC A8 03 03 FA */ lha r0, 0x3fa(r3) -/* 802CC300 54 00 08 3C */ slwi r0, r0, 1 -/* 802CC304 7C 83 02 14 */ add r4, r3, r0 -/* 802CC308 A0 A4 00 10 */ lhz r5, 0x10(r4) -/* 802CC30C 3C 80 00 01 */ lis r4, 0x0001 /* 0x00008162@ha */ -/* 802CC310 38 04 81 62 */ addi r0, r4, 0x8162 /* 0x00008162@l */ -/* 802CC314 7C 05 00 00 */ cmpw r5, r0 -/* 802CC318 41 82 01 68 */ beq lbl_802CC480 -/* 802CC31C 40 80 00 9C */ bge lbl_802CC3B8 -/* 802CC320 2C 05 00 5B */ cmpwi r5, 0x5b -/* 802CC324 40 80 00 4C */ bge lbl_802CC370 -/* 802CC328 2C 05 00 3A */ cmpwi r5, 0x3a -/* 802CC32C 40 80 00 24 */ bge lbl_802CC350 -/* 802CC330 2C 05 00 20 */ cmpwi r5, 0x20 -/* 802CC334 40 80 00 10 */ bge lbl_802CC344 -/* 802CC338 2C 05 00 00 */ cmpwi r5, 0 -/* 802CC33C 41 82 01 44 */ beq lbl_802CC480 -/* 802CC340 48 00 01 48 */ b lbl_802CC488 -lbl_802CC344: -/* 802CC344 2C 05 00 30 */ cmpwi r5, 0x30 -/* 802CC348 40 80 01 40 */ bge lbl_802CC488 -/* 802CC34C 48 00 01 34 */ b lbl_802CC480 -lbl_802CC350: -/* 802CC350 2C 05 00 4B */ cmpwi r5, 0x4b -/* 802CC354 40 80 00 10 */ bge lbl_802CC364 -/* 802CC358 2C 05 00 40 */ cmpwi r5, 0x40 -/* 802CC35C 40 80 01 2C */ bge lbl_802CC488 -/* 802CC360 48 00 01 20 */ b lbl_802CC480 -lbl_802CC364: -/* 802CC364 2C 05 00 50 */ cmpwi r5, 0x50 -/* 802CC368 40 80 01 20 */ bge lbl_802CC488 -/* 802CC36C 48 00 01 14 */ b lbl_802CC480 -lbl_802CC370: -/* 802CC370 38 04 81 51 */ addi r0, r4, -32431 -/* 802CC374 7C 05 00 00 */ cmpw r5, r0 -/* 802CC378 41 82 01 08 */ beq lbl_802CC480 -/* 802CC37C 40 80 00 2C */ bge lbl_802CC3A8 -/* 802CC380 38 04 81 3F */ addi r0, r4, -32449 -/* 802CC384 7C 05 00 00 */ cmpw r5, r0 -/* 802CC388 40 80 00 10 */ bge lbl_802CC398 -/* 802CC38C 2C 05 00 60 */ cmpwi r5, 0x60 -/* 802CC390 40 80 00 F8 */ bge lbl_802CC488 -/* 802CC394 48 00 00 EC */ b lbl_802CC480 -lbl_802CC398: -/* 802CC398 38 04 81 4C */ addi r0, r4, -32436 -/* 802CC39C 7C 05 00 00 */ cmpw r5, r0 -/* 802CC3A0 40 80 00 E8 */ bge lbl_802CC488 -/* 802CC3A4 48 00 00 DC */ b lbl_802CC480 -lbl_802CC3A8: -/* 802CC3A8 38 04 81 5E */ addi r0, r4, -32418 -/* 802CC3AC 7C 05 00 00 */ cmpw r5, r0 -/* 802CC3B0 41 82 00 D0 */ beq lbl_802CC480 -/* 802CC3B4 48 00 00 D4 */ b lbl_802CC488 -lbl_802CC3B8: -/* 802CC3B8 38 04 81 7B */ addi r0, r4, -32389 -/* 802CC3BC 7C 05 00 00 */ cmpw r5, r0 -/* 802CC3C0 40 80 00 6C */ bge lbl_802CC42C -/* 802CC3C4 38 04 81 6D */ addi r0, r4, -32403 -/* 802CC3C8 7C 05 00 00 */ cmpw r5, r0 -/* 802CC3CC 40 80 00 34 */ bge lbl_802CC400 -/* 802CC3D0 38 04 81 67 */ addi r0, r4, -32409 -/* 802CC3D4 7C 05 00 00 */ cmpw r5, r0 -/* 802CC3D8 41 82 00 B0 */ beq lbl_802CC488 -/* 802CC3DC 40 80 00 14 */ bge lbl_802CC3F0 -/* 802CC3E0 38 04 81 66 */ addi r0, r4, -32410 -/* 802CC3E4 7C 05 00 00 */ cmpw r5, r0 -/* 802CC3E8 40 80 00 98 */ bge lbl_802CC480 -/* 802CC3EC 48 00 00 9C */ b lbl_802CC488 -lbl_802CC3F0: -/* 802CC3F0 38 04 81 6B */ addi r0, r4, -32405 -/* 802CC3F4 7C 05 00 00 */ cmpw r5, r0 -/* 802CC3F8 40 80 00 90 */ bge lbl_802CC488 -/* 802CC3FC 48 00 00 84 */ b lbl_802CC480 -lbl_802CC400: -/* 802CC400 38 04 81 75 */ addi r0, r4, -32395 -/* 802CC404 7C 05 00 00 */ cmpw r5, r0 -/* 802CC408 40 80 00 14 */ bge lbl_802CC41C -/* 802CC40C 38 04 81 73 */ addi r0, r4, -32397 -/* 802CC410 7C 05 00 00 */ cmpw r5, r0 -/* 802CC414 40 80 00 74 */ bge lbl_802CC488 -/* 802CC418 48 00 00 68 */ b lbl_802CC480 -lbl_802CC41C: -/* 802CC41C 38 04 81 77 */ addi r0, r4, -32393 -/* 802CC420 7C 05 00 00 */ cmpw r5, r0 -/* 802CC424 40 80 00 64 */ bge lbl_802CC488 -/* 802CC428 48 00 00 58 */ b lbl_802CC480 -lbl_802CC42C: -/* 802CC42C 38 04 81 8F */ addi r0, r4, -32369 -/* 802CC430 7C 05 00 00 */ cmpw r5, r0 -/* 802CC434 40 80 00 24 */ bge lbl_802CC458 -/* 802CC438 38 04 81 81 */ addi r0, r4, -32383 -/* 802CC43C 7C 05 00 00 */ cmpw r5, r0 -/* 802CC440 41 82 00 40 */ beq lbl_802CC480 -/* 802CC444 40 80 00 44 */ bge lbl_802CC488 -/* 802CC448 38 04 81 7D */ addi r0, r4, -32387 -/* 802CC44C 7C 05 00 00 */ cmpw r5, r0 -/* 802CC450 40 80 00 38 */ bge lbl_802CC488 -/* 802CC454 48 00 00 2C */ b lbl_802CC480 -lbl_802CC458: -/* 802CC458 38 04 81 93 */ addi r0, r4, -32365 -/* 802CC45C 7C 05 00 00 */ cmpw r5, r0 -/* 802CC460 40 80 00 14 */ bge lbl_802CC474 -/* 802CC464 38 04 81 91 */ addi r0, r4, -32367 -/* 802CC468 7C 05 00 00 */ cmpw r5, r0 -/* 802CC46C 40 80 00 1C */ bge lbl_802CC488 -/* 802CC470 48 00 00 10 */ b lbl_802CC480 -lbl_802CC474: -/* 802CC474 38 04 81 97 */ addi r0, r4, -32361 -/* 802CC478 7C 05 00 00 */ cmpw r5, r0 -/* 802CC47C 40 80 00 0C */ bge lbl_802CC488 -lbl_802CC480: -/* 802CC480 38 60 00 01 */ li r3, 1 -/* 802CC484 4E 80 00 20 */ blr -lbl_802CC488: -/* 802CC488 28 05 00 0A */ cmplwi r5, 0xa -/* 802CC48C 40 82 00 2C */ bne lbl_802CC4B8 -/* 802CC490 88 03 03 FE */ lbz r0, 0x3fe(r3) -/* 802CC494 2C 00 00 03 */ cmpwi r0, 3 -/* 802CC498 40 80 00 18 */ bge lbl_802CC4B0 -/* 802CC49C 2C 00 00 01 */ cmpwi r0, 1 -/* 802CC4A0 40 80 00 08 */ bge lbl_802CC4A8 -/* 802CC4A4 48 00 00 0C */ b lbl_802CC4B0 -lbl_802CC4A8: -/* 802CC4A8 38 60 00 00 */ li r3, 0 -/* 802CC4AC 4E 80 00 20 */ blr -lbl_802CC4B0: -/* 802CC4B0 38 60 00 01 */ li r3, 1 -/* 802CC4B4 4E 80 00 20 */ blr -lbl_802CC4B8: -/* 802CC4B8 38 60 00 00 */ li r3, 0 -/* 802CC4BC 4E 80 00 20 */ blr diff --git a/include/JSystem/JAudio2/JAISeqMgr.h b/include/JSystem/JAudio2/JAISeqMgr.h index b0373ef4d49..86b5dbe21af 100644 --- a/include/JSystem/JAudio2/JAISeqMgr.h +++ b/include/JSystem/JAudio2/JAISeqMgr.h @@ -13,7 +13,7 @@ class JAISeqMgr : public JAISeqDataUser, public JASGlobalInstance { public: /* 802A1914 */ JAISeqMgr(bool); /* 802A1A08 */ void freeDeadSeq_(); - /* 802A1B48 */ void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); + /* 802A1B48 */ int startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); /* 802A1C90 */ void calc(); /* 802A1DFC */ void stop(); /* 802A1E3C */ void stop(u32); diff --git a/include/JSystem/JAudio2/JAISound.h b/include/JSystem/JAudio2/JAISound.h index 5a60a6eae26..310622c84fc 100644 --- a/include/JSystem/JAudio2/JAISound.h +++ b/include/JSystem/JAudio2/JAISound.h @@ -8,7 +8,7 @@ class JAISoundID { public: operator u32() const { return this->mId.mFullId; } - void operator=(JAISoundID const& other) { mId.mFullId = other.mId.mFullId; }; + const JAISoundID& operator=(JAISoundID const& other) { mId.mFullId = other.mId.mFullId; return *this; }; JAISoundID(u32 pId) { mId.mFullId = pId; }; @@ -16,6 +16,10 @@ public: JAISoundID() {} + // Helps solve some JAISoundID ctor/assignment operator stack issues + // Remove when solved + void stackCopyHelper(JAISoundID other) { mId = other.mId; } + bool isAnonymous() { return mId.mFullId == 0xffffffff; } void setAnonymous() { mId.mFullId = -1; } @@ -284,6 +288,8 @@ public: return; } + JAISoundParamsProperty& getProperty() { return params.mProperty; } + s32 getCount() const { return mCount; } JAISoundParamsMove& getAuxiliary() { return params.mMove; } diff --git a/include/JSystem/JAudio2/JAIStreamMgr.h b/include/JSystem/JAudio2/JAIStreamMgr.h index 2ce2b8f8842..c98c1b9d6bb 100644 --- a/include/JSystem/JAudio2/JAIStreamMgr.h +++ b/include/JSystem/JAudio2/JAIStreamMgr.h @@ -3,26 +3,17 @@ #include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" +#include "JSystem/JAudio2/JAIStream.h" #include "JSystem/JSupport/JSUList.h" #include "JSystem/JUtility/JUTAssert.h" class JAIStreamAramMgr; class JAIStreamDataMgr; -class JAIStreamMgr; - -class JAIStream { -public: - /* 802A3104 */ JAIStream(JAIStreamMgr*, JAISoundStrategyMgr*); - /* 802A319C */ void JAIStreamMgr_startID_(JAISoundID, s32, JGeometry::TVec3 const*, - JAIAudience*, int); - /* 802A34E4 */ void JAIStreamMgr_mixOut_(JASSoundParams const&, JAISoundActivity); - /* 802A388C */ void JAIStreamMgr_calc_(); -}; class JAIStreamMgr : public JASGlobalInstance { public: /* 802A3B68 */ JAIStreamMgr(bool); - /* 802A3C3C */ void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); + /* 802A3C3C */ int startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); /* 802A3D70 */ void freeDeadStream_(); /* 802A3EBC */ void calc(); /* 802A4028 */ void stop(); diff --git a/include/JSystem/JAudio2/JAUAudibleParam.h b/include/JSystem/JAudio2/JAUAudibleParam.h index 079864c06e6..7ff7e874255 100644 --- a/include/JSystem/JAudio2/JAUAudibleParam.h +++ b/include/JSystem/JAudio2/JAUAudibleParam.h @@ -13,10 +13,7 @@ struct JAUAudibleParam { u16 f1; } half; struct { - u8 b0_0 : 1; - u8 b0_1 : 1; - u8 b0_2 : 1; - u8 b0_3 : 1; + u8 b0_0 : 4; u8 b0_4 : 1; u8 b0_5 : 1; u8 b0_6 : 1; diff --git a/include/JSystem/JAudio2/JAUSoundInfo.h b/include/JSystem/JAudio2/JAUSoundInfo.h index 078f1db9240..9aa0e9d4231 100644 --- a/include/JSystem/JAudio2/JAUSoundInfo.h +++ b/include/JSystem/JAudio2/JAUSoundInfo.h @@ -3,11 +3,12 @@ #include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" +#include "JSystem/JAudio2/JAUAudibleParam.h" class JAUSoundInfo : public JASGlobalInstance { public: JAUSoundInfo(bool param_0) : JASGlobalInstance(param_0) {} - virtual void getAudibleSw(JAISoundID) const = 0; + virtual u16 getAudibleSw(JAISoundID) const = 0; virtual u16 getBgmSeqResourceID(JAISoundID) const = 0; }; diff --git a/include/JSystem/JAudio2/JAUSoundTable.h b/include/JSystem/JAudio2/JAUSoundTable.h index a91f7111185..67e0d720144 100644 --- a/include/JSystem/JAudio2/JAUSoundTable.h +++ b/include/JSystem/JAudio2/JAUSoundTable.h @@ -4,6 +4,14 @@ #include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" +struct JAUSoundTableItem { + u8 mPriority; + u8 field_0x1; + u16 mResourceId; + u32 field_0x4; + f32 field_0x8; +}; + template struct JAUSoundTable_ { JAUSoundTable_() { @@ -116,16 +124,18 @@ struct JAUSoundTable : public JASGlobalInstance { /* 802A7114 */ void init(void const*); /* 802A7160 */ u8 getTypeID(JAISoundID) const; - /* 802A728C */ void* getData(JAISoundID) const; + /* 802A728C */ JAUSoundTableItem* getData(JAISoundID) const; - void* getItem(JAUSoundTableGroup* group, int index) const { + JAUSoundTableItem* getItem(JAUSoundTableGroup* group, int index) const { u32 offset = group->getItemOffset(index); if (offset == 0) { return NULL; } - return (void*)((u8*)field_0x0.field_0x0 + offset); + return (JAUSoundTableItem*)((u8*)field_0x0.field_0x0 + offset); } + const void* getResource() { return field_0x0.field_0x0; } + JAUSoundTable_ field_0x0; }; diff --git a/include/JSystem/JMath/random.h b/include/JSystem/JMath/random.h index c8448ed5130..84d3dfa64c0 100644 --- a/include/JSystem/JMath/random.h +++ b/include/JSystem/JMath/random.h @@ -15,6 +15,10 @@ struct TRandom_fast_ { u32 get_bit32(void) { return this->get(); } + s8 get_uint8(u8 param_0) { + return get_ufloat_1() * param_0; + } + // due to the float constant, having this function inlined adds that float to data, // making it not match float get_ufloat_1(void) { diff --git a/include/Z2AudioLib/Z2Creature.h b/include/Z2AudioLib/Z2Creature.h index b924d5e97e1..8da78344490 100644 --- a/include/Z2AudioLib/Z2Creature.h +++ b/include/Z2AudioLib/Z2Creature.h @@ -39,7 +39,7 @@ struct Z2LinkSoundStarter : public Z2SoundStarter { Z2LinkSoundStarter(); inline virtual ~Z2LinkSoundStarter(); - virtual void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*, u32, f32, + virtual int startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*, u32, f32, f32, f32, f32, f32, u32); }; @@ -126,7 +126,7 @@ struct Z2RideSoundStarter : public Z2SoundStarter { /* 802C5234 */ Z2RideSoundStarter(Z2CreatureRide*); /* 802C5078 */ inline virtual ~Z2RideSoundStarter(); - /* 802C5284 */ virtual void startSound(JAISoundID, JAISoundHandle*, + /* 802C5284 */ virtual int startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*, u32, f32, f32, f32, f32, f32, u32); diff --git a/include/Z2AudioLib/Z2EnvSeMgr.h b/include/Z2AudioLib/Z2EnvSeMgr.h index b85ecb2cdb2..9b65c8acf3e 100644 --- a/include/Z2AudioLib/Z2EnvSeMgr.h +++ b/include/Z2AudioLib/Z2EnvSeMgr.h @@ -73,7 +73,7 @@ struct Z2EnvSeMgr : public JASGlobalInstance { /* 802C92C8 */ void registWolfSmellSePos(Vec*); /* 802C92EC */ void startFogWipeTrigger(Vec*); /* 802C93A0 */ void setFogWipeWidth(f32); - /* 802C93E4 */ void getFogDensity(); + /* 802C93E4 */ f32 getFogDensity(); /* 802C9400 */ void startFogSe(); /* 802C950C */ void initLv3WaterSe(u8, u8, u8, u8); /* 802C9F58 */ void registLv3WaterSePos(u8, Vec*); @@ -170,4 +170,8 @@ STATIC_ASSERT(sizeof(Z2EnvSeMgr) == 0x30C); extern Z2EnvSeMgr g_mEnvSeMgr; +inline Z2EnvSeMgr* Z2GetEnvSeMgr() { + return JASGlobalInstance::getInstance(); +} + #endif /* Z2ENVSEMGR_H */ diff --git a/include/Z2AudioLib/Z2SceneMgr.h b/include/Z2AudioLib/Z2SceneMgr.h index 15a0e3c410c..76ca05df973 100644 --- a/include/Z2AudioLib/Z2SceneMgr.h +++ b/include/Z2AudioLib/Z2SceneMgr.h @@ -4,6 +4,8 @@ #include "JSystem/JAudio2/JAISound.h" #include "JSystem/JAudio2/JASGadget.h" +s8 dComIfGp_getReverb(int roomNo); + class Z2SceneMgr : public JASGlobalInstance { public: Z2SceneMgr(); @@ -31,6 +33,8 @@ public: bool isSceneExist() const { return sceneExist; } int getCurrentSceneNum() const { return sceneNum; } bool isInGame() const { return inGame; } + bool isInDarkness() const { return inDarkness; } + s8 getRoomReverb() const { return dComIfGp_getReverb(roomNum); } private: /* 0x00 */ long BGM_ID; diff --git a/include/Z2AudioLib/Z2SoundInfo.h b/include/Z2AudioLib/Z2SoundInfo.h index 3a34017f6f6..369d5fd311a 100644 --- a/include/Z2AudioLib/Z2SoundInfo.h +++ b/include/Z2AudioLib/Z2SoundInfo.h @@ -4,11 +4,12 @@ #include "JSystem/JAudio2/JAISoundInfo.h" #include "JSystem/JAudio2/JAIStreamDataMgr.h" #include "JSystem/JAudio2/JAUSoundInfo.h" +#include "JSystem/JAudio2/JAUAudibleParam.h" class Z2SoundInfo : public JAISoundInfo, public JAUSoundInfo, public JAIStreamDataMgr, public JASGlobalInstance { public: Z2SoundInfo() : JAISoundInfo(true), JAUSoundInfo(true), JASGlobalInstance(true) {} - /* 802BB448 */ virtual void getAudibleSw(JAISoundID) const; + /* 802BB448 */ virtual u16 getAudibleSw(JAISoundID) const; /* 802BB00C */ virtual u16 getBgmSeqResourceID(JAISoundID) const; /* 802BBA88 */ virtual s32 getStreamFileEntry(JAISoundID); /* 802BB090 */ virtual u32 getSoundType(JAISoundID) const; @@ -19,12 +20,13 @@ public: /* 802BB8E0 */ virtual void getStreamInfo(JAISoundID, JAIStream*) const; /* 802BBBE0 */ virtual ~Z2SoundInfo(); - /* 802BB158 */ u32 getAudibleSwFull(JAISoundID); + /* 802BB158 */ JAUAudibleParam getAudibleSwFull(JAISoundID); /* 802BBA10 */ const char* getStreamFilePath(JAISoundID); /* 802BBAC8 */ int getSwBit(JAISoundID) const; /* 802BBB48 */ void getSoundInfo_(JAISoundID, JAISound*) const; }; + inline Z2SoundInfo* Z2GetSoundInfo() { return JASGlobalInstance::getInstance(); } diff --git a/include/Z2AudioLib/Z2SoundStarter.h b/include/Z2AudioLib/Z2SoundStarter.h index 04ec9ab754d..42d6404a7a0 100644 --- a/include/Z2AudioLib/Z2SoundStarter.h +++ b/include/Z2AudioLib/Z2SoundStarter.h @@ -7,11 +7,11 @@ struct Z2SoundStarter : public JAISoundStarter, public JASGlobalInstance { Z2SoundStarter(bool); void setPortData(JAISoundHandle*, u32, u16, s8); - void getPortData(JAISoundHandle*, u32, s8); + u16 getPortData(JAISoundHandle*, u32, s8); - virtual ~Z2SoundStarter(); - virtual void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); - virtual void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*, u32, float, + virtual ~Z2SoundStarter() {} + virtual int startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); + virtual int startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*, u32, float, float, float, float, float, u32); }; diff --git a/include/Z2AudioLib/Z2SpeechMgr2.h b/include/Z2AudioLib/Z2SpeechMgr2.h index 512e151ce02..242d1ec9b0d 100644 --- a/include/Z2AudioLib/Z2SpeechMgr2.h +++ b/include/Z2AudioLib/Z2SpeechMgr2.h @@ -10,7 +10,7 @@ struct Z2SpeechStarter : public Z2SoundStarter { /* 802CCFB8 */ Z2SpeechStarter(); /* 802CBCEC */ virtual ~Z2SpeechStarter(); - /* 802CCFF8 */ virtual void startSound(JAISoundID, JAISoundHandle*, + /* 802CCFF8 */ virtual int startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*, u32, f32, f32, f32, f32, f32, u32); }; @@ -20,26 +20,26 @@ struct Z2SpeechMgr2 : public JASGlobalInstance { /* 802CBD88 */ void setString(u16 const*, s16, u8, u16); /* 802CBF60 */ void setTextCount(s16); /* 802CC190 */ void speakOneWord(bool); - /* 802CC2FC */ void isNonVerbal(); + /* 802CC2FC */ bool isNonVerbal(); /* 802CC4C0 */ void selectUnit(bool); /* 802CC738 */ void selectTail(); /* 802CC9D0 */ void framework(); /* 802CCA18 */ void playOneShotVoice(u8, u16, Vec*, s8); - /* 802CCF88 */ void isMidnaSpeak(); + /* 802CCF88 */ bool isMidnaSpeak(); /* 0x000 */ JAISoundHandle field_0x0; /* 0x004 */ JAISoundHandle field_0x4; /* 0x008 */ JMath::TRandom_fast_ random; /* 0x00C */ Z2SpeechStarter mSpeech; /* 0x010 */ u16 field_0x10[500]; - /* 0x3F8 */ u16 field_0x3f8; - /* 0x3FA */ u16 field_0x3fa; + /* 0x3F8 */ s16 field_0x3f8; + /* 0x3FA */ s16 field_0x3fa; /* 0x3FC */ u16 field_0x3fc; /* 0x3FE */ u8 field_0x3fe; /* 0x3FF */ u8 field_0x3ff; /* 0x400 */ u8 field_0x400; /* 0x401 */ u8 field_0x401; - /* 0x402 */ u8 field_0x402[64]; + /* 0x402 */ s8 field_0x402[64]; }; // Size: 0x444 STATIC_ASSERT(sizeof(Z2SpeechMgr2) == 0x444); diff --git a/include/Z2AudioLib/Z2StatusMgr.h b/include/Z2AudioLib/Z2StatusMgr.h index 4c8e248b262..6194388d72b 100644 --- a/include/Z2AudioLib/Z2StatusMgr.h +++ b/include/Z2AudioLib/Z2StatusMgr.h @@ -24,6 +24,7 @@ struct Z2StatusMgr : public JASGlobalInstance { void setHour(s32 hour) { mHour = hour; } void setMinute(s32 min) { mMinute = min; } void setWeekday(s32 day) { mWeekday = day; } + f32 getCameraInWaterDepthRatio() const { return mCameraInWaterDepthRatio; } /* 0x00 */ u8 mHour; /* 0x01 */ u8 mMinute; diff --git a/libs/JSystem/JAudio2/JAISeqMgr.cpp b/libs/JSystem/JAudio2/JAISeqMgr.cpp index 041608e4c89..d76ba7b0c7f 100644 --- a/libs/JSystem/JAudio2/JAISeqMgr.cpp +++ b/libs/JSystem/JAudio2/JAISeqMgr.cpp @@ -185,7 +185,7 @@ extern "C" asm void func_802A1AF4(void* _this) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void JAISeqMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1, +asm int JAISeqMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1, JGeometry::TVec3 const* param_2) { nofralloc #include "asm/JSystem/JAudio2/JAISeqMgr/func_802A1B48.s" diff --git a/libs/JSystem/JAudio2/JAIStreamMgr.cpp b/libs/JSystem/JAudio2/JAIStreamMgr.cpp index b3772bb516f..fa02145a0d9 100644 --- a/libs/JSystem/JAudio2/JAIStreamMgr.cpp +++ b/libs/JSystem/JAudio2/JAIStreamMgr.cpp @@ -107,7 +107,7 @@ asm JAIStreamMgr::JAIStreamMgr(bool param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void JAIStreamMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1, +asm int JAIStreamMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1, JGeometry::TVec3 const* param_2) { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/func_802A3C3C.s" diff --git a/libs/JSystem/JAudio2/JAUSoundTable.cpp b/libs/JSystem/JAudio2/JAUSoundTable.cpp index 1deb81f88c5..26371815976 100644 --- a/libs/JSystem/JAudio2/JAUSoundTable.cpp +++ b/libs/JSystem/JAudio2/JAUSoundTable.cpp @@ -32,7 +32,7 @@ u8 JAUSoundTable::getTypeID(JAISoundID param_0) const { } /* 802A728C-802A73D4 2A1BCC 0148+00 0/0 7/7 0/0 .text getData__13JAUSoundTableCF10JAISoundID */ -void* JAUSoundTable::getData(JAISoundID param_0) const { +JAUSoundTableItem* JAUSoundTable::getData(JAISoundID param_0) const { if (param_0.isAnonymous()) { return NULL; } diff --git a/libs/Z2AudioLib/Z2EnvSeMgr.cpp b/libs/Z2AudioLib/Z2EnvSeMgr.cpp index 00dc4475cf5..58e18f4b9a7 100644 --- a/libs/Z2AudioLib/Z2EnvSeMgr.cpp +++ b/libs/Z2AudioLib/Z2EnvSeMgr.cpp @@ -1022,7 +1022,7 @@ asm void Z2EnvSeMgr::setFogWipeWidth(f32 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void Z2EnvSeMgr::getFogDensity() { +asm f32 Z2EnvSeMgr::getFogDensity() { nofralloc #include "asm/Z2AudioLib/Z2EnvSeMgr/getFogDensity__10Z2EnvSeMgrFv.s" } diff --git a/libs/Z2AudioLib/Z2LinkMgr.cpp b/libs/Z2AudioLib/Z2LinkMgr.cpp index 66eb887cf22..11fc245054a 100644 --- a/libs/Z2AudioLib/Z2LinkMgr.cpp +++ b/libs/Z2AudioLib/Z2LinkMgr.cpp @@ -19,7 +19,7 @@ struct Z2SoundObjCoach { /* 802C54FC */ void init(Vec*, u8); /* 802C551C */ void startWheelSound(f32); /* 802C56C0 */ void startFireSound(u16); - /* 802C57C0 */ void startSound(JAISoundID, u32, s8); + /* 802C57C0 */ int startSound(JAISoundID, u32, s8); }; // @@ -634,7 +634,7 @@ SECTION_SDATA2 static f32 lit_4399 = 9.0f / 10.0f; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void Z2LinkSoundStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, +asm int Z2LinkSoundStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, JGeometry::TVec3 const* param_2, u32 param_3, f32 param_4, f32 param_5, f32 param_6, f32 param_7, f32 param_8, u32 param_9) { @@ -697,7 +697,7 @@ Z2RideSoundStarter::Z2RideSoundStarter(Z2CreatureRide* ride) : Z2SoundStarter(fa #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void Z2RideSoundStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, +asm int Z2RideSoundStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, JGeometry::TVec3 const* param_2, u32 param_3, f32 param_4, f32 param_5, f32 param_6, f32 param_7, f32 param_8, u32 param_9) { @@ -777,7 +777,7 @@ asm void Z2SoundObjCoach::startFireSound(u16 param_0) { #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void Z2SoundObjCoach::startSound(JAISoundID param_0, u32 param_1, s8 param_2) { +asm int Z2SoundObjCoach::startSound(JAISoundID param_0, u32 param_1, s8 param_2) { nofralloc #include "asm/Z2AudioLib/Z2LinkMgr/startSound__15Z2SoundObjCoachF10JAISoundIDUlSc.s" } diff --git a/libs/Z2AudioLib/Z2SoundInfo.cpp b/libs/Z2AudioLib/Z2SoundInfo.cpp index 0f32a5d2447..5e5267f9e68 100644 --- a/libs/Z2AudioLib/Z2SoundInfo.cpp +++ b/libs/Z2AudioLib/Z2SoundInfo.cpp @@ -4,7 +4,11 @@ // #include "Z2AudioLib/Z2SoundInfo.h" +#include "Z2AudioLib/Z2Calc.h" #include "JSystem/JAudio2/JAISeq.h" +#include "JSystem/JAudio2/JAISe.h" +#include "JSystem/JAudio2/JAISoundChild.h" +#include "JSystem/JAudio2/JAIStream.h" #include "JSystem/JAudio2/JAUAudibleParam.h" #include "JSystem/JAudio2/JAUSoundTable.h" #include "JSystem/JUtility/JUTAssert.h" @@ -15,13 +19,13 @@ // Types: // -struct Z2Calc { - /* 802A968C */ void linearTransform(f32, f32, f32, f32, f32, bool); - /* 802A98D4 */ void getRandom_0_1(); -}; - struct JAUStdSoundTableType { static u32 STRM_CH_SHIFT; + struct StringOffset { + static inline const char* getString(const void* addr, u32 offset) { + return (const char*)addr + offset; + } + }; }; // @@ -71,20 +75,21 @@ extern "C" extern void* __vt__12JAUSoundInfo[4 + 1 /* padding */]; extern "C" extern u8 data_80450B58[4]; extern "C" extern u8 __OSReport_disable; -// -// Declarations: -// - /* 802BB00C-802BB090 2B594C 0084+00 2/1 0/0 0/0 .text * getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm u16 Z2SoundInfo::getBgmSeqResourceID(JAISoundID param_0) const { - nofralloc -#include "asm/Z2AudioLib/Z2SoundInfo/getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID.s" +u16 Z2SoundInfo::getBgmSeqResourceID(JAISoundID param_0) const { + JUT_ASSERT(20, isValid()); + JAUSoundTableItem* data = JASGlobalInstance::getInstance()->getData(param_0); + u8 typeID = JASGlobalInstance::getInstance()->getTypeID(param_0); + + if (data != NULL) { + switch ((typeID & 0xf0)) { + case 0x60: + return data->mResourceId; + } + } + return 0xffff; } -#pragma pop /* 802BB090-802BB0D8 2B59D0 0048+00 1/0 0/0 0/0 .text getSoundType__11Z2SoundInfoCF10JAISoundID */ u32 Z2SoundInfo::getSoundType(JAISoundID param_0) const { @@ -105,35 +110,140 @@ int Z2SoundInfo::getCategory(JAISoundID param_0) const { } /* 802BB0E0-802BB158 2B5A20 0078+00 1/0 0/0 0/0 .text getPriority__11Z2SoundInfoCF10JAISoundID */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm u32 Z2SoundInfo::getPriority(JAISoundID param_0) const { - nofralloc -#include "asm/Z2AudioLib/Z2SoundInfo/getPriority__11Z2SoundInfoCF10JAISoundID.s" +u32 Z2SoundInfo::getPriority(JAISoundID param_0) const { + JUT_ASSERT(63, isValid()); + JAUSoundTableItem* data = JASGlobalInstance::getInstance()->getData(param_0); + u8 typeID = JASGlobalInstance::getInstance()->getTypeID(param_0); + + if (data != NULL && (typeID & 0x40) != 0) { + return data->mPriority; + } + return 0; } -#pragma pop /* 802BB158-802BB448 2B5A98 02F0+00 0/0 1/1 0/0 .text getAudibleSwFull__11Z2SoundInfoF10JAISoundID */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm u32 Z2SoundInfo::getAudibleSwFull(JAISoundID param_0) { - nofralloc -#include "asm/Z2AudioLib/Z2SoundInfo/getAudibleSwFull__11Z2SoundInfoF10JAISoundID.s" +JAUAudibleParam Z2SoundInfo::getAudibleSwFull(JAISoundID param_0) { + JAUAudibleParam local_28; + JUT_ASSERT(82, isValid()); + switch (JASGlobalInstance::getInstance()->getTypeID(param_0)) { + case 81: + local_28.field_0x0.bytes.b0_0 = (u32)getSwBit(param_0) >> 8; + if ((getSwBit(param_0) & 1) != 0) { + local_28.field_0x0.bytes.b0_4 = 0; + } else { + local_28.field_0x0.bytes.b0_4 = 1; + } + if ((getSwBit(param_0) & 2) != 0) { + local_28.field_0x0.bytes.b0_5 = 0; + } else { + local_28.field_0x0.bytes.b0_5 = 1; + } + if ((getSwBit(param_0) & 4) != 0) { + local_28.field_0x0.bytes.b0_6 = 0; + } else { + local_28.field_0x0.bytes.b0_6 = 1; + } + if ((getSwBit(param_0) & 0x800000) != 0) { + local_28.field_0x0.bytes.b0_7 = 1; + } else { + local_28.field_0x0.bytes.b0_7 = 0; + } + if ((getSwBit(param_0) & 0x1000) != 0) { + local_28.field_0x0.bytes.b1_0 = 0; + } else { + local_28.field_0x0.bytes.b1_0 = 1; + } + if ((getSwBit(param_0) & 0x2000) != 0) { + local_28.field_0x0.bytes.b1_1 = 0; + } else { + local_28.field_0x0.bytes.b1_1 = 1; + } + + int iVar1; + int uVar7 = 0; + if ((getSwBit(param_0) & 0x80000) != 0) { + uVar7 = 8; + } + + iVar1 = (getSwBit(param_0) >> 16) & 0x7; + iVar1 += (getSwBit(param_0) >> 16) & 0x70; + iVar1 += (getSwBit(param_0) >> 16) & 0xf00; + local_28.field_0x0.bytes.b1_2_7 = uVar7; + local_28.field_0x0.half.f1 = iVar1; + break; + default: + local_28.field_0x0.bytes.b0_0 = 0; + local_28.field_0x0.bytes.b0_4 = 1; + local_28.field_0x0.bytes.b0_5 = 1; + local_28.field_0x0.bytes.b0_6 = 1; + local_28.field_0x0.bytes.b0_7 = 0; + local_28.field_0x0.bytes.b1_0 = 1; + local_28.field_0x0.bytes.b1_1 = 1; + local_28.field_0x0.bytes.b1_2_7 = 0; + local_28.field_0x0.half.f1 = 0; + break; + } + return local_28; } -#pragma pop /* 802BB448-802BB6DC 2B5D88 0294+00 2/1 0/0 0/0 .text getAudibleSw__11Z2SoundInfoCF10JAISoundID */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2SoundInfo::getAudibleSw(JAISoundID param_0) const { - nofralloc -#include "asm/Z2AudioLib/Z2SoundInfo/getAudibleSw__11Z2SoundInfoCF10JAISoundID.s" +u16 Z2SoundInfo::getAudibleSw(JAISoundID param_0) const { + JAUAudibleParam local_28; + JUT_ASSERT(184, isValid()); + switch (JASGlobalInstance::getInstance()->getTypeID(param_0)) { + case 81: + local_28.field_0x0.bytes.b0_0 = (u32)getSwBit(param_0) >> 8; + if ((getSwBit(param_0) & 1) != 0) { + local_28.field_0x0.bytes.b0_4 = 0; + } else { + local_28.field_0x0.bytes.b0_4 = 1; + } + if ((getSwBit(param_0) & 2) != 0) { + local_28.field_0x0.bytes.b0_5 = 0; + } else { + local_28.field_0x0.bytes.b0_5 = 1; + } + if ((getSwBit(param_0) & 4) != 0) { + local_28.field_0x0.bytes.b0_6 = 0; + } else { + local_28.field_0x0.bytes.b0_6 = 1; + } + if ((getSwBit(param_0) & 0x800000) != 0) { + local_28.field_0x0.bytes.b0_7 = 1; + } else { + local_28.field_0x0.bytes.b0_7 = 0; + } + if ((getSwBit(param_0) & 0x1000) != 0) { + local_28.field_0x0.bytes.b1_0 = 0; + } else { + local_28.field_0x0.bytes.b1_0 = 1; + } + if ((getSwBit(param_0) & 0x2000) != 0) { + local_28.field_0x0.bytes.b1_1 = 0; + } else { + local_28.field_0x0.bytes.b1_1 = 1; + } + + int iVar1; + int uVar7 = 0; + if ((getSwBit(param_0) & 0x80000) != 0) { + uVar7 = 8; + } + + iVar1 = (getSwBit(param_0) >> 16) & 0x7; + iVar1 += (getSwBit(param_0) >> 16) & 0x70; + iVar1 += (getSwBit(param_0) >> 16) & 0xf00; + local_28.field_0x0.bytes.b1_2_7 = uVar7; + local_28.field_0x0.half.f1 = iVar1; + break; + default: + local_28.field_0x0.half.f0 = 0xffff; + local_28.field_0x0.half.f1 = 0xffff; + break; + } + return local_28.field_0x0.half.f0; } -#pragma pop /* ############################################################################################## */ /* 80455A68-80455A6C 004068 0004+00 1/1 0/0 0/0 .sdata2 @963 */ @@ -171,6 +281,39 @@ SECTION_SDATA2 static f64 lit_973 = 4503599627370496.0 /* cast u32 to float */; /* 802BB6DC-802BB8B4 2B601C 01D8+00 1/0 0/0 0/0 .text * getSeInfo__11Z2SoundInfoCF10JAISoundIDP5JAISe */ +// Matches with literals +#ifdef NONMATCHING +void Z2SoundInfo::getSeInfo(JAISoundID param_1, JAISe* param_2) const { + getSoundInfo_(param_1, param_2); + JUT_ASSERT(292, isValid()); + JAUSoundTableItem* data = JASGlobalInstance::getInstance()->getData(param_1); + u8 typeID = JASGlobalInstance::getInstance()->getTypeID(param_1); + if (data == NULL) { + return; + } + switch(typeID) { + case 81: + param_2->getProperty().field_0x8 *= data->field_0x8; + u32 uStack_6c = (getSwBit(param_1) & 0xf0) >> 4; + if (uStack_6c > 8) { + f32 dVar18 = Z2Calc::getRandom_0_1(); + f32 dVar19 = Z2Calc::linearTransform(uStack_6c, 8.0f, 15.0f, 16.0f, 24.0f, true); + dVar19 = dVar19 / 48.0f * dVar18; + param_2->getProperty().field_0x8 += dVar19; + } else { + f32 dVar18 = Z2Calc::getRandom_0_1(); + dVar18 = (uStack_6c / 48.0f) * dVar18; + param_2->getProperty().field_0x8 += dVar18; + } + u32 uVar1 = (u32)getSwBit(param_1) >> 0x1c; + if (uVar1 != 0) { + f32 dVar18 = (uVar1 / 15.0f) * Z2Calc::getRandom_0_1(); + param_2->getProperty().field_0x0 -= dVar18 < 0.0f ? 0.0f : (dVar18 > 1.0f ? 1.0f : dVar18); + } + break; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -179,6 +322,7 @@ asm void Z2SoundInfo::getSeInfo(JAISoundID param_0, JAISe* param_1) const { #include "asm/Z2AudioLib/Z2SoundInfo/getSeInfo__11Z2SoundInfoCF10JAISoundIDP5JAISe.s" } #pragma pop +#endif /* 802BB8B4-802BB8E0 2B61F4 002C+00 1/0 0/0 0/0 .text * getSeqInfo__11Z2SoundInfoCF10JAISoundIDP6JAISeq */ @@ -195,6 +339,47 @@ SECTION_SDATA2 static f32 lit_1010 = 0.5f; /* 802BB8E0-802BBA10 2B6220 0130+00 1/0 0/0 0/0 .text * getStreamInfo__11Z2SoundInfoCF10JAISoundIDP9JAIStream */ +// regalloc +#ifdef NONMATCHING +void Z2SoundInfo::getStreamInfo(JAISoundID param_1, JAIStream* param_2) const { + int numChild; + JAUSoundTableItem* data; + getSoundInfo_(param_1, param_2); + JUT_ASSERT(349, isValid()); + switch (JASGlobalInstance::getInstance()->getTypeID(param_1) & 0xf0) { + case 0x70: + int chShift; + u32 uVar1; + s32 iVar4; + u16 uVar3; + data = JASGlobalInstance::getInstance()->getData(param_1); + JUT_ASSERT(356, data); + uVar1 = data->mResourceId; + numChild = param_2->getNumChild(); + iVar4 = 0; + chShift = JAUStdSoundTableType::STRM_CH_SHIFT; + for (uVar3 = uVar1; iVar4 < numChild && uVar3 != 0; uVar3 >>= chShift, iVar4++) { + u32 uVar2 = uVar3 & 3; + if (uVar2 != 0) { + JAISoundChild* child = param_2->getChild(iVar4); + if (child != NULL) { + switch (uVar2) { + case 1: + child->mMove.mParams.mPan = 0.5f; + break; + case 2: + child->mMove.mParams.mPan = 0.0f; + break; + case 3: + child->mMove.mParams.mPan = 1.0f; + break; + } + } + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -203,17 +388,24 @@ asm void Z2SoundInfo::getStreamInfo(JAISoundID param_0, JAIStream* param_1) cons #include "asm/Z2AudioLib/Z2SoundInfo/getStreamInfo__11Z2SoundInfoCF10JAISoundIDP9JAIStream.s" } #pragma pop +#endif /* 802BBA10-802BBA88 2B6350 0078+00 1/1 0/0 0/0 .text * getStreamFilePath__11Z2SoundInfoF10JAISoundID */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm const char* Z2SoundInfo::getStreamFilePath(JAISoundID param_0) { - nofralloc -#include "asm/Z2AudioLib/Z2SoundInfo/getStreamFilePath__11Z2SoundInfoF10JAISoundID.s" +const char* Z2SoundInfo::getStreamFilePath(JAISoundID param_1) { + JUT_ASSERT(387, isValid()); + switch (JASGlobalInstance::getInstance()->getTypeID(param_1) & 0xf0) { + case 0x70: + JAUSoundTableItem* data = JASGlobalInstance::getInstance()->getData(param_1); + JUT_ASSERT(394, data); + const void* resource = JASGlobalInstance::getInstance()->getResource(); + JUT_ASSERT(398, resource); + return JAUStdSoundTableType::StringOffset::getString(resource, data->field_0x4); + default: + return NULL; + break; + } } -#pragma pop /* 802BBA88-802BBAC8 2B63C8 0040+00 2/1 0/0 0/0 .text * getStreamFileEntry__11Z2SoundInfoF10JAISoundID */ @@ -223,14 +415,18 @@ s32 Z2SoundInfo::getStreamFileEntry(JAISoundID param_0) { } /* 802BBAC8-802BBB48 2B6408 0080+00 3/3 4/4 0/0 .text getSwBit__11Z2SoundInfoCF10JAISoundID */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm int Z2SoundInfo::getSwBit(JAISoundID param_0) const { - nofralloc -#include "asm/Z2AudioLib/Z2SoundInfo/getSwBit__11Z2SoundInfoCF10JAISoundID.s" +int Z2SoundInfo::getSwBit(JAISoundID param_1) const { + JUT_ASSERT(418, isValid()); + JAUSoundTableItem* data = JASGlobalInstance::getInstance()->getData(param_1); + u8 typeID = JASGlobalInstance::getInstance()->getTypeID(param_1); + if (data != NULL) { + switch(typeID) { + case 81: + return data->field_0x4; + } + } + return 0xffffffff; } -#pragma pop /* ############################################################################################## */ /* 80455A98-80455AA0 004098 0004+04 1/1 0/0 0/0 .sdata2 @1070 */ @@ -242,6 +438,17 @@ SECTION_SDATA2 static f32 lit_1070[1 + 1 /* padding */] = { /* 802BBB48-802BBBE0 2B6488 0098+00 3/3 0/0 0/0 .text * getSoundInfo___11Z2SoundInfoCF10JAISoundIDP8JAISound */ +// Matches with literals +#ifdef NONMATCHING +void Z2SoundInfo::getSoundInfo_(JAISoundID param_1, JAISound* param_2) const { + JUT_ASSERT(440, isValid()); + JAUSoundTableItem* data = JASGlobalInstance::getInstance()->getData(param_1); + u8 typeID = JASGlobalInstance::getInstance()->getTypeID(param_1); + if (data != NULL && (typeID & 0x40) != 0) { + param_2->getProperty().field_0x0 = (1.0f / 127.0f) * data->field_0x1; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -250,42 +457,10 @@ asm void Z2SoundInfo::getSoundInfo_(JAISoundID param_0, JAISound* param_1) const #include "asm/Z2AudioLib/Z2SoundInfo/getSoundInfo___11Z2SoundInfoCF10JAISoundIDP8JAISound.s" } #pragma pop - -/* ############################################################################################## */ -/* 803CAC48-803CAC98 027D68 0050+00 1/1 2/2 0/0 .data __vt__11Z2SoundInfo */ -SECTION_DATA extern void* __vt__11Z2SoundInfo[20] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)getSoundType__11Z2SoundInfoCF10JAISoundID, - (void*)getCategory__11Z2SoundInfoCF10JAISoundID, - (void*)getPriority__11Z2SoundInfoCF10JAISoundID, - (void*)getSeInfo__11Z2SoundInfoCF10JAISoundIDP5JAISe, - (void*)getSeqInfo__11Z2SoundInfoCF10JAISoundIDP6JAISeq, - (void*)getStreamInfo__11Z2SoundInfoCF10JAISoundIDP9JAIStream, - (void*)__dt__11Z2SoundInfoFv, - (void*)NULL, - (void*)NULL, - (void*)func_802BBCC4, - (void*)func_802BBCBC, - (void*)NULL, - (void*)NULL, - (void*)func_802BBCD4, - (void*)func_802BBCCC, - (void*)getAudibleSw__11Z2SoundInfoCF10JAISoundID, - (void*)getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID, - (void*)getStreamFileEntry__11Z2SoundInfoF10JAISoundID, -}; +#endif /* 802BBBE0-802BBCBC 2B6520 00DC+00 2/1 0/0 0/0 .text __dt__11Z2SoundInfoFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -extern "C" asm void __dt__11Z2SoundInfoFv() { - // asm Z2SoundInfo::~Z2SoundInfo() { - nofralloc -#include "asm/Z2AudioLib/Z2SoundInfo/__dt__11Z2SoundInfoFv.s" -} -#pragma pop +Z2SoundInfo::~Z2SoundInfo() {} /* 802BBCBC-802BBCC4 2B65FC 0008+00 1/0 0/0 0/0 .text * @4@getBgmSeqResourceID__11Z2SoundInfoCF10JAISoundID */ diff --git a/libs/Z2AudioLib/Z2SoundStarter.cpp b/libs/Z2AudioLib/Z2SoundStarter.cpp index c9c4416c991..5461fa21e57 100644 --- a/libs/Z2AudioLib/Z2SoundStarter.cpp +++ b/libs/Z2AudioLib/Z2SoundStarter.cpp @@ -1,163 +1,114 @@ // -// Generated By: dol2asm -// Translation Unit: Z2SoundStarter +// Z2SoundStarter // #include "Z2AudioLib/Z2SoundStarter.h" -#include "dol2asm.h" - -// -// Types: -// - -struct Z2EnvSeMgr { - /* 802C93E4 */ void getFogDensity(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - -// -// Forward References: -// - -extern "C" void __ct__14Z2SoundStarterFb(); -extern "C" void func_802AABF4(); -extern "C" void func_802AAC3C(); -extern "C" void setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc(); -extern "C" void getPortData__14Z2SoundStarterFP14JAISoundHandleUlSc(); -extern "C" void __dt__14Z2SoundStarterFv(); - -// -// External References: -// - -extern "C" void openChild__8JASTrackFUl(); -extern "C" void writePort__8JASTrackFUlUs(); -extern "C" void readPort__8JASTrackFUl(); -extern "C" void moveVolume__18JAISoundParamsMoveFfUl(); -extern "C" void movePitch__18JAISoundParamsMoveFfUl(); -extern "C" void moveFxMix__18JAISoundParamsMoveFfUl(); -extern "C" void movePan__18JAISoundParamsMoveFfUl(); -extern "C" void moveDolby__18JAISoundParamsMoveFfUl(); -extern "C" void __ct__15JAISoundStarterFb(); -extern "C" void __dt__15JAISoundStarterFv(); -extern "C" void getFogDensity__10Z2EnvSeMgrFv(); -extern "C" void __dl__FPv(); -extern "C" void _savegpr_26(); -extern "C" void _savegpr_29(); -extern "C" void _restgpr_26(); -extern "C" void _restgpr_29(); -extern "C" extern u8 data_80450B3C[4]; -extern "C" extern u8 data_80450B7C[4]; -extern "C" extern u8 data_80450B80[4]; -extern "C" u8 mAudioMgrPtr__10Z2AudioMgr[4 + 4 /* padding */]; -extern "C" extern u8 __OSReport_disable; - -// -// Declarations: -// - -/* ############################################################################################## */ -/* 803C9D80-803C9D98 026EA0 0014+04 2/2 6/6 0/0 .data __vt__14Z2SoundStarter */ -SECTION_DATA extern void* __vt__14Z2SoundStarter[5 + 1 /* padding */] = { - (void*)NULL /* RTTI */, - (void*)NULL, - (void*)__dt__14Z2SoundStarterFv, - (void*)func_802AABF4, - (void*)func_802AAC3C, - /* padding */ - NULL, -}; +#include "Z2AudioLib/Z2EnvSeMgr.h" +#include "Z2AudioLib/Z2AudioMgr.h" +#include "JSystem/JUtility/JUTAssert.h" /* 802AAB94-802AABF4 2A54D4 0060+00 0/0 4/4 0/0 .text __ct__14Z2SoundStarterFb */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm Z2SoundStarter::Z2SoundStarter(bool param_0) { - nofralloc -#include "asm/Z2AudioLib/Z2SoundStarter/__ct__14Z2SoundStarterFb.s" +Z2SoundStarter::Z2SoundStarter(bool param_0) : JAISoundStarter(param_0), JASGlobalInstance(param_0) { } -#pragma pop - -/* ############################################################################################## */ -/* 80455858-8045585C 003E58 0004+00 2/2 0/0 0/0 .sdata2 @3597 */ -SECTION_SDATA2 static u8 lit_3597[4] = { - 0x00, - 0x00, - 0x00, - 0x00, -}; - -/* 8045585C-80455860 003E5C 0004+00 2/2 0/0 0/0 .sdata2 @3598 */ -SECTION_SDATA2 static f32 lit_3598 = 1.0f; - -/* 80455860-80455864 003E60 0004+00 2/2 0/0 0/0 .sdata2 @3599 */ -SECTION_SDATA2 static f32 lit_3599 = -1.0f; /* 802AABF4-802AAC3C 2A5534 0048+00 1/0 5/0 0/0 .text * startSound__14Z2SoundStarterF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3 */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2SoundStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, - JGeometry::TVec3 const* param_2) { - nofralloc -#include "asm/Z2AudioLib/Z2SoundStarter/func_802AABF4.s" +int Z2SoundStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, + JGeometry::TVec3 const* param_2) { + return Z2SoundStarter::startSound(param_0, param_1, param_2, 0, 0.0f, 1.0f, 1.0f, -1.0f, -1.0f, + 0); } -#pragma pop - -/* ############################################################################################## */ -/* 80455864-80455868 003E64 0004+00 1/1 0/0 0/0 .sdata2 @3713 */ -SECTION_SDATA2 static f32 lit_3713 = 0.5f; - -/* 80455868-80455870 003E68 0008+00 1/1 0/0 0/0 .sdata2 @3717 */ -SECTION_SDATA2 static f64 lit_3717 = 4503599627370496.0 /* cast u32 to float */; /* 802AAC3C-802AAEDC 2A557C 02A0+00 2/1 2/2 0/0 .text * startSound__14Z2SoundStarterF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3UlfffffUl */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2SoundStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, - JGeometry::TVec3 const* param_2, u32 param_3, f32 param_4, - f32 param_5, f32 param_6, f32 param_7, f32 param_8, - u32 param_9) { - nofralloc -#include "asm/Z2AudioLib/Z2SoundStarter/func_802AAC3C.s" +int Z2SoundStarter::startSound(JAISoundID param_1, JAISoundHandle* handlePtr, + JGeometry::TVec3 const* param_3, u32 param_4, f32 param_5, + f32 param_6, f32 param_7, f32 param_8, f32 param_9, u32 param_10) { + JUT_ASSERT(45, handlePtr); + if (param_4 == 6) { + switch ((u32)param_1) { + case 0x6002b: + // TODO: Fix JAISoundID fake match + param_1.stackCopyHelper(0x6002e); + break; + case 0x6002c: + param_1.stackCopyHelper(0x6002f); + break; + case 0x6002d: + param_1.stackCopyHelper(0x60030); + break; + } + } + if (param_1.mId.mBytes.b1 != 0 && param_1.mId.mBytes.b1 != 9) { + if (Z2GetSceneMgr()->isInDarkness()) { + param_5 = 1.0f; + } else { + f32 ratio = Z2GetStatusMgr()->getCameraInWaterDepthRatio(); + f32 uStack_8c = ratio > 0.0f; + if (uStack_8c) { + param_5 = uStack_8c; + } else { + param_5 += 0.5f * Z2GetEnvSeMgr()->getFogDensity(); + if (param_5 > 1.0f) { + param_5 = 1.0f; + } + } + } + } + int startSoundRes = Z2GetAudioMgr()->startSound(param_1, handlePtr, param_3); + if (*handlePtr) { + if (param_4 != 0) { + setPortData(handlePtr, 6, param_4, -1); + } + if (param_5 > 0.0f) { + (*handlePtr)->getAuxiliary().moveFxMix(param_5, param_10); + } + if (param_6 != 1.0f) { + (*handlePtr)->getAuxiliary().movePitch(param_6, param_10); + } + if (param_7 != 1.0f) { + (*handlePtr)->getAuxiliary().moveVolume(param_7, param_10); + } + if (param_8 != -1.0f) { + (*handlePtr)->getAuxiliary().movePan(param_8, param_10); + } + if (param_9 != -1.0f) { + (*handlePtr)->getAuxiliary().moveDolby(param_9, param_10); + } + } + return startSoundRes; } -#pragma pop /* 802AAEDC-802AAF74 2A581C 0098+00 1/1 10/10 0/0 .text * setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2SoundStarter::setPortData(JAISoundHandle* param_0, u32 param_1, u16 param_2, - s8 param_3) { - nofralloc -#include "asm/Z2AudioLib/Z2SoundStarter/setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc.s" +void Z2SoundStarter::setPortData(JAISoundHandle* param_1, u32 param_2, u16 param_3, s8 param_4) { + if (param_1 != NULL && *param_1) { + JASTrack* track = param_1->getSound()->getTrack(); + if (param_4 != -1) { + if (track->getChild(param_4) == NULL) { + track->openChild(param_4); + } + track = track->getChild(param_4); + } + JUT_ASSERT(122, track); + track->writePort(param_2, param_3); + } } -#pragma pop /* 802AAF74-802AAFF0 2A58B4 007C+00 0/0 1/1 0/0 .text * getPortData__14Z2SoundStarterFP14JAISoundHandleUlSc */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2SoundStarter::getPortData(JAISoundHandle* param_0, u32 param_1, s8 param_2) { - nofralloc -#include "asm/Z2AudioLib/Z2SoundStarter/getPortData__14Z2SoundStarterFP14JAISoundHandleUlSc.s" +u16 Z2SoundStarter::getPortData(JAISoundHandle* param_1, u32 param_2, s8 param_3) { + if (param_1 != NULL && *param_1) { + JASTrack* track; + if (param_3 == -1) { + track = param_1->getSound()->getTrack(); + } else { + track = param_1->getSound()->getChildTrack(param_3); + } + JUT_ASSERT(140, track); + return track->readPort(param_2); + } + return 0; } -#pragma pop -/* 802AAFF0-802AB07C 2A5930 008C+00 1/0 0/0 0/0 .text __dt__14Z2SoundStarterFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm Z2SoundStarter::~Z2SoundStarter() { - nofralloc -#include "asm/Z2AudioLib/Z2SoundStarter/__dt__14Z2SoundStarterFv.s" -} -#pragma pop + diff --git a/libs/Z2AudioLib/Z2SpeechMgr2.cpp b/libs/Z2AudioLib/Z2SpeechMgr2.cpp index f4b53cdaabd..6d2b9259ae6 100644 --- a/libs/Z2AudioLib/Z2SpeechMgr2.cpp +++ b/libs/Z2AudioLib/Z2SpeechMgr2.cpp @@ -4,15 +4,25 @@ // #include "Z2AudioLib/Z2SpeechMgr2.h" +#include "Z2AudioLib/Z2SeqMgr.h" +#include "Z2AudioLib/Z2EnvSeMgr.h" +#include "Z2AudioLib/Z2AudioMgr.h" +#include "JSystem/J3DU/J3DUD.h" #include "dol2asm.h" // // Types: // -struct Z2SeqMgr { - /* 802AF49C */ void subBgmStart(u32); -}; +typedef struct { + u8** field_0x0; + u8** field_0x4; + u8 field_0x8; + u8 field_0x9; + u8 field_0xa; + u8 field_0xb; + +} sPrmStruct; struct Z2MdnPrm { static u8 const sReply[100]; @@ -39,7 +49,7 @@ struct Z2MdnPrm { static u8 const sDeside[100]; static u8 const sAfford[104]; static u8 const sAffordTail[12]; - static void* const sPrm[51]; + static sPrmStruct const sPrm[17]; static u8 sBoringTail[6 + 2 /* padding */]; static u8 sOrderTail[6 + 2 /* padding */]; static u8 sResentTail[5 + 3 /* padding */]; @@ -52,14 +62,6 @@ struct Z2MdnPrm { static u8 sDesideTail[8]; }; -struct Z2EnvSeMgr { - /* 802C93E4 */ void getFogDensity(); -}; - -struct Z2AudioMgr { - static u8 mAudioMgrPtr[4 + 4 /* padding */]; -}; - // // Forward References: // @@ -152,14 +154,17 @@ extern "C" extern u8 __OSReport_disable; // /* 802CBC60-802CBCEC 2C65A0 008C+00 0/0 1/1 0/0 .text __ct__12Z2SpeechMgr2Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm Z2SpeechMgr2::Z2SpeechMgr2() { - nofralloc -#include "asm/Z2AudioLib/Z2SpeechMgr2/__ct__12Z2SpeechMgr2Fv.s" +Z2SpeechMgr2::Z2SpeechMgr2() : JASGlobalInstance(true), random(0) { + field_0x3f8 = 0; + field_0x3fa = -1; + field_0x3fc = 0; + field_0x3fe = 0; + field_0x3ff = 0; + field_0x401 = 0; + for (int i = 0; i < 64; i++) { + field_0x402[i] = -1; + } } -#pragma pop /* ############################################################################################## */ /* 803CBD08-803CBED0 -00001 01C8+00 1/1 0/0 0/0 .data @3729 */ @@ -312,17 +317,152 @@ SECTION_DATA extern void* __vt__15Z2SpeechStarter[5] = { }; /* 802CBCEC-802CBD88 2C662C 009C+00 1/0 0/0 0/0 .text __dt__15Z2SpeechStarterFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm Z2SpeechStarter::~Z2SpeechStarter() { - nofralloc -#include "asm/Z2AudioLib/Z2SpeechMgr2/__dt__15Z2SpeechStarterFv.s" -} -#pragma pop +Z2SpeechStarter::~Z2SpeechStarter() {} /* 802CBD88-802CBF60 2C66C8 01D8+00 1/0 1/1 0/0 .text setString__12Z2SpeechMgr2FPCUssUcUs */ +// Matches with literals +#ifdef NONMATCHING +void Z2SpeechMgr2::setString(u16 const* param_1, s16 param_2, u8 param_3, u16 param_4) { + switch (param_3) { + case 0x13: + case 0x15: + field_0x3fe = 1; + break; + case 0x12: + case 0x14: + field_0x3fe = 2; + break; + case 4: + case '\a': + case '\n': + case 0x16: + case 0x19: + case 0x1d: + case '!': + case '$': + case ')': + case ',': + case '-': + case '2': + case '3': + case '?': + case '@': + case 'A': + case 'S': + case 'T': + case 'U': + case 'Y': + case 'Z': + case '[': + case '\\': + case '`': + case 'a': + case 'b': + case 'c': + case 'd': + field_0x3fe = 12; + break; + case 0x1e: + case 0x1f: + case '\"': + case '%': + case '\'': + case '=': + case 'e': + case 'f': + case 'g': + case 'h': + case 'i': + case 'j': + field_0x3fe = 13; + break; + case '7': + case '8': + case '9': + case ':': + case ';': + case '<': + case 'l': + case 'm': + field_0x3fe = 14; + break; + case '/': + field_0x3fe = 15; + break; + case 0x0f: + case 0x10: + case '4': + case '5': + case '6': + case 'p': + field_0x3fe = 16; + break; + case 0x0e: + case 'B': + case 'D': + field_0x3fe = 17; + break; + case '\f': + field_0x3fe = 18; + break; + case '\t': + case '&': + case 'o': + field_0x3fe = 30; + break; + case '\b': + field_0x3fe = 31; + break; + case 0: + case 1: + case 2: + case 3: + field_0x3fe = 99; + return; + case 'q': + default: + field_0x3fe = 11; + break; + } + if ((field_0x3fe == 1) || (field_0x3fe == 2)) { + if (param_4 == 0) { + field_0x3fc = 0; + } else { + if (param_4 > 0x11) { + if ((field_0x3fe == 21) || (field_0x3fe == 20)) { + field_0x3fc = 0; + } + } else { + field_0x3fc = param_4 - 1; + } + } + } else { + field_0x3fc = param_4; + } + for (int i = 0; i < 500; i++) { + field_0x10[i] = 0; + } + + if (param_2 > 500) { + field_0x3f8 = 500; + JUT_WARN(387, "TOO MANY TEXT : now(%d) > max(%d)", param_2, 500); + } else { + field_0x3f8 = param_2; + } + for (int i = 0; i < field_0x3f8; i++) { + field_0x10[i] = param_1[i]; + } + field_0x3fa = 0; + field_0x3ff = 0; + field_0x400 = 0; + field_0x401 = 0; + for (int i = 0; i < 64; i++) { + field_0x402[i] = -1; + } + selectUnit(false); +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -331,6 +471,7 @@ asm void Z2SpeechMgr2::setString(u16 const* param_0, s16 param_1, u8 param_2, u1 #include "asm/Z2AudioLib/Z2SpeechMgr2/setString__12Z2SpeechMgr2FPCUssUcUs.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80455EE0-80455EE8 0044E0 0006+02 1/0 0/0 0/0 .sdata2 sBoringTail__8Z2MdnPrm */ @@ -454,6 +595,72 @@ SECTION_SDATA2 static f32 lit_3837 = 1.0f; SECTION_SDATA2 static f32 lit_3838 = -1.0f; /* 802CBF60-802CC190 2C68A0 0230+00 1/0 2/2 0/0 .text setTextCount__12Z2SpeechMgr2Fs */ +// Matches with literals +#ifdef NONMATCHING +void Z2SpeechMgr2::setTextCount(s16 param_0) { + if (field_0x3fe != 0x63) { + field_0x3ff = 0x0; + param_0 = (param_0 == 0) ? 0 : param_0 - 1; + bool bVar1 = false; + if (field_0x3fa == 0 && param_0 >= field_0x3f8) { + bVar1 = true; + } + field_0x3fa = param_0; + if (field_0x3fa >= field_0x3f8) { + field_0x3fa = field_0x3f8; + } + if ((field_0x3fe == 1) || (field_0x3fe == 2)) { + if (!field_0x0.isSoundAttached()) { + speakOneWord(false); + } + } else if (bVar1) { + if (field_0x3fc == 0) { + mSpeech.startSound(0x7a, &field_0x4, NULL, 0, 0.0f, 1.0f, 1.0f, -1.0f, + -1.0f, 0); + } + } else { + if (!isNonVerbal() ) { + JAISoundID aJStack_18; + switch (field_0x3fe) { + case 0xb: + // TODO: Fix JAISoundID fake match + aJStack_18.stackCopyHelper(0x7b); + break; + case 0xc: + aJStack_18.stackCopyHelper(0x7c); + break; + case 0xd: + aJStack_18.stackCopyHelper(0x7d); + break; + case 0xe: + aJStack_18.stackCopyHelper(0x7e); + break; + case 0xf: + aJStack_18.stackCopyHelper(0x7f); + break; + case 0x10: + aJStack_18.stackCopyHelper(0x80); + break; + case 0x11: + aJStack_18.stackCopyHelper(0x81); + break; + case 0x12: + aJStack_18.stackCopyHelper(0x82); + break; + case 0x1e: + aJStack_18.stackCopyHelper(0x83); + break; + case 0x1f: + aJStack_18.stackCopyHelper(0x84); + break; + } + mSpeech.startSound(aJStack_18, &field_0x4, NULL, 0, 0.0f, 1.0f, 1.0f, -1.0f, -1.0f, + 0); + } + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -462,6 +669,7 @@ asm void Z2SpeechMgr2::setTextCount(s16 param_0) { #include "asm/Z2AudioLib/Z2SpeechMgr2/setTextCount__12Z2SpeechMgr2Fs.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80455F3C-80455F40 00453C 0004+00 2/2 0/0 0/0 .sdata2 @3885 */ @@ -471,6 +679,29 @@ SECTION_SDATA2 static f32 lit_3885 = 127.0f; SECTION_SDATA2 static f64 lit_3887 = 4503601774854144.0 /* cast s32 to float */; /* 802CC190-802CC2FC 2C6AD0 016C+00 1/1 1/1 0/0 .text speakOneWord__12Z2SpeechMgr2Fb */ +// Matches with literals +#ifdef NONMATCHING +void Z2SpeechMgr2::speakOneWord(bool param_0) { + if (Z2GetSceneMgr()->isSceneExist() && (field_0x3fe == 1 || field_0x3fe == 2) && + field_0x400 == 0 && field_0x3ff <= 30) + { + if (field_0x3fa >= field_0x3f8) { + selectTail(); + field_0x400 = 1; + } else if (isNonVerbal()) { + return; + } + u32 sound = field_0x3fc + 0x500a1; + f32 fVar1 = Z2GetSceneMgr()->getRoomReverb() / 127.0f; + mSpeech.startSound(sound, &field_0x0, NULL, 0, + fVar1, 1.0f, 1.0f, -1.0f, -1.0f, 0); + mSpeech.setPortData(&field_0x0, 8, field_0x402[field_0x401 - 1] + 1, -1); + if (field_0x400 == 0) { + selectUnit(param_0); + } + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -479,47 +710,95 @@ asm void Z2SpeechMgr2::speakOneWord(bool param_0) { #include "asm/Z2AudioLib/Z2SpeechMgr2/speakOneWord__12Z2SpeechMgr2Fb.s" } #pragma pop +#endif /* 802CC2FC-802CC4C0 2C6C3C 01C4+00 2/2 0/0 0/0 .text isNonVerbal__12Z2SpeechMgr2Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2SpeechMgr2::isNonVerbal() { - nofralloc -#include "asm/Z2AudioLib/Z2SpeechMgr2/isNonVerbal__12Z2SpeechMgr2Fv.s" +bool Z2SpeechMgr2::isNonVerbal() { + switch(field_0x10[field_0x3fa]) { + case 0: + case 0x20: + case 0x21: + case 0x22: + case 0x23: + case 0x24: + case 0x25: + case 0x26: + case 0x27: + case 0x28: + case 0x29: + case 0x2a: + case 0x2b: + case 0x2c: + case 0x2d: + case 0x2e: + case 0x2f: + case 0x3a: + case 0x3b: + case 0x3c: + case 0x3d: + case 0x3e: + case 0x3f: + case 0x4b: + case 0x4c: + case 0x4d: + case 0x4e: + case 0x4f: + case 0x5b: + case 0x5c: + case 0x5d: + case 0x5e: + case 0x5f: + case 0x813f: + case 0x8140: + case 0x8141: + case 0x8142: + case 0x8143: + case 0x8144: + case 0x8145: + case 0x8146: + case 0x8147: + case 0x8148: + case 0x8149: + case 0x814a: + case 0x814b: + case 0x8151: + case 0x815e: + case 0x8162: + case 0x8166: + case 0x8168: + case 0x8169: + case 0x816a: + case 0x816d: + case 0x816e: + case 0x816f: + case 0x8170: + case 0x8171: + case 0x8172: + case 0x8175: + case 0x8176: + case 0x817b: + case 0x817c: + case 0x8181: + case 0x818f: + case 0x8190: + case 0x8193: + case 0x8194: + case 0x8195: + case 0x8196: + return true; + } + + if(field_0x10[field_0x3fa] == 10) { + switch (field_0x3fe) { + case 1: + case 2: + return false; + default: + return true; + } + } + return false; } -#pragma pop - -/* ############################################################################################## */ -/* 80455EE0-80455EE8 0044E0 0006+02 1/0 0/0 0/0 .sdata2 sBoringTail__8Z2MdnPrm */ -extern "C" u8 sBoringTail__8Z2MdnPrm[6 + 2 /* padding */]; - -/* 80455EE8-80455EF0 0044E8 0006+02 1/0 0/0 0/0 .sdata2 sOrderTail__8Z2MdnPrm */ -extern "C" u8 sOrderTail__8Z2MdnPrm[6 + 2 /* padding */]; - -/* 80455EF0-80455EF8 0044F0 0005+03 1/0 0/0 0/0 .sdata2 sResentTail__8Z2MdnPrm */ -extern "C" u8 sResentTail__8Z2MdnPrm[5 + 3 /* padding */]; - -/* 80455EF8-80455F00 0044F8 0008+00 1/0 0/0 0/0 .sdata2 sCheerfulTail__8Z2MdnPrm */ -extern "C" u8 sCheerfulTail__8Z2MdnPrm[8]; - -/* 80455F00-80455F08 004500 0005+03 1/0 0/0 0/0 .sdata2 sConfusedTail__8Z2MdnPrm */ -extern "C" u8 sConfusedTail__8Z2MdnPrm[5 + 3 /* padding */]; - -/* 80455F08-80455F10 004508 0007+01 1/0 0/0 0/0 .sdata2 sHostilityTail__8Z2MdnPrm */ -extern "C" u8 sHostilityTail__8Z2MdnPrm[7 + 1 /* padding */]; - -/* 80455F10-80455F18 004510 0008+00 1/0 0/0 0/0 .sdata2 sTiredTail__8Z2MdnPrm */ -extern "C" u8 sTiredTail__8Z2MdnPrm[8]; - -/* 80455F18-80455F20 004518 0007+01 1/0 0/0 0/0 .sdata2 sSeriousTail__8Z2MdnPrm */ -extern "C" u8 sSeriousTail__8Z2MdnPrm[7 + 1 /* padding */]; - -/* 80455F20-80455F28 004520 0007+01 1/0 0/0 0/0 .sdata2 sReplybTail__8Z2MdnPrm */ -extern "C" u8 sReplybTail__8Z2MdnPrm[7 + 1 /* padding */]; - -/* 80455F28-80455F30 004528 0008+00 1/0 0/0 0/0 .sdata2 sDesideTail__8Z2MdnPrm */ -extern "C" u8 sDesideTail__8Z2MdnPrm[8]; /* 8039C260-8039C2C4 0288C0 0064+00 1/0 0/0 0/0 .rodata sReply__8Z2MdnPrm */ SECTION_RODATA u8 const Z2MdnPrm::sReply[100] = { @@ -1549,24 +1828,24 @@ SECTION_RODATA u8 const Z2MdnPrm::sAffordTail[12] = { COMPILER_STRIP_GATE(0x8039C980, &Z2MdnPrm::sAffordTail); /* 8039C98C-8039CA58 -00001 00CC+00 2/2 0/0 0/0 .rodata sPrm__8Z2MdnPrm */ -SECTION_RODATA void* const Z2MdnPrm::sPrm[51] = { - (void*)&Z2MdnPrm::sReply, (void*)&Z2MdnPrm::sReplyTail, (void*)0x32060400, - (void*)&Z2MdnPrm::sJoke, (void*)&Z2MdnPrm::sJokeTail, (void*)0x32030700, - (void*)&Z2MdnPrm::sSexy, (void*)&Z2MdnPrm::sSexyTail, (void*)0x32030700, - (void*)&Z2MdnPrm::sRidicule, (void*)&Z2MdnPrm::sRidiculeTail, (void*)0x32030700, - (void*)&Z2MdnPrm::sBoring, (void*)&Z2MdnPrm::sBoringTail, (void*)0x36010500, - (void*)&Z2MdnPrm::sIrritated, (void*)&Z2MdnPrm::sIrritatedTail, (void*)0x2F030700, - (void*)&Z2MdnPrm::sOrder, (void*)&Z2MdnPrm::sOrderTail, (void*)0x39020400, - (void*)&Z2MdnPrm::sResent, (void*)&Z2MdnPrm::sResentTail, (void*)0x35020300, - (void*)&Z2MdnPrm::sCheerful, (void*)&Z2MdnPrm::sCheerfulTail, (void*)0x35010700, - (void*)&Z2MdnPrm::sConfused, (void*)&Z2MdnPrm::sConfusedTail, (void*)0x35030200, - (void*)&Z2MdnPrm::sHostility, (void*)&Z2MdnPrm::sHostilityTail, (void*)0x34020500, - (void*)&Z2MdnPrm::sTired, (void*)&Z2MdnPrm::sTiredTail, (void*)0x35030500, - (void*)&Z2MdnPrm::sSerious, (void*)&Z2MdnPrm::sSeriousTail, (void*)0x35020500, - (void*)&Z2MdnPrm::sReplyb, (void*)&Z2MdnPrm::sReplybTail, (void*)0x2A040300, - (void*)&Z2MdnPrm::sApologize, (void*)&Z2MdnPrm::sApologizeTail, (void*)0x32040500, - (void*)&Z2MdnPrm::sDeside, (void*)&Z2MdnPrm::sDesideTail, (void*)0x32010700, - (void*)&Z2MdnPrm::sAfford, (void*)&Z2MdnPrm::sAffordTail, (void*)0x34020A00, +SECTION_RODATA sPrmStruct const Z2MdnPrm::sPrm[17] = { + { (u8**)&Z2MdnPrm::sReply, (u8**)&Z2MdnPrm::sReplyTail, 0x32, 0x06, 0x04, 0x00}, + { (u8**)&Z2MdnPrm::sJoke, (u8**)&Z2MdnPrm::sJokeTail, 0x32, 0x03, 0x07, 0x00}, + { (u8**)&Z2MdnPrm::sSexy, (u8**)&Z2MdnPrm::sSexyTail, 0x32, 0x03, 0x07, 0x00}, + { (u8**)&Z2MdnPrm::sRidicule, (u8**)&Z2MdnPrm::sRidiculeTail, 0x32, 0x03, 0x07, 0x00}, + { (u8**)&Z2MdnPrm::sBoring, (u8**)&Z2MdnPrm::sBoringTail, 0x36, 0x01, 0x05, 0x00}, + { (u8**)&Z2MdnPrm::sIrritated, (u8**)&Z2MdnPrm::sIrritatedTail, 0x2F, 0x03, 0x07, 0x00}, + { (u8**)&Z2MdnPrm::sOrder, (u8**)&Z2MdnPrm::sOrderTail, 0x39, 0x02, 0x04, 0x00}, + { (u8**)&Z2MdnPrm::sResent, (u8**)&Z2MdnPrm::sResentTail, 0x35, 0x02, 0x03, 0x00}, + { (u8**)&Z2MdnPrm::sCheerful, (u8**)&Z2MdnPrm::sCheerfulTail, 0x35, 0x01, 0x07, 0x00}, + { (u8**)&Z2MdnPrm::sConfused, (u8**)&Z2MdnPrm::sConfusedTail, 0x35, 0x03, 0x02, 0x00}, + { (u8**)&Z2MdnPrm::sHostility, (u8**)&Z2MdnPrm::sHostilityTail, 0x34, 0x02, 0x05, 0x00}, + { (u8**)&Z2MdnPrm::sTired, (u8**)&Z2MdnPrm::sTiredTail, 0x35, 0x03, 0x05, 0x00}, + { (u8**)&Z2MdnPrm::sSerious, (u8**)&Z2MdnPrm::sSeriousTail, 0x35, 0x02, 0x05, 0x00}, + { (u8**)&Z2MdnPrm::sReplyb, (u8**)&Z2MdnPrm::sReplybTail, 0x2A, 0x04, 0x03, 0x00}, + { (u8**)&Z2MdnPrm::sApologize, (u8**)&Z2MdnPrm::sApologizeTail, 0x32, 0x04, 0x05, 0x00}, + { (u8**)&Z2MdnPrm::sDeside, (u8**)&Z2MdnPrm::sDesideTail, 0x32, 0x01, 0x07, 0x00}, + { (u8**)&Z2MdnPrm::sAfford, (u8**)&Z2MdnPrm::sAffordTail, 0x34, 0x02, 0x0A, 0x00}, }; COMPILER_STRIP_GATE(0x8039C98C, &Z2MdnPrm::sPrm); @@ -1576,7 +1855,61 @@ SECTION_SDATA2 static f64 lit_4083 = 4503599627370496.0 /* cast u32 to float */; /* 80456BA8-80456BAC 000048 0002+02 1/1 0/0 0/0 .sbss2 @4003 */ SECTION_SBSS2 static u8 lit_4003[2 + 2 /* padding */]; +typedef struct { + u8 field_0x0; + u8 field_0x1; +} Z2ConnectCost; + /* 802CC4C0-802CC738 2C6E00 0278+00 2/2 0/0 0/0 .text selectUnit__12Z2SpeechMgr2Fb */ +// This one is a mess +#ifdef NONMATCHING +void Z2SpeechMgr2::selectUnit(bool param_0) { + Z2ConnectCost local_3c[5]; + if (field_0x401 >= 64) { + field_0x0->stop(); + } else { + s32 ZVar2 = random.get_uint8(Z2MdnPrm::sPrm[field_0x3fc].field_0x8); + if (field_0x401 != 0 && param_0) { + u8 cVar5 = 0; + ZVar2 = field_0x402[field_0x401 - 1]; + do { + bool bVar1; + int ZVar3; + do { + do { + bVar1 = false; + ZVar3 = random.get_uint8(Z2MdnPrm::sPrm[field_0x3fc].field_0x8); + for (int iVar4 = 0; iVar4 < field_0x401; iVar4++) { + if (ZVar3 == field_0x402[iVar4]) { + bVar1 = true; + break; + } + } + } while (bVar1); + for (int iVar4 = 0; iVar4 < cVar5; iVar4++) { + if (ZVar3 == local_3c[iVar4].field_0x0) { + bVar1 = true; + break; + } + } + } while (bVar1); + local_3c[1].field_0x1 = J3DUD::JMAAbs((*Z2MdnPrm::sPrm[field_0x3fc].field_0x0)[ZVar3 * 2] - (*Z2MdnPrm::sPrm[field_0x3fc].field_0x0)[ZVar3 * 2 + 1]); + local_3c[2].field_0x0 = ZVar3; + local_3c[cVar5] = local_3c[2]; + cVar5++; + } while (cVar5 != 5); + for (int iVar4 = 0; /*ZVar2 = local_3c[0],*/ iVar4 < 5; iVar4++) { + if (local_3c[iVar4].field_0x1 < local_3c[0].field_0x0) { + local_3c[0].field_0x1 = local_3c[iVar4].field_0x1; + local_3c[0].field_0x0 = local_3c[iVar4].field_0x0; + } + } + } + field_0x402[field_0x401 - 1] = ZVar2; + field_0x401++; + } +} +#else #pragma push #pragma optimization_level 0 #pragma optimizewithasm off @@ -1585,6 +1918,7 @@ asm void Z2SpeechMgr2::selectUnit(bool param_0) { #include "asm/Z2AudioLib/Z2SpeechMgr2/selectUnit__12Z2SpeechMgr2Fb.s" } #pragma pop +#endif /* ############################################################################################## */ /* 80456BAC-80456BB0 00004C 0002+02 1/1 0/0 0/0 .sbss2 @4104 */ @@ -1601,14 +1935,21 @@ asm void Z2SpeechMgr2::selectTail() { #pragma pop /* 802CC9D0-802CCA18 2C7310 0048+00 0/0 1/1 0/0 .text framework__12Z2SpeechMgr2Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2SpeechMgr2::framework() { - nofralloc -#include "asm/Z2AudioLib/Z2SpeechMgr2/framework__12Z2SpeechMgr2Fv.s" +void Z2SpeechMgr2::framework() { + switch (field_0x3fe) { + case 1: + case 2: + if (field_0x0) { + field_0x3ff++; + if (field_0x3ff > 30) { + return; + } + } else { + field_0x3fa = 0; + } + break; + } } -#pragma pop /* 802CCA18-802CCF88 2C7358 0570+00 0/0 2/2 0/0 .text playOneShotVoice__12Z2SpeechMgr2FUcUsP3VecSc */ @@ -1622,24 +1963,15 @@ asm void Z2SpeechMgr2::playOneShotVoice(u8 param_0, u16 param_1, Vec* param_2, s #pragma pop /* 802CCF88-802CCFB8 2C78C8 0030+00 0/0 1/1 0/0 .text isMidnaSpeak__12Z2SpeechMgr2Fv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm void Z2SpeechMgr2::isMidnaSpeak() { - nofralloc -#include "asm/Z2AudioLib/Z2SpeechMgr2/isMidnaSpeak__12Z2SpeechMgr2Fv.s" +bool Z2SpeechMgr2::isMidnaSpeak() { + if ((field_0x3fe == 1 || field_0x3fe == 2) && field_0x0) { + return true; + } + return false; } -#pragma pop /* 802CCFB8-802CCFF8 2C78F8 0040+00 1/1 0/0 0/0 .text __ct__15Z2SpeechStarterFv */ -#pragma push -#pragma optimization_level 0 -#pragma optimizewithasm off -asm Z2SpeechStarter::Z2SpeechStarter() { - nofralloc -#include "asm/Z2AudioLib/Z2SpeechMgr2/__ct__15Z2SpeechStarterFv.s" -} -#pragma pop +Z2SpeechStarter::Z2SpeechStarter() : Z2SoundStarter(false) {} /* ############################################################################################## */ /* 80455F50-80455F54 004550 0004+00 1/1 0/0 0/0 .sdata2 @4571 */ @@ -1653,7 +1985,7 @@ SECTION_SDATA2 static f32 lit_4572 = 0.5f; #pragma push #pragma optimization_level 0 #pragma optimizewithasm off -asm void Z2SpeechStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, +asm int Z2SpeechStarter::startSound(JAISoundID param_0, JAISoundHandle* param_1, JGeometry::TVec3 const* param_2, u32 param_3, f32 param_4, f32 param_5, f32 param_6, f32 param_7, f32 param_8, u32 param_9) { diff --git a/obj_files.mk b/obj_files.mk index 7150ce94bbf..f942cadb684 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -1058,6 +1058,7 @@ O_FILES_SYM_ON := \ $(BUILD_DIR)/libs/JSystem/JUtility/JUTResFont.o \ $(BUILD_DIR)/libs/JSystem/JAudio2/JAUAudioArcLoader.o \ $(BUILD_DIR)/libs/Z2AudioLib/Z2AudioArcLoader.o \ + $(BUILD_DIR)/libs/Z2AudioLib/Z2SoundStarter.o \ $(BUILD_DIR)/libs/Z2AudioLib/JASCmdStack.o \ $(BUILD_DIR)/src/d/bg/d_bg_s_grp_pass_chk.o \ $(BUILD_DIR)/src/d/file/d_file_sel_info.o \