diff --git a/.github/workflows/doxygen.yml b/.github/workflows/doxygen.yml index ea4eec6b9bb..91b2acdfcbb 100644 --- a/.github/workflows/doxygen.yml +++ b/.github/workflows/doxygen.yml @@ -3,7 +3,7 @@ name: run Doxygen to generate docs on: push: branches: - - main + - master jobs: build: diff --git a/Makefile b/Makefile index 6f811e056db..6cd5cb2ec99 100644 --- a/Makefile +++ b/Makefile @@ -82,7 +82,7 @@ ASFLAGS := -mgekko -I include LDFLAGS := -map $(MAP) -fp hard -nodefaults -w off # Compiler flags -CFLAGS += -Cpp_exceptions off -proc gekko -fp hard -O3 -nodefaults -msgstyle gcc -enum int $(INCLUDES) +CFLAGS += -Cpp_exceptions off -proc gekko -fp hard -O3 -nodefaults -msgstyle gcc -maxerrors 5 -enum int $(INCLUDES) # elf2dol needs to know these in order to calculate sbss correctly. SDATA_PDHR := 9 diff --git a/asm/JAudio2/JAISeMgr.s b/asm/JAudio2/JAISeMgr.s index fbe035d370f..7603a8a66d8 100644 --- a/asm/JAudio2/JAISeMgr.s +++ b/asm/JAudio2/JAISeMgr.s @@ -602,8 +602,8 @@ lbl_802A005C: /* 802A006C 0029CFAC 38 21 00 40 */ addi r1, r1, 0x40 /* 802A0070 0029CFB0 4E 80 00 20 */ blr -.global JAISeMgr -JAISeMgr: +.global __ct__8JAISeMgrFb +__ct__8JAISeMgrFb: /* 802A0074 0029CFB4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802A0078 0029CFB8 7C 08 02 A6 */ mflr r0 /* 802A007C 0029CFBC 90 01 00 14 */ stw r0, 0x14(r1) @@ -624,10 +624,10 @@ lbl_802A0094: /* 802A00B0 0029CFF0 3C 80 80 2A */ lis r4, JAISeCategoryMgr@ha .global JAISeCategoryMgr /* 802A00B4 0029CFF4 38 84 09 94 */ addi r4, r4, JAISeCategoryMgr@l -.global JAISeCategoryMgr_NS_dtor -/* 802A00B8 0029CFF8 3C A0 80 00 */ lis r5, JAISeCategoryMgr_NS_dtor@ha -.global JAISeCategoryMgr_NS_dtor -/* 802A00BC 0029CFFC 38 A5 78 DC */ addi r5, r5, JAISeCategoryMgr_NS_dtor@l +.global __dt__16JAISeCategoryMgrFv +/* 802A00B8 0029CFF8 3C A0 80 00 */ lis r5, __dt__16JAISeCategoryMgrFv@ha +.global __dt__16JAISeCategoryMgrFv +/* 802A00BC 0029CFFC 38 A5 78 DC */ addi r5, r5, __dt__16JAISeCategoryMgrFv@l /* 802A00C0 0029D000 38 C0 00 6C */ li r6, 0x6c /* 802A00C4 0029D004 38 E0 00 10 */ li r7, 0x10 /* 802A00C8 0029D008 48 0C 1C 99 */ bl func_80361D60 @@ -1247,10 +1247,10 @@ lbl_802A08E0: /* 802A0920 0029D860 38 03 98 B0 */ addi r0, r3, lbl_803C98B0@l /* 802A0924 0029D864 90 1E 00 00 */ stw r0, 0(r30) /* 802A0928 0029D868 38 7E 00 14 */ addi r3, r30, 0x14 -.global JAISeCategoryMgr_NS_dtor -/* 802A092C 0029D86C 3C 80 80 00 */ lis r4, JAISeCategoryMgr_NS_dtor@ha -.global JAISeCategoryMgr_NS_dtor -/* 802A0930 0029D870 38 84 78 DC */ addi r4, r4, JAISeCategoryMgr_NS_dtor@l +.global __dt__16JAISeCategoryMgrFv +/* 802A092C 0029D86C 3C 80 80 00 */ lis r4, __dt__16JAISeCategoryMgrFv@ha +.global __dt__16JAISeCategoryMgrFv +/* 802A0930 0029D870 38 84 78 DC */ addi r4, r4, __dt__16JAISeCategoryMgrFv@l /* 802A0934 0029D874 38 A0 00 6C */ li r5, 0x6c /* 802A0938 0029D878 38 C0 00 10 */ li r6, 0x10 /* 802A093C 0029D87C 48 0C 13 AD */ bl func_80361CE8 diff --git a/asm/JAudio2/JAISeqMgr.s b/asm/JAudio2/JAISeqMgr.s index a57e393bc57..b9ab69ce82e 100644 --- a/asm/JAudio2/JAISeqMgr.s +++ b/asm/JAudio2/JAISeqMgr.s @@ -85,8 +85,8 @@ lbl_802A18FC: /* 802A190C 0029E84C 38 21 00 20 */ addi r1, r1, 0x20 /* 802A1910 0029E850 4E 80 00 20 */ blr -.global JAISeqMgr -JAISeqMgr: +.global __ct__9JAISeqMgrFb +__ct__9JAISeqMgrFb: /* 802A1914 0029E854 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802A1918 0029E858 7C 08 02 A6 */ mflr r0 /* 802A191C 0029E85C 90 01 00 14 */ stw r0, 0x14(r1) diff --git a/asm/JAudio2/JAIStreamMgr.s b/asm/JAudio2/JAIStreamMgr.s index 9da09af4eb1..79e6c817064 100644 --- a/asm/JAudio2/JAIStreamMgr.s +++ b/asm/JAudio2/JAIStreamMgr.s @@ -3,8 +3,8 @@ .section .text, "ax" # 802a3b68 -.global JAIStreamMgr -JAIStreamMgr: +.global __ct__12JAIStreamMgrFb +__ct__12JAIStreamMgrFb: /* 802A3B68 002A0AA8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802A3B6C 002A0AAC 7C 08 02 A6 */ mflr r0 /* 802A3B70 002A0AB0 90 01 00 14 */ stw r0, 0x14(r1) diff --git a/asm/JAudio2/JASDriverIF.s b/asm/JAudio2/JASDriverIF.s index 346077ca0ae..a894308c61f 100644 --- a/asm/JAudio2/JASDriverIF.s +++ b/asm/JAudio2/JASDriverIF.s @@ -30,8 +30,8 @@ JASDriver_NS_getDSPLevel: /* 8029E170 0029B0B0 38 21 00 10 */ addi r1, r1, 0x10 /* 8029E174 0029B0B4 4E 80 00 20 */ blr -.global JASDriver_NS_setOutputMode -JASDriver_NS_setOutputMode: +.global setOutputMode__9JASDriverFUl +setOutputMode__9JASDriverFUl: /* 8029E178 0029B0B8 90 6D 82 44 */ stw r3, lbl_804507C4-_SDA_BASE_(r13) /* 8029E17C 0029B0BC 4E 80 00 20 */ blr diff --git a/asm/JAudio2/JAUInitializer.s b/asm/JAudio2/JAUInitializer.s index 32bbc7afc66..fcbca1b2384 100644 --- a/asm/JAudio2/JAUInitializer.s +++ b/asm/JAudio2/JAUInitializer.s @@ -167,11 +167,11 @@ lbl_802A4CF4: /* 802A4D0C 002A1C4C 48 00 00 18 */ b lbl_802A4D24 lbl_802A4D10: /* 802A4D10 002A1C50 38 60 00 00 */ li r3, 0 -/* 802A4D14 002A1C54 4B FF 94 65 */ bl JASDriver_NS_setOutputMode +/* 802A4D14 002A1C54 4B FF 94 65 */ bl setOutputMode__9JASDriverFUl /* 802A4D18 002A1C58 48 00 00 0C */ b lbl_802A4D24 lbl_802A4D1C: /* 802A4D1C 002A1C5C 38 60 00 01 */ li r3, 1 -/* 802A4D20 002A1C60 4B FF 94 59 */ bl JASDriver_NS_setOutputMode +/* 802A4D20 002A1C60 4B FF 94 59 */ bl setOutputMode__9JASDriverFUl lbl_802A4D24: /* 802A4D24 002A1C64 39 61 00 20 */ addi r11, r1, 0x20 /* 802A4D28 002A1C68 48 0B D5 01 */ bl _restgpr_29 diff --git a/asm/d/error/d_error_msg.s b/asm/d/error/d_error_msg.s index c8788aae237..684b61f05e1 100644 --- a/asm/d/error/d_error_msg.s +++ b/asm/d/error/d_error_msg.s @@ -840,7 +840,7 @@ lbl_8009D7C0: /* 8009D7D0 0009A710 88 03 05 18 */ lbz r0, 0x518(r3) /* 8009D7D4 0009A714 28 00 00 00 */ cmplwi r0, 0 /* 8009D7D8 0009A718 41 82 00 20 */ beq lbl_8009D7F8 -/* 8009D7DC 0009A71C 4B F6 9A E9 */ bl mDoAud_resetRecover +/* 8009D7DC 0009A71C 4B F6 9A E9 */ bl mDoAud_resetRecover__Fv /* 8009D7E0 0009A720 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8009D7E4 0009A724 40 82 00 14 */ bne lbl_8009D7F8 /* 8009D7E8 0009A728 88 6D 81 08 */ lbz r3, lbl_80450688-_SDA_BASE_(r13) @@ -854,7 +854,7 @@ lbl_8009D7F8: /* 8009D804 0009A744 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) /* 8009D808 0009A748 38 80 00 10 */ li r4, 0x10 /* 8009D80C 0009A74C 38 A0 00 01 */ li r5, 1 -/* 8009D810 0009A750 48 23 01 65 */ bl Z2AudioMgr_NS_resetProcess +/* 8009D810 0009A750 48 23 01 65 */ bl resetProcess__10Z2AudioMgrFUlb lbl_8009D814: /* 8009D814 0009A754 88 6D 81 08 */ lbz r3, lbl_80450688-_SDA_BASE_(r13) /* 8009D818 0009A758 4B FF FB F9 */ bl drawCapture diff --git a/asm/d/menu/d_menu_option.s b/asm/d/menu/d_menu_option.s index ff94a2935ee..689d9f05e69 100644 --- a/asm/d/menu/d_menu_option.s +++ b/asm/d/menu/d_menu_option.s @@ -2726,7 +2726,7 @@ lbl_801E4690: /* 801E469C 001E15DC 3C 80 80 39 */ lis r4, lbl_80396EA8@ha /* 801E46A0 001E15E0 38 84 6E A8 */ addi r4, r4, lbl_80396EA8@l /* 801E46A4 001E15E4 7C 84 00 2E */ lwzx r4, r4, r0 -/* 801E46A8 001E15E8 48 0E 91 E1 */ bl Z2AudioMgr_NS_setOutputMode +/* 801E46A8 001E15E8 48 0E 91 E1 */ bl setOutputMode__10Z2AudioMgrFUl /* 801E46AC 001E15EC 7F E3 FB 78 */ mr r3, r31 /* 801E46B0 001E15F0 88 1F 03 E9 */ lbz r0, 0x3e9(r31) /* 801E46B4 001E15F4 54 00 10 3A */ slwi r0, r0, 2 @@ -2829,7 +2829,7 @@ lbl_801E480C: /* 801E4818 001E1758 3C 80 80 39 */ lis r4, lbl_80396EA8@ha /* 801E481C 001E175C 38 84 6E A8 */ addi r4, r4, lbl_80396EA8@l /* 801E4820 001E1760 7C 84 00 2E */ lwzx r4, r4, r0 -/* 801E4824 001E1764 48 0E 90 65 */ bl Z2AudioMgr_NS_setOutputMode +/* 801E4824 001E1764 48 0E 90 65 */ bl setOutputMode__10Z2AudioMgrFUl /* 801E4828 001E1768 7F E3 FB 78 */ mr r3, r31 /* 801E482C 001E176C 88 1F 03 E9 */ lbz r0, 0x3e9(r31) /* 801E4830 001E1770 54 00 10 3A */ slwi r0, r0, 2 @@ -3447,7 +3447,7 @@ lbl_801E50F0: /* 801E5140 001E2080 3C 80 80 39 */ lis r4, lbl_80396EA8@ha /* 801E5144 001E2084 38 84 6E A8 */ addi r4, r4, lbl_80396EA8@l /* 801E5148 001E2088 7C 84 00 2E */ lwzx r4, r4, r0 -/* 801E514C 001E208C 48 0E 87 3D */ bl Z2AudioMgr_NS_setOutputMode +/* 801E514C 001E208C 48 0E 87 3D */ bl setOutputMode__10Z2AudioMgrFUl /* 801E5150 001E2090 7F E3 FB 78 */ mr r3, r31 /* 801E5154 001E2094 88 1F 03 E9 */ lbz r0, 0x3e9(r31) /* 801E5158 001E2098 54 00 10 3A */ slwi r0, r0, 2 diff --git a/asm/d/ovlp/d_ovlp_fade.s b/asm/d/ovlp/d_ovlp_fade.s index 6232b5e9b7c..ab569b167e1 100644 --- a/asm/d/ovlp/d_ovlp_fade.s +++ b/asm/d/ovlp/d_ovlp_fade.s @@ -49,7 +49,7 @@ dOvlpFd_FadeOut: /* 80252214 0024F154 2C 00 00 00 */ cmpwi r0, 0 /* 80252218 0024F158 40 82 00 4C */ bne lbl_80252264 /* 8025221C 0024F15C 38 60 00 00 */ li r3, 0 -/* 80252220 0024F160 4B DB 50 35 */ bl mDoAud_setFadeInStart +/* 80252220 0024F160 4B DB 50 35 */ bl mDoAud_setFadeInStart__FUc /* 80252224 0024F164 A8 1E 00 0E */ lha r0, 0xe(r30) /* 80252228 0024F168 2C 00 00 08 */ cmpwi r0, 8 /* 8025222C 0024F16C 40 82 00 10 */ bne lbl_8025223C @@ -175,7 +175,7 @@ lbl_802523B4: lbl_802523BC: /* 802523BC 0024F2FC 93 DF 00 D4 */ stw r30, 0xd4(r31) /* 802523C0 0024F300 38 60 00 00 */ li r3, 0 -/* 802523C4 0024F304 4B DB 4E 61 */ bl mDoAud_setFadeOutStart +/* 802523C4 0024F304 4B DB 4E 61 */ bl mDoAud_setFadeOutStart__FUc lbl_802523C8: /* 802523C8 0024F308 80 7F 00 D0 */ lwz r3, 0xd0(r31) /* 802523CC 0024F30C 34 03 FF FF */ addic. r0, r3, -1 diff --git a/asm/d/ovlp/d_ovlp_fade3.s b/asm/d/ovlp/d_ovlp_fade3.s index 914eb026383..f5cb04b412b 100644 --- a/asm/d/ovlp/d_ovlp_fade3.s +++ b/asm/d/ovlp/d_ovlp_fade3.s @@ -497,7 +497,7 @@ lbl_8025365C: /* 8025365C 0025059C 38 00 00 5A */ li r0, 0x5a /* 80253660 002505A0 98 1F 01 1D */ stb r0, 0x11d(r31) /* 80253664 002505A4 38 60 00 00 */ li r3, 0 -/* 80253668 002505A8 4B DB 3B BD */ bl mDoAud_setFadeOutStart +/* 80253668 002505A8 4B DB 3B BD */ bl mDoAud_setFadeOutStart__FUc /* 8025366C 002505AC 48 00 00 0C */ b lbl_80253678 lbl_80253670: /* 80253670 002505B0 38 7F 01 1D */ addi r3, r31, 0x11d @@ -527,7 +527,7 @@ lbl_80253678: /* 802536CC 0025060C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802536D0 00250610 40 82 00 4C */ bne lbl_8025371C /* 802536D4 00250614 38 60 00 00 */ li r3, 0 -/* 802536D8 00250618 4B DB 3B 7D */ bl mDoAud_setFadeInStart +/* 802536D8 00250618 4B DB 3B 7D */ bl mDoAud_setFadeInStart__FUc /* 802536DC 0025061C A8 7F 01 10 */ lha r3, 0x110(r31) /* 802536E0 00250620 A8 1F 01 12 */ lha r0, 0x112(r31) /* 802536E4 00250624 7C 03 02 14 */ add r0, r3, r0 diff --git a/asm/d/s/d_s_logo.s b/asm/d/s/d_s_logo.s index 142eb1678c8..84b1075d8fb 100644 --- a/asm/d/s/d_s_logo.s +++ b/asm/d/s/d_s_logo.s @@ -1249,7 +1249,7 @@ dScnLogo_c_NS_dtor: /* 802572F4 00254234 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) /* 802572F8 00254238 38 80 00 05 */ li r4, 5 /* 802572FC 0025423C 38 A0 00 01 */ li r5, 1 -/* 80257300 00254240 48 07 66 75 */ bl Z2AudioMgr_NS_resetProcess +/* 80257300 00254240 48 07 66 75 */ bl resetProcess__10Z2AudioMgrFUlb lbl_80257304: /* 80257304 00254244 38 60 00 00 */ li r3, 0 /* 80257308 00254248 3C 80 80 00 */ lis r4, 0x8000 diff --git a/asm/d/s/d_s_play.s b/asm/d/s/d_s_play.s index ac2574ffc86..014fe7b2e44 100644 --- a/asm/d/s/d_s_play.s +++ b/asm/d/s/d_s_play.s @@ -491,7 +491,7 @@ dScnPly_c_NS_resetGame: /* 80259AF4 00256A34 38 60 00 00 */ li r3, 0 /* 80259AF8 00256A38 48 00 00 F0 */ b lbl_80259BE8 lbl_80259AFC: -/* 80259AFC 00256A3C 4B DA D7 C9 */ bl mDoAud_resetRecover +/* 80259AFC 00256A3C 4B DA D7 C9 */ bl mDoAud_resetRecover__Fv /* 80259B00 00256A40 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80259B04 00256A44 40 82 00 0C */ bne lbl_80259B10 /* 80259B08 00256A48 38 60 00 00 */ li r3, 0 @@ -653,8 +653,8 @@ lbl_80259D14: /* 80259D3C 00256C7C 7C 65 1B 78 */ mr r5, r3 /* 80259D40 00256C80 7F C3 F3 78 */ mr r3, r30 /* 80259D44 00256C84 7F E4 FB 78 */ mr r4, r31 -/* 80259D48 00256C88 4B DA D4 75 */ bl mDoAud_setSceneName -/* 80259D4C 00256C8C 4B DA D4 AD */ bl mDoAud_load1stDynamicWave +/* 80259D48 00256C88 4B DA D4 75 */ bl mDoAud_setSceneName__FPCcll +/* 80259D4C 00256C8C 4B DA D4 AD */ bl mDoAud_load1stDynamicWave__Fv /* 80259D50 00256C90 2C 03 00 00 */ cmpwi r3, 0 /* 80259D54 00256C94 40 82 00 0C */ bne lbl_80259D60 /* 80259D58 00256C98 38 60 00 00 */ li r3, 0 diff --git a/asm/m/Do/m_Do_audio.s b/asm/m/Do/m_Do_audio.s deleted file mode 100644 index fcd519d8336..00000000000 --- a/asm/m/Do/m_Do_audio.s +++ /dev/null @@ -1,718 +0,0 @@ -.include "macros.inc" - -.section .text, "ax" # 80006fb4 - - -.global mDoAud_zelAudio_c_NS_reset -mDoAud_zelAudio_c_NS_reset: -/* 80006FB4 00003EF4 38 00 00 00 */ li r0, 0 -/* 80006FB8 00003EF8 98 0D 86 3A */ stb r0, lbl_80450BBA-_SDA_BASE_(r13) -/* 80006FBC 00003EFC 4E 80 00 20 */ blr - -.global mDoAud_Create -mDoAud_Create: -/* 80006FC0 00003F00 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80006FC4 00003F04 7C 08 02 A6 */ mflr r0 -/* 80006FC8 00003F08 90 01 00 14 */ stw r0, 0x14(r1) -/* 80006FCC 00003F0C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80006FD0 00003F10 80 0D 86 40 */ lwz r0, lbl_80450BC0-_SDA_BASE_(r13) -/* 80006FD4 00003F14 28 00 00 00 */ cmplwi r0, 0 -/* 80006FD8 00003F18 40 82 00 24 */ bne lbl_80006FFC -/* 80006FDC 00003F1C 3C 60 80 37 */ lis r3, lbl_80373D68@ha -/* 80006FE0 00003F20 38 63 3D 68 */ addi r3, r3, lbl_80373D68@l -/* 80006FE4 00003F24 38 80 00 02 */ li r4, 2 -/* 80006FE8 00003F28 38 A0 00 00 */ li r5, 0 -/* 80006FEC 00003F2C 48 00 F3 A9 */ bl mDoDvdThd_toMainRam_c_NS_create -/* 80006FF0 00003F30 90 6D 86 40 */ stw r3, lbl_80450BC0-_SDA_BASE_(r13) -/* 80006FF4 00003F34 28 03 00 00 */ cmplwi r3, 0 -/* 80006FF8 00003F38 41 82 01 58 */ beq lbl_80007150 -lbl_80006FFC: -/* 80006FFC 00003F3C 80 0D 86 44 */ lwz r0, lbl_80450BC4-_SDA_BASE_(r13) -/* 80007000 00003F40 28 00 00 00 */ cmplwi r0, 0 -/* 80007004 00003F44 40 82 00 2C */ bne lbl_80007030 -/* 80007008 00003F48 3C 60 80 37 */ lis r3, lbl_80373D68@ha -/* 8000700C 00003F4C 38 63 3D 68 */ addi r3, r3, lbl_80373D68@l -/* 80007010 00003F50 38 63 00 16 */ addi r3, r3, 0x16 -/* 80007014 00003F54 38 80 00 00 */ li r4, 0 -/* 80007018 00003F58 38 A0 00 03 */ li r5, 3 -/* 8000701C 00003F5C 38 C0 00 00 */ li r6, 0 -/* 80007020 00003F60 48 00 F1 C1 */ bl mDoDvdThd_mountXArchive_c_NS_create -/* 80007024 00003F64 90 6D 86 44 */ stw r3, lbl_80450BC4-_SDA_BASE_(r13) -/* 80007028 00003F68 28 03 00 00 */ cmplwi r3, 0 -/* 8000702C 00003F6C 41 82 01 24 */ beq lbl_80007150 -lbl_80007030: -/* 80007030 00003F70 80 6D 86 40 */ lwz r3, lbl_80450BC0-_SDA_BASE_(r13) -/* 80007034 00003F74 88 03 00 0C */ lbz r0, 0xc(r3) -/* 80007038 00003F78 2C 00 00 00 */ cmpwi r0, 0 -/* 8000703C 00003F7C 41 82 01 14 */ beq lbl_80007150 -/* 80007040 00003F80 80 6D 86 44 */ lwz r3, lbl_80450BC4-_SDA_BASE_(r13) -/* 80007044 00003F84 88 03 00 0C */ lbz r0, 0xc(r3) -/* 80007048 00003F88 2C 00 00 00 */ cmpwi r0, 0 -/* 8000704C 00003F8C 41 82 01 04 */ beq lbl_80007150 -/* 80007050 00003F90 80 0D 86 3C */ lwz r0, lbl_80450BBC-_SDA_BASE_(r13) -/* 80007054 00003F94 28 00 00 00 */ cmplwi r0, 0 -/* 80007058 00003F98 41 82 00 50 */ beq lbl_800070A8 -/* 8000705C 00003F9C 80 6D 8D F4 */ lwz r3, sCurrentHeap__7JKRHeap-_SDA_BASE_(r13) -/* 80007060 00003FA0 38 80 00 05 */ li r4, 5 -/* 80007064 00003FA4 48 2C 77 4D */ bl changeGroupID__7JKRHeapFUc -/* 80007068 00003FA8 7C 7F 1B 78 */ mr r31, r3 -/* 8000706C 00003FAC 80 6D 86 44 */ lwz r3, lbl_80450BC4-_SDA_BASE_(r13) -/* 80007070 00003FB0 80 E3 00 1C */ lwz r7, 0x1c(r3) -/* 80007074 00003FB4 80 6D 86 40 */ lwz r3, lbl_80450BC0-_SDA_BASE_(r13) -/* 80007078 00003FB8 80 C3 00 1C */ lwz r6, 0x1c(r3) -/* 8000707C 00003FBC 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha -/* 80007080 00003FC0 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l -/* 80007084 00003FC4 80 8D 86 3C */ lwz r4, lbl_80450BBC-_SDA_BASE_(r13) -/* 80007088 00003FC8 3C A0 00 A0 */ lis r5, 0xa0 -/* 8000708C 00003FCC 48 2C 62 C1 */ bl Z2AudioMgr_NS_init -/* 80007090 00003FD0 80 6D 8D F4 */ lwz r3, sCurrentHeap__7JKRHeap-_SDA_BASE_(r13) -/* 80007094 00003FD4 57 E4 06 3E */ clrlwi r4, r31, 0x18 -/* 80007098 00003FD8 48 2C 77 19 */ bl changeGroupID__7JKRHeapFUc -/* 8000709C 00003FDC 80 6D 86 3C */ lwz r3, lbl_80450BBC-_SDA_BASE_(r13) -/* 800070A0 00003FE0 48 2C 9B 55 */ bl adjustSize__12JKRSolidHeapFv -/* 800070A4 00003FE4 48 00 00 18 */ b lbl_800070BC -lbl_800070A8: -/* 800070A8 00003FE8 3C 60 80 37 */ lis r3, lbl_80373D68@ha -/* 800070AC 00003FEC 38 63 3D 68 */ addi r3, r3, lbl_80373D68@l -/* 800070B0 00003FF0 38 63 00 35 */ addi r3, r3, 0x35 -/* 800070B4 00003FF4 4C C6 31 82 */ crclr 6 -/* 800070B8 00003FF8 4B FF FB 55 */ bl OSReport_Error -lbl_800070BC: -/* 800070BC 00003FFC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha -/* 800070C0 00004000 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l -/* 800070C4 00004004 38 83 07 F0 */ addi r4, r3, 0x7f0 -/* 800070C8 00004008 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha -/* 800070CC 0000400C 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l -/* 800070D0 00004010 38 63 04 C4 */ addi r3, r3, 0x4c4 -/* 800070D4 00004014 48 2A F6 85 */ bl setEventBit__11Z2StatusMgrFPv -/* 800070D8 00004018 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha -/* 800070DC 0000401C 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l -/* 800070E0 00004020 4B FF FE D5 */ bl mDoAud_zelAudio_c_NS_reset -/* 800070E4 00004024 48 33 94 AD */ bl OSGetSoundMode -/* 800070E8 00004028 7C 64 1B 78 */ mr r4, r3 -/* 800070EC 0000402C 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) -/* 800070F0 00004030 48 2C 67 99 */ bl Z2AudioMgr_NS_setOutputMode -/* 800070F4 00004034 80 6D 86 40 */ lwz r3, lbl_80450BC0-_SDA_BASE_(r13) -/* 800070F8 00004038 80 63 00 1C */ lwz r3, 0x1c(r3) -/* 800070FC 0000403C 38 80 00 00 */ li r4, 0 -/* 80007100 00004040 48 2C 74 01 */ bl free__7JKRHeapFPvP7JKRHeap -/* 80007104 00004044 80 6D 86 40 */ lwz r3, lbl_80450BC0-_SDA_BASE_(r13) -/* 80007108 00004048 28 03 00 00 */ cmplwi r3, 0 -/* 8000710C 0000404C 41 82 00 18 */ beq lbl_80007124 -/* 80007110 00004050 38 80 00 01 */ li r4, 1 -/* 80007114 00004054 81 83 00 10 */ lwz r12, 0x10(r3) -/* 80007118 00004058 81 8C 00 08 */ lwz r12, 8(r12) -/* 8000711C 0000405C 7D 89 03 A6 */ mtctr r12 -/* 80007120 00004060 4E 80 04 21 */ bctrl -lbl_80007124: -/* 80007124 00004064 80 6D 86 44 */ lwz r3, lbl_80450BC4-_SDA_BASE_(r13) -/* 80007128 00004068 28 03 00 00 */ cmplwi r3, 0 -/* 8000712C 0000406C 41 82 00 18 */ beq lbl_80007144 -/* 80007130 00004070 38 80 00 01 */ li r4, 1 -/* 80007134 00004074 81 83 00 10 */ lwz r12, 0x10(r3) -/* 80007138 00004078 81 8C 00 08 */ lwz r12, 8(r12) -/* 8000713C 0000407C 7D 89 03 A6 */ mtctr r12 -/* 80007140 00004080 4E 80 04 21 */ bctrl -lbl_80007144: -/* 80007144 00004084 38 00 00 01 */ li r0, 1 -/* 80007148 00004088 98 0D 86 38 */ stb r0, lbl_80450BB8-_SDA_BASE_(r13) -/* 8000714C 0000408C 98 0D 87 00 */ stb r0, lbl_80450C80-_SDA_BASE_(r13) -lbl_80007150: -/* 80007150 00004090 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80007154 00004094 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80007158 00004098 7C 08 03 A6 */ mtlr r0 -/* 8000715C 0000409C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80007160 000040A0 4E 80 00 20 */ blr - -.global mDoAud_Execute -mDoAud_Execute: -/* 80007164 000040A4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80007168 000040A8 7C 08 02 A6 */ mflr r0 -/* 8000716C 000040AC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007170 000040B0 88 0D 86 38 */ lbz r0, lbl_80450BB8-_SDA_BASE_(r13) -/* 80007174 000040B4 28 00 00 00 */ cmplwi r0, 0 -/* 80007178 000040B8 40 82 00 28 */ bne lbl_800071A0 -/* 8000717C 000040BC 80 6D 86 F8 */ lwz r3, m_Do_Reset_NS_mDoRst_NS_mResetData-_SDA_BASE_(r13) -/* 80007180 000040C0 88 03 00 10 */ lbz r0, 0x10(r3) -/* 80007184 000040C4 2C 00 00 00 */ cmpwi r0, 0 -/* 80007188 000040C8 40 82 00 24 */ bne lbl_800071AC -/* 8000718C 000040CC 88 03 00 11 */ lbz r0, 0x11(r3) -/* 80007190 000040D0 2C 00 00 00 */ cmpwi r0, 0 -/* 80007194 000040D4 40 82 00 18 */ bne lbl_800071AC -/* 80007198 000040D8 4B FF FE 29 */ bl mDoAud_Create -/* 8000719C 000040DC 48 00 00 10 */ b lbl_800071AC -lbl_800071A0: -/* 800071A0 000040E0 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha -/* 800071A4 000040E4 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l -/* 800071A8 000040E8 48 2C 67 5D */ bl Z2AudioMgr_NS_gframeProcess -lbl_800071AC: -/* 800071AC 000040EC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800071B0 000040F0 7C 08 03 A6 */ mtlr r0 -/* 800071B4 000040F4 38 21 00 10 */ addi r1, r1, 0x10 -/* 800071B8 000040F8 4E 80 00 20 */ blr - -.global mDoAud_setSceneName -mDoAud_setSceneName: -/* 800071BC 000040FC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800071C0 00004100 7C 08 02 A6 */ mflr r0 -/* 800071C4 00004104 90 01 00 14 */ stw r0, 0x14(r1) -/* 800071C8 00004108 7C 67 1B 78 */ mr r7, r3 -/* 800071CC 0000410C 7C 80 23 78 */ mr r0, r4 -/* 800071D0 00004110 7C A6 2B 78 */ mr r6, r5 -/* 800071D4 00004114 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) -/* 800071D8 00004118 38 63 04 A4 */ addi r3, r3, 0x4a4 -/* 800071DC 0000411C 7C E4 3B 78 */ mr r4, r7 -/* 800071E0 00004120 7C 05 03 78 */ mr r5, r0 -/* 800071E4 00004124 48 2A F9 15 */ bl setSceneName__10Z2SceneMgrFPcll -/* 800071E8 00004128 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800071EC 0000412C 7C 08 03 A6 */ mtlr r0 -/* 800071F0 00004130 38 21 00 10 */ addi r1, r1, 0x10 -/* 800071F4 00004134 4E 80 00 20 */ blr - -.global mDoAud_load1stDynamicWave -mDoAud_load1stDynamicWave: -/* 800071F8 00004138 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800071FC 0000413C 7C 08 02 A6 */ mflr r0 -/* 80007200 00004140 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007204 00004144 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) -/* 80007208 00004148 38 63 04 A4 */ addi r3, r3, 0x4a4 -/* 8000720C 0000414C 48 2B 2B 35 */ bl Z2SceneMgr_NS_load1stDynamicWave -/* 80007210 00004150 38 60 00 01 */ li r3, 1 -/* 80007214 00004154 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80007218 00004158 7C 08 03 A6 */ mtlr r0 -/* 8000721C 0000415C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80007220 00004160 4E 80 00 20 */ blr - -.global mDoAud_setFadeOutStart -mDoAud_setFadeOutStart: -/* 80007224 00004164 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80007228 00004168 7C 08 02 A6 */ mflr r0 -/* 8000722C 0000416C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007230 00004170 7C 60 1B 78 */ mr r0, r3 -/* 80007234 00004174 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) -/* 80007238 00004178 38 63 04 A4 */ addi r3, r3, 0x4a4 -/* 8000723C 0000417C 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 80007240 00004180 48 2A F7 3D */ bl setFadeOutStart__10Z2SceneMgrFUc -/* 80007244 00004184 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80007248 00004188 7C 08 03 A6 */ mtlr r0 -/* 8000724C 0000418C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80007250 00004190 4E 80 00 20 */ blr - -.global mDoAud_setFadeInStart -mDoAud_setFadeInStart: -/* 80007254 00004194 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80007258 00004198 7C 08 02 A6 */ mflr r0 -/* 8000725C 0000419C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007260 000041A0 7C 60 1B 78 */ mr r0, r3 -/* 80007264 000041A4 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) -/* 80007268 000041A8 38 63 04 A4 */ addi r3, r3, 0x4a4 -/* 8000726C 000041AC 54 04 06 3E */ clrlwi r4, r0, 0x18 -/* 80007270 000041B0 48 2A F7 A9 */ bl setFadeInStart__10Z2SceneMgrFUc -/* 80007274 000041B4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80007278 000041B8 7C 08 03 A6 */ mtlr r0 -/* 8000727C 000041BC 38 21 00 10 */ addi r1, r1, 0x10 -/* 80007280 000041C0 4E 80 00 20 */ blr - -.global mDoAud_resetProcess -mDoAud_resetProcess: -/* 80007284 000041C4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80007288 000041C8 7C 08 02 A6 */ mflr r0 -/* 8000728C 000041CC 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007290 000041D0 88 0D 86 39 */ lbz r0, lbl_80450BB9-_SDA_BASE_(r13) -/* 80007294 000041D4 28 00 00 00 */ cmplwi r0, 0 -/* 80007298 000041D8 40 82 00 1C */ bne lbl_800072B4 -/* 8000729C 000041DC 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) -/* 800072A0 000041E0 38 80 00 1E */ li r4, 0x1e -/* 800072A4 000041E4 38 A0 00 00 */ li r5, 0 -/* 800072A8 000041E8 48 2C 66 CD */ bl Z2AudioMgr_NS_resetProcess -/* 800072AC 000041EC 38 00 00 01 */ li r0, 1 -/* 800072B0 000041F0 98 0D 86 39 */ stb r0, lbl_80450BB9-_SDA_BASE_(r13) -lbl_800072B4: -/* 800072B4 000041F4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800072B8 000041F8 7C 08 03 A6 */ mtlr r0 -/* 800072BC 000041FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 800072C0 00004200 4E 80 00 20 */ blr - -.global mDoAud_resetRecover -mDoAud_resetRecover: -/* 800072C4 00004204 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800072C8 00004208 7C 08 02 A6 */ mflr r0 -/* 800072CC 0000420C 90 01 00 14 */ stw r0, 0x14(r1) -/* 800072D0 00004210 88 0D 86 39 */ lbz r0, lbl_80450BB9-_SDA_BASE_(r13) -/* 800072D4 00004214 28 00 00 00 */ cmplwi r0, 0 -/* 800072D8 00004218 41 82 00 2C */ beq lbl_80007304 -/* 800072DC 0000421C 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) -/* 800072E0 00004220 48 2C 67 8D */ bl Z2AudioMgr_NS_hasReset -/* 800072E4 00004224 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 800072E8 00004228 40 82 00 0C */ bne lbl_800072F4 -/* 800072EC 0000422C 38 60 00 00 */ li r3, 0 -/* 800072F0 00004230 48 00 00 18 */ b lbl_80007308 -lbl_800072F4: -/* 800072F4 00004234 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) -/* 800072F8 00004238 48 2C 66 D5 */ bl Z2AudioMgr_NS_resetRecover -/* 800072FC 0000423C 38 00 00 00 */ li r0, 0 -/* 80007300 00004240 98 0D 86 39 */ stb r0, lbl_80450BB9-_SDA_BASE_(r13) -lbl_80007304: -/* 80007304 00004244 38 60 00 01 */ li r3, 1 -lbl_80007308: -/* 80007308 00004248 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000730C 0000424C 7C 08 03 A6 */ mtlr r0 -/* 80007310 00004250 38 21 00 10 */ addi r1, r1, 0x10 -/* 80007314 00004254 4E 80 00 20 */ blr -/* 80007318 00004258 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000731C 0000425C 7C 08 02 A6 */ mflr r0 -/* 80007320 00004260 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007324 00004264 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha -/* 80007328 00004268 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l -/* 8000732C 0000426C 48 2C 5F 1D */ bl Z2AudioMgr -/* 80007330 00004270 3C 60 80 3A */ lis r3, lbl_803A2F40@ha -/* 80007334 00004274 38 03 2F 40 */ addi r0, r3, lbl_803A2F40@l -/* 80007338 00004278 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha -/* 8000733C 0000427C 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l -/* 80007340 00004280 90 03 05 14 */ stw r0, 0x514(r3) -.global mDoAud_zelAudio_c_NS_dtor -/* 80007344 00004284 3C 80 80 00 */ lis r4, mDoAud_zelAudio_c_NS_dtor@ha -.global mDoAud_zelAudio_c_NS_dtor -/* 80007348 00004288 38 84 73 68 */ addi r4, r4, mDoAud_zelAudio_c_NS_dtor@l -/* 8000734C 0000428C 3C A0 80 3E */ lis r5, lbl_803DBF40@ha -/* 80007350 00004290 38 A5 BF 40 */ addi r5, r5, lbl_803DBF40@l -/* 80007354 00004294 48 35 A8 D1 */ bl func_80361C24 -/* 80007358 00004298 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000735C 0000429C 7C 08 03 A6 */ mtlr r0 -/* 80007360 000042A0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80007364 000042A4 4E 80 00 20 */ blr -.global mDoAud_zelAudio_c_NS_dtor -mDoAud_zelAudio_c_NS_dtor: -/* 80007368 000042A8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000736C 000042AC 7C 08 02 A6 */ mflr r0 -/* 80007370 000042B0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007374 000042B4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80007378 000042B8 93 C1 00 08 */ stw r30, 8(r1) -/* 8000737C 000042BC 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80007380 000042C0 7C 9F 23 78 */ mr r31, r4 -/* 80007384 000042C4 41 82 00 28 */ beq lbl_800073AC -/* 80007388 000042C8 3C 80 80 3A */ lis r4, lbl_803A2F40@ha -/* 8000738C 000042CC 38 04 2F 40 */ addi r0, r4, lbl_803A2F40@l -/* 80007390 000042D0 90 1E 05 14 */ stw r0, 0x514(r30) -/* 80007394 000042D4 38 80 00 00 */ li r4, 0 -/* 80007398 000042D8 48 00 00 31 */ bl Z2AudioMgr_NS_dtor -/* 8000739C 000042DC 7F E0 07 35 */ extsh. r0, r31 -/* 800073A0 000042E0 40 81 00 0C */ ble lbl_800073AC -/* 800073A4 000042E4 7F C3 F3 78 */ mr r3, r30 -/* 800073A8 000042E8 48 2C 79 95 */ bl __dl__FPv -lbl_800073AC: -/* 800073AC 000042EC 7F C3 F3 78 */ mr r3, r30 -/* 800073B0 000042F0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800073B4 000042F4 83 C1 00 08 */ lwz r30, 8(r1) -/* 800073B8 000042F8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800073BC 000042FC 7C 08 03 A6 */ mtlr r0 -/* 800073C0 00004300 38 21 00 10 */ addi r1, r1, 0x10 -/* 800073C4 00004304 4E 80 00 20 */ blr - -.global Z2AudioMgr_NS_dtor -Z2AudioMgr_NS_dtor: -/* 800073C8 00004308 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 800073CC 0000430C 7C 08 02 A6 */ mflr r0 -/* 800073D0 00004310 90 01 00 24 */ stw r0, 0x24(r1) -/* 800073D4 00004314 39 61 00 20 */ addi r11, r1, 0x20 -/* 800073D8 00004318 48 35 AE 05 */ bl _savegpr_29 -/* 800073DC 0000431C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 800073E0 00004320 7C 9F 23 78 */ mr r31, r4 -/* 800073E4 00004324 41 82 04 38 */ beq lbl_8000781C -/* 800073E8 00004328 3C 60 80 3D */ lis r3, lbl_803CBF38@ha -/* 800073EC 0000432C 38 03 BF 38 */ addi r0, r3, lbl_803CBF38@l -/* 800073F0 00004330 90 1E 05 14 */ stw r0, 0x514(r30) -/* 800073F4 00004334 34 1E 13 70 */ addic. r0, r30, 0x1370 -/* 800073F8 00004338 41 82 00 24 */ beq lbl_8000741C -/* 800073FC 0000433C 34 1E 13 70 */ addic. r0, r30, 0x1370 -/* 80007400 00004340 41 82 00 1C */ beq lbl_8000741C -/* 80007404 00004344 80 6D 85 C0 */ lwz r3, lbl_80450B40-_SDA_BASE_(r13) -/* 80007408 00004348 38 1E 13 70 */ addi r0, r30, 0x1370 -/* 8000740C 0000434C 7C 03 00 40 */ cmplw r3, r0 -/* 80007410 00004350 40 82 00 0C */ bne lbl_8000741C -/* 80007414 00004354 38 00 00 00 */ li r0, 0 -/* 80007418 00004358 90 0D 85 C0 */ stw r0, lbl_80450B40-_SDA_BASE_(r13) -lbl_8000741C: -/* 8000741C 0000435C 34 1E 0F 2C */ addic. r0, r30, 0xf2c -/* 80007420 00004360 41 82 00 98 */ beq lbl_800074B8 -/* 80007424 00004364 34 7E 0F 38 */ addic. r3, r30, 0xf38 -/* 80007428 00004368 41 82 00 54 */ beq lbl_8000747C -/* 8000742C 0000436C 3C 80 80 3D */ lis r4, lbl_803CBF24@ha -/* 80007430 00004370 38 04 BF 24 */ addi r0, r4, lbl_803CBF24@l -/* 80007434 00004374 90 1E 0F 38 */ stw r0, 0xf38(r30) -/* 80007438 00004378 28 03 00 00 */ cmplwi r3, 0 -/* 8000743C 0000437C 41 82 00 40 */ beq lbl_8000747C -/* 80007440 00004380 3C 80 80 3D */ lis r4, lbl_803C9D80@ha -/* 80007444 00004384 38 04 9D 80 */ addi r0, r4, lbl_803C9D80@l -/* 80007448 00004388 90 1E 0F 38 */ stw r0, 0xf38(r30) -/* 8000744C 0000438C 34 1E 0F 3C */ addic. r0, r30, 0xf3c -/* 80007450 00004390 41 82 00 24 */ beq lbl_80007474 -/* 80007454 00004394 34 83 00 04 */ addic. r4, r3, 4 -/* 80007458 00004398 41 82 00 08 */ beq lbl_80007460 -/* 8000745C 0000439C 38 84 FF FC */ addi r4, r4, -4 -lbl_80007460: -/* 80007460 000043A0 80 0D 85 F4 */ lwz r0, lbl_80450B74-_SDA_BASE_(r13) -/* 80007464 000043A4 7C 00 20 40 */ cmplw r0, r4 -/* 80007468 000043A8 40 82 00 0C */ bne lbl_80007474 -/* 8000746C 000043AC 38 00 00 00 */ li r0, 0 -/* 80007470 000043B0 90 0D 85 F4 */ stw r0, lbl_80450B74-_SDA_BASE_(r13) -lbl_80007474: -/* 80007474 000043B4 38 80 00 00 */ li r4, 0 -/* 80007478 000043B8 48 29 BB 11 */ bl JAISoundStarter_NS_dtor -lbl_8000747C: -/* 8000747C 000043BC 34 7E 0F 30 */ addic. r3, r30, 0xf30 -/* 80007480 000043C0 41 82 00 08 */ beq lbl_80007488 -/* 80007484 000043C4 48 29 AD 01 */ bl releaseSound__14JAISoundHandleFv -lbl_80007488: -/* 80007488 000043C8 34 1E 0F 2C */ addic. r0, r30, 0xf2c -/* 8000748C 000043CC 41 82 00 0C */ beq lbl_80007498 -/* 80007490 000043D0 38 7E 0F 2C */ addi r3, r30, 0xf2c -/* 80007494 000043D4 48 29 AC F1 */ bl releaseSound__14JAISoundHandleFv -lbl_80007498: -/* 80007498 000043D8 34 1E 0F 2C */ addic. r0, r30, 0xf2c -/* 8000749C 000043DC 41 82 00 1C */ beq lbl_800074B8 -/* 800074A0 000043E0 80 6D 85 F0 */ lwz r3, lbl_80450B70-_SDA_BASE_(r13) -/* 800074A4 000043E4 38 1E 0F 2C */ addi r0, r30, 0xf2c -/* 800074A8 000043E8 7C 03 00 40 */ cmplw r3, r0 -/* 800074AC 000043EC 40 82 00 0C */ bne lbl_800074B8 -/* 800074B0 000043F0 38 00 00 00 */ li r0, 0 -/* 800074B4 000043F4 90 0D 85 F0 */ stw r0, lbl_80450B70-_SDA_BASE_(r13) -lbl_800074B8: -/* 800074B8 000043F8 38 7E 0D 4C */ addi r3, r30, 0xd4c -/* 800074BC 000043FC 38 80 FF FF */ li r4, -1 -/* 800074C0 00004400 48 2B 5D 3D */ bl Z2Audience_NS_dtor -/* 800074C4 00004404 34 1E 0D 40 */ addic. r0, r30, 0xd40 -/* 800074C8 00004408 41 82 00 94 */ beq lbl_8000755C -/* 800074CC 0000440C 3C 60 80 3D */ lis r3, lbl_803CAC48@ha -/* 800074D0 00004410 38 63 AC 48 */ addi r3, r3, lbl_803CAC48@l -/* 800074D4 00004414 90 7E 0D 40 */ stw r3, 0xd40(r30) -/* 800074D8 00004418 38 03 00 24 */ addi r0, r3, 0x24 -/* 800074DC 0000441C 90 1E 0D 44 */ stw r0, 0xd44(r30) -/* 800074E0 00004420 38 03 00 34 */ addi r0, r3, 0x34 -/* 800074E4 00004424 90 1E 0D 48 */ stw r0, 0xd48(r30) -/* 800074E8 00004428 34 1E 0D 4C */ addic. r0, r30, 0xd4c -/* 800074EC 0000442C 41 82 00 24 */ beq lbl_80007510 -/* 800074F0 00004430 34 7E 0D 4C */ addic. r3, r30, 0xd4c -/* 800074F4 00004434 41 82 00 08 */ beq lbl_800074FC -/* 800074F8 00004438 38 63 FF F4 */ addi r3, r3, -12 -lbl_800074FC: -/* 800074FC 0000443C 80 0D 85 CC */ lwz r0, lbl_80450B4C-_SDA_BASE_(r13) -/* 80007500 00004440 7C 00 18 40 */ cmplw r0, r3 -/* 80007504 00004444 40 82 00 0C */ bne lbl_80007510 -/* 80007508 00004448 38 00 00 00 */ li r0, 0 -/* 8000750C 0000444C 90 0D 85 CC */ stw r0, lbl_80450B4C-_SDA_BASE_(r13) -lbl_80007510: -/* 80007510 00004450 38 7E 0D 48 */ addi r3, r30, 0xd48 -/* 80007514 00004454 38 80 00 00 */ li r4, 0 -/* 80007518 00004458 48 29 C5 C1 */ bl JAIStreamDataMgr_NS_dtor -/* 8000751C 0000445C 34 1E 0D 44 */ addic. r0, r30, 0xd44 -/* 80007520 00004460 41 82 00 30 */ beq lbl_80007550 -/* 80007524 00004464 3C 60 80 3A */ lis r3, lbl_803A2F4C@ha -/* 80007528 00004468 38 03 2F 4C */ addi r0, r3, lbl_803A2F4C@l -/* 8000752C 0000446C 90 1E 0D 44 */ stw r0, 0xd44(r30) -/* 80007530 00004470 34 1E 0D 44 */ addic. r0, r30, 0xd44 -/* 80007534 00004474 41 82 00 1C */ beq lbl_80007550 -/* 80007538 00004478 80 6D 85 D0 */ lwz r3, lbl_80450B50-_SDA_BASE_(r13) -/* 8000753C 0000447C 38 1E 0D 44 */ addi r0, r30, 0xd44 -/* 80007540 00004480 7C 03 00 40 */ cmplw r3, r0 -/* 80007544 00004484 40 82 00 0C */ bne lbl_80007550 -/* 80007548 00004488 38 00 00 00 */ li r0, 0 -/* 8000754C 0000448C 90 0D 85 D0 */ stw r0, lbl_80450B50-_SDA_BASE_(r13) -lbl_80007550: -/* 80007550 00004490 38 7E 0D 40 */ addi r3, r30, 0xd40 -/* 80007554 00004494 38 80 00 00 */ li r4, 0 -/* 80007558 00004498 48 29 B7 F9 */ bl JAISoundInfo_NS_dtor -lbl_8000755C: -/* 8000755C 0000449C 34 1E 05 30 */ addic. r0, r30, 0x530 -/* 80007560 000044A0 41 82 01 04 */ beq lbl_80007664 -/* 80007564 000044A4 3C 60 80 3D */ lis r3, lbl_803C9D70@ha -/* 80007568 000044A8 38 03 9D 70 */ addi r0, r3, lbl_803C9D70@l -/* 8000756C 000044AC 90 1E 05 30 */ stw r0, 0x530(r30) -/* 80007570 000044B0 37 BE 0C CC */ addic. r29, r30, 0xccc -/* 80007574 000044B4 41 82 00 30 */ beq lbl_800075A4 -/* 80007578 000044B8 34 7D 00 58 */ addic. r3, r29, 0x58 -/* 8000757C 000044BC 41 82 00 0C */ beq lbl_80007588 -/* 80007580 000044C0 38 80 00 00 */ li r4, 0 -/* 80007584 000044C4 48 2D 49 29 */ bl __dt__10JSUPtrListFv -lbl_80007588: -/* 80007588 000044C8 28 1D 00 00 */ cmplwi r29, 0 -/* 8000758C 000044CC 41 82 00 18 */ beq lbl_800075A4 -/* 80007590 000044D0 80 0D 85 E4 */ lwz r0, lbl_80450B64-_SDA_BASE_(r13) -/* 80007594 000044D4 7C 00 E8 40 */ cmplw r0, r29 -/* 80007598 000044D8 40 82 00 0C */ bne lbl_800075A4 -/* 8000759C 000044DC 38 00 00 00 */ li r0, 0 -/* 800075A0 000044E0 90 0D 85 E4 */ stw r0, lbl_80450B64-_SDA_BASE_(r13) -lbl_800075A4: -/* 800075A4 000044E4 37 BE 0C 58 */ addic. r29, r30, 0xc58 -/* 800075A8 000044E8 41 82 00 48 */ beq lbl_800075F0 -/* 800075AC 000044EC 3C 60 80 3D */ lis r3, lbl_803C9958@ha -/* 800075B0 000044F0 38 03 99 58 */ addi r0, r3, lbl_803C9958@l -/* 800075B4 000044F4 90 1E 0C 58 */ stw r0, 0xc58(r30) -/* 800075B8 000044F8 34 7D 00 64 */ addic. r3, r29, 0x64 -/* 800075BC 000044FC 41 82 00 0C */ beq lbl_800075C8 -/* 800075C0 00004500 38 80 00 00 */ li r4, 0 -/* 800075C4 00004504 48 2D 48 E9 */ bl __dt__10JSUPtrListFv -lbl_800075C8: -/* 800075C8 00004508 7F A3 EB 78 */ mr r3, r29 -/* 800075CC 0000450C 38 80 00 00 */ li r4, 0 -/* 800075D0 00004510 48 29 A1 A5 */ bl JAISeqDataUser_NS_dtor -/* 800075D4 00004514 28 1D 00 00 */ cmplwi r29, 0 -/* 800075D8 00004518 41 82 00 18 */ beq lbl_800075F0 -/* 800075DC 0000451C 80 0D 85 E8 */ lwz r0, lbl_80450B68-_SDA_BASE_(r13) -/* 800075E0 00004520 7C 00 E8 40 */ cmplw r0, r29 -/* 800075E4 00004524 40 82 00 0C */ bne lbl_800075F0 -/* 800075E8 00004528 38 00 00 00 */ li r0, 0 -/* 800075EC 0000452C 90 0D 85 E8 */ stw r0, lbl_80450B68-_SDA_BASE_(r13) -lbl_800075F0: -/* 800075F0 00004530 37 BE 05 34 */ addic. r29, r30, 0x534 -/* 800075F4 00004534 41 82 00 50 */ beq lbl_80007644 -/* 800075F8 00004538 3C 60 80 3D */ lis r3, lbl_803C98B0@ha -/* 800075FC 0000453C 38 03 98 B0 */ addi r0, r3, lbl_803C98B0@l -/* 80007600 00004540 90 1E 05 34 */ stw r0, 0x534(r30) -/* 80007604 00004544 38 7E 05 48 */ addi r3, r30, 0x548 -.global JAISeCategoryMgr_NS_dtor -/* 80007608 00004548 3C 80 80 00 */ lis r4, JAISeCategoryMgr_NS_dtor@ha -.global JAISeCategoryMgr_NS_dtor -/* 8000760C 0000454C 38 84 78 DC */ addi r4, r4, JAISeCategoryMgr_NS_dtor@l -/* 80007610 00004550 38 A0 00 6C */ li r5, 0x6c -/* 80007614 00004554 38 C0 00 10 */ li r6, 0x10 -/* 80007618 00004558 48 35 A6 D1 */ bl func_80361CE8 -/* 8000761C 0000455C 7F A3 EB 78 */ mr r3, r29 -/* 80007620 00004560 38 80 00 00 */ li r4, 0 -/* 80007624 00004564 48 29 A1 51 */ bl JAISeqDataUser_NS_dtor -/* 80007628 00004568 28 1D 00 00 */ cmplwi r29, 0 -/* 8000762C 0000456C 41 82 00 18 */ beq lbl_80007644 -/* 80007630 00004570 80 0D 85 EC */ lwz r0, lbl_80450B6C-_SDA_BASE_(r13) -/* 80007634 00004574 7C 00 E8 40 */ cmplw r0, r29 -/* 80007638 00004578 40 82 00 0C */ bne lbl_80007644 -/* 8000763C 0000457C 38 00 00 00 */ li r0, 0 -/* 80007640 00004580 90 0D 85 EC */ stw r0, lbl_80450B6C-_SDA_BASE_(r13) -lbl_80007644: -/* 80007644 00004584 34 1E 05 30 */ addic. r0, r30, 0x530 -/* 80007648 00004588 41 82 00 1C */ beq lbl_80007664 -/* 8000764C 0000458C 80 6D 85 E0 */ lwz r3, lbl_80450B60-_SDA_BASE_(r13) -/* 80007650 00004590 38 1E 05 30 */ addi r0, r30, 0x530 -/* 80007654 00004594 7C 03 00 40 */ cmplw r3, r0 -/* 80007658 00004598 40 82 00 0C */ bne lbl_80007664 -/* 8000765C 0000459C 38 00 00 00 */ li r0, 0 -/* 80007660 000045A0 90 0D 85 E0 */ stw r0, lbl_80450B60-_SDA_BASE_(r13) -lbl_80007664: -/* 80007664 000045A4 34 1E 05 2C */ addic. r0, r30, 0x52c -/* 80007668 000045A8 41 82 00 44 */ beq lbl_800076AC -/* 8000766C 000045AC 3C 60 80 3D */ lis r3, lbl_803C9D80@ha -/* 80007670 000045B0 38 03 9D 80 */ addi r0, r3, lbl_803C9D80@l -/* 80007674 000045B4 90 1E 05 2C */ stw r0, 0x52c(r30) -/* 80007678 000045B8 34 1E 05 30 */ addic. r0, r30, 0x530 -/* 8000767C 000045BC 41 82 00 24 */ beq lbl_800076A0 -/* 80007680 000045C0 34 7E 05 30 */ addic. r3, r30, 0x530 -/* 80007684 000045C4 41 82 00 08 */ beq lbl_8000768C -/* 80007688 000045C8 38 63 FF FC */ addi r3, r3, -4 -lbl_8000768C: -/* 8000768C 000045CC 80 0D 85 F4 */ lwz r0, lbl_80450B74-_SDA_BASE_(r13) -/* 80007690 000045D0 7C 00 18 40 */ cmplw r0, r3 -/* 80007694 000045D4 40 82 00 0C */ bne lbl_800076A0 -/* 80007698 000045D8 38 00 00 00 */ li r0, 0 -/* 8000769C 000045DC 90 0D 85 F4 */ stw r0, lbl_80450B74-_SDA_BASE_(r13) -lbl_800076A0: -/* 800076A0 000045E0 38 7E 05 2C */ addi r3, r30, 0x52c -/* 800076A4 000045E4 38 80 00 00 */ li r4, 0 -/* 800076A8 000045E8 48 29 B8 E1 */ bl JAISoundStarter_NS_dtor -lbl_800076AC: -/* 800076AC 000045EC 38 7E 05 1C */ addi r3, r30, 0x51c -/* 800076B0 000045F0 38 80 FF FF */ li r4, -1 -/* 800076B4 000045F4 48 29 5A 49 */ bl JASAudioReseter_NS_dtor -/* 800076B8 000045F8 34 1E 04 F4 */ addic. r0, r30, 0x4f4 -/* 800076BC 000045FC 41 82 00 38 */ beq lbl_800076F4 -/* 800076C0 00004600 34 1E 04 F4 */ addic. r0, r30, 0x4f4 -/* 800076C4 00004604 41 82 00 10 */ beq lbl_800076D4 -/* 800076C8 00004608 38 7E 04 F4 */ addi r3, r30, 0x4f4 -/* 800076CC 0000460C 38 80 00 00 */ li r4, 0 -/* 800076D0 00004610 48 2D 47 DD */ bl __dt__10JSUPtrListFv -lbl_800076D4: -/* 800076D4 00004614 34 1E 04 F4 */ addic. r0, r30, 0x4f4 -/* 800076D8 00004618 41 82 00 1C */ beq lbl_800076F4 -/* 800076DC 0000461C 80 6D 85 C8 */ lwz r3, lbl_80450B48-_SDA_BASE_(r13) -/* 800076E0 00004620 38 1E 04 F4 */ addi r0, r30, 0x4f4 -/* 800076E4 00004624 7C 03 00 40 */ cmplw r3, r0 -/* 800076E8 00004628 40 82 00 0C */ bne lbl_800076F4 -/* 800076EC 0000462C 38 00 00 00 */ li r0, 0 -/* 800076F0 00004630 90 0D 85 C8 */ stw r0, lbl_80450B48-_SDA_BASE_(r13) -lbl_800076F4: -/* 800076F4 00004634 34 1E 04 C4 */ addic. r0, r30, 0x4c4 -/* 800076F8 00004638 41 82 00 24 */ beq lbl_8000771C -/* 800076FC 0000463C 34 1E 04 C4 */ addic. r0, r30, 0x4c4 -/* 80007700 00004640 41 82 00 1C */ beq lbl_8000771C -/* 80007704 00004644 80 6D 85 FC */ lwz r3, lbl_80450B7C-_SDA_BASE_(r13) -/* 80007708 00004648 38 1E 04 C4 */ addi r0, r30, 0x4c4 -/* 8000770C 0000464C 7C 03 00 40 */ cmplw r3, r0 -/* 80007710 00004650 40 82 00 0C */ bne lbl_8000771C -/* 80007714 00004654 38 00 00 00 */ li r0, 0 -/* 80007718 00004658 90 0D 85 FC */ stw r0, lbl_80450B7C-_SDA_BASE_(r13) -lbl_8000771C: -/* 8000771C 0000465C 34 1E 04 A4 */ addic. r0, r30, 0x4a4 -/* 80007720 00004660 41 82 00 24 */ beq lbl_80007744 -/* 80007724 00004664 34 1E 04 A4 */ addic. r0, r30, 0x4a4 -/* 80007728 00004668 41 82 00 1C */ beq lbl_80007744 -/* 8000772C 0000466C 80 6D 86 00 */ lwz r3, lbl_80450B80-_SDA_BASE_(r13) -/* 80007730 00004670 38 1E 04 A4 */ addi r0, r30, 0x4a4 -/* 80007734 00004674 7C 03 00 40 */ cmplw r3, r0 -/* 80007738 00004678 40 82 00 0C */ bne lbl_80007744 -/* 8000773C 0000467C 38 00 00 00 */ li r0, 0 -/* 80007740 00004680 90 0D 86 00 */ stw r0, lbl_80450B80-_SDA_BASE_(r13) -lbl_80007744: -/* 80007744 00004684 34 1E 03 D0 */ addic. r0, r30, 0x3d0 -/* 80007748 00004688 41 82 00 58 */ beq lbl_800077A0 -/* 8000774C 0000468C 34 7E 03 DC */ addic. r3, r30, 0x3dc -/* 80007750 00004690 41 82 00 08 */ beq lbl_80007758 -/* 80007754 00004694 48 29 AA 31 */ bl releaseSound__14JAISoundHandleFv -lbl_80007758: -/* 80007758 00004698 34 7E 03 D8 */ addic. r3, r30, 0x3d8 -/* 8000775C 0000469C 41 82 00 08 */ beq lbl_80007764 -/* 80007760 000046A0 48 29 AA 25 */ bl releaseSound__14JAISoundHandleFv -lbl_80007764: -/* 80007764 000046A4 34 7E 03 D4 */ addic. r3, r30, 0x3d4 -/* 80007768 000046A8 41 82 00 08 */ beq lbl_80007770 -/* 8000776C 000046AC 48 29 AA 19 */ bl releaseSound__14JAISoundHandleFv -lbl_80007770: -/* 80007770 000046B0 34 1E 03 D0 */ addic. r0, r30, 0x3d0 -/* 80007774 000046B4 41 82 00 0C */ beq lbl_80007780 -/* 80007778 000046B8 38 7E 03 D0 */ addi r3, r30, 0x3d0 -/* 8000777C 000046BC 48 29 AA 09 */ bl releaseSound__14JAISoundHandleFv -lbl_80007780: -/* 80007780 000046C0 34 1E 03 D0 */ addic. r0, r30, 0x3d0 -/* 80007784 000046C4 41 82 00 1C */ beq lbl_800077A0 -/* 80007788 000046C8 80 6D 86 04 */ lwz r3, lbl_80450B84-_SDA_BASE_(r13) -/* 8000778C 000046CC 38 1E 03 D0 */ addi r0, r30, 0x3d0 -/* 80007790 000046D0 7C 03 00 40 */ cmplw r3, r0 -/* 80007794 000046D4 40 82 00 0C */ bne lbl_800077A0 -/* 80007798 000046D8 38 00 00 00 */ li r0, 0 -/* 8000779C 000046DC 90 0D 86 04 */ stw r0, lbl_80450B84-_SDA_BASE_(r13) -lbl_800077A0: -/* 800077A0 000046E0 28 1E 00 00 */ cmplwi r30, 0 -/* 800077A4 000046E4 41 82 00 68 */ beq lbl_8000780C -/* 800077A8 000046E8 38 7E 01 D4 */ addi r3, r30, 0x1d4 -.global Z2MultiSeObj_NS_dtor -/* 800077AC 000046EC 3C 80 80 00 */ lis r4, Z2MultiSeObj_NS_dtor@ha -.global Z2MultiSeObj_NS_dtor -/* 800077B0 000046F0 38 84 78 88 */ addi r4, r4, Z2MultiSeObj_NS_dtor@l -/* 800077B4 000046F4 38 A0 00 24 */ li r5, 0x24 -/* 800077B8 000046F8 38 C0 00 0A */ li r6, 0xa -/* 800077BC 000046FC 48 35 A5 2D */ bl func_80361CE8 -/* 800077C0 00004700 38 7E 00 68 */ addi r3, r30, 0x68 -.global Z2MultiSeObj_NS_dtor -/* 800077C4 00004704 3C 80 80 00 */ lis r4, Z2MultiSeObj_NS_dtor@ha -.global Z2MultiSeObj_NS_dtor -/* 800077C8 00004708 38 84 78 88 */ addi r4, r4, Z2MultiSeObj_NS_dtor@l -/* 800077CC 0000470C 38 A0 00 24 */ li r5, 0x24 -/* 800077D0 00004710 38 C0 00 0A */ li r6, 0xa -/* 800077D4 00004714 48 35 A5 15 */ bl func_80361CE8 -/* 800077D8 00004718 7F C3 F3 78 */ mr r3, r30 -.global JAISoundHandle_NS_dtor -/* 800077DC 0000471C 3C 80 80 00 */ lis r4, JAISoundHandle_NS_dtor@ha -.global JAISoundHandle_NS_dtor -/* 800077E0 00004720 38 84 78 38 */ addi r4, r4, JAISoundHandle_NS_dtor@l -/* 800077E4 00004724 38 A0 00 04 */ li r5, 4 -/* 800077E8 00004728 38 C0 00 18 */ li r6, 0x18 -/* 800077EC 0000472C 48 35 A4 FD */ bl func_80361CE8 -/* 800077F0 00004730 28 1E 00 00 */ cmplwi r30, 0 -/* 800077F4 00004734 41 82 00 18 */ beq lbl_8000780C -/* 800077F8 00004738 80 0D 86 08 */ lwz r0, lbl_80450B88-_SDA_BASE_(r13) -/* 800077FC 0000473C 7C 00 F0 40 */ cmplw r0, r30 -/* 80007800 00004740 40 82 00 0C */ bne lbl_8000780C -/* 80007804 00004744 38 00 00 00 */ li r0, 0 -/* 80007808 00004748 90 0D 86 08 */ stw r0, lbl_80450B88-_SDA_BASE_(r13) -lbl_8000780C: -/* 8000780C 0000474C 7F E0 07 35 */ extsh. r0, r31 -/* 80007810 00004750 40 81 00 0C */ ble lbl_8000781C -/* 80007814 00004754 7F C3 F3 78 */ mr r3, r30 -/* 80007818 00004758 48 2C 75 25 */ bl __dl__FPv -lbl_8000781C: -/* 8000781C 0000475C 7F C3 F3 78 */ mr r3, r30 -/* 80007820 00004760 39 61 00 20 */ addi r11, r1, 0x20 -/* 80007824 00004764 48 35 AA 05 */ bl _restgpr_29 -/* 80007828 00004768 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8000782C 0000476C 7C 08 03 A6 */ mtlr r0 -/* 80007830 00004770 38 21 00 20 */ addi r1, r1, 0x20 -/* 80007834 00004774 4E 80 00 20 */ blr -.global JAISoundHandle_NS_dtor -JAISoundHandle_NS_dtor: -/* 80007838 00004778 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000783C 0000477C 7C 08 02 A6 */ mflr r0 -/* 80007840 00004780 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007844 00004784 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80007848 00004788 93 C1 00 08 */ stw r30, 8(r1) -/* 8000784C 0000478C 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80007850 00004790 7C 9F 23 78 */ mr r31, r4 -/* 80007854 00004794 41 82 00 18 */ beq lbl_8000786C -/* 80007858 00004798 48 29 A9 2D */ bl releaseSound__14JAISoundHandleFv -/* 8000785C 0000479C 7F E0 07 35 */ extsh. r0, r31 -/* 80007860 000047A0 40 81 00 0C */ ble lbl_8000786C -/* 80007864 000047A4 7F C3 F3 78 */ mr r3, r30 -/* 80007868 000047A8 48 2C 74 D5 */ bl __dl__FPv -lbl_8000786C: -/* 8000786C 000047AC 7F C3 F3 78 */ mr r3, r30 -/* 80007870 000047B0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80007874 000047B4 83 C1 00 08 */ lwz r30, 8(r1) -/* 80007878 000047B8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8000787C 000047BC 7C 08 03 A6 */ mtlr r0 -/* 80007880 000047C0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80007884 000047C4 4E 80 00 20 */ blr -.global Z2MultiSeObj_NS_dtor -Z2MultiSeObj_NS_dtor: -/* 80007888 000047C8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8000788C 000047CC 7C 08 02 A6 */ mflr r0 -/* 80007890 000047D0 90 01 00 14 */ stw r0, 0x14(r1) -/* 80007894 000047D4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80007898 000047D8 93 C1 00 08 */ stw r30, 8(r1) -/* 8000789C 000047DC 7C 7E 1B 79 */ or. r30, r3, r3 -/* 800078A0 000047E0 7C 9F 23 78 */ mr r31, r4 -/* 800078A4 000047E4 41 82 00 1C */ beq lbl_800078C0 -/* 800078A8 000047E8 38 80 00 00 */ li r4, 0 -/* 800078AC 000047EC 48 2A 72 89 */ bl __dt__12Z2MultiSeMgrFv -/* 800078B0 000047F0 7F E0 07 35 */ extsh. r0, r31 -/* 800078B4 000047F4 40 81 00 0C */ ble lbl_800078C0 -/* 800078B8 000047F8 7F C3 F3 78 */ mr r3, r30 -/* 800078BC 000047FC 48 2C 74 81 */ bl __dl__FPv -lbl_800078C0: -/* 800078C0 00004800 7F C3 F3 78 */ mr r3, r30 -/* 800078C4 00004804 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 800078C8 00004808 83 C1 00 08 */ lwz r30, 8(r1) -/* 800078CC 0000480C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 800078D0 00004810 7C 08 03 A6 */ mtlr r0 -/* 800078D4 00004814 38 21 00 10 */ addi r1, r1, 0x10 -/* 800078D8 00004818 4E 80 00 20 */ blr -.global JAISeCategoryMgr_NS_dtor -JAISeCategoryMgr_NS_dtor: -/* 800078DC 0000481C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 800078E0 00004820 7C 08 02 A6 */ mflr r0 -/* 800078E4 00004824 90 01 00 14 */ stw r0, 0x14(r1) -/* 800078E8 00004828 93 E1 00 0C */ stw r31, 0xc(r1) -/* 800078EC 0000482C 93 C1 00 08 */ stw r30, 8(r1) -/* 800078F0 00004830 7C 7E 1B 79 */ or. r30, r3, r3 -/* 800078F4 00004834 7C 9F 23 78 */ mr r31, r4 -/* 800078F8 00004838 41 82 00 40 */ beq lbl_80007938 -/* 800078FC 0000483C 3C 60 80 3D */ lis r3, lbl_803C98C4@ha -/* 80007900 00004840 38 03 98 C4 */ addi r0, r3, lbl_803C98C4@l -/* 80007904 00004844 90 1E 00 00 */ stw r0, 0(r30) -/* 80007908 00004848 34 1E 00 58 */ addic. r0, r30, 0x58 -/* 8000790C 0000484C 41 82 00 10 */ beq lbl_8000791C -/* 80007910 00004850 38 7E 00 58 */ addi r3, r30, 0x58 -/* 80007914 00004854 38 80 00 00 */ li r4, 0 -/* 80007918 00004858 48 2D 45 95 */ bl __dt__10JSUPtrListFv -lbl_8000791C: -/* 8000791C 0000485C 7F C3 F3 78 */ mr r3, r30 -/* 80007920 00004860 38 80 00 00 */ li r4, 0 -/* 80007924 00004864 48 29 9E 51 */ bl JAISeqDataUser_NS_dtor -/* 80007928 00004868 7F E0 07 35 */ extsh. r0, r31 -/* 8000792C 0000486C 40 81 00 0C */ ble lbl_80007938 -/* 80007930 00004870 7F C3 F3 78 */ mr r3, r30 -/* 80007934 00004874 48 2C 74 09 */ bl __dl__FPv -lbl_80007938: -/* 80007938 00004878 7F C3 F3 78 */ mr r3, r30 -/* 8000793C 0000487C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80007940 00004880 83 C1 00 08 */ lwz r30, 8(r1) -/* 80007944 00004884 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80007948 00004888 7C 08 03 A6 */ mtlr r0 -/* 8000794C 0000488C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80007950 00004890 4E 80 00 20 */ blr - diff --git a/include/JSystem/JAudio2/JAISeMgr/JAISeMgr.h b/include/JSystem/JAudio2/JAISeMgr/JAISeMgr.h new file mode 100644 index 00000000000..4e947d74046 --- /dev/null +++ b/include/JSystem/JAudio2/JAISeMgr/JAISeMgr.h @@ -0,0 +1,9 @@ +#ifndef _JAI_SE_MGR_H +#define _JAI_SE_MGR_H + +class JAISeCategoryMgr { +public: + ~JAISeCategoryMgr(); +}; + +#endif \ No newline at end of file diff --git a/include/JSystem/JAudio2/JAISound/JAISound.h b/include/JSystem/JAudio2/JAISound/JAISound.h index d91674aeecc..20e28e62759 100644 --- a/include/JSystem/JAudio2/JAISound/JAISound.h +++ b/include/JSystem/JAudio2/JAISound/JAISound.h @@ -128,6 +128,7 @@ void stop__8JAISoundFv(JAISound*); class JAISoundHandle { public: JAISoundHandle(); // noninline in JAUClusterSound.cpp + ~JAISoundHandle(); bool isSoundAttached() const { return mSound != NULL; } diff --git a/include/Z2AudioLib/Z2AudioLib.h b/include/Z2AudioLib/Z2AudioLib.h new file mode 100644 index 00000000000..5c164dd34db --- /dev/null +++ b/include/Z2AudioLib/Z2AudioLib.h @@ -0,0 +1,13 @@ +#ifndef _Z2AUDIOLIB_H +#define _Z2AUDIOLIB_H + +#include "Z2AudioLib/Z2AudioMgr/Z2AudioMgr.h" +#include "Z2AudioLib/Z2SceneMgr/Z2SceneMgr.h" +#include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h" +#include "Z2AudioLib/Z2SoundInfo/Z2SoundInfo.h" +#include "Z2AudioLib/Z2SoundObjMgr/Z2SoundObjMgr.h" +#include "Z2AudioLib/Z2SoundStarter/Z2SoundStarter.h" +#include "Z2AudioLib/Z2SpeechMgr2/Z2SpeechMgr2.h" +#include "Z2AudioLib/Z2StatusMgr/Z2StatusMgr.h" + +#endif \ No newline at end of file diff --git a/include/Z2AudioLib/Z2AudioMgr/Z2AudioMgr.h b/include/Z2AudioLib/Z2AudioMgr/Z2AudioMgr.h index 8016901922a..7d8a89d4e7b 100644 --- a/include/Z2AudioLib/Z2AudioMgr/Z2AudioMgr.h +++ b/include/Z2AudioLib/Z2AudioMgr/Z2AudioMgr.h @@ -1,9 +1,29 @@ #ifndef Z2AUDIOMGR_H_ #define Z2AUDIOMGR_H_ +#include "JSystem/JKernel/JKRAramArchive/JKRAramArchive.h" +#include "JSystem/JKernel/JKRSolidHeap/JKRSolidHeap.h" +#include "Z2AudioLib/Z2SceneMgr/Z2SceneMgr.h" +struct Z2AudioMgr { + Z2AudioMgr(); + ~Z2AudioMgr(); + void gframeProcess(void); + Z2AudioMgr* setOutputMode(unsigned long outputMode); + u32 resetProcess(u32 param_1, bool param_2); + bool hasReset(void) const; + void resetRecover(void); + void init(JKRSolidHeap*, unsigned long, void*, JKRArchive*); -extern "C" { -void Z2AudioMgr_NS_setOutputMode(void*, unsigned long); -u32 Z2AudioMgr_NS_hasReset(void*); + u8 unk_1[0x4a4]; + Z2SceneMgr sceneMgr; + u8 unk_2[0xdad]; }; +extern "C" { +void setOutputMode__10Z2AudioMgrFUl(void); +void setOutputMode__9JASDriverFUl(void); +} + +extern Z2AudioMgr lbl_803DBF4C; +extern Z2AudioMgr* lbl_80451368; + #endif \ No newline at end of file diff --git a/include/Z2AudioLib/Z2AudioMgr/asm/func_802CD888.s b/include/Z2AudioLib/Z2AudioMgr/asm/func_802CD888.s index b1c9303f19a..c1e5498b9cb 100644 --- a/include/Z2AudioLib/Z2AudioMgr/asm/func_802CD888.s +++ b/include/Z2AudioLib/Z2AudioMgr/asm/func_802CD888.s @@ -4,7 +4,7 @@ /* 802CD894 002CA7D4 28 04 00 02 */ cmplwi r4, 2 /* 802CD898 002CA7D8 41 81 00 0C */ bgt lbl_802CD8A4 /* 802CD89C 002CA7DC 7C 83 23 78 */ mr r3, r4 -/* 802CD8A0 002CA7E0 4B FD 08 D9 */ bl JASDriver_NS_setOutputMode +/* 802CD8A0 002CA7E0 4B FD 08 D9 */ bl setOutputMode__9JASDriverFUl lbl_802CD8A4: /* 802CD8A4 002CA7E4 80 01 00 14 */ lwz r0, 0x14(r1) /* 802CD8A8 002CA7E8 7C 08 03 A6 */ mtlr r0 diff --git a/include/Z2AudioLib/Z2SceneMgr/Z2SceneMgr.h b/include/Z2AudioLib/Z2SceneMgr/Z2SceneMgr.h index f55dc7067b3..f9007f5e3aa 100644 --- a/include/Z2AudioLib/Z2SceneMgr/Z2SceneMgr.h +++ b/include/Z2AudioLib/Z2SceneMgr/Z2SceneMgr.h @@ -1,3 +1,5 @@ +#ifndef __Z2SCENEMGR_H_ +#define __Z2SCENEMGR_H_ #include "JSystem/JAudio2/JAISe/JAISe.h" #include "Z2AudioLib/Z2SeqMgr/Z2SeqMgr.h" #include "global.h" @@ -45,4 +47,6 @@ struct Z2SceneMgr { void setFadeInStart(u8 param_1); void setSceneName(char* stageName, long roomNum, long layerNum); int checkFirstWaves(void); + void load1stDynamicWave(void); }; +#endif \ No newline at end of file diff --git a/include/Z2AudioLib/Z2SeMgr/Z2SeMgr.h b/include/Z2AudioLib/Z2SeMgr/Z2SeMgr.h index 9152bae2e2d..aaa5c147896 100644 --- a/include/Z2AudioLib/Z2SeMgr/Z2SeMgr.h +++ b/include/Z2AudioLib/Z2SeMgr/Z2SeMgr.h @@ -9,6 +9,7 @@ struct Z2MultiSeObj { Z2MultiSeObj(); + ~Z2MultiSeObj(); u8 unk0[28]; u32 field_0x1c; diff --git a/include/Z2AudioLib/Z2SeMgr/asm/func_802AB64C.s b/include/Z2AudioLib/Z2SeMgr/asm/func_802AB64C.s index 038eacedfd6..65ac73c3325 100644 --- a/include/Z2AudioLib/Z2SeMgr/asm/func_802AB64C.s +++ b/include/Z2AudioLib/Z2SeMgr/asm/func_802AB64C.s @@ -6,8 +6,8 @@ /* 802AB660 002A85A0 93 ED 86 08 */ stw r31, lbl_80450B88-_SDA_BASE_(r13) /* 802AB664 002A85A4 3C 80 80 2A */ lis r4, __ct__14JAISoundHandleFv@ha /* 802AB668 002A85A8 38 84 4A C4 */ addi r4, r4, __ct__14JAISoundHandleFv@l -/* 802AB66C 002A85AC 3C A0 80 00 */ lis r5, JAISoundHandle_NS_dtor@ha -/* 802AB670 002A85B0 38 A5 78 38 */ addi r5, r5, JAISoundHandle_NS_dtor@l +/* 802AB66C 002A85AC 3C A0 80 00 */ lis r5, __dt__14JAISoundHandleFv@ha +/* 802AB670 002A85B0 38 A5 78 38 */ addi r5, r5, __dt__14JAISoundHandleFv@l /* 802AB674 002A85B4 38 C0 00 04 */ li r6, 4 /* 802AB678 002A85B8 38 E0 00 18 */ li r7, 0x18 /* 802AB67C 002A85BC 48 0B 66 E5 */ bl func_80361D60 @@ -17,16 +17,16 @@ /* 802AB68C 002A85CC 38 7F 00 68 */ addi r3, r31, 0x68 /* 802AB690 002A85D0 3C 80 80 2B */ lis r4, __ct__12Z2MultiSeObjFv@ha /* 802AB694 002A85D4 38 84 B7 10 */ addi r4, r4, __ct__12Z2MultiSeObjFv@l -/* 802AB698 002A85D8 3C A0 80 00 */ lis r5, Z2MultiSeObj_NS_dtor@ha -/* 802AB69C 002A85DC 38 A5 78 88 */ addi r5, r5, Z2MultiSeObj_NS_dtor@l +/* 802AB698 002A85D8 3C A0 80 00 */ lis r5, __dt__12Z2MultiSeObjFv@ha +/* 802AB69C 002A85DC 38 A5 78 88 */ addi r5, r5, __dt__12Z2MultiSeObjFv@l /* 802AB6A0 002A85E0 38 C0 00 24 */ li r6, 0x24 /* 802AB6A4 002A85E4 38 E0 00 0A */ li r7, 0xa /* 802AB6A8 002A85E8 48 0B 66 B9 */ bl func_80361D60 /* 802AB6AC 002A85EC 38 7F 01 D4 */ addi r3, r31, 0x1d4 /* 802AB6B0 002A85F0 3C 80 80 2B */ lis r4, __ct__12Z2MultiSeObjFv@ha /* 802AB6B4 002A85F4 38 84 B7 10 */ addi r4, r4, __ct__12Z2MultiSeObjFv@l -/* 802AB6B8 002A85F8 3C A0 80 00 */ lis r5, Z2MultiSeObj_NS_dtor@ha -/* 802AB6BC 002A85FC 38 A5 78 88 */ addi r5, r5, Z2MultiSeObj_NS_dtor@l +/* 802AB6B8 002A85F8 3C A0 80 00 */ lis r5, __dt__12Z2MultiSeObjFv@ha +/* 802AB6BC 002A85FC 38 A5 78 88 */ addi r5, r5, __dt__12Z2MultiSeObjFv@l /* 802AB6C0 002A8600 38 C0 00 24 */ li r6, 0x24 /* 802AB6C4 002A8604 38 E0 00 0A */ li r7, 0xa /* 802AB6C8 002A8608 48 0B 66 99 */ bl func_80361D60 diff --git a/include/Z2AudioLib/Z2SoundMgr/asm/func_802A9E80.s b/include/Z2AudioLib/Z2SoundMgr/asm/func_802A9E80.s index c9641d1cf11..2064ce1ae79 100644 --- a/include/Z2AudioLib/Z2SoundMgr/asm/func_802A9E80.s +++ b/include/Z2AudioLib/Z2SoundMgr/asm/func_802A9E80.s @@ -9,13 +9,13 @@ /* 802A9EA0 002A6DE0 90 1F 00 00 */ stw r0, 0(r31) /* 802A9EA4 002A6DE4 38 7F 00 04 */ addi r3, r31, 4 /* 802A9EA8 002A6DE8 38 80 00 01 */ li r4, 1 -/* 802A9EAC 002A6DEC 4B FF 61 C9 */ bl JAISeMgr +/* 802A9EAC 002A6DEC 4B FF 61 C9 */ bl __ct__8JAISeMgrFb /* 802A9EB0 002A6DF0 38 7F 07 28 */ addi r3, r31, 0x728 /* 802A9EB4 002A6DF4 38 80 00 01 */ li r4, 1 -/* 802A9EB8 002A6DF8 4B FF 7A 5D */ bl JAISeqMgr +/* 802A9EB8 002A6DF8 4B FF 7A 5D */ bl __ct__9JAISeqMgrFb /* 802A9EBC 002A6DFC 38 7F 07 9C */ addi r3, r31, 0x79c /* 802A9EC0 002A6E00 38 80 00 01 */ li r4, 1 -/* 802A9EC4 002A6E04 4B FF 9C A5 */ bl JAIStreamMgr +/* 802A9EC4 002A6E04 4B FF 9C A5 */ bl __ct__12JAIStreamMgrFb /* 802A9EC8 002A6E08 38 00 FF FF */ li r0, -1 /* 802A9ECC 002A6E0C 90 1F 08 0C */ stw r0, 0x80c(r31) /* 802A9ED0 002A6E10 7F E3 FB 78 */ mr r3, r31 diff --git a/include/d/d_com/d_com_inf_game/asm/func_8002CC54.s b/include/d/d_com/d_com_inf_game/asm/func_8002CC54.s index 78674a1ed25..9c8113cd3da 100644 --- a/include/d/d_com/d_com_inf_game/asm/func_8002CC54.s +++ b/include/d/d_com/d_com_inf_game/asm/func_8002CC54.s @@ -23,7 +23,7 @@ /* 8002CCAC 00029BEC 7C 04 07 74 */ extsb r4, r0 /* 8002CCB0 00029BF0 88 05 4E 19 */ lbz r0, 0x4e19(r5) /* 8002CCB4 00029BF4 7C 05 07 74 */ extsb r5, r0 -/* 8002CCB8 00029BF8 4B FD A5 05 */ bl mDoAud_setSceneName +/* 8002CCB8 00029BF8 4B FD A5 05 */ bl mDoAud_setSceneName__FPCcll /* 8002CCBC 00029BFC 38 00 00 00 */ li r0, 0 /* 8002CCC0 00029C00 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 8002CCC4 00029C04 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l diff --git a/include/d/d_com/d_com_inf_game/asm/func_8002CD44.s b/include/d/d_com/d_com_inf_game/asm/func_8002CD44.s index 625dd80c415..ff29b542a5e 100644 --- a/include/d/d_com/d_com_inf_game/asm/func_8002CD44.s +++ b/include/d/d_com/d_com_inf_game/asm/func_8002CD44.s @@ -23,7 +23,7 @@ lbl_8002CD84: /* 8002CD94 00029CD4 38 80 00 1E */ li r4, 0x1e /* 8002CD98 00029CD8 38 A0 00 00 */ li r5, 0 /* 8002CD9C 00029CDC 48 28 26 6D */ bl bgmStop__8Z2SeqMgrFUll -/* 8002CDA0 00029CE0 4B FD A4 E5 */ bl mDoAud_resetProcess +/* 8002CDA0 00029CE0 4B FD A4 E5 */ bl mDoAud_resetProcess__Fv /* 8002CDA4 00029CE4 38 60 00 01 */ li r3, 1 lbl_8002CDA8: /* 8002CDA8 00029CE8 80 01 00 14 */ lwz r0, 0x14(r1) diff --git a/include/d/d_kankyo/asm/func_801A37C4.s b/include/d/d_kankyo/asm/func_801A37C4.s index e28215dc890..17615c0ee8a 100644 --- a/include/d/d_kankyo/asm/func_801A37C4.s +++ b/include/d/d_kankyo/asm/func_801A37C4.s @@ -524,7 +524,7 @@ lbl_801A3F24: /* 801A3F68 001A0EA8 7C 65 1B 78 */ mr r5, r3 /* 801A3F6C 001A0EAC 7F C3 F3 78 */ mr r3, r30 /* 801A3F70 001A0EB0 7F 24 CB 78 */ mr r4, r25 -/* 801A3F74 001A0EB4 4B E6 32 49 */ bl mDoAud_setSceneName +/* 801A3F74 001A0EB4 4B E6 32 49 */ bl mDoAud_setSceneName__FPCcll /* 801A3F78 001A0EB8 7F C3 F3 78 */ mr r3, r30 /* 801A3F7C 001A0EBC 3C 80 80 39 */ lis r4, lbl_80394C6C@ha /* 801A3F80 001A0EC0 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l diff --git a/include/d/d_save/d_save/asm/func_80035A04.s b/include/d/d_save/d_save/asm/func_80035A04.s index 35f33fe7139..839c943b7e5 100644 --- a/include/d/d_save/d_save/asm/func_80035A04.s +++ b/include/d/d_save/d_save/asm/func_80035A04.s @@ -19,7 +19,7 @@ /* 80035A4C 0003298C 4B FF EC 41 */ bl setSound__19dSv_player_config_cFUc /* 80035A50 00032990 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) /* 80035A54 00032994 38 80 00 00 */ li r4, 0 -/* 80035A58 00032998 48 29 7E 31 */ bl Z2AudioMgr_NS_setOutputMode +/* 80035A58 00032998 48 29 7E 31 */ bl setOutputMode__10Z2AudioMgrFUl /* 80035A5C 0003299C 48 00 00 4C */ b lbl_80035AA8 lbl_80035A60: /* 80035A60 000329A0 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha @@ -32,7 +32,7 @@ lbl_80035A60: /* 80035A7C 000329BC 40 82 00 14 */ bne lbl_80035A90 /* 80035A80 000329C0 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) /* 80035A84 000329C4 38 80 00 02 */ li r4, 2 -/* 80035A88 000329C8 48 29 7E 01 */ bl Z2AudioMgr_NS_setOutputMode +/* 80035A88 000329C8 48 29 7E 01 */ bl setOutputMode__10Z2AudioMgrFUl /* 80035A8C 000329CC 48 00 00 1C */ b lbl_80035AA8 lbl_80035A90: /* 80035A90 000329D0 7F E3 FB 78 */ mr r3, r31 @@ -40,7 +40,7 @@ lbl_80035A90: /* 80035A98 000329D8 4B FF EB F5 */ bl setSound__19dSv_player_config_cFUc /* 80035A9C 000329DC 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) /* 80035AA0 000329E0 38 80 00 01 */ li r4, 1 -/* 80035AA4 000329E4 48 29 7D E5 */ bl Z2AudioMgr_NS_setOutputMode +/* 80035AA4 000329E4 48 29 7D E5 */ bl setOutputMode__10Z2AudioMgrFUl lbl_80035AA8: /* 80035AA8 000329E8 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha /* 80035AAC 000329EC 3B E3 61 C0 */ addi r31, r3, g_dComIfG_gameInfo@l diff --git a/include/functions.h b/include/functions.h index 4b63894dbdc..3973b9c1162 100644 --- a/include/functions.h +++ b/include/functions.h @@ -105,7 +105,6 @@ void Debug_console__FUl(void); void debugDisplay__Fv(void); void CheckHeap__FUl(void); void debug__Fv(void); -void mDoAud_Execute(void); void fapGm_Execute(void); void mDoMemCd_Ctrl_c_NS_update(void); void cDyl_InitAsync(void); @@ -310,7 +309,6 @@ void Debug_console__FUl(void); void debugDisplay__Fv(void); void CheckHeap__FUl(void); void debug__Fv(void); -void mDoAud_Execute(void); void fapGm_Execute(void); void mDoCPd_c_NS_read(void); void mDoMemCd_Ctrl_c_NS_update(void); @@ -5747,11 +5745,9 @@ void dComIfGs_staffroll_next_go(void); // void bgmStart__8Z2SeqMgrFUlUll(void); void Z2SoundMgr_NS_calc(void); void Z2SoundMgr_NS_framework(void); -void JAISeqMgr(void); void JAUSectionHeap_NS_releaseIdleDynamicSeqDataBlock(void); void func_802A9EE8(void); void Z2SoundMgr_NS_initParams(void); -void JAISeMgr(void); void JAISeqMgr_NS_calc(void); void JAISeMgr_NS_mixOut(void); void JAISeMgr_NS_getNumActiveSe(void); @@ -5775,9 +5771,6 @@ void JAISeqMgr_NS_stopSoundID(void); void Z2SoundMgr_NS_multiVolumeSoundID(void); void JAIStreamMgr_NS_stop_X1_(void); void JAISeqMgr_NS_mixOut(void); - -// manual -void JAIStreamMgr(void); } // additional symbols needed for Z2AudioMgr.cpp @@ -5820,7 +5813,7 @@ void JAISeMgr_NS_setAudience(void); void Z2AudioMgr_NS_zeldaGFrameWork(void); void func_80362ABC(void); void func_802CD7F8(void); -void Z2AudioMgr_NS_resetProcess(void); +void resetProcess__10Z2AudioMgrFUlb(void); void JAISeMgr_NS_setSeqDataMgr(void); void JASKernel_NS_getAramHeap(void); void func_802CDB1C(void); @@ -6099,7 +6092,6 @@ void Z2SeqMgr_NS_checkBgmIDPlaying(void); void Z2SceneMgr_NS_checkFirstWaves(void); void Z2SceneMgr_NS_loadBgmWave(void); void Z2SceneMgr_NS__load1stWaveInner_2(void); -void Z2SceneMgr_NS_load1stDynamicWave(void); void Z2SceneMgr_NS_loadStaticWaves(void); void Z2SceneMgr_NS_eraseBgmWave(void); void Z2SceneMgr_NS_sceneBgmStart(void); @@ -6609,7 +6601,6 @@ void isRegionBit__33dSv_player_field_last_stay_info_cCFi(void); void isTbox__12dSv_memBit_cCFi(void); BOOL isTransformLV__21dSv_player_status_b_cCFi(int); void isVisitedRoom__13dSv_memory2_cFi(void); -void mDoAud_resetProcess(void); void mDoExt_bckAnm_NS_dtor(void); void mDoExt_bpkAnm_NS_dtor(void); void mDoExt_brkAnm_NS_dtor(void); diff --git a/include/m_Do/m_Do_audio/asm/JAISeCategoryMgr_NS_dtor.s b/include/m_Do/m_Do_audio/asm/JAISeCategoryMgr_NS_dtor.s new file mode 100644 index 00000000000..39510046668 --- /dev/null +++ b/include/m_Do/m_Do_audio/asm/JAISeCategoryMgr_NS_dtor.s @@ -0,0 +1,32 @@ +/* 800078DC 0000481C 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 800078E0 00004820 7C 08 02 A6 */ mflr r0 +/* 800078E4 00004824 90 01 00 14 */ stw r0, 0x14(r1) +/* 800078E8 00004828 93 E1 00 0C */ stw r31, 0xc(r1) +/* 800078EC 0000482C 93 C1 00 08 */ stw r30, 8(r1) +/* 800078F0 00004830 7C 7E 1B 79 */ or. r30, r3, r3 +/* 800078F4 00004834 7C 9F 23 78 */ mr r31, r4 +/* 800078F8 00004838 41 82 00 40 */ beq lbl_80007938 +/* 800078FC 0000483C 3C 60 80 3D */ lis r3, lbl_803C98C4@ha +/* 80007900 00004840 38 03 98 C4 */ addi r0, r3, lbl_803C98C4@l +/* 80007904 00004844 90 1E 00 00 */ stw r0, 0(r30) +/* 80007908 00004848 34 1E 00 58 */ addic. r0, r30, 0x58 +/* 8000790C 0000484C 41 82 00 10 */ beq lbl_8000791C +/* 80007910 00004850 38 7E 00 58 */ addi r3, r30, 0x58 +/* 80007914 00004854 38 80 00 00 */ li r4, 0 +/* 80007918 00004858 48 2D 45 95 */ bl __dt__10JSUPtrListFv +lbl_8000791C: +/* 8000791C 0000485C 7F C3 F3 78 */ mr r3, r30 +/* 80007920 00004860 38 80 00 00 */ li r4, 0 +/* 80007924 00004864 48 29 9E 51 */ bl JAISeqDataUser_NS_dtor +/* 80007928 00004868 7F E0 07 35 */ extsh. r0, r31 +/* 8000792C 0000486C 40 81 00 0C */ ble lbl_80007938 +/* 80007930 00004870 7F C3 F3 78 */ mr r3, r30 +/* 80007934 00004874 48 2C 74 09 */ bl __dl__FPv +lbl_80007938: +/* 80007938 00004878 7F C3 F3 78 */ mr r3, r30 +/* 8000793C 0000487C 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80007940 00004880 83 C1 00 08 */ lwz r30, 8(r1) +/* 80007944 00004884 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80007948 00004888 7C 08 03 A6 */ mtlr r0 +/* 8000794C 0000488C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80007950 00004890 4E 80 00 20 */ blr \ No newline at end of file diff --git a/include/m_Do/m_Do_audio/asm/JAISoundHandle_NS_dtor.s b/include/m_Do/m_Do_audio/asm/JAISoundHandle_NS_dtor.s new file mode 100644 index 00000000000..c3f515708b2 --- /dev/null +++ b/include/m_Do/m_Do_audio/asm/JAISoundHandle_NS_dtor.s @@ -0,0 +1,21 @@ +/* 80007838 00004778 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000783C 0000477C 7C 08 02 A6 */ mflr r0 +/* 80007840 00004780 90 01 00 14 */ stw r0, 0x14(r1) +/* 80007844 00004784 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80007848 00004788 93 C1 00 08 */ stw r30, 8(r1) +/* 8000784C 0000478C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80007850 00004790 7C 9F 23 78 */ mr r31, r4 +/* 80007854 00004794 41 82 00 18 */ beq lbl_8000786C +/* 80007858 00004798 48 29 A9 2D */ bl releaseSound__14JAISoundHandleFv +/* 8000785C 0000479C 7F E0 07 35 */ extsh. r0, r31 +/* 80007860 000047A0 40 81 00 0C */ ble lbl_8000786C +/* 80007864 000047A4 7F C3 F3 78 */ mr r3, r30 +/* 80007868 000047A8 48 2C 74 D5 */ bl __dl__FPv +lbl_8000786C: +/* 8000786C 000047AC 7F C3 F3 78 */ mr r3, r30 +/* 80007870 000047B0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80007874 000047B4 83 C1 00 08 */ lwz r30, 8(r1) +/* 80007878 000047B8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000787C 000047BC 7C 08 03 A6 */ mtlr r0 +/* 80007880 000047C0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80007884 000047C4 4E 80 00 20 */ blr \ No newline at end of file diff --git a/include/m_Do/m_Do_audio/asm/Z2AudioMgr_NS_dtor.s b/include/m_Do/m_Do_audio/asm/Z2AudioMgr_NS_dtor.s new file mode 100644 index 00000000000..9c5971a52fb --- /dev/null +++ b/include/m_Do/m_Do_audio/asm/Z2AudioMgr_NS_dtor.s @@ -0,0 +1,315 @@ +/* 800073C8 00004308 94 21 FF E0 */ stwu r1, -0x20(r1) +/* 800073CC 0000430C 7C 08 02 A6 */ mflr r0 +/* 800073D0 00004310 90 01 00 24 */ stw r0, 0x24(r1) +/* 800073D4 00004314 39 61 00 20 */ addi r11, r1, 0x20 +/* 800073D8 00004318 48 35 AE 05 */ bl _savegpr_29 +/* 800073DC 0000431C 7C 7E 1B 79 */ or. r30, r3, r3 +/* 800073E0 00004320 7C 9F 23 78 */ mr r31, r4 +/* 800073E4 00004324 41 82 04 38 */ beq lbl_8000781C +/* 800073E8 00004328 3C 60 80 3D */ lis r3, lbl_803CBF38@ha +/* 800073EC 0000432C 38 03 BF 38 */ addi r0, r3, lbl_803CBF38@l +/* 800073F0 00004330 90 1E 05 14 */ stw r0, 0x514(r30) +/* 800073F4 00004334 34 1E 13 70 */ addic. r0, r30, 0x1370 +/* 800073F8 00004338 41 82 00 24 */ beq lbl_8000741C +/* 800073FC 0000433C 34 1E 13 70 */ addic. r0, r30, 0x1370 +/* 80007400 00004340 41 82 00 1C */ beq lbl_8000741C +/* 80007404 00004344 80 6D 85 C0 */ lwz r3, lbl_80450B40-_SDA_BASE_(r13) +/* 80007408 00004348 38 1E 13 70 */ addi r0, r30, 0x1370 +/* 8000740C 0000434C 7C 03 00 40 */ cmplw r3, r0 +/* 80007410 00004350 40 82 00 0C */ bne lbl_8000741C +/* 80007414 00004354 38 00 00 00 */ li r0, 0 +/* 80007418 00004358 90 0D 85 C0 */ stw r0, lbl_80450B40-_SDA_BASE_(r13) +lbl_8000741C: +/* 8000741C 0000435C 34 1E 0F 2C */ addic. r0, r30, 0xf2c +/* 80007420 00004360 41 82 00 98 */ beq lbl_800074B8 +/* 80007424 00004364 34 7E 0F 38 */ addic. r3, r30, 0xf38 +/* 80007428 00004368 41 82 00 54 */ beq lbl_8000747C +/* 8000742C 0000436C 3C 80 80 3D */ lis r4, lbl_803CBF24@ha +/* 80007430 00004370 38 04 BF 24 */ addi r0, r4, lbl_803CBF24@l +/* 80007434 00004374 90 1E 0F 38 */ stw r0, 0xf38(r30) +/* 80007438 00004378 28 03 00 00 */ cmplwi r3, 0 +/* 8000743C 0000437C 41 82 00 40 */ beq lbl_8000747C +/* 80007440 00004380 3C 80 80 3D */ lis r4, lbl_803C9D80@ha +/* 80007444 00004384 38 04 9D 80 */ addi r0, r4, lbl_803C9D80@l +/* 80007448 00004388 90 1E 0F 38 */ stw r0, 0xf38(r30) +/* 8000744C 0000438C 34 1E 0F 3C */ addic. r0, r30, 0xf3c +/* 80007450 00004390 41 82 00 24 */ beq lbl_80007474 +/* 80007454 00004394 34 83 00 04 */ addic. r4, r3, 4 +/* 80007458 00004398 41 82 00 08 */ beq lbl_80007460 +/* 8000745C 0000439C 38 84 FF FC */ addi r4, r4, -4 +lbl_80007460: +/* 80007460 000043A0 80 0D 85 F4 */ lwz r0, lbl_80450B74-_SDA_BASE_(r13) +/* 80007464 000043A4 7C 00 20 40 */ cmplw r0, r4 +/* 80007468 000043A8 40 82 00 0C */ bne lbl_80007474 +/* 8000746C 000043AC 38 00 00 00 */ li r0, 0 +/* 80007470 000043B0 90 0D 85 F4 */ stw r0, lbl_80450B74-_SDA_BASE_(r13) +lbl_80007474: +/* 80007474 000043B4 38 80 00 00 */ li r4, 0 +/* 80007478 000043B8 48 29 BB 11 */ bl JAISoundStarter_NS_dtor +lbl_8000747C: +/* 8000747C 000043BC 34 7E 0F 30 */ addic. r3, r30, 0xf30 +/* 80007480 000043C0 41 82 00 08 */ beq lbl_80007488 +/* 80007484 000043C4 48 29 AD 01 */ bl releaseSound__14JAISoundHandleFv +lbl_80007488: +/* 80007488 000043C8 34 1E 0F 2C */ addic. r0, r30, 0xf2c +/* 8000748C 000043CC 41 82 00 0C */ beq lbl_80007498 +/* 80007490 000043D0 38 7E 0F 2C */ addi r3, r30, 0xf2c +/* 80007494 000043D4 48 29 AC F1 */ bl releaseSound__14JAISoundHandleFv +lbl_80007498: +/* 80007498 000043D8 34 1E 0F 2C */ addic. r0, r30, 0xf2c +/* 8000749C 000043DC 41 82 00 1C */ beq lbl_800074B8 +/* 800074A0 000043E0 80 6D 85 F0 */ lwz r3, lbl_80450B70-_SDA_BASE_(r13) +/* 800074A4 000043E4 38 1E 0F 2C */ addi r0, r30, 0xf2c +/* 800074A8 000043E8 7C 03 00 40 */ cmplw r3, r0 +/* 800074AC 000043EC 40 82 00 0C */ bne lbl_800074B8 +/* 800074B0 000043F0 38 00 00 00 */ li r0, 0 +/* 800074B4 000043F4 90 0D 85 F0 */ stw r0, lbl_80450B70-_SDA_BASE_(r13) +lbl_800074B8: +/* 800074B8 000043F8 38 7E 0D 4C */ addi r3, r30, 0xd4c +/* 800074BC 000043FC 38 80 FF FF */ li r4, -1 +/* 800074C0 00004400 48 2B 5D 3D */ bl Z2Audience_NS_dtor +/* 800074C4 00004404 34 1E 0D 40 */ addic. r0, r30, 0xd40 +/* 800074C8 00004408 41 82 00 94 */ beq lbl_8000755C +/* 800074CC 0000440C 3C 60 80 3D */ lis r3, lbl_803CAC48@ha +/* 800074D0 00004410 38 63 AC 48 */ addi r3, r3, lbl_803CAC48@l +/* 800074D4 00004414 90 7E 0D 40 */ stw r3, 0xd40(r30) +/* 800074D8 00004418 38 03 00 24 */ addi r0, r3, 0x24 +/* 800074DC 0000441C 90 1E 0D 44 */ stw r0, 0xd44(r30) +/* 800074E0 00004420 38 03 00 34 */ addi r0, r3, 0x34 +/* 800074E4 00004424 90 1E 0D 48 */ stw r0, 0xd48(r30) +/* 800074E8 00004428 34 1E 0D 4C */ addic. r0, r30, 0xd4c +/* 800074EC 0000442C 41 82 00 24 */ beq lbl_80007510 +/* 800074F0 00004430 34 7E 0D 4C */ addic. r3, r30, 0xd4c +/* 800074F4 00004434 41 82 00 08 */ beq lbl_800074FC +/* 800074F8 00004438 38 63 FF F4 */ addi r3, r3, -12 +lbl_800074FC: +/* 800074FC 0000443C 80 0D 85 CC */ lwz r0, lbl_80450B4C-_SDA_BASE_(r13) +/* 80007500 00004440 7C 00 18 40 */ cmplw r0, r3 +/* 80007504 00004444 40 82 00 0C */ bne lbl_80007510 +/* 80007508 00004448 38 00 00 00 */ li r0, 0 +/* 8000750C 0000444C 90 0D 85 CC */ stw r0, lbl_80450B4C-_SDA_BASE_(r13) +lbl_80007510: +/* 80007510 00004450 38 7E 0D 48 */ addi r3, r30, 0xd48 +/* 80007514 00004454 38 80 00 00 */ li r4, 0 +/* 80007518 00004458 48 29 C5 C1 */ bl JAIStreamDataMgr_NS_dtor +/* 8000751C 0000445C 34 1E 0D 44 */ addic. r0, r30, 0xd44 +/* 80007520 00004460 41 82 00 30 */ beq lbl_80007550 +/* 80007524 00004464 3C 60 80 3A */ lis r3, lbl_803A2F4C@ha +/* 80007528 00004468 38 03 2F 4C */ addi r0, r3, lbl_803A2F4C@l +/* 8000752C 0000446C 90 1E 0D 44 */ stw r0, 0xd44(r30) +/* 80007530 00004470 34 1E 0D 44 */ addic. r0, r30, 0xd44 +/* 80007534 00004474 41 82 00 1C */ beq lbl_80007550 +/* 80007538 00004478 80 6D 85 D0 */ lwz r3, lbl_80450B50-_SDA_BASE_(r13) +/* 8000753C 0000447C 38 1E 0D 44 */ addi r0, r30, 0xd44 +/* 80007540 00004480 7C 03 00 40 */ cmplw r3, r0 +/* 80007544 00004484 40 82 00 0C */ bne lbl_80007550 +/* 80007548 00004488 38 00 00 00 */ li r0, 0 +/* 8000754C 0000448C 90 0D 85 D0 */ stw r0, lbl_80450B50-_SDA_BASE_(r13) +lbl_80007550: +/* 80007550 00004490 38 7E 0D 40 */ addi r3, r30, 0xd40 +/* 80007554 00004494 38 80 00 00 */ li r4, 0 +/* 80007558 00004498 48 29 B7 F9 */ bl JAISoundInfo_NS_dtor +lbl_8000755C: +/* 8000755C 0000449C 34 1E 05 30 */ addic. r0, r30, 0x530 +/* 80007560 000044A0 41 82 01 04 */ beq lbl_80007664 +/* 80007564 000044A4 3C 60 80 3D */ lis r3, lbl_803C9D70@ha +/* 80007568 000044A8 38 03 9D 70 */ addi r0, r3, lbl_803C9D70@l +/* 8000756C 000044AC 90 1E 05 30 */ stw r0, 0x530(r30) +/* 80007570 000044B0 37 BE 0C CC */ addic. r29, r30, 0xccc +/* 80007574 000044B4 41 82 00 30 */ beq lbl_800075A4 +/* 80007578 000044B8 34 7D 00 58 */ addic. r3, r29, 0x58 +/* 8000757C 000044BC 41 82 00 0C */ beq lbl_80007588 +/* 80007580 000044C0 38 80 00 00 */ li r4, 0 +/* 80007584 000044C4 48 2D 49 29 */ bl __dt__10JSUPtrListFv +lbl_80007588: +/* 80007588 000044C8 28 1D 00 00 */ cmplwi r29, 0 +/* 8000758C 000044CC 41 82 00 18 */ beq lbl_800075A4 +/* 80007590 000044D0 80 0D 85 E4 */ lwz r0, lbl_80450B64-_SDA_BASE_(r13) +/* 80007594 000044D4 7C 00 E8 40 */ cmplw r0, r29 +/* 80007598 000044D8 40 82 00 0C */ bne lbl_800075A4 +/* 8000759C 000044DC 38 00 00 00 */ li r0, 0 +/* 800075A0 000044E0 90 0D 85 E4 */ stw r0, lbl_80450B64-_SDA_BASE_(r13) +lbl_800075A4: +/* 800075A4 000044E4 37 BE 0C 58 */ addic. r29, r30, 0xc58 +/* 800075A8 000044E8 41 82 00 48 */ beq lbl_800075F0 +/* 800075AC 000044EC 3C 60 80 3D */ lis r3, lbl_803C9958@ha +/* 800075B0 000044F0 38 03 99 58 */ addi r0, r3, lbl_803C9958@l +/* 800075B4 000044F4 90 1E 0C 58 */ stw r0, 0xc58(r30) +/* 800075B8 000044F8 34 7D 00 64 */ addic. r3, r29, 0x64 +/* 800075BC 000044FC 41 82 00 0C */ beq lbl_800075C8 +/* 800075C0 00004500 38 80 00 00 */ li r4, 0 +/* 800075C4 00004504 48 2D 48 E9 */ bl __dt__10JSUPtrListFv +lbl_800075C8: +/* 800075C8 00004508 7F A3 EB 78 */ mr r3, r29 +/* 800075CC 0000450C 38 80 00 00 */ li r4, 0 +/* 800075D0 00004510 48 29 A1 A5 */ bl JAISeqDataUser_NS_dtor +/* 800075D4 00004514 28 1D 00 00 */ cmplwi r29, 0 +/* 800075D8 00004518 41 82 00 18 */ beq lbl_800075F0 +/* 800075DC 0000451C 80 0D 85 E8 */ lwz r0, lbl_80450B68-_SDA_BASE_(r13) +/* 800075E0 00004520 7C 00 E8 40 */ cmplw r0, r29 +/* 800075E4 00004524 40 82 00 0C */ bne lbl_800075F0 +/* 800075E8 00004528 38 00 00 00 */ li r0, 0 +/* 800075EC 0000452C 90 0D 85 E8 */ stw r0, lbl_80450B68-_SDA_BASE_(r13) +lbl_800075F0: +/* 800075F0 00004530 37 BE 05 34 */ addic. r29, r30, 0x534 +/* 800075F4 00004534 41 82 00 50 */ beq lbl_80007644 +/* 800075F8 00004538 3C 60 80 3D */ lis r3, lbl_803C98B0@ha +/* 800075FC 0000453C 38 03 98 B0 */ addi r0, r3, lbl_803C98B0@l +/* 80007600 00004540 90 1E 05 34 */ stw r0, 0x534(r30) +/* 80007604 00004544 38 7E 05 48 */ addi r3, r30, 0x548 +/* 80007608 00004548 3C 80 80 00 */ lis r4, __dt__16JAISeCategoryMgrFv@ha +/* 8000760C 0000454C 38 84 78 DC */ addi r4, r4, __dt__16JAISeCategoryMgrFv@l +/* 80007610 00004550 38 A0 00 6C */ li r5, 0x6c +/* 80007614 00004554 38 C0 00 10 */ li r6, 0x10 +/* 80007618 00004558 48 35 A6 D1 */ bl func_80361CE8 +/* 8000761C 0000455C 7F A3 EB 78 */ mr r3, r29 +/* 80007620 00004560 38 80 00 00 */ li r4, 0 +/* 80007624 00004564 48 29 A1 51 */ bl JAISeqDataUser_NS_dtor +/* 80007628 00004568 28 1D 00 00 */ cmplwi r29, 0 +/* 8000762C 0000456C 41 82 00 18 */ beq lbl_80007644 +/* 80007630 00004570 80 0D 85 EC */ lwz r0, lbl_80450B6C-_SDA_BASE_(r13) +/* 80007634 00004574 7C 00 E8 40 */ cmplw r0, r29 +/* 80007638 00004578 40 82 00 0C */ bne lbl_80007644 +/* 8000763C 0000457C 38 00 00 00 */ li r0, 0 +/* 80007640 00004580 90 0D 85 EC */ stw r0, lbl_80450B6C-_SDA_BASE_(r13) +lbl_80007644: +/* 80007644 00004584 34 1E 05 30 */ addic. r0, r30, 0x530 +/* 80007648 00004588 41 82 00 1C */ beq lbl_80007664 +/* 8000764C 0000458C 80 6D 85 E0 */ lwz r3, lbl_80450B60-_SDA_BASE_(r13) +/* 80007650 00004590 38 1E 05 30 */ addi r0, r30, 0x530 +/* 80007654 00004594 7C 03 00 40 */ cmplw r3, r0 +/* 80007658 00004598 40 82 00 0C */ bne lbl_80007664 +/* 8000765C 0000459C 38 00 00 00 */ li r0, 0 +/* 80007660 000045A0 90 0D 85 E0 */ stw r0, lbl_80450B60-_SDA_BASE_(r13) +lbl_80007664: +/* 80007664 000045A4 34 1E 05 2C */ addic. r0, r30, 0x52c +/* 80007668 000045A8 41 82 00 44 */ beq lbl_800076AC +/* 8000766C 000045AC 3C 60 80 3D */ lis r3, lbl_803C9D80@ha +/* 80007670 000045B0 38 03 9D 80 */ addi r0, r3, lbl_803C9D80@l +/* 80007674 000045B4 90 1E 05 2C */ stw r0, 0x52c(r30) +/* 80007678 000045B8 34 1E 05 30 */ addic. r0, r30, 0x530 +/* 8000767C 000045BC 41 82 00 24 */ beq lbl_800076A0 +/* 80007680 000045C0 34 7E 05 30 */ addic. r3, r30, 0x530 +/* 80007684 000045C4 41 82 00 08 */ beq lbl_8000768C +/* 80007688 000045C8 38 63 FF FC */ addi r3, r3, -4 +lbl_8000768C: +/* 8000768C 000045CC 80 0D 85 F4 */ lwz r0, lbl_80450B74-_SDA_BASE_(r13) +/* 80007690 000045D0 7C 00 18 40 */ cmplw r0, r3 +/* 80007694 000045D4 40 82 00 0C */ bne lbl_800076A0 +/* 80007698 000045D8 38 00 00 00 */ li r0, 0 +/* 8000769C 000045DC 90 0D 85 F4 */ stw r0, lbl_80450B74-_SDA_BASE_(r13) +lbl_800076A0: +/* 800076A0 000045E0 38 7E 05 2C */ addi r3, r30, 0x52c +/* 800076A4 000045E4 38 80 00 00 */ li r4, 0 +/* 800076A8 000045E8 48 29 B8 E1 */ bl JAISoundStarter_NS_dtor +lbl_800076AC: +/* 800076AC 000045EC 38 7E 05 1C */ addi r3, r30, 0x51c +/* 800076B0 000045F0 38 80 FF FF */ li r4, -1 +/* 800076B4 000045F4 48 29 5A 49 */ bl JASAudioReseter_NS_dtor +/* 800076B8 000045F8 34 1E 04 F4 */ addic. r0, r30, 0x4f4 +/* 800076BC 000045FC 41 82 00 38 */ beq lbl_800076F4 +/* 800076C0 00004600 34 1E 04 F4 */ addic. r0, r30, 0x4f4 +/* 800076C4 00004604 41 82 00 10 */ beq lbl_800076D4 +/* 800076C8 00004608 38 7E 04 F4 */ addi r3, r30, 0x4f4 +/* 800076CC 0000460C 38 80 00 00 */ li r4, 0 +/* 800076D0 00004610 48 2D 47 DD */ bl __dt__10JSUPtrListFv +lbl_800076D4: +/* 800076D4 00004614 34 1E 04 F4 */ addic. r0, r30, 0x4f4 +/* 800076D8 00004618 41 82 00 1C */ beq lbl_800076F4 +/* 800076DC 0000461C 80 6D 85 C8 */ lwz r3, lbl_80450B48-_SDA_BASE_(r13) +/* 800076E0 00004620 38 1E 04 F4 */ addi r0, r30, 0x4f4 +/* 800076E4 00004624 7C 03 00 40 */ cmplw r3, r0 +/* 800076E8 00004628 40 82 00 0C */ bne lbl_800076F4 +/* 800076EC 0000462C 38 00 00 00 */ li r0, 0 +/* 800076F0 00004630 90 0D 85 C8 */ stw r0, lbl_80450B48-_SDA_BASE_(r13) +lbl_800076F4: +/* 800076F4 00004634 34 1E 04 C4 */ addic. r0, r30, 0x4c4 +/* 800076F8 00004638 41 82 00 24 */ beq lbl_8000771C +/* 800076FC 0000463C 34 1E 04 C4 */ addic. r0, r30, 0x4c4 +/* 80007700 00004640 41 82 00 1C */ beq lbl_8000771C +/* 80007704 00004644 80 6D 85 FC */ lwz r3, lbl_80450B7C-_SDA_BASE_(r13) +/* 80007708 00004648 38 1E 04 C4 */ addi r0, r30, 0x4c4 +/* 8000770C 0000464C 7C 03 00 40 */ cmplw r3, r0 +/* 80007710 00004650 40 82 00 0C */ bne lbl_8000771C +/* 80007714 00004654 38 00 00 00 */ li r0, 0 +/* 80007718 00004658 90 0D 85 FC */ stw r0, lbl_80450B7C-_SDA_BASE_(r13) +lbl_8000771C: +/* 8000771C 0000465C 34 1E 04 A4 */ addic. r0, r30, 0x4a4 +/* 80007720 00004660 41 82 00 24 */ beq lbl_80007744 +/* 80007724 00004664 34 1E 04 A4 */ addic. r0, r30, 0x4a4 +/* 80007728 00004668 41 82 00 1C */ beq lbl_80007744 +/* 8000772C 0000466C 80 6D 86 00 */ lwz r3, lbl_80450B80-_SDA_BASE_(r13) +/* 80007730 00004670 38 1E 04 A4 */ addi r0, r30, 0x4a4 +/* 80007734 00004674 7C 03 00 40 */ cmplw r3, r0 +/* 80007738 00004678 40 82 00 0C */ bne lbl_80007744 +/* 8000773C 0000467C 38 00 00 00 */ li r0, 0 +/* 80007740 00004680 90 0D 86 00 */ stw r0, lbl_80450B80-_SDA_BASE_(r13) +lbl_80007744: +/* 80007744 00004684 34 1E 03 D0 */ addic. r0, r30, 0x3d0 +/* 80007748 00004688 41 82 00 58 */ beq lbl_800077A0 +/* 8000774C 0000468C 34 7E 03 DC */ addic. r3, r30, 0x3dc +/* 80007750 00004690 41 82 00 08 */ beq lbl_80007758 +/* 80007754 00004694 48 29 AA 31 */ bl releaseSound__14JAISoundHandleFv +lbl_80007758: +/* 80007758 00004698 34 7E 03 D8 */ addic. r3, r30, 0x3d8 +/* 8000775C 0000469C 41 82 00 08 */ beq lbl_80007764 +/* 80007760 000046A0 48 29 AA 25 */ bl releaseSound__14JAISoundHandleFv +lbl_80007764: +/* 80007764 000046A4 34 7E 03 D4 */ addic. r3, r30, 0x3d4 +/* 80007768 000046A8 41 82 00 08 */ beq lbl_80007770 +/* 8000776C 000046AC 48 29 AA 19 */ bl releaseSound__14JAISoundHandleFv +lbl_80007770: +/* 80007770 000046B0 34 1E 03 D0 */ addic. r0, r30, 0x3d0 +/* 80007774 000046B4 41 82 00 0C */ beq lbl_80007780 +/* 80007778 000046B8 38 7E 03 D0 */ addi r3, r30, 0x3d0 +/* 8000777C 000046BC 48 29 AA 09 */ bl releaseSound__14JAISoundHandleFv +lbl_80007780: +/* 80007780 000046C0 34 1E 03 D0 */ addic. r0, r30, 0x3d0 +/* 80007784 000046C4 41 82 00 1C */ beq lbl_800077A0 +/* 80007788 000046C8 80 6D 86 04 */ lwz r3, lbl_80450B84-_SDA_BASE_(r13) +/* 8000778C 000046CC 38 1E 03 D0 */ addi r0, r30, 0x3d0 +/* 80007790 000046D0 7C 03 00 40 */ cmplw r3, r0 +/* 80007794 000046D4 40 82 00 0C */ bne lbl_800077A0 +/* 80007798 000046D8 38 00 00 00 */ li r0, 0 +/* 8000779C 000046DC 90 0D 86 04 */ stw r0, lbl_80450B84-_SDA_BASE_(r13) +lbl_800077A0: +/* 800077A0 000046E0 28 1E 00 00 */ cmplwi r30, 0 +/* 800077A4 000046E4 41 82 00 68 */ beq lbl_8000780C +/* 800077A8 000046E8 38 7E 01 D4 */ addi r3, r30, 0x1d4 +/* 800077AC 000046EC 3C 80 80 00 */ lis r4, __dt__12Z2MultiSeObjFv@ha +/* 800077B0 000046F0 38 84 78 88 */ addi r4, r4, __dt__12Z2MultiSeObjFv@l +/* 800077B4 000046F4 38 A0 00 24 */ li r5, 0x24 +/* 800077B8 000046F8 38 C0 00 0A */ li r6, 0xa +/* 800077BC 000046FC 48 35 A5 2D */ bl func_80361CE8 +/* 800077C0 00004700 38 7E 00 68 */ addi r3, r30, 0x68 +/* 800077C4 00004704 3C 80 80 00 */ lis r4, __dt__12Z2MultiSeObjFv@ha +/* 800077C8 00004708 38 84 78 88 */ addi r4, r4, __dt__12Z2MultiSeObjFv@l +/* 800077CC 0000470C 38 A0 00 24 */ li r5, 0x24 +/* 800077D0 00004710 38 C0 00 0A */ li r6, 0xa +/* 800077D4 00004714 48 35 A5 15 */ bl func_80361CE8 +/* 800077D8 00004718 7F C3 F3 78 */ mr r3, r30 +/* 800077DC 0000471C 3C 80 80 00 */ lis r4, __dt__14JAISoundHandleFv@ha +/* 800077E0 00004720 38 84 78 38 */ addi r4, r4, __dt__14JAISoundHandleFv@l +/* 800077E4 00004724 38 A0 00 04 */ li r5, 4 +/* 800077E8 00004728 38 C0 00 18 */ li r6, 0x18 +/* 800077EC 0000472C 48 35 A4 FD */ bl func_80361CE8 +/* 800077F0 00004730 28 1E 00 00 */ cmplwi r30, 0 +/* 800077F4 00004734 41 82 00 18 */ beq lbl_8000780C +/* 800077F8 00004738 80 0D 86 08 */ lwz r0, lbl_80450B88-_SDA_BASE_(r13) +/* 800077FC 0000473C 7C 00 F0 40 */ cmplw r0, r30 +/* 80007800 00004740 40 82 00 0C */ bne lbl_8000780C +/* 80007804 00004744 38 00 00 00 */ li r0, 0 +/* 80007808 00004748 90 0D 86 08 */ stw r0, lbl_80450B88-_SDA_BASE_(r13) +lbl_8000780C: +/* 8000780C 0000474C 7F E0 07 35 */ extsh. r0, r31 +/* 80007810 00004750 40 81 00 0C */ ble lbl_8000781C +/* 80007814 00004754 7F C3 F3 78 */ mr r3, r30 +/* 80007818 00004758 48 2C 75 25 */ bl __dl__FPv +lbl_8000781C: +/* 8000781C 0000475C 7F C3 F3 78 */ mr r3, r30 +/* 80007820 00004760 39 61 00 20 */ addi r11, r1, 0x20 +/* 80007824 00004764 48 35 AA 05 */ bl _restgpr_29 +/* 80007828 00004768 80 01 00 24 */ lwz r0, 0x24(r1) +/* 8000782C 0000476C 7C 08 03 A6 */ mtlr r0 +/* 80007830 00004770 38 21 00 20 */ addi r1, r1, 0x20 +/* 80007834 00004774 4E 80 00 20 */ blr \ No newline at end of file diff --git a/include/m_Do/m_Do_audio/asm/Z2MultiSeObj_NS_dtor.s b/include/m_Do/m_Do_audio/asm/Z2MultiSeObj_NS_dtor.s new file mode 100644 index 00000000000..eee5763bd04 --- /dev/null +++ b/include/m_Do/m_Do_audio/asm/Z2MultiSeObj_NS_dtor.s @@ -0,0 +1,22 @@ +/* 80007888 000047C8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000788C 000047CC 7C 08 02 A6 */ mflr r0 +/* 80007890 000047D0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80007894 000047D4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80007898 000047D8 93 C1 00 08 */ stw r30, 8(r1) +/* 8000789C 000047DC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 800078A0 000047E0 7C 9F 23 78 */ mr r31, r4 +/* 800078A4 000047E4 41 82 00 1C */ beq lbl_800078C0 +/* 800078A8 000047E8 38 80 00 00 */ li r4, 0 +/* 800078AC 000047EC 48 2A 72 89 */ bl __dt__12Z2MultiSeMgrFv +/* 800078B0 000047F0 7F E0 07 35 */ extsh. r0, r31 +/* 800078B4 000047F4 40 81 00 0C */ ble lbl_800078C0 +/* 800078B8 000047F8 7F C3 F3 78 */ mr r3, r30 +/* 800078BC 000047FC 48 2C 74 81 */ bl __dl__FPv +lbl_800078C0: +/* 800078C0 00004800 7F C3 F3 78 */ mr r3, r30 +/* 800078C4 00004804 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 800078C8 00004808 83 C1 00 08 */ lwz r30, 8(r1) +/* 800078CC 0000480C 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800078D0 00004810 7C 08 03 A6 */ mtlr r0 +/* 800078D4 00004814 38 21 00 10 */ addi r1, r1, 0x10 +/* 800078D8 00004818 4E 80 00 20 */ blr \ No newline at end of file diff --git a/include/m_Do/m_Do_audio/asm/__sinit_m_Do_audio_cpp.s b/include/m_Do/m_Do_audio/asm/__sinit_m_Do_audio_cpp.s new file mode 100644 index 00000000000..f584c9fcc9b --- /dev/null +++ b/include/m_Do/m_Do_audio/asm/__sinit_m_Do_audio_cpp.s @@ -0,0 +1,20 @@ +/* 80007318 00004258 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000731C 0000425C 7C 08 02 A6 */ mflr r0 +/* 80007320 00004260 90 01 00 14 */ stw r0, 0x14(r1) +/* 80007324 00004264 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha +/* 80007328 00004268 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l +/* 8000732C 0000426C 48 2C 5F 1D */ bl __ct__10Z2AudioMgrFv +/* 80007330 00004270 3C 60 80 3A */ lis r3, lbl_803A2F40@ha +/* 80007334 00004274 38 03 2F 40 */ addi r0, r3, lbl_803A2F40@l +/* 80007338 00004278 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha +/* 8000733C 0000427C 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l +/* 80007340 00004280 90 03 05 14 */ stw r0, 0x514(r3) +/* 80007344 00004284 3C 80 80 00 */ lis r4, __dt__17mDoAud_zelAudio_cFv@ha +/* 80007348 00004288 38 84 73 68 */ addi r4, r4, __dt__17mDoAud_zelAudio_cFv@l +/* 8000734C 0000428C 3C A0 80 3E */ lis r5, lbl_803DBF40@ha +/* 80007350 00004290 38 A5 BF 40 */ addi r5, r5, lbl_803DBF40@l +/* 80007354 00004294 48 35 A8 D1 */ bl func_80361C24 +/* 80007358 00004298 80 01 00 14 */ lwz r0, 0x14(r1) +/* 8000735C 0000429C 7C 08 03 A6 */ mtlr r0 +/* 80007360 000042A0 38 21 00 10 */ addi r1, r1, 0x10 +/* 80007364 000042A4 4E 80 00 20 */ blr \ No newline at end of file diff --git a/include/m_Do/m_Do_audio/asm/mDoAud_Create.s b/include/m_Do/m_Do_audio/asm/mDoAud_Create.s new file mode 100644 index 00000000000..567ae025e18 --- /dev/null +++ b/include/m_Do/m_Do_audio/asm/mDoAud_Create.s @@ -0,0 +1,112 @@ +/* 80006FC0 00003F00 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 80006FC4 00003F04 7C 08 02 A6 */ mflr r0 +/* 80006FC8 00003F08 90 01 00 14 */ stw r0, 0x14(r1) +/* 80006FCC 00003F0C 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80006FD0 00003F10 80 0D 86 40 */ lwz r0, lbl_80450BC0-_SDA_BASE_(r13) +/* 80006FD4 00003F14 28 00 00 00 */ cmplwi r0, 0 +/* 80006FD8 00003F18 40 82 00 24 */ bne lbl_80006FFC +/* 80006FDC 00003F1C 3C 60 80 37 */ lis r3, lbl_80373D68@ha +/* 80006FE0 00003F20 38 63 3D 68 */ addi r3, r3, lbl_80373D68@l +/* 80006FE4 00003F24 38 80 00 02 */ li r4, 2 +/* 80006FE8 00003F28 38 A0 00 00 */ li r5, 0 +/* 80006FEC 00003F2C 48 00 F3 A9 */ bl mDoDvdThd_toMainRam_c_NS_create +/* 80006FF0 00003F30 90 6D 86 40 */ stw r3, lbl_80450BC0-_SDA_BASE_(r13) +/* 80006FF4 00003F34 28 03 00 00 */ cmplwi r3, 0 +/* 80006FF8 00003F38 41 82 01 58 */ beq lbl_80007150 +lbl_80006FFC: +/* 80006FFC 00003F3C 80 0D 86 44 */ lwz r0, lbl_80450BC4-_SDA_BASE_(r13) +/* 80007000 00003F40 28 00 00 00 */ cmplwi r0, 0 +/* 80007004 00003F44 40 82 00 2C */ bne lbl_80007030 +/* 80007008 00003F48 3C 60 80 37 */ lis r3, lbl_80373D68@ha +/* 8000700C 00003F4C 38 63 3D 68 */ addi r3, r3, lbl_80373D68@l +/* 80007010 00003F50 38 63 00 16 */ addi r3, r3, 0x16 +/* 80007014 00003F54 38 80 00 00 */ li r4, 0 +/* 80007018 00003F58 38 A0 00 03 */ li r5, 3 +/* 8000701C 00003F5C 38 C0 00 00 */ li r6, 0 +/* 80007020 00003F60 48 00 F1 C1 */ bl mDoDvdThd_mountXArchive_c_NS_create +/* 80007024 00003F64 90 6D 86 44 */ stw r3, lbl_80450BC4-_SDA_BASE_(r13) +/* 80007028 00003F68 28 03 00 00 */ cmplwi r3, 0 +/* 8000702C 00003F6C 41 82 01 24 */ beq lbl_80007150 +lbl_80007030: +/* 80007030 00003F70 80 6D 86 40 */ lwz r3, lbl_80450BC0-_SDA_BASE_(r13) +/* 80007034 00003F74 88 03 00 0C */ lbz r0, 0xc(r3) +/* 80007038 00003F78 2C 00 00 00 */ cmpwi r0, 0 +/* 8000703C 00003F7C 41 82 01 14 */ beq lbl_80007150 +/* 80007040 00003F80 80 6D 86 44 */ lwz r3, lbl_80450BC4-_SDA_BASE_(r13) +/* 80007044 00003F84 88 03 00 0C */ lbz r0, 0xc(r3) +/* 80007048 00003F88 2C 00 00 00 */ cmpwi r0, 0 +/* 8000704C 00003F8C 41 82 01 04 */ beq lbl_80007150 +/* 80007050 00003F90 80 0D 86 3C */ lwz r0, lbl_80450BBC-_SDA_BASE_(r13) +/* 80007054 00003F94 28 00 00 00 */ cmplwi r0, 0 +/* 80007058 00003F98 41 82 00 50 */ beq lbl_800070A8 +/* 8000705C 00003F9C 80 6D 8D F4 */ lwz r3, sCurrentHeap__7JKRHeap-_SDA_BASE_(r13) +/* 80007060 00003FA0 38 80 00 05 */ li r4, 5 +/* 80007064 00003FA4 48 2C 77 4D */ bl changeGroupID__7JKRHeapFUc +/* 80007068 00003FA8 7C 7F 1B 78 */ mr r31, r3 +/* 8000706C 00003FAC 80 6D 86 44 */ lwz r3, lbl_80450BC4-_SDA_BASE_(r13) +/* 80007070 00003FB0 80 E3 00 1C */ lwz r7, 0x1c(r3) +/* 80007074 00003FB4 80 6D 86 40 */ lwz r3, lbl_80450BC0-_SDA_BASE_(r13) +/* 80007078 00003FB8 80 C3 00 1C */ lwz r6, 0x1c(r3) +/* 8000707C 00003FBC 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha +/* 80007080 00003FC0 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l +/* 80007084 00003FC4 80 8D 86 3C */ lwz r4, lbl_80450BBC-_SDA_BASE_(r13) +/* 80007088 00003FC8 3C A0 00 A0 */ lis r5, 0xa0 +/* 8000708C 00003FCC 48 2C 62 C1 */ bl init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive +/* 80007090 00003FD0 80 6D 8D F4 */ lwz r3, sCurrentHeap__7JKRHeap-_SDA_BASE_(r13) +/* 80007094 00003FD4 57 E4 06 3E */ clrlwi r4, r31, 0x18 +/* 80007098 00003FD8 48 2C 77 19 */ bl changeGroupID__7JKRHeapFUc +/* 8000709C 00003FDC 80 6D 86 3C */ lwz r3, lbl_80450BBC-_SDA_BASE_(r13) +/* 800070A0 00003FE0 48 2C 9B 55 */ bl adjustSize__12JKRSolidHeapFv +/* 800070A4 00003FE4 48 00 00 18 */ b lbl_800070BC +lbl_800070A8: +/* 800070A8 00003FE8 3C 60 80 37 */ lis r3, lbl_80373D68@ha +/* 800070AC 00003FEC 38 63 3D 68 */ addi r3, r3, lbl_80373D68@l +/* 800070B0 00003FF0 38 63 00 35 */ addi r3, r3, 0x35 +/* 800070B4 00003FF4 4C C6 31 82 */ crclr 6 +/* 800070B8 00003FF8 4B FF FB 55 */ bl OSReport_Error +lbl_800070BC: +/* 800070BC 00003FFC 3C 60 80 40 */ lis r3, g_dComIfG_gameInfo@ha +/* 800070C0 00004000 38 63 61 C0 */ addi r3, r3, g_dComIfG_gameInfo@l +/* 800070C4 00004004 38 83 07 F0 */ addi r4, r3, 0x7f0 +/* 800070C8 00004008 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha +/* 800070CC 0000400C 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l +/* 800070D0 00004010 38 63 04 C4 */ addi r3, r3, 0x4c4 +/* 800070D4 00004014 48 2A F6 85 */ bl setEventBit__11Z2StatusMgrFPv +/* 800070D8 00004018 3C 60 80 3E */ lis r3, lbl_803DBF4C@ha +/* 800070DC 0000401C 38 63 BF 4C */ addi r3, r3, lbl_803DBF4C@l +/* 800070E0 00004020 4B FF FE D5 */ bl reset__17mDoAud_zelAudio_cFv +/* 800070E4 00004024 48 33 94 AD */ bl OSGetSoundMode +/* 800070E8 00004028 7C 64 1B 78 */ mr r4, r3 +/* 800070EC 0000402C 80 6D 8D E8 */ lwz r3, lbl_80451368-_SDA_BASE_(r13) +/* 800070F0 00004030 48 2C 67 99 */ bl setOutputMode__10Z2AudioMgrFUl +/* 800070F4 00004034 80 6D 86 40 */ lwz r3, lbl_80450BC0-_SDA_BASE_(r13) +/* 800070F8 00004038 80 63 00 1C */ lwz r3, 0x1c(r3) +/* 800070FC 0000403C 38 80 00 00 */ li r4, 0 +/* 80007100 00004040 48 2C 74 01 */ bl free__7JKRHeapFPvP7JKRHeap +/* 80007104 00004044 80 6D 86 40 */ lwz r3, lbl_80450BC0-_SDA_BASE_(r13) +/* 80007108 00004048 28 03 00 00 */ cmplwi r3, 0 +/* 8000710C 0000404C 41 82 00 18 */ beq lbl_80007124 +/* 80007110 00004050 38 80 00 01 */ li r4, 1 +/* 80007114 00004054 81 83 00 10 */ lwz r12, 0x10(r3) +/* 80007118 00004058 81 8C 00 08 */ lwz r12, 8(r12) +/* 8000711C 0000405C 7D 89 03 A6 */ mtctr r12 +/* 80007120 00004060 4E 80 04 21 */ bctrl +lbl_80007124: +/* 80007124 00004064 80 6D 86 44 */ lwz r3, lbl_80450BC4-_SDA_BASE_(r13) +/* 80007128 00004068 28 03 00 00 */ cmplwi r3, 0 +/* 8000712C 0000406C 41 82 00 18 */ beq lbl_80007144 +/* 80007130 00004070 38 80 00 01 */ li r4, 1 +/* 80007134 00004074 81 83 00 10 */ lwz r12, 0x10(r3) +/* 80007138 00004078 81 8C 00 08 */ lwz r12, 8(r12) +/* 8000713C 0000407C 7D 89 03 A6 */ mtctr r12 +/* 80007140 00004080 4E 80 04 21 */ bctrl +lbl_80007144: +/* 80007144 00004084 38 00 00 01 */ li r0, 1 +/* 80007148 00004088 98 0D 86 38 */ stb r0, lbl_80450BB8-_SDA_BASE_(r13) +/* 8000714C 0000408C 98 0D 87 00 */ stb r0, lbl_80450C80-_SDA_BASE_(r13) +lbl_80007150: +/* 80007150 00004090 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 80007154 00004094 80 01 00 14 */ lwz r0, 0x14(r1) +/* 80007158 00004098 7C 08 03 A6 */ mtlr r0 +/* 8000715C 0000409C 38 21 00 10 */ addi r1, r1, 0x10 +/* 80007160 000040A0 4E 80 00 20 */ blr diff --git a/include/m_Do/m_Do_audio/asm/mDoAud_zelAudio_c_NS_dtor.s b/include/m_Do/m_Do_audio/asm/mDoAud_zelAudio_c_NS_dtor.s new file mode 100644 index 00000000000..c116846df33 --- /dev/null +++ b/include/m_Do/m_Do_audio/asm/mDoAud_zelAudio_c_NS_dtor.s @@ -0,0 +1,25 @@ +/* 80007368 000042A8 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 8000736C 000042AC 7C 08 02 A6 */ mflr r0 +/* 80007370 000042B0 90 01 00 14 */ stw r0, 0x14(r1) +/* 80007374 000042B4 93 E1 00 0C */ stw r31, 0xc(r1) +/* 80007378 000042B8 93 C1 00 08 */ stw r30, 8(r1) +/* 8000737C 000042BC 7C 7E 1B 79 */ or. r30, r3, r3 +/* 80007380 000042C0 7C 9F 23 78 */ mr r31, r4 +/* 80007384 000042C4 41 82 00 28 */ beq lbl_800073AC +/* 80007388 000042C8 3C 80 80 3A */ lis r4, lbl_803A2F40@ha +/* 8000738C 000042CC 38 04 2F 40 */ addi r0, r4, lbl_803A2F40@l +/* 80007390 000042D0 90 1E 05 14 */ stw r0, 0x514(r30) +/* 80007394 000042D4 38 80 00 00 */ li r4, 0 +/* 80007398 000042D8 48 00 00 31 */ bl __dt__10Z2AudioMgrFv +/* 8000739C 000042DC 7F E0 07 35 */ extsh. r0, r31 +/* 800073A0 000042E0 40 81 00 0C */ ble lbl_800073AC +/* 800073A4 000042E4 7F C3 F3 78 */ mr r3, r30 +/* 800073A8 000042E8 48 2C 79 95 */ bl __dl__FPv +lbl_800073AC: +/* 800073AC 000042EC 7F C3 F3 78 */ mr r3, r30 +/* 800073B0 000042F0 83 E1 00 0C */ lwz r31, 0xc(r1) +/* 800073B4 000042F4 83 C1 00 08 */ lwz r30, 8(r1) +/* 800073B8 000042F8 80 01 00 14 */ lwz r0, 0x14(r1) +/* 800073BC 000042FC 7C 08 03 A6 */ mtlr r0 +/* 800073C0 00004300 38 21 00 10 */ addi r1, r1, 0x10 +/* 800073C4 00004304 4E 80 00 20 */ blr \ No newline at end of file diff --git a/include/m_Do/m_Do_audio/m_Do_audio.h b/include/m_Do/m_Do_audio/m_Do_audio.h new file mode 100644 index 00000000000..1a7524fc082 --- /dev/null +++ b/include/m_Do/m_Do_audio/m_Do_audio.h @@ -0,0 +1,87 @@ +#ifndef __M_DO_AUDIO_H_ +#define __M_DO_AUDIO_H_ +#include "Z2AudioLib/Z2AudioMgr/Z2AudioMgr.h" +#include "global.h" + +class mDoAud_zelAudio_c { // Seems to be based on Z2AudioMgr; more research is needed +public: + void reset(void); + ~mDoAud_zelAudio_c(); +}; + +void mDoAud_Create(void); +void mDoAud_Execute(void); + +void mDoAud_setSceneName(const char* spot, long room, long layer); + +bool mDoAud_load1stDynamicWave(void); + +void mDoAud_setFadeOutStart(u8 param_1); + +void mDoAud_setFadeInStart(u8 param_1); + +void mDoAud_resetProcess(void); + +bool mDoAud_resetRecover(void); + +void init(void); + +extern bool lbl_80450BBA; +extern bool lbl_80450BB9; + +// required for inline asm +extern u8 lbl_80450BC0; +extern char lbl_80373D68[]; +extern u8 lbl_80450BC4; +extern void* lbl_803A2F40; // is a vtable, change later +extern u8 lbl_803DBF40; +struct JAIStreamMgr; +extern JAIStreamMgr* lbl_80450B64; // JAIStreamMgr sInstance +extern void* lbl_803C9958; // vtable +struct JAISeqMgr; +extern JAISeqMgr* lbl_80450B68; // JAISeqMgr sInstance +extern void* lbl_803C98B0; // vtable +struct JAISeMgr; +extern JAISeMgr* lbl_80450B6C; +extern void* lbl_803C98C4; // vtable + +extern "C" { +void mDoAud_Execute__Fv(void); +void Z2MultiSeObj_NS_dtor(void); +void Z2MultiSeMgr_NS_dtor(void); +void __dt__16JAISeCategoryMgrFv(void); +void __dt__14JAISoundHandleFv(void); +void __dt__12Z2MultiSeObjFv(void); +void Z2MultiSeObj_NS_dtor(void); +void JAISoundHandle_NS_dtor(void); +void JASAudioReseter_NS_dtor(void); +void func_80361CE8(void); +void JAISeqDataUser_NS_dtor(void); +void JAISoundInfo_NS_dtor(void); +void JAIStreamDataMgr_NS_dtor(void); +void Z2Audience_NS_dtor(void); +void releaseSound__14JAISoundHandleFv(void); +void __dt__17mDoAud_zelAudio_cFv(void); +void __dt__10Z2AudioMgrFv(void); +void __ct__10Z2AudioMgrFv(void); +void hasReset__10Z2AudioMgrCFv(void); +void mDoAud_zelAudio_c_NS_dtor(void); +void mDoAud_resetRecover__Fv(void); +void resetRecover__10Z2AudioMgrFv(void); +void resetProcess__10Z2AudioMgrFUlb(void); +void gframeProcess__10Z2AudioMgrFv(void); +void mDoAud_Create__Fv(void); +void reset__17mDoAud_zelAudio_cFv(void); +void Z2StatusMgr_NS_setEventBit(void); +void mDoDvdThd_mountXArchive_c_NS_create(void); +void mDoDvdThd_toMainRam_c_NS_create(void); +void setOutputMode__10Z2AudioMgrFUl(void); +void mDoAud_setSceneName__FPCcll(void); +void __ct__12JAIStreamMgrFb(void); +void __ct__9JAISeqMgrFb(void); +void __ct__8JAISeMgrFb(void); +void Z2AudioMgr_NS_setOutputMode__9JASDriverFUl(void); +void init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive(void); +void mDoAud_resetProcess__Fv(void); +} +#endif \ No newline at end of file diff --git a/include/m_Do/m_Do_main/asm/func_8000628C.s b/include/m_Do/m_Do_main/asm/func_8000628C.s index a3018a69e05..ea2abb99d89 100644 --- a/include/m_Do/m_Do_main/asm/func_8000628C.s +++ b/include/m_Do/m_Do_main/asm/func_8000628C.s @@ -121,6 +121,6 @@ lbl_8000642C: lbl_80006440: /* 80006440 00003380 48 00 16 55 */ bl read__8mDoCPd_cFv /* 80006444 00003384 48 01 26 29 */ bl fapGm_Execute -/* 80006448 00003388 48 00 0D 1D */ bl mDoAud_Execute +/* 80006448 00003388 48 00 0D 1D */ bl mDoAud_Execute__Fv /* 8000644C 0000338C 4B FF FD 7D */ bl debug__Fv /* 80006450 00003390 4B FF FF B0 */ b lbl_80006400 \ No newline at end of file diff --git a/include/m_Do/m_Do_main/m_Do_main.h b/include/m_Do/m_Do_main/m_Do_main.h index 949efc3af1f..69cf8cb13a1 100644 --- a/include/m_Do/m_Do_main/m_Do_main.h +++ b/include/m_Do/m_Do_main/m_Do_main.h @@ -1,3 +1,5 @@ +#ifndef __M_DO_MAIN_H_ +#define __M_DO_MAIN_H_ #include "JSystem/JKernel/JKRExpHeap/JKRExpHeap.h" #include "JSystem/JKernel/JKRHeap/JKRHeap.h" #include "JSystem/JKernel/JKRSolidHeap/JKRSolidHeap.h" @@ -40,4 +42,5 @@ extern u8 lbl_80450B18; extern u8 lbl_80450588[8]; extern u8 lbl_804511B8[4]; extern u8 lbl_80451210[4]; -extern JKRSolidHeap* lbl_80450BBC; \ No newline at end of file +extern JKRSolidHeap* lbl_80450BBC; +#endif \ No newline at end of file diff --git a/include/variables.h b/include/variables.h index 215c626cf75..afe16552086 100644 --- a/include/variables.h +++ b/include/variables.h @@ -7,7 +7,6 @@ extern u8 lbl_80430188[16]; extern u8 lbl_80379235[16]; extern char lbl_80379234[0x64]; extern char lbl_803739A0[0x310]; -extern void* lbl_80451368; extern u32 _sRumbleSupported; extern u8 lbl_803A2EF4; extern char lbl_803A2EE0[20]; @@ -409,7 +408,7 @@ extern u32 lbl_80450DE4; // func_80015614 #include "JSystem/JUtility/JUTXfb/JUTXfb.h" // extern JUTXfb* lbl_80451550; -extern u8 lbl_80450BB8; +extern bool lbl_80450BB8; extern char lbl_80374198[16]; // func_8001574C extern bool lbl_80451501; diff --git a/ldscript.lcf b/ldscript.lcf index 796c04cc5f8..353bd351c36 100644 --- a/ldscript.lcf +++ b/ldscript.lcf @@ -758,6 +758,12 @@ SECTIONS { "__dt__7JKRFileFv" = 0x802D7B90; } FORCEACTIVE { + __sinit_m_Do_audio_cpp + hasReset__10Z2AudioMgrCFv + resetRecover__10Z2AudioMgrFv + mDoAud_resetRecover__Fv + resetProcess__10Z2AudioMgrFUlb + mDoAud_resetProcess__Fv prepare_data___Q37JStudio3fvb15TObject_hermiteFRCQ57JStudio3fvb4data17TParse_TParagraph5TDataPQ37JStudio3fvb8TControl prepare_data___Q37JStudio3fvb22TObject_list_parameterFRCQ57JStudio3fvb4data17TParse_TParagraph5TDataPQ37JStudio3fvb8TControl prepare_data___Q37JStudio3fvb12TObject_listFRCQ57JStudio3fvb4data17TParse_TParagraph5TDataPQ37JStudio3fvb8TControl diff --git a/libs/Z2AudioLib/Z2AudioMgr.cpp b/libs/Z2AudioLib/Z2AudioMgr.cpp index 050389c71a2..52b9647b2b2 100644 --- a/libs/Z2AudioLib/Z2AudioMgr.cpp +++ b/libs/Z2AudioLib/Z2AudioMgr.cpp @@ -1,73 +1,79 @@ /* Z2AudioMgr.cpp autogenerated by split.py v0.3 at 2021-01-04 23:11:48.333955 */ +#include "Z2AudioLib/Z2AudioMgr/Z2AudioMgr.h" #include "Z2AudioLib/Z2Param/Z2Param.h" #include "Z2AudioLib/Z2SoundInfo/Z2SoundInfo.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { // __ct__10Z2AudioMgrFv // Z2AudioMgr::Z2AudioMgr(void) -asm void Z2AudioMgr(void) { +asm void __ct__10Z2AudioMgrFv() { // cpp constructor won't compile??? nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CD248.s" } +}; // init__10Z2AudioMgrFP12JKRSolidHeapUlPvP10JKRArchive // Z2AudioMgr::init(JKRSolidHeap*, unsigned long, void*, JKRArchive*) -asm void Z2AudioMgr_NS_init(void) { +asm void Z2AudioMgr::init(JKRSolidHeap*, unsigned long, void*, JKRArchive*) { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CD34C.s" } // __dt__24JAUStreamAramMgrBase_<1>Fv // JAUStreamAramMgrBase_<1>::~JAUStreamAramMgrBase_<1>(void) +extern "C" { asm void func_802CD7F8(void) { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CD7F8.s" } +}; // setOutputMode__10Z2AudioMgrFUl // Z2AudioMgr::setOutputMode(unsigned long) -asm void Z2AudioMgr_NS_setOutputMode(void*, unsigned long) { +asm Z2AudioMgr* Z2AudioMgr::setOutputMode(unsigned long) { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CD888.s" } +extern "C" { // zeldaGFrameWork__10Z2AudioMgrFv // Z2AudioMgr::zeldaGFrameWork(void) asm void Z2AudioMgr_NS_zeldaGFrameWork(void) { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CD8B4.s" } +}; // gframeProcess__10Z2AudioMgrFv // Z2AudioMgr::gframeProcess(void) -asm void Z2AudioMgr_NS_gframeProcess(void) { +asm void Z2AudioMgr::gframeProcess(void) { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CD904.s" } - // resetProcess__10Z2AudioMgrFUlb // Z2AudioMgr::resetProcess(unsigned long, bool) -asm void Z2AudioMgr_NS_resetProcess(void) { +asm u32 Z2AudioMgr::resetProcess(u32, bool) { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CD974.s" } - // resetRecover__10Z2AudioMgrFv // Z2AudioMgr::resetRecover(void) -asm void Z2AudioMgr_NS_resetRecover(void) { +asm void Z2AudioMgr::resetRecover(void) { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CD9CC.s" } // hasReset__10Z2AudioMgrCFv // Z2AudioMgr::hasReset(void) const -asm u32 Z2AudioMgr_NS_hasReset(void*) { +asm bool Z2AudioMgr::hasReset(void) const { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CDA6C.s" } +extern "C" { // startSound__10Z2AudioMgrF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3 // Z2AudioMgr::startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3) asm void func_802CDB1C(void) { @@ -95,4 +101,4 @@ asm void func_802CDCEC(void) { nofralloc #include "Z2AudioLib/Z2AudioMgr/asm/func_802CDCEC.s" } -}; +}; \ No newline at end of file diff --git a/libs/Z2AudioLib/Z2Creature.cpp b/libs/Z2AudioLib/Z2Creature.cpp index bf8c379bc66..e82e8af1975 100644 --- a/libs/Z2AudioLib/Z2Creature.cpp +++ b/libs/Z2AudioLib/Z2Creature.cpp @@ -7,6 +7,7 @@ #include "Z2AudioLib/Z2SpeechMgr2/Z2SpeechMgr2.h" #include "Z2AudioLib/Z2StatusMgr/Z2StatusMgr.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { // __ct__10Z2CreatureFv diff --git a/libs/Z2AudioLib/Z2SceneMgr.cpp b/libs/Z2AudioLib/Z2SceneMgr.cpp index ad09f56d0e0..8d91eb9cdd8 100644 --- a/libs/Z2AudioLib/Z2SceneMgr.cpp +++ b/libs/Z2AudioLib/Z2SceneMgr.cpp @@ -237,7 +237,7 @@ asm void Z2SceneMgr_NS_framework(void) { // load1stDynamicWave__10Z2SceneMgrFv // Z2SceneMgr::load1stDynamicWave(void) -asm void Z2SceneMgr_NS_load1stDynamicWave(void) { +asm void Z2SceneMgr::load1stDynamicWave(void) { nofralloc #include "Z2AudioLib/Z2SceneMgr/asm/func_802B9D40.s" } diff --git a/libs/Z2AudioLib/Z2SeMgr.cpp b/libs/Z2AudioLib/Z2SeMgr.cpp index 070ab66f5c4..d4c2b8dce3a 100644 --- a/libs/Z2AudioLib/Z2SeMgr.cpp +++ b/libs/Z2AudioLib/Z2SeMgr.cpp @@ -3,11 +3,11 @@ #include "Z2AudioLib/Z2SoundStarter/Z2SoundStarter.h" #include "Z2AudioLib/Z2SpeechMgr2/Z2SpeechMgr2.h" #include "Z2AudioLib/Z2StatusMgr/Z2StatusMgr.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { void JAISoundHandle(void); void JAISoundHandle_NS_dtor(void); -void Z2MultiSeObj_NS_dtor(void); } asm Z2SeMgr::Z2SeMgr(void) { diff --git a/libs/Z2AudioLib/Z2SoundMgr.cpp b/libs/Z2AudioLib/Z2SoundMgr.cpp index 0b4d6fad102..152f6159320 100644 --- a/libs/Z2AudioLib/Z2SoundMgr.cpp +++ b/libs/Z2AudioLib/Z2SoundMgr.cpp @@ -6,6 +6,7 @@ #include "Z2AudioLib/Z2SoundInfo/Z2SoundInfo.h" #include "Z2AudioLib/Z2SpeechMgr2/Z2SpeechMgr2.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { // seqCallback__FP8JASTrackUs diff --git a/libs/Z2AudioLib/Z2SoundStarter.cpp b/libs/Z2AudioLib/Z2SoundStarter.cpp index 78eb5088c00..1ce8081f839 100644 --- a/libs/Z2AudioLib/Z2SoundStarter.cpp +++ b/libs/Z2AudioLib/Z2SoundStarter.cpp @@ -4,6 +4,7 @@ #include "Z2AudioLib/Z2EnvSeMgr/Z2EnvSeMgr.h" #include "Z2AudioLib/Z2StatusMgr/Z2StatusMgr.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { // __ct__14Z2SoundStarterFb diff --git a/libs/Z2AudioLib/Z2SpeechMgr2.cpp b/libs/Z2AudioLib/Z2SpeechMgr2.cpp index 502766b104a..558d7a8d7d5 100644 --- a/libs/Z2AudioLib/Z2SpeechMgr2.cpp +++ b/libs/Z2AudioLib/Z2SpeechMgr2.cpp @@ -6,6 +6,7 @@ #include "Z2AudioLib/Z2SoundStarter/Z2SoundStarter.h" #include "Z2AudioLib/Z2StatusMgr/Z2StatusMgr.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" #ifdef NONMATCHING Z2SpeechMgr2::Z2SpeechMgr2() diff --git a/obj_files.mk b/obj_files.mk index 5148ba297bf..648978b6754 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -12,7 +12,7 @@ EXTABINDEX_O_FILES := \ TEXT_O_FILES := \ $(BUILD_DIR)/src/m_Do/m_Do_main.o \ $(BUILD_DIR)/asm/m/Do/m_Do_printf.o \ - $(BUILD_DIR)/asm/m/Do/m_Do_audio.o \ + $(BUILD_DIR)/src/m_Do/m_Do_audio.o \ $(BUILD_DIR)/src/m_Do/m_Do_controller_pad.o \ $(BUILD_DIR)/asm/m/Do/m_Do_graphic.o \ $(BUILD_DIR)/asm/m/Do/m_Do_machine.o \ diff --git a/src/d/d_a/d_a_alink.cpp b/src/d/d_a/d_a_alink.cpp index 0a7108a12bb..4d10187418c 100644 --- a/src/d/d_a/d_a_alink.cpp +++ b/src/d/d_a/d_a_alink.cpp @@ -7,6 +7,7 @@ #include "d/d_bg/d_bg_s/d_bg_s_poly_pass_chk.h" #include "f/f_pc/f_pc_manager.h" #include "f/f_pc/f_pc_searcher.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" #include "m_Do/m_Do_controller_pad/m_Do_controller_pad.h" u32 daAlink_c::getE3Zhint(void) { diff --git a/src/d/d_attention.cpp b/src/d/d_attention.cpp index f64c11b78c1..83eb2ec56c2 100644 --- a/src/d/d_attention.cpp +++ b/src/d/d_attention.cpp @@ -5,6 +5,7 @@ #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "f/f_pc/f_pc_searcher.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" #include "m_Do/m_Do_controller_pad/m_Do_controller_pad.h" extern "C" { diff --git a/src/d/d_camera.cpp b/src/d/d_camera.cpp index 3bc0ecf2174..f37fd1b88bf 100644 --- a/src/d/d_camera.cpp +++ b/src/d/d_camera.cpp @@ -7,6 +7,7 @@ #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "f/f_pc/f_pc_searcher.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" #include "m_Do/m_Do_controller_pad/m_Do_controller_pad.h" extern "C" { diff --git a/src/d/d_com/d_com_inf_game.cpp b/src/d/d_com/d_com_inf_game.cpp index 8e1c0681cdf..2e1ffe149bc 100644 --- a/src/d/d_com/d_com_inf_game.cpp +++ b/src/d/d_com/d_com_inf_game.cpp @@ -5,6 +5,7 @@ #include "d/d_item/d_item/d_item.h" #include "global.h" #include "m_Do/m_Do_Reset/m_Do_Reset.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" #include "m_Do/m_Do_controller_pad/m_Do_controller_pad.h" #include "m_Do/m_Do_ext/m_Do_ext.h" diff --git a/src/d/d_kankyo.cpp b/src/d/d_kankyo.cpp index 89a289499aa..5f59c2785fc 100644 --- a/src/d/d_kankyo.cpp +++ b/src/d/d_kankyo.cpp @@ -3,6 +3,7 @@ #include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h" #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" #include "os/OS.h" extern "C" { diff --git a/src/d/d_kankyo/d_kankyo_wether.cpp b/src/d/d_kankyo/d_kankyo_wether.cpp index 2a83d3a9b48..a27b93099e0 100644 --- a/src/d/d_kankyo/d_kankyo_wether.cpp +++ b/src/d/d_kankyo/d_kankyo_wether.cpp @@ -4,6 +4,7 @@ #include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h" #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { // dKyw_setDrawPacketList__FP9J3DPacketi diff --git a/src/d/d_meter/d_meter_button.cpp b/src/d/d_meter/d_meter_button.cpp index 0aca54e8e01..d47de729857 100644 --- a/src/d/d_meter/d_meter_button.cpp +++ b/src/d/d_meter/d_meter_button.cpp @@ -3,6 +3,7 @@ #include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h" #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { // __ct__14dMeterButton_cFv diff --git a/src/d/d_meter/d_meter_map.cpp b/src/d/d_meter/d_meter_map.cpp index 0b80e488596..d4ac0fadcdf 100644 --- a/src/d/d_meter/d_meter_map.cpp +++ b/src/d/d_meter/d_meter_map.cpp @@ -3,6 +3,7 @@ #include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h" #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" #include "m_Do/m_Do_controller_pad/m_Do_controller_pad.h" extern "C" { diff --git a/src/d/d_meter2.cpp b/src/d/d_meter2.cpp index e17d545d03b..a45a748bc4f 100644 --- a/src/d/d_meter2.cpp +++ b/src/d/d_meter2.cpp @@ -3,6 +3,7 @@ #include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h" #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { // _create__9dMeter2_cFv diff --git a/src/d/d_meter2/d_meter2_draw.cpp b/src/d/d_meter2/d_meter2_draw.cpp index 003d35ea9fe..0ab548fa08c 100644 --- a/src/d/d_meter2/d_meter2_draw.cpp +++ b/src/d/d_meter2/d_meter2_draw.cpp @@ -3,6 +3,7 @@ #include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h" #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" extern "C" { // __ct__13dMeter2Draw_cFP10JKRExpHeap diff --git a/src/d/d_save/d_save.cpp b/src/d/d_save/d_save.cpp index 1bc3fd417a5..89f3c439b0c 100644 --- a/src/d/d_save/d_save.cpp +++ b/src/d/d_save/d_save.cpp @@ -900,10 +900,10 @@ void dSv_player_config_c::init(void) { os_mSoundMode = OSGetSoundMode(); if (os_mSoundMode == SOUND_MODE_MONO) { this->mSoundMode = SOUND_MODE_MONO; - Z2AudioMgr_NS_setOutputMode(lbl_80451368, SOUND_MODE_MONO); + lbl_80451368->setOutputMode(SOUND_MODE_MONO); } else { this->mSoundMode = SOUND_MODE_STEREO; - Z2AudioMgr_NS_setOutputMode(lbl_80451368, SOUND_MODE_STEREO); + lbl_80451368->setOutputMode(SOUND_MODE_STEREO); } this->unk2 = 0; diff --git a/src/m_Do/m_Do_Reset.cpp b/src/m_Do/m_Do_Reset.cpp index e8141783afd..a6f2744de2b 100644 --- a/src/m_Do/m_Do_Reset.cpp +++ b/src/m_Do/m_Do_Reset.cpp @@ -30,10 +30,9 @@ void mDoRst_reset(int p1, u32 p2, int p3) { /* sManager */ lbl_80451550->clearIndex(); mDoDvdErr_ThdCleanup(); cAPICPad_recalibrate__Fv(); - if (lbl_80450BB8 != 0) { + if (lbl_80450BB8 != false) { do { - // uVar2 = lbl_80451368->hasReset(); - uVar2 = Z2AudioMgr_NS_hasReset(lbl_80451368); + uVar2 = lbl_80451368->hasReset(); } while ((uVar2 & 0xff) == 0); } diff --git a/src/m_Do/m_Do_audio.cpp b/src/m_Do/m_Do_audio.cpp index 4bf93c8658d..bf7cf719f69 100644 --- a/src/m_Do/m_Do_audio.cpp +++ b/src/m_Do/m_Do_audio.cpp @@ -1 +1,96 @@ -// ok +#include "m_Do/m_Do_audio/m_Do_audio.h" +#include "JSystem/JAudio2/JAISeMgr/JAISeMgr.h" +#include "JSystem/JAudio2/JAUClusterSound/JAUClusterSound.h" +#include "Z2AudioLib/Z2AudioLib.h" +#include "d/d_com/d_com_inf_game/d_com_inf_game.h" +#include "global.h" +#include "m_Do/m_Do_Reset/m_Do_Reset.h" +#include "m_Do/m_Do_main/m_Do_main.h" + +void mDoAud_zelAudio_c::reset(void) { + lbl_80450BBA = false; +} + +asm void mDoAud_Create(void) { + nofralloc +#include "m_Do/m_Do_audio/asm/mDoAud_Create.s" +} + +void mDoAud_Execute(void) { + if (lbl_80450BB8 == false) { + if ((int)m_Do_Reset_NS_mDoRst_NS_mResetData->field_0x10 == 0 && + (int)m_Do_Reset_NS_mDoRst_NS_mResetData->field_0x11 == 0) { + mDoAud_Create(); + } + } else { + lbl_803DBF4C.gframeProcess(); + } +} + +void mDoAud_setSceneName(const char* spot, long room, long layer) { + lbl_80451368->sceneMgr.setSceneName((char*)spot, room, layer); +} + +bool mDoAud_load1stDynamicWave() { + lbl_80451368->sceneMgr.load1stDynamicWave(); + return true; +} + +void mDoAud_setFadeOutStart(u8 param_1) { + lbl_80451368->sceneMgr.setFadeOutStart((int)param_1); +} + +void mDoAud_setFadeInStart(u8 param_1) { + lbl_80451368->sceneMgr.setFadeInStart((int)param_1); +} + +void mDoAud_resetProcess() { + if (lbl_80450BB9 == false) { + lbl_80451368->resetProcess(0x1e, false); + lbl_80450BB9 = true; + } +} + +bool mDoAud_resetRecover(void) { + if (lbl_80450BB9) { + bool hasReset = lbl_80451368->hasReset(); + if (hasReset == false) { + return false; + } + lbl_80451368->resetRecover(); + lbl_80450BB9 = false; + } + return true; +} + +extern "C" { +asm void __sinit_m_Do_audio_cpp(void) { + nofralloc +#include "m_Do/m_Do_audio/asm/__sinit_m_Do_audio_cpp.s" +} +} + +asm mDoAud_zelAudio_c::~mDoAud_zelAudio_c() { + nofralloc +#include "m_Do/m_Do_audio/asm/mDoAud_zelAudio_c_NS_dtor.s" +} + +asm Z2AudioMgr::~Z2AudioMgr(void) { + nofralloc +#include "m_Do/m_Do_audio/asm/Z2AudioMgr_NS_dtor.s" +} + +asm JAISoundHandle::~JAISoundHandle() { + nofralloc +#include "m_Do/m_Do_audio/asm/JAISoundHandle_NS_dtor.s" +} + +asm Z2MultiSeObj::~Z2MultiSeObj() { + nofralloc +#include "m_Do/m_Do_audio/asm/Z2MultiSeObj_NS_dtor.s" +} + +asm JAISeCategoryMgr::~JAISeCategoryMgr() { + nofralloc +#include "m_Do/m_Do_audio/asm/JAISeCategoryMgr_NS_dtor.s" +} \ No newline at end of file diff --git a/src/m_Do/m_Do_main.cpp b/src/m_Do/m_Do_main.cpp index 8534743a3a4..7001ca9f9a3 100644 --- a/src/m_Do/m_Do_main.cpp +++ b/src/m_Do/m_Do_main.cpp @@ -3,6 +3,7 @@ #include "d/d_com/d_com_inf_game/d_com_inf_game.h" #include "dvd/dvd.h" #include "global.h" +#include "m_Do/m_Do_audio/m_Do_audio.h" #include "m_Do/m_Do_controller_pad/m_Do_controller_pad.h" #include "m_Do/m_Do_dvd_thread/m_Do_dvd_thread.h" #include "m_Do/m_Do_ext/m_Do_ext.h"