// // Generated By: dol2asm // Translation Unit: JAIStreamMgr // #include "JSystem/JAudio2/JAIStreamMgr.h" #include "dol2asm.h" #include "dolphin/types.h" // // Types: // struct JSUPtrLink { /* 802DBE14 */ ~JSUPtrLink(); }; struct JSUPtrList { /* 802DBF14 */ void initiate(); /* 802DBF4C */ void append(JSUPtrLink*); /* 802DC15C */ void remove(JSUPtrLink*); }; struct JGeometry { template struct TVec3 {}; /* TVec3 */ struct TVec3__template0 {}; }; struct JASSoundParams {}; template struct JASMemPool {}; /* JASMemPool */ struct JASMemPool__template3 { /* 802A3E68 */ ~JASMemPool__template3(); }; struct JASGenericMemPool { /* 80290848 */ JASGenericMemPool(); /* 80290860 */ ~JASGenericMemPool(); /* 80290948 */ void alloc(u32); /* 80290994 */ void free(void*, u32); }; struct JAISoundHandle {}; struct JAISoundID {}; struct JAIStreamMgr { /* 802A3B68 */ JAIStreamMgr(bool); /* 802A3C3C */ void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); /* 802A3D70 */ void freeDeadStream_(); /* 802A3EBC */ void calc(); /* 802A4028 */ void stop(); /* 802A4068 */ void stop(u32); /* 802A40B8 */ void stopSoundID(JAISoundID); /* 802A4118 */ void mixOut(); /* 802A4174 */ void newStream_(); }; template struct JAISoundStrategyMgr {}; /* JAISoundStrategyMgr */ struct JAISoundStrategyMgr__template2 {}; struct JAISoundActivity {}; struct JAIAudience {}; struct JAIStream { /* 802A3104 */ JAIStream(JAIStreamMgr*, JAISoundStrategyMgr*); /* 802A319C */ void JAIStreamMgr_startID_(JAISoundID, s32, JGeometry::TVec3 const*, JAIAudience*, int); /* 802A34E4 */ void JAIStreamMgr_mixOut_(JASSoundParams const&, JAISoundActivity); /* 802A388C */ void JAIStreamMgr_calc_(); }; struct JAISound { /* 802A21BC */ void attachHandle(JAISoundHandle*); /* 802A2598 */ void stop(); /* 802A24DC */ void stop(u32); }; // // Forward References: // extern "C" void __ct__12JAIStreamMgrFb(); extern "C" void func_802A3C3C(); extern "C" void freeDeadStream___12JAIStreamMgrFv(); extern "C" void func_802A3E68(); 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 newStream___12JAIStreamMgrFv(); extern "C" extern u8 data_804340FC[16 + 4 /* padding */]; // // External References: // void operator delete(void*); extern "C" void __ct__17JASGenericMemPoolFv(); extern "C" void __dt__17JASGenericMemPoolFv(); extern "C" void alloc__17JASGenericMemPoolFUl(); extern "C" void free__17JASGenericMemPoolFPvUl(); extern "C" void attachHandle__8JAISoundFP14JAISoundHandle(); extern "C" void stop__8JAISoundFUl(); extern "C" void stop__8JAISoundFv(); extern "C" void func_802A3104(); extern "C" void func_802A319C(); extern "C" void JAIStreamMgr_mixOut___9JAIStreamFRC14JASSoundParams16JAISoundActivity(); extern "C" void JAIStreamMgr_calc___9JAIStreamFv(); extern "C" void __dl__FPv(); extern "C" void __dt__10JSUPtrLinkFv(); extern "C" void initiate__10JSUPtrListFv(); extern "C" void append__10JSUPtrListFP10JSUPtrLink(); extern "C" void remove__10JSUPtrListFP10JSUPtrLink(); extern "C" void __register_global_object(); extern "C" void _savegpr_25(); extern "C" void _savegpr_29(); extern "C" void _restgpr_25(); extern "C" void _restgpr_29(); extern "C" extern void* __vt__9JAIStream[12]; extern "C" extern u8 data_80450B5C[4]; extern "C" extern u8 data_80450B64[4]; extern "C" extern u8 data_80451328[8]; // // Declarations: // /* ############################################################################################## */ /* 80455800-80455804 0004+00 s=1 e=0 z=0 None .sdata2 @653 */ SECTION_SDATA2 static f32 lit_653 = 1.0f; /* 80455804-80455808 0004+00 s=1 e=0 z=0 None .sdata2 @654 */ SECTION_SDATA2 static u8 lit_654[4] = { 0x00, 0x00, 0x00, 0x00, }; /* 80455808-80455810 0004+04 s=1 e=0 z=0 None .sdata2 @655 */ SECTION_SDATA2 static f32 lit_655[1 + 1 /* padding */] = { 0.5f, /* padding */ 0.0f, }; /* 802A3B68-802A3C3C 00D4+00 s=0 e=1 z=0 None .text __ct__12JAIStreamMgrFb */ // 802A3B84: 80450B64 (data_80450B64) // 802A3B88: 80455800 (lit_653) // 802A3B94: 80455804 (lit_654) // 802A3B9C: 80455808 (lit_655) // 802A3BAC: 802DBF14 (initiate__10JSUPtrListFv) // 802A3BC4: 80455800 (lit_653) // 802A3BD0: 80455804 (lit_654) // 802A3BD8: 80455808 (lit_655) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm JAIStreamMgr::JAIStreamMgr(bool param_0) { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/__ct__12JAIStreamMgrFb.s" } #pragma pop /* 802A3C3C-802A3D70 0134+00 s=0 e=1 z=0 None .text * startSound__12JAIStreamMgrF10JAISoundIDP14JAISoundHandlePCQ29JGeometry8TVec3 */ // 802A3C4C: 803621CC (_savegpr_25) // 802A3C70: 802A2598 (stop__8JAISoundFv) // 802A3CA8: 802A4174 (newStream___12JAIStreamMgrFv) // 802A3CB0: 80450B5C (data_80450B5C) // 802A3D10: 802A319C (func_802A319C) // 802A3D50: 802A21BC (attachHandle__8JAISoundFP14JAISoundHandle) // 802A3D5C: 80362218 (_restgpr_25) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAIStreamMgr::startSound(JAISoundID param_0, JAISoundHandle* param_1, JGeometry::TVec3 const* param_2) { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/func_802A3C3C.s" } #pragma pop /* ############################################################################################## */ /* 804340F0-804340FC 000C+00 s=2 e=0 z=0 None .bss @745 */ static u8 lit_745[12]; /* 804340FC-80434110 0010+04 s=2 e=1 z=0 None .bss * memPool_$localstatic3$getMemPool___30JASPoolAllocObject<9JAIStream>Fv */ u8 data_804340FC[16 + 4 /* padding */]; /* 802A3D70-802A3E68 00F8+00 s=1 e=0 z=0 None .text freeDeadStream___12JAIStreamMgrFv */ // 802A3D80: 803621DC (_savegpr_29) // 802A3DA8: 802DC15C (remove__10JSUPtrListFP10JSUPtrLink) // 802A3DD4: 803C99D8 (__vt__9JAIStream) // 802A3DD8: 803C99D8 (__vt__9JAIStream) // 802A3DF0: 802DBE14 (__dt__10JSUPtrLinkFv) // 802A3DF4: 80451328 (data_80451328) // 802A3E00: 804340FC (data_804340FC) // 802A3E04: 804340FC (data_804340FC) // 802A3E08: 80290848 (__ct__17JASGenericMemPoolFv) // 802A3E0C: 804340FC (data_804340FC) // 802A3E10: 804340FC (data_804340FC) // 802A3E14: 802A3E68 (func_802A3E68) // 802A3E18: 802A3E68 (func_802A3E68) // 802A3E1C: 804340F0 (lit_745) // 802A3E20: 804340F0 (lit_745) // 802A3E24: 80361C24 (__register_global_object) // 802A3E2C: 80451328 (data_80451328) // 802A3E30: 804340FC (data_804340FC) // 802A3E34: 804340FC (data_804340FC) // 802A3E40: 80290994 (free__17JASGenericMemPoolFPvUl) // 802A3E54: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAIStreamMgr::freeDeadStream_() { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/freeDeadStream___12JAIStreamMgrFv.s" } #pragma pop /* 802A3E68-802A3EBC 0054+00 s=2 e=1 z=0 None .text __dt__22JASMemPool<9JAIStream>Fv */ // 802A3E8C: 80290860 (__dt__17JASGenericMemPoolFv) // 802A3E9C: 802CED3C (__dl__FPv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm JASMemPool__template3::~JASMemPool__template3() { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/func_802A3E68.s" } #pragma pop /* 802A3EBC-802A4028 016C+00 s=0 e=1 z=0 None .text calc__12JAIStreamMgrFv */ // 802A3FF8: 802A388C (JAIStreamMgr_calc___9JAIStreamFv) // 802A400C: 802A3D70 (freeDeadStream___12JAIStreamMgrFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAIStreamMgr::calc() { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/calc__12JAIStreamMgrFv.s" } #pragma pop /* 802A4028-802A4068 0040+00 s=0 e=1 z=0 None .text stop__12JAIStreamMgrFv */ // 802A4044: 802A2598 (stop__8JAISoundFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAIStreamMgr::stop() { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/stop__12JAIStreamMgrFv.s" } #pragma pop /* 802A4068-802A40B8 0050+00 s=0 e=2 z=0 None .text stop__12JAIStreamMgrFUl */ // 802A4090: 802A24DC (stop__8JAISoundFUl) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAIStreamMgr::stop(u32 param_0) { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/stop__12JAIStreamMgrFUl.s" } #pragma pop /* 802A40B8-802A4118 0060+00 s=0 e=1 z=0 None .text stopSoundID__12JAIStreamMgrF10JAISoundID */ // 802A40F0: 802A2598 (stop__8JAISoundFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAIStreamMgr::stopSoundID(JAISoundID param_0) { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/stopSoundID__12JAIStreamMgrF10JAISoundID.s" } #pragma pop /* 802A4118-802A4174 005C+00 s=0 e=1 z=0 None .text mixOut__12JAIStreamMgrFv */ // 802A414C: 802A34E4 (JAIStreamMgr_mixOut___9JAIStreamFRC14JASSoundParams16JAISoundActivity) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAIStreamMgr::mixOut() { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/mixOut__12JAIStreamMgrFv.s" } #pragma pop /* 802A4174-802A4244 00D0+00 s=1 e=0 z=0 None .text newStream___12JAIStreamMgrFv */ // 802A41A0: 80451328 (data_80451328) // 802A41AC: 804340FC (data_804340FC) // 802A41B0: 804340FC (data_804340FC) // 802A41B4: 80290848 (__ct__17JASGenericMemPoolFv) // 802A41B8: 804340FC (data_804340FC) // 802A41BC: 804340FC (data_804340FC) // 802A41C0: 802A3E68 (func_802A3E68) // 802A41C4: 802A3E68 (func_802A3E68) // 802A41C8: 804340F0 (lit_745) // 802A41CC: 804340F0 (lit_745) // 802A41D0: 80361C24 (__register_global_object) // 802A41D8: 80451328 (data_80451328) // 802A41DC: 804340FC (data_804340FC) // 802A41E0: 804340FC (data_804340FC) // 802A41E8: 80290948 (alloc__17JASGenericMemPoolFUl) // 802A41FC: 802A3104 (func_802A3104) // 802A4224: 802DBF4C (append__10JSUPtrListFP10JSUPtrLink) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void JAIStreamMgr::newStream_() { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/newStream___12JAIStreamMgrFv.s" } #pragma pop