Z2AudioMgr / various JAudio setup (#152)

* audioMgr setup

* bunch of JAudio setup
This commit is contained in:
TakaRikka
2021-09-30 07:13:49 -07:00
committed by GitHub
parent 3bcaa29759
commit d2c0f942e5
103 changed files with 1329 additions and 2696 deletions
-5
View File
@@ -671,11 +671,6 @@ struct JASKernel {
/* 80290B08 */ void getAramHeap();
};
template <typename A0>
struct JAISoundStrategyMgr {};
/* JAISoundStrategyMgr<JAISeq> */
struct JAISoundStrategyMgr__template1 {};
struct JAISeqMgr {};
struct JAISeq {
+47 -149
View File
@@ -15,109 +15,22 @@ struct mDoRst {
static u8 mResetData[4 + 4 /* padding */];
};
struct JKRHeap {
/* 802CE500 */ void free(void*, JKRHeap*);
/* 802CE7B0 */ void changeGroupID(u8);
static u8 sCurrentHeap[4];
};
struct mDoDvdThd_toMainRam_c {
/* 80016394 */ void create(char const*, u8, JKRHeap*);
};
struct JKRArchive {
struct EMountMode {};
};
struct mDoDvdThd_mountXArchive_c {
/* 800161E0 */ void create(char const*, u8, JKRArchive::EMountMode, JKRHeap*);
};
struct mDoAud_zelAudio_c {
/* 80006FB4 */ void reset();
/* 80007368 */ ~mDoAud_zelAudio_c();
};
struct Z2SceneMgr {
/* 802B697C */ void setFadeOutStart(u8);
/* 802B6A18 */ void setFadeInStart(u8);
/* 802B6AF8 */ void setSceneName(char*, s32, s32);
/* 802B9D40 */ void load1stDynamicWave();
};
struct Z2MultiSeObj {
/* 80007888 */ ~Z2MultiSeObj();
};
struct Z2MultiSeMgr {
/* 802AEB34 */ ~Z2MultiSeMgr();
};
struct JGeometry {
template <typename A1>
struct TVec3 {};
/* TVec3<f32> */
struct TVec3__template0 {};
};
struct JKRSolidHeap {
/* 802D0BF4 */ void adjustSize();
};
struct JAISoundID {};
struct JAISoundHandle {
/* 80007838 */ ~JAISoundHandle();
/* 802A2184 */ void releaseSound();
};
struct Z2AudioMgr {
/* 800073C8 */ ~Z2AudioMgr();
/* 802CD248 */ Z2AudioMgr();
/* 802CD34C */ void init(JKRSolidHeap*, u32, void*, JKRArchive*);
/* 802CD888 */ void setOutputMode(u32);
/* 802CD904 */ void gframeProcess();
/* 802CD974 */ void resetProcess(u32, bool);
/* 802CD9CC */ void resetRecover();
/* 802CDA6C */ void hasReset() const;
/* 802CDB1C */ void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3<f32> const*);
static u8 mAudioMgrPtr[4 + 4 /* padding */];
};
struct Z2Audience {
/* 802BD1FC */ ~Z2Audience();
};
struct JSUPtrList {
/* 802DBEAC */ ~JSUPtrList();
};
struct JASAudioReseter {
/* 8029D0FC */ ~JASAudioReseter();
};
struct JAIStreamDataMgr {
/* 802A3AD8 */ ~JAIStreamDataMgr();
};
struct JAISoundStarter {
/* 802A2F88 */ ~JAISoundStarter();
};
struct JAISoundInfo {
/* 802A2D50 */ ~JAISoundInfo();
};
struct JAISeqDataUser {
/* 802A1774 */ ~JAISeqDataUser();
};
struct JAISeCategoryMgr {
/* 800078DC */ ~JAISeCategoryMgr();
};
//
// Forward References:
//
@@ -143,7 +56,6 @@ extern "C" extern char const* const m_Do_m_Do_audio__stringBase0;
// External References:
//
extern "C" void OSReport_Error();
extern "C" void create__25mDoDvdThd_mountXArchive_cFPCcUcQ210JKRArchive10EMountModeP7JKRHeap();
extern "C" void create__21mDoDvdThd_toMainRam_cFPCcUcP7JKRHeap();
extern "C" void __dt__15JASAudioReseterFv();
@@ -172,7 +84,6 @@ extern "C" void changeGroupID__7JKRHeapFUc();
extern "C" void __dl__FPv();
extern "C" void adjustSize__12JKRSolidHeapFv();
extern "C" void __dt__10JSUPtrListFv();
extern "C" void OSGetSoundMode();
extern "C" void __register_global_object();
extern "C" void __destroy_arr();
extern "C" void _savegpr_29();
@@ -214,18 +125,20 @@ extern "C" u8 sCurrentHeap__7JKRHeap[4];
/* 80450BB8 0001+00 data_80450BB8 None */
/* 80450BB9 0001+00 data_80450BB9 None */
/* 80450BBA 0002+00 data_80450BBA None */
extern u8 struct_80450BB8[4];
u8 struct_80450BB8[4];
bool struct_80450BB8;
#pragma push
#pragma force_active on
bool sResetFlag;
extern bool data_80450bba;
bool data_80450bba;
#pragma pop
/* 80006FB4-80006FC0 0018F4 000C+00 1/1 0/0 0/0 .text reset__17mDoAud_zelAudio_cFv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void mDoAud_zelAudio_c::reset() {
nofralloc
#include "asm/m_Do/m_Do_audio/reset__17mDoAud_zelAudio_cFv.s"
void mDoAud_zelAudio_c::reset() {
data_80450bba = false;
}
#pragma pop
/* ############################################################################################## */
/* 80373D68-80373D68 0003C8 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
@@ -246,14 +159,13 @@ static u8 lit_3620[12];
static u8 g_mDoAud_zelAudio[5004];
/* 80450BBC-80450BC0 0000BC 0004+00 1/1 1/1 0/0 .sbss g_mDoAud_audioHeap */
extern u8 g_mDoAud_audioHeap[4];
u8 g_mDoAud_audioHeap[4];
JKRSolidHeap* g_mDoAud_audioHeap;
/* 80450BC0-80450BC4 0000C0 0004+00 1/1 0/0 0/0 .sbss l_affCommand */
static u8 l_affCommand[4];
static mDoDvdThd_toMainRam_c* l_affCommand;
/* 80450BC4-80450BC8 0000C4 0004+00 1/1 0/0 0/0 .sbss l_arcCommand */
static u8 l_arcCommand[4];
static mDoDvdThd_mountXArchive_c* l_arcCommand;
/* 80006FC0-80007164 001900 01A4+00 1/1 0/0 0/0 .text mDoAud_Create__Fv */
#pragma push
@@ -276,64 +188,45 @@ asm void mDoAud_Execute() {
#pragma pop
/* 800071BC-800071F8 001AFC 003C+00 0/0 3/3 0/0 .text mDoAud_setSceneName__FPCcll */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void mDoAud_setSceneName(char const* param_0, s32 param_1, s32 param_2) {
nofralloc
#include "asm/m_Do/m_Do_audio/mDoAud_setSceneName__FPCcll.s"
void mDoAud_setSceneName(char const* spot, s32 room, s32 layer) {
Z2AudioMgr::getInterface()->mSceneMgr.setSceneName((char*)spot, room, layer);
}
#pragma pop
/* 800071F8-80007224 001B38 002C+00 0/0 1/1 0/0 .text mDoAud_load1stDynamicWave__Fv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void mDoAud_load1stDynamicWave() {
nofralloc
#include "asm/m_Do/m_Do_audio/mDoAud_load1stDynamicWave__Fv.s"
s32 mDoAud_load1stDynamicWave() {
Z2AudioMgr::getInterface()->mSceneMgr.load1stDynamicWave();
return 1;
}
#pragma pop
/* 80007224-80007254 001B64 0030+00 0/0 2/2 0/0 .text mDoAud_setFadeOutStart__FUc */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void mDoAud_setFadeOutStart(u8 param_0) {
nofralloc
#include "asm/m_Do/m_Do_audio/mDoAud_setFadeOutStart__FUc.s"
void mDoAud_setFadeOutStart(u8 param_0) {
Z2AudioMgr::getInterface()->mSceneMgr.setFadeOutStart((u8)param_0);
}
#pragma pop
/* 80007254-80007284 001B94 0030+00 0/0 2/2 1/1 .text mDoAud_setFadeInStart__FUc */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void mDoAud_setFadeInStart(u8 param_0) {
nofralloc
#include "asm/m_Do/m_Do_audio/mDoAud_setFadeInStart__FUc.s"
void mDoAud_setFadeInStart(u8 param_0) {
Z2AudioMgr::getInterface()->mSceneMgr.setFadeInStart((u8)param_0);
}
#pragma pop
/* 80007284-800072C4 001BC4 0040+00 0/0 1/1 0/0 .text mDoAud_resetProcess__Fv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void mDoAud_resetProcess() {
nofralloc
#include "asm/m_Do/m_Do_audio/mDoAud_resetProcess__Fv.s"
void mDoAud_resetProcess() {
if (!mDoAud_zelAudio_c::isResetFlag()) {
Z2AudioMgr::getInterface()->resetProcess(0x1E, false);
mDoAud_zelAudio_c::onResetFlag();
}
}
#pragma pop
/* 800072C4-80007318 001C04 0054+00 0/0 2/2 0/0 .text mDoAud_resetRecover__Fv */
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm void mDoAud_resetRecover() {
nofralloc
#include "asm/m_Do/m_Do_audio/mDoAud_resetRecover__Fv.s"
bool mDoAud_resetRecover() {
if (mDoAud_zelAudio_c::isResetFlag()) {
if (!Z2AudioMgr::getInterface()->hasReset()) {
return 0;
}
Z2AudioMgr::getInterface()->resetRecover();
mDoAud_zelAudio_c::offResetFlag();
}
return 1;
}
#pragma pop
/* ############################################################################################## */
/* 803A2F40-803A2F4C 000060 000C+00 2/2 0/0 0/0 .data __vt__17mDoAud_zelAudio_c */
@@ -362,7 +255,8 @@ REGISTER_CTORS(0x80007318, __sinit_m_Do_audio_cpp);
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm mDoAud_zelAudio_c::~mDoAud_zelAudio_c() {
extern "C" asm void __dt__17mDoAud_zelAudio_cFv() {
// asm mDoAud_zelAudio_c::~mDoAud_zelAudio_c() {
nofralloc
#include "asm/m_Do/m_Do_audio/__dt__17mDoAud_zelAudio_cFv.s"
}
@@ -383,7 +277,8 @@ SECTION_DATA extern void* __vt__12JAUSoundInfo[4 + 1 /* padding */] = {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm Z2AudioMgr::~Z2AudioMgr() {
extern "C" asm void __dt__10Z2AudioMgrFv() {
// asm Z2AudioMgr::~Z2AudioMgr() {
nofralloc
#include "asm/m_Do/m_Do_audio/__dt__10Z2AudioMgrFv.s"
}
@@ -393,7 +288,8 @@ asm Z2AudioMgr::~Z2AudioMgr() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm JAISoundHandle::~JAISoundHandle() {
extern "C" asm void __dt__14JAISoundHandleFv() {
// asm JAISoundHandle::~JAISoundHandle() {
nofralloc
#include "asm/m_Do/m_Do_audio/__dt__14JAISoundHandleFv.s"
}
@@ -403,7 +299,8 @@ asm JAISoundHandle::~JAISoundHandle() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm Z2MultiSeObj::~Z2MultiSeObj() {
extern "C" asm void __dt__12Z2MultiSeObjFv() {
// asm Z2MultiSeObj::~Z2MultiSeObj() {
nofralloc
#include "asm/m_Do/m_Do_audio/__dt__12Z2MultiSeObjFv.s"
}
@@ -413,7 +310,8 @@ asm Z2MultiSeObj::~Z2MultiSeObj() {
#pragma push
#pragma optimization_level 0
#pragma optimizewithasm off
asm JAISeCategoryMgr::~JAISeCategoryMgr() {
extern "C" asm void __dt__16JAISeCategoryMgrFv() {
// asm JAISeCategoryMgr::~JAISeCategoryMgr() {
nofralloc
#include "asm/m_Do/m_Do_audio/__dt__16JAISeCategoryMgrFv.s"
}