// // Generated By: dol2asm // Translation Unit: Z2SoundMgr // #include "Z2AudioLib/Z2SoundMgr.h" #include "dol2asm.h" #include "dolphin/types.h" // // Types: // struct Z2SpeechMgr2 { /* 802CC190 */ void speakOneWord(bool); }; struct JAISoundID {}; struct JAISoundHandle {}; struct JAISound {}; struct JGeometry { template struct TVec3 {}; /* TVec3 */ struct TVec3__template0 {}; }; struct Z2SoundMgr { /* 802A9E80 */ Z2SoundMgr(); /* 802A9EE8 */ void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); /* 802AA1B0 */ void calc(); /* 802AA270 */ void setIIR(JAISound*, s16 const*); /* 802AA33C */ void setFilterOff(JAISound*); /* 802AA430 */ void resetFilterAll(); /* 802AA528 */ void mixOut(); /* 802AA67C */ void framework(); /* 802AA6B0 */ void pauseAllGameSound(bool); /* 802AA7DC */ void stopSoundID(JAISoundID); /* 802AA84C */ void stopSync(); /* 802AA8C8 */ void stop(); /* 802AA908 */ void initParams(); /* 802AA9E8 */ void multiVolumeSoundID(JAISoundID, f32); /* 802AAAC4 */ void isPlayingSoundID(JAISoundID); }; struct Z2SoundInfo { /* 802BBAC8 */ void getSwBit(JAISoundID) const; }; struct Z2SeqMgr { /* 802AF010 */ void bgmStart(u32, u32, s32); /* 802AFF8C */ void changeBgmStatus(s32); /* 802B299C */ void onVariantBgmJumpEnd(bool); /* 802B3FEC */ void setChildTrackVolume(JAISoundHandle*, int, f32, u32, f32, f32); /* 802B5750 */ void onFieldBgmJumpStart(); /* 802B579C */ void onFieldBgmJumpEnd(); }; struct Z2SeMgr { /* 802AD9F4 */ void seMoveVolumeAll(f32, u32); }; struct JAUSectionHeap { /* 802A5EC0 */ void loadDynamicSeq(JAISoundID, bool); /* 802A5EF8 */ void releaseIdleDynamicSeqDataBlock(); }; struct JASTrack { /* 8029285C */ void setFIR(s16 const*); /* 8029289C */ void setIIR(s16 const*); /* 80292918 */ void writePort(u32, u16); }; struct JASDriver { /* 8029E188 */ void waitSubFrame(); }; struct JAIStreamMgr { /* 802A3B68 */ JAIStreamMgr(bool); /* 802A3C3C */ void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); /* 802A3EBC */ void calc(); /* 802A4028 */ void stop(); /* 802A4068 */ void stop(u32); /* 802A40B8 */ void stopSoundID(JAISoundID); /* 802A4118 */ void mixOut(); }; struct JAISoundParamsMove { /* 802A2DB4 */ void moveVolume(f32, u32); }; struct JAISeqMgr { /* 802A1914 */ JAISeqMgr(bool); /* 802A1B48 */ void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); /* 802A1C90 */ void calc(); /* 802A1DFC */ void stop(); /* 802A1E8C */ void stopSoundID(JAISoundID); /* 802A1EFC */ void mixOut(); }; struct JAISeMgr { /* 802A0074 */ JAISeMgr(bool); /* 802A02A0 */ void stop(); /* 802A02F4 */ void stopSoundID(JAISoundID); /* 802A0358 */ void initParams(); /* 802A0574 */ void calc(); /* 802A0704 */ void mixOut(); /* 802A0768 */ void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); /* 802A08D0 */ void getNumActiveSe() const; }; struct JAISeCategoryMgr { /* 8029FEEC */ void pause(bool); }; // // Forward References: // void seqCallback(JASTrack*, u16); extern "C" void seqCallback__FP8JASTrackUs(); extern "C" void __ct__10Z2SoundMgrFv(); extern "C" void func_802A9EE8(); extern "C" void calc__10Z2SoundMgrFv(); extern "C" void setIIR__10Z2SoundMgrFP8JAISoundPCs(); extern "C" void setFilterOff__10Z2SoundMgrFP8JAISound(); extern "C" void resetFilterAll__10Z2SoundMgrFv(); extern "C" void mixOut__10Z2SoundMgrFv(); extern "C" void framework__10Z2SoundMgrFv(); extern "C" void pauseAllGameSound__10Z2SoundMgrFb(); extern "C" void stopSoundID__10Z2SoundMgrF10JAISoundID(); extern "C" void stopSync__10Z2SoundMgrFv(); extern "C" void stop__10Z2SoundMgrFv(); extern "C" void initParams__10Z2SoundMgrFv(); extern "C" void multiVolumeSoundID__10Z2SoundMgrF10JAISoundIDf(); extern "C" void isPlayingSoundID__10Z2SoundMgrF10JAISoundID(); extern "C" extern char const* const Z2SoundMgr__stringBase0; extern "C" extern void* __vt__10Z2SoundMgr[3 + 1 /* padding */]; // // External References: // void dComIfGs_staffroll_next_go(); extern "C" void dComIfGs_staffroll_next_go__Fv(); extern "C" void setFIR__8JASTrackFPCs(); extern "C" void setIIR__8JASTrackFPCs(); extern "C" void writePort__8JASTrackFUlUs(); extern "C" void waitSubFrame__9JASDriverFv(); extern "C" void pause__16JAISeCategoryMgrFb(); extern "C" void __ct__8JAISeMgrFb(); extern "C" void stop__8JAISeMgrFv(); extern "C" void stopSoundID__8JAISeMgrF10JAISoundID(); extern "C" void initParams__8JAISeMgrFv(); extern "C" void calc__8JAISeMgrFv(); extern "C" void mixOut__8JAISeMgrFv(); extern "C" void func_802A0768(); extern "C" void getNumActiveSe__8JAISeMgrCFv(); extern "C" void __ct__9JAISeqMgrFb(); extern "C" void func_802A1B48(); extern "C" void calc__9JAISeqMgrFv(); extern "C" void stop__9JAISeqMgrFv(); extern "C" void stopSoundID__9JAISeqMgrF10JAISoundID(); extern "C" void mixOut__9JAISeqMgrFv(); extern "C" void moveVolume__18JAISoundParamsMoveFfUl(); extern "C" void __ct__12JAIStreamMgrFb(); extern "C" void func_802A3C3C(); extern "C" void calc__12JAIStreamMgrFv(); extern "C" void stop__12JAIStreamMgrFv(); extern "C" void stop__12JAIStreamMgrFUl(); extern "C" void stopSoundID__12JAIStreamMgrF10JAISoundID(); extern "C" void mixOut__12JAIStreamMgrFv(); extern "C" void loadDynamicSeq__14JAUSectionHeapF10JAISoundIDb(); extern "C" void releaseIdleDynamicSeqDataBlock__14JAUSectionHeapFv(); extern "C" void seMoveVolumeAll__7Z2SeMgrFfUl(); extern "C" void bgmStart__8Z2SeqMgrFUlUll(); extern "C" void changeBgmStatus__8Z2SeqMgrFl(); extern "C" void onVariantBgmJumpEnd__8Z2SeqMgrFb(); extern "C" void setChildTrackVolume__8Z2SeqMgrFP14JAISoundHandleifUlff(); extern "C" void onFieldBgmJumpStart__8Z2SeqMgrFv(); extern "C" void onFieldBgmJumpEnd__8Z2SeqMgrFv(); extern "C" void getSwBit__11Z2SoundInfoCF10JAISoundID(); extern "C" void speakOneWord__12Z2SpeechMgr2Fb(); extern "C" void _savegpr_24(); extern "C" void _savegpr_25(); extern "C" void _savegpr_26(); extern "C" void _savegpr_27(); extern "C" void _savegpr_28(); extern "C" void _restgpr_24(); extern "C" void _restgpr_25(); extern "C" void _restgpr_26(); extern "C" void _restgpr_27(); extern "C" void _restgpr_28(); extern "C" void sprintf(); extern "C" extern u8 const CUTOFF_TO_IIR_TABLE__7JASCalc[1024]; extern "C" extern u8 data_80450B4C[4]; extern "C" extern u8 data_80450B60[4]; extern "C" extern u8 data_80450B70[4]; extern "C" extern u8 data_80450B80[4]; extern "C" extern u8 data_80450B84[4]; extern "C" extern u8 data_80450B88[4]; extern "C" extern u8 data_80450CC0[4 + 4 /* padding */]; extern "C" extern u8 struct_80451340[8]; // // Declarations: // /* ############################################################################################## */ /* 803C9D18-803C9D70 0058+00 s=1 e=0 z=0 None .data @3690 */ SECTION_DATA static void* lit_3690[22] = { (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x40), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x7C), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x88), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x94), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0xA4), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0xB4), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0xC4), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1AC), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1BC), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1D0), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x1CC), (void*)(((char*)seqCallback__FP8JASTrackUs) + 0x148), }; /* 80455838-8045583C 0004+00 s=5 e=0 z=0 None .sdata2 @3688 */ SECTION_SDATA2 static f32 lit_3688 = 1.0f; /* 8045583C-80455840 0004+00 s=1 e=0 z=0 None .sdata2 @3689 */ SECTION_SDATA2 static f32 lit_3689 = -1.0f; /* 802A9BC8-802A9E80 02B8+00 s=1 e=1 z=0 None .text seqCallback__FP8JASTrackUs */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void seqCallback(JASTrack* param_0, u16 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/seqCallback__FP8JASTrackUs.s" } #pragma pop /* ############################################################################################## */ /* 803C9D70-803C9D80 000C+04 s=1 e=1 z=0 None .data __vt__10Z2SoundMgr */ SECTION_DATA void* __vt__10Z2SoundMgr[3 + 1 /* padding */] = { (void*)NULL, (void*)NULL, (void*)func_802A9EE8, /* padding */ NULL, }; /* 802A9E80-802A9EE8 0068+00 s=0 e=1 z=0 None .text __ct__10Z2SoundMgrFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm Z2SoundMgr::Z2SoundMgr() { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/__ct__10Z2SoundMgrFv.s" } #pragma pop /* ############################################################################################## */ /* 8039B9C0-8039B9D0 0010+00 s=1 e=0 z=0 None .rodata cResetFilterTable */ SECTION_RODATA static u8 const cResetFilterTable[16] = { 0x7F, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, }; /* 8039B9D0-8039B9F0 001D+03 s=1 e=0 z=0 None .rodata @stringBase0 */ #pragma push #pragma force_active on #pragma section ".dead" SECTION_DEAD char const* const stringBase_8039B9D0 = "Unknown Sound-Type id :%08x\n"; /* @stringBase0 padding */ SECTION_DEAD static char const* const pad_8039B9ED = "\0\0"; #pragma pop /* 80455840-80455844 0004+00 s=1 e=0 z=0 None .sdata2 @3904 */ SECTION_SDATA2 static f32 lit_3904 = 3.0f / 10.0f; /* 80455844-80455848 0004+00 s=3 e=0 z=0 None .sdata2 @3905 */ SECTION_SDATA2 static u8 lit_3905[4] = { 0x00, 0x00, 0x00, 0x00, }; /* 80455848-80455850 0008+00 s=2 e=0 z=0 None .sdata2 @3909 */ SECTION_SDATA2 static f64 lit_3909 = 4503599627370496.0 /* cast u32 to float */; /* 802A9EE8-802AA1B0 02C8+00 s=1 e=0 z=0 None .text * startSound__10Z2SoundMgrF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3 */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1, JGeometry::TVec3 const* param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/func_802A9EE8.s" } #pragma pop /* 802AA1B0-802AA270 00C0+00 s=2 e=0 z=0 None .text calc__10Z2SoundMgrFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::calc() { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/calc__10Z2SoundMgrFv.s" } #pragma pop /* 802AA270-802AA33C 00CC+00 s=1 e=2 z=0 None .text setIIR__10Z2SoundMgrFP8JAISoundPCs */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::setIIR(JAISound* param_0, s16 const* param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/setIIR__10Z2SoundMgrFP8JAISoundPCs.s" } #pragma pop /* 802AA33C-802AA430 00F4+00 s=1 e=0 z=0 None .text setFilterOff__10Z2SoundMgrFP8JAISound */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::setFilterOff(JAISound* param_0) { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/setFilterOff__10Z2SoundMgrFP8JAISound.s" } #pragma pop /* 802AA430-802AA528 00F8+00 s=0 e=1 z=0 None .text resetFilterAll__10Z2SoundMgrFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::resetFilterAll() { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/resetFilterAll__10Z2SoundMgrFv.s" } #pragma pop /* 802AA528-802AA67C 0154+00 s=2 e=0 z=0 None .text mixOut__10Z2SoundMgrFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::mixOut() { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/mixOut__10Z2SoundMgrFv.s" } #pragma pop /* 802AA67C-802AA6B0 0034+00 s=0 e=1 z=0 None .text framework__10Z2SoundMgrFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::framework() { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/framework__10Z2SoundMgrFv.s" } #pragma pop /* 802AA6B0-802AA7DC 012C+00 s=0 e=1 z=0 None .text pauseAllGameSound__10Z2SoundMgrFb */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::pauseAllGameSound(bool param_0) { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/pauseAllGameSound__10Z2SoundMgrFb.s" } #pragma pop /* 802AA7DC-802AA84C 0070+00 s=0 e=1 z=0 None .text stopSoundID__10Z2SoundMgrF10JAISoundID */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::stopSoundID(JAISoundID param_0) { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/stopSoundID__10Z2SoundMgrF10JAISoundID.s" } #pragma pop /* 802AA84C-802AA8C8 007C+00 s=0 e=1 z=0 None .text stopSync__10Z2SoundMgrFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::stopSync() { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/stopSync__10Z2SoundMgrFv.s" } #pragma pop /* 802AA8C8-802AA908 0040+00 s=1 e=0 z=0 None .text stop__10Z2SoundMgrFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::stop() { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/stop__10Z2SoundMgrFv.s" } #pragma pop /* ############################################################################################## */ /* 80455850-80455858 0004+04 s=1 e=0 z=0 None .sdata2 @4313 */ SECTION_SDATA2 static f32 lit_4313[1 + 1 /* padding */] = { 0.5f, /* padding */ 0.0f, }; /* 802AA908-802AA9E8 00E0+00 s=0 e=1 z=0 None .text initParams__10Z2SoundMgrFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::initParams() { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/initParams__10Z2SoundMgrFv.s" } #pragma pop /* 802AA9E8-802AAAC4 00DC+00 s=0 e=1 z=0 None .text * multiVolumeSoundID__10Z2SoundMgrF10JAISoundIDf */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::multiVolumeSoundID(JAISoundID param_0, f32 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/multiVolumeSoundID__10Z2SoundMgrF10JAISoundIDf.s" } #pragma pop /* 802AAAC4-802AAB94 00D0+00 s=1 e=0 z=0 None .text isPlayingSoundID__10Z2SoundMgrF10JAISoundID */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundMgr::isPlayingSoundID(JAISoundID param_0) { nofralloc #include "asm/Z2AudioLib/Z2SoundMgr/isPlayingSoundID__10Z2SoundMgrF10JAISoundID.s" } #pragma pop