// // Generated By: dol2asm // Translation Unit: JAISe // #include "JSystem/JAudio2/JAISe.h" #include "dol2asm.h" #include "dolphin/types.h" // // Types: // struct JSUPtrLink { /* 802DBDFC */ JSUPtrLink(void*); }; struct JGeometry { template struct TVec3 {}; /* TVec3 */ struct TVec3__template0 {}; }; struct JASSoundParams {}; struct JASTrack { /* 80291228 */ JASTrack(); /* 80291444 */ void setChannelMgrCount(u32); /* 802915D4 */ void init(); /* 802919F4 */ void assignExtBuffer(u32, JASSoundParams*); /* 80291A08 */ void setSeqData(void*, u32); /* 80291A28 */ void startSeq(); /* 80291A78 */ void stopSeq(); /* 802927A0 */ void mute(bool); /* 80292A3C */ void pause(bool); /* 80292B8C */ void setTempoRate(f32); }; template struct JAISoundStrategyMgr {}; /* JAISoundStrategyMgr */ struct JAISoundStrategyMgr__template0 {}; struct JAISoundParams { /* 802A2280 */ void mixOutAll(JASSoundParams const&, JASSoundParams*, f32); }; struct JAISoundID {}; struct JAISoundActivity {}; struct JAIAudience {}; struct JAISound { /* 802A22F8 */ JAISound(); /* 802A2328 */ void start_JAISound_(JAISoundID, JGeometry::TVec3 const*, JAIAudience*); /* 802A25E0 */ bool asSeq(); /* 802A25E8 */ bool asStream(); /* 802A25F0 */ void die_JAISound_(); /* 802A266C */ void increasePrepareCount_JAISound_(); /* 802A26B8 */ void calc_JAISound_(); /* 802A29DC */ void initTrack_JAISound_(JASTrack*); }; struct JAISeMgr {}; struct JAISe { /* 8029F03C */ JAISe(JAISeMgr*, JAISoundStrategyMgr*, u32); /* 8029F0F8 */ void mixOut_(JASSoundParams const&); /* 8029F214 */ void stopTrack_(); /* 8029F250 */ void startTrack_(JASSoundParams const&); /* 8029F304 */ void JAISeCategoryMgr_mixOut_(bool, JASSoundParams const&, JAISoundActivity); /* 8029F4CC */ void JAISeCategoryMgr_calc_(); /* 8029F5C8 */ void JAISound_tryDie_(); /* 8029F650 */ void JAISeMgr_startID_(JAISoundID, JGeometry::TVec3 const*, JAIAudience*); /* 8029F6D8 */ bool getNumChild() const; /* 8029F6E0 */ bool getChild(int); /* 8029F6E8 */ void releaseChild(int); /* 8029F6EC */ void prepare_getSeqData_(); /* 8029F78C */ void prepare_(); /* 8029F84C */ void getTrack(); /* 8029F854 */ void getChildTrack(int); /* 8029F864 */ void asSe(); /* 8029F868 */ void getTempoMgr(); }; // // Forward References: // extern "C" void func_8029F03C(); extern "C" void mixOut___5JAISeFRC14JASSoundParams(); extern "C" void stopTrack___5JAISeFv(); extern "C" void startTrack___5JAISeFRC14JASSoundParams(); extern "C" void JAISeCategoryMgr_mixOut___5JAISeFbRC14JASSoundParams16JAISoundActivity(); extern "C" void JAISeCategoryMgr_calc___5JAISeFv(); extern "C" void JAISound_tryDie___5JAISeFv(); extern "C" void func_8029F650(); extern "C" bool getNumChild__5JAISeCFv(); extern "C" bool getChild__5JAISeFi(); extern "C" void releaseChild__5JAISeFi(); extern "C" void prepare_getSeqData___5JAISeFv(); extern "C" void prepare___5JAISeFv(); extern "C" void getTrack__5JAISeFv(); extern "C" void getChildTrack__5JAISeFi(); extern "C" void asSe__5JAISeFv(); extern "C" void getTempoMgr__5JAISeFv(); extern "C" static void func_8029F870(); extern "C" static void func_8029F878(); extern "C" static void func_8029F880(); extern "C" static void func_8029F888(); extern "C" static void func_8029F890(); extern "C" static void func_8029F898(); extern "C" static void func_8029F8A0(); extern "C" static void func_8029F8A8(); extern "C" extern void* __vt__5JAISe[22]; // // External References: // extern "C" void __ct__8JASTrackFv(); extern "C" void setChannelMgrCount__8JASTrackFUl(); extern "C" void init__8JASTrackFv(); extern "C" void assignExtBuffer__8JASTrackFUlP14JASSoundParams(); extern "C" void setSeqData__8JASTrackFPvUl(); extern "C" void startSeq__8JASTrackFv(); extern "C" void stopSeq__8JASTrackFv(); extern "C" void mute__8JASTrackFb(); extern "C" void pause__8JASTrackFb(); extern "C" void setTempoRate__8JASTrackFf(); extern "C" void mixOutAll__14JAISoundParamsFRC14JASSoundParamsP14JASSoundParamsf(); extern "C" void __ct__8JAISoundFv(); extern "C" void func_802A2328(); extern "C" bool asSeq__8JAISoundFv(); extern "C" bool asStream__8JAISoundFv(); extern "C" void die_JAISound___8JAISoundFv(); extern "C" void increasePrepareCount_JAISound___8JAISoundFv(); extern "C" void calc_JAISound___8JAISoundFv(); extern "C" void initTrack_JAISound___8JAISoundFP8JASTrack(); extern "C" void __ct__10JSUPtrLinkFPv(); extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); // // Declarations: // /* ############################################################################################## */ /* 803C9858-803C98B0 0058+00 s=1 e=1 z=0 None .data __vt__5JAISe */ SECTION_DATA void* __vt__5JAISe[22] = { (void*)NULL /* RTTI */, (void*)NULL, (void*)NULL, (void*)NULL, (void*)func_8029F8A8, (void*)func_8029F8A0, (void*)func_8029F898, (void*)func_8029F890, (void*)asSeq__8JAISoundFv, (void*)asStream__8JAISoundFv, (void*)func_8029F888, (void*)func_8029F880, (void*)func_8029F878, (void*)func_8029F870, (void*)getNumChild__5JAISeCFv, (void*)getChild__5JAISeFi, (void*)releaseChild__5JAISeFi, (void*)getTrack__5JAISeFv, (void*)getChildTrack__5JAISeFi, (void*)asSe__5JAISeFv, (void*)getTempoMgr__5JAISeFv, (void*)JAISound_tryDie___5JAISeFv, }; /* 80455778-8045577C 0004+00 s=2 e=0 z=0 None .sdata2 @626 */ SECTION_SDATA2 static f32 lit_626 = 1.0f; /* 8045577C-80455780 0004+00 s=2 e=0 z=0 None .sdata2 @627 */ SECTION_SDATA2 static u8 lit_627[4] = { 0x00, 0x00, 0x00, 0x00, }; /* 80455780-80455784 0004+00 s=2 e=0 z=0 None .sdata2 @628 */ SECTION_SDATA2 static f32 lit_628 = 0.5f; /* 8029F03C-8029F0F8 00BC+00 s=0 e=1 z=0 None .text * __ct__5JAISeFP8JAISeMgrP27JAISoundStrategyMgr<5JAISe>Ul */ // 8029F04C: 803621D8 (_savegpr_28) // 8029F064: 802DBDFC (__ct__10JSUPtrLinkFPv) // 8029F06C: 802A22F8 (__ct__8JAISoundFv) // 8029F070: 803C9858 (__vt__5JAISe) // 8029F074: 803C9858 (__vt__5JAISe) // 8029F084: 80455778 (lit_626) // 8029F090: 8045577C (lit_627) // 8029F098: 80455780 (lit_628) // 8029F0A8: 80291228 (__ct__8JASTrackFv) // 8029F0B8: 80455778 (lit_626) // 8029F0C0: 8045577C (lit_627) // 8029F0E4: 80362224 (_restgpr_28) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm JAISe::JAISe(JAISeMgr* param_0, JAISoundStrategyMgr* param_1, u32 param_2) { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F03C.s" } #pragma pop /* 8029F0F8-8029F214 011C+00 s=1 e=0 z=0 None .text mixOut___5JAISeFRC14JASSoundParams */ // 8029F108: 803621DC (_savegpr_29) // 8029F11C: 80292B8C (setTempoRate__8JASTrackFf) // 8029F120: 80455778 (lit_626) // 8029F12C: 8045577C (lit_627) // 8029F134: 80455780 (lit_628) // 8029F150: 802A2280 (mixOutAll__14JAISoundParamsFRC14JASSoundParamsP14JASSoundParamsf) // 8029F200: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::mixOut_(JASSoundParams const& param_0) { nofralloc #include "asm/JSystem/JAudio2/JAISe/mixOut___5JAISeFRC14JASSoundParams.s" } #pragma pop /* 8029F214-8029F250 003C+00 s=1 e=0 z=0 None .text stopTrack___5JAISeFv */ // 8029F23C: 80291A78 (stopSeq__8JASTrackFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::stopTrack_() { nofralloc #include "asm/JSystem/JAudio2/JAISe/stopTrack___5JAISeFv.s" } #pragma pop /* 8029F250-8029F304 00B4+00 s=1 e=0 z=0 None .text startTrack___5JAISeFRC14JASSoundParams */ // 8029F27C: 802915D4 (init__8JASTrackFv) // 8029F294: 802A29DC (initTrack_JAISound___8JAISoundFP8JASTrack) // 8029F2AC: 802A2280 (mixOutAll__14JAISoundParamsFRC14JASSoundParamsP14JASSoundParamsf) // 8029F2B8: 80291444 (setChannelMgrCount__8JASTrackFUl) // 8029F2C8: 802919F4 (assignExtBuffer__8JASTrackFUlP14JASSoundParams) // 8029F2E0: 80291A08 (setSeqData__8JASTrackFPvUl) // 8029F2E8: 80291A28 (startSeq__8JASTrackFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::startTrack_(JASSoundParams const& param_0) { nofralloc #include "asm/JSystem/JAudio2/JAISe/startTrack___5JAISeFRC14JASSoundParams.s" } #pragma pop /* ############################################################################################## */ /* 80455784-80455788 0004+00 s=2 e=0 z=0 None .sdata2 @736 */ SECTION_SDATA2 static f32 lit_736 = 1.0f / 100.0f; /* 8029F304-8029F4CC 01C8+00 s=0 e=1 z=0 None .text * JAISeCategoryMgr_mixOut___5JAISeFbRC14JASSoundParams16JAISoundActivity */ // 8029F314: 803621D8 (_savegpr_28) // 8029F32C: 8029F0F8 (mixOut___5JAISeFRC14JASSoundParams) // 8029F358: 80455784 (lit_736) // 8029F374: 8029F214 (stopTrack___5JAISeFv) // 8029F3CC: 8029F250 (startTrack___5JAISeFRC14JASSoundParams) // 8029F41C: 80292A3C (pause__8JASTrackFb) // 8029F444: 802927A0 (mute__8JASTrackFb) // 8029F454: 8029F250 (startTrack___5JAISeFRC14JASSoundParams) // 8029F478: 80292A3C (pause__8JASTrackFb) // 8029F484: 8029F214 (stopTrack___5JAISeFv) // 8029F490: 8029F214 (stopTrack___5JAISeFv) // 8029F4B8: 80362224 (_restgpr_28) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::JAISeCategoryMgr_mixOut_(bool param_0, JASSoundParams const& param_1, JAISoundActivity param_2) { nofralloc #include "asm/JSystem/JAudio2/JAISe/JAISeCategoryMgr_mixOut___5JAISeFbRC14JASSoundParams16JAISoundActivity.s" } #pragma pop /* 8029F4CC-8029F5C8 00FC+00 s=0 e=1 z=0 None .text JAISeCategoryMgr_calc___5JAISeFv */ // 8029F4E0: 8029F78C (prepare___5JAISeFv) // 8029F4E8: 802A26B8 (calc_JAISound___8JAISoundFv) // 8029F574: 80455784 (lit_736) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::JAISeCategoryMgr_calc_() { nofralloc #include "asm/JSystem/JAudio2/JAISe/JAISeCategoryMgr_calc___5JAISeFv.s" } #pragma pop /* 8029F5C8-8029F650 0088+00 s=2 e=0 z=0 None .text JAISound_tryDie___5JAISeFv */ // 8029F62C: 802A25F0 (die_JAISound___8JAISoundFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::JAISound_tryDie_() { nofralloc #include "asm/JSystem/JAudio2/JAISe/JAISound_tryDie___5JAISeFv.s" } #pragma pop /* 8029F650-8029F6D8 0088+00 s=0 e=1 z=0 None .text * JAISeMgr_startID___5JAISeF10JAISoundIDPCQ29JGeometry8TVec3P11JAIAudience */ // 8029F67C: 802A2328 (func_802A2328) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::JAISeMgr_startID_(JAISoundID param_0, JGeometry::TVec3 const* param_1, JAIAudience* param_2) { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F650.s" } #pragma pop /* 8029F6D8-8029F6E0 0008+00 s=2 e=0 z=0 None .text getNumChild__5JAISeCFv */ bool JAISe::getNumChild() const { return false; } /* 8029F6E0-8029F6E8 0008+00 s=2 e=0 z=0 None .text getChild__5JAISeFi */ bool JAISe::getChild(int param_0) { return false; } /* 8029F6E8-8029F6EC 0004+00 s=2 e=0 z=0 None .text releaseChild__5JAISeFi */ void JAISe::releaseChild(int param_0) { /* empty function */ } /* 8029F6EC-8029F78C 00A0+00 s=1 e=0 z=0 None .text prepare_getSeqData___5JAISeFv */ // 8029F760: 802A266C (increasePrepareCount_JAISound___8JAISoundFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::prepare_getSeqData_() { nofralloc #include "asm/JSystem/JAudio2/JAISe/prepare_getSeqData___5JAISeFv.s" } #pragma pop /* 8029F78C-8029F84C 00C0+00 s=1 e=0 z=0 None .text prepare___5JAISeFv */ // 8029F800: 8029F6EC (prepare_getSeqData___5JAISeFv) // 8029F818: 8029F6EC (prepare_getSeqData___5JAISeFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::prepare_() { nofralloc #include "asm/JSystem/JAudio2/JAISe/prepare___5JAISeFv.s" } #pragma pop /* 8029F84C-8029F854 0008+00 s=2 e=0 z=0 None .text getTrack__5JAISeFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::getTrack() { nofralloc #include "asm/JSystem/JAudio2/JAISe/getTrack__5JAISeFv.s" } #pragma pop /* 8029F854-8029F864 0010+00 s=2 e=0 z=0 None .text getChildTrack__5JAISeFi */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::getChildTrack(int param_0) { nofralloc #include "asm/JSystem/JAudio2/JAISe/getChildTrack__5JAISeFi.s" } #pragma pop /* 8029F864-8029F868 0004+00 s=2 e=0 z=0 None .text asSe__5JAISeFv */ void JAISe::asSe() { /* empty function */ } /* 8029F868-8029F870 0008+00 s=2 e=0 z=0 None .text getTempoMgr__5JAISeFv */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAISe::getTempoMgr() { nofralloc #include "asm/JSystem/JAudio2/JAISe/getTempoMgr__5JAISeFv.s" } #pragma pop /* 8029F870-8029F878 0008+00 s=1 e=0 z=0 None .text @16@JAISound_tryDie___5JAISeFv */ // 8029F874: 8029F5C8 (JAISound_tryDie___5JAISeFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm static void func_8029F870() { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F870.s" } #pragma pop /* 8029F878-8029F880 0008+00 s=1 e=0 z=0 None .text @16@getTempoMgr__5JAISeFv */ // 8029F87C: 8029F868 (getTempoMgr__5JAISeFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm static void func_8029F878() { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F878.s" } #pragma pop /* 8029F880-8029F888 0008+00 s=1 e=0 z=0 None .text @16@getChildTrack__5JAISeFi */ // 8029F884: 8029F854 (getChildTrack__5JAISeFi) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm static void func_8029F880() { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F880.s" } #pragma pop /* 8029F888-8029F890 0008+00 s=1 e=0 z=0 None .text @16@getTrack__5JAISeFv */ // 8029F88C: 8029F84C (getTrack__5JAISeFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm static void func_8029F888() { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F888.s" } #pragma pop /* 8029F890-8029F898 0008+00 s=1 e=0 z=0 None .text @16@asSe__5JAISeFv */ // 8029F894: 8029F864 (asSe__5JAISeFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm static void func_8029F890() { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F890.s" } #pragma pop /* 8029F898-8029F8A0 0008+00 s=1 e=0 z=0 None .text @16@releaseChild__5JAISeFi */ // 8029F89C: 8029F6E8 (releaseChild__5JAISeFi) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm static void func_8029F898() { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F898.s" } #pragma pop /* 8029F8A0-8029F8A8 0008+00 s=1 e=0 z=0 None .text @16@getChild__5JAISeFi */ // 8029F8A4: 8029F6E0 (getChild__5JAISeFi) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm static void func_8029F8A0() { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F8A0.s" } #pragma pop /* 8029F8A8-8029F8B0 0008+00 s=1 e=0 z=0 None .text @16@getNumChild__5JAISeCFv */ // 8029F8AC: 8029F6D8 (getNumChild__5JAISeCFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off extern "C" asm static void func_8029F8A8() { nofralloc #include "asm/JSystem/JAudio2/JAISe/func_8029F8A8.s" } #pragma pop