// // Generated By: dol2asm // Translation Unit: JAIStreamMgr // #include "dol2asm.h" #include "dolphin/types.h" #include "JSystem/JAudio2/JAIStreamMgr.h" // // Types: // struct JSUPtrLink { /* 802DBE14 */ // False False ~JSUPtrLink(); }; struct JSUPtrList { /* 802DBF14 */ // False False void initiate(); /* 802DBF4C */ // False False // JSUPtrLink* False // JSUPtrLink False void append(JSUPtrLink*); /* 802DC15C */ // False False // JSUPtrLink* False // JSUPtrLink False void remove(JSUPtrLink*); }; struct JGeometry { template struct TVec3 { }; /* TVec3 */ struct TVec3__template0 { }; }; struct JASSoundParams { }; template struct JASMemPool { }; /* JASMemPool */ struct JASMemPool__template3 { /* 802A3E68 */ // False True ~JASMemPool__template3(); }; struct JASGenericMemPool { /* 80290848 */ // False False JASGenericMemPool(); /* 80290860 */ // False False ~JASGenericMemPool(); /* 80290948 */ // False False // u32 False void alloc(u32); /* 80290994 */ // False False // void* False // void False // u32 False void free(void*, u32); }; struct JAISoundID { }; struct JAISoundHandle { }; struct JAIStreamMgr { /* 802A3B68 */ // False False // bool False JAIStreamMgr(bool); /* 802A3C3C */ // False True // JAISoundID False // JAISoundHandle* False // JAISoundHandle False // JGeometry::TVec3 const* False // JGeometry::TVec3 const False // JGeometry::TVec3 True // f32 False void startSound(JAISoundID, JAISoundHandle*, JGeometry::TVec3 const*); /* 802A3D70 */ // True False void freeDeadStream_(); /* 802A3EBC */ // False False void calc(); /* 802A4028 */ // False False void stop(); /* 802A4068 */ // False False // u32 False void stop(u32); /* 802A40B8 */ // False False // JAISoundID False void stopSoundID(JAISoundID); /* 802A4118 */ // False False void mixOut(); /* 802A4174 */ // True False void newStream_(); }; struct JAISoundActivity { }; template struct JAISoundStrategyMgr { }; /* JAISoundStrategyMgr */ struct JAISoundStrategyMgr__template2 { }; struct JAIAudience { }; struct JAIStream { /* 802A3104 */ // False True // JAIStreamMgr* False // JAIStreamMgr False // JAISoundStrategyMgr* False // JAISoundStrategyMgr True // JAIStream False JAIStream(JAIStreamMgr*, JAISoundStrategyMgr*); /* 802A319C */ // False True // JAISoundID False // s32 False // JGeometry::TVec3 const* False // JGeometry::TVec3 const False // JGeometry::TVec3 True // f32 False // JAIAudience* False // JAIAudience False // int False void JAIStreamMgr_startID_(JAISoundID, s32, JGeometry::TVec3 const*, JAIAudience*, int); /* 802A34E4 */ // False False // JASSoundParams const& False // JASSoundParams const False // JASSoundParams False // JAISoundActivity False void JAIStreamMgr_mixOut_(JASSoundParams const&, JAISoundActivity); /* 802A388C */ // False False void JAIStreamMgr_calc_(); }; struct JAISound { /* 802A21BC */ // False False // JAISoundHandle* False // JAISoundHandle False void attachHandle(JAISoundHandle*); /* 802A2598 */ // False False void stop(); /* 802A24DC */ // False False // u32 False void stop(u32); }; // // Forward References: // // False False // bool False extern "C" void __ct__12JAIStreamMgrFb(); // False True // JAISoundID False // JAISoundHandle* False // JAISoundHandle False // JGeometry::TVec3 const* False // JGeometry::TVec3 const False // JGeometry::TVec3 True // f32 False extern "C" void func_802A3C3C(); // True False extern "C" void freeDeadStream___12JAIStreamMgrFv(); // False True extern "C" void func_802A3E68(); // False False extern "C" void calc__12JAIStreamMgrFv(); // False False extern "C" void stop__12JAIStreamMgrFv(); // False False // u32 False extern "C" void stop__12JAIStreamMgrFUl(); // False False // JAISoundID False extern "C" void stopSoundID__12JAIStreamMgrF10JAISoundID(); // False False extern "C" void mixOut__12JAIStreamMgrFv(); // True False extern "C" void newStream___12JAIStreamMgrFv(); extern "C" extern u8 data_804340FC[16 + 4 /* padding */]; // // External References: // // False False // void False // void* False // void False void operator delete(void*); // False False extern "C" void __ct__17JASGenericMemPoolFv(); // False False extern "C" void __dt__17JASGenericMemPoolFv(); // False False // u32 False extern "C" void alloc__17JASGenericMemPoolFUl(); // False False // void* False // void False // u32 False extern "C" void free__17JASGenericMemPoolFPvUl(); // False False // JAISoundHandle* False // JAISoundHandle False extern "C" void attachHandle__8JAISoundFP14JAISoundHandle(); // False False // u32 False extern "C" void stop__8JAISoundFUl(); // False False extern "C" void stop__8JAISoundFv(); // False True // JAIStreamMgr* False // JAIStreamMgr False // JAISoundStrategyMgr* False // JAISoundStrategyMgr True // JAIStream False extern "C" void func_802A3104(); // False True // JAISoundID False // s32 False // JGeometry::TVec3 const* False // JGeometry::TVec3 const False // JGeometry::TVec3 True // f32 False // JAIAudience* False // JAIAudience False // int False extern "C" void func_802A319C(); // False False // JASSoundParams const& False // JASSoundParams const False // JASSoundParams False // JAISoundActivity False extern "C" void JAIStreamMgr_mixOut___9JAIStreamFRC14JASSoundParams16JAISoundActivity(); // False False extern "C" void JAIStreamMgr_calc___9JAIStreamFv(); // False False // void False // void* False // void False extern "C" void __dl__FPv(); // False False extern "C" void __dt__10JSUPtrLinkFv(); // False False extern "C" void initiate__10JSUPtrListFv(); // False False // JSUPtrLink* False // JSUPtrLink False extern "C" void append__10JSUPtrListFP10JSUPtrLink(); // False False // JSUPtrLink* False // JSUPtrLink False extern "C" void remove__10JSUPtrListFP10JSUPtrLink(); // False False extern "C" void __register_global_object(); // False False extern "C" void _savegpr_25(); // False False extern "C" void _savegpr_29(); // False False extern "C" void _restgpr_25(); // False False 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 // False False // bool False 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 // False True // JAISoundID False // JAISoundHandle* False // JAISoundHandle False // JGeometry::TVec3 const* False // JGeometry::TVec3 const False // JGeometry::TVec3 True // f32 False 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 // True False 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 // False True 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 // False False 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 // False False 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 // False False // u32 False 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 // False False // JAISoundID False 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 // False False 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 // True False asm void JAIStreamMgr::newStream_() { nofralloc #include "asm/JSystem/JAudio2/JAIStreamMgr/newStream___12JAIStreamMgrFv.s" } #pragma pop