// // Generated By: dol2asm // Translation Unit: Z2SoundObject // #include "Z2AudioLib/Z2SoundObject.h" #include "dol2asm.h" #include "dolphin/types.h" // // Types: // struct JAISoundHandle { /* 802A2184 */ void releaseSound(); }; struct Z2SoundStarter { /* 802AAEDC */ void setPortData(JAISoundHandle*, u32, u16, s8); }; struct Vec {}; struct JAISoundID {}; struct Z2SoundObjSimple { /* 802BE844 */ Z2SoundObjSimple(); /* 802BE880 */ void init(Vec*, u8); /* 802BE8A0 */ void startSound(JAISoundID, u32, s8); /* 802BE9B0 */ void startLevelSound(JAISoundID, u32, s8); }; struct Z2SoundHandlePool {}; struct Z2SoundObjBase { /* 802BDEF0 */ Z2SoundObjBase(); /* 802BDF48 */ ~Z2SoundObjBase(); /* 802BDFB0 */ void init(Vec*, u8); /* 802BDFF8 */ void deleteObject(); /* 802BE038 */ void framework(u32, s8); /* 802BE070 */ void dispose(); /* 802BE104 */ void stopOK(Z2SoundHandlePool&); /* 802BE144 */ void startSound(JAISoundID, u32, s8); /* 802BE2D4 */ void startLevelSound(JAISoundID, u32, s8); /* 802BE4A4 */ void startCollisionSE(u32, u32, Z2SoundObjBase*); }; struct Z2SoundObjArrow { /* 802BEB38 */ Z2SoundObjArrow(); /* 802BEB74 */ void init(Vec*, u8); }; struct JAUSoundAnimationSound {}; struct JGeometry { template struct TVec3 {}; /* TVec3 */ struct TVec3__template0 {}; }; struct Z2SoundObjAnime { /* 802BEB94 */ Z2SoundObjAnime(); /* 802BEBDC */ void init(Vec*, u8); /* 802BEBFC */ void initAnime(void*, bool, f32, f32); /* 802BED68 */ void ageSounds_(); /* 802BEED4 */ void updateAnime(f32, f32); /* 802BF304 */ void updateSoundLifeTime_(f32, f32); /* 802BF660 */ void startSoundInner(JGeometry::TVec3 const&, f32, Z2SoundStarter*, u32, s8); /* 802BF890 */ void getSoundID(JAUSoundAnimationSound const*, JGeometry::TVec3 const&, f32); /* 802BF898 */ void playsSound(JAUSoundAnimationSound const*, JGeometry::TVec3 const&, f32); }; struct Z2SoundInfo { /* 802BBAC8 */ void getSwBit(JAISoundID) const; }; struct Z2SoundHandles { /* 802AB07C */ Z2SoundHandles(); /* 802AB0B4 */ ~Z2SoundHandles(); /* 802AB118 */ void initHandlesPool(u8); /* 802AB120 */ void deleteHandlesPool(); /* 802AB254 */ void getHandleSoundID(JAISoundID); /* 802AB2A0 */ void getHandleUserData(u32); /* 802AB2D8 */ void getFreeHandle(); /* 802AB3D0 */ void getLowPrioSound(JAISoundID); /* 802AB538 */ void setPos(JGeometry::TVec3 const&); }; struct Z2SeMgr { /* 802AE5B0 */ void isSoundCulling(JAISoundID); }; struct Z2DopplerSoundObjBase { /* 802BE5A0 */ Z2DopplerSoundObjBase(); /* 802BE5FC */ ~Z2DopplerSoundObjBase(); /* 802BE65C */ void init(Vec*, u8); /* 802BE6B8 */ void framework(u32, s8); /* 802BE714 */ void startSound(JAISoundID, u32, s8); /* 802BE7AC */ void startLevelSound(JAISoundID, u32, s8); }; struct Z2Calc { struct CurveSign {}; /* 802A96F4 */ void getParamByExp(f32, f32, f32, f32, f32, f32, Z2Calc::CurveSign); }; struct JSUPtrList { /* 802DC20C */ void getNthLink(u32) const; }; struct JAUSoundAnimation { /* 802A6F70 */ void getStartSoundIndex(f32) const; /* 802A7044 */ void getEndSoundIndex(f32) const; }; struct JAISoundParamsMove { /* 802A2DB4 */ void moveVolume(f32, u32); /* 802A2E0C */ void movePitch(f32, u32); /* 802A2E64 */ void moveFxMix(f32, u32); }; struct JAIAudience {}; struct JAISound { /* 802A244C */ void acceptsNewAudible() const; /* 802A2474 */ void newAudible(JGeometry::TVec3 const&, JGeometry::TVec3 const*, u32, JAIAudience*); /* 802A2598 */ void stop(); }; // // Forward References: // extern "C" void __ct__14Z2SoundObjBaseFv(); extern "C" void __dt__14Z2SoundObjBaseFv(); extern "C" void init__14Z2SoundObjBaseFP3VecUc(); extern "C" void deleteObject__14Z2SoundObjBaseFv(); extern "C" void framework__14Z2SoundObjBaseFUlSc(); extern "C" void dispose__14Z2SoundObjBaseFv(); extern "C" void stopOK__14Z2SoundObjBaseFR17Z2SoundHandlePool(); extern "C" void startSound__14Z2SoundObjBaseF10JAISoundIDUlSc(); extern "C" void startLevelSound__14Z2SoundObjBaseF10JAISoundIDUlSc(); extern "C" void startCollisionSE__14Z2SoundObjBaseFUlUlP14Z2SoundObjBase(); extern "C" void __ct__21Z2DopplerSoundObjBaseFv(); extern "C" void __dt__21Z2DopplerSoundObjBaseFv(); extern "C" void init__21Z2DopplerSoundObjBaseFP3VecUc(); extern "C" void framework__21Z2DopplerSoundObjBaseFUlSc(); extern "C" void startSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc(); extern "C" void startLevelSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc(); extern "C" void __ct__16Z2SoundObjSimpleFv(); extern "C" void init__16Z2SoundObjSimpleFP3VecUc(); extern "C" void startSound__16Z2SoundObjSimpleF10JAISoundIDUlSc(); extern "C" void startLevelSound__16Z2SoundObjSimpleF10JAISoundIDUlSc(); extern "C" void __ct__15Z2SoundObjArrowFv(); extern "C" void init__15Z2SoundObjArrowFP3VecUc(); extern "C" void __ct__15Z2SoundObjAnimeFv(); extern "C" void init__15Z2SoundObjAnimeFP3VecUc(); extern "C" void initAnime__15Z2SoundObjAnimeFPvbff(); extern "C" void ageSounds___15Z2SoundObjAnimeFv(); extern "C" void updateAnime__15Z2SoundObjAnimeFff(); extern "C" void updateSoundLifeTime___15Z2SoundObjAnimeFff(); extern "C" void func_802BF660(); extern "C" void func_802BF890(); extern "C" void func_802BF898(); extern "C" extern void* __vt__15Z2SoundObjAnime[8]; extern "C" extern void* __vt__15Z2SoundObjArrow[8]; extern "C" extern void* __vt__16Z2SoundObjSimple[8]; extern "C" extern void* __vt__21Z2DopplerSoundObjBase[8]; extern "C" extern void* __vt__14Z2SoundObjBase[8]; // // External References: // void operator delete(void*); extern "C" void releaseSound__14JAISoundHandleFv(); extern "C" void acceptsNewAudible__8JAISoundCFv(); extern "C" void func_802A2474(); extern "C" void stop__8JAISoundFv(); extern "C" void moveVolume__18JAISoundParamsMoveFfUl(); extern "C" void movePitch__18JAISoundParamsMoveFfUl(); extern "C" void moveFxMix__18JAISoundParamsMoveFfUl(); extern "C" void getStartSoundIndex__17JAUSoundAnimationCFf(); extern "C" void getEndSoundIndex__17JAUSoundAnimationCFf(); extern "C" void getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign(); extern "C" void setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc(); extern "C" void __ct__14Z2SoundHandlesFv(); extern "C" void __dt__14Z2SoundHandlesFv(); extern "C" void initHandlesPool__14Z2SoundHandlesFUc(); extern "C" void deleteHandlesPool__14Z2SoundHandlesFv(); extern "C" void getHandleSoundID__14Z2SoundHandlesF10JAISoundID(); extern "C" void getHandleUserData__14Z2SoundHandlesFUl(); extern "C" void getFreeHandle__14Z2SoundHandlesFv(); extern "C" void getLowPrioSound__14Z2SoundHandlesF10JAISoundID(); extern "C" void func_802AB538(); extern "C" void isSoundCulling__7Z2SeMgrF10JAISoundID(); extern "C" void getSwBit__11Z2SoundInfoCF10JAISoundID(); extern "C" void __dl__FPv(); extern "C" void getNthLink__10JSUPtrListCFUl(); extern "C" void _savegpr_23(); extern "C" void _savegpr_28(); extern "C" void _savegpr_29(); extern "C" void _restgpr_23(); extern "C" void _restgpr_28(); extern "C" void _restgpr_29(); extern "C" extern u32 __float_max; extern "C" extern u8 data_80450B4C[4]; extern "C" extern u8 data_80450B60[4]; extern "C" extern u8 data_80450B74[4]; extern "C" extern u8 data_80450B88[4]; // // Declarations: // /* ############################################################################################## */ /* 803CACD0-803CACF0 0020+00 s=1 e=1 z=0 None .data __vt__15Z2SoundObjAnime */ SECTION_DATA void* __vt__15Z2SoundObjAnime[8] = { (void*)NULL /* RTTI */, (void*)NULL, (void*)framework__14Z2SoundObjBaseFUlSc, (void*)dispose__14Z2SoundObjBaseFv, (void*)stopOK__14Z2SoundObjBaseFR17Z2SoundHandlePool, (void*)init__15Z2SoundObjAnimeFP3VecUc, (void*)startSound__14Z2SoundObjBaseF10JAISoundIDUlSc, (void*)startLevelSound__14Z2SoundObjBaseF10JAISoundIDUlSc, }; /* 803CACF0-803CAD10 0020+00 s=1 e=0 z=1 None .data __vt__15Z2SoundObjArrow */ SECTION_DATA void* __vt__15Z2SoundObjArrow[8] = { (void*)NULL /* RTTI */, (void*)NULL, (void*)framework__21Z2DopplerSoundObjBaseFUlSc, (void*)dispose__14Z2SoundObjBaseFv, (void*)stopOK__14Z2SoundObjBaseFR17Z2SoundHandlePool, (void*)init__15Z2SoundObjArrowFP3VecUc, (void*)startSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc, (void*)startLevelSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc, }; /* 803CAD10-803CAD30 0020+00 s=1 e=3 z=14 None .data __vt__16Z2SoundObjSimple */ SECTION_DATA void* __vt__16Z2SoundObjSimple[8] = { (void*)NULL /* RTTI */, (void*)NULL, (void*)framework__14Z2SoundObjBaseFUlSc, (void*)dispose__14Z2SoundObjBaseFv, (void*)stopOK__14Z2SoundObjBaseFR17Z2SoundHandlePool, (void*)init__16Z2SoundObjSimpleFP3VecUc, (void*)startSound__16Z2SoundObjSimpleF10JAISoundIDUlSc, (void*)startLevelSound__16Z2SoundObjSimpleF10JAISoundIDUlSc, }; /* 803CAD30-803CAD50 0020+00 s=2 e=0 z=0 None .data __vt__21Z2DopplerSoundObjBase */ SECTION_DATA void* __vt__21Z2DopplerSoundObjBase[8] = { (void*)NULL /* RTTI */, (void*)NULL, (void*)framework__21Z2DopplerSoundObjBaseFUlSc, (void*)dispose__14Z2SoundObjBaseFv, (void*)stopOK__14Z2SoundObjBaseFR17Z2SoundHandlePool, (void*)init__21Z2DopplerSoundObjBaseFP3VecUc, (void*)startSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc, (void*)startLevelSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc, }; /* 803CAD50-803CAD70 0020+00 s=2 e=0 z=0 None .data __vt__14Z2SoundObjBase */ SECTION_DATA void* __vt__14Z2SoundObjBase[8] = { (void*)NULL /* RTTI */, (void*)NULL, (void*)framework__14Z2SoundObjBaseFUlSc, (void*)dispose__14Z2SoundObjBaseFv, (void*)stopOK__14Z2SoundObjBaseFR17Z2SoundHandlePool, (void*)init__14Z2SoundObjBaseFP3VecUc, (void*)startSound__14Z2SoundObjBaseF10JAISoundIDUlSc, (void*)startLevelSound__14Z2SoundObjBaseF10JAISoundIDUlSc, }; /* 802BDEF0-802BDF48 0058+00 s=3 e=2 z=0 None .text __ct__14Z2SoundObjBaseFv */ // 802BDF04: 802AB07C (__ct__14Z2SoundHandlesFv) // 802BDF08: 803CAD50 (__vt__14Z2SoundObjBase) // 802BDF0C: 803CAD50 (__vt__14Z2SoundObjBase) // 802BDF20: 80450B74 (data_80450B74) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm Z2SoundObjBase::Z2SoundObjBase() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/__ct__14Z2SoundObjBaseFv.s" } #pragma pop /* 802BDF48-802BDFB0 0068+00 s=1 e=3 z=15 None .text __dt__14Z2SoundObjBaseFv */ // 802BDF68: 803CAD50 (__vt__14Z2SoundObjBase) // 802BDF6C: 803CAD50 (__vt__14Z2SoundObjBase) // 802BDF74: 802BDFF8 (deleteObject__14Z2SoundObjBaseFv) // 802BDF80: 802AB0B4 (__dt__14Z2SoundHandlesFv) // 802BDF90: 802CED3C (__dl__FPv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm Z2SoundObjBase::~Z2SoundObjBase() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/__dt__14Z2SoundObjBaseFv.s" } #pragma pop /* 802BDFB0-802BDFF8 0048+00 s=5 e=2 z=0 None .text init__14Z2SoundObjBaseFP3VecUc */ // 802BDFD0: 802AB118 (initHandlesPool__14Z2SoundHandlesFUc) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjBase::init(Vec* param_0, u8 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/init__14Z2SoundObjBaseFP3VecUc.s" } #pragma pop /* 802BDFF8-802BE038 0040+00 s=1 e=8 z=61 None .text deleteObject__14Z2SoundObjBaseFv */ // 802BE020: 802AB120 (deleteHandlesPool__14Z2SoundHandlesFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjBase::deleteObject() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/deleteObject__14Z2SoundObjBaseFv.s" } #pragma pop /* 802BE038-802BE070 0038+00 s=4 e=3 z=0 None .text framework__14Z2SoundObjBaseFUlSc */ // 802BE05C: 802AB538 (func_802AB538) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjBase::framework(u32 param_0, s8 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/framework__14Z2SoundObjBaseFUlSc.s" } #pragma pop /* 802BE070-802BE104 0094+00 s=5 e=3 z=0 None .text dispose__14Z2SoundObjBaseFv */ // 802BE080: 803621DC (_savegpr_29) // 802BE0B0: 80450B4C (data_80450B4C) // 802BE0B8: 802BBAC8 (getSwBit__11Z2SoundInfoCF10JAISoundID) // 802BE0C8: 802A2184 (releaseSound__14JAISoundHandleFv) // 802BE0D4: 802A2598 (stop__8JAISoundFv) // 802BE0F0: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjBase::dispose() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/dispose__14Z2SoundObjBaseFv.s" } #pragma pop /* 802BE104-802BE144 0040+00 s=5 e=3 z=0 None .text stopOK__14Z2SoundObjBaseFR17Z2SoundHandlePool */ // 802BE11C: 80450B4C (data_80450B4C) // 802BE124: 802BBAC8 (getSwBit__11Z2SoundInfoCF10JAISoundID) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjBase::stopOK(Z2SoundHandlePool& param_0) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/stopOK__14Z2SoundObjBaseFR17Z2SoundHandlePool.s" } #pragma pop /* ############################################################################################## */ /* 80455B38-80455B3C 0004+00 s=5 e=0 z=0 None .sdata2 @3559 */ SECTION_SDATA2 static f32 lit_3559 = 127.0f; /* 80455B3C-80455B40 0004+00 s=4 e=0 z=0 None .sdata2 @3560 */ SECTION_SDATA2 static f32 lit_3560 = 1.0f; /* 80455B40-80455B48 0004+04 s=3 e=0 z=0 None .sdata2 @3561 */ SECTION_SDATA2 static f32 lit_3561[1 + 1 /* padding */] = { -1.0f, /* padding */ 0.0f, }; /* 80455B48-80455B50 0008+00 s=3 e=0 z=0 None .sdata2 @3564 */ SECTION_SDATA2 static f64 lit_3564 = 4503601774854144.0 /* cast s32 to float */; /* 802BE144-802BE2D4 0190+00 s=5 e=3 z=0 None .text startSound__14Z2SoundObjBaseF10JAISoundIDUlSc */ // 802BE15C: 803621D8 (_savegpr_28) // 802BE18C: 80450B88 (data_80450B88) // 802BE194: 802AE5B0 (isSoundCulling__7Z2SeMgrF10JAISoundID) // 802BE1C4: 80455B48 (lit_3564) // 802BE1E0: 80455B38 (lit_3559) // 802BE1F8: 802AB254 (getHandleSoundID__14Z2SoundHandlesF10JAISoundID) // 802BE20C: 80450B4C (data_80450B4C) // 802BE214: 802BBAC8 (getSwBit__11Z2SoundInfoCF10JAISoundID) // 802BE23C: 802AB2D8 (getFreeHandle__14Z2SoundHandlesFv) // 802BE25C: 802AB3D0 (getLowPrioSound__14Z2SoundHandlesF10JAISoundID) // 802BE28C: 80455B3C (lit_3560) // 802BE294: 80455B40 (lit_3561) // 802BE2C0: 80362224 (_restgpr_28) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjBase::startSound(JAISoundID param_0, u32 param_1, s8 param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/startSound__14Z2SoundObjBaseF10JAISoundIDUlSc.s" } #pragma pop /* 802BE2D4-802BE4A4 01D0+00 s=4 e=3 z=0 None .text * startLevelSound__14Z2SoundObjBaseF10JAISoundIDUlSc */ // 802BE2EC: 803621D8 (_savegpr_28) // 802BE32C: 80455B48 (lit_3564) // 802BE348: 80455B38 (lit_3559) // 802BE360: 802AB254 (getHandleSoundID__14Z2SoundHandlesF10JAISoundID) // 802BE398: 802AAEDC (setPortData__14Z2SoundStarterFP14JAISoundHandleUlUsSc) // 802BE3AC: 802A2E64 (moveFxMix__18JAISoundParamsMoveFfUl) // 802BE3BC: 80450B88 (data_80450B88) // 802BE3C4: 802AE5B0 (isSoundCulling__7Z2SeMgrF10JAISoundID) // 802BE3DC: 802AB2D8 (getFreeHandle__14Z2SoundHandlesFv) // 802BE3F8: 802AB3D0 (getLowPrioSound__14Z2SoundHandlesF10JAISoundID) // 802BE428: 80455B3C (lit_3560) // 802BE430: 80455B40 (lit_3561) // 802BE490: 80362224 (_restgpr_28) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjBase::startLevelSound(JAISoundID param_0, u32 param_1, s8 param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/startLevelSound__14Z2SoundObjBaseF10JAISoundIDUlSc.s" } #pragma pop /* 802BE4A4-802BE5A0 00FC+00 s=0 e=5 z=21 None .text * startCollisionSE__14Z2SoundObjBaseFUlUlP14Z2SoundObjBase */ // 802BE4B4: 803621D8 (_savegpr_28) // 802BE4E8: 80450B60 (data_80450B60) // 802BE518: 802A2598 (stop__8JAISoundFv) // 802BE53C: 802BE144 (startSound__14Z2SoundObjBaseF10JAISoundIDUlSc) // 802BE58C: 80362224 (_restgpr_28) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjBase::startCollisionSE(u32 param_0, u32 param_1, Z2SoundObjBase* param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/startCollisionSE__14Z2SoundObjBaseFUlUlP14Z2SoundObjBase.s" } #pragma pop /* ############################################################################################## */ /* 8039C230-8039C240 000C+04 s=1 e=0 z=0 None .rodata cNullVec__6Z2Calc */ SECTION_RODATA static u8 const cNullVec__6Z2Calc[12 + 4 /* padding */] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* padding */ 0x00, 0x00, 0x00, 0x00, }; /* 802BE5A0-802BE5FC 005C+00 s=1 e=0 z=0 None .text __ct__21Z2DopplerSoundObjBaseFv */ // 802BE5B4: 802BDEF0 (__ct__14Z2SoundObjBaseFv) // 802BE5B8: 803CAD30 (__vt__21Z2DopplerSoundObjBase) // 802BE5BC: 803CAD30 (__vt__21Z2DopplerSoundObjBase) // 802BE5C4: 8039C230 (cNullVec__6Z2Calc) // 802BE5C8: 8039C230 (cNullVec__6Z2Calc) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm Z2DopplerSoundObjBase::Z2DopplerSoundObjBase() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/__ct__21Z2DopplerSoundObjBaseFv.s" } #pragma pop /* 802BE5FC-802BE65C 0060+00 s=0 e=0 z=1 None .text __dt__21Z2DopplerSoundObjBaseFv */ // 802BE61C: 803CAD30 (__vt__21Z2DopplerSoundObjBase) // 802BE620: 803CAD30 (__vt__21Z2DopplerSoundObjBase) // 802BE62C: 802BDF48 (__dt__14Z2SoundObjBaseFv) // 802BE63C: 802CED3C (__dl__FPv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm Z2DopplerSoundObjBase::~Z2DopplerSoundObjBase() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/__dt__21Z2DopplerSoundObjBaseFv.s" } #pragma pop /* 802BE65C-802BE6B8 005C+00 s=1 e=0 z=0 None .text init__21Z2DopplerSoundObjBaseFP3VecUc */ // 802BE670: 802BDFB0 (init__14Z2SoundObjBaseFP3VecUc) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2DopplerSoundObjBase::init(Vec* param_0, u8 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/init__21Z2DopplerSoundObjBaseFP3VecUc.s" } #pragma pop /* 802BE6B8-802BE714 005C+00 s=2 e=0 z=0 None .text framework__21Z2DopplerSoundObjBaseFUlSc */ // 802BE6CC: 802BE038 (framework__14Z2SoundObjBaseFUlSc) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2DopplerSoundObjBase::framework(u32 param_0, s8 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/framework__21Z2DopplerSoundObjBaseFUlSc.s" } #pragma pop /* 802BE714-802BE7AC 0098+00 s=2 e=0 z=0 None .text * startSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc */ // 802BE724: 803621DC (_savegpr_29) // 802BE744: 802BE144 (startSound__14Z2SoundObjBaseF10JAISoundIDUlSc) // 802BE768: 802A244C (acceptsNewAudible__8JAISoundCFv) // 802BE788: 802A2474 (func_802A2474) // 802BE798: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2DopplerSoundObjBase::startSound(JAISoundID param_0, u32 param_1, s8 param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/startSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc.s" } #pragma pop /* 802BE7AC-802BE844 0098+00 s=2 e=0 z=0 None .text * startLevelSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc */ // 802BE7BC: 803621DC (_savegpr_29) // 802BE7DC: 802BE2D4 (startLevelSound__14Z2SoundObjBaseF10JAISoundIDUlSc) // 802BE800: 802A244C (acceptsNewAudible__8JAISoundCFv) // 802BE820: 802A2474 (func_802A2474) // 802BE830: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2DopplerSoundObjBase::startLevelSound(JAISoundID param_0, u32 param_1, s8 param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/startLevelSound__21Z2DopplerSoundObjBaseF10JAISoundIDUlSc.s" } #pragma pop /* 802BE844-802BE880 003C+00 s=0 e=8 z=65 None .text __ct__16Z2SoundObjSimpleFv */ // 802BE858: 802BDEF0 (__ct__14Z2SoundObjBaseFv) // 802BE85C: 803CAD10 (__vt__16Z2SoundObjSimple) // 802BE860: 803CAD10 (__vt__16Z2SoundObjSimple) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm Z2SoundObjSimple::Z2SoundObjSimple() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/__ct__16Z2SoundObjSimpleFv.s" } #pragma pop /* 802BE880-802BE8A0 0020+00 s=1 e=0 z=0 None .text init__16Z2SoundObjSimpleFP3VecUc */ // 802BE88C: 802BDFB0 (init__14Z2SoundObjBaseFP3VecUc) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjSimple::init(Vec* param_0, u8 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/init__16Z2SoundObjSimpleFP3VecUc.s" } #pragma pop /* ############################################################################################## */ /* 80455B50-80455B54 0004+00 s=4 e=0 z=0 None .sdata2 @3821 */ SECTION_SDATA2 static u8 lit_3821[4] = { 0x00, 0x00, 0x00, 0x00, }; /* 80455B54-80455B58 0004+00 s=2 e=0 z=0 None .sdata2 @3822 */ SECTION_SDATA2 static f32 lit_3822 = 1.0f / 5.0f; /* 80455B58-80455B5C 0004+00 s=2 e=0 z=0 None .sdata2 @3823 */ SECTION_SDATA2 static f32 lit_3823 = 2.0f / 5.0f; /* 80455B5C-80455B60 0004+00 s=2 e=0 z=0 None .sdata2 @3824 */ SECTION_SDATA2 static f32 lit_3824 = 3.0f / 5.0f; /* 80455B60-80455B68 0004+04 s=2 e=0 z=0 None .sdata2 @3825 */ SECTION_SDATA2 static f32 lit_3825[1 + 1 /* padding */] = { 6.0f / 5.0f, /* padding */ 0.0f, }; /* 80455B68-80455B70 0008+00 s=3 e=0 z=0 None .sdata2 @3828 */ SECTION_SDATA2 static f64 lit_3828 = 4503599627370496.0 /* cast u32 to float */; /* 802BE8A0-802BE9B0 0110+00 s=1 e=0 z=0 None .text * startSound__16Z2SoundObjSimpleF10JAISoundIDUlSc */ // 802BE8B8: 803621DC (_savegpr_29) // 802BE8D0: 802BE144 (startSound__14Z2SoundObjBaseF10JAISoundIDUlSc) // 802BE8FC: 80455B68 (lit_3828) // 802BE914: 80455B50 (lit_3821) // 802BE918: 80455B38 (lit_3559) // 802BE91C: 80455B54 (lit_3822) // 802BE920: 80455B58 (lit_3823) // 802BE924: 80455B3C (lit_3560) // 802BE92C: 802A96F4 (getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign) // 802BE934: 80455B68 (lit_3828) // 802BE94C: 80455B50 (lit_3821) // 802BE950: 80455B38 (lit_3559) // 802BE954: 80455B54 (lit_3822) // 802BE958: 80455B5C (lit_3824) // 802BE95C: 80455B60 (lit_3825) // 802BE964: 802A96F4 (getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign) // 802BE974: 802A2E0C (movePitch__18JAISoundParamsMoveFfUl) // 802BE988: 802A2DB4 (moveVolume__18JAISoundParamsMoveFfUl) // 802BE99C: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjSimple::startSound(JAISoundID param_0, u32 param_1, s8 param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/startSound__16Z2SoundObjSimpleF10JAISoundIDUlSc.s" } #pragma pop /* ############################################################################################## */ /* 80455B70-80455B74 0004+00 s=1 e=0 z=0 None .sdata2 @3859 */ SECTION_SDATA2 static f32 lit_3859 = 2.0f; /* 80455B74-80455B78 0004+00 s=1 e=0 z=0 None .sdata2 @3860 */ SECTION_SDATA2 static f32 lit_3860 = 22.0f; /* 80455B78-80455B7C 0004+00 s=1 e=0 z=0 None .sdata2 @3861 */ SECTION_SDATA2 static f32 lit_3861 = 50.0f; /* 80455B7C-80455B80 0004+00 s=1 e=0 z=0 None .sdata2 @3862 */ SECTION_SDATA2 static f32 lit_3862 = 1.5f; /* 802BE9B0-802BEB38 0188+00 s=1 e=0 z=0 None .text * startLevelSound__16Z2SoundObjSimpleF10JAISoundIDUlSc */ // 802BE9C8: 803621DC (_savegpr_29) // 802BE9E0: 802BE2D4 (startLevelSound__14Z2SoundObjBaseF10JAISoundIDUlSc) // 802BE9F8: 80455B3C (lit_3560) // 802BEA2C: 80455B68 (lit_3828) // 802BEA44: 80455B50 (lit_3821) // 802BEA48: 80455B38 (lit_3559) // 802BEA4C: 80455B54 (lit_3822) // 802BEA50: 80455B58 (lit_3823) // 802BEA58: 802A96F4 (getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign) // 802BEA60: 80455B68 (lit_3828) // 802BEA78: 80455B50 (lit_3821) // 802BEA7C: 80455B38 (lit_3559) // 802BEA80: 80455B54 (lit_3822) // 802BEA84: 80455B5C (lit_3824) // 802BEA88: 80455B60 (lit_3825) // 802BEA90: 802A96F4 (getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign) // 802BEAA4: 80455B70 (lit_3859) // 802BEAB4: 80455B68 (lit_3828) // 802BEACC: 80455B74 (lit_3860) // 802BEAD0: 80455B78 (lit_3861) // 802BEAD4: 80455B58 (lit_3823) // 802BEADC: 80455B7C (lit_3862) // 802BEAE4: 802A96F4 (getParamByExp__6Z2CalcFffffffQ26Z2Calc9CurveSign) // 802BEAFC: 802A2E0C (movePitch__18JAISoundParamsMoveFfUl) // 802BEB10: 802A2DB4 (moveVolume__18JAISoundParamsMoveFfUl) // 802BEB24: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjSimple::startLevelSound(JAISoundID param_0, u32 param_1, s8 param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/startLevelSound__16Z2SoundObjSimpleF10JAISoundIDUlSc.s" } #pragma pop /* 802BEB38-802BEB74 003C+00 s=0 e=0 z=2 None .text __ct__15Z2SoundObjArrowFv */ // 802BEB4C: 802BE5A0 (__ct__21Z2DopplerSoundObjBaseFv) // 802BEB50: 803CACF0 (__vt__15Z2SoundObjArrow) // 802BEB54: 803CACF0 (__vt__15Z2SoundObjArrow) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm Z2SoundObjArrow::Z2SoundObjArrow() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/__ct__15Z2SoundObjArrowFv.s" } #pragma pop /* 802BEB74-802BEB94 0020+00 s=1 e=0 z=0 None .text init__15Z2SoundObjArrowFP3VecUc */ // 802BEB80: 802BDFB0 (init__14Z2SoundObjBaseFP3VecUc) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjArrow::init(Vec* param_0, u8 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/init__15Z2SoundObjArrowFP3VecUc.s" } #pragma pop /* 802BEB94-802BEBDC 0048+00 s=0 e=2 z=0 None .text __ct__15Z2SoundObjAnimeFv */ // 802BEBA8: 802BDEF0 (__ct__14Z2SoundObjBaseFv) // 802BEBAC: 803CACD0 (__vt__15Z2SoundObjAnime) // 802BEBB0: 803CACD0 (__vt__15Z2SoundObjAnime) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm Z2SoundObjAnime::Z2SoundObjAnime() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/__ct__15Z2SoundObjAnimeFv.s" } #pragma pop /* 802BEBDC-802BEBFC 0020+00 s=1 e=1 z=0 None .text init__15Z2SoundObjAnimeFP3VecUc */ // 802BEBE8: 802BDFB0 (init__14Z2SoundObjBaseFP3VecUc) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjAnime::init(Vec* param_0, u8 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/init__15Z2SoundObjAnimeFP3VecUc.s" } #pragma pop /* 802BEBFC-802BED68 016C+00 s=0 e=2 z=0 None .text initAnime__15Z2SoundObjAnimeFPvbff */ // 802BEC1C: 803621DC (_savegpr_29) // 802BEC34: 802BED68 (ageSounds___15Z2SoundObjAnimeFv) // 802BECA0: 80450AE8 (__float_max) // 802BECA4: 80450AE8 (__float_max) // 802BECAC: 80455B50 (lit_3821) // 802BECB8: 802A6F70 (getStartSoundIndex__17JAUSoundAnimationCFf) // 802BECCC: 802A7044 (getEndSoundIndex__17JAUSoundAnimationCFf) // 802BECDC: 80455B50 (lit_3821) // 802BECF0: 802A6F70 (getStartSoundIndex__17JAUSoundAnimationCFf) // 802BECF8: 80455B50 (lit_3821) // 802BED04: 802A7044 (getEndSoundIndex__17JAUSoundAnimationCFf) // 802BED18: 802A6F70 (getStartSoundIndex__17JAUSoundAnimationCFf) // 802BED54: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjAnime::initAnime(void* param_0, bool param_1, f32 param_2, f32 param_3) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/initAnime__15Z2SoundObjAnimeFPvbff.s" } #pragma pop /* 802BED68-802BEED4 016C+00 s=1 e=0 z=0 None .text ageSounds___15Z2SoundObjAnimeFv */ // 802BED90: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BEDB4: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BEDEC: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BEE14: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BEE28: 802A2598 (stop__8JAISoundFv) // 802BEE38: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BEE64: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BEE78: 802A2598 (stop__8JAISoundFv) // 802BEE88: 802DC20C (getNthLink__10JSUPtrListCFUl) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjAnime::ageSounds_() { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/ageSounds___15Z2SoundObjAnimeFv.s" } #pragma pop /* 802BEED4-802BF304 0430+00 s=0 e=2 z=0 None .text updateAnime__15Z2SoundObjAnimeFff */ // 802BEEF4: 803621DC (_savegpr_29) // 802BEF14: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BEF38: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BEF64: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF01C: 802BF660 (func_802BF660) // 802BF064: 802BF304 (updateSoundLifeTime___15Z2SoundObjAnimeFff) // 802BF084: 802BF660 (func_802BF660) // 802BF1A4: 802BF660 (func_802BF660) // 802BF1F0: 802BF304 (updateSoundLifeTime___15Z2SoundObjAnimeFff) // 802BF210: 802BF660 (func_802BF660) // 802BF2F0: 80362228 (_restgpr_29) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjAnime::updateAnime(f32 param_0, f32 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/updateAnime__15Z2SoundObjAnimeFff.s" } #pragma pop /* 802BF304-802BF660 035C+00 s=1 e=0 z=0 None .text updateSoundLifeTime___15Z2SoundObjAnimeFff */ // 802BF350: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF374: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF3AC: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF3C8: 80455B50 (lit_3821) // 802BF400: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF494: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF4C4: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF4F4: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF508: 802A2598 (stop__8JAISoundFv) // 802BF520: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF534: 802A2598 (stop__8JAISoundFv) // 802BF610: 802DC20C (getNthLink__10JSUPtrListCFUl) // 802BF624: 802A2598 (stop__8JAISoundFv) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjAnime::updateSoundLifeTime_(f32 param_0, f32 param_1) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/updateSoundLifeTime___15Z2SoundObjAnimeFff.s" } #pragma pop /* 802BF660-802BF890 0230+00 s=1 e=0 z=0 None .text * startSoundInner__15Z2SoundObjAnimeFRCQ29JGeometry8TVec3fP14Z2SoundStarterUlSc */ // 802BF678: 803621C4 (_savegpr_23) // 802BF718: 802BF898 (func_802BF898) // 802BF734: 802BF890 (func_802BF890) // 802BF740: 80450B88 (data_80450B88) // 802BF748: 802AE5B0 (isSoundCulling__7Z2SeMgrF10JAISoundID) // 802BF75C: 802AB2A0 (getHandleUserData__14Z2SoundHandlesFUl) // 802BF794: 802AB2D8 (getFreeHandle__14Z2SoundHandlesFv) // 802BF7C0: 80455B48 (lit_3564) // 802BF7DC: 80455B38 (lit_3559) // 802BF7EC: 80455B68 (lit_3828) // 802BF804: 80455B40 (lit_3561) // 802BF87C: 80362210 (_restgpr_23) #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjAnime::startSoundInner(JGeometry::TVec3 const& param_0, f32 param_1, Z2SoundStarter* param_2, u32 param_3, s8 param_4) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/func_802BF660.s" } #pragma pop /* 802BF890-802BF898 0008+00 s=1 e=0 z=0 None .text * getSoundID__15Z2SoundObjAnimeFPC22JAUSoundAnimationSoundRCQ29JGeometry8TVec3f */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjAnime::getSoundID(JAUSoundAnimationSound const* param_0, JGeometry::TVec3 const& param_1, f32 param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/func_802BF890.s" } #pragma pop /* 802BF898-802BF920 0088+00 s=1 e=0 z=0 None .text * playsSound__15Z2SoundObjAnimeFPC22JAUSoundAnimationSoundRCQ29JGeometry8TVec3f */ #pragma push #pragma optimization_level 0 #pragma optimizewithasm off asm void Z2SoundObjAnime::playsSound(JAUSoundAnimationSound const* param_0, JGeometry::TVec3 const& param_1, f32 param_2) { nofralloc #include "asm/Z2AudioLib/Z2SoundObject/func_802BF898.s" } #pragma pop