diff --git a/include/functions.h b/include/functions.h index f15d9e20bc..812e2dd2fd 100644 --- a/include/functions.h +++ b/include/functions.h @@ -2991,6 +2991,7 @@ void osFlashSectorEraseThrough(u32 pageNum); s32 osFlashWriteBuffer(OSIoMesg* mb, s32 priority, void* dramAddr, OSMesgQueue* mq); s32 osFlashWriteArray(u32 pageNum); s32 osFlashReadArray(OSIoMesg* mb, s32 priority, u32 pageNum, void* dramAddr, u32 pageCount, OSMesgQueue* mq); + // void func_801877D0(void); // void func_80187B64(void); // void func_80187BEC(void); @@ -3033,6 +3034,7 @@ s32 osFlashReadArray(OSIoMesg* mb, s32 priority, u32 pageNum, void* dramAddr, u3 // void func_8018A808(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE2 param_5, UNK_TYPE4 param_6); // void func_8018ACC4(void); // void func_8018AE34(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6); + void AudioHeap_DiscardFont(s32 fontId); void* AudioHeap_WritebackDCache(void* addr, size_t size); void* AudioHeap_AllocAttemptExternal(AudioAllocPool* pool, size_t size); @@ -3052,6 +3054,7 @@ void* AudioHeap_AllocPermanent(s32 tableType, s32 id, size_t size); void* AudioHeap_AllocSampleCache(size_t size, s32 sampleBankId, void* sampleAddr, s8 medium, s32 cache); void AudioHeap_ApplySampleBankCache(s32 sampleBankId); void AudioHeap_SetReverbData(s32 reverbIndex, u32 dataType, s32 data, s32 flags); + void AudioLoad_DecreaseSampleDmaTtls(void); void* AudioLoad_DmaSampleData(uintptr_t devAddr, size_t size, s32 arg2, u8* dmaIndexRef, s32 medium); void AudioLoad_InitSampleDmaBuffers(s32 numNotes); @@ -3080,6 +3083,7 @@ void AudioLoad_LoadPermanentSamples(void); void AudioLoad_ScriptLoad(s32 tableType, s32 id, s8* isDone); void AudioLoad_ProcessScriptLoads(void); void AudioLoad_InitScriptLoads(void); + AudioTask* func_80192BE0(void); // void func_80192C00(void); // void func_8019319C(void); @@ -3088,10 +3092,10 @@ AudioTask* func_80192BE0(void); // void func_80193774(void); // void func_8019380C(void); // void func_80193858(void); -// void func_8019387C(void); -void Audio_QueueCmdS8(u32 opArgs, s8 data); +void AudioThread_QueueCmdS32(u32 opArgs, s32 data); +void AudioThread_QueueCmdS8(u32 opArgs, s8 data); // void func_801938D0(void); -// void func_80193900(void); +s32 AudioThread_ScheduleProcessCmds(void); // void func_80193990(void); // void func_801939A8(void); // void func_80193AEC(void); @@ -3113,11 +3117,14 @@ void Audio_QueueCmdS8(u32 opArgs, s8 data); // void func_80194528(void); // void func_80194548(void); // void func_80194568(void); -u32 Audio_NextRandom(void); -void Audio_InitMesgQueues(void); +u32 AudioThread_NextRandom(void); +void AudioThread_InitMesgQueues(void); + void Audio_InvalDCache(void* buf, size_t size); void Audio_WritebackDCache(void* buf, size_t size); + s32 osAiSetNextBuffer(void* buf, u32 size); + void AudioPlayback_NoteDisable(Note* note); void AudioPlayback_ProcessNotes(void); SoundFontSound* AudioPlayback_InstrumentGetSound(Instrument* instrument, s32 semitone); @@ -3135,12 +3142,14 @@ void AudioPlayback_NotePoolFill(NotePool* pool, s32 count); void AudioPlayback_AudioListRemove(AudioListItem* item); Note* AudioPlayback_AllocNote(SequenceLayer* layer); void AudioPlayback_NoteInitAll(void); + void AudioEffects_SequencePlayerProcessSound(SequencePlayer* seqPlayer); void AudioEffects_NoteVibratoUpdate(Note* note); void AudioEffects_NoteVibratoInit(Note* note); void AudioEffects_NotePortamentoInit(Note* note); void AudioEffects_AdsrInit(AdsrState* adsr, EnvelopePoint* envelope, s16* volOut); f32 AudioEffects_AdsrUpdate(AdsrState* adsr); + void AudioSeq_SequenceChannelDisable(SequenceChannel* channel); void AudioSeq_SequencePlayerDisableAsFinished(SequencePlayer* seqPlayer); void AudioSeq_SequencePlayerDisable(SequencePlayer* seqPlayer); @@ -3151,6 +3160,7 @@ void AudioSeq_SkipForwardSequence(SequencePlayer* seqPlayer); void AudioSeq_ResetSequencePlayer(SequencePlayer* seqPlayer); void AudioSeq_InitSequencePlayerChannels(s32 playerIndex); void AudioSeq_InitSequencePlayers(void); + void func_8019AE40(s32 param_1, s32 param_2, u32 param_3, s32 param_4); void func_8019AEC0(UNK_PTR param_1, UNK_PTR param_2); @@ -3173,27 +3183,17 @@ void AudioOcarina_PlayLongScarecrowAfterCredits(void); void func_8019E014(void); // void func_8019E110(void); -// void func_8019E14C(void); -// void func_8019E324(void); -// void func_8019E4B0(void); -// void func_8019E634(void); -// void func_8019E864(void); -// void func_8019EA40(void); -// void func_8019EB2C(void); -// void func_8019F024(void); -// void func_8019F05C(void); +void AudioSfx_SetProperties(u8 bankId, u8 entryIndex, u8 channelIndex); void play_sound(u16 sfxId); void func_8019F128(u16 sfxId); void func_8019F170(Vec3f* pos, u16 sfxId); void Audio_PlaySfxAtPos(Vec3f* pos, u16 sfxId); void func_8019F208(void); // decide sfx void func_8019F230(void); // cancel sfx -// void func_8019F258(void); -// void func_8019F300(void); void func_8019F420(Vec3f* pos, u16 sfxId); void func_8019F4AC(Vec3f* pos, u16 sfxId); void func_8019F540(s8 arg0); -void func_8019F570(Vec3f* pos, s8 arg1); +void AudioSfx_LowerSfxSettingsReverb(Vec3f* pos, s8 isReverbLowered); // void func_8019F5AC(void); // void func_8019F638(void); // void func_8019F780(void); @@ -3225,7 +3225,7 @@ void func_801A0238(s32 arg0, s32 arg1); // void Audio_UpdateRiverSoundVolumes(void); // void func_801A0554(void); // void func_801A05F0(void); -void func_801A0654(Vec3f* arg0, u16 sfxId, s32 arg2); +void AudioSfx_SetChannelIO(Vec3f* pos, u16 sfxId, u8 ioData); void func_801A0810(Vec3f* arg0, u16 sfxId, u8 arg2); void func_801A0868(Vec3f* pos, u16 sfxId, u8 val); // void func_801A09D4(void); @@ -3307,14 +3307,14 @@ void func_801A479C(Vec3f* arg0, u16 sfxId, s32 arg2); void func_801A47DC(u8 channelIndexRange, u8 port, u8 val); // void func_801A48E0(void); void func_801A4A28(u8 natureSeqId); -// void func_801A4B80(void); -void func_801A4C30(void); -// void func_801A4C54(void); +// void Audio_SetNatureAmbienceRandomBend(void); +void Audio_Init(void); void func_801A4D00(void); // void func_801A4D50(void); // void func_801A4DA4(void); // void func_801A4DF4(void); // void func_801A4E64(void); + // void func_801A4EB0(void); // void func_801A4EB8(void); // void func_801A4FD8(void); @@ -3333,29 +3333,24 @@ UNK_TYPE func_801A51F0(UNK_TYPE arg0); // void func_801A5808(void); // void func_801A5A10(void); // void func_801A5A1C(void); -void Audio_SetSfxBanksMute(u16 muteMask); -void Audio_SetFlagForBgmVolumeLow(u8 channelIndex); -void Audio_ClearFlagForBgmVolumeLow(u8 channelIndex); -void Audio_PlaySfxGeneral(u16 sfxId, Vec3f* param_2, u8 param_3, f32* param_4, f32* param_5, s8* param_6); -// void func_801A5DDC(void); -// void func_801A5F7C(void); -// void func_801A6430(void); -// void func_801A65C8(void); -// void func_801A6D0C(void); -void func_801A7084(u8 bankId); -// void func_801A7168(void); -// void func_801A7284(void); -void Audio_StopSfxByPos(Vec3f* pos); -void func_801A7328(Vec3f* pos, u16 sfxId); -// void func_801A7484(void); -void Audio_StopSfxById(u16 sfxId); -// void func_801A7720(void); -void func_801A7794(u32 param_1, u32 param_2, u32 param_3); -// void func_801A7828(void); -// void func_801A787C(void); -u8 Audio_IsSfxPlaying(u32 sfxId); -// void func_801A794C(void); -// void func_801A7B10(void); + +void AudioSfx_MuteBanks(u16 muteMask); +void AudioSfx_LowerBgmVolume(u8 channelIndex); +void AudioSfx_RestoreBgmVolume(u8 channelIndex); +void AudioSfx_PlaySfx(u16 sfxId, Vec3f* pos, u8 token, f32* freqScale, f32* volume, s8* reverbAdd); +void AudioSfx_ProcessRequest(void); +void AudioSfx_StopByBank(u8 bankId); +void AudioSfx_StopByPosAndBank(u8 bankId, Vec3f* pos); +void AudioSfx_StopByPos(Vec3f* pos); +void AudioSfx_StopByPosAndId(Vec3f* pos, u16 sfxId); +void AudioSfx_StopByTokenAndId(u8 token, u16 sfxId); +void AudioSfx_StopById(u32 sfxId); +void AudioSfx_ProcessRequests(void); +void AudioSfx_ProcessActiveSfx(void); +u8 AudioSfx_IsPlaying(u32 sfxId); +void AudioSfx_Reset(void); + +void Audio_StartSequence(u8 playerIndex, u8 seqId, u8 seqArgs, u16 fadeTimer); // void func_801A7D04(void); // void func_801A7D84(void); void Audio_QueueSeqCmd(u32 cmd); diff --git a/include/sfx.h b/include/sfx.h index 6f432db989..33c79abf47 100644 --- a/include/sfx.h +++ b/include/sfx.h @@ -1,6 +1,19 @@ #ifndef SFX_H #define SFX_H +/** + * With `SFX_FLAG` on, play the entire sfx audio clip. + * Requesting the sfx while playing will restart the sfx from the beginning. + * i.e. sfx only needs to be requested once. + * + * With `SFX_FLAG` off, play the sfx for only one frame. + * Requesting the sfx while playing will allow the sfx to continue to the next frame. + * i.e. sfx needs to be requested every frame. + * + * By default, `SFX_FLAG` is on. + * Use `- SFX_FLAG` to turn `SFX_FLAG` off. + */ +#define SFX_FLAG_MASK 0xC00 #define SFX_FLAG 0x800 // ------------ PLAYER ------------ diff --git a/include/tables/sfx/enemybank_table.h b/include/tables/sfx/enemybank_table.h index c395730d98..e969fef593 100644 --- a/include/tables/sfx/enemybank_table.h +++ b/include/tables/sfx/enemybank_table.h @@ -22,12 +22,12 @@ /* 0x3808 */ DEFINE_SFX(NA_SE_EN_MIBOSS_FALL_OLD_OLD, 0x40, 3, 0, 0, 0) /* 0x3809 */ DEFINE_SFX(NA_SE_EN_MIBOSS_DAMAGE_OLD, 0x58, 3, 0, 0, 0) /* 0x380A */ DEFINE_SFX(NA_SE_EN_MIBOSS_DASH_OLD, 0x40, 3, 0, 0, 0) -/* 0x380B */ DEFINE_SFX(NA_SE_EN_MIBOSS_DEAD_OLD, 0x68, 3, 0, 0, SFX_FLAG_12) +/* 0x380B */ DEFINE_SFX(NA_SE_EN_MIBOSS_DEAD_OLD, 0x68, 3, 0, 0, SFX_FLAG_REVERB_NO_DIST) /* 0x380C */ DEFINE_SFX(NA_SE_EN_MIBOSS_GND1_OLD, 0x40, 3, 0, 0, 0) /* 0x380D */ DEFINE_SFX(NA_SE_EN_GOMA_DOWN, 0x30, 3, 0, 0, 0) /* 0x380E */ DEFINE_SFX(NA_SE_EN_MIBOSS_GND2_OLD, 0x40, 3, 0, 0, 0) /* 0x380F */ DEFINE_SFX(NA_SE_EN_MIBOSS_UNARI_OLD, 0x40, 3, 0, 0, 0) -/* 0x3810 */ DEFINE_SFX(NA_SE_EN_MIBOSS_RHYTHM_OLD, 0x54, 3, 0, 0, SFX_FLAG_3) +/* 0x3810 */ DEFINE_SFX(NA_SE_EN_MIBOSS_RHYTHM_OLD, 0x54, 3, 0, 0, SFX_FLAG_LOWER_VOLUME_BGM) /* 0x3811 */ DEFINE_SFX(NA_SE_EN_MIBOSS_SWORD_OLD, 0x54, 3, 0, 0, 0) /* 0x3812 */ DEFINE_SFX(NA_SE_EN_ANSATSUSYA_ENTRY, 0x30, 3, 0, 0, 0) /* 0x3813 */ DEFINE_SFX(NA_SE_EN_MIBOSS_JUMP1, 0x40, 3, 0, 0, 0) @@ -35,7 +35,7 @@ /* 0x3815 */ DEFINE_SFX(NA_SE_EN_MIBOSS_VOICE1_OLD, 0x54, 3, 0, 0, 0) /* 0x3816 */ DEFINE_SFX(NA_SE_EN_MIBOSS_VOICE2_OLD, 0x54, 3, 0, 0, 0) /* 0x3817 */ DEFINE_SFX(NA_SE_EN_MIBOSS_VOICE3_OLD, 0x54, 3, 0, 0, 0) -/* 0x3818 */ DEFINE_SFX(NA_SE_EN_INBOSS_SAND_OLD, 0x30, 3, 0, 0, SFX_FLAG_13) +/* 0x3818 */ DEFINE_SFX(NA_SE_EN_INBOSS_SAND_OLD, 0x30, 3, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3819 */ DEFINE_SFX(NA_SE_EN_INBOSS_ROAR_OLD, 0x50, 3, 0, 0, 0) /* 0x381A */ DEFINE_SFX(NA_SE_EN_INBOSS_DAMAGE_OLD, 0x58, 3, 0, 0, 0) /* 0x381B */ DEFINE_SFX(NA_SE_EN_COMMON_WEAKENED, 0x38, 3, 0, 0, 0) @@ -50,7 +50,7 @@ /* 0x3824 */ DEFINE_SFX(NA_SE_EN_DODO_M_UP, 0x14, 0, 0, 0, 0) /* 0x3825 */ DEFINE_SFX(NA_SE_EN_MIZUBABA_TRANSFORM, 0x30, 0, 0, 0, 0) /* 0x3826 */ DEFINE_SFX(NA_SE_EN_DODO_M_EAT, 0x30, 0, 0, 0, 0) -/* 0x3827 */ DEFINE_SFX(NA_SE_EN_MIZUBABA2_WALK, 0x28, 0, 0, 0, SFX_FLAG_14) +/* 0x3827 */ DEFINE_SFX(NA_SE_EN_MIZUBABA2_WALK, 0x28, 0, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3828 */ DEFINE_SFX(NA_SE_EN_BOMCHU_WALK, 0x28, 0, 0, 0, 0) /* 0x3829 */ DEFINE_SFX(NA_SE_EN_RIZA_CRY, 0x30, 2, 0, 0, 0) /* 0x382A */ DEFINE_SFX(NA_SE_EN_RIZA_ATTACK, 0x32, 2, 0, 0, 0) @@ -85,7 +85,7 @@ /* 0x3847 */ DEFINE_SFX(NA_SE_EN_EYEGOLE_DAMAGE, 0x38, 2, 0, 0, 0) /* 0x3848 */ DEFINE_SFX(NA_SE_EN_AMOS_VOICE, 0x20, 0, 0, 0, 0) /* 0x3849 */ DEFINE_SFX(NA_SE_EN_KUSAMUSHI_VIBE, 0x18, 0, 0, 0, 0) -/* 0x384A */ DEFINE_SFX(NA_SE_EN_BEE_FLY, 0x40, 7, 0, 0, SFX_FLAG_14) +/* 0x384A */ DEFINE_SFX(NA_SE_EN_BEE_FLY, 0x40, 7, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x384B */ DEFINE_SFX(NA_SE_EN_WOLFOS_DEAD, 0x40, 1, 0, 0, 0) /* 0x384C */ DEFINE_SFX(NA_SE_EN_COMMON_E_BALL, 0x30, 3, 0, 0, 0) /* 0x384D */ DEFINE_SFX(NA_SE_EN_COMMON_THUNDER_THR, 0x30, 3, 0, 0, 0) @@ -155,9 +155,9 @@ /* 0x388D */ DEFINE_SFX(NA_SE_EN_STALWALL_DASH, 0x30, 0, 0, 0, 0) /* 0x388E */ DEFINE_SFX(NA_SE_EN_TEKU_JUMP_WATER, 0x20, 0, 0, 0, 0) /* 0x388F */ DEFINE_SFX(NA_SE_EN_TEKU_LAND_WATER2, 0x20, 0, 0, 0, 0) -/* 0x3890 */ DEFINE_SFX(NA_SE_EN_FALL_AIM, 0x38, 0, 0, 0, SFX_FLAG_13) +/* 0x3890 */ DEFINE_SFX(NA_SE_EN_FALL_AIM, 0x38, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3891 */ DEFINE_SFX(NA_SE_EN_FALL_UP, 0x30, 3, 0, 0, 0) -/* 0x3892 */ DEFINE_SFX(NA_SE_EN_FALL_CATCH, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x3892 */ DEFINE_SFX(NA_SE_EN_FALL_CATCH, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3893 */ DEFINE_SFX(NA_SE_EN_FALL_LAND, 0x30, 0, 0, 0, 0) /* 0x3894 */ DEFINE_SFX(NA_SE_EN_FALL_WALK, 0x14, 0, 0, 0, 0) /* 0x3895 */ DEFINE_SFX(NA_SE_EN_FALL_DAMAGE, 0x38, 1, 0, 0, 0) @@ -183,13 +183,13 @@ /* 0x38A9 */ DEFINE_SFX(NA_SE_EN_WIZ_DAMAGE, 0x38, 3, 0, 0, 0) /* 0x38AA */ DEFINE_SFX(NA_SE_EN_WIZ_DEAD, 0x40, 3, 0, 0, 0) /* 0x38AB */ DEFINE_SFX(NA_SE_EN_WIZ_EXP, 0x30, 3, 0, 0, 0) -/* 0x38AC */ DEFINE_SFX(NA_SE_EN_DAIOCTA_DEAD, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x38AC */ DEFINE_SFX(NA_SE_EN_DAIOCTA_DEAD, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x38AD */ DEFINE_SFX(NA_SE_EN_DAIOCTA_DEAD2, 0x30, 3, 0, 0, 0) /* 0x38AE */ DEFINE_SFX(NA_SE_EN_FANTOM_DAMAGE, 0x38, 3, 0, 0, 0) /* 0x38AF */ DEFINE_SFX(NA_SE_EN_DAIOCTA_DAMAGE, 0x40, 3, 0, 0, 0) /* 0x38B0 */ DEFINE_SFX(NA_SE_EN_WIZ_LAUGH2, 0x30, 3, 0, 0, 0) /* 0x38B1 */ DEFINE_SFX(NA_SE_EN_GOLON_SIT_IMT, 0x30, 3, 0, 0, 0) -/* 0x38B2 */ DEFINE_SFX(NA_SE_EN_FANTOM_VOICE, 0x30, 3, 0, 0, SFX_FLAG_10) +/* 0x38B2 */ DEFINE_SFX(NA_SE_EN_FANTOM_VOICE, 0x30, 3, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x38B3 */ DEFINE_SFX(NA_SE_EN_KAICHO_DAMAGE, 0x38, 1, 0, 0, 0) /* 0x38B4 */ DEFINE_SFX(NA_SE_EN_GOLON_COLD, 0x30, 3, 1, 0, 0) /* 0x38B5 */ DEFINE_SFX(NA_SE_EN_GOLON_JUMP, 0x30, 3, 0, 0, 0) @@ -228,8 +228,8 @@ /* 0x38D6 */ DEFINE_SFX(NA_SE_EN_FROG_DEAD, 0x48, 3, 0, 0, 0) /* 0x38D7 */ DEFINE_SFX(NA_SE_EN_UTSUBO_BITE, 0x30, 3, 0, 0, 0) /* 0x38D8 */ DEFINE_SFX(NA_SE_EN_B_SLIME_REVERSE, 0x34, 3, 0, 0, 0) -/* 0x38D9 */ DEFINE_SFX(NA_SE_EN_SLIME_JUMP1, 0x30, 3, 2, 0, SFX_FLAG_14) -/* 0x38DA */ DEFINE_SFX(NA_SE_EN_SLIME_JUMP2, 0x30, 3, 2, 0, SFX_FLAG_14) +/* 0x38D9 */ DEFINE_SFX(NA_SE_EN_SLIME_JUMP1, 0x30, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x38DA */ DEFINE_SFX(NA_SE_EN_SLIME_JUMP2, 0x30, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x38DB */ DEFINE_SFX(NA_SE_EN_B_SLIME_BREAK, 0x40, 3, 0, 0, 0) /* 0x38DC */ DEFINE_SFX(NA_SE_EN_BARI_DAMAGE, 0x38, 1, 0, 0, 0) /* 0x38DD */ DEFINE_SFX(NA_SE_EN_HIPLOOP_LAND, 0x30, 1, 0, 0, 0) @@ -237,13 +237,13 @@ /* 0x38DF */ DEFINE_SFX(NA_SE_EN_MOFER_CORE_SMJUMP, 0x28, 3, 0, 0, 0) /* 0x38E0 */ DEFINE_SFX(NA_SE_EN_MONBLIN_GNDWAVE, 0x30, 3, 0, 0, 0) /* 0x38E1 */ DEFINE_SFX(NA_SE_EN_MONBLIN_HAM_DOWN, 0x30, 3, 0, 0, 0) -/* 0x38E2 */ DEFINE_SFX(NA_SE_EN_MONBLIN_HAM_UP, 0x30, 3, 0, 0, SFX_FLAG_13) +/* 0x38E2 */ DEFINE_SFX(NA_SE_EN_MONBLIN_HAM_UP, 0x30, 3, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x38E3 */ DEFINE_SFX(NA_SE_EN_BUBLE_DAMAGE, 0x38, 1, 0, 0, 0) /* 0x38E4 */ DEFINE_SFX(NA_SE_EN_REDEAD_CRY, 0x20, 0, 0, 0, 0) /* 0x38E5 */ DEFINE_SFX(NA_SE_EN_REDEAD_AIM, 0x34, 0, 0, 0, 0) /* 0x38E6 */ DEFINE_SFX(NA_SE_EN_REDEAD_DAMAGE, 0x38, 1, 0, 0, 0) /* 0x38E7 */ DEFINE_SFX(NA_SE_EN_REDEAD_DEAD, 0x40, 1, 0, 0, 0) -/* 0x38E8 */ DEFINE_SFX(NA_SE_EN_REDEAD_ATTACK, 0x34, 0, 0, 0, SFX_FLAG_13) +/* 0x38E8 */ DEFINE_SFX(NA_SE_EN_REDEAD_ATTACK, 0x34, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x38E9 */ DEFINE_SFX(NA_SE_EN_GOLON_KID_SOB, 0x20, 0, 0, 0, 0) /* 0x38EA */ DEFINE_SFX(NA_SE_EN_GOLON_KID_CRY, 0x38, 2, 1, 0, 0) /* 0x38EB */ DEFINE_SFX(NA_SE_EN_KAICHO_DEAD, 0x40, 1, 0, 0, 0) @@ -273,13 +273,13 @@ /* 0x3903 */ DEFINE_SFX(NA_SE_EN_KOUME_LAUGH, 0x30, 3, 2, 0, 0) /* 0x3904 */ DEFINE_SFX(NA_SE_EN_KOUME_FLY, 0x38, 3, 0, 0, 0) /* 0x3905 */ DEFINE_SFX(NA_SE_EN_KOUME_AWAY, 0x18, 3, 0, 0, 0) -/* 0x3906 */ DEFINE_SFX(NA_SE_EN_KOUME_MAGIC, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x3906 */ DEFINE_SFX(NA_SE_EN_KOUME_MAGIC, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3907 */ DEFINE_SFX(NA_SE_EN_DAIGOLON_SLEEP2, 0x38, 3, 0, 0, 0) /* 0x3908 */ DEFINE_SFX(NA_SE_EN_STALKIDS_JUMP, 0x30, 3, 0, 0, 0) /* 0x3909 */ DEFINE_SFX(NA_SE_EN_STALKIDS_FADEOUT, 0x40, 3, 0, 0, 0) -/* 0x390A */ DEFINE_SFX(NA_SE_EN_STALKIDS_LAUGH, 0x40, 4, 0, 0, SFX_FLAG_13) +/* 0x390A */ DEFINE_SFX(NA_SE_EN_STALKIDS_LAUGH, 0x40, 4, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x390B */ DEFINE_SFX(NA_SE_EN_STALKIDS_SHAKEHEAD, 0x38, 5, 0, 0, 0) -/* 0x390C */ DEFINE_SFX(NA_SE_EN_STALKIDS_ONGND, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x390C */ DEFINE_SFX(NA_SE_EN_STALKIDS_ONGND, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x390D */ DEFINE_SFX(NA_SE_EN_STALKIDS_SURPRISED, 0x30, 3, 0, 0, 0) /* 0x390E */ DEFINE_SFX(NA_SE_EN_STALKIDS_WALK, 0x30, 0, 2, 0, 0) /* 0x390F */ DEFINE_SFX(NA_SE_EN_STALKIDS_REVERSE, 0x30, 5, 0, 0, 0) @@ -290,11 +290,11 @@ /* 0x3914 */ DEFINE_SFX(NA_SE_EN_TWINROBA_CUTBODY, 0x30, 3, 0, 0, 0) /* 0x3915 */ DEFINE_SFX(NA_SE_EN_STALKIDS_MASK_OFF, 0x30, 4, 2, 0, 0) /* 0x3916 */ DEFINE_SFX(NA_SE_EN_STALKIDS_RIDE, 0x38, 0, 2, 0, 0) -/* 0x3917 */ DEFINE_SFX(NA_SE_EN_DEKNUTS_DANCE, 0x38, 3, 2, 0, SFX_FLAG_14 | SFX_FLAG_13) -/* 0x3918 */ DEFINE_SFX(NA_SE_EN_DEKNUTS_DANCE1, 0x38, 3, 2, 0, SFX_FLAG_14 | SFX_FLAG_13) -/* 0x3919 */ DEFINE_SFX(NA_SE_EN_DEKNUTS_DANCE2, 0x38, 3, 2, 0, SFX_FLAG_14 | SFX_FLAG_13) -/* 0x391A */ DEFINE_SFX(NA_SE_EN_DEKNUTS_DANCE_BIG, 0x38, 3, 2, 0, SFX_FLAG_14 | SFX_FLAG_13) -/* 0x391B */ DEFINE_SFX(NA_SE_EN_EYEGOLE_BEAM, 0x40, 2, 2, 0, SFX_FLAG_14) +/* 0x3917 */ DEFINE_SFX(NA_SE_EN_DEKNUTS_DANCE, 0x38, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER | SFX_FLAG_VOLUME_NO_DIST) +/* 0x3918 */ DEFINE_SFX(NA_SE_EN_DEKNUTS_DANCE1, 0x38, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER | SFX_FLAG_VOLUME_NO_DIST) +/* 0x3919 */ DEFINE_SFX(NA_SE_EN_DEKNUTS_DANCE2, 0x38, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER | SFX_FLAG_VOLUME_NO_DIST) +/* 0x391A */ DEFINE_SFX(NA_SE_EN_DEKNUTS_DANCE_BIG, 0x38, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER | SFX_FLAG_VOLUME_NO_DIST) +/* 0x391B */ DEFINE_SFX(NA_SE_EN_EYEGOLE_BEAM, 0x40, 2, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x391C */ DEFINE_SFX(NA_SE_EN_GOLON_EYE_BIG, 0x18, 3, 2, 0, 0) /* 0x391D */ DEFINE_SFX(NA_SE_EN_GOLON_GOOD_BIG, 0x30, 3, 0, 0, 0) /* 0x391E */ DEFINE_SFX(NA_SE_EN_STALKIDS_LAUGH_MID, 0x30, 3, 0, 0, 0) @@ -323,26 +323,26 @@ /* 0x3935 */ DEFINE_SFX(NA_SE_EN_KUSAMUSHI_HIDE, 0x20, 1, 0, 0, 0) /* 0x3936 */ DEFINE_SFX(NA_SE_EN_FLOORMASTER_SM_STICK, 0x38, 3, 0, 0, 0) /* 0x3937 */ DEFINE_SFX(NA_SE_EN_FLOORMASTER_SM_LAND, 0x30, 0, 0, 0, 0) -/* 0x3938 */ DEFINE_SFX(NA_SE_EN_B_SLIME_COMBINE, 0x40, 3, 0, 0, SFX_FLAG_14) -/* 0x3939 */ DEFINE_SFX(NA_SE_EN_B_SLIME_PUNCH_MOVE, 0x30, 3, 0, 0, SFX_FLAG_14) +/* 0x3938 */ DEFINE_SFX(NA_SE_EN_B_SLIME_COMBINE, 0x40, 3, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3939 */ DEFINE_SFX(NA_SE_EN_B_SLIME_PUNCH_MOVE, 0x30, 3, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x393A */ DEFINE_SFX(NA_SE_EN_IRONNACK_ARMOR_HIT, 0x38, 3, 0, 0, 0) /* 0x393B */ DEFINE_SFX(NA_SE_EN_CUTBODY, 0x38, 3, 0, 0, 0) /* 0x393C */ DEFINE_SFX(NA_SE_EN_LAST1_TRANSFORM, 0x40, 3, 0, 0, 0) /* 0x393D */ DEFINE_SFX(NA_SE_EN_LAST1_DEMO_BREAK, 0x40, 3, 2, 0, 0) /* 0x393E */ DEFINE_SFX(NA_SE_EN_LAST1_DEMO_WALL, 0x40, 3, 2, 0, 0) /* 0x393F */ DEFINE_SFX(NA_SE_EN_B_PAMET_BREAK, 0x40, 3, 0, 0, 0) -/* 0x3940 */ DEFINE_SFX(NA_SE_EN_KONB_DEMO_MOVE_OLD, 0x21, 3, 0, 0, SFX_FLAG_14) +/* 0x3940 */ DEFINE_SFX(NA_SE_EN_KONB_DEMO_MOVE_OLD, 0x21, 3, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3941 */ DEFINE_SFX(NA_SE_EN_KONB_JUMP_OLD, 0x54, 3, 0, 0, 0) /* 0x3942 */ DEFINE_SFX(NA_SE_EN_KONB_SINK_OLD, 0x54, 3, 0, 0, 0) /* 0x3943 */ DEFINE_SFX(NA_SE_EN_UTSUBO_EAT, 0x54, 3, 0, 0, 0) /* 0x3944 */ DEFINE_SFX(NA_SE_EN_YMAJIN_HOLD_SNOW, 0x34, 2, 0, 0, 0) /* 0x3945 */ DEFINE_SFX(NA_SE_EN_KONB_DAMAGE_OLD, 0x58, 3, 0, 0, 0) /* 0x3946 */ DEFINE_SFX(NA_SE_EN_KONB_DEAD_OLD, 0x68, 3, 0, 0, 0) -/* 0x3947 */ DEFINE_SFX(NA_SE_EN_KONB_BOUND_OLD, 0x50, 3, 3, 0, SFX_FLAG_14) +/* 0x3947 */ DEFINE_SFX(NA_SE_EN_KONB_BOUND_OLD, 0x50, 3, 3, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3948 */ DEFINE_SFX(NA_SE_EN_AWA_BOUND, 0x14, 0, 0, 0, 0) /* 0x3949 */ DEFINE_SFX(NA_SE_EN_AWA_BREAK, 0x20, 1, 0, 0, 0) -/* 0x394A */ DEFINE_SFX(NA_SE_EN_ICEB_FOOTSTEP_OLD, 0x48, 0, 2, 0, SFX_FLAG_14) -/* 0x394B */ DEFINE_SFX(NA_SE_EN_COMMON_THUNDER, 0x30, 0, 2, 0, SFX_FLAG_14) +/* 0x394A */ DEFINE_SFX(NA_SE_EN_ICEB_FOOTSTEP_OLD, 0x48, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x394B */ DEFINE_SFX(NA_SE_EN_COMMON_THUNDER, 0x30, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x394C */ DEFINE_SFX(NA_SE_EN_ICEB_CRY_OLD, 0x50, 1, 0, 0, 0) /* 0x394D */ DEFINE_SFX(NA_SE_EN_ICEB_STEAM_LONG_OLD, 0x50, 1, 0, 0, 0) /* 0x394E */ DEFINE_SFX(NA_SE_EN_ICEB_STEAMS_DEMO_OLD, 0x50, 0, 0, 0, 0) @@ -358,7 +358,7 @@ /* 0x3958 */ DEFINE_SFX(NA_SE_EN_KONB_BOUND2_OLD, 0x50, 3, 0, 0, 0) /* 0x3959 */ DEFINE_SFX(NA_SE_EN_KONB_DEAD_JUMP_OLD, 0x50, 3, 0, 0, 0) /* 0x395A */ DEFINE_SFX(NA_SE_EN_KONB_DEAD_JUMP2_OLD, 0x50, 3, 0, 0, 0) -/* 0x395B */ DEFINE_SFX(NA_SE_EN_FROG_JUMP, 0x40, 3, 2, 0, SFX_FLAG_14) +/* 0x395B */ DEFINE_SFX(NA_SE_EN_FROG_JUMP, 0x40, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x395C */ DEFINE_SFX(NA_SE_EN_FROG_GREET, 0x40, 3, 0, 0, 0) /* 0x395D */ DEFINE_SFX(NA_SE_EN_FROG_HOLD_SLIME, 0x40, 3, 0, 0, 0) /* 0x395E */ DEFINE_SFX(NA_SE_EN_FROG_THROW_SLIME, 0x40, 3, 0, 0, 0) @@ -371,7 +371,7 @@ /* 0x3965 */ DEFINE_SFX(NA_SE_EN_FROG_JUMP_ABOVE, 0x48, 3, 0, 0, 0) /* 0x3966 */ DEFINE_SFX(NA_SE_EN_FROG_KICK, 0x40, 3, 0, 0, 0) /* 0x3967 */ DEFINE_SFX(NA_SE_EN_YMAJIN_MINI_HOLD, 0x34, 2, 0, 0, 0) -/* 0x3968 */ DEFINE_SFX(NA_SE_EN_YMAJIN_MINI_THROW, 0x34, 2, 0, 0, SFX_FLAG_13) +/* 0x3968 */ DEFINE_SFX(NA_SE_EN_YMAJIN_MINI_THROW, 0x34, 2, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3969 */ DEFINE_SFX(NA_SE_EN_YMAJIN_MOVE, 0x28, 2, 0, 0, 0) /* 0x396A */ DEFINE_SFX(NA_SE_EN_YMAJIN_MINI_MOVE, 0x28, 2, 0, 0, 0) /* 0x396B */ DEFINE_SFX(NA_SE_EN_YMAJIN_SURFACE, 0x30, 2, 0, 0, 0) @@ -397,7 +397,7 @@ /* 0x397F */ DEFINE_SFX(NA_SE_EN_HIPLOOP_FOOTSTEP, 0x30, 1, 0, 0, 0) /* 0x3980 */ DEFINE_SFX(NA_SE_EN_DEKUHIME_WALK, 0x38, 3, 2, 0, 0) /* 0x3981 */ DEFINE_SFX(NA_SE_EN_DEKUHIME_TURN, 0x30, 3, 0, 0, 0) -/* 0x3982 */ DEFINE_SFX(NA_SE_EN_DEKUHIME_GREET, 0x20, 0, 0, 0, SFX_FLAG_13) +/* 0x3982 */ DEFINE_SFX(NA_SE_EN_DEKUHIME_GREET, 0x20, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3983 */ DEFINE_SFX(NA_SE_EN_DEKUHIME_GREET2, 0x30, 3, 0, 0, 0) /* 0x3984 */ DEFINE_SFX(NA_SE_EN_PIHAT_SM_FLY, 0x30, 0, 0, 0, 0) /* 0x3985 */ DEFINE_SFX(NA_SE_EN_PIHAT_SM_DEAD, 0x40, 1, 0, 0, 0) @@ -406,7 +406,7 @@ /* 0x3988 */ DEFINE_SFX(NA_SE_EN_RIVA_DAMAGE, 0x38, 1, 0, 0, 0) /* 0x3989 */ DEFINE_SFX(NA_SE_EN_RIVA_DEAD, 0x40, 1, 0, 0, 0) /* 0x398A */ DEFINE_SFX(NA_SE_EN_RIVA_MOVE, 0x30, 0, 0, 0, 0) -/* 0x398B */ DEFINE_SFX(NA_SE_EN_DEKUHIME_VOICE_SAD, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x398B */ DEFINE_SFX(NA_SE_EN_DEKUHIME_VOICE_SAD, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x398C */ DEFINE_SFX(NA_SE_EN_DEKUHIME_VOICE_JOY, 0x30, 3, 0, 0, 0) /* 0x398D */ DEFINE_SFX(NA_SE_EN_NUTS_JUMP, 0x30, 2, 0, 0, 0) /* 0x398E */ DEFINE_SFX(NA_SE_EN_NUTS_CLOTHES, 0x30, 3, 0, 0, 0) @@ -422,7 +422,7 @@ /* 0x3998 */ DEFINE_SFX(NA_SE_EN_PIRATE_ATTACK, 0x30, 2, 0, 0, 0) /* 0x3999 */ DEFINE_SFX(NA_SE_EN_PIRATE_DAMAGE, 0x38, 0, 0, 0, 0) /* 0x399A */ DEFINE_SFX(NA_SE_EN_PIRATE_DEAD, 0x48, 0, 0, 0, 0) -/* 0x399B */ DEFINE_SFX(NA_SE_EN_MB_MOTH_FLY, 0x28, 4, 0, 0, SFX_FLAG_14) +/* 0x399B */ DEFINE_SFX(NA_SE_EN_MB_MOTH_FLY, 0x28, 4, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x399C */ DEFINE_SFX(NA_SE_EN_MB_MOTH_DEAD, 0x48, 4, 0, 0, 0) /* 0x399D */ DEFINE_SFX(NA_SE_EN_MB_INSECT_WALK, 0x20, 4, 0, 0, 0) /* 0x399E */ DEFINE_SFX(NA_SE_EN_B_PAMET_ROLL, 0x25, 3, 0, 0, 0) @@ -451,8 +451,8 @@ /* 0x39B5 */ DEFINE_SFX(NA_SE_EN_LAST3_DEAD_WIND3_OLD, 0x34, 3, 0, 0, 0) /* 0x39B6 */ DEFINE_SFX(NA_SE_EN_LAST3_DEAD_LIGHTS_OLD, 0x40, 0, 0, 0, 0) /* 0x39B7 */ DEFINE_SFX(NA_SE_EN_PIRATE_BREATH, 0x30, 3, 0, 0, 0) -/* 0x39B8 */ DEFINE_SFX(NA_SE_EN_LAST3_DEAD_ROD, 0x40, 0, 0, 0, SFX_FLAG_13) -/* 0x39B9 */ DEFINE_SFX(NA_SE_EN_LAST2_SHOUT, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x39B8 */ DEFINE_SFX(NA_SE_EN_LAST3_DEAD_ROD, 0x40, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x39B9 */ DEFINE_SFX(NA_SE_EN_LAST2_SHOUT, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x39BA */ DEFINE_SFX(NA_SE_EN_LAST2_PUMP_UP_OLD, 0x30, 0, 3, 0, 0) /* 0x39BB */ DEFINE_SFX(NA_SE_EN_LAST2_GROW_HEAD_OLD, 0x30, 0, 3, 0, 0) /* 0x39BC */ DEFINE_SFX(NA_SE_EN_LAST2_HEARTBEAT_OLD, 0x40, 0, 0, 0, 0) @@ -486,15 +486,15 @@ /* 0x39D8 */ DEFINE_SFX(NA_SE_EN_MGANON_STAND, 0x34, 3, 0, 0, 0) /* 0x39D9 */ DEFINE_SFX(NA_SE_EN_LAST2_FIRE_OLD, 0x20, 3, 2, 0, 0) /* 0x39DA */ DEFINE_SFX(NA_SE_EN_STALGOLD_ROLL, 0x30, 4, 0, 0, 0) -/* 0x39DB */ DEFINE_SFX(NA_SE_EN_LAST2_WALK_OLD, 0x30, 2, 1, 0, SFX_FLAG_14) -/* 0x39DC */ DEFINE_SFX(NA_SE_EN_LAST2_WAIT_OLD, 0x40, 2, 1, 0, SFX_FLAG_14) +/* 0x39DB */ DEFINE_SFX(NA_SE_EN_LAST2_WALK_OLD, 0x30, 2, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x39DC */ DEFINE_SFX(NA_SE_EN_LAST2_WAIT_OLD, 0x40, 2, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x39DD */ DEFINE_SFX(NA_SE_EN_LAST2_JUMP_OLD, 0x40, 3, 2, 0, 0) -/* 0x39DE */ DEFINE_SFX(NA_SE_EN_LAST2_BIRD_OLD, 0x30, 2, 1, 0, SFX_FLAG_14) -/* 0x39DF */ DEFINE_SFX(NA_SE_EN_LAST2_BIRD2_OLD, 0x30, 2, 1, 0, SFX_FLAG_14) +/* 0x39DE */ DEFINE_SFX(NA_SE_EN_LAST2_BIRD_OLD, 0x30, 2, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x39DF */ DEFINE_SFX(NA_SE_EN_LAST2_BIRD2_OLD, 0x30, 2, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x39E0 */ DEFINE_SFX(NA_SE_EN_STALTU_WAVE, 0x30, 0, 0, 0, 0) /* 0x39E1 */ DEFINE_SFX(NA_SE_EN_STALTU_DOWN_SET, 0x30, 0, 0, 0, 0) /* 0x39E2 */ DEFINE_SFX(NA_SE_EN_DEKU_WAKEUP, 0x30, 1, 0, 0, 0) -/* 0x39E3 */ DEFINE_SFX(NA_SE_EN_LAST2_WALK2_OLD, 0x32, 2, 2, 0, SFX_FLAG_14) +/* 0x39E3 */ DEFINE_SFX(NA_SE_EN_LAST2_WALK2_OLD, 0x32, 2, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x39E4 */ DEFINE_SFX(NA_SE_EN_LAST1_FLOAT_OLD, 0x32, 3, 0, 0, 0) /* 0x39E5 */ DEFINE_SFX(NA_SE_EN_LAST1_ATTACK_2ND_OLD, 0x54, 1, 0, 0, 0) /* 0x39E6 */ DEFINE_SFX(NA_SE_EN_LAST1_ROLLING_OLD, 0x52, 0, 0, 0, 0) @@ -504,9 +504,9 @@ /* 0x39EA */ DEFINE_SFX(NA_SE_EN_STALGOLD_UP_CRY, 0x30, 1, 0, 0, 0) /* 0x39EB */ DEFINE_SFX(NA_SE_EN_GOLON_CRY, 0x30, 3, 0, 0, 0) /* 0x39EC */ DEFINE_SFX(NA_SE_EN_LAST3_ROD_SOFT, 0x54, 3, 0, 0, 0) -/* 0x39ED */ DEFINE_SFX(NA_SE_EN_LAST3_ROD_MID_OLD, 0x54, 0, 0, 0, SFX_FLAG_13) +/* 0x39ED */ DEFINE_SFX(NA_SE_EN_LAST3_ROD_MID_OLD, 0x54, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x39EE */ DEFINE_SFX(NA_SE_EN_RIVA_BIG_APPEAR, 0x34, 3, 0, 0, 0) -/* 0x39EF */ DEFINE_SFX(NA_SE_EN_LAST3_ROD_HARD, 0x54, 0, 0, 0, SFX_FLAG_13) +/* 0x39EF */ DEFINE_SFX(NA_SE_EN_LAST3_ROD_HARD, 0x54, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x39F0 */ DEFINE_SFX(NA_SE_EN_MUSI_WALK, 0x08, 0, 0, 0, 0) /* 0x39F1 */ DEFINE_SFX(NA_SE_EN_LAST3_COIL_ATTACK_OLD, 0x54, 0, 0, 0, 0) /* 0x39F2 */ DEFINE_SFX(NA_SE_EN_STALWALL_LAUGH, 0x34, 0, 0, 0, 0) @@ -523,8 +523,8 @@ /* 0x39FD */ DEFINE_SFX(NA_SE_EN_HANDW_RELEASE, 0x30, 0, 0, 0, 0) /* 0x39FE */ DEFINE_SFX(NA_SE_EN_SLIME_SURFACE, 0x30, 0, 0, 0, 0) /* 0x39FF */ DEFINE_SFX(NA_SE_EN_KOTAKE_SLEEP, 0x30, 0, 0, 0, 0) -/* 0x3A00 */ DEFINE_SFX(NA_SE_EN_KOTAKE_SURPRISED2, 0x30, 0, 2, SFX_FLAG2_0, 0) -/* 0x3A01 */ DEFINE_SFX(NA_SE_EN_NEMURI_SLEEP, 0x30, 6, 0, SFX_FLAG2_7 | SFX_FLAG2_5 | SFX_FLAG2_4 | SFX_FLAG2_2, 0) +/* 0x3A00 */ DEFINE_SFX(NA_SE_EN_KOTAKE_SURPRISED2, 0x30, 0, 2, SFX_FLAG2_FORCE_RESET, 0) +/* 0x3A01 */ DEFINE_SFX(NA_SE_EN_NEMURI_SLEEP, 0x30, 6, 0, SFX_FLAG2_APPLY_LOWPASS_FILTER | SFX_FLAG2_SURROUND_NO_HIGHPASS_FILTER | SFX_FLAG2_UNUSED4 | SFX_FLAG2_UNUSED2, 0) /* 0x3A02 */ DEFINE_SFX(NA_SE_EN_LAST1_DEAD_OLD, 0x30, 0, 0, 0, 0) /* 0x3A03 */ DEFINE_SFX(NA_SE_EN_GOLON_SIRLOIN_ROLL, 0x30, 6, 0, 0, 0) /* 0x3A04 */ DEFINE_SFX(NA_SE_EN_GOLON_VOICE_EATFULL, 0x30, 3, 2, 0, 0) @@ -555,15 +555,15 @@ /* 0x3A1D */ DEFINE_SFX(NA_SE_EN_INBOSS_DEAD_OLD, 0x68, 3, 0, 0, 0) /* 0x3A1E */ DEFINE_SFX(NA_SE_EN_LAST1_BEAM2_OLD, 0x30, 0, 0, 0, 0) /* 0x3A1F */ DEFINE_SFX(NA_SE_EN_COMMON_EXTINCT_LEV, 0x45, 2, 0, 0, 0) -/* 0x3A20 */ DEFINE_SFX(NA_SE_EN_BOSU_HEAD_MID, 0x40, 3, 1, 0, SFX_FLAG_14) -/* 0x3A21 */ DEFINE_SFX(NA_SE_EN_BOSU_HEAD_SHORT, 0x40, 3, 1, 0, SFX_FLAG_14) -/* 0x3A22 */ DEFINE_SFX(NA_SE_EN_DEBU_HEAD_MID, 0x30, 3, 1, 0, SFX_FLAG_14) -/* 0x3A23 */ DEFINE_SFX(NA_SE_EN_DEBU_HEAD_SHORT, 0x30, 3, 1, 0, SFX_FLAG_14) -/* 0x3A24 */ DEFINE_SFX(NA_SE_EN_YASE_HEAD_MID, 0x30, 3, 1, 0, SFX_FLAG_14) -/* 0x3A25 */ DEFINE_SFX(NA_SE_EN_YASE_HEAD_SHORT, 0x30, 3, 1, 0, SFX_FLAG_14) -/* 0x3A26 */ DEFINE_SFX(NA_SE_EN_BOSU_WALK, 0x30, 3, 2, 0, SFX_FLAG_14) -/* 0x3A27 */ DEFINE_SFX(NA_SE_EN_DEBU_WALK, 0x30, 3, 2, 0, SFX_FLAG_14) -/* 0x3A28 */ DEFINE_SFX(NA_SE_EN_YASE_WALK, 0x30, 3, 2, 0, SFX_FLAG_14) +/* 0x3A20 */ DEFINE_SFX(NA_SE_EN_BOSU_HEAD_MID, 0x40, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A21 */ DEFINE_SFX(NA_SE_EN_BOSU_HEAD_SHORT, 0x40, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A22 */ DEFINE_SFX(NA_SE_EN_DEBU_HEAD_MID, 0x30, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A23 */ DEFINE_SFX(NA_SE_EN_DEBU_HEAD_SHORT, 0x30, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A24 */ DEFINE_SFX(NA_SE_EN_YASE_HEAD_MID, 0x30, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A25 */ DEFINE_SFX(NA_SE_EN_YASE_HEAD_SHORT, 0x30, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A26 */ DEFINE_SFX(NA_SE_EN_BOSU_WALK, 0x30, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A27 */ DEFINE_SFX(NA_SE_EN_DEBU_WALK, 0x30, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A28 */ DEFINE_SFX(NA_SE_EN_YASE_WALK, 0x30, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3A29 */ DEFINE_SFX(NA_SE_EN_BOSU_SIT, 0x50, 3, 0, 0, 0) /* 0x3A2A */ DEFINE_SFX(NA_SE_EN_BOSU_STAND, 0x30, 3, 0, 0, 0) /* 0x3A2B */ DEFINE_SFX(NA_SE_EN_BOSU_HAND, 0x30, 3, 0, 0, 0) @@ -588,10 +588,10 @@ /* 0x3A3E */ DEFINE_SFX(NA_SE_EN_DEBU_DEAD, 0x38, 3, 1, 0, 0) /* 0x3A3F */ DEFINE_SFX(NA_SE_EN_YASE_DEAD, 0x48, 3, 1, 0, 0) /* 0x3A40 */ DEFINE_SFX(NA_SE_EN_DEBU_PAUSE_K, 0x34, 3, 2, 0, 0) -/* 0x3A41 */ DEFINE_SFX(NA_SE_EN_DEBU_LAUGH_SHORT_K, 0x34, 3, 1, 0, SFX_FLAG_14) -/* 0x3A42 */ DEFINE_SFX(NA_SE_EN_DEBU_LAUGH_K, 0x34, 3, 1, 0, SFX_FLAG_14) +/* 0x3A41 */ DEFINE_SFX(NA_SE_EN_DEBU_LAUGH_SHORT_K, 0x34, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A42 */ DEFINE_SFX(NA_SE_EN_DEBU_LAUGH_K, 0x34, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3A43 */ DEFINE_SFX(NA_SE_EN_YASE_PAUSE_K, 0x34, 3, 2, 0, 0) -/* 0x3A44 */ DEFINE_SFX(NA_SE_EN_YASE_LAUGH_K, 0x34, 3, 1, 0, SFX_FLAG_14) +/* 0x3A44 */ DEFINE_SFX(NA_SE_EN_YASE_LAUGH_K, 0x34, 3, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3A45 */ DEFINE_SFX(NA_SE_EN_BOSU_LAUGH_DEMO_K, 0x50, 3, 1, 0, 0) /* 0x3A46 */ DEFINE_SFX(NA_SE_EN_DEBU_LAUGH_SHORT, 0x34, 3, 1, 0, 0) /* 0x3A47 */ DEFINE_SFX(NA_SE_EN_BOSU_LAUGH_K, 0x50, 3, 1, 0, 0) @@ -621,10 +621,10 @@ /* 0x3A5F */ DEFINE_SFX(NA_SE_EN_LAST2_MOONWALK_OLD, 0x50, 3, 0, 0, 0) /* 0x3A60 */ DEFINE_SFX(NA_SE_EN_SHARP_FLOAT, 0x28, 4, 0, 0, 0) /* 0x3A61 */ DEFINE_SFX(NA_SE_EN_SHARP_REACTION, 0x34, 2, 0, 0, 0) -/* 0x3A62 */ DEFINE_SFX(NA_SE_EN_REDEAD_WEAKENED1, 0x30, 0, 2, 0, SFX_FLAG_14) -/* 0x3A63 */ DEFINE_SFX(NA_SE_EN_REDEAD_WEAKENED_L1, 0x30, 0, 2, 0, SFX_FLAG_14) -/* 0x3A64 */ DEFINE_SFX(NA_SE_EN_REDEAD_WEAKENED2, 0x30, 0, 2, 0, SFX_FLAG_14) -/* 0x3A65 */ DEFINE_SFX(NA_SE_EN_REDEAD_WEAKENED_L2, 0x30, 0, 2, 0, SFX_FLAG_14) +/* 0x3A62 */ DEFINE_SFX(NA_SE_EN_REDEAD_WEAKENED1, 0x30, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A63 */ DEFINE_SFX(NA_SE_EN_REDEAD_WEAKENED_L1, 0x30, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A64 */ DEFINE_SFX(NA_SE_EN_REDEAD_WEAKENED2, 0x30, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A65 */ DEFINE_SFX(NA_SE_EN_REDEAD_WEAKENED_L2, 0x30, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3A66 */ DEFINE_SFX(NA_SE_EN_PIRATE_ONGND, 0x30, 1, 0, 0, 0) /* 0x3A67 */ DEFINE_SFX(NA_SE_EN_FOLLOWERS_STAY, 0x30, 4, 2, 0, 0) /* 0x3A68 */ DEFINE_SFX(NA_SE_EN_LAST2_VOICE_BALLET, 0x50, 3, 0, 0, 0) @@ -652,22 +652,22 @@ /* 0x3A7E */ DEFINE_SFX(NA_SE_EN_STAL10_LAUGH_SHY, 0x34, 0, 0, 0, 0) /* 0x3A7F */ DEFINE_SFX(NA_SE_EN_STAL11_LAUGH_SHY2, 0x54, 0, 0, 0, 0) /* 0x3A80 */ DEFINE_SFX(NA_SE_EN_STAL12_LAUGH_KIDLY, 0x34, 0, 0, 0, 0) -/* 0x3A81 */ DEFINE_SFX(NA_SE_EN_STAL20_CALL_MOON, 0x34, 0, 0, 0, SFX_FLAG_13) -/* 0x3A82 */ DEFINE_SFX(NA_SE_EN_STAL20_CALL_MOON2, 0x34, 0, 0, 0, SFX_FLAG_13) +/* 0x3A81 */ DEFINE_SFX(NA_SE_EN_STAL20_CALL_MOON, 0x34, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x3A82 */ DEFINE_SFX(NA_SE_EN_STAL20_CALL_MOON2, 0x34, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3A83 */ DEFINE_SFX(NA_SE_EN_STAL21_PSYCHO_VOICE, 0x34, 0, 0, 0, 0) /* 0x3A84 */ DEFINE_SFX(NA_SE_EN_STALKIDS_DOWN_K, 0x30, 5, 0, 0, 0) /* 0x3A85 */ DEFINE_SFX(NA_SE_EN_AKINDO_FLY, 0x30, 1, 0, 0, 0) /* 0x3A86 */ DEFINE_SFX(NA_SE_EN_NPC_APPEAR, 0x30, 0, 0, 0, 0) /* 0x3A87 */ DEFINE_SFX(NA_SE_EN_NPC_FADEAWAY, 0x30, 0, 0, 0, 0) -/* 0x3A88 */ DEFINE_SFX(NA_SE_EN_DEBU_PAUSEx2, 0x34, 3, 2, 0, SFX_FLAG_14) -/* 0x3A89 */ DEFINE_SFX(NA_SE_EN_YASE_PAUSEx2, 0x34, 3, 2, 0, SFX_FLAG_14) -/* 0x3A8A */ DEFINE_SFX(NA_SE_EN_DEBU_HEAD_UP, 0x30, 3, 2, 0, SFX_FLAG_14) -/* 0x3A8B */ DEFINE_SFX(NA_SE_EN_YASE_HEAD_UP, 0x30, 3, 2, 0, SFX_FLAG_14) +/* 0x3A88 */ DEFINE_SFX(NA_SE_EN_DEBU_PAUSEx2, 0x34, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A89 */ DEFINE_SFX(NA_SE_EN_YASE_PAUSEx2, 0x34, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A8A */ DEFINE_SFX(NA_SE_EN_DEBU_HEAD_UP, 0x30, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x3A8B */ DEFINE_SFX(NA_SE_EN_YASE_HEAD_UP, 0x30, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3A8C */ DEFINE_SFX(NA_SE_EN_STAL22_LAUGH_KID_L, 0x34, 0, 0, 0, 0) /* 0x3A8D */ DEFINE_SFX(NA_SE_EN_EVIL_POWER, 0x30, 0, 0, 0, 0) -/* 0x3A8E */ DEFINE_SFX(NA_SE_NE_STAL23_COLD, 0x34, 3, 2, 0, SFX_FLAG_12) -/* 0x3A8F */ DEFINE_SFX(NA_SE_EN_STALKIDS_GASAGOSO, 0x30, 5, 0, 0, SFX_FLAG_12) -/* 0x3A90 */ DEFINE_SFX(NA_SE_EN_BOSU_TALK, 0x30, 0, 2, 0, SFX_FLAG_14) +/* 0x3A8E */ DEFINE_SFX(NA_SE_NE_STAL23_COLD, 0x34, 3, 2, 0, SFX_FLAG_REVERB_NO_DIST) +/* 0x3A8F */ DEFINE_SFX(NA_SE_EN_STALKIDS_GASAGOSO, 0x30, 5, 0, 0, SFX_FLAG_REVERB_NO_DIST) +/* 0x3A90 */ DEFINE_SFX(NA_SE_EN_BOSU_TALK, 0x30, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x3A91 */ DEFINE_SFX(NA_SE_EN_FAMOS_REVERSE1, 0x34, 0, 0, 0, 0) /* 0x3A92 */ DEFINE_SFX(NA_SE_EN_FAMOS_REVERSE2, 0x34, 0, 0, 0, 0) /* 0x3A93 */ DEFINE_SFX(NA_SE_EN_FAMOS_FLOAT, 0x30, 6, 0, 0, 0) @@ -697,8 +697,8 @@ /* 0x3AAB */ DEFINE_SFX(NA_SE_EN_KONB_WAIT_OLD, 0x30, 3, 0, 0, 0) /* 0x3AAC */ DEFINE_SFX(NA_SE_EN_DEATH_SCYTHE, 0x54, 5, 0, 0, 0) /* 0x3AAD */ DEFINE_SFX(NA_SE_EN_DEATH_ROLL, 0x28, 5, 0, 0, 0) -/* 0x3AAE */ DEFINE_SFX(NA_SE_EN_DEATH_SCYTHE_LEV, 0x78, 0, 0, 0, SFX_FLAG_13) -/* 0x3AAF */ DEFINE_SFX(NA_SE_EN_DEATH_SCYTHE_ONGND, 0x78, 0, 0, 0, SFX_FLAG_13) +/* 0x3AAE */ DEFINE_SFX(NA_SE_EN_DEATH_SCYTHE_LEV, 0x78, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x3AAF */ DEFINE_SFX(NA_SE_EN_DEATH_SCYTHE_ONGND, 0x78, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3AB0 */ DEFINE_SFX(NA_SE_EN_DEATH_VOICE, 0x50, 3, 0, 0, 0) /* 0x3AB1 */ DEFINE_SFX(NA_SE_EN_DEATH_DAMAGE, 0x58, 3, 0, 0, 0) /* 0x3AB2 */ DEFINE_SFX(NA_SE_EN_DEATH_DEAD, 0x68, 3, 0, 0, 0) @@ -714,14 +714,14 @@ /* 0x3ABC */ DEFINE_SFX(NA_SE_EN_IWAIGORON_EVERYBODY, 0x30, 0, 0, 0, 0) /* 0x3ABD */ DEFINE_SFX(NA_SE_EN_IWAIGORON_SOLO, 0x30, 3, 3, 0, 0) /* 0x3ABE */ DEFINE_SFX(NA_SE_EN_ROMANI_WALK, 0x30, 0, 2, 0, 0) -/* 0x3ABF */ DEFINE_SFX(NA_SE_EN_MOON_SCREAM1, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x3AC0 */ DEFINE_SFX(NA_SE_EN_MOON_SCREAM2, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x3AC1 */ DEFINE_SFX(NA_SE_EN_MOON_SCREAM3, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x3AC2 */ DEFINE_SFX(NA_SE_EN_MOON_SCREAM4, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x3AC3 */ DEFINE_SFX(NA_SE_EN_STALKIDS_HEADACHE, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x3ABF */ DEFINE_SFX(NA_SE_EN_MOON_SCREAM1, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x3AC0 */ DEFINE_SFX(NA_SE_EN_MOON_SCREAM2, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x3AC1 */ DEFINE_SFX(NA_SE_EN_MOON_SCREAM3, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x3AC2 */ DEFINE_SFX(NA_SE_EN_MOON_SCREAM4, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x3AC3 */ DEFINE_SFX(NA_SE_EN_STALKIDS_HEADACHE, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3AC4 */ DEFINE_SFX(NA_SE_EN_BIGNUTS_WALK, 0x30, 5, 1, 0, 0) /* 0x3AC5 */ DEFINE_SFX(NA_SE_EN_KITA_PAUSE, 0x60, 2, 0, 0, 0) -/* 0x3AC6 */ DEFINE_SFX(NA_SE_EN_ANSATSUSYA_LAUGH, 0x70, 0, 0, 0, SFX_FLAG_13) +/* 0x3AC6 */ DEFINE_SFX(NA_SE_EN_ANSATSUSYA_LAUGH, 0x70, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x3AC7 */ DEFINE_SFX(NA_SE_EN__copy514, 0x30, 0, 2, 0, 0) /* 0x3AC8 */ DEFINE_SFX(NA_SE_EN__copy515, 0x30, 0, 2, 0, 0) /* 0x3AC9 */ DEFINE_SFX(NA_SE_EN__copy516, 0x30, 0, 2, 0, 0) diff --git a/include/tables/sfx/environmentbank_table.h b/include/tables/sfx/environmentbank_table.h index c340f12f76..ab7945c348 100644 --- a/include/tables/sfx/environmentbank_table.h +++ b/include/tables/sfx/environmentbank_table.h @@ -11,13 +11,13 @@ * * WARNING: entries must align with the table defined for the environment bank in sequence 0 */ -/* 0x2800 */ DEFINE_SFX(NA_SE_EV_DOOR_OPEN, 0x70, 0, 1, 0, SFX_FLAG_10 | SFX_FLAG_9) +/* 0x2800 */ DEFINE_SFX(NA_SE_EV_DOOR_OPEN, 0x70, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX | SFX_FLAG_SURROUND_LOWPASS_FILTER) /* 0x2801 */ DEFINE_SFX(NA_SE_EV_DOOR_CLOSE, 0x80, 0, 1, 0, 0) /* 0x2802 */ DEFINE_SFX(NA_SE_EV_EXPLOSION, 0x30, 0, 0, 0, 0) /* 0x2803 */ DEFINE_SFX(NA_SE_EV_HORSE_WALK, 0x60, 0, 1, 0, 0) /* 0x2804 */ DEFINE_SFX(NA_SE_EV_HORSE_RUN, 0x60, 0, 1, 0, 0) /* 0x2805 */ DEFINE_SFX(NA_SE_EV_HORSE_NEIGH, 0x70, 0, 1, 0, 0) -/* 0x2806 */ DEFINE_SFX(NA_SE_EV_RIVER_STREAM, 0x30, 0, 2, 0, SFX_FLAG_10) +/* 0x2806 */ DEFINE_SFX(NA_SE_EV_RIVER_STREAM, 0x30, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x2807 */ DEFINE_SFX(NA_SE_EV_WATER_WALL_BIG, 0x70, 2, 0, 0, 0) /* 0x2808 */ DEFINE_SFX(NA_SE_EV_OUT_OF_WATER, 0x30, 0, 1, 0, 0) /* 0x2809 */ DEFINE_SFX(NA_SE_EV_DIVE_WATER, 0x30, 0, 1, 0, 0) @@ -44,18 +44,18 @@ /* 0x281E */ DEFINE_SFX(NA_SE_EV_STONE_STATUE_OPEN, 0x30, 3, 1, 0, 0) /* 0x281F */ DEFINE_SFX(NA_SE_EV_TBOX_UNLOCK, 0x30, 0, 0, 0, 0) /* 0x2820 */ DEFINE_SFX(NA_SE_EV_TBOX_OPEN, 0x30, 0, 0, 0, 0) -/* 0x2821 */ DEFINE_SFX(NA_SE_SY_TIMER, 0xA0, 0, 0, 0, SFX_FLAG_13 | SFX_FLAG_3) +/* 0x2821 */ DEFINE_SFX(NA_SE_SY_TIMER, 0xA0, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST | SFX_FLAG_LOWER_VOLUME_BGM) /* 0x2822 */ DEFINE_SFX(NA_SE_EV_FLAME_IGNITION, 0x20, 2, 0, 0, 0) /* 0x2823 */ DEFINE_SFX(NA_SE_EV_SPEAR_HIT, 0x30, 0, 0, 0, 0) -/* 0x2824 */ DEFINE_SFX(NA_SE_EV_ELEVATOR_MOVE, 0x30, 0, 0, 0, SFX_FLAG_11) -/* 0x2825 */ DEFINE_SFX(NA_SE_EV_WARP_HOLE, 0x30, 0, 0, 0, SFX_FLAG_15 | SFX_FLAG_11) -/* 0x2826 */ DEFINE_SFX(NA_SE_EV_LINK_WARP, 0x30, 0, 0, 0, SFX_FLAG_15) +/* 0x2824 */ DEFINE_SFX(NA_SE_EV_ELEVATOR_MOVE, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_SCALE) +/* 0x2825 */ DEFINE_SFX(NA_SE_EV_WARP_HOLE, 0x30, 0, 0, 0, SFX_FLAG_FREQ_NO_DIST | SFX_PARAM_RAND_FREQ_SCALE) +/* 0x2826 */ DEFINE_SFX(NA_SE_EV_LINK_WARP, 0x30, 0, 0, 0, SFX_FLAG_FREQ_NO_DIST) /* 0x2827 */ DEFINE_SFX(NA_SE_EV_PILLAR_SINK, 0x30, 2, 0, 0, 0) /* 0x2828 */ DEFINE_SFX(NA_SE_EV_WATER_WALL, 0x30, 0, 0, 0, 0) /* 0x2829 */ DEFINE_SFX(NA_SE_EV_RIVER_STREAM_S, 0x30, 0, 0, 0, 0) /* 0x282A */ DEFINE_SFX(NA_SE_EV_RIVER_STREAM_F, 0x30, 0, 0, 0, 0) /* 0x282B */ DEFINE_SFX(NA_SE_EV_KID_HORSE_LAND2, 0x60, 0, 0, 0, 0) -/* 0x282C */ DEFINE_SFX(NA_SE_EV_KID_HORSE_SANDDUST, 0x60, 0, 0, 0, SFX_FLAG_10) +/* 0x282C */ DEFINE_SFX(NA_SE_EV_KID_HORSE_SANDDUST, 0x60, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x282D */ DEFINE_SFX(NA_SE_EV_DUMMY_45, 0x30, 0, 0, 0, 0) /* 0x282E */ DEFINE_SFX(NA_SE_EV_LIGHTNING, 0x80, 0, 0, 0, 0) /* 0x282F */ DEFINE_SFX(NA_SE_EV_BOMB_BOUND, 0x30, 0, 2, 0, 0) @@ -63,9 +63,9 @@ /* 0x2831 */ DEFINE_SFX(NA_SE_EV_TORCH, 0x10, 0, 0, 0, 0) /* 0x2832 */ DEFINE_SFX(NA_SE_EV_MAGMA_LEVEL_M, 0xA0, 3, 0, 0, 0) /* 0x2833 */ DEFINE_SFX(NA_SE_EV_FIRE_PILLAR, 0x30, 0, 0, 0, SFX_FLAG_8) -/* 0x2834 */ DEFINE_SFX(NA_SE_EV_FIRE_PLATE, 0x30, 0, 0, 0, SFX_FLAG_4) +/* 0x2834 */ DEFINE_SFX(NA_SE_EV_FIRE_PLATE, 0x30, 0, 0, 0, SFX_FLAG_PRIORITY_NO_DIST) /* 0x2835 */ DEFINE_SFX(NA_SE_EV_BLOCK_BOUND, 0x30, 3, 0, 0, 0) -/* 0x2836 */ DEFINE_SFX(NA_SE_EV_METALDOOR_SLIDE, 0x60, 3, 0, SFX_FLAG2_6, 0) +/* 0x2836 */ DEFINE_SFX(NA_SE_EV_METALDOOR_SLIDE, 0x60, 3, 0, SFX_FLAG2_UNUSED6, 0) /* 0x2837 */ DEFINE_SFX(NA_SE_EV_METALDOOR_STOP, 0x30, 0, 0, 0, 0) /* 0x2838 */ DEFINE_SFX(NA_SE_EV_BLOCK_SHAKE, 0x30, 0, 0, 0, 0) /* 0x2839 */ DEFINE_SFX(NA_SE_EV_BOX_BREAK, 0x30, 2, 0, 0, 0) @@ -75,16 +75,16 @@ /* 0x283D */ DEFINE_SFX(NA_SE_EV_WATERDROP_GRD, 0x30, 0, 0, 0, 0) /* 0x283E */ DEFINE_SFX(NA_SE_EV_EXPLSION_LONG, 0x30, 3, 0, 0, 0) /* 0x283F */ DEFINE_SFX(NA_SE_EV_WATER_WALL_BIG_SILENT, 0x70, 0, 0, 0, 0) -/* 0x2840 */ DEFINE_SFX(NA_SE_EV_DESERT_WARPHOLE, 0x60, 0, 0, 0, SFX_FLAG_15) -/* 0x2841 */ DEFINE_SFX(NA_SE_EV_FOUNTAIN, 0x30, 0, 0, 0, SFX_FLAG_15) +/* 0x2840 */ DEFINE_SFX(NA_SE_EV_DESERT_WARPHOLE, 0x60, 0, 0, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x2841 */ DEFINE_SFX(NA_SE_EV_FOUNTAIN, 0x30, 0, 0, 0, SFX_FLAG_FREQ_NO_DIST) /* 0x2842 */ DEFINE_SFX(NA_SE_EV_KID_HORSE_WALK, 0x60, 0, 0, 0, 0) /* 0x2843 */ DEFINE_SFX(NA_SE_EV_KID_HORSE_RUN, 0x60, 0, 0, 0, 0) /* 0x2844 */ DEFINE_SFX(NA_SE_EV_KID_HORSE_NEIGH, 0x60, 0, 0, 0, 0) /* 0x2845 */ DEFINE_SFX(NA_SE_EV_KID_HORSE_GROAN, 0x60, 0, 0, 0, 0) -/* 0x2846 */ DEFINE_SFX(NA_SE_EV_S_STONE_FLASH, 0x30, 3, 0, 0, SFX_FLAG_13) +/* 0x2846 */ DEFINE_SFX(NA_SE_EV_S_STONE_FLASH, 0x30, 3, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2847 */ DEFINE_SFX(NA_SE_EV_LIGHT_GATHER, 0x30, 0, 0, 0, 0) /* 0x2848 */ DEFINE_SFX(NA_SE_EV_TREE_CUT, 0x30, 0, 0, 0, 0) -/* 0x2849 */ DEFINE_SFX(NA_SE_EV_VOLCANO, 0x30, 0, 0, 0, SFX_FLAG_13 | SFX_FLAG_4) +/* 0x2849 */ DEFINE_SFX(NA_SE_EV_VOLCANO, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST | SFX_FLAG_PRIORITY_NO_DIST) /* 0x284A */ DEFINE_SFX(NA_SE_EV_POSTMAN_WALK, 0x30, 0, 1, 0, 0) /* 0x284B */ DEFINE_SFX(NA_SE_EV_POSTMACHINE_HIT_OPEN, 0x60, 0, 0, 0, 0) /* 0x284C */ DEFINE_SFX(NA_SE_EV_POSTMACHINE_OPEN, 0x60, 3, 0, 0, 0) @@ -104,7 +104,7 @@ /* 0x285A */ DEFINE_SFX(NA_SE_EV_METALDOOR_CLOSE, 0x90, 3, 0, 0, 0) /* 0x285B */ DEFINE_SFX(NA_SE_EV_BURN_OUT, 0x30, 0, 0, 0, 0) /* 0x285C */ DEFINE_SFX(NA_SE_EV_BLOCKSINK, 0x30, 2, 0, 0, 0) -/* 0x285D */ DEFINE_SFX(NA_SE_EV_CROWD, 0x30, 0, 0, 0, SFX_FLAG_13 | SFX_FLAG_12 | SFX_FLAG_11) +/* 0x285D */ DEFINE_SFX(NA_SE_EV_CROWD, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST | SFX_FLAG_REVERB_NO_DIST | SFX_PARAM_RAND_FREQ_SCALE) /* 0x285E */ DEFINE_SFX(NA_SE_EV_WATER_LEVEL_DOWN, 0x30, 0, 0, 0, 0) /* 0x285F */ DEFINE_SFX(NA_SE_EV_NAVY_VANISH, 0x30, 0, 0, 0, 0) /* 0x2860 */ DEFINE_SFX(NA_SE_EV_STONE_SWITCH_OFF, 0x30, 3, 0, 0, 0) @@ -120,7 +120,7 @@ /* 0x286A */ DEFINE_SFX(NA_SE_EV_KAKASHI_SWING, 0x30, 0, 0, 0, 0) /* 0x286B */ DEFINE_SFX(NA_SE_EV_KAKASHI_ROLL, 0x30, 0, 0, 0, 0) /* 0x286C */ DEFINE_SFX(NA_SE_EV_BOTTLE_CAP_OPEN, 0x30, 3, 0, 0, 0) -/* 0x286D */ DEFINE_SFX(NA_SE_EV_G_STONE_CRUSH, 0x30, 3, 0, 0, SFX_FLAG_11) +/* 0x286D */ DEFINE_SFX(NA_SE_EV_G_STONE_CRUSH, 0x30, 3, 0, 0, SFX_PARAM_RAND_FREQ_SCALE) /* 0x286E */ DEFINE_SFX(NA_SE_EV_KAKASH_LONGI_ROLL, 0x30, 0, 0, 0, 0) /* 0x286F */ DEFINE_SFX(NA_SE_EV_SUN_MARK_FLASH, 0x30, 3, 0, 0, 0) /* 0x2870 */ DEFINE_SFX(NA_SE_EV_FALL_DOWN_DIRT, 0x30, 0, 0, 0, 0) @@ -131,7 +131,7 @@ /* 0x2875 */ DEFINE_SFX(NA_SE_EV_DROP_FALL, 0x30, 0, 0, 0, 0) /* 0x2876 */ DEFINE_SFX(NA_SE_EV_WOOD_GEAR, 0x30, 2, 0, 0, 0) /* 0x2877 */ DEFINE_SFX(NA_SE_EV_TREE_SWING, 0x60, 0, 0, 0, 0) -/* 0x2878 */ DEFINE_SFX(NA_SE_EV_AUTO_DOOR_CLOSE, 0x30, 0, 1, 0, SFX_FLAG_10 | SFX_FLAG_9) +/* 0x2878 */ DEFINE_SFX(NA_SE_EV_AUTO_DOOR_CLOSE, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX | SFX_FLAG_SURROUND_LOWPASS_FILTER) /* 0x2879 */ DEFINE_SFX(NA_SE_EV_NAVY_FLY_REBIRTH, 0x30, 2, 0, 0, 0) /* 0x287A */ DEFINE_SFX(NA_SE_EV_CHAINLIFT_STOP, 0x30, 2, 0, 0, 0) /* 0x287B */ DEFINE_SFX(NA_SE_EV_TRE_BOX_APPEAR, 0x80, 2, 0, 0, 0) @@ -145,7 +145,7 @@ /* 0x2883 */ DEFINE_SFX(NA_SE_EV_WALL_SLIDE, 0x30, 0, 0, 0, 0) /* 0x2884 */ DEFINE_SFX(NA_SE_EV_TRE_BOX_FLASH, 0x30, 0, 0, 0, 0) /* 0x2885 */ DEFINE_SFX(NA_SE_EV_WINDMILL_LEVEL, 0x60, 4, 0, 0, 0) -/* 0x2886 */ DEFINE_SFX(NA_SE_EV_GOTO_HEAVEN, 0x30, 0, 0, 0, SFX_FLAG_11) +/* 0x2886 */ DEFINE_SFX(NA_SE_EV_GOTO_HEAVEN, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_SCALE) /* 0x2887 */ DEFINE_SFX(NA_SE_EV_POT_BROKEN, 0x30, 0, 1, 0, 0) /* 0x2888 */ DEFINE_SFX(NA_SE_PL_PUT_DOWN_POT, 0x30, 0, 0, 0, 0) /* 0x2889 */ DEFINE_SFX(NA_SE_EV_DIVE_INTO_WATER, 0x60, 0, 0, 0, 0) @@ -157,7 +157,7 @@ /* 0x288F */ DEFINE_SFX(NA_SE_EV_BUYOSTAND_RISING, 0x30, 3, 0, 0, 0) /* 0x2890 */ DEFINE_SFX(NA_SE_EV_BUYOSTAND_FALL, 0x30, 3, 0, 0, 0) /* 0x2891 */ DEFINE_SFX(NA_SE_EV_MILK_POT_BROKEN, 0x80, 0, 0, 0, 0) -/* 0x2892 */ DEFINE_SFX(NA_SE_EV_CHAIR_ROLL, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2892 */ DEFINE_SFX(NA_SE_EV_CHAIR_ROLL, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2893 */ DEFINE_SFX(NA_SE_EV_STONEDOOR_STOP, 0x30, 3, 0, 0, 0) /* 0x2894 */ DEFINE_SFX(NA_SE_EV_S_STONE_REVIVAL, 0x30, 0, 0, 0, 0) /* 0x2895 */ DEFINE_SFX(NA_SE_EV_WATER_TANK, 0x30, 0, 0, 0, 0) @@ -167,8 +167,8 @@ /* 0x2899 */ DEFINE_SFX(NA_SE_EV_SWEEP, 0x30, 0, 0, 0, 0) /* 0x289A */ DEFINE_SFX(NA_SE_EV_GOD_LIGHTBALL_2, 0x30, 0, 0, 0, 0) /* 0x289B */ DEFINE_SFX(NA_SE_EV_RUN_AROUND, 0x30, 0, 0, 0, 0) -/* 0x289C */ DEFINE_SFX(NA_SE_EV_CONSENTRATION, 0x30, 0, 0, 0, SFX_FLAG_11) -/* 0x289D */ DEFINE_SFX(NA_SE_EV_TIMETRIP_LIGHT, 0x30, 0, 0, 0, SFX_FLAG_11) +/* 0x289C */ DEFINE_SFX(NA_SE_EV_CONSENTRATION, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_SCALE) +/* 0x289D */ DEFINE_SFX(NA_SE_EV_TIMETRIP_LIGHT, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_SCALE) /* 0x289E */ DEFINE_SFX(NA_SE_EV_DOOR_BELL, 0x30, 2, 0, 0, 0) /* 0x289F */ DEFINE_SFX(NA_SE_EV_BOUND_ON_MAGMA, 0x30, 3, 0, 0, 0) /* 0x28A0 */ DEFINE_SFX(NA_SE_EV_HONEYCOMB_FALL, 0x30, 0, 0, 0, 0) @@ -177,7 +177,7 @@ /* 0x28A3 */ DEFINE_SFX(NA_SE_EV_FIRE_PILLAR_S, 0x30, 0, 0, 0, 0) /* 0x28A4 */ DEFINE_SFX(NA_SE_EV_BLOCK_RISING, 0x20, 3, 0, 0, 0) /* 0x28A5 */ DEFINE_SFX(NA_SE_EV_CHINCLE_SPELL_EFFECT, 0x30, 0, 0, 0, 0) -/* 0x28A6 */ DEFINE_SFX(NA_SE_EV_LINK_WARP_IN, 0x30, 0, 0, 0, SFX_FLAG_15) +/* 0x28A6 */ DEFINE_SFX(NA_SE_EV_LINK_WARP_IN, 0x30, 0, 0, 0, SFX_FLAG_FREQ_NO_DIST) /* 0x28A7 */ DEFINE_SFX(NA_SE_EV_LINK_WARP_OUT, 0x30, 0, 0, 0, 0) /* 0x28A8 */ DEFINE_SFX(NA_SE_EV_FIATY_HEAL, 0x30, 0, 0, 0, 0) /* 0x28A9 */ DEFINE_SFX(NA_SE_EV_CHAIN_KEY_UNLOCK_B, 0x30, 0, 0, 0, 0) @@ -189,12 +189,12 @@ /* 0x28AF */ DEFINE_SFX(NA_SE_EV_JABJAB_HICCUP, 0x30, 0, 0, 0, 0) /* 0x28B0 */ DEFINE_SFX(NA_SE_EV_STICK_SWING, 0x30, 0, 0, 0, 0) /* 0x28B1 */ DEFINE_SFX(NA_SE_EV_FROG_JUMP, 0x30, 0, 0, 0, 0) -/* 0x28B2 */ DEFINE_SFX(NA_SE_EV_ICE_FREEZE, 0x30, 3, 0, 0, SFX_FLAG_13) +/* 0x28B2 */ DEFINE_SFX(NA_SE_EV_ICE_FREEZE, 0x30, 3, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x28B3 */ DEFINE_SFX(NA_SE_EV_BURNING, 0x20, 0, 0, 0, 0) /* 0x28B4 */ DEFINE_SFX(NA_SE_EV_WOODPLATE_BOUND, 0x30, 0, 3, 0, 0) -/* 0x28B5 */ DEFINE_SFX(NA_SE_EV_MOON_CRY, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x28B5 */ DEFINE_SFX(NA_SE_EV_MOON_CRY, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x28B6 */ DEFINE_SFX(NA_SE_EV_JABJAB_GROAN, 0x30, 0, 0, 0, 0) -/* 0x28B7 */ DEFINE_SFX(NA_SE_EV_WAVE_S, 0x30, 2, 0, 0, SFX_FLAG_10) +/* 0x28B7 */ DEFINE_SFX(NA_SE_EV_WAVE_S, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x28B8 */ DEFINE_SFX(NA_SE_EV_BIGBALL_ROLL, 0x30, 0, 0, 0, 0) /* 0x28B9 */ DEFINE_SFX(NA_SE_EV_ELEVATOR_MOVE3, 0x30, 0, 0, 0, 0) /* 0x28BA */ DEFINE_SFX(NA_SE_EV_DIAMOND_SWITCH, 0x30, 2, 0, 0, 0) @@ -220,20 +220,20 @@ /* 0x28CE */ DEFINE_SFX(NA_SE_EV_GROUND_GATE_OPEN, 0x30, 3, 0, 0, 0) /* 0x28CF */ DEFINE_SFX(NA_SE_EV_FACE_BREAKDOWN, 0x30, 3, 0, 0, 0) /* 0x28D0 */ DEFINE_SFX(NA_SE_EV_TOILET_HAND_APPEAR, 0x30, 0, 0, 0, 0) -/* 0x28D1 */ DEFINE_SFX(NA_SE_EV_TOILET_HAND_VANISH, 0x30, 3, 2, 0, SFX_FLAG_14) +/* 0x28D1 */ DEFINE_SFX(NA_SE_EV_TOILET_HAND_VANISH, 0x30, 3, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x28D2 */ DEFINE_SFX(NA_SE_EV_ROUND_TRAP_MOVE, 0x30, 0, 0, 0, 0) /* 0x28D3 */ DEFINE_SFX(NA_SE_EV_HIT_SOUND, 0x30, 0, 0, 0, 0) /* 0x28D4 */ DEFINE_SFX(NA_SE_EV_ICE_SWING, 0x30, 0, 0, 0, 0) /* 0x28D5 */ DEFINE_SFX(NA_SE_EV_DOWN_TO_GROUND, 0x30, 0, 0, 0, 0) /* 0x28D6 */ DEFINE_SFX(NA_SE_EV_BIG_TORTOISE_SWIM, 0x60, 3, 2, 0, 0) -/* 0x28D7 */ DEFINE_SFX(NA_SE_EV_TORTOISE_WAKE_UP, 0x80, 0, 0, 0, SFX_FLAG_13) +/* 0x28D7 */ DEFINE_SFX(NA_SE_EV_TORTOISE_WAKE_UP, 0x80, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x28D8 */ DEFINE_SFX(NA_SE_EV_SMALL_DOG_BARK, 0x50, 0, 0, 0, 0) /* 0x28D9 */ DEFINE_SFX(NA_SE_EV_RUPY_FALL, 0x60, 0, 0, 0, 0) /* 0x28DA */ DEFINE_SFX(NA_SE_EV_RAIN, 0x90, 0, 0, 0, 0) /* 0x28DB */ DEFINE_SFX(NA_SE_EV_IRON_DOOR_OPEN, 0x30, 0, 0, 0, 0) /* 0x28DC */ DEFINE_SFX(NA_SE_EV_IRON_DOOR_CLOSE, 0x30, 0, 0, 0, 0) /* 0x28DD */ DEFINE_SFX(NA_SE_EV_WHIRLPOOL, 0x30, 0, 0, 0, 0) -/* 0x28DE */ DEFINE_SFX(NA_SE_EV_BIG_TORTOISE_ROLL, 0x60, 0, 0, 0, SFX_FLAG_13) +/* 0x28DE */ DEFINE_SFX(NA_SE_EV_BIG_TORTOISE_ROLL, 0x60, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x28DF */ DEFINE_SFX(NA_SE_EV_COW_CRY, 0x30, 0, 0, 0, 0) /* 0x28E0 */ DEFINE_SFX(NA_SE_EV_METAL_BOX_BOUND, 0x30, 0, 0, 0, 0) /* 0x28E1 */ DEFINE_SFX(NA_SE_EV_ELECTRIC_EXPLOSION, 0x30, 3, 0, 0, 0) @@ -243,7 +243,7 @@ /* 0x28E5 */ DEFINE_SFX(NA_SE_EV_COW_CRY_LV, 0x30, 0, 0, 0, 0) /* 0x28E6 */ DEFINE_SFX(NA_SE_EV_RONRON_DOOR_CLOSE, 0x30, 0, 0, 0, 0) /* 0x28E7 */ DEFINE_SFX(NA_SE_EV_BUTTERFRY_TO_FAIRY, 0x30, 0, 0, 0, 0) -/* 0x28E8 */ DEFINE_SFX(NA_SE_EV_FIVE_COUNT_LUPY, 0xA0, 0, 0, 0, SFX_FLAG_11) +/* 0x28E8 */ DEFINE_SFX(NA_SE_EV_FIVE_COUNT_LUPY, 0xA0, 0, 0, 0, SFX_PARAM_RAND_FREQ_SCALE) /* 0x28E9 */ DEFINE_SFX(NA_SE_EV_STONE_GROW_UP, 0x30, 0, 0, 0, 0) /* 0x28EA */ DEFINE_SFX(NA_SE_EV_STONE_LAUNCH, 0x30, 0, 0, 0, 0) /* 0x28EB */ DEFINE_SFX(NA_SE_EV_STONE_ROLLING, 0x30, 0, 0, 0, 0) @@ -253,7 +253,7 @@ /* 0x28EF */ DEFINE_SFX(NA_SE_EV_MONKEY_WALK, 0x20, 0, 0, 0, 0) /* 0x28F0 */ DEFINE_SFX(NA_SE_EV_KNIGHT_WALK, 0x30, 0, 0, 0, 0) /* 0x28F1 */ DEFINE_SFX(NA_SE_EV_PILLAR_MOVE_STOP, 0x30, 0, 1, 0, 0) -/* 0x28F2 */ DEFINE_SFX(NA_SE_EV_WAVE, 0x30, 2, 0, 0, SFX_FLAG_10) +/* 0x28F2 */ DEFINE_SFX(NA_SE_EV_WAVE, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x28F3 */ DEFINE_SFX(NA_SE_EV_BIGBELL, 0x30, 2, 0, 0, 0) /* 0x28F4 */ DEFINE_SFX(NA_SE_EV_NUTS_BROKEN, 0x30, 0, 0, 0, 0) /* 0x28F5 */ DEFINE_SFX(NA_SE_EV_SNOWBALL_BROKEN, 0x30, 2, 0, 0, 0) @@ -277,7 +277,7 @@ /* 0x2907 */ DEFINE_SFX(NA_SE_EV_BIGBALL_ROLL_SR_3, 0x30, 0, 0, 0, 0) /* 0x2908 */ DEFINE_SFX(NA_SE_EV_BEAVER_SWIM_MOTOR, 0x68, 2, 0, 0, 0) /* 0x2909 */ DEFINE_SFX(NA_SE_EV_BEAVER_SWIM_HAND, 0x30, 2, 0, 0, 0) -/* 0x290A */ DEFINE_SFX(NA_SE_EV_SMALL_DOG_CRY, 0x30, 0, 1, 0, SFX_FLAG_14) +/* 0x290A */ DEFINE_SFX(NA_SE_EV_SMALL_DOG_CRY, 0x30, 0, 1, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x290B */ DEFINE_SFX(NA_SE_EV_SMALL_DOG_GROAN, 0x30, 0, 0, 0, 0) /* 0x290C */ DEFINE_SFX(NA_SE_EV_SMALL_DOG_ATK_BARK, 0x30, 0, 0, 0, 0) /* 0x290D */ DEFINE_SFX(NA_SE_EV_ICE_PILLAR_RISING, 0x30, 2, 0, 0, 0) @@ -290,7 +290,7 @@ /* 0x2914 */ DEFINE_SFX(NA_SE_EV_PANIC_IN_HOUSE, 0x80, 0, 0, 0, 0) /* 0x2915 */ DEFINE_SFX(NA_SE_EV_CLOCK_TOWER_BELL, 0x30, 0, 0, 0, 0) /* 0x2916 */ DEFINE_SFX(NA_SE_EV_CLOCK_TOWER_SECOND_HAND, 0x30, 2, 0, 0, 0) -/* 0x2917 */ DEFINE_SFX(NA_SE_EV_SIGNAL_BIGBELL, 0xA0, 3, 0, 0, SFX_FLAG_15 | SFX_FLAG_13) +/* 0x2917 */ DEFINE_SFX(NA_SE_EV_SIGNAL_BIGBELL, 0xA0, 3, 0, 0, SFX_FLAG_FREQ_NO_DIST | SFX_FLAG_VOLUME_NO_DIST) /* 0x2918 */ DEFINE_SFX(NA_SE_EV_DUMMY_280, 0x30, 0, 0, 0, 0) /* 0x2919 */ DEFINE_SFX(NA_SE_EV_BEAVER_VOICE_0, 0x30, 0, 0, 0, 0) /* 0x291A */ DEFINE_SFX(NA_SE_EV_BEAVER_VOICE_1, 0x30, 0, 0, 0, 0) @@ -301,12 +301,12 @@ /* 0x291F */ DEFINE_SFX(NA_SE_EV_SECRET_CHEER, 0x30, 0, 0, 0, 0) /* 0x2920 */ DEFINE_SFX(NA_SE_EV_BOTTLE_WATERING, 0x30, 0, 0, 0, 0) /* 0x2921 */ DEFINE_SFX(NA_SE_EV_MONKEY_VO_SADNESS, 0x30, 0, 0, 0, 0) -/* 0x2922 */ DEFINE_SFX(NA_SE_EV_SNOWSTORM_HARD, 0x60, 0, 0, 0, SFX_FLAG_13) +/* 0x2922 */ DEFINE_SFX(NA_SE_EV_SNOWSTORM_HARD, 0x60, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2923 */ DEFINE_SFX(NA_SE_EV_UNSKILLFUL_OCARINA, 0x30, 0, 0, 0, 0) /* 0x2924 */ DEFINE_SFX(NA_SE_EV_BLACK_FAIRY_DASH, 0x30, 0, 1, 0, 0) /* 0x2925 */ DEFINE_SFX(NA_SE_EV_FAIRY_SURPRISE, 0x30, 0, 0, 0, 0) /* 0x2926 */ DEFINE_SFX(NA_SE_EV_MONDO_SURPRISE, 0x30, 0, 0, 0, 0) -/* 0x2927 */ DEFINE_SFX(NA_SE_EV_SPOT_LIGHT_OPEN, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2927 */ DEFINE_SFX(NA_SE_EV_SPOT_LIGHT_OPEN, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2928 */ DEFINE_SFX(NA_SE_EV_HOUSE_BROKEN, 0x30, 2, 0, 0, 0) /* 0x2929 */ DEFINE_SFX(NA_SE_EV_MOON_FALL, 0x30, 3, 0, 0, 0) /* 0x292A */ DEFINE_SFX(NA_SE_EV_OCARINA_BOUND_0, 0x30, 0, 0, 0, 0) @@ -326,7 +326,7 @@ /* 0x2938 */ DEFINE_SFX(NA_SE_EV_CHIBI_FAIRY_HEAL_ORG, 0x80, 0, 0, 0, 0) /* 0x2939 */ DEFINE_SFX(NA_SE_EV_BOMBERS_CLIMB, 0x30, 0, 0, 0, 0) /* 0x293A */ DEFINE_SFX(NA_SE_EV_WOODPLATE_BROKEN, 0x30, 3, 1, 0, 0) -/* 0x293B */ DEFINE_SFX(NA_SE_EV_WATER_LEVEL_DOWN_FIX, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x293B */ DEFINE_SFX(NA_SE_EV_WATER_LEVEL_DOWN_FIX, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x293C */ DEFINE_SFX(NA_SE_EV_HONEYCOMB_BROKEN, 0x30, 0, 0, 0, 0) /* 0x293D */ DEFINE_SFX(NA_SE_EV_CLOCK_TOWER_UP, 0x30, 3, 0, 0, 0) /* 0x293E */ DEFINE_SFX(NA_SE_EV_CLOCK_TOWER_STOP, 0x30, 3, 0, 0, 0) @@ -337,17 +337,17 @@ /* 0x2943 */ DEFINE_SFX(NA_SE_EV_STONEDOOR_OPEN_S, 0x30, 0, 0, 0, 0) /* 0x2944 */ DEFINE_SFX(NA_SE_EV_ICE_MELT_LEVEL, 0x30, 0, 0, 0, 0) /* 0x2945 */ DEFINE_SFX(NA_SE_EV_CLOCK_TOWER_STAIR_MOVE, 0x30, 3, 0, 0, 0) -/* 0x2946 */ DEFINE_SFX(NA_SE_EV_DUMMY_326, 0xA0, 0, 0, 0, SFX_FLAG_14) +/* 0x2946 */ DEFINE_SFX(NA_SE_EV_DUMMY_326, 0xA0, 0, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x2947 */ DEFINE_SFX(NA_SE_EV_OBJECT_STICK, 0x30, 3, 1, 0, 0) /* 0x2948 */ DEFINE_SFX(NA_SE_EV_CHICK_TO_CHICKEN, 0x30, 0, 1, 0, 0) /* 0x2949 */ DEFINE_SFX(NA_SE_EV_MUJURA_BALLOON_BROKEN, 0x60, 2, 0, 0, 0) /* 0x294A */ DEFINE_SFX(NA_SE_EV_BALLOON_SWELL, 0x30, 0, 0, 0, 0) /* 0x294B */ DEFINE_SFX(NA_SE_EV_SEAHORSE_OUT_BOTTLE, 0x30, 0, 0, 0, 0) -/* 0x294C */ DEFINE_SFX(NA_SE_EV_KYOJIN_VOICE_SUCCESS, 0x30, 0, 2, 0, SFX_FLAG_13) -/* 0x294D */ DEFINE_SFX(NA_SE_EV_KYOJIN_VOICE_FAIL, 0x30, 0, 2, 0, SFX_FLAG_13) -/* 0x294E */ DEFINE_SFX(NA_SE_EV_KYOJIN_WALK, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x294C */ DEFINE_SFX(NA_SE_EV_KYOJIN_VOICE_SUCCESS, 0x30, 0, 2, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x294D */ DEFINE_SFX(NA_SE_EV_KYOJIN_VOICE_FAIL, 0x30, 0, 2, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x294E */ DEFINE_SFX(NA_SE_EV_KYOJIN_WALK, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x294F */ DEFINE_SFX(NA_SE_EV_MOON_FALL_LAST, 0x30, 0, 0, 0, 0) -/* 0x2950 */ DEFINE_SFX(NA_SE_EV_EARTHQUAKE_LAST, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2950 */ DEFINE_SFX(NA_SE_EV_EARTHQUAKE_LAST, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2951 */ DEFINE_SFX(NA_SE_EV_SEAHORSE_SWIM, 0x30, 0, 0, 0, 0) /* 0x2952 */ DEFINE_SFX(NA_SE_EV_OPEN_AMBRELLA, 0x30, 0, 0, 0, 0) /* 0x2953 */ DEFINE_SFX(NA_SE_EV_BUTLER_FRY, 0x60, 0, 0, 0, 0) @@ -356,20 +356,20 @@ /* 0x2956 */ DEFINE_SFX(NA_SE_EV_DORA_L, 0x30, 2, 0, 0, 0) /* 0x2957 */ DEFINE_SFX(NA_SE_EV_LOG_BOUND, 0x30, 0, 2, 0, 0) /* 0x2958 */ DEFINE_SFX(NA_SE_EV_CART_WHEEL, 0x60, 2, 1, 0, 0) -/* 0x2959 */ DEFINE_SFX(NA_SE_EV_EARTHQUAKE_LAST2, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2959 */ DEFINE_SFX(NA_SE_EV_EARTHQUAKE_LAST2, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x295A */ DEFINE_SFX(NA_SE_EV_DORA_S, 0x30, 0, 0, 0, 0) /* 0x295B */ DEFINE_SFX(NA_SE_EV_ROCK_FALL, 0x30, 0, 0, 0, 0) /* 0x295C */ DEFINE_SFX(NA_SE_EV_FREEZE_S, 0x30, 0, 0, 0, 0) /* 0x295D */ DEFINE_SFX(NA_SE_EV_WOOD_BOUND_S, 0x30, 0, 0, 0, 0) /* 0x295E */ DEFINE_SFX(NA_SE_EV_CLOSE_AMBRELLA, 0x30, 0, 0, 0, 0) /* 0x295F */ DEFINE_SFX(NA_SE_EV_OBJECT_SLIDE, 0x30, 0, 0, 0, 0) -/* 0x2960 */ DEFINE_SFX(NA_SE_EV_ROLL_AND_FALL, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x2961 */ DEFINE_SFX(NA_SE_EV_GORON_BOUND_0, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x2962 */ DEFINE_SFX(NA_SE_EV_GORON_BOUND_1, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2960 */ DEFINE_SFX(NA_SE_EV_ROLL_AND_FALL, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x2961 */ DEFINE_SFX(NA_SE_EV_GORON_BOUND_0, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x2962 */ DEFINE_SFX(NA_SE_EV_GORON_BOUND_1, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2963 */ DEFINE_SFX(NA_SE_EV_MONKEY_VO_DAMAGE, 0x30, 0, 0, 0, 0) -/* 0x2964 */ DEFINE_SFX(NA_SE_EV_FORT_RISING, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2964 */ DEFINE_SFX(NA_SE_EV_FORT_RISING, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2965 */ DEFINE_SFX(NA_SE_EV_MONKEY_VO_REWARD, 0x30, 0, 0, 0, 0) -/* 0x2966 */ DEFINE_SFX(NA_SE_EV_WATER_PURIFICATION, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2966 */ DEFINE_SFX(NA_SE_EV_WATER_PURIFICATION, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2967 */ DEFINE_SFX(NA_SE_EV_OWL_WARP_SWITCH_ON, 0x80, 0, 0, 0, 0) /* 0x2968 */ DEFINE_SFX(NA_SE_EV_BIG_WATER_WHEEL_RR, 0x80, 3, 0, 0, 0) /* 0x2969 */ DEFINE_SFX(NA_SE_EV_BIG_WATER_WHEEL_LR, 0x80, 3, 0, 0, 0) @@ -382,8 +382,8 @@ /* 0x2970 */ DEFINE_SFX(NA_SE_EV_ZORA_WALK, 0x30, 2, 1, 0, 0) /* 0x2971 */ DEFINE_SFX(NA_SE_EV_PIRATE_WALK, 0x30, 2, 1, 0, 0) /* 0x2972 */ DEFINE_SFX(NA_SE_EV_PILLAR_UP_FAST, 0x30, 3, 1, 0, 0) -/* 0x2973 */ DEFINE_SFX(NA_SE_EV_DUMMY_WATER_WHEEL_RR, 0x60, 0, 0, SFX_FLAG2_7, SFX_FLAG_13) -/* 0x2974 */ DEFINE_SFX(NA_SE_EV_DUMMY_WATER_WHEEL_LR, 0x60, 0, 0, SFX_FLAG2_7, SFX_FLAG_13) +/* 0x2973 */ DEFINE_SFX(NA_SE_EV_DUMMY_WATER_WHEEL_RR, 0x60, 0, 0, SFX_FLAG2_APPLY_LOWPASS_FILTER, SFX_FLAG_VOLUME_NO_DIST) +/* 0x2974 */ DEFINE_SFX(NA_SE_EV_DUMMY_WATER_WHEEL_LR, 0x60, 0, 0, SFX_FLAG2_APPLY_LOWPASS_FILTER, SFX_FLAG_VOLUME_NO_DIST) /* 0x2975 */ DEFINE_SFX(NA_SE_EV_MUJURA_FOLLOWERS_FLY, 0x30, 0, 0, 0, 0) /* 0x2976 */ DEFINE_SFX(NA_SE_EV_MAKE_TURRET, 0x30, 0, 0, 0, 0) /* 0x2977 */ DEFINE_SFX(NA_SE_EV_CHANDELIER_ROLL, 0x30, 3, 0, 0, 0) @@ -391,18 +391,18 @@ /* 0x2979 */ DEFINE_SFX(NA_SE_EV_SINK_WOOD_FLOOR, 0x30, 0, 0, 0, 0) /* 0x297A */ DEFINE_SFX(NA_SE_EV_REBOUND_WOOD_FLOOR, 0x30, 0, 0, 0, 0) /* 0x297B */ DEFINE_SFX(NA_SE_EV_UFO_APPEAR, 0x30, 3, 0, 0, 0) -/* 0x297C */ DEFINE_SFX(NA_SE_EV_UFO_DASH, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x297D */ DEFINE_SFX(NA_SE_EV_TORNADE, 0x80, 0, 0, 0, SFX_FLAG_13) +/* 0x297C */ DEFINE_SFX(NA_SE_EV_UFO_DASH, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x297D */ DEFINE_SFX(NA_SE_EV_TORNADE, 0x80, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x297E */ DEFINE_SFX(NA_SE_EV_MILK_POT_DAMAGE, 0x80, 3, 0, 0, 0) /* 0x297F */ DEFINE_SFX(NA_SE_EV_DUMMY_383, 0x30, 0, 0, 0, 0) -/* 0x2980 */ DEFINE_SFX(NA_SE_EV_KYOJIN_SIGN, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x2981 */ DEFINE_SFX(NA_SE_EV_KYOJIN_GRATITUDE0, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x2982 */ DEFINE_SFX(NA_SE_EV_KYOJIN_GRATITUDE1, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x2983 */ DEFINE_SFX(NA_SE_EV_KYOJIN_GRATITUDE2, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2980 */ DEFINE_SFX(NA_SE_EV_KYOJIN_SIGN, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x2981 */ DEFINE_SFX(NA_SE_EV_KYOJIN_GRATITUDE0, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x2982 */ DEFINE_SFX(NA_SE_EV_KYOJIN_GRATITUDE1, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x2983 */ DEFINE_SFX(NA_SE_EV_KYOJIN_GRATITUDE2, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2984 */ DEFINE_SFX(NA_SE_EV_IKANA_DOOR_OPEN, 0x30, 0, 0, 0, 0) /* 0x2985 */ DEFINE_SFX(NA_SE_EV_IKANA_DOOR_CLOSE, 0x30, 0, 0, 0, 0) /* 0x2986 */ DEFINE_SFX(NA_SE_EV_MOONSTONE_FALL, 0x80, 3, 0, 0, 0) -/* 0x2987 */ DEFINE_SFX(NA_SE_EV_COMING_FIRE, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2987 */ DEFINE_SFX(NA_SE_EV_COMING_FIRE, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2988 */ DEFINE_SFX(NA_SE_EV_FAIRY_GROUP_FRY, 0x30, 0, 0, 0, 0) /* 0x2989 */ DEFINE_SFX(NA_SE_EV_FAIRY_GROUP_HEAL, 0x30, 0, 0, 0, 0) /* 0x298A */ DEFINE_SFX(NA_SE_EV_WOOD_DOOR_OPEN_SPEEDY, 0x30, 0, 0, 0, 0) @@ -414,7 +414,7 @@ /* 0x2990 */ DEFINE_SFX(NA_SE_EV_GET_UP_ON_BED, 0x30, 3, 0, 0, 0) /* 0x2991 */ DEFINE_SFX(NA_SE_EV_LIE_DOWN_ON_BED, 0x30, 3, 0, 0, 0) /* 0x2992 */ DEFINE_SFX(NA_SE_EV_BANK_MAN_HAND_HIT, 0x30, 0, 0, 0, 0) -/* 0x2993 */ DEFINE_SFX(NA_SE_EV_HANKO, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x2993 */ DEFINE_SFX(NA_SE_EV_HANKO, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x2994 */ DEFINE_SFX(NA_SE_EV_CHICK_SONG, 0x10, 7, 0, 0, 0) /* 0x2995 */ DEFINE_SFX(NA_SE_EV_LAND_SAND, 0x30, 0, 0, 0, 0) /* 0x2996 */ DEFINE_SFX(NA_SE_EV_JUMP_SAND, 0x30, 0, 0, 0, 0) @@ -423,10 +423,10 @@ /* 0x2999 */ DEFINE_SFX(NA_SE_EV_DIVE_INTO_WEED, 0x30, 0, 0, 0, 0) /* 0x299A */ DEFINE_SFX(NA_SE_EV_FAIRY_SHIVER, 0x30, 0, 0, 0, 0) /* 0x299B */ DEFINE_SFX(NA_SE_EV_MASK_RISING, 0x30, 0, 0, 0, 0) -/* 0x299C */ DEFINE_SFX(NA_SE_EV_MOON_EYE_FLASH, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x299D */ DEFINE_SFX(NA_SE_EV_SLIP_MOON, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x299E */ DEFINE_SFX(NA_SE_EV_FALL_POWER, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x299F */ DEFINE_SFX(NA_SE_EV_BELL_DASH_NORMAL, 0x58, 0, 1, 0, SFX_FLAG_5) +/* 0x299C */ DEFINE_SFX(NA_SE_EV_MOON_EYE_FLASH, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x299D */ DEFINE_SFX(NA_SE_EV_SLIP_MOON, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x299E */ DEFINE_SFX(NA_SE_EV_FALL_POWER, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x299F */ DEFINE_SFX(NA_SE_EV_BELL_DASH_NORMAL, 0x58, 0, 1, 0, SFX_FLAG_BLOCK_EQUAL_IMPORTANCE) /* 0x29A0 */ DEFINE_SFX(NA_SE_EV_IKANA_BLOCK_MOVE_X, 0x60, 3, 0, 0, 0) /* 0x29A1 */ DEFINE_SFX(NA_SE_EV_IKANA_BLOCK_MOVE_Z, 0x60, 3, 0, 0, 0) /* 0x29A2 */ DEFINE_SFX(NA_SE_EV_IKANA_BLOCK_MOVE_Y, 0x60, 3, 0, 0, 0) @@ -441,13 +441,13 @@ /* 0x29AB */ DEFINE_SFX(NA_SE_EV_CONVEYOR_SHUTTER_OPEN, 0x60, 0, 0, 0, 0) /* 0x29AC */ DEFINE_SFX(NA_SE_EV_CONVEYOR_SHUTTER_CLOSE, 0x60, 0, 0, 0, 0) /* 0x29AD */ DEFINE_SFX(NA_SE_EV_ROOM_CARTAIN, 0x30, 0, 0, 0, 0) -/* 0x29AE */ DEFINE_SFX(NA_SE_EV_ZORA_KIDS_BORN, 0x30, 0, 0, SFX_FLAG2_7, 0) -/* 0x29AF */ DEFINE_SFX(NA_SE_EV_ZORA_KIDS_SWIM_0, 0x30, 0, 1, SFX_FLAG2_7, 0) -/* 0x29B0 */ DEFINE_SFX(NA_SE_EV_ZORA_KIDS_SWIM_1, 0x30, 0, 1, SFX_FLAG2_7, 0) -/* 0x29B1 */ DEFINE_SFX(NA_SE_EV_MOON_EXPLOSION, 0x60, 0, 0, 0, SFX_FLAG_13) -/* 0x29B2 */ DEFINE_SFX(NA_SE_EV_RAINBOW, 0x70, 0, 0, 0, SFX_FLAG_13) +/* 0x29AE */ DEFINE_SFX(NA_SE_EV_ZORA_KIDS_BORN, 0x30, 0, 0, SFX_FLAG2_APPLY_LOWPASS_FILTER, 0) +/* 0x29AF */ DEFINE_SFX(NA_SE_EV_ZORA_KIDS_SWIM_0, 0x30, 0, 1, SFX_FLAG2_APPLY_LOWPASS_FILTER, 0) +/* 0x29B0 */ DEFINE_SFX(NA_SE_EV_ZORA_KIDS_SWIM_1, 0x30, 0, 1, SFX_FLAG2_APPLY_LOWPASS_FILTER, 0) +/* 0x29B1 */ DEFINE_SFX(NA_SE_EV_MOON_EXPLOSION, 0x60, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x29B2 */ DEFINE_SFX(NA_SE_EV_RAINBOW, 0x70, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x29B3 */ DEFINE_SFX(NA_SE_EV_OMENYA_WALK, 0x30, 0, 2, 0, 0) -/* 0x29B4 */ DEFINE_SFX(NA_SE_EV_KYOJIN_GROAN, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x29B4 */ DEFINE_SFX(NA_SE_EV_KYOJIN_GROAN, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x29B5 */ DEFINE_SFX(NA_SE_EV_UFO_FLY, 0x30, 3, 0, 0, 0) /* 0x29B6 */ DEFINE_SFX(NA_SE_EV_GRASS_WALL_BROKEN, 0x30, 0, 0, 0, 0) /* 0x29B7 */ DEFINE_SFX(NA_SE_EV_WARP_HOLE_ENERGY, 0x60, 3, 0, 0, 0) diff --git a/include/tables/sfx/itembank_table.h b/include/tables/sfx/itembank_table.h index baff254f0b..f8b25aaa0e 100644 --- a/include/tables/sfx/itembank_table.h +++ b/include/tables/sfx/itembank_table.h @@ -11,23 +11,23 @@ * * WARNING: entries must align with the table defined for the item bank in sequence 0 */ -/* 0x1800 */ DEFINE_SFX(NA_SE_IT_SWORD_IMPACT, 0x30, 0, 1, 0, SFX_FLAG_15) +/* 0x1800 */ DEFINE_SFX(NA_SE_IT_SWORD_IMPACT, 0x30, 0, 1, 0, SFX_FLAG_FREQ_NO_DIST) /* 0x1801 */ DEFINE_SFX(NA_SE_IT_SWORD_SWING, 0x30, 0, 1, 0, 0) /* 0x1802 */ DEFINE_SFX(NA_SE_IT_SWORD_PUTAWAY, 0x30, 0, 0, 0, 0) /* 0x1803 */ DEFINE_SFX(NA_SE_IT_SWORD_PICKOUT, 0x30, 0, 0, 0, 0) -/* 0x1804 */ DEFINE_SFX(NA_SE_IT_ARROW_SHOT, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x1805 */ DEFINE_SFX(NA_SE_IT_BOOMERANG_THROW, 0x30, 0, 1, 0, SFX_FLAG_10) +/* 0x1804 */ DEFINE_SFX(NA_SE_IT_ARROW_SHOT, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x1805 */ DEFINE_SFX(NA_SE_IT_BOOMERANG_THROW, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x1806 */ DEFINE_SFX(NA_SE_IT_SHIELD_BOUND, 0x60, 3, 2, 0, 0) -/* 0x1807 */ DEFINE_SFX(NA_SE_IT_BOW_DRAW, 0x30, 0, 1, 0, SFX_FLAG_10) +/* 0x1807 */ DEFINE_SFX(NA_SE_IT_BOW_DRAW, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x1808 */ DEFINE_SFX(NA_SE_IT_SHIELD_REFLECT_SW, 0x80, 3, 1, 0, 0) /* 0x1809 */ DEFINE_SFX(NA_SE_IT_ARROW_STICK_HRAD, 0x30, 0, 0, 0, 0) /* 0x180A */ DEFINE_SFX(NA_SE_IT_HAMMER_HIT, 0x30, 0, 1, 0, 0) -/* 0x180B */ DEFINE_SFX(NA_SE_IT_HOOKSHOT_CHAIN, 0x38, 0, 0, 0, SFX_FLAG_10) -/* 0x180C */ DEFINE_SFX(NA_SE_IT_SHIELD_REFLECT_MG, 0x30, 1, 0, 0, SFX_FLAG_10) +/* 0x180B */ DEFINE_SFX(NA_SE_IT_HOOKSHOT_CHAIN, 0x38, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x180C */ DEFINE_SFX(NA_SE_IT_SHIELD_REFLECT_MG, 0x30, 1, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x180D */ DEFINE_SFX(NA_SE_IT_BOMB_IGNIT, 0x50, 0, 0, 0, SFX_FLAG_8) /* 0x180E */ DEFINE_SFX(NA_SE_IT_BOMB_EXPLOSION, 0x90, 2, 0, 0, 0) /* 0x180F */ DEFINE_SFX(NA_SE_IT_BOMB_UNEXPLOSION, 0x50, 2, 0, 0, 0) -/* 0x1810 */ DEFINE_SFX(NA_SE_IT_BOOMERANG_FLY, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x1810 */ DEFINE_SFX(NA_SE_IT_BOOMERANG_FLY, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x1811 */ DEFINE_SFX(NA_SE_IT_SWORD_STRIKE, 0x40, 2, 0, 0, 0) /* 0x1812 */ DEFINE_SFX(NA_SE_IT_HAMMER_SWING, 0x30, 0, 1, 0, 0) /* 0x1813 */ DEFINE_SFX(NA_SE_IT_HOOKSHOT_REFLECT, 0x30, 0, 0, 0, 0) @@ -43,37 +43,37 @@ /* 0x181D */ DEFINE_SFX(NA_SE_IT_WOODSTICK_BROKEN, 0x30, 0, 0, 0, 0) /* 0x181E */ DEFINE_SFX(NA_SE_IT_LASH, 0x30, 0, 2, 0, 0) /* 0x181F */ DEFINE_SFX(NA_SE_IT_SHIELD_SWING, 0x30, 0, 1, 0, 0) -/* 0x1820 */ DEFINE_SFX(NA_SE_IT_SLING_SHOT, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x1821 */ DEFINE_SFX(NA_SE_IT_SLING_DRAW, 0x20, 0, 0, 0, SFX_FLAG_10) +/* 0x1820 */ DEFINE_SFX(NA_SE_IT_SLING_SHOT, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x1821 */ DEFINE_SFX(NA_SE_IT_SLING_DRAW, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x1822 */ DEFINE_SFX(NA_SE_IT_SWORD_CHARGE, 0x30, 0, 0, 0, 0) /* 0x1823 */ DEFINE_SFX(NA_SE_IT_ROLLING_CUT, 0x30, 0, 0, 0, 0) /* 0x1824 */ DEFINE_SFX(NA_SE_IT_SWORD_STRIKE_HARD, 0x30, 0, 0, 0, 0) /* 0x1825 */ DEFINE_SFX(NA_SE_IT_SLING_REFLECT, 0x30, 0, 0, 0, 0) /* 0x1826 */ DEFINE_SFX(NA_SE_IT_SHIELD_REMOVE, 0x30, 0, 0, 0, 0) -/* 0x1827 */ DEFINE_SFX(NA_SE_IT_HOOKSHOT_READY, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x1828 */ DEFINE_SFX(NA_SE_IT_HOOKSHOT_RECEIVE, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x1827 */ DEFINE_SFX(NA_SE_IT_HOOKSHOT_READY, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x1828 */ DEFINE_SFX(NA_SE_IT_HOOKSHOT_RECEIVE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x1829 */ DEFINE_SFX(NA_SE_IT_HOOKSHOT_STICK_OBJ, 0x60, 3, 1, 0, 0) /* 0x182A */ DEFINE_SFX(NA_SE_IT_SWORD_REFLECT_MG, 0x30, 1, 0, 0, 0) -/* 0x182B */ DEFINE_SFX(NA_SE_IT_DEKU, 0x30, 1, 0, 0, SFX_FLAG_10) +/* 0x182B */ DEFINE_SFX(NA_SE_IT_DEKU, 0x30, 1, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x182C */ DEFINE_SFX(NA_SE_IT_WALL_HIT_BUYO, 0x30, 0, 0, 0, 0) /* 0x182D */ DEFINE_SFX(NA_SE_IT_SWORD_PUTAWAY_STN, 0x30, 0, 0, 0, 0) /* 0x182E */ DEFINE_SFX(NA_SE_IT_ROLLING_CUT_LV1, 0xA0, 2, 0, 0, 0) /* 0x182F */ DEFINE_SFX(NA_SE_IT_ROLLING_CUT_LV2, 0xA0, 2, 0, 0, 0) -/* 0x1830 */ DEFINE_SFX(NA_SE_IT_BOW_FLICK, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x1830 */ DEFINE_SFX(NA_SE_IT_BOW_FLICK, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x1831 */ DEFINE_SFX(NA_SE_IT_BOMBCHU_MOVE, 0x30, 0, 0, 0, SFX_FLAG_8) /* 0x1832 */ DEFINE_SFX(NA_SE_IT_SHIELD_CHARGE_LV1, 0x60, 0, 0, 0, 0) /* 0x1833 */ DEFINE_SFX(NA_SE_IT_SHIELD_CHARGE_LV2, 0x60, 0, 0, 0, 0) /* 0x1834 */ DEFINE_SFX(NA_SE_IT_SHIELD_CHARGE_LV3, 0x60, 0, 0, 0, 0) -/* 0x1835 */ DEFINE_SFX(NA_SE_IT_SLING_FLICK, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x1835 */ DEFINE_SFX(NA_SE_IT_SLING_FLICK, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x1836 */ DEFINE_SFX(NA_SE_IT_SWORD_STICK_STN, 0x30, 0, 0, 0, 0) /* 0x1837 */ DEFINE_SFX(NA_SE_IT_REFLECTION_WOOD, 0x60, 1, 2, 0, 0) /* 0x1838 */ DEFINE_SFX(NA_SE_IT_SHIELD_REFLECT_MG2, 0x30, 0, 0, 0, 0) -/* 0x1839 */ DEFINE_SFX(NA_SE_IT_MAGIC_ARROW_SHOT, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x183A */ DEFINE_SFX(NA_SE_IT_EXPLOSION_FRAME, 0x60, 3, 0, 0, SFX_FLAG_15) -/* 0x183B */ DEFINE_SFX(NA_SE_IT_EXPLOSION_ICE, 0x60, 3, 0, 0, SFX_FLAG_15) -/* 0x183C */ DEFINE_SFX(NA_SE_IT_EXPLOSION_LIGHT, 0x60, 3, 0, 0, SFX_FLAG_15) -/* 0x183D */ DEFINE_SFX(NA_SE_IT_FISHING_REEL_SLOW, 0x30, 0, 0, 0, SFX_FLAG_14) -/* 0x183E */ DEFINE_SFX(NA_SE_IT_FISHING_REEL_HIGH, 0x30, 0, 0, 0, SFX_FLAG_14) +/* 0x1839 */ DEFINE_SFX(NA_SE_IT_MAGIC_ARROW_SHOT, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x183A */ DEFINE_SFX(NA_SE_IT_EXPLOSION_FRAME, 0x60, 3, 0, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x183B */ DEFINE_SFX(NA_SE_IT_EXPLOSION_ICE, 0x60, 3, 0, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x183C */ DEFINE_SFX(NA_SE_IT_EXPLOSION_LIGHT, 0x60, 3, 0, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x183D */ DEFINE_SFX(NA_SE_IT_FISHING_REEL_SLOW, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x183E */ DEFINE_SFX(NA_SE_IT_FISHING_REEL_HIGH, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x183F */ DEFINE_SFX(NA_SE_IT_PULL_FISHING_ROD, 0x30, 0, 1, 0, 0) /* 0x1840 */ DEFINE_SFX(NA_SE_IT_DM_FLYING_GOD_PASS, 0x80, 3, 0, 0, 0) /* 0x1841 */ DEFINE_SFX(NA_SE_IT_DM_FLYING_GOD_DASH, 0x80, 3, 0, 0, 0) @@ -105,12 +105,12 @@ /* 0x185B */ DEFINE_SFX(NA_SE_IT_BIG_BOMB_IGNIT, 0x60, 0, 0, 0, SFX_FLAG_8) /* 0x185C */ DEFINE_SFX(NA_SE_IT_BIG_BOMB_EXPLOSION, 0x70, 0, 0, 0, 0) /* 0x185D */ DEFINE_SFX(NA_SE_IT_REFLECTION_SNOW, 0x60, 0, 0, 0, 0) -/* 0x185E */ DEFINE_SFX(NA_SE_IT_GORON_ROLLING_REFLECTION, 0x30, 3, 2, 0, SFX_FLAG_10) +/* 0x185E */ DEFINE_SFX(NA_SE_IT_GORON_ROLLING_REFLECTION, 0x30, 3, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x185F */ DEFINE_SFX(NA_SE_IT_MASK_BOUND_0, 0x30, 0, 1, 0, 0) /* 0x1860 */ DEFINE_SFX(NA_SE_IT_MASK_BOUND_1, 0x30, 0, 1, 0, 0) /* 0x1861 */ DEFINE_SFX(NA_SE_IT_MASK_BOUND_SAND, 0x30, 0, 0, 0, 0) /* 0x1862 */ DEFINE_SFX(NA_SE_IT_REFLECTION_WATER, 0x30, 0, 0, 0, 0) -/* 0x1863 */ DEFINE_SFX(NA_SE_IT_KYOJIN_BEARING, 0x60, 0, 0, 0, SFX_FLAG_13) +/* 0x1863 */ DEFINE_SFX(NA_SE_IT_KYOJIN_BEARING, 0x60, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x1864 */ DEFINE_SFX(NA_SE_FISHING_REEL_SLOW2, 0x30, 0, 0, 0, 0) /* 0x1865 */ DEFINE_SFX(NA_SE_IT_LURE_LAND1, 0x30, 0, 0, 0, 0) /* 0x1866 */ DEFINE_SFX(NA_SE_IT_ROD_THROW, 0x30, 0, 0, 0, 0) diff --git a/include/tables/sfx/ocarinabank_table.h b/include/tables/sfx/ocarinabank_table.h index 8703703d8f..fa83394ab6 100644 --- a/include/tables/sfx/ocarinabank_table.h +++ b/include/tables/sfx/ocarinabank_table.h @@ -12,8 +12,8 @@ * WARNING: entries must align with the table defined for the ocarina bank in sequence 0 */ /* 0x5800 */ DEFINE_SFX(NA_SE_OC_OCARINA, 0x30, 0, 0, 0, 0) -/* 0x5801 */ DEFINE_SFX(NA_SE_OC_ABYSS, 0x30, 0, 0, 0, SFX_FLAG_5) -/* 0x5802 */ DEFINE_SFX(NA_SE_OC_DOOR_OPEN, 0x30, 2, 1, 0, SFX_FLAG_10 | SFX_FLAG_9) +/* 0x5801 */ DEFINE_SFX(NA_SE_OC_ABYSS, 0x30, 0, 0, 0, SFX_FLAG_BLOCK_EQUAL_IMPORTANCE) +/* 0x5802 */ DEFINE_SFX(NA_SE_OC_DOOR_OPEN, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX | SFX_FLAG_SURROUND_LOWPASS_FILTER) /* 0x5803 */ DEFINE_SFX(NA_SE_OC_SECRET_WARP_IN, 0x30, 0, 0, 0, 0) /* 0x5804 */ DEFINE_SFX(NA_SE_OC_SECRET_WARP_OUT, 0x30, 0, 0, 0, 0) /* 0x5805 */ DEFINE_SFX(NA_SE_OC_SECRET_HOLE_OUT, 0x30, 0, 0, 0, 0) @@ -21,8 +21,8 @@ /* 0x5807 */ DEFINE_SFX(NA_SE_OC_TUNAMI, 0x30, 0, 0, 0, 0) /* 0x5808 */ DEFINE_SFX(NA_SE_OC_TELOP_IMPACT, 0x30, 0, 0, 0, 0) /* 0x5809 */ DEFINE_SFX(NA_SE_OC_WOOD_GATE_OPEN, 0x30, 0, 0, 0, 0) -/* 0x580A */ DEFINE_SFX(NA_SE_OC_FIREWORKS, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x580B */ DEFINE_SFX(NA_SE_OC_WHITE_OUT_INTO_KYOJIN, 0x30, 0, 0, 0, SFX_FLAG_13) +/* 0x580A */ DEFINE_SFX(NA_SE_OC_FIREWORKS, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x580B */ DEFINE_SFX(NA_SE_OC_WHITE_OUT_INTO_KYOJIN, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) /* 0x580C */ DEFINE_SFX(NA_SE_OC_12, 0x30, 0, 0, 0, 0) /* 0x580D */ DEFINE_SFX(NA_SE_OC_13, 0x30, 0, 0, 0, 0) /* 0x580E */ DEFINE_SFX(NA_SE_OC_14, 0x30, 0, 0, 0, 0) diff --git a/include/tables/sfx/playerbank_table.h b/include/tables/sfx/playerbank_table.h index fce11d475c..bcec96a673 100644 --- a/include/tables/sfx/playerbank_table.h +++ b/include/tables/sfx/playerbank_table.h @@ -11,70 +11,70 @@ * * WARNING: entries must align with the table defined for the player bank in sequence 0 */ -/* 0x800 */ DEFINE_SFX(NA_SE_PL_WALK_GROUND, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x801 */ DEFINE_SFX(NA_SE_PL_WALK_SAND, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x802 */ DEFINE_SFX(NA_SE_PL_WALK_CONCRETE, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x803 */ DEFINE_SFX(NA_SE_PL_WALK_DIRT, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x804 */ DEFINE_SFX(NA_SE_PL_WALK_WATER0, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x805 */ DEFINE_SFX(NA_SE_PL_WALK_WATER1, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x806 */ DEFINE_SFX(NA_SE_PL_WALK_WATER2, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x807 */ DEFINE_SFX(NA_SE_PL_WALK_MAGMA, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x808 */ DEFINE_SFX(NA_SE_PL_WALK_GRASS, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x809 */ DEFINE_SFX(NA_SE_PL_WALK_IRON, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x80A */ DEFINE_SFX(NA_SE_PL_WALK_LADDER, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x80B */ DEFINE_SFX(NA_SE_PL_WALK_GLASS, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x80C */ DEFINE_SFX(NA_SE_PL_WALK_METAL1, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x80D */ DEFINE_SFX(NA_CODE_DIRT_DEEP, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x80E */ DEFINE_SFX(NA_SE_PL_WALK_SNOW, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x80F */ DEFINE_SFX(NA_SE_PL_WALK_ICE, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x810 */ DEFINE_SFX(NA_SE_PL_JUMP_GROUND, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x811 */ DEFINE_SFX(NA_SE_PL_JUMP_SAND, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x812 */ DEFINE_SFX(NA_SE_PL_JUMP_CONCRETE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x813 */ DEFINE_SFX(NA_SE_PL_JUMP_DIRT, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x814 */ DEFINE_SFX(NA_SE_PL_JUMP_WATER0, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x815 */ DEFINE_SFX(NA_SE_PL_JUMP_WATER1, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x816 */ DEFINE_SFX(NA_SE_PL_JUMP_WATER2, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x817 */ DEFINE_SFX(NA_SE_PL_JUMP_MAGMA, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x818 */ DEFINE_SFX(NA_SE_PL_JUMP_GRASS, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x819 */ DEFINE_SFX(NA_SE_PL_JUMP_IRON, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x81A */ DEFINE_SFX(NA_SE_PL_JUMP_LADDER, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x81B */ DEFINE_SFX(NA_SE_PL_JUMP_GLASS, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x81C */ DEFINE_SFX(NA_SE_PL_DUMMY_28, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x81D */ DEFINE_SFX(NA_SE_PL_JUMP_HEAVYBOOTS, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x81E */ DEFINE_SFX(NA_SE_PL_JUMP_SNOW, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x81F */ DEFINE_SFX(NA_SE_PL_JUMP_ICE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x820 */ DEFINE_SFX(NA_SE_PL_LAND_GROUND, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x821 */ DEFINE_SFX(NA_SE_PL_LAND_SAND, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x822 */ DEFINE_SFX(NA_SE_PL_LAND_CONCRETE, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x823 */ DEFINE_SFX(NA_SE_PL_LAND_DIRT, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x824 */ DEFINE_SFX(NA_SE_PL_LAND_WATER0, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x825 */ DEFINE_SFX(NA_SE_PL_LAND_WATER1, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x826 */ DEFINE_SFX(NA_SE_PL_LAND_WATER2, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x827 */ DEFINE_SFX(NA_SE_PL_LAND_MAGMA, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x828 */ DEFINE_SFX(NA_SE_PL_LAND_GRASS, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x829 */ DEFINE_SFX(NA_SE_PL_LAND_IRON, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x82A */ DEFINE_SFX(NA_SE_PL_LAND_LADDER, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x82B */ DEFINE_SFX(NA_SE_PL_LAND_GLASS, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x82C */ DEFINE_SFX(NA_SE_PL_DUMMY_44, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x82D */ DEFINE_SFX(NA_SE_PL_LAND_HEAVYBOOTS, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x82E */ DEFINE_SFX(NA_SE_PL_LAND_SNOW, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x82F */ DEFINE_SFX(NA_SE_PL_LAND_ICE, 0x40, 0, 1, 0, SFX_FLAG_10) +/* 0x800 */ DEFINE_SFX(NA_SE_PL_WALK_GROUND, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x801 */ DEFINE_SFX(NA_SE_PL_WALK_SAND, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x802 */ DEFINE_SFX(NA_SE_PL_WALK_CONCRETE, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x803 */ DEFINE_SFX(NA_SE_PL_WALK_DIRT, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x804 */ DEFINE_SFX(NA_SE_PL_WALK_WATER0, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x805 */ DEFINE_SFX(NA_SE_PL_WALK_WATER1, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x806 */ DEFINE_SFX(NA_SE_PL_WALK_WATER2, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x807 */ DEFINE_SFX(NA_SE_PL_WALK_MAGMA, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x808 */ DEFINE_SFX(NA_SE_PL_WALK_GRASS, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x809 */ DEFINE_SFX(NA_SE_PL_WALK_IRON, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x80A */ DEFINE_SFX(NA_SE_PL_WALK_LADDER, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x80B */ DEFINE_SFX(NA_SE_PL_WALK_GLASS, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x80C */ DEFINE_SFX(NA_SE_PL_WALK_METAL1, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x80D */ DEFINE_SFX(NA_CODE_DIRT_DEEP, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x80E */ DEFINE_SFX(NA_SE_PL_WALK_SNOW, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x80F */ DEFINE_SFX(NA_SE_PL_WALK_ICE, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x810 */ DEFINE_SFX(NA_SE_PL_JUMP_GROUND, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x811 */ DEFINE_SFX(NA_SE_PL_JUMP_SAND, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x812 */ DEFINE_SFX(NA_SE_PL_JUMP_CONCRETE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x813 */ DEFINE_SFX(NA_SE_PL_JUMP_DIRT, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x814 */ DEFINE_SFX(NA_SE_PL_JUMP_WATER0, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x815 */ DEFINE_SFX(NA_SE_PL_JUMP_WATER1, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x816 */ DEFINE_SFX(NA_SE_PL_JUMP_WATER2, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x817 */ DEFINE_SFX(NA_SE_PL_JUMP_MAGMA, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x818 */ DEFINE_SFX(NA_SE_PL_JUMP_GRASS, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x819 */ DEFINE_SFX(NA_SE_PL_JUMP_IRON, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x81A */ DEFINE_SFX(NA_SE_PL_JUMP_LADDER, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x81B */ DEFINE_SFX(NA_SE_PL_JUMP_GLASS, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x81C */ DEFINE_SFX(NA_SE_PL_DUMMY_28, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x81D */ DEFINE_SFX(NA_SE_PL_JUMP_HEAVYBOOTS, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x81E */ DEFINE_SFX(NA_SE_PL_JUMP_SNOW, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x81F */ DEFINE_SFX(NA_SE_PL_JUMP_ICE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x820 */ DEFINE_SFX(NA_SE_PL_LAND_GROUND, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x821 */ DEFINE_SFX(NA_SE_PL_LAND_SAND, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x822 */ DEFINE_SFX(NA_SE_PL_LAND_CONCRETE, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x823 */ DEFINE_SFX(NA_SE_PL_LAND_DIRT, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x824 */ DEFINE_SFX(NA_SE_PL_LAND_WATER0, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x825 */ DEFINE_SFX(NA_SE_PL_LAND_WATER1, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x826 */ DEFINE_SFX(NA_SE_PL_LAND_WATER2, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x827 */ DEFINE_SFX(NA_SE_PL_LAND_MAGMA, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x828 */ DEFINE_SFX(NA_SE_PL_LAND_GRASS, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x829 */ DEFINE_SFX(NA_SE_PL_LAND_IRON, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x82A */ DEFINE_SFX(NA_SE_PL_LAND_LADDER, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x82B */ DEFINE_SFX(NA_SE_PL_LAND_GLASS, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x82C */ DEFINE_SFX(NA_SE_PL_DUMMY_44, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x82D */ DEFINE_SFX(NA_SE_PL_LAND_HEAVYBOOTS, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x82E */ DEFINE_SFX(NA_SE_PL_LAND_SNOW, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x82F */ DEFINE_SFX(NA_SE_PL_LAND_ICE, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x830 */ DEFINE_SFX(NA_SE_PL_SLIPDOWN, 0x30, 0, 2, 0, 0) /* 0x831 */ DEFINE_SFX(NA_SE_PL_CLIMB_CLIFF, 0x30, 0, 0, 0, 0) /* 0x832 */ DEFINE_SFX(NA_SE_PL_SIT_ON_HORSE, 0x30, 0, 0, 0, 0) /* 0x833 */ DEFINE_SFX(NA_SE_PL_GET_OFF_HORSE, 0x30, 0, 0, 0, 0) -/* 0x834 */ DEFINE_SFX(NA_SE_PL_TAKE_OUT_SHIELD, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x835 */ DEFINE_SFX(NA_SE_PL_CHANGE_ARMS, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x836 */ DEFINE_SFX(NA_SE_PL_CATCH_BOOMERANG, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x834 */ DEFINE_SFX(NA_SE_PL_TAKE_OUT_SHIELD, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x835 */ DEFINE_SFX(NA_SE_PL_CHANGE_ARMS, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x836 */ DEFINE_SFX(NA_SE_PL_CATCH_BOOMERANG, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x837 */ DEFINE_SFX(NA_SE_PL_DIVE_INTO_WATER, 0x30, 0, 1, 0, 0) /* 0x838 */ DEFINE_SFX(NA_SE_PL_JUMP_OUT_WATER, 0x30, 0, 1, 0, 0) /* 0x839 */ DEFINE_SFX(NA_SE_PL_SWIM, 0x30, 0, 2, 0, 0) -/* 0x83A */ DEFINE_SFX(NA_SE_PL_THROW, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x83B */ DEFINE_SFX(NA_SE_PL_BODY_BOUND, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x83C */ DEFINE_SFX(NA_SE_PL_ROLL, 0x40, 0, 0, 0, SFX_FLAG_10) -/* 0x83D */ DEFINE_SFX(NA_SE_PL_SKIP, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x83E */ DEFINE_SFX(NA_SE_PL_BODY_HIT, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x83F */ DEFINE_SFX(NA_SE_PL_DAMAGE, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x83A */ DEFINE_SFX(NA_SE_PL_THROW, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x83B */ DEFINE_SFX(NA_SE_PL_BODY_BOUND, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x83C */ DEFINE_SFX(NA_SE_PL_ROLL, 0x40, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x83D */ DEFINE_SFX(NA_SE_PL_SKIP, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x83E */ DEFINE_SFX(NA_SE_PL_BODY_HIT, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x83F */ DEFINE_SFX(NA_SE_PL_DAMAGE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x840 */ DEFINE_SFX(NA_SE_PL_SLIP, 0x30, 0, 1, 0, 0) /* 0x841 */ DEFINE_SFX(NA_SE_PL_SLIP_SAND, 0x30, 0, 1, 0, 0) /* 0x842 */ DEFINE_SFX(NA_SE_PL_SLIP_CONCRETE, 0x30, 0, 1, 0, 0) @@ -107,14 +107,14 @@ /* 0x85D */ DEFINE_SFX(NA_SE_PL_BOUND_HEAVYBOOTS, 0x80, 0, 0, 0, 0) /* 0x85E */ DEFINE_SFX(NA_SE_PL_BOUND_SNOW, 0x80, 0, 0, 0, 0) /* 0x85F */ DEFINE_SFX(NA_SE_PL_BOUND_ICE, 0x80, 0, 0, 0, 0) -/* 0x860 */ DEFINE_SFX(NA_SE_PL_BOW_DRAW, 0x30, 0, 1, 0, SFX_FLAG_10) +/* 0x860 */ DEFINE_SFX(NA_SE_PL_BOW_DRAW, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x861 */ DEFINE_SFX(NA_SE_PL_MEATL_BOOTS_JUMP, 0x30, 0, 0, 0, 0) /* 0x862 */ DEFINE_SFX(NA_SE_PL_DUMMY_98, 0x30, 0, 0, 0, 0) /* 0x863 */ DEFINE_SFX(NA_SE_PL_FACE_UP, 0x30, 0, 0, 0, 0) /* 0x864 */ DEFINE_SFX(NA_SE_PL_DIVE_BUBBLE, 0x30, 0, 0, 0, 0) /* 0x865 */ DEFINE_SFX(NA_SE_PL_MOVE_BUBBLE, 0x30, 0, 0, 0, 0) -/* 0x866 */ DEFINE_SFX(NA_SE_PL_METALEFFECT_KID, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x867 */ DEFINE_SFX(NA_SE_PL_METALEFFECT_ADULT, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x866 */ DEFINE_SFX(NA_SE_PL_METALEFFECT_KID, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x867 */ DEFINE_SFX(NA_SE_PL_METALEFFECT_ADULT, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x868 */ DEFINE_SFX(NA_SE_PL_SPARK, 0x30, 0, 0, 0, 0) /* 0x869 */ DEFINE_SFX(NA_SE_PL_PULL_UP_PLANT, 0x30, 0, 0, 0, 0) /* 0x86A */ DEFINE_SFX(NA_SE_PL_PULL_UP_ROCK, 0x30, 0, 0, 0, 0) @@ -134,11 +134,11 @@ /* 0x878 */ DEFINE_SFX(NA_SE_PL_PULL_UP_WOODBOX, 0x30, 0, 0, 0, 0) /* 0x879 */ DEFINE_SFX(NA_SE_PL_MAGIC_FIRE, 0x30, 0, 0, 0, 0) /* 0x87A */ DEFINE_SFX(NA_SE_PL_MAGIC_WIND_NORMAL, 0x30, 0, 0, 0, 0) -/* 0x87B */ DEFINE_SFX(NA_SE_PL_MAGIC_WIND_WARP, 0x30, 0, 0, 0, SFX_FLAG_13) -/* 0x87C */ DEFINE_SFX(NA_SE_PL_MAGIC_SOUL_NORMAL, 0x30, 0, 0, 0, SFX_FLAG_11 | SFX_FLAG_10) -/* 0x87D */ DEFINE_SFX(NA_SE_PL_ARROW_CHARGE_FIRE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x87E */ DEFINE_SFX(NA_SE_PL_ARROW_CHARGE_ICE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x87F */ DEFINE_SFX(NA_SE_PL_ARROW_CHARGE_LIGHT, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x87B */ DEFINE_SFX(NA_SE_PL_MAGIC_WIND_WARP, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST) +/* 0x87C */ DEFINE_SFX(NA_SE_PL_MAGIC_SOUL_NORMAL, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_SCALE | SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x87D */ DEFINE_SFX(NA_SE_PL_ARROW_CHARGE_FIRE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x87E */ DEFINE_SFX(NA_SE_PL_ARROW_CHARGE_ICE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x87F */ DEFINE_SFX(NA_SE_PL_ARROW_CHARGE_LIGHT, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x880 */ DEFINE_SFX(NA_SE_DUMMY_128, 0x20, 0, 2, 0, 0) /* 0x881 */ DEFINE_SFX(NA_SE_DUMMY_129, 0x20, 0, 2, 0, 0) /* 0x882 */ DEFINE_SFX(NA_SE_DUMMY_130, 0x20, 0, 2, 0, 0) @@ -187,24 +187,24 @@ /* 0x8AD */ DEFINE_SFX(NA_SE_DUMMY_173, 0x40, 0, 0, 0, 0) /* 0x8AE */ DEFINE_SFX(NA_SE_DUMMY_174, 0x40, 0, 0, 0, 0) /* 0x8AF */ DEFINE_SFX(NA_SE_DUMMY_175, 0x40, 0, 0, 0, 0) -/* 0x8B0 */ DEFINE_SFX(NA_SE_PL_CRAWL, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B1 */ DEFINE_SFX(NA_SE_PL_CRAWL_SAND, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B2 */ DEFINE_SFX(NA_SE_PL_CRAWL_CONCRETE, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B3 */ DEFINE_SFX(NA_SE_PL_CRAWL_DIRT, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B4 */ DEFINE_SFX(NA_SE_PL_CRAWL_WATER0, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B5 */ DEFINE_SFX(NA_SE_DUMMY_181, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B6 */ DEFINE_SFX(NA_SE_DUMMY_182, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B7 */ DEFINE_SFX(NA_SE_DUMMY_183, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B8 */ DEFINE_SFX(NA_SE_DUMMY_184, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8B9 */ DEFINE_SFX(NA_SE_DUMMY_185, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8BA */ DEFINE_SFX(NA_SE_DUMMY_186, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8BB */ DEFINE_SFX(NA_SE_PL_CRAWL_WOOD, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8BC */ DEFINE_SFX(NA_SE_DUMMY_188, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8BD */ DEFINE_SFX(NA_SE_DUMMY_189, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8BE */ DEFINE_SFX(NA_SE_DUMMY_190, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8BF */ DEFINE_SFX(NA_SE_PL_CRAWL_ICE, 0x30, 0, 1, 0, SFX_FLAG_10) -/* 0x8C0 */ DEFINE_SFX(NA_SE_PL_MAGIC_SOUL_FLASH, 0x30, 0, 0, 0, SFX_FLAG_11 | SFX_FLAG_10) -/* 0x8C1 */ DEFINE_SFX(NA_SE_PL_ROLL_DUST, 0x30, 0, 2, 0, SFX_FLAG_14) +/* 0x8B0 */ DEFINE_SFX(NA_SE_PL_CRAWL, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B1 */ DEFINE_SFX(NA_SE_PL_CRAWL_SAND, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B2 */ DEFINE_SFX(NA_SE_PL_CRAWL_CONCRETE, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B3 */ DEFINE_SFX(NA_SE_PL_CRAWL_DIRT, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B4 */ DEFINE_SFX(NA_SE_PL_CRAWL_WATER0, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B5 */ DEFINE_SFX(NA_SE_DUMMY_181, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B6 */ DEFINE_SFX(NA_SE_DUMMY_182, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B7 */ DEFINE_SFX(NA_SE_DUMMY_183, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B8 */ DEFINE_SFX(NA_SE_DUMMY_184, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8B9 */ DEFINE_SFX(NA_SE_DUMMY_185, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8BA */ DEFINE_SFX(NA_SE_DUMMY_186, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8BB */ DEFINE_SFX(NA_SE_PL_CRAWL_WOOD, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8BC */ DEFINE_SFX(NA_SE_DUMMY_188, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8BD */ DEFINE_SFX(NA_SE_DUMMY_189, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8BE */ DEFINE_SFX(NA_SE_DUMMY_190, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8BF */ DEFINE_SFX(NA_SE_PL_CRAWL_ICE, 0x30, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8C0 */ DEFINE_SFX(NA_SE_PL_MAGIC_SOUL_FLASH, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_SCALE | SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8C1 */ DEFINE_SFX(NA_SE_PL_ROLL_DUST, 0x30, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) /* 0x8C2 */ DEFINE_SFX(NA_SE_DUMMY_194, 0x30, 0, 0, 0, 0) /* 0x8C3 */ DEFINE_SFX(NA_SE_PL_MAGIC_SOUL_BALL, 0x30, 0, 0, 0, 0) /* 0x8C4 */ DEFINE_SFX(NA_SE_PL_SPIRAL_HEAL_BEAM, 0x30, 0, 0, 0, 0) @@ -214,10 +214,10 @@ /* 0x8C8 */ DEFINE_SFX(NA_SE_PL_MAGIC_WIND_VANISH, 0x60, 2, 0, 0, 0) /* 0x8C9 */ DEFINE_SFX(NA_SE_PL_HOBBERBOOTS_LV, 0x30, 0, 0, 0, 0) /* 0x8CA */ DEFINE_SFX(NA_SE_PL_PLANT_MOVE, 0x30, 0, 0, 0, 0) -/* 0x8CB */ DEFINE_SFX(NA_SE_EV_WALL_MOVE_SP, 0x30, 0, 0, 0, SFX_FLAG_11) +/* 0x8CB */ DEFINE_SFX(NA_SE_EV_WALL_MOVE_SP, 0x30, 0, 0, 0, SFX_PARAM_RAND_FREQ_SCALE) /* 0x8CC */ DEFINE_SFX(NA_SE_PL_PLANT_GROW_BIG, 0x30, 0, 0, 0, 0) /* 0x8CD */ DEFINE_SFX(NA_SE_PL_TELESCOPE_MOVEMENT, 0x30, 0, 0, 0, 0) -/* 0x8CE */ DEFINE_SFX(NA_SE_PL_GIANT_WALK, 0x30, 3, 0, 0, SFX_FLAG_10) +/* 0x8CE */ DEFINE_SFX(NA_SE_PL_GIANT_WALK, 0x30, 3, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x8CF */ DEFINE_SFX(NA_SE_PL_CHIBI_FAIRY_HEAL, 0x30, 0, 0, 0, 0) /* 0x8D0 */ DEFINE_SFX(NA_SE_PL_SLIP_LEVEL, 0x30, 0, 0, 0, 0) /* 0x8D1 */ DEFINE_SFX(NA_SE_PL_SLIP_SAND_LEVEL, 0x30, 0, 0, 0, 0) @@ -235,7 +235,7 @@ /* 0x8DD */ DEFINE_SFX(NA_SE_PL_SLIP_HEAVYBOOTS_LEVEL, 0x30, 0, 0, 0, 0) /* 0x8DE */ DEFINE_SFX(NA_SE_PL_DUMMY_222, 0x30, 0, 0, 0, 0) /* 0x8DF */ DEFINE_SFX(NA_SE_PL_SLIP_ICE_LEVEL, 0x30, 0, 0, 0, 0) -/* 0x8E0 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_FIRE, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x8E0 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_FIRE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x8E1 */ DEFINE_SFX(NA_SE_PL_GORON_BALLJUMP, 0x60, 0, 1, 0, 0) /* 0x8E2 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_IN_GRD, 0x40, 0, 0, 0, 0) /* 0x8E3 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_OUT_GRD, 0x30, 0, 0, 0, 0) @@ -251,227 +251,227 @@ /* 0x8ED */ DEFINE_SFX(NA_SE_PL_ZORA_SWIM_LV, 0x30, 0, 0, 0, 0) /* 0x8EE */ DEFINE_SFX(NA_SE_PL_ZORA_SWIM_ROLL, 0x30, 0, 0, 0, 0) /* 0x8EF */ DEFINE_SFX(NA_SE_PL_GORON_SQUAT, 0x30, 0, 0, 0, 0) -/* 0x8F0 */ DEFINE_SFX(NA_SE_PL_DUMMY_240, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x8F1 */ DEFINE_SFX(NA_SE_PL_DUMMY_241, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x8F2 */ DEFINE_SFX(NA_SE_PL_DUMMY_242, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x8F3 */ DEFINE_SFX(NA_SE_PL_DUMMY_243, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x8F4 */ DEFINE_SFX(NA_SE_PL_DUMMY_244, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x8F5 */ DEFINE_SFX(NA_SE_PL_DUMMY_245, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x8F6 */ DEFINE_SFX(NA_SE_PL_DUMMY_246, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x8F7 */ DEFINE_SFX(NA_SE_PL_DUMMY_247, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x8F8 */ DEFINE_SFX(NA_SE_PL_DUMMY_248, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x8F9 */ DEFINE_SFX(NA_SE_PL_DUMMY_249, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x8FA */ DEFINE_SFX(NA_SE_PL_DUMMY_250, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x8FB */ DEFINE_SFX(NA_SE_PL_DUMMY_251, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x8FC */ DEFINE_SFX(NA_SE_PL_DUMMY_252, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x8FD */ DEFINE_SFX(NA_SE_PL_DUMMY_253, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x8FE */ DEFINE_SFX(NA_SE_PL_DUMMY_254, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x8FF */ DEFINE_SFX(NA_SE_PL_DUMMY_255, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x900 */ DEFINE_SFX(NA_SE_PL_DUMMY_256, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x901 */ DEFINE_SFX(NA_SE_PL_DUMMY_257, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x902 */ DEFINE_SFX(NA_SE_PL_DUMMY_258, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x903 */ DEFINE_SFX(NA_SE_PL_DUMMY_259, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x904 */ DEFINE_SFX(NA_SE_PL_DUMMY_260, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x905 */ DEFINE_SFX(NA_SE_PL_DUMMY_261, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x906 */ DEFINE_SFX(NA_SE_PL_DUMMY_262, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x907 */ DEFINE_SFX(NA_SE_PL_DUMMY_263, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x908 */ DEFINE_SFX(NA_SE_PL_DUMMY_264, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x909 */ DEFINE_SFX(NA_SE_PL_DUMMY_265, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x90A */ DEFINE_SFX(NA_SE_PL_DUMMY_266, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x90B */ DEFINE_SFX(NA_SE_PL_DUMMY_267, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x90C */ DEFINE_SFX(NA_SE_PL_DUMMY_268, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x90D */ DEFINE_SFX(NA_SE_PL_DUMMY_269, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x90E */ DEFINE_SFX(NA_SE_PL_DUMMY_270, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x90F */ DEFINE_SFX(NA_SE_PL_DUMMY_271, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x910 */ DEFINE_SFX(NA_SE_PL_DUMMY_272, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x911 */ DEFINE_SFX(NA_SE_PL_DUMMY_273, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x912 */ DEFINE_SFX(NA_SE_PL_DUMMY_274, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x913 */ DEFINE_SFX(NA_SE_PL_DUMMY_275, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x914 */ DEFINE_SFX(NA_SE_PL_DUMMY_276, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x915 */ DEFINE_SFX(NA_SE_PL_DUMMY_277, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x916 */ DEFINE_SFX(NA_SE_PL_DUMMY_278, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x917 */ DEFINE_SFX(NA_SE_PL_DUMMY_279, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x918 */ DEFINE_SFX(NA_SE_PL_DUMMY_280, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x919 */ DEFINE_SFX(NA_SE_PL_DUMMY_281, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x91A */ DEFINE_SFX(NA_SE_PL_DUMMY_282, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x91B */ DEFINE_SFX(NA_SE_PL_DUMMY_283, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x91C */ DEFINE_SFX(NA_SE_PL_DUMMY_284, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x91D */ DEFINE_SFX(NA_SE_PL_DUMMY_285, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x91E */ DEFINE_SFX(NA_SE_PL_DUMMY_286, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x91F */ DEFINE_SFX(NA_SE_PL_DUMMY_287, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x920 */ DEFINE_SFX(NA_SE_PL_DUMMY_288, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x921 */ DEFINE_SFX(NA_SE_PL_DUMMY_289, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x922 */ DEFINE_SFX(NA_SE_PL_DUMMY_290, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x923 */ DEFINE_SFX(NA_SE_PL_DUMMY_291, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x924 */ DEFINE_SFX(NA_SE_PL_DUMMY_292, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x925 */ DEFINE_SFX(NA_SE_PL_DUMMY_293, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x926 */ DEFINE_SFX(NA_SE_PL_DUMMY_294, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x927 */ DEFINE_SFX(NA_SE_PL_DUMMY_295, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x928 */ DEFINE_SFX(NA_SE_PL_DUMMY_296, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x929 */ DEFINE_SFX(NA_SE_PL_DUMMY_297, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x92A */ DEFINE_SFX(NA_SE_PL_DUMMY_298, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x92B */ DEFINE_SFX(NA_SE_PL_DUMMY_299, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x92C */ DEFINE_SFX(NA_SE_PL_DUMMY_300, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x92D */ DEFINE_SFX(NA_SE_PL_DUMMY_301, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x92E */ DEFINE_SFX(NA_SE_PL_DUMMY_302, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x92F */ DEFINE_SFX(NA_SE_PL_DUMMY_303, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x930 */ DEFINE_SFX(NA_SE_PL_DUMMY_304, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x931 */ DEFINE_SFX(NA_SE_PL_DUMMY_305, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x932 */ DEFINE_SFX(NA_SE_PL_DUMMY_306, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x933 */ DEFINE_SFX(NA_SE_PL_DUMMY_307, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x934 */ DEFINE_SFX(NA_SE_PL_DUMMY_308, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x935 */ DEFINE_SFX(NA_SE_PL_DUMMY_309, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x936 */ DEFINE_SFX(NA_SE_PL_DUMMY_310, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x937 */ DEFINE_SFX(NA_SE_PL_DUMMY_311, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x938 */ DEFINE_SFX(NA_SE_PL_DUMMY_312, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x939 */ DEFINE_SFX(NA_SE_PL_DUMMY_313, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x93A */ DEFINE_SFX(NA_SE_PL_DUMMY_314, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x93B */ DEFINE_SFX(NA_SE_PL_DUMMY_315, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x93C */ DEFINE_SFX(NA_SE_PL_DUMMY_316, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x93D */ DEFINE_SFX(NA_SE_PL_DUMMY_317, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x93E */ DEFINE_SFX(NA_SE_PL_DUMMY_318, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x93F */ DEFINE_SFX(NA_SE_PL_DUMMY_319, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x940 */ DEFINE_SFX(NA_SE_PL_DUMMY_320, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x941 */ DEFINE_SFX(NA_SE_PL_DUMMY_321, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x942 */ DEFINE_SFX(NA_SE_PL_DUMMY_322, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x943 */ DEFINE_SFX(NA_SE_PL_DUMMY_323, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x944 */ DEFINE_SFX(NA_SE_PL_DUMMY_324, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x945 */ DEFINE_SFX(NA_SE_PL_DUMMY_325, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x946 */ DEFINE_SFX(NA_SE_PL_DUMMY_326, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x947 */ DEFINE_SFX(NA_SE_PL_DUMMY_327, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x948 */ DEFINE_SFX(NA_SE_PL_DUMMY_328, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x949 */ DEFINE_SFX(NA_SE_PL_DUMMY_329, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x94A */ DEFINE_SFX(NA_SE_PL_DUMMY_330, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x94B */ DEFINE_SFX(NA_SE_PL_DUMMY_331, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x94C */ DEFINE_SFX(NA_SE_PL_DUMMY_332, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x94D */ DEFINE_SFX(NA_SE_PL_DUMMY_333, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x94E */ DEFINE_SFX(NA_SE_PL_DUMMY_334, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x94F */ DEFINE_SFX(NA_SE_PL_DUMMY_335, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x950 */ DEFINE_SFX(NA_SE_PL_DUMMY_336, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x951 */ DEFINE_SFX(NA_SE_PL_DUMMY_337, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x952 */ DEFINE_SFX(NA_SE_PL_DUMMY_338, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x953 */ DEFINE_SFX(NA_SE_PL_DUMMY_339, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x954 */ DEFINE_SFX(NA_SE_PL_DUMMY_340, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x955 */ DEFINE_SFX(NA_SE_PL_DUMMY_341, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x956 */ DEFINE_SFX(NA_SE_PL_DUMMY_342, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x957 */ DEFINE_SFX(NA_SE_PL_DUMMY_343, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x958 */ DEFINE_SFX(NA_SE_PL_DUMMY_344, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x959 */ DEFINE_SFX(NA_SE_PL_DUMMY_345, 0x20, 0, 1, 0, SFX_FLAG_10) -/* 0x95A */ DEFINE_SFX(NA_SE_PL_DUMMY_346, 0x20, 0, 2, 0, SFX_FLAG_10) -/* 0x95B */ DEFINE_SFX(NA_SE_PL_DUMMY_347, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x95C */ DEFINE_SFX(NA_SE_PL_DUMMY_348, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x95D */ DEFINE_SFX(NA_SE_PL_DUMMY_349, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x95E */ DEFINE_SFX(NA_SE_PL_DUMMY_350, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x95F */ DEFINE_SFX(NA_SE_PL_DUMMY_351, 0x20, 0, 0, 0, SFX_FLAG_10) -/* 0x960 */ DEFINE_SFX(NA_SE_EV_MARATHONMAN_RISE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x961 */ DEFINE_SFX(NA_SE_PL_DUMMY_353, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x962 */ DEFINE_SFX(NA_SE_PL_DUMMY_354, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x963 */ DEFINE_SFX(NA_SE_PL_DUMMY_355, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x964 */ DEFINE_SFX(NA_SE_PL_DUMMY_356, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x965 */ DEFINE_SFX(NA_SE_PL_DUMMY_357, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x966 */ DEFINE_SFX(NA_SE_PL_DUMMY_358, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x967 */ DEFINE_SFX(NA_SE_PL_DUMMY_359, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x968 */ DEFINE_SFX(NA_SE_PL_DUMMY_360, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x969 */ DEFINE_SFX(NA_SE_PL_DUMMY_361, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x96A */ DEFINE_SFX(NA_SE_PL_DUMMY_362, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x96B */ DEFINE_SFX(NA_SE_PL_DUMMY_363, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x96C */ DEFINE_SFX(NA_SE_PL_DUMMY_364, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x96D */ DEFINE_SFX(NA_SE_PL_DUMMY_365, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x96E */ DEFINE_SFX(NA_SE_PL_DUMMY_366, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x96F */ DEFINE_SFX(NA_SE_PL_DUMMY_367, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x970 */ DEFINE_SFX(NA_SE_EV_MARATHONMAN_LAND, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x971 */ DEFINE_SFX(NA_SE_PL_DUMMY_369, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x972 */ DEFINE_SFX(NA_SE_PL_DUMMY_370, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x973 */ DEFINE_SFX(NA_SE_PL_DUMMY_371, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x974 */ DEFINE_SFX(NA_SE_PL_DUMMY_372, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x975 */ DEFINE_SFX(NA_SE_PL_DUMMY_373, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x976 */ DEFINE_SFX(NA_SE_PL_DUMMY_374, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x977 */ DEFINE_SFX(NA_SE_PL_DUMMY_375, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x978 */ DEFINE_SFX(NA_SE_PL_DUMMY_376, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x979 */ DEFINE_SFX(NA_SE_PL_DUMMY_377, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x97A */ DEFINE_SFX(NA_SE_PL_DUMMY378, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x97B */ DEFINE_SFX(NA_SE_PL_DUMMY_379, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x97C */ DEFINE_SFX(NA_SE_PL_DUMMY_380, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x97D */ DEFINE_SFX(NA_SE_PL_DUMMY_381, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x97E */ DEFINE_SFX(NA_SE_PL_DUMMY_382, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x97F */ DEFINE_SFX(NA_SE_PL_DUMMY_383, 0x40, 0, 1, 0, SFX_FLAG_10) -/* 0x980 */ DEFINE_SFX(NA_SE_PL_GORON_CHG_ROLL, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x981 */ DEFINE_SFX(NA_SE_PL_DUMMY_385, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x982 */ DEFINE_SFX(NA_SE_PL_DUMMY_386, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x983 */ DEFINE_SFX(NA_SE_PL_DUMMY_387, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x984 */ DEFINE_SFX(NA_SE_PL_DUMMY_388, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x985 */ DEFINE_SFX(NA_SE_PL_DUMMY_389, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x986 */ DEFINE_SFX(NA_SE_PL_DUMMY_390, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x987 */ DEFINE_SFX(NA_SE_PL_DUMMY_391, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x988 */ DEFINE_SFX(NA_SE_PL_DUMMY_392, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x989 */ DEFINE_SFX(NA_SE_PL_DUMMY_393, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x98A */ DEFINE_SFX(NA_SE_PL_DUMMY_394, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x98B */ DEFINE_SFX(NA_SE_PL_DUMMY_395, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x98C */ DEFINE_SFX(NA_SE_PL_DUMMY_396, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x98D */ DEFINE_SFX(NA_SE_PL_DUMMY_397, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x98E */ DEFINE_SFX(NA_SE_PL_DUMMY_398, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x98F */ DEFINE_SFX(NA_SE_PL_GORON_CHG_ROLL_ICE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x990 */ DEFINE_SFX(NA_SE_PL_GORON_ROLL, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x991 */ DEFINE_SFX(NA_SE_PL_DUMMY_401, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x992 */ DEFINE_SFX(NA_SE_PL_DUMMY_402, 0x50, 0, 0, 0, SFX_FLAG_10) -/* 0x993 */ DEFINE_SFX(NA_SE_PL_DUMMY_403, 0x50, 0, 0, 0, SFX_FLAG_10) -/* 0x994 */ DEFINE_SFX(NA_SE_PL_DUMMY_404, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x995 */ DEFINE_SFX(NA_SE_PL_DUMMY_405, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x996 */ DEFINE_SFX(NA_SE_PL_DUMMY_406, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x997 */ DEFINE_SFX(NA_SE_PL_DUMMY_407, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x998 */ DEFINE_SFX(NA_SE_PL_DUMMY_408, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x999 */ DEFINE_SFX(NA_SE_PL_DUMMY_409, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x99A */ DEFINE_SFX(NA_SE_PL_DUMMY_410, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x99B */ DEFINE_SFX(NA_SE_PL_DUMMY_411, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x99C */ DEFINE_SFX(NA_SE_PL_DUMMY_412, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x99D */ DEFINE_SFX(NA_SE_PL_DUMMY_413, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x99E */ DEFINE_SFX(NA_SE_PL_DUMMY_414, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x99F */ DEFINE_SFX(NA_SE_PL_GORON_ROLL_ICE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A0 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_BUD, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A1 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_BUBLE_BREATH, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A2 */ DEFINE_SFX(NA_SE_PL_GORON_BALL_CHARGE_FAILED, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A3 */ DEFINE_SFX(NA_SE_PL_GORON_BALL_CHARGE_DASH, 0x60, 0, 0, 0, SFX_FLAG_10) -/* 0x9A4 */ DEFINE_SFX(NA_SE_PL_FACE_CHANGE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A5 */ DEFINE_SFX(NA_SE_PL_FACE_UP_S, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A6 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_STRUGGLE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A7 */ DEFINE_SFX(NA_SE_PL_WARP_PLATE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A8 */ DEFINE_SFX(NA_SE_PL_WARP_PLATE_OUT, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9A9 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_ATTACK, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9AA */ DEFINE_SFX(NA_SE_PL_TRANSFORM_VOICE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9AB */ DEFINE_SFX(NA_SE_PL_FACE_RETURN, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9AC */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_DROP_BOMB, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9AD */ DEFINE_SFX(NA_SE_PL_GORON_SLIP, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9AE */ DEFINE_SFX(NA_SE_PL_ROLL_SNOW_DUST, 0x30, 0, 2, 0, SFX_FLAG_14) -/* 0x9AF */ DEFINE_SFX(NA_SE_PL_ZORA_SPARK_BARRIER, 0x40, 3, 0, 0, SFX_FLAG_10) -/* 0x9B0 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B1 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP2, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B2 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP3, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B3 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP4, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B4 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP5, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B5 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP6, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B6 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP7, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B7 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP8, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B8 */ DEFINE_SFX(NA_SE_PL_GORON_STOMACH_EXPLOSION, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9B9 */ DEFINE_SFX(NA_SE_PL_GORON_DRINK_BOMB, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9BA */ DEFINE_SFX(NA_SE_PL_GET_UP, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9BB */ DEFINE_SFX(NA_SE_PL_WARP_WING_OPEN, 0x30, 0, 0, 0, SFX_FLAG_13 | SFX_FLAG_10) -/* 0x9BC */ DEFINE_SFX(NA_SE_PL_WARP_WING_CLOSE, 0x30, 0, 0, 0, SFX_FLAG_13 | SFX_FLAG_10) -/* 0x9BD */ DEFINE_SFX(NA_SE_PL_WARP_WING_ROLL, 0x30, 0, 0, 0, SFX_FLAG_13 | SFX_FLAG_10) -/* 0x9BE */ DEFINE_SFX(NA_SE_PL_WARP_WING_VANISH, 0x30, 0, 0, 0, SFX_FLAG_13 | SFX_FLAG_10) -/* 0x9BF */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_MISS_FIRE, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9C0 */ DEFINE_SFX(NA_SE_PL_FLYING_AIR, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x8F0 */ DEFINE_SFX(NA_SE_PL_DUMMY_240, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F1 */ DEFINE_SFX(NA_SE_PL_DUMMY_241, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F2 */ DEFINE_SFX(NA_SE_PL_DUMMY_242, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F3 */ DEFINE_SFX(NA_SE_PL_DUMMY_243, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F4 */ DEFINE_SFX(NA_SE_PL_DUMMY_244, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F5 */ DEFINE_SFX(NA_SE_PL_DUMMY_245, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F6 */ DEFINE_SFX(NA_SE_PL_DUMMY_246, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F7 */ DEFINE_SFX(NA_SE_PL_DUMMY_247, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F8 */ DEFINE_SFX(NA_SE_PL_DUMMY_248, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8F9 */ DEFINE_SFX(NA_SE_PL_DUMMY_249, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8FA */ DEFINE_SFX(NA_SE_PL_DUMMY_250, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8FB */ DEFINE_SFX(NA_SE_PL_DUMMY_251, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8FC */ DEFINE_SFX(NA_SE_PL_DUMMY_252, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8FD */ DEFINE_SFX(NA_SE_PL_DUMMY_253, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8FE */ DEFINE_SFX(NA_SE_PL_DUMMY_254, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x8FF */ DEFINE_SFX(NA_SE_PL_DUMMY_255, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x900 */ DEFINE_SFX(NA_SE_PL_DUMMY_256, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x901 */ DEFINE_SFX(NA_SE_PL_DUMMY_257, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x902 */ DEFINE_SFX(NA_SE_PL_DUMMY_258, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x903 */ DEFINE_SFX(NA_SE_PL_DUMMY_259, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x904 */ DEFINE_SFX(NA_SE_PL_DUMMY_260, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x905 */ DEFINE_SFX(NA_SE_PL_DUMMY_261, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x906 */ DEFINE_SFX(NA_SE_PL_DUMMY_262, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x907 */ DEFINE_SFX(NA_SE_PL_DUMMY_263, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x908 */ DEFINE_SFX(NA_SE_PL_DUMMY_264, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x909 */ DEFINE_SFX(NA_SE_PL_DUMMY_265, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x90A */ DEFINE_SFX(NA_SE_PL_DUMMY_266, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x90B */ DEFINE_SFX(NA_SE_PL_DUMMY_267, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x90C */ DEFINE_SFX(NA_SE_PL_DUMMY_268, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x90D */ DEFINE_SFX(NA_SE_PL_DUMMY_269, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x90E */ DEFINE_SFX(NA_SE_PL_DUMMY_270, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x90F */ DEFINE_SFX(NA_SE_PL_DUMMY_271, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x910 */ DEFINE_SFX(NA_SE_PL_DUMMY_272, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x911 */ DEFINE_SFX(NA_SE_PL_DUMMY_273, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x912 */ DEFINE_SFX(NA_SE_PL_DUMMY_274, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x913 */ DEFINE_SFX(NA_SE_PL_DUMMY_275, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x914 */ DEFINE_SFX(NA_SE_PL_DUMMY_276, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x915 */ DEFINE_SFX(NA_SE_PL_DUMMY_277, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x916 */ DEFINE_SFX(NA_SE_PL_DUMMY_278, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x917 */ DEFINE_SFX(NA_SE_PL_DUMMY_279, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x918 */ DEFINE_SFX(NA_SE_PL_DUMMY_280, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x919 */ DEFINE_SFX(NA_SE_PL_DUMMY_281, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x91A */ DEFINE_SFX(NA_SE_PL_DUMMY_282, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x91B */ DEFINE_SFX(NA_SE_PL_DUMMY_283, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x91C */ DEFINE_SFX(NA_SE_PL_DUMMY_284, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x91D */ DEFINE_SFX(NA_SE_PL_DUMMY_285, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x91E */ DEFINE_SFX(NA_SE_PL_DUMMY_286, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x91F */ DEFINE_SFX(NA_SE_PL_DUMMY_287, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x920 */ DEFINE_SFX(NA_SE_PL_DUMMY_288, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x921 */ DEFINE_SFX(NA_SE_PL_DUMMY_289, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x922 */ DEFINE_SFX(NA_SE_PL_DUMMY_290, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x923 */ DEFINE_SFX(NA_SE_PL_DUMMY_291, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x924 */ DEFINE_SFX(NA_SE_PL_DUMMY_292, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x925 */ DEFINE_SFX(NA_SE_PL_DUMMY_293, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x926 */ DEFINE_SFX(NA_SE_PL_DUMMY_294, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x927 */ DEFINE_SFX(NA_SE_PL_DUMMY_295, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x928 */ DEFINE_SFX(NA_SE_PL_DUMMY_296, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x929 */ DEFINE_SFX(NA_SE_PL_DUMMY_297, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x92A */ DEFINE_SFX(NA_SE_PL_DUMMY_298, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x92B */ DEFINE_SFX(NA_SE_PL_DUMMY_299, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x92C */ DEFINE_SFX(NA_SE_PL_DUMMY_300, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x92D */ DEFINE_SFX(NA_SE_PL_DUMMY_301, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x92E */ DEFINE_SFX(NA_SE_PL_DUMMY_302, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x92F */ DEFINE_SFX(NA_SE_PL_DUMMY_303, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x930 */ DEFINE_SFX(NA_SE_PL_DUMMY_304, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x931 */ DEFINE_SFX(NA_SE_PL_DUMMY_305, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x932 */ DEFINE_SFX(NA_SE_PL_DUMMY_306, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x933 */ DEFINE_SFX(NA_SE_PL_DUMMY_307, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x934 */ DEFINE_SFX(NA_SE_PL_DUMMY_308, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x935 */ DEFINE_SFX(NA_SE_PL_DUMMY_309, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x936 */ DEFINE_SFX(NA_SE_PL_DUMMY_310, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x937 */ DEFINE_SFX(NA_SE_PL_DUMMY_311, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x938 */ DEFINE_SFX(NA_SE_PL_DUMMY_312, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x939 */ DEFINE_SFX(NA_SE_PL_DUMMY_313, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x93A */ DEFINE_SFX(NA_SE_PL_DUMMY_314, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x93B */ DEFINE_SFX(NA_SE_PL_DUMMY_315, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x93C */ DEFINE_SFX(NA_SE_PL_DUMMY_316, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x93D */ DEFINE_SFX(NA_SE_PL_DUMMY_317, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x93E */ DEFINE_SFX(NA_SE_PL_DUMMY_318, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x93F */ DEFINE_SFX(NA_SE_PL_DUMMY_319, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x940 */ DEFINE_SFX(NA_SE_PL_DUMMY_320, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x941 */ DEFINE_SFX(NA_SE_PL_DUMMY_321, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x942 */ DEFINE_SFX(NA_SE_PL_DUMMY_322, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x943 */ DEFINE_SFX(NA_SE_PL_DUMMY_323, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x944 */ DEFINE_SFX(NA_SE_PL_DUMMY_324, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x945 */ DEFINE_SFX(NA_SE_PL_DUMMY_325, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x946 */ DEFINE_SFX(NA_SE_PL_DUMMY_326, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x947 */ DEFINE_SFX(NA_SE_PL_DUMMY_327, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x948 */ DEFINE_SFX(NA_SE_PL_DUMMY_328, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x949 */ DEFINE_SFX(NA_SE_PL_DUMMY_329, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x94A */ DEFINE_SFX(NA_SE_PL_DUMMY_330, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x94B */ DEFINE_SFX(NA_SE_PL_DUMMY_331, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x94C */ DEFINE_SFX(NA_SE_PL_DUMMY_332, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x94D */ DEFINE_SFX(NA_SE_PL_DUMMY_333, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x94E */ DEFINE_SFX(NA_SE_PL_DUMMY_334, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x94F */ DEFINE_SFX(NA_SE_PL_DUMMY_335, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x950 */ DEFINE_SFX(NA_SE_PL_DUMMY_336, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x951 */ DEFINE_SFX(NA_SE_PL_DUMMY_337, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x952 */ DEFINE_SFX(NA_SE_PL_DUMMY_338, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x953 */ DEFINE_SFX(NA_SE_PL_DUMMY_339, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x954 */ DEFINE_SFX(NA_SE_PL_DUMMY_340, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x955 */ DEFINE_SFX(NA_SE_PL_DUMMY_341, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x956 */ DEFINE_SFX(NA_SE_PL_DUMMY_342, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x957 */ DEFINE_SFX(NA_SE_PL_DUMMY_343, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x958 */ DEFINE_SFX(NA_SE_PL_DUMMY_344, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x959 */ DEFINE_SFX(NA_SE_PL_DUMMY_345, 0x20, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x95A */ DEFINE_SFX(NA_SE_PL_DUMMY_346, 0x20, 0, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x95B */ DEFINE_SFX(NA_SE_PL_DUMMY_347, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x95C */ DEFINE_SFX(NA_SE_PL_DUMMY_348, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x95D */ DEFINE_SFX(NA_SE_PL_DUMMY_349, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x95E */ DEFINE_SFX(NA_SE_PL_DUMMY_350, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x95F */ DEFINE_SFX(NA_SE_PL_DUMMY_351, 0x20, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x960 */ DEFINE_SFX(NA_SE_EV_MARATHONMAN_RISE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x961 */ DEFINE_SFX(NA_SE_PL_DUMMY_353, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x962 */ DEFINE_SFX(NA_SE_PL_DUMMY_354, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x963 */ DEFINE_SFX(NA_SE_PL_DUMMY_355, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x964 */ DEFINE_SFX(NA_SE_PL_DUMMY_356, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x965 */ DEFINE_SFX(NA_SE_PL_DUMMY_357, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x966 */ DEFINE_SFX(NA_SE_PL_DUMMY_358, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x967 */ DEFINE_SFX(NA_SE_PL_DUMMY_359, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x968 */ DEFINE_SFX(NA_SE_PL_DUMMY_360, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x969 */ DEFINE_SFX(NA_SE_PL_DUMMY_361, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x96A */ DEFINE_SFX(NA_SE_PL_DUMMY_362, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x96B */ DEFINE_SFX(NA_SE_PL_DUMMY_363, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x96C */ DEFINE_SFX(NA_SE_PL_DUMMY_364, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x96D */ DEFINE_SFX(NA_SE_PL_DUMMY_365, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x96E */ DEFINE_SFX(NA_SE_PL_DUMMY_366, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x96F */ DEFINE_SFX(NA_SE_PL_DUMMY_367, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x970 */ DEFINE_SFX(NA_SE_EV_MARATHONMAN_LAND, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x971 */ DEFINE_SFX(NA_SE_PL_DUMMY_369, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x972 */ DEFINE_SFX(NA_SE_PL_DUMMY_370, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x973 */ DEFINE_SFX(NA_SE_PL_DUMMY_371, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x974 */ DEFINE_SFX(NA_SE_PL_DUMMY_372, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x975 */ DEFINE_SFX(NA_SE_PL_DUMMY_373, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x976 */ DEFINE_SFX(NA_SE_PL_DUMMY_374, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x977 */ DEFINE_SFX(NA_SE_PL_DUMMY_375, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x978 */ DEFINE_SFX(NA_SE_PL_DUMMY_376, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x979 */ DEFINE_SFX(NA_SE_PL_DUMMY_377, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x97A */ DEFINE_SFX(NA_SE_PL_DUMMY378, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x97B */ DEFINE_SFX(NA_SE_PL_DUMMY_379, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x97C */ DEFINE_SFX(NA_SE_PL_DUMMY_380, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x97D */ DEFINE_SFX(NA_SE_PL_DUMMY_381, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x97E */ DEFINE_SFX(NA_SE_PL_DUMMY_382, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x97F */ DEFINE_SFX(NA_SE_PL_DUMMY_383, 0x40, 0, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x980 */ DEFINE_SFX(NA_SE_PL_GORON_CHG_ROLL, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x981 */ DEFINE_SFX(NA_SE_PL_DUMMY_385, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x982 */ DEFINE_SFX(NA_SE_PL_DUMMY_386, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x983 */ DEFINE_SFX(NA_SE_PL_DUMMY_387, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x984 */ DEFINE_SFX(NA_SE_PL_DUMMY_388, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x985 */ DEFINE_SFX(NA_SE_PL_DUMMY_389, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x986 */ DEFINE_SFX(NA_SE_PL_DUMMY_390, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x987 */ DEFINE_SFX(NA_SE_PL_DUMMY_391, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x988 */ DEFINE_SFX(NA_SE_PL_DUMMY_392, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x989 */ DEFINE_SFX(NA_SE_PL_DUMMY_393, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x98A */ DEFINE_SFX(NA_SE_PL_DUMMY_394, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x98B */ DEFINE_SFX(NA_SE_PL_DUMMY_395, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x98C */ DEFINE_SFX(NA_SE_PL_DUMMY_396, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x98D */ DEFINE_SFX(NA_SE_PL_DUMMY_397, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x98E */ DEFINE_SFX(NA_SE_PL_DUMMY_398, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x98F */ DEFINE_SFX(NA_SE_PL_GORON_CHG_ROLL_ICE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x990 */ DEFINE_SFX(NA_SE_PL_GORON_ROLL, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x991 */ DEFINE_SFX(NA_SE_PL_DUMMY_401, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x992 */ DEFINE_SFX(NA_SE_PL_DUMMY_402, 0x50, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x993 */ DEFINE_SFX(NA_SE_PL_DUMMY_403, 0x50, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x994 */ DEFINE_SFX(NA_SE_PL_DUMMY_404, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x995 */ DEFINE_SFX(NA_SE_PL_DUMMY_405, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x996 */ DEFINE_SFX(NA_SE_PL_DUMMY_406, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x997 */ DEFINE_SFX(NA_SE_PL_DUMMY_407, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x998 */ DEFINE_SFX(NA_SE_PL_DUMMY_408, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x999 */ DEFINE_SFX(NA_SE_PL_DUMMY_409, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x99A */ DEFINE_SFX(NA_SE_PL_DUMMY_410, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x99B */ DEFINE_SFX(NA_SE_PL_DUMMY_411, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x99C */ DEFINE_SFX(NA_SE_PL_DUMMY_412, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x99D */ DEFINE_SFX(NA_SE_PL_DUMMY_413, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x99E */ DEFINE_SFX(NA_SE_PL_DUMMY_414, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x99F */ DEFINE_SFX(NA_SE_PL_GORON_ROLL_ICE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A0 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_BUD, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A1 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_BUBLE_BREATH, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A2 */ DEFINE_SFX(NA_SE_PL_GORON_BALL_CHARGE_FAILED, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A3 */ DEFINE_SFX(NA_SE_PL_GORON_BALL_CHARGE_DASH, 0x60, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A4 */ DEFINE_SFX(NA_SE_PL_FACE_CHANGE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A5 */ DEFINE_SFX(NA_SE_PL_FACE_UP_S, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A6 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_STRUGGLE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A7 */ DEFINE_SFX(NA_SE_PL_WARP_PLATE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A8 */ DEFINE_SFX(NA_SE_PL_WARP_PLATE_OUT, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9A9 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_ATTACK, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9AA */ DEFINE_SFX(NA_SE_PL_TRANSFORM_VOICE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9AB */ DEFINE_SFX(NA_SE_PL_FACE_RETURN, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9AC */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_DROP_BOMB, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9AD */ DEFINE_SFX(NA_SE_PL_GORON_SLIP, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9AE */ DEFINE_SFX(NA_SE_PL_ROLL_SNOW_DUST, 0x30, 0, 2, 0, SFX_PARAM_RAND_FREQ_LOWER) +/* 0x9AF */ DEFINE_SFX(NA_SE_PL_ZORA_SPARK_BARRIER, 0x40, 3, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B0 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B1 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP2, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B2 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP3, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B3 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP4, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B4 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP5, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B5 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP6, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B6 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP7, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B7 */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_JUMP8, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B8 */ DEFINE_SFX(NA_SE_PL_GORON_STOMACH_EXPLOSION, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9B9 */ DEFINE_SFX(NA_SE_PL_GORON_DRINK_BOMB, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9BA */ DEFINE_SFX(NA_SE_PL_GET_UP, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9BB */ DEFINE_SFX(NA_SE_PL_WARP_WING_OPEN, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST | SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9BC */ DEFINE_SFX(NA_SE_PL_WARP_WING_CLOSE, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST | SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9BD */ DEFINE_SFX(NA_SE_PL_WARP_WING_ROLL, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST | SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9BE */ DEFINE_SFX(NA_SE_PL_WARP_WING_VANISH, 0x30, 0, 0, 0, SFX_FLAG_VOLUME_NO_DIST | SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9BF */ DEFINE_SFX(NA_SE_PL_DEKUNUTS_MISS_FIRE, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9C0 */ DEFINE_SFX(NA_SE_PL_FLYING_AIR, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x9C1 */ DEFINE_SFX(NA_SE_PL_FIREWORKS, 0x30, 3, 1, 0, 0) /* 0x9C2 */ DEFINE_SFX(NA_SE_PL_FIREWORKS_DUMMY, 0x30, 3, 1, 0, 0) -/* 0x9C3 */ DEFINE_SFX(NA_SE_PL_PULL_UP_SNOWBALL, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9C4 */ DEFINE_SFX(NA_SE_PL_WARP_WING_ROLL_2, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9C5 */ DEFINE_SFX(NA_SE_PL_TRANSFORM_GIANT, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9C6 */ DEFINE_SFX(NA_SE_PL_TRANSFORM_NORAML, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9C7 */ DEFINE_SFX(NA_SE_PL_LI_OKARINATORI, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9C8 */ DEFINE_SFX(NA_SE_PL_LI_FUTTOBI, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9C9 */ DEFINE_SFX(NA_SE_PL_LI_OP_OKIAGARI, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9CA */ DEFINE_SFX(NA_SE_PL_LI_OP_TATIAGARI, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9CB */ DEFINE_SFX(NA_SE_PL_JUMP_METAL, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9CC */ DEFINE_SFX(NA_SE_PL_LAND_METAL, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9CD */ DEFINE_SFX(NA_SE_PL_BOUND_METAL, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9CE */ DEFINE_SFX(NA_SE_PL_WALK_WALL, 0x30, 0, 0, 0, SFX_FLAG_10) -/* 0x9CF */ DEFINE_SFX(NA_SE_PL_WALK_WALL_DEKU, 0x30, 0, 0, 0, SFX_FLAG_10) +/* 0x9C3 */ DEFINE_SFX(NA_SE_PL_PULL_UP_SNOWBALL, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9C4 */ DEFINE_SFX(NA_SE_PL_WARP_WING_ROLL_2, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9C5 */ DEFINE_SFX(NA_SE_PL_TRANSFORM_GIANT, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9C6 */ DEFINE_SFX(NA_SE_PL_TRANSFORM_NORAML, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9C7 */ DEFINE_SFX(NA_SE_PL_LI_OKARINATORI, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9C8 */ DEFINE_SFX(NA_SE_PL_LI_FUTTOBI, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9C9 */ DEFINE_SFX(NA_SE_PL_LI_OP_OKIAGARI, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9CA */ DEFINE_SFX(NA_SE_PL_LI_OP_TATIAGARI, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9CB */ DEFINE_SFX(NA_SE_PL_JUMP_METAL, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9CC */ DEFINE_SFX(NA_SE_PL_LAND_METAL, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9CD */ DEFINE_SFX(NA_SE_PL_BOUND_METAL, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9CE */ DEFINE_SFX(NA_SE_PL_WALK_WALL, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x9CF */ DEFINE_SFX(NA_SE_PL_WALK_WALL_DEKU, 0x30, 0, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) diff --git a/include/tables/sfx/systembank_table.h b/include/tables/sfx/systembank_table.h index 6b6627c023..9d27d5d498 100644 --- a/include/tables/sfx/systembank_table.h +++ b/include/tables/sfx/systembank_table.h @@ -13,12 +13,12 @@ */ /* 0x4800 */ DEFINE_SFX(NA_SE_SY_WIN_OPEN, 0xC0, 0, 0, 0, 0) /* 0x4801 */ DEFINE_SFX(NA_SE_SY_WIN_CLOSE, 0xC0, 0, 0, 0, 0) -/* 0x4802 */ DEFINE_SFX(NA_SE_SY_CORRECT_CHIME, 0xB0, 0, 0, 0, SFX_FLAG_5) +/* 0x4802 */ DEFINE_SFX(NA_SE_SY_CORRECT_CHIME, 0xB0, 0, 0, 0, SFX_FLAG_BLOCK_EQUAL_IMPORTANCE) /* 0x4803 */ DEFINE_SFX(NA_SE_SY_GET_RUPY, 0x30, 0, 0, 0, 0) /* 0x4804 */ DEFINE_SFX(NA_SE_SY_MESSAGE_WOMAN, 0x30, 0, 0, 0, 0) /* 0x4805 */ DEFINE_SFX(NA_SE_SY_MESSAGE_MAN, 0x30, 0, 0, 0, 0) /* 0x4806 */ DEFINE_SFX(NA_SE_SY_ERROR, 0x50, 0, 0, 0, 0) -/* 0x4807 */ DEFINE_SFX(NA_SE_SY_TRE_BOX_APPEAR, 0x30, 0, 0, 0, SFX_FLAG_5) +/* 0x4807 */ DEFINE_SFX(NA_SE_SY_TRE_BOX_APPEAR, 0x30, 0, 0, 0, SFX_FLAG_BLOCK_EQUAL_IMPORTANCE) /* 0x4808 */ DEFINE_SFX(NA_SE_SY_DECIDE, 0x30, 0, 0, 0, 0) /* 0x4809 */ DEFINE_SFX(NA_SE_SY_CURSOR, 0x30, 0, 0, 0, 0) /* 0x480A */ DEFINE_SFX(NA_SE_SY_CANCEL, 0x30, 0, 0, 0, 0) @@ -95,7 +95,7 @@ /* 0x4851 */ DEFINE_SFX(NA_SE_SY_STALKIDS_PSYCHO, 0x60, 0, 0, 0, 0) /* 0x4852 */ DEFINE_SFX(NA_SE_SY_CHICK_JOIN_CHIME, 0x30, 0, 0, 0, 0) /* 0x4853 */ DEFINE_SFX(NA_SE_SY_HIT_SOUND_L, 0x30, 0, 0, 0, 0) -/* 0x4854 */ DEFINE_SFX(NA_SE_SY_FAIRY_MASK_SUCCESS, 0x30, 0, 0, 0, SFX_FLAG_5) +/* 0x4854 */ DEFINE_SFX(NA_SE_SY_FAIRY_MASK_SUCCESS, 0x30, 0, 0, 0, SFX_FLAG_BLOCK_EQUAL_IMPORTANCE) /* 0x4855 */ DEFINE_SFX(NA_SE_SY_SCHEDULE_WRITE, 0x60, 0, 0, 0, 0) /* 0x4856 */ DEFINE_SFX(NA_SE_SY_STOPWATCH_TIMER_3, 0x30, 0, 0, 0, 0) /* 0x4857 */ DEFINE_SFX(NA_SE_SY_STOPWATCH_TIMER_INF, 0x30, 0, 0, 0, 0) @@ -104,6 +104,6 @@ /* 0x485A */ DEFINE_SFX(NA_SE_SY_QUIZ_CORRECT, 0x30, 0, 0, 0, 0) /* 0x485B */ DEFINE_SFX(NA_SE_SY_QUIZ_INCORRECT, 0x30, 0, 0, 0, 0) /* 0x485C */ DEFINE_SFX(NA_SE_SY_DIZZY_EFFECT, 0x30, 0, 0, 0, 0) -/* 0x485D */ DEFINE_SFX(NA_SE_SY_TIME_CONTROL_SLOW, 0xA0, 0, 0, 0, SFX_FLAG_3) -/* 0x485E */ DEFINE_SFX(NA_SE_SY_TIME_CONTROL_NORMAL, 0xA0, 0, 0, 0, SFX_FLAG_3) +/* 0x485D */ DEFINE_SFX(NA_SE_SY_TIME_CONTROL_SLOW, 0xA0, 0, 0, 0, SFX_FLAG_LOWER_VOLUME_BGM) +/* 0x485E */ DEFINE_SFX(NA_SE_SY_TIME_CONTROL_NORMAL, 0xA0, 0, 0, 0, SFX_FLAG_LOWER_VOLUME_BGM) /* 0x485F */ DEFINE_SFX(NA_SE_SY_SECOM_WARNING, 0x30, 0, 0, 0, 0) diff --git a/include/tables/sfx/voicebank_table.h b/include/tables/sfx/voicebank_table.h index 568a21545a..d2ce5aae3e 100644 --- a/include/tables/sfx/voicebank_table.h +++ b/include/tables/sfx/voicebank_table.h @@ -11,74 +11,74 @@ * * WARNING: entries must align with the table defined for the voice bank in sequence 0 */ -/* 0x6800 */ DEFINE_SFX(NA_SE_VO_LI_SWORD_N, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6801 */ DEFINE_SFX(NA_SE_VO_LI_SWORD_L, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6802 */ DEFINE_SFX(NA_SE_VO_LI_LASH, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6803 */ DEFINE_SFX(NA_SE_VO_LI_HANG, 0x20, 2, 0, 0, SFX_FLAG_10) -/* 0x6804 */ DEFINE_SFX(NA_SE_VO_LI_CLIMB_END, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6805 */ DEFINE_SFX(NA_SE_VO_LI_DAMAGE_S, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6806 */ DEFINE_SFX(NA_SE_VO_LI_FREEZE, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6807 */ DEFINE_SFX(NA_SE_VO_LI_FALL_S, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6808 */ DEFINE_SFX(NA_SE_VO_LI_FALL_L, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6809 */ DEFINE_SFX(NA_SE_VO_LI_BREATH_REST, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x680A */ DEFINE_SFX(NA_SE_VO_LI_BREATH_DRINK, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x680B */ DEFINE_SFX(NA_SE_VO_LI_DOWN, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x680C */ DEFINE_SFX(NA_SE_VO_LI_TAKEN_AWAY, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x680D */ DEFINE_SFX(NA_SE_VO_LI_HELD, 0x50, 2, 0, 0, SFX_FLAG_10) -/* 0x680E */ DEFINE_SFX(NA_SE_VO_LI_SNEEZE, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x680F */ DEFINE_SFX(NA_SE_VO_LI_SWEAT, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6810 */ DEFINE_SFX(NA_SE_VO_LI_DRINK, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6811 */ DEFINE_SFX(NA_SE_VO_LI_RELAX, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6812 */ DEFINE_SFX(NA_SE_VO_LI_SWORD_PUTAWAY, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6813 */ DEFINE_SFX(NA_SE_VO_LI_GROAN, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6814 */ DEFINE_SFX(NA_SE_VO_LI_AUTO_JUMP, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6815 */ DEFINE_SFX(NA_SE_VO_LI_MAGIC_NALE, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6816 */ DEFINE_SFX(NA_SE_VO_LI_SURPRISE, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6817 */ DEFINE_SFX(NA_SE_VO_LI_MAGIC_FROL, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6818 */ DEFINE_SFX(NA_SE_VO_LI_PUSH, 0x30, 2, 2, 0, SFX_FLAG_10) -/* 0x6819 */ DEFINE_SFX(NA_SE_VO_LI_HOOKSHOT_HANG, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x681A */ DEFINE_SFX(NA_SE_VO_LI_LAND_DAMAGE_S, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x681B */ DEFINE_SFX(NA_SE_VO_LI_MAGIC_START, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x681C */ DEFINE_SFX(NA_SE_VO_LI_MAGIC_ATTACK, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x681D */ DEFINE_SFX(NA_SE_VO_BL_DOWN, 0x80, 2, 0, 0, SFX_FLAG_10) -/* 0x681E */ DEFINE_SFX(NA_SE_VO_LI_DEMO_DAMAGE, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x681F */ DEFINE_SFX(NA_SE_VO_LI_SWORD_N_copy30, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6820 */ DEFINE_SFX(NA_SE_VO_DUMMY_32, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6821 */ DEFINE_SFX(NA_SE_VO_DUMMY_33, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6822 */ DEFINE_SFX(NA_SE_VO_DUMMY_34, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6823 */ DEFINE_SFX(NA_SE_VO_DUMMY_35, 0x20, 2, 0, 0, SFX_FLAG_10) -/* 0x6824 */ DEFINE_SFX(NA_SE_VO_DUMMY_36, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6825 */ DEFINE_SFX(NA_SE_VO_DUMMY_37, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6826 */ DEFINE_SFX(NA_SE_VO_DUMMY_38, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6827 */ DEFINE_SFX(NA_SE_VO_DUMMY_39, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6828 */ DEFINE_SFX(NA_SE_VO_NAVY_ENEMY, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6829 */ DEFINE_SFX(NA_SE_VO_NAVY_HELLO, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x682A */ DEFINE_SFX(NA_SE_VO_NAVY_HEAR, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x682B */ DEFINE_SFX(NA_SE_VO_DUMMY_43, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x682C */ DEFINE_SFX(NA_SE_VO_DUMMY_44, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x682D */ DEFINE_SFX(NA_SE_VO_DUMMY_45, 0x50, 2, 0, 0, SFX_FLAG_10) -/* 0x682E */ DEFINE_SFX(NA_SE_VO_DUMMY_46, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x682F */ DEFINE_SFX(NA_SE_VO_DUMMY_47, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6830 */ DEFINE_SFX(NA_SE_VO_DUMMY_48, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6831 */ DEFINE_SFX(NA_SE_VO_DUMMY_49, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6832 */ DEFINE_SFX(NA_SE_VO_DUMMY_50, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6833 */ DEFINE_SFX(NA_SE_VO_DUMMY_51, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6834 */ DEFINE_SFX(NA_SE_VO_DUMMY_52, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6835 */ DEFINE_SFX(NA_SE_VO_DUMMY_53, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6836 */ DEFINE_SFX(NA_SE_VO_DUMMY_54, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6837 */ DEFINE_SFX(NA_SE_VO_DUMMY_55, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6838 */ DEFINE_SFX(NA_SE_VO_DUMMY_56, 0x30, 1, 2, 0, SFX_FLAG_10) -/* 0x6839 */ DEFINE_SFX(NA_SE_VO_DUMMY_57, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x683A */ DEFINE_SFX(NA_SE_VO_DUMMY_58, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x683B */ DEFINE_SFX(NA_SE_VO_DUMMY_59, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x683C */ DEFINE_SFX(NA_SE_VO_DUMMY_60, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x683D */ DEFINE_SFX(NA_SE_VO_DUMMY_61, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x683E */ DEFINE_SFX(NA_SE_VO_DUMMY_62, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x683F */ DEFINE_SFX(NA_SE_VO_DUMMY_63, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6840 */ DEFINE_SFX(NA_SE_VO_LK_WAKE_UP, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6841 */ DEFINE_SFX(NA_SE_VO_LK_CATCH_DEMO, 0x30, 2, 0, 0, SFX_FLAG_10) +/* 0x6800 */ DEFINE_SFX(NA_SE_VO_LI_SWORD_N, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6801 */ DEFINE_SFX(NA_SE_VO_LI_SWORD_L, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6802 */ DEFINE_SFX(NA_SE_VO_LI_LASH, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6803 */ DEFINE_SFX(NA_SE_VO_LI_HANG, 0x20, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6804 */ DEFINE_SFX(NA_SE_VO_LI_CLIMB_END, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6805 */ DEFINE_SFX(NA_SE_VO_LI_DAMAGE_S, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6806 */ DEFINE_SFX(NA_SE_VO_LI_FREEZE, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6807 */ DEFINE_SFX(NA_SE_VO_LI_FALL_S, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6808 */ DEFINE_SFX(NA_SE_VO_LI_FALL_L, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6809 */ DEFINE_SFX(NA_SE_VO_LI_BREATH_REST, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x680A */ DEFINE_SFX(NA_SE_VO_LI_BREATH_DRINK, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x680B */ DEFINE_SFX(NA_SE_VO_LI_DOWN, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x680C */ DEFINE_SFX(NA_SE_VO_LI_TAKEN_AWAY, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x680D */ DEFINE_SFX(NA_SE_VO_LI_HELD, 0x50, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x680E */ DEFINE_SFX(NA_SE_VO_LI_SNEEZE, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x680F */ DEFINE_SFX(NA_SE_VO_LI_SWEAT, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6810 */ DEFINE_SFX(NA_SE_VO_LI_DRINK, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6811 */ DEFINE_SFX(NA_SE_VO_LI_RELAX, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6812 */ DEFINE_SFX(NA_SE_VO_LI_SWORD_PUTAWAY, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6813 */ DEFINE_SFX(NA_SE_VO_LI_GROAN, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6814 */ DEFINE_SFX(NA_SE_VO_LI_AUTO_JUMP, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6815 */ DEFINE_SFX(NA_SE_VO_LI_MAGIC_NALE, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6816 */ DEFINE_SFX(NA_SE_VO_LI_SURPRISE, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6817 */ DEFINE_SFX(NA_SE_VO_LI_MAGIC_FROL, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6818 */ DEFINE_SFX(NA_SE_VO_LI_PUSH, 0x30, 2, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6819 */ DEFINE_SFX(NA_SE_VO_LI_HOOKSHOT_HANG, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x681A */ DEFINE_SFX(NA_SE_VO_LI_LAND_DAMAGE_S, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x681B */ DEFINE_SFX(NA_SE_VO_LI_MAGIC_START, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x681C */ DEFINE_SFX(NA_SE_VO_LI_MAGIC_ATTACK, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x681D */ DEFINE_SFX(NA_SE_VO_BL_DOWN, 0x80, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x681E */ DEFINE_SFX(NA_SE_VO_LI_DEMO_DAMAGE, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x681F */ DEFINE_SFX(NA_SE_VO_LI_SWORD_N_copy30, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6820 */ DEFINE_SFX(NA_SE_VO_DUMMY_32, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6821 */ DEFINE_SFX(NA_SE_VO_DUMMY_33, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6822 */ DEFINE_SFX(NA_SE_VO_DUMMY_34, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6823 */ DEFINE_SFX(NA_SE_VO_DUMMY_35, 0x20, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6824 */ DEFINE_SFX(NA_SE_VO_DUMMY_36, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6825 */ DEFINE_SFX(NA_SE_VO_DUMMY_37, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6826 */ DEFINE_SFX(NA_SE_VO_DUMMY_38, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6827 */ DEFINE_SFX(NA_SE_VO_DUMMY_39, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6828 */ DEFINE_SFX(NA_SE_VO_NAVY_ENEMY, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6829 */ DEFINE_SFX(NA_SE_VO_NAVY_HELLO, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x682A */ DEFINE_SFX(NA_SE_VO_NAVY_HEAR, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x682B */ DEFINE_SFX(NA_SE_VO_DUMMY_43, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x682C */ DEFINE_SFX(NA_SE_VO_DUMMY_44, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x682D */ DEFINE_SFX(NA_SE_VO_DUMMY_45, 0x50, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x682E */ DEFINE_SFX(NA_SE_VO_DUMMY_46, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x682F */ DEFINE_SFX(NA_SE_VO_DUMMY_47, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6830 */ DEFINE_SFX(NA_SE_VO_DUMMY_48, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6831 */ DEFINE_SFX(NA_SE_VO_DUMMY_49, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6832 */ DEFINE_SFX(NA_SE_VO_DUMMY_50, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6833 */ DEFINE_SFX(NA_SE_VO_DUMMY_51, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6834 */ DEFINE_SFX(NA_SE_VO_DUMMY_52, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6835 */ DEFINE_SFX(NA_SE_VO_DUMMY_53, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6836 */ DEFINE_SFX(NA_SE_VO_DUMMY_54, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6837 */ DEFINE_SFX(NA_SE_VO_DUMMY_55, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6838 */ DEFINE_SFX(NA_SE_VO_DUMMY_56, 0x30, 1, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6839 */ DEFINE_SFX(NA_SE_VO_DUMMY_57, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x683A */ DEFINE_SFX(NA_SE_VO_DUMMY_58, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x683B */ DEFINE_SFX(NA_SE_VO_DUMMY_59, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x683C */ DEFINE_SFX(NA_SE_VO_DUMMY_60, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x683D */ DEFINE_SFX(NA_SE_VO_DUMMY_61, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x683E */ DEFINE_SFX(NA_SE_VO_DUMMY_62, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x683F */ DEFINE_SFX(NA_SE_VO_DUMMY_63, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6840 */ DEFINE_SFX(NA_SE_VO_LK_WAKE_UP, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6841 */ DEFINE_SFX(NA_SE_VO_LK_CATCH_DEMO, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) /* 0x6842 */ DEFINE_SFX(NA_SE_VO_LK_DRAGGED_DAMAGE, 0x30, 0, 0, 0, 0) -/* 0x6843 */ DEFINE_SFX(NA_SE_VO_NAVY_CALL, 0x60, 0, 0, 0, SFX_FLAG_5) +/* 0x6843 */ DEFINE_SFX(NA_SE_VO_NAVY_CALL, 0x60, 0, 0, 0, SFX_FLAG_BLOCK_EQUAL_IMPORTANCE) /* 0x6844 */ DEFINE_SFX(NA_SE_VO_NA_HELLO_3, 0x30, 0, 0, 0, 0) /* 0x6845 */ DEFINE_SFX(NA_SE_VO_CHAT_MESSAGE_CALL, 0x30, 0, 0, 0, 0) /* 0x6846 */ DEFINE_SFX(NA_SE_VO_BELL_MESSAGE, 0x30, 0, 0, 0, 0) @@ -93,321 +93,321 @@ /* 0x684F */ DEFINE_SFX(NA_SE_VO_DUMMY_79, 0x30, 0, 0, 0, 0) /* 0x6850 */ DEFINE_SFX(NA_SE_VO_NARRATION_0, 0x30, 0, 0, 0, 0) /* 0x6851 */ DEFINE_SFX(NA_SE_VO_TA_SURPRISE, 0x30, 0, 0, 0, 0) -/* 0x6852 */ DEFINE_SFX(NA_SE_VO_TA_CRY_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6853 */ DEFINE_SFX(NA_SE_VO_TA_CRY_1, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6854 */ DEFINE_SFX(NA_SE_VO_IN_CRY_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6855 */ DEFINE_SFX(NA_SE_VO_IN_LOST, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6856 */ DEFINE_SFX(NA_SE_VO_IN_LASH_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6857 */ DEFINE_SFX(NA_SE_VO_IN_LASH_1, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6858 */ DEFINE_SFX(NA_SE_VO_FR_LAUGH_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6859 */ DEFINE_SFX(NA_SE_VO_FR_SMILE_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x685A */ DEFINE_SFX(NA_SE_VO_NB_AGONY, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x685B */ DEFINE_SFX(NA_SE_VO_NB_CRY_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x685C */ DEFINE_SFX(NA_SE_VO_NB_NOTICE, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x685D */ DEFINE_SFX(NA_SE_VO_NA_HELLO_0, 0x30, 0, 0, 0, SFX_FLAG_15) -/* 0x685E */ DEFINE_SFX(NA_SE_VO_NA_HELLO_1, 0x30, 0, 0, 0, SFX_FLAG_15) -/* 0x685F */ DEFINE_SFX(NA_SE_VO_NA_HELLO_2, 0x30, 0, 0, 0, SFX_FLAG_15) -/* 0x6860 */ DEFINE_SFX(NA_SE_VO_RT_CRASH, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6861 */ DEFINE_SFX(NA_SE_VO_RT_DISCOVER, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6862 */ DEFINE_SFX(NA_SE_VO_RT_FALL, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6863 */ DEFINE_SFX(NA_SE_VO_RT_LAUGH_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6864 */ DEFINE_SFX(NA_SE_VO_RT_LIFT, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6865 */ DEFINE_SFX(NA_SE_VO_RT_THROW, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6866 */ DEFINE_SFX(NA_SE_VO_RT_UNBALLANCE, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6867 */ DEFINE_SFX(NA_SE_VO_ST_DAMAGE, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6868 */ DEFINE_SFX(NA_SE_VO_ST_ATTACK, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6869 */ DEFINE_SFX(NA_SE_VO_Z0_HURRY, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x686A */ DEFINE_SFX(NA_SE_VO_Z0_MEET, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x686B */ DEFINE_SFX(NA_SE_VO_Z0_QUESTION, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x686C */ DEFINE_SFX(NA_SE_VO_Z0_SIGH_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x686D */ DEFINE_SFX(NA_SE_VO_Z0_SMILE_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x686E */ DEFINE_SFX(NA_SE_VO_Z0_SURPRISE, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x686F */ DEFINE_SFX(NA_SE_VO_Z0_THROW, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6870 */ DEFINE_SFX(NA_SE_VO_SK_CRY_0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6871 */ DEFINE_SFX(NA_SE_VO_SK_CRY_1, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6872 */ DEFINE_SFX(NA_SE_VO_SK_CRASH, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6873 */ DEFINE_SFX(NA_SE_VO_NA_LISTEN, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6874 */ DEFINE_SFX(NA_SE_VO_SK_SHOUT, 0x30, 1, 0, 0, SFX_FLAG_15) -/* 0x6875 */ DEFINE_SFX(NA_SE_VO_Z1_CRY_0, 0x30, 3, 1, 0, SFX_FLAG_15) -/* 0x6876 */ DEFINE_SFX(NA_SE_VO_Z1_CRY_1, 0x30, 3, 1, 0, SFX_FLAG_15) -/* 0x6877 */ DEFINE_SFX(NA_SE_VO_Z1_OPENDOOR, 0x30, 3, 1, 0, SFX_FLAG_15) -/* 0x6878 */ DEFINE_SFX(NA_SE_VO_FR_SMILE_1, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6879 */ DEFINE_SFX(NA_SE_VO_FR_SMILE_2, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x687A */ DEFINE_SFX(NA_SE_VO_KZ_MOVE, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x687B */ DEFINE_SFX(NA_SE_VO_NB_LAUGH, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x687C */ DEFINE_SFX(NA_SE_VO_IN_JOY0, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x687D */ DEFINE_SFX(NA_SE_VO_IN_JOY1, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x687E */ DEFINE_SFX(NA_SE_VO_IN_JOY2, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x687F */ DEFINE_SFX(NA_SE_VO_DUMMY_127, 0x30, 1, 1, 0, SFX_FLAG_15) -/* 0x6880 */ DEFINE_SFX(NA_SE_VO_DUMMY_128, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6881 */ DEFINE_SFX(NA_SE_VO_DUMMY_129, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6882 */ DEFINE_SFX(NA_SE_VO_DUMMY_130, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6883 */ DEFINE_SFX(NA_SE_VO_DUMMY_131, 0x20, 2, 0, 0, SFX_FLAG_10) -/* 0x6884 */ DEFINE_SFX(NA_SE_VO_DUMMY_132, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6885 */ DEFINE_SFX(NA_SE_VO_DUMMY_133, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6886 */ DEFINE_SFX(NA_SE_VO_DUMMY_134, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6887 */ DEFINE_SFX(NA_SE_VO_DUMMY_135, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6888 */ DEFINE_SFX(NA_SE_VO_DUMMY_136, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6889 */ DEFINE_SFX(NA_SE_VO_DUMMY_137, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x688A */ DEFINE_SFX(NA_SE_VO_DUMMY_138, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x688B */ DEFINE_SFX(NA_SE_VO_DUMMY_139, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x688C */ DEFINE_SFX(NA_SE_VO_DUMMY_140, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x688D */ DEFINE_SFX(NA_SE_VO_DUMMY_141, 0x50, 2, 0, 0, SFX_FLAG_10) -/* 0x688E */ DEFINE_SFX(NA_SE_VO_DUMMY_142, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x688F */ DEFINE_SFX(NA_SE_VO_DUMMY_143, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6890 */ DEFINE_SFX(NA_SE_VO_DUMMY_144, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6891 */ DEFINE_SFX(NA_SE_VO_DUMMY_145, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6892 */ DEFINE_SFX(NA_SE_VO_DUMMY_146, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6893 */ DEFINE_SFX(NA_SE_VO_DUMMY_147, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6894 */ DEFINE_SFX(NA_SE_VO_DUMMY_148, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6895 */ DEFINE_SFX(NA_SE_VO_DUMMY_149, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6896 */ DEFINE_SFX(NA_SE_VO_DUMMY_150, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6897 */ DEFINE_SFX(NA_SE_VO_DUMMY_151, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6898 */ DEFINE_SFX(NA_SE_VO_DUMMY_152, 0x30, 1, 2, 0, SFX_FLAG_10) -/* 0x6899 */ DEFINE_SFX(NA_SE_VO_DUMMY_153, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x689A */ DEFINE_SFX(NA_SE_VO_DUMMY_154, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x689B */ DEFINE_SFX(NA_SE_VO_DUMMY_155, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x689C */ DEFINE_SFX(NA_SE_VO_DUMMY_156, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x689D */ DEFINE_SFX(NA_SE_VO_DUMMY_157, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x689E */ DEFINE_SFX(NA_SE_VO_DUMMY_158, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x689F */ DEFINE_SFX(NA_SE_VO_DUMMY_159, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A0 */ DEFINE_SFX(NA_SE_VO_DUMMY_160, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A1 */ DEFINE_SFX(NA_SE_VO_DUMMY_161, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A2 */ DEFINE_SFX(NA_SE_VO_DUMMY_162, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A3 */ DEFINE_SFX(NA_SE_VO_DUMMY_163, 0x20, 2, 0, 0, SFX_FLAG_10) -/* 0x68A4 */ DEFINE_SFX(NA_SE_VO_DUMMY_164, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A5 */ DEFINE_SFX(NA_SE_VO_DUMMY_165, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A6 */ DEFINE_SFX(NA_SE_VO_DUMMY_166, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A7 */ DEFINE_SFX(NA_SE_VO_DUMMY_167, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A8 */ DEFINE_SFX(NA_SE_VO_DUMMY_168, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68A9 */ DEFINE_SFX(NA_SE_VO_DUMMY_169, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68AA */ DEFINE_SFX(NA_SE_VO_DUMMY_170, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68AB */ DEFINE_SFX(NA_SE_VO_DUMMY_171, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68AC */ DEFINE_SFX(NA_SE_VO_DUMMY_172, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68AD */ DEFINE_SFX(NA_SE_VO_DUMMY_173, 0x50, 2, 0, 0, SFX_FLAG_10) -/* 0x68AE */ DEFINE_SFX(NA_SE_VO_DUMMY_174, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68AF */ DEFINE_SFX(NA_SE_VO_DUMMY_175, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B0 */ DEFINE_SFX(NA_SE_VO_DUMMY_176, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B1 */ DEFINE_SFX(NA_SE_VO_DUMMY_177, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B2 */ DEFINE_SFX(NA_SE_VO_DUMMY_178, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B3 */ DEFINE_SFX(NA_SE_VO_DUMMY_179, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B4 */ DEFINE_SFX(NA_SE_VO_DUMMY_180, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B5 */ DEFINE_SFX(NA_SE_VO_DUMMY_181, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B6 */ DEFINE_SFX(NA_SE_VO_DUMMY_182, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B7 */ DEFINE_SFX(NA_SE_VO_DUMMY_183, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68B8 */ DEFINE_SFX(NA_SE_VO_DUMMY_184, 0x30, 2, 2, 0, SFX_FLAG_10) -/* 0x68B9 */ DEFINE_SFX(NA_SE_VO_DUMMY_185, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68BA */ DEFINE_SFX(NA_SE_VO_DUMMY_186, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68BB */ DEFINE_SFX(NA_SE_VO_DUMMY_187, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68BC */ DEFINE_SFX(NA_SE_VO_DUMMY_188, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68BD */ DEFINE_SFX(NA_SE_VO_DUMMY_189, 0x80, 2, 0, 0, SFX_FLAG_10) -/* 0x68BE */ DEFINE_SFX(NA_SE_VO_DUMMY_190, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68BF */ DEFINE_SFX(NA_SE_VO_DUMMY_191, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C0 */ DEFINE_SFX(NA_SE_VO_DUMMY_192, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C1 */ DEFINE_SFX(NA_SE_VO_DUMMY_193, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C2 */ DEFINE_SFX(NA_SE_VO_DUMMY_194, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C3 */ DEFINE_SFX(NA_SE_VO_DUMMY_195, 0x20, 2, 0, 0, SFX_FLAG_10) -/* 0x68C4 */ DEFINE_SFX(NA_SE_VO_DUMMY_196, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C5 */ DEFINE_SFX(NA_SE_VO_DUMMY_197, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C6 */ DEFINE_SFX(NA_SE_VO_DUMMY_198, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C7 */ DEFINE_SFX(NA_SE_VO_DUMMY_199, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C8 */ DEFINE_SFX(NA_SE_VO_DUMMY_200, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68C9 */ DEFINE_SFX(NA_SE_VO_DUMMY_201, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68CA */ DEFINE_SFX(NA_SE_VO_DUMMY_202, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68CB */ DEFINE_SFX(NA_SE_VO_DUMMY_203, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68CC */ DEFINE_SFX(NA_SE_VO_DUMMY_204, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68CD */ DEFINE_SFX(NA_SE_VO_DUMMY_205, 0x50, 2, 0, 0, SFX_FLAG_10) -/* 0x68CE */ DEFINE_SFX(NA_SE_VO_DUMMY_206, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68CF */ DEFINE_SFX(NA_SE_VO_DUMMY_207, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D0 */ DEFINE_SFX(NA_SE_VO_DUMMY_208, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D1 */ DEFINE_SFX(NA_SE_VO_DUMMY_209, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D2 */ DEFINE_SFX(NA_SE_VO_DUMMY_210, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D3 */ DEFINE_SFX(NA_SE_VO_DUMMY_211, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D4 */ DEFINE_SFX(NA_SE_VO_DUMMY_212, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D5 */ DEFINE_SFX(NA_SE_VO_DUMMY_213, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D6 */ DEFINE_SFX(NA_SE_VO_DUMMY_214, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D7 */ DEFINE_SFX(NA_SE_VO_DUMMY_215, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68D8 */ DEFINE_SFX(NA_SE_VO_DUMMY_216, 0x30, 2, 2, 0, SFX_FLAG_10) -/* 0x68D9 */ DEFINE_SFX(NA_SE_VO_DUMMY_217, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68DA */ DEFINE_SFX(NA_SE_VO_DUMMY_218, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68DB */ DEFINE_SFX(NA_SE_VO_DUMMY_219, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68DC */ DEFINE_SFX(NA_SE_VO_DUMMY_220, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68DD */ DEFINE_SFX(NA_SE_VO_DUMMY_221, 0x80, 2, 0, 0, SFX_FLAG_10) -/* 0x68DE */ DEFINE_SFX(NA_SE_VO_DUMMY_222, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68DF */ DEFINE_SFX(NA_SE_VO_DUMMY_223, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x68E0 */ DEFINE_SFX(NA_SE_VO_LI_POO_WAIT, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68E1 */ DEFINE_SFX(NA_SE_VO_DUMMY_225, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68E2 */ DEFINE_SFX(NA_SE_VO_DUMMY_226, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68E3 */ DEFINE_SFX(NA_SE_VO_DUMMY_227, 0x20, 2, 1, 0, SFX_FLAG_10) -/* 0x68E4 */ DEFINE_SFX(NA_SE_VO_DUMMY_228, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68E5 */ DEFINE_SFX(NA_SE_VO_DUMMY_229, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68E6 */ DEFINE_SFX(NA_SE_VO_DUMMY_230, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68E7 */ DEFINE_SFX(NA_SE_VO_DUMMY_231, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68E8 */ DEFINE_SFX(NA_SE_VO_DUMMY_232, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68E9 */ DEFINE_SFX(NA_SE_VO_DUMMY_233, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68EA */ DEFINE_SFX(NA_SE_VO_DUMMY_234, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68EB */ DEFINE_SFX(NA_SE_VO_DUMMY_235, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68EC */ DEFINE_SFX(NA_SE_VO_DUMMY_236, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68ED */ DEFINE_SFX(NA_SE_VO_DUMMY_237, 0x50, 2, 1, 0, SFX_FLAG_10) -/* 0x68EE */ DEFINE_SFX(NA_SE_VO_DUMMY_238, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68EF */ DEFINE_SFX(NA_SE_VO_DUMMY_239, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F0 */ DEFINE_SFX(NA_SE_VO_DUMMY_240, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F1 */ DEFINE_SFX(NA_SE_VO_DUMMY_241, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F2 */ DEFINE_SFX(NA_SE_VO_DUMMY_242, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F3 */ DEFINE_SFX(NA_SE_VO_DUMMY_243, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F4 */ DEFINE_SFX(NA_SE_VO_DUMMY_244, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F5 */ DEFINE_SFX(NA_SE_VO_DUMMY_245, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F6 */ DEFINE_SFX(NA_SE_VO_DUMMY_246, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F7 */ DEFINE_SFX(NA_SE_VO_DUMMY_247, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68F8 */ DEFINE_SFX(NA_SE_VO_DUMMY_248, 0x30, 2, 2, 0, SFX_FLAG_10) -/* 0x68F9 */ DEFINE_SFX(NA_SE_VO_DUMMY_249, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68FA */ DEFINE_SFX(NA_SE_VO_DUMMY_250, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68FB */ DEFINE_SFX(NA_SE_VO_DUMMY_251, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68FC */ DEFINE_SFX(NA_SE_VO_DUMMY_252, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68FD */ DEFINE_SFX(NA_SE_VO_DUMMY_253, 0x80, 2, 1, 0, SFX_FLAG_10) -/* 0x68FE */ DEFINE_SFX(NA_SE_VO_DUMMY_254, 0x30, 2, 1, 0, SFX_FLAG_10) -/* 0x68FF */ DEFINE_SFX(NA_SE_VO_DUMMY_255, 0x30, 2, 1, SFX_FLAG2_7, SFX_FLAG_10) -/* 0x6900 */ DEFINE_SFX(NA_SE_VO_JMVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6901 */ DEFINE_SFX(NA_SE_VO_JMVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6902 */ DEFINE_SFX(NA_SE_VO_CDVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6903 */ DEFINE_SFX(NA_SE_VO_CDVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6904 */ DEFINE_SFX(NA_SE_VO_CDVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6905 */ DEFINE_SFX(NA_SE_VO_CDVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6906 */ DEFINE_SFX(NA_SE_VO_BBVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6907 */ DEFINE_SFX(NA_SE_VO_BBVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6908 */ DEFINE_SFX(NA_SE_VO_BBVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6909 */ DEFINE_SFX(NA_SE_VO_BBVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x690A */ DEFINE_SFX(NA_SE_VO_BBVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x690B */ DEFINE_SFX(NA_SE_VO_BBVO05, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x690C */ DEFINE_SFX(NA_SE_VO_OBVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x690D */ DEFINE_SFX(NA_SE_VO_ARVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x690E */ DEFINE_SFX(NA_SE_VO_ARVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x690F */ DEFINE_SFX(NA_SE_VO_MMVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6910 */ DEFINE_SFX(NA_SE_VO_MMVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6911 */ DEFINE_SFX(NA_SE_VO_MMVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6912 */ DEFINE_SFX(NA_SE_VO_MMVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6913 */ DEFINE_SFX(NA_SE_VO_MMVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6914 */ DEFINE_SFX(NA_SE_VO_MMVO05, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6915 */ DEFINE_SFX(NA_SE_VO_ABVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6916 */ DEFINE_SFX(NA_SE_VO_ABVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6917 */ DEFINE_SFX(NA_SE_VO_NPVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6918 */ DEFINE_SFX(NA_SE_VO_FPVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6919 */ DEFINE_SFX(NA_SE_VO_FPVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x691A */ DEFINE_SFX(NA_SE_VO_FPVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x691B */ DEFINE_SFX(NA_SE_VO_FPVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x691C */ DEFINE_SFX(NA_SE_VO_ROVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x691D */ DEFINE_SFX(NA_SE_VO_ROVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x691E */ DEFINE_SFX(NA_SE_VO_RYVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x691F */ DEFINE_SFX(NA_SE_VO_RYVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6920 */ DEFINE_SFX(NA_SE_VO_RYVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6921 */ DEFINE_SFX(NA_SE_VO_RYVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6922 */ DEFINE_SFX(NA_SE_VO_ANVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6923 */ DEFINE_SFX(NA_SE_VO_ANVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6924 */ DEFINE_SFX(NA_SE_VO_ANVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6925 */ DEFINE_SFX(NA_SE_VO_ANVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6926 */ DEFINE_SFX(NA_SE_VO_CRVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6927 */ DEFINE_SFX(NA_SE_VO_CRVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6928 */ DEFINE_SFX(NA_SE_VO_CRVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6929 */ DEFINE_SFX(NA_SE_VO_CRVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x692A */ DEFINE_SFX(NA_SE_VO_HNVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x692B */ DEFINE_SFX(NA_SE_VO_HNVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x692C */ DEFINE_SFX(NA_SE_VO_HNVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x692D */ DEFINE_SFX(NA_SE_VO_RMVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x692E */ DEFINE_SFX(NA_SE_VO_RMVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x692F */ DEFINE_SFX(NA_SE_VO_RMVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6930 */ DEFINE_SFX(NA_SE_VO_PMVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6931 */ DEFINE_SFX(NA_SE_VO_PMVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6932 */ DEFINE_SFX(NA_SE_VO_PMVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6933 */ DEFINE_SFX(NA_SE_VO_DHVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6934 */ DEFINE_SFX(NA_SE_VO_DHVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6935 */ DEFINE_SFX(NA_SE_VO_DHVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6936 */ DEFINE_SFX(NA_SE_VO_DHVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6937 */ DEFINE_SFX(NA_SE_VO_DHVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6938 */ DEFINE_SFX(NA_SE_VO_TFVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6939 */ DEFINE_SFX(NA_SE_VO_ANVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x693A */ DEFINE_SFX(NA_SE_VO_ANVO05, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x693B */ DEFINE_SFX(NA_SE_VO_PMVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x693C */ DEFINE_SFX(NA_SE_VO_CHVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x693D */ DEFINE_SFX(NA_SE_VO_CHVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x693E */ DEFINE_SFX(NA_SE_VO_CHVO05, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x693F */ DEFINE_SFX(NA_SE_VO_CHVO06, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6940 */ DEFINE_SFX(NA_SE_VO_CHVO07, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6941 */ DEFINE_SFX(NA_SE_VO_CHVO08, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6942 */ DEFINE_SFX(NA_SE_VO_CHVO09, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6943 */ DEFINE_SFX(NA_SE_VO_DPVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6944 */ DEFINE_SFX(NA_SE_VO_DPVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6945 */ DEFINE_SFX(NA_SE_VO_DPVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6946 */ DEFINE_SFX(NA_SE_VO_SKVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6947 */ DEFINE_SFX(NA_SE_VO_SKVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6948 */ DEFINE_SFX(NA_SE_VO_KHVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6949 */ DEFINE_SFX(NA_SE_VO_KHVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x694A */ DEFINE_SFX(NA_SE_VO_KHVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x694B */ DEFINE_SFX(NA_SE_VO_SHVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x694C */ DEFINE_SFX(NA_SE_VO_SHVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x694D */ DEFINE_SFX(NA_SE_VO_KAVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x694E */ DEFINE_SFX(NA_SE_VO_KAVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x694F */ DEFINE_SFX(NA_SE_VO_MTVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6950 */ DEFINE_SFX(NA_SE_VO_TTVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6951 */ DEFINE_SFX(NA_SE_VO_ITVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6952 */ DEFINE_SFX(NA_SE_VO_ITVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6953 */ DEFINE_SFX(NA_SE_VO_ITVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6954 */ DEFINE_SFX(NA_SE_VO_KMVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6955 */ DEFINE_SFX(NA_SE_VO_KMVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6956 */ DEFINE_SFX(NA_SE_VO_JOVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6957 */ DEFINE_SFX(NA_SE_VO_JYVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6958 */ DEFINE_SFX(NA_SE_VO_DTVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6959 */ DEFINE_SFX(NA_SE_VO_GUVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x695A */ DEFINE_SFX(NA_SE_VO_KTVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x695B */ DEFINE_SFX(NA_SE_VO_KTVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x695C */ DEFINE_SFX(NA_SE_VO_KTVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x695D */ DEFINE_SFX(NA_SE_VO_ZBVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x695E */ DEFINE_SFX(NA_SE_VO_ZBVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x695F */ DEFINE_SFX(NA_SE_VO_DAVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6960 */ DEFINE_SFX(NA_SE_VO_SHVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6961 */ DEFINE_SFX(NA_SE_VO_GBVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6962 */ DEFINE_SFX(NA_SE_VO_GBVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6963 */ DEFINE_SFX(NA_SE_VO_PFVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6964 */ DEFINE_SFX(NA_SE_VO_PFVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6965 */ DEFINE_SFX(NA_SE_VO_GAVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6966 */ DEFINE_SFX(NA_SE_VO_GAVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6967 */ DEFINE_SFX(NA_SE_VO_DJVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6968 */ DEFINE_SFX(NA_SE_VO_DJVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6969 */ DEFINE_SFX(NA_SE_VO_MSVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x696A */ DEFINE_SFX(NA_SE_VO_MSVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x696B */ DEFINE_SFX(NA_SE_VO_JPVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x696C */ DEFINE_SFX(NA_SE_VO_HYVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x696D */ DEFINE_SFX(NA_SE_VO_HYVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x696E */ DEFINE_SFX(NA_SE_VO_BAVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x696F */ DEFINE_SFX(NA_SE_VO_POVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6970 */ DEFINE_SFX(NA_SE_VO_DAVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6971 */ DEFINE_SFX(NA_SE_VO_DAVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6972 */ DEFINE_SFX(NA_SE_VO_MKVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6973 */ DEFINE_SFX(NA_SE_VO_MKVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6974 */ DEFINE_SFX(NA_SE_VO_MKVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6975 */ DEFINE_SFX(NA_SE_VO_MKVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6976 */ DEFINE_SFX(NA_SE_VO_MKVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6977 */ DEFINE_SFX(NA_SE_VO_TIVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6978 */ DEFINE_SFX(NA_SE_VO_TIVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6979 */ DEFINE_SFX(NA_SE_VO_TIVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x697A */ DEFINE_SFX(NA_SE_VO_TIVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x697B */ DEFINE_SFX(NA_SE_VO_TIVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x697C */ DEFINE_SFX(NA_SE_VO_TIVO05, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x697D */ DEFINE_SFX(NA_SE_VO_OMVO00, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x697E */ DEFINE_SFX(NA_SE_VO_OMVO01, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x697F */ DEFINE_SFX(NA_SE_VO_OMVO02, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6980 */ DEFINE_SFX(NA_SE_VO_OMVO03, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6981 */ DEFINE_SFX(NA_SE_VO_OMVO04, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6982 */ DEFINE_SFX(NA_SE_VO_OMVO05, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6983 */ DEFINE_SFX(NA_SE_VO_OMVO06, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6984 */ DEFINE_SFX(NA_SE_VO_DEMO_FALL2, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6985 */ DEFINE_SFX(NA_SE_VO_DEMO_384, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6986 */ DEFINE_SFX(NA_SE_VO_DEMO_385, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6987 */ DEFINE_SFX(NA_SE_VO_DEMO_386, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6988 */ DEFINE_SFX(NA_SE_VO_DEMO_387, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x6989 */ DEFINE_SFX(NA_SE_VO_DEMO_388, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x698A */ DEFINE_SFX(NA_SE_VO_DEMO_389, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x698B */ DEFINE_SFX(NA_SE_VO_DEMO_390, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x698C */ DEFINE_SFX(NA_SE_VO_DEMO_391, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x698D */ DEFINE_SFX(NA_SE_VO_DEMO_392, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x698E */ DEFINE_SFX(NA_SE_VO_DEMO_393, 0x30, 2, 0, 0, SFX_FLAG_10) -/* 0x698E */ DEFINE_SFX(NA_SE_VO_DEMO_394, 0x30, 2, 0, 0, SFX_FLAG_10) +/* 0x6852 */ DEFINE_SFX(NA_SE_VO_TA_CRY_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6853 */ DEFINE_SFX(NA_SE_VO_TA_CRY_1, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6854 */ DEFINE_SFX(NA_SE_VO_IN_CRY_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6855 */ DEFINE_SFX(NA_SE_VO_IN_LOST, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6856 */ DEFINE_SFX(NA_SE_VO_IN_LASH_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6857 */ DEFINE_SFX(NA_SE_VO_IN_LASH_1, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6858 */ DEFINE_SFX(NA_SE_VO_FR_LAUGH_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6859 */ DEFINE_SFX(NA_SE_VO_FR_SMILE_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x685A */ DEFINE_SFX(NA_SE_VO_NB_AGONY, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x685B */ DEFINE_SFX(NA_SE_VO_NB_CRY_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x685C */ DEFINE_SFX(NA_SE_VO_NB_NOTICE, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x685D */ DEFINE_SFX(NA_SE_VO_NA_HELLO_0, 0x30, 0, 0, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x685E */ DEFINE_SFX(NA_SE_VO_NA_HELLO_1, 0x30, 0, 0, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x685F */ DEFINE_SFX(NA_SE_VO_NA_HELLO_2, 0x30, 0, 0, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6860 */ DEFINE_SFX(NA_SE_VO_RT_CRASH, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6861 */ DEFINE_SFX(NA_SE_VO_RT_DISCOVER, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6862 */ DEFINE_SFX(NA_SE_VO_RT_FALL, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6863 */ DEFINE_SFX(NA_SE_VO_RT_LAUGH_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6864 */ DEFINE_SFX(NA_SE_VO_RT_LIFT, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6865 */ DEFINE_SFX(NA_SE_VO_RT_THROW, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6866 */ DEFINE_SFX(NA_SE_VO_RT_UNBALLANCE, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6867 */ DEFINE_SFX(NA_SE_VO_ST_DAMAGE, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6868 */ DEFINE_SFX(NA_SE_VO_ST_ATTACK, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6869 */ DEFINE_SFX(NA_SE_VO_Z0_HURRY, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x686A */ DEFINE_SFX(NA_SE_VO_Z0_MEET, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x686B */ DEFINE_SFX(NA_SE_VO_Z0_QUESTION, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x686C */ DEFINE_SFX(NA_SE_VO_Z0_SIGH_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x686D */ DEFINE_SFX(NA_SE_VO_Z0_SMILE_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x686E */ DEFINE_SFX(NA_SE_VO_Z0_SURPRISE, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x686F */ DEFINE_SFX(NA_SE_VO_Z0_THROW, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6870 */ DEFINE_SFX(NA_SE_VO_SK_CRY_0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6871 */ DEFINE_SFX(NA_SE_VO_SK_CRY_1, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6872 */ DEFINE_SFX(NA_SE_VO_SK_CRASH, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6873 */ DEFINE_SFX(NA_SE_VO_NA_LISTEN, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6874 */ DEFINE_SFX(NA_SE_VO_SK_SHOUT, 0x30, 1, 0, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6875 */ DEFINE_SFX(NA_SE_VO_Z1_CRY_0, 0x30, 3, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6876 */ DEFINE_SFX(NA_SE_VO_Z1_CRY_1, 0x30, 3, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6877 */ DEFINE_SFX(NA_SE_VO_Z1_OPENDOOR, 0x30, 3, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6878 */ DEFINE_SFX(NA_SE_VO_FR_SMILE_1, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6879 */ DEFINE_SFX(NA_SE_VO_FR_SMILE_2, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x687A */ DEFINE_SFX(NA_SE_VO_KZ_MOVE, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x687B */ DEFINE_SFX(NA_SE_VO_NB_LAUGH, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x687C */ DEFINE_SFX(NA_SE_VO_IN_JOY0, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x687D */ DEFINE_SFX(NA_SE_VO_IN_JOY1, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x687E */ DEFINE_SFX(NA_SE_VO_IN_JOY2, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x687F */ DEFINE_SFX(NA_SE_VO_DUMMY_127, 0x30, 1, 1, 0, SFX_FLAG_FREQ_NO_DIST) +/* 0x6880 */ DEFINE_SFX(NA_SE_VO_DUMMY_128, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6881 */ DEFINE_SFX(NA_SE_VO_DUMMY_129, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6882 */ DEFINE_SFX(NA_SE_VO_DUMMY_130, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6883 */ DEFINE_SFX(NA_SE_VO_DUMMY_131, 0x20, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6884 */ DEFINE_SFX(NA_SE_VO_DUMMY_132, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6885 */ DEFINE_SFX(NA_SE_VO_DUMMY_133, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6886 */ DEFINE_SFX(NA_SE_VO_DUMMY_134, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6887 */ DEFINE_SFX(NA_SE_VO_DUMMY_135, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6888 */ DEFINE_SFX(NA_SE_VO_DUMMY_136, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6889 */ DEFINE_SFX(NA_SE_VO_DUMMY_137, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x688A */ DEFINE_SFX(NA_SE_VO_DUMMY_138, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x688B */ DEFINE_SFX(NA_SE_VO_DUMMY_139, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x688C */ DEFINE_SFX(NA_SE_VO_DUMMY_140, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x688D */ DEFINE_SFX(NA_SE_VO_DUMMY_141, 0x50, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x688E */ DEFINE_SFX(NA_SE_VO_DUMMY_142, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x688F */ DEFINE_SFX(NA_SE_VO_DUMMY_143, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6890 */ DEFINE_SFX(NA_SE_VO_DUMMY_144, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6891 */ DEFINE_SFX(NA_SE_VO_DUMMY_145, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6892 */ DEFINE_SFX(NA_SE_VO_DUMMY_146, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6893 */ DEFINE_SFX(NA_SE_VO_DUMMY_147, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6894 */ DEFINE_SFX(NA_SE_VO_DUMMY_148, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6895 */ DEFINE_SFX(NA_SE_VO_DUMMY_149, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6896 */ DEFINE_SFX(NA_SE_VO_DUMMY_150, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6897 */ DEFINE_SFX(NA_SE_VO_DUMMY_151, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6898 */ DEFINE_SFX(NA_SE_VO_DUMMY_152, 0x30, 1, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6899 */ DEFINE_SFX(NA_SE_VO_DUMMY_153, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x689A */ DEFINE_SFX(NA_SE_VO_DUMMY_154, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x689B */ DEFINE_SFX(NA_SE_VO_DUMMY_155, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x689C */ DEFINE_SFX(NA_SE_VO_DUMMY_156, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x689D */ DEFINE_SFX(NA_SE_VO_DUMMY_157, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x689E */ DEFINE_SFX(NA_SE_VO_DUMMY_158, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x689F */ DEFINE_SFX(NA_SE_VO_DUMMY_159, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A0 */ DEFINE_SFX(NA_SE_VO_DUMMY_160, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A1 */ DEFINE_SFX(NA_SE_VO_DUMMY_161, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A2 */ DEFINE_SFX(NA_SE_VO_DUMMY_162, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A3 */ DEFINE_SFX(NA_SE_VO_DUMMY_163, 0x20, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A4 */ DEFINE_SFX(NA_SE_VO_DUMMY_164, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A5 */ DEFINE_SFX(NA_SE_VO_DUMMY_165, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A6 */ DEFINE_SFX(NA_SE_VO_DUMMY_166, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A7 */ DEFINE_SFX(NA_SE_VO_DUMMY_167, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A8 */ DEFINE_SFX(NA_SE_VO_DUMMY_168, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68A9 */ DEFINE_SFX(NA_SE_VO_DUMMY_169, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68AA */ DEFINE_SFX(NA_SE_VO_DUMMY_170, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68AB */ DEFINE_SFX(NA_SE_VO_DUMMY_171, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68AC */ DEFINE_SFX(NA_SE_VO_DUMMY_172, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68AD */ DEFINE_SFX(NA_SE_VO_DUMMY_173, 0x50, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68AE */ DEFINE_SFX(NA_SE_VO_DUMMY_174, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68AF */ DEFINE_SFX(NA_SE_VO_DUMMY_175, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B0 */ DEFINE_SFX(NA_SE_VO_DUMMY_176, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B1 */ DEFINE_SFX(NA_SE_VO_DUMMY_177, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B2 */ DEFINE_SFX(NA_SE_VO_DUMMY_178, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B3 */ DEFINE_SFX(NA_SE_VO_DUMMY_179, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B4 */ DEFINE_SFX(NA_SE_VO_DUMMY_180, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B5 */ DEFINE_SFX(NA_SE_VO_DUMMY_181, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B6 */ DEFINE_SFX(NA_SE_VO_DUMMY_182, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B7 */ DEFINE_SFX(NA_SE_VO_DUMMY_183, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B8 */ DEFINE_SFX(NA_SE_VO_DUMMY_184, 0x30, 2, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68B9 */ DEFINE_SFX(NA_SE_VO_DUMMY_185, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68BA */ DEFINE_SFX(NA_SE_VO_DUMMY_186, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68BB */ DEFINE_SFX(NA_SE_VO_DUMMY_187, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68BC */ DEFINE_SFX(NA_SE_VO_DUMMY_188, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68BD */ DEFINE_SFX(NA_SE_VO_DUMMY_189, 0x80, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68BE */ DEFINE_SFX(NA_SE_VO_DUMMY_190, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68BF */ DEFINE_SFX(NA_SE_VO_DUMMY_191, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C0 */ DEFINE_SFX(NA_SE_VO_DUMMY_192, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C1 */ DEFINE_SFX(NA_SE_VO_DUMMY_193, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C2 */ DEFINE_SFX(NA_SE_VO_DUMMY_194, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C3 */ DEFINE_SFX(NA_SE_VO_DUMMY_195, 0x20, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C4 */ DEFINE_SFX(NA_SE_VO_DUMMY_196, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C5 */ DEFINE_SFX(NA_SE_VO_DUMMY_197, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C6 */ DEFINE_SFX(NA_SE_VO_DUMMY_198, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C7 */ DEFINE_SFX(NA_SE_VO_DUMMY_199, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C8 */ DEFINE_SFX(NA_SE_VO_DUMMY_200, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68C9 */ DEFINE_SFX(NA_SE_VO_DUMMY_201, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68CA */ DEFINE_SFX(NA_SE_VO_DUMMY_202, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68CB */ DEFINE_SFX(NA_SE_VO_DUMMY_203, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68CC */ DEFINE_SFX(NA_SE_VO_DUMMY_204, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68CD */ DEFINE_SFX(NA_SE_VO_DUMMY_205, 0x50, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68CE */ DEFINE_SFX(NA_SE_VO_DUMMY_206, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68CF */ DEFINE_SFX(NA_SE_VO_DUMMY_207, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D0 */ DEFINE_SFX(NA_SE_VO_DUMMY_208, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D1 */ DEFINE_SFX(NA_SE_VO_DUMMY_209, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D2 */ DEFINE_SFX(NA_SE_VO_DUMMY_210, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D3 */ DEFINE_SFX(NA_SE_VO_DUMMY_211, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D4 */ DEFINE_SFX(NA_SE_VO_DUMMY_212, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D5 */ DEFINE_SFX(NA_SE_VO_DUMMY_213, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D6 */ DEFINE_SFX(NA_SE_VO_DUMMY_214, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D7 */ DEFINE_SFX(NA_SE_VO_DUMMY_215, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D8 */ DEFINE_SFX(NA_SE_VO_DUMMY_216, 0x30, 2, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68D9 */ DEFINE_SFX(NA_SE_VO_DUMMY_217, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68DA */ DEFINE_SFX(NA_SE_VO_DUMMY_218, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68DB */ DEFINE_SFX(NA_SE_VO_DUMMY_219, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68DC */ DEFINE_SFX(NA_SE_VO_DUMMY_220, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68DD */ DEFINE_SFX(NA_SE_VO_DUMMY_221, 0x80, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68DE */ DEFINE_SFX(NA_SE_VO_DUMMY_222, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68DF */ DEFINE_SFX(NA_SE_VO_DUMMY_223, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E0 */ DEFINE_SFX(NA_SE_VO_LI_POO_WAIT, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E1 */ DEFINE_SFX(NA_SE_VO_DUMMY_225, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E2 */ DEFINE_SFX(NA_SE_VO_DUMMY_226, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E3 */ DEFINE_SFX(NA_SE_VO_DUMMY_227, 0x20, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E4 */ DEFINE_SFX(NA_SE_VO_DUMMY_228, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E5 */ DEFINE_SFX(NA_SE_VO_DUMMY_229, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E6 */ DEFINE_SFX(NA_SE_VO_DUMMY_230, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E7 */ DEFINE_SFX(NA_SE_VO_DUMMY_231, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E8 */ DEFINE_SFX(NA_SE_VO_DUMMY_232, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68E9 */ DEFINE_SFX(NA_SE_VO_DUMMY_233, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68EA */ DEFINE_SFX(NA_SE_VO_DUMMY_234, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68EB */ DEFINE_SFX(NA_SE_VO_DUMMY_235, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68EC */ DEFINE_SFX(NA_SE_VO_DUMMY_236, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68ED */ DEFINE_SFX(NA_SE_VO_DUMMY_237, 0x50, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68EE */ DEFINE_SFX(NA_SE_VO_DUMMY_238, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68EF */ DEFINE_SFX(NA_SE_VO_DUMMY_239, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F0 */ DEFINE_SFX(NA_SE_VO_DUMMY_240, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F1 */ DEFINE_SFX(NA_SE_VO_DUMMY_241, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F2 */ DEFINE_SFX(NA_SE_VO_DUMMY_242, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F3 */ DEFINE_SFX(NA_SE_VO_DUMMY_243, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F4 */ DEFINE_SFX(NA_SE_VO_DUMMY_244, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F5 */ DEFINE_SFX(NA_SE_VO_DUMMY_245, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F6 */ DEFINE_SFX(NA_SE_VO_DUMMY_246, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F7 */ DEFINE_SFX(NA_SE_VO_DUMMY_247, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F8 */ DEFINE_SFX(NA_SE_VO_DUMMY_248, 0x30, 2, 2, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68F9 */ DEFINE_SFX(NA_SE_VO_DUMMY_249, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68FA */ DEFINE_SFX(NA_SE_VO_DUMMY_250, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68FB */ DEFINE_SFX(NA_SE_VO_DUMMY_251, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68FC */ DEFINE_SFX(NA_SE_VO_DUMMY_252, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68FD */ DEFINE_SFX(NA_SE_VO_DUMMY_253, 0x80, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68FE */ DEFINE_SFX(NA_SE_VO_DUMMY_254, 0x30, 2, 1, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x68FF */ DEFINE_SFX(NA_SE_VO_DUMMY_255, 0x30, 2, 1, SFX_FLAG2_APPLY_LOWPASS_FILTER, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6900 */ DEFINE_SFX(NA_SE_VO_JMVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6901 */ DEFINE_SFX(NA_SE_VO_JMVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6902 */ DEFINE_SFX(NA_SE_VO_CDVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6903 */ DEFINE_SFX(NA_SE_VO_CDVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6904 */ DEFINE_SFX(NA_SE_VO_CDVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6905 */ DEFINE_SFX(NA_SE_VO_CDVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6906 */ DEFINE_SFX(NA_SE_VO_BBVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6907 */ DEFINE_SFX(NA_SE_VO_BBVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6908 */ DEFINE_SFX(NA_SE_VO_BBVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6909 */ DEFINE_SFX(NA_SE_VO_BBVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x690A */ DEFINE_SFX(NA_SE_VO_BBVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x690B */ DEFINE_SFX(NA_SE_VO_BBVO05, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x690C */ DEFINE_SFX(NA_SE_VO_OBVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x690D */ DEFINE_SFX(NA_SE_VO_ARVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x690E */ DEFINE_SFX(NA_SE_VO_ARVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x690F */ DEFINE_SFX(NA_SE_VO_MMVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6910 */ DEFINE_SFX(NA_SE_VO_MMVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6911 */ DEFINE_SFX(NA_SE_VO_MMVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6912 */ DEFINE_SFX(NA_SE_VO_MMVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6913 */ DEFINE_SFX(NA_SE_VO_MMVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6914 */ DEFINE_SFX(NA_SE_VO_MMVO05, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6915 */ DEFINE_SFX(NA_SE_VO_ABVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6916 */ DEFINE_SFX(NA_SE_VO_ABVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6917 */ DEFINE_SFX(NA_SE_VO_NPVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6918 */ DEFINE_SFX(NA_SE_VO_FPVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6919 */ DEFINE_SFX(NA_SE_VO_FPVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x691A */ DEFINE_SFX(NA_SE_VO_FPVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x691B */ DEFINE_SFX(NA_SE_VO_FPVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x691C */ DEFINE_SFX(NA_SE_VO_ROVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x691D */ DEFINE_SFX(NA_SE_VO_ROVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x691E */ DEFINE_SFX(NA_SE_VO_RYVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x691F */ DEFINE_SFX(NA_SE_VO_RYVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6920 */ DEFINE_SFX(NA_SE_VO_RYVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6921 */ DEFINE_SFX(NA_SE_VO_RYVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6922 */ DEFINE_SFX(NA_SE_VO_ANVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6923 */ DEFINE_SFX(NA_SE_VO_ANVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6924 */ DEFINE_SFX(NA_SE_VO_ANVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6925 */ DEFINE_SFX(NA_SE_VO_ANVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6926 */ DEFINE_SFX(NA_SE_VO_CRVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6927 */ DEFINE_SFX(NA_SE_VO_CRVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6928 */ DEFINE_SFX(NA_SE_VO_CRVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6929 */ DEFINE_SFX(NA_SE_VO_CRVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x692A */ DEFINE_SFX(NA_SE_VO_HNVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x692B */ DEFINE_SFX(NA_SE_VO_HNVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x692C */ DEFINE_SFX(NA_SE_VO_HNVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x692D */ DEFINE_SFX(NA_SE_VO_RMVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x692E */ DEFINE_SFX(NA_SE_VO_RMVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x692F */ DEFINE_SFX(NA_SE_VO_RMVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6930 */ DEFINE_SFX(NA_SE_VO_PMVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6931 */ DEFINE_SFX(NA_SE_VO_PMVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6932 */ DEFINE_SFX(NA_SE_VO_PMVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6933 */ DEFINE_SFX(NA_SE_VO_DHVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6934 */ DEFINE_SFX(NA_SE_VO_DHVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6935 */ DEFINE_SFX(NA_SE_VO_DHVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6936 */ DEFINE_SFX(NA_SE_VO_DHVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6937 */ DEFINE_SFX(NA_SE_VO_DHVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6938 */ DEFINE_SFX(NA_SE_VO_TFVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6939 */ DEFINE_SFX(NA_SE_VO_ANVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x693A */ DEFINE_SFX(NA_SE_VO_ANVO05, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x693B */ DEFINE_SFX(NA_SE_VO_PMVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x693C */ DEFINE_SFX(NA_SE_VO_CHVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x693D */ DEFINE_SFX(NA_SE_VO_CHVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x693E */ DEFINE_SFX(NA_SE_VO_CHVO05, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x693F */ DEFINE_SFX(NA_SE_VO_CHVO06, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6940 */ DEFINE_SFX(NA_SE_VO_CHVO07, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6941 */ DEFINE_SFX(NA_SE_VO_CHVO08, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6942 */ DEFINE_SFX(NA_SE_VO_CHVO09, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6943 */ DEFINE_SFX(NA_SE_VO_DPVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6944 */ DEFINE_SFX(NA_SE_VO_DPVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6945 */ DEFINE_SFX(NA_SE_VO_DPVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6946 */ DEFINE_SFX(NA_SE_VO_SKVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6947 */ DEFINE_SFX(NA_SE_VO_SKVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6948 */ DEFINE_SFX(NA_SE_VO_KHVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6949 */ DEFINE_SFX(NA_SE_VO_KHVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x694A */ DEFINE_SFX(NA_SE_VO_KHVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x694B */ DEFINE_SFX(NA_SE_VO_SHVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x694C */ DEFINE_SFX(NA_SE_VO_SHVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x694D */ DEFINE_SFX(NA_SE_VO_KAVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x694E */ DEFINE_SFX(NA_SE_VO_KAVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x694F */ DEFINE_SFX(NA_SE_VO_MTVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6950 */ DEFINE_SFX(NA_SE_VO_TTVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6951 */ DEFINE_SFX(NA_SE_VO_ITVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6952 */ DEFINE_SFX(NA_SE_VO_ITVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6953 */ DEFINE_SFX(NA_SE_VO_ITVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6954 */ DEFINE_SFX(NA_SE_VO_KMVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6955 */ DEFINE_SFX(NA_SE_VO_KMVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6956 */ DEFINE_SFX(NA_SE_VO_JOVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6957 */ DEFINE_SFX(NA_SE_VO_JYVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6958 */ DEFINE_SFX(NA_SE_VO_DTVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6959 */ DEFINE_SFX(NA_SE_VO_GUVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x695A */ DEFINE_SFX(NA_SE_VO_KTVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x695B */ DEFINE_SFX(NA_SE_VO_KTVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x695C */ DEFINE_SFX(NA_SE_VO_KTVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x695D */ DEFINE_SFX(NA_SE_VO_ZBVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x695E */ DEFINE_SFX(NA_SE_VO_ZBVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x695F */ DEFINE_SFX(NA_SE_VO_DAVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6960 */ DEFINE_SFX(NA_SE_VO_SHVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6961 */ DEFINE_SFX(NA_SE_VO_GBVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6962 */ DEFINE_SFX(NA_SE_VO_GBVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6963 */ DEFINE_SFX(NA_SE_VO_PFVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6964 */ DEFINE_SFX(NA_SE_VO_PFVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6965 */ DEFINE_SFX(NA_SE_VO_GAVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6966 */ DEFINE_SFX(NA_SE_VO_GAVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6967 */ DEFINE_SFX(NA_SE_VO_DJVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6968 */ DEFINE_SFX(NA_SE_VO_DJVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6969 */ DEFINE_SFX(NA_SE_VO_MSVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x696A */ DEFINE_SFX(NA_SE_VO_MSVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x696B */ DEFINE_SFX(NA_SE_VO_JPVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x696C */ DEFINE_SFX(NA_SE_VO_HYVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x696D */ DEFINE_SFX(NA_SE_VO_HYVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x696E */ DEFINE_SFX(NA_SE_VO_BAVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x696F */ DEFINE_SFX(NA_SE_VO_POVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6970 */ DEFINE_SFX(NA_SE_VO_DAVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6971 */ DEFINE_SFX(NA_SE_VO_DAVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6972 */ DEFINE_SFX(NA_SE_VO_MKVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6973 */ DEFINE_SFX(NA_SE_VO_MKVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6974 */ DEFINE_SFX(NA_SE_VO_MKVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6975 */ DEFINE_SFX(NA_SE_VO_MKVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6976 */ DEFINE_SFX(NA_SE_VO_MKVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6977 */ DEFINE_SFX(NA_SE_VO_TIVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6978 */ DEFINE_SFX(NA_SE_VO_TIVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6979 */ DEFINE_SFX(NA_SE_VO_TIVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x697A */ DEFINE_SFX(NA_SE_VO_TIVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x697B */ DEFINE_SFX(NA_SE_VO_TIVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x697C */ DEFINE_SFX(NA_SE_VO_TIVO05, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x697D */ DEFINE_SFX(NA_SE_VO_OMVO00, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x697E */ DEFINE_SFX(NA_SE_VO_OMVO01, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x697F */ DEFINE_SFX(NA_SE_VO_OMVO02, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6980 */ DEFINE_SFX(NA_SE_VO_OMVO03, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6981 */ DEFINE_SFX(NA_SE_VO_OMVO04, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6982 */ DEFINE_SFX(NA_SE_VO_OMVO05, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6983 */ DEFINE_SFX(NA_SE_VO_OMVO06, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6984 */ DEFINE_SFX(NA_SE_VO_DEMO_FALL2, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6985 */ DEFINE_SFX(NA_SE_VO_DEMO_384, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6986 */ DEFINE_SFX(NA_SE_VO_DEMO_385, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6987 */ DEFINE_SFX(NA_SE_VO_DEMO_386, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6988 */ DEFINE_SFX(NA_SE_VO_DEMO_387, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x6989 */ DEFINE_SFX(NA_SE_VO_DEMO_388, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x698A */ DEFINE_SFX(NA_SE_VO_DEMO_389, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x698B */ DEFINE_SFX(NA_SE_VO_DEMO_390, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x698C */ DEFINE_SFX(NA_SE_VO_DEMO_391, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x698D */ DEFINE_SFX(NA_SE_VO_DEMO_392, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x698E */ DEFINE_SFX(NA_SE_VO_DEMO_393, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) +/* 0x698E */ DEFINE_SFX(NA_SE_VO_DEMO_394, 0x30, 2, 0, 0, SFX_FLAG_BEHIND_SCREEN_Z_INDEX) diff --git a/include/variables.h b/include/variables.h index a2731ff127..e39b4adfb4 100644 --- a/include/variables.h +++ b/include/variables.h @@ -1585,10 +1585,10 @@ extern UNK_PTR D_801D6000; // extern UNK_TYPE4 D_801D6190; // extern UNK_TYPE4 D_801D6194; // extern UNK_TYPE1 D_801D6200; -// extern UNK_TYPE1 D_801D6600; -// extern UNK_TYPE1 D_801D6608; -// extern UNK_TYPE1 D_801D6610; -// extern UNK_TYPE1 D_801D662C; +extern u8 gIsLargeSfxBank[7]; +extern u8 D_801D6608[7]; +extern u8 gChannelsPerBank[4][7]; +extern u8 gUsedChannelsPerBank[4][7]; // extern UNK_TYPE1 D_801D6648; // extern UNK_TYPE1 D_801D664C; // extern UNK_TYPE1 D_801D6650; @@ -1710,22 +1710,11 @@ extern UNK_PTR D_801D8B24; // extern UNK_TYPE1 D_801D8E48; // extern UNK_TYPE1 D_801D8E50; // extern UNK_TYPE1 D_801D8F70; -// extern SfxParams sEnemyBankParams[]; -// extern SfxParams sPlayerBankParams[]; -// extern SfxParams sItemBankParams[]; -// extern SfxParams sEnvBankParams[]; -// extern SfxParams sSystemBankParams[]; -// extern SfxParams sOcarinaBankParams[]; -// extern SfxParams sVoiceBankParams[]; extern SfxParams* gSfxParams[7]; -// extern UNK_TYPE1 D_801DB470; -// extern UNK_TYPE1 D_801DB474; -extern UNK_PTR D_801DB478[7]; -// extern UNK_TYPE1 D_801DB494; -// extern UNK_TYPE1 D_801DB49C; -// extern UNK_TYPE2 D_801DB4A0; +extern SfxBankEntry* gSfxBanks[7]; +extern u8 gSfxChannelLayout; extern Vec3f gSfxDefaultPos; -extern f32 D_801DB4B0; +extern f32 gSfxDefaultFreqAndVolScale; extern s8 gSfxDefaultReverb; // extern UNK_TYPE1 D_801DB4C0; // extern UNK_TYPE1 D_801DB4C4; @@ -3465,21 +3454,21 @@ extern s32 D_801FD120; // extern UNK_TYPE1 D_801FD5E8; // extern UNK_TYPE1 D_801FD608; // extern UNK_TYPE1 D_801FD610; -// extern UNK_TYPE1 D_801FD710; -// extern UNK_TYPE1 D_801FD8C0; -// extern UNK_TYPE1 D_801FDB00; -// extern UNK_TYPE1 D_801FE100; -// extern UNK_TYPE1 D_801FE4C0; -// extern UNK_TYPE1 D_801FE640; -// extern UNK_TYPE1 D_801FE6D0; -extern SoundRequest D_801FE7C0[1]; -// extern UNK_TYPE1 D_801FFBC0; -// extern UNK_TYPE1 D_801FFBC8; -// extern UNK_TYPE1 D_801FFBD0; -// extern UNK_TYPE1 D_801FFBD8; -// extern UNK_TYPE1 D_801FFC80; -// extern UNK_TYPE1 D_801FFC84; -// extern UNK_TYPE1 D_801FFC90; +// extern UNK_TYPE1 sSfxPlayerBank; +// extern UNK_TYPE1 sSfxItemBank; +// extern UNK_TYPE1 sSfxEnvironmentBank; +// extern UNK_TYPE1 sSfxEnemyBank; +// extern UNK_TYPE1 sSfxSystemBank; +// extern UNK_TYPE1 sSfxOcarinaBank; +// extern UNK_TYPE1 sSfxVoiceBank; +// extern SfxRequest sSfxRequests[0x100]; +// extern UNK_TYPE1 sSfxBankListEnd; +// extern UNK_TYPE1 sSfxBankFreeListStart; +// extern UNK_TYPE1 sSfxBankUnused; +extern ActiveSfx gActiveSfx[7][3]; +// extern UNK_TYPE1 sCurSfxPlayerChannelIndex; +// extern UNK_TYPE1 gSfxBankMuted; +// extern UNK_TYPE1 sUnusedBankLerp; // extern UNK_TYPE1 D_801FFD00; // extern UNK_TYPE1 D_801FFD34; // extern UNK_TYPE1 D_801FFD40; diff --git a/include/z64audio.h b/include/z64audio.h index 3860ff70d6..4095251ca6 100644 --- a/include/z64audio.h +++ b/include/z64audio.h @@ -28,19 +28,12 @@ #define AIBUF_LEN 0x580 typedef enum { - /* 0 */ AUDIO_FS_STEREO, - /* 1 */ AUDIO_FS_HEADSET, - /* 2 */ AUDIO_FS_SURROUND, - /* 3 */ AUDIO_FS_MONO -} AudioFileSelectOption; - -typedef enum { - /* 0 */ AUDIO_MODE_STEREO, - /* 1 */ AUDIO_MODE_HEADSET, - /* 2 */ AUDIO_MODE_UNK, - /* 3 */ AUDIO_MODE_MONO, - /* 4 */ AUDIO_MODE_SURROUND -} AudioSoundMode; + /* 0 */ SOUNDMODE_STEREO, + /* 1 */ SOUNDMODE_HEADSET, + /* 2 */ SOUNDMODE_SURROUND, + /* 3 */ SOUNDMODE_MONO, + /* 4 */ SOUNDMODE_SURROUND_EXTERNAL, +} SoundMode; typedef enum { /* 0 */ ADSR_STATE_DISABLED, @@ -441,7 +434,7 @@ typedef struct SequenceChannel { /* 0x80 */ AdsrSettings adsr; /* 0x88 */ NotePool notePool; /* 0xC8 */ s8 soundScriptIO[8]; // bridge between sound script and audio lib, "io ports" - /* 0xD0 */ u8* sfxState; + /* 0xD0 */ u8* sfxState; // SfxChannelState /* 0xD4 */ s16* filter; /* 0xD8 */ Stereo stereo; /* 0xDC */ s32 unk_DC; @@ -1080,51 +1073,47 @@ typedef enum { /* 1 */ SFX_STATE_QUEUED, /* 2 */ SFX_STATE_READY, /* 3 */ SFX_STATE_PLAYING_REFRESH, - /* 4 */ SFX_STATE_PLAYING_1, - /* 5 */ SFX_STATE_PLAYING_2 + /* 4 */ SFX_STATE_PLAYING, + /* 5 */ SFX_STATE_PLAYING_ONE_FRAME } SfxState; typedef struct { - /* 0x00 */ f32* posX; - /* 0x04 */ f32* posY; - /* 0x08 */ f32* posZ; - /* 0x0C */ f32* freqScale; - /* 0x10 */ f32* vol; - /* 0x14 */ s8* reverbAdd; - /* 0x18 */ f32 dist; - /* 0x1C */ u32 priority; // lower is more prioritized - /* 0x20 */ u16 sfxParams; - /* 0x22 */ u16 sfxId; - /* 0x25 */ u8 sfxFlags; - /* 0x24 */ u8 sfxImportance; - /* 0x26 */ u8 state; // uses SfxState enum - /* 0x27 */ u8 freshness; - /* 0x28 */ u8 prev; - /* 0x29 */ u8 next; - /* 0x2A */ u8 channelIdx; - /* 0x2B */ u8 unk_2F; - /* 0x2C */ u8 token; + /* 0x00 */ f32* posX; + /* 0x04 */ f32* posY; + /* 0x08 */ f32* posZ; + /* 0x0C */ f32* freqScale; + /* 0x10 */ f32* volume; + /* 0x14 */ s8* reverbAdd; + /* 0x18 */ f32 dist; + /* 0x1C */ u32 priority; // lower is more prioritized + /* 0x20 */ u16 sfxParams; + /* 0x22 */ u16 sfxId; + /* 0x25 */ u8 sfxFlags; + /* 0x24 */ u8 sfxImportance; + /* 0x26 */ u8 state; // uses SfxState enum + /* 0x27 */ u8 freshness; + /* 0x28 */ u8 prev; + /* 0x29 */ u8 next; + /* 0x2A */ u8 channelIndex; + /* 0x2B */ u8 randFreq; + /* 0x2C */ u8 token; } SfxBankEntry; // size = 0x30 /* - * SFX IDs + * SfxId: * - * index 0000000111111111 observed in audio code - * & 200 0000001000000000 single bit - * & 400 0000010000000000 single bit - * & 800 0000100000000000 single bit, what we currently call SFX_FLAG - * & 600 0000011000000000 2 bits - * & A00 0000101000000000 2 bits - * & C00 0000110000000000 2 bits, observed in audio code - * & E00 0000111000000000 all 3 bits - * bank 1111000000000000 observed in audio code + * & 03FF 0000000111111111 index + * & 0400 0000010000000000 unused flag + * & 0800 0000100000000000 SFX_FLAG + * & 0C00 0000110000000000 Flag Mask + * & F000 1111000000000000 observed in audio code */ #define SFX_BANK_SHIFT(sfxId) (((sfxId) >> 12) & 0xFF) #define SFX_BANK_MASK(sfxId) ((sfxId) & 0xF000) -#define SFX_INDEX(sfxId) ((sfxId) & 0x03FF) +#define SFX_INDEX(sfxId) ((sfxId) & 0x3FF) #define SFX_BANK(sfxId) SFX_BANK_SHIFT(SFX_BANK_MASK(sfxId)) typedef struct { @@ -1134,34 +1123,67 @@ typedef struct { // SfxParams bit-packing -#define SFX_PARAM_01_SHIFT 0 -#define SFX_PARAM_01_MASK_UPPER (4 << SFX_PARAM_01_SHIFT) -#define SFX_PARAM_01_MASK (7 << SFX_PARAM_01_SHIFT) // Same as OoT, 8 instead of 4 +// Slows the decay of volume with distance (a 3-bit number ranging from 0-7) +#define SFX_PARAM_DIST_RANGE_SHIFT 0 +#define SFX_PARAM_DIST_RANGE_MASK_UPPER (4 << SFX_PARAM_DIST_RANGE_SHIFT) +#define SFX_PARAM_DIST_RANGE_MASK (7 << SFX_PARAM_DIST_RANGE_SHIFT) -#define SFX_FLAG_3 (1 << 3) // Same as OoT -#define SFX_FLAG_4 (1 << 4) // Same as OoT -#define SFX_FLAG_5 (1 << 5) // Same as OoT +// Lower SEQ_PLAYER_BGM_MAIN and SEQ_PLAYER_BGM_SUB while the sfx is playing +#define SFX_FLAG_LOWER_VOLUME_BGM (1 << 3) -#define SFX_PARAM_67_SHIFT 6 -#define SFX_PARAM_67_MASK (3 << SFX_PARAM_67_SHIFT) +// Sfx priority is not raised with distance (making it more likely to be ejected) +#define SFX_FLAG_PRIORITY_NO_DIST (1 << 4) -#define SFX_FLAG_8 (1 << 8) // New to MM -#define SFX_FLAG_9 (1 << 9) // Same as OoT -#define SFX_FLAG_10_SHIFT 10 // Unused -#define SFX_FLAG_10 (1 << SFX_FLAG_10_SHIFT) -#define SFX_FLAG_11 (1 << 11) // Same as OoT +// If a new sfx is requested at both the same position with the same importance, +// Block that new sfx from replacing the current sfx +// Note: Only 1 sfx can be played at a specific position at once +#define SFX_FLAG_BLOCK_EQUAL_IMPORTANCE (1 << 5) -#define SFX_FLAG_12 (1 << 12) // Same as OoT -#define SFX_FLAG_13 (1 << 13) // Same as OoT -#define SFX_FLAG_14 (1 << 14) // Same as OoT -#define SFX_FLAG_15 (1 << 15) // Same as OoT +// Applies increasingly random offsets to frequency (a 2-bit number ranging from 0-3) +#define SFX_PARAM_RAND_FREQ_RAISE_SHIFT 6 +#define SFX_PARAM_RAND_FREQ_RAISE_MASK (3 << SFX_PARAM_RAND_FREQ_RAISE_SHIFT) -#define SFX_FLAG2_0 (1 << 0) // OoT SFX_FLAG_2 -#define SFX_FLAG2_2 (1 << 2) // Unused -#define SFX_FLAG2_4 (1 << 4) // Unused -#define SFX_FLAG2_5 (1 << 5) // New to MM -#define SFX_FLAG2_6 (1 << 6) // Unused -#define SFX_FLAG2_7 (1 << 7) // New to MM +// Sets a flag to ioPort 5 +#define SFX_FLAG_8 (1 << 8) + +// Use lowpass filter on surround sound +#define SFX_FLAG_SURROUND_LOWPASS_FILTER (1 << 9) + +// Unused remnant of OoT +#define SFX_FLAG_BEHIND_SCREEN_Z_INDEX_SHIFT 10 +#define SFX_FLAG_BEHIND_SCREEN_Z_INDEX (1 << SFX_FLAG_BEHIND_SCREEN_Z_INDEX_SHIFT) + +// Randomly scale base frequency each frame through mutiplicative offset +#define SFX_PARAM_RAND_FREQ_SCALE (1 << 11) + +// Sfx reverb is not raised with distance +#define SFX_FLAG_REVERB_NO_DIST (1 << 12) + +// Sfx volume is not lowered with distance +#define SFX_FLAG_VOLUME_NO_DIST (1 << 13) + +// SFX_FLAG_VIBRATO +// Randomly lower base frequency each frame through additive offset +#define SFX_PARAM_RAND_FREQ_LOWER (1 << 14) + +// Sfx frequency is not raised with distance +#define SFX_FLAG_FREQ_NO_DIST (1 << 15) + +// Force the sfx to reset from the beginning when requested again +#define SFX_FLAG2_FORCE_RESET (1 << 0) + +// Unused +#define SFX_FLAG2_UNUSED2 (1 << 2) +#define SFX_FLAG2_UNUSED4 (1 << 4) + +// Do not use highpass filter on surround sound +#define SFX_FLAG2_SURROUND_NO_HIGHPASS_FILTER (1 << 5) + +// Unused +#define SFX_FLAG2_UNUSED6 (1 << 6) + +// Apply a low-pass filter with a lowPassCutoff of 4 +#define SFX_FLAG2_APPLY_LOWPASS_FILTER (1 << 7) typedef struct { /* 0x0 */ u8 importance; @@ -1169,13 +1191,4 @@ typedef struct { /* 0x2 */ u16 params; } SfxParams; // size = 0x4 -typedef struct { - /* 0x00 */ u16 sfxId; - /* 0x02 */ u8 token; - /* 0x04 */ s8* reverbAdd; - /* 0x08 */ Vec3f* pos; - /* 0x0C */ f32* freqScale; - /* 0x10 */ f32* vol; -} SoundRequest; // size = 0x14 - #endif diff --git a/spec b/spec index 0cf7dc57ca..864d24d696 100644 --- a/spec +++ b/spec @@ -631,8 +631,6 @@ beginseg pad_text include "build/src/code/audio/audio_sfx_params.o" include "build/src/code/audio/code_801A5BD0.o" - include "build/data/code/code_801A5BD0.data.o" - include "build/data/code/code_801A5BD0.bss.o" include "build/src/code/audio/code_801A7B10.o" include "build/data/code/code_801A7B10.data.o" include "build/data/code/code_801A7B10.bss.o" diff --git a/src/code/audio/audio_load.c b/src/code/audio/audio_load.c index b4997a94e4..9ebdd1d857 100644 --- a/src/code/audio/audio_load.c +++ b/src/code/audio/audio_load.c @@ -1208,7 +1208,7 @@ void AudioLoad_Init(void* heap, size_t heapSize) { gAudioContext.refreshRate = 60; } - Audio_InitMesgQueues(); + AudioThread_InitMesgQueues(); for (i = 0; i < ARRAY_COUNT(gAudioContext.aiBufLengths); i++) { gAudioContext.aiBufLengths[i] = 0xA0; @@ -1217,7 +1217,7 @@ void AudioLoad_Init(void* heap, size_t heapSize) { gAudioContext.totalTaskCount = 0; gAudioContext.rspTaskIndex = 0; gAudioContext.curAiBuffferIndex = 0; - gAudioContext.soundMode = AUDIO_MODE_STEREO; + gAudioContext.soundMode = SOUNDMODE_STEREO; gAudioContext.curTask = NULL; gAudioContext.rspTask[0].task.t.dataSize = 0; gAudioContext.rspTask[1].task.t.dataSize = 0; diff --git a/src/code/audio/audio_playback.c b/src/code/audio/audio_playback.c index c7789bd367..e7f5153ac2 100644 --- a/src/code/audio/audio_playback.c +++ b/src/code/audio/audio_playback.c @@ -34,7 +34,7 @@ void AudioPlayback_InitNoteSub(Note* note, NoteSubEu* sub, NoteSubAttributes* at sub->bitField0.stereoStrongLeft = false; sub->bitField0.stereoHeadsetEffects = stereoData.stereoHeadsetEffects; sub->bitField0.usesHeadsetPanEffects = stereoData.usesHeadsetPanEffects; - if (stereoHeadsetEffects && gAudioContext.soundMode == AUDIO_MODE_HEADSET) { + if (stereoHeadsetEffects && gAudioContext.soundMode == SOUNDMODE_HEADSET) { smallPanIndex = pan >> 1; if (smallPanIndex > 0x3F) { smallPanIndex = 0x3F; @@ -46,7 +46,7 @@ void AudioPlayback_InitNoteSub(Note* note, NoteSubEu* sub, NoteSubAttributes* at volLeft = gHeadsetPanVolume[pan]; volRight = gHeadsetPanVolume[0x7F - pan]; - } else if (stereoHeadsetEffects && gAudioContext.soundMode == AUDIO_MODE_STEREO) { + } else if (stereoHeadsetEffects && gAudioContext.soundMode == SOUNDMODE_STEREO) { strongLeft = strongRight = false; sub->headsetPanRight = 0; sub->headsetPanLeft = 0; @@ -80,7 +80,7 @@ void AudioPlayback_InitNoteSub(Note* note, NoteSubEu* sub, NoteSubAttributes* at break; } - } else if (gAudioContext.soundMode == AUDIO_MODE_MONO) { + } else if (gAudioContext.soundMode == SOUNDMODE_MONO) { sub->bitField0.stereoHeadsetEffects = false; sub->bitField0.usesHeadsetPanEffects = false; volLeft = 0.707f; // approx 1/sqrt(2) diff --git a/src/code/audio/audio_seqplayer.c b/src/code/audio/audio_seqplayer.c index d504f9f3a9..ebcc9a8d1c 100644 --- a/src/code/audio/audio_seqplayer.c +++ b/src/code/audio/audio_seqplayer.c @@ -1633,7 +1633,7 @@ void AudioSeq_SequenceChannelProcessScript(SequenceChannel* channel) { break; case 0xA8: // channel: random range large (only cmd that differs from OoT) - rand = Audio_NextRandom(); + rand = AudioThread_NextRandom(); channel->unk_22 = (cmdArgs[0] == 0) ? (rand & 0xFFFF) : (rand % cmdArgs[0]); channel->unk_22 += cmdArgs[1]; temp2 = (channel->unk_22 / 0x100) + 0x80; diff --git a/src/code/audio/audio_sfx_params.c b/src/code/audio/audio_sfx_params.c index 94a8f26bc2..0066328b1a 100644 --- a/src/code/audio/audio_sfx_params.c +++ b/src/code/audio/audio_sfx_params.c @@ -1,9 +1,9 @@ #include "global.h" -#define DEFINE_SFX(_0, importance, distParam, randParam, flags2, flags1) \ - { importance, flags2, \ - ((((distParam) << SFX_PARAM_01_SHIFT) & SFX_PARAM_01_MASK) | \ - (((randParam) << SFX_PARAM_67_SHIFT) & SFX_PARAM_67_MASK) | (flags1)) }, +#define DEFINE_SFX(_0, importance, distParam, randParam, flags2, flags1) \ + { importance, flags2, \ + ((((distParam) << SFX_PARAM_DIST_RANGE_SHIFT) & SFX_PARAM_DIST_RANGE_MASK) | \ + (((randParam) << SFX_PARAM_RAND_FREQ_RAISE_SHIFT) & SFX_PARAM_RAND_FREQ_RAISE_MASK) | (flags1)) }, SfxParams sEnemyBankParams[] = { #include "tables/sfx/enemybank_table.h" diff --git a/src/code/audio/code_80192BE0.c b/src/code/audio/code_80192BE0.c index 20b4239da7..e69f678ff2 100644 --- a/src/code/audio/code_80192BE0.c +++ b/src/code/audio/code_80192BE0.c @@ -16,13 +16,13 @@ #pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/func_80193858.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/func_8019387C.s") +#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/AudioThread_QueueCmdS32.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/Audio_QueueCmdS8.s") +#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/AudioThread_QueueCmdS8.s") #pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/func_801938D0.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/func_80193900.s") +#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/AudioThread_ScheduleProcessCmds.s") #pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/func_80193990.s") @@ -76,6 +76,6 @@ #pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/func_80194568.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/Audio_NextRandom.s") +#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/AudioThread_NextRandom.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/Audio_InitMesgQueues.s") +#pragma GLOBAL_ASM("asm/non_matchings/code/code_80192BE0/AudioThread_InitMesgQueues.s") diff --git a/src/code/audio/code_8019AF00.c b/src/code/audio/code_8019AF00.c index 65c3a6de89..b896facbc8 100644 --- a/src/code/audio/code_8019AF00.c +++ b/src/code/audio/code_8019AF00.c @@ -18,15 +18,15 @@ typedef struct { } SfxSettings; // size = 0x9 typedef struct { - /* 0x0 */ f32 vol; + /* 0x0 */ f32 volume; /* 0x4 */ f32 freqScale; /* 0x8 */ s8 reverb; /* 0x9 */ s8 panSigned; /* 0xA */ s8 stereoBits; /* 0xB */ u8 filter; - /* 0xC */ u8 unk_0C; - /* 0xD */ u8 unk_0D; -} SfxPlayerState; // size = 0xE + /* 0xC */ u8 combFilterGain; + /* 0xD */ u8 zVolume; +} SfxChannelState; // size = 0xE typedef enum { /* 0x0 */ SFX_CHANNEL_PLAYER0, // SfxPlayerBank @@ -91,7 +91,7 @@ f32* sSfxVolumeCur; f32 sSfxVolumeTarget; f32 sSfxVolumeRate; u16 sSceneSeqId1; -SfxPlayerState sSfxChannelState[16]; +SfxChannelState sSfxChannelState[16]; // Sequence bss u8 D_801FD3A8; @@ -154,7 +154,8 @@ OcarinaNote sScarecrowsLongSongSecondNote; u16 sCustomSequencePc; // Sfx Data -u8 D_801D6600[] = { +// If the Sfx Bank has more than 255 values (max value of u8) +u8 gIsLargeSfxBank[] = { true, false, true, true, false, false, true, }; u8 D_801D6608[] = { @@ -192,7 +193,7 @@ u8 sEnterGanonsTowerTimer = 0; u16 sSfxVolumeDuration = 0; // System Data -s8 sAudioFileSelectSetting = AUDIO_FS_STEREO; +s8 sSoundMode = SOUNDMODE_STEREO; s8 sAudioIsWindowOpen = false; s8 sAudioCutsceneFlag = false; s8 sSpecReverb = 0; @@ -2495,7 +2496,7 @@ void AudioOcarina_PlayControllerInput(u8 isOcarinaSfxSuppressedWhenCancelled) { // Add vibrato of the ocarina note based on the x control stick sCurOcarinaVibrato = ABS_ALT(sOcarinaInputStickRel.x) >> 2; // Sets vibrato to io port 6 - Audio_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 6, sCurOcarinaVibrato); + AudioThread_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 6, sCurOcarinaVibrato); } else { // no bending or vibrato for recording state OCARINA_RECORD_SCARECROW_SPAWN sCurOcarinaBendIndex = 0; @@ -2507,15 +2508,16 @@ void AudioOcarina_PlayControllerInput(u8 isOcarinaSfxSuppressedWhenCancelled) { if ((sCurOcarinaPitch != OCARINA_PITCH_NONE) && (sPrevOcarinaPitch != sCurOcarinaPitch)) { // Sets ocarina instrument Id to io port 7, which is used // as an index in seq 0 to get the true instrument Id - Audio_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 7, sOcarinaInstrumentId - 1); + AudioThread_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 7, + sOcarinaInstrumentId - 1); // Sets pitch to io port 5 - Audio_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 5, sCurOcarinaPitch); - Audio_PlaySfxGeneral(NA_SE_OC_OCARINA, &gSfxDefaultPos, 4, &sCurOcarinaBendFreq, &sDefaultOcarinaVolume, - &gSfxDefaultReverb); + AudioThread_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 5, sCurOcarinaPitch); + AudioSfx_PlaySfx(NA_SE_OC_OCARINA, &gSfxDefaultPos, 4, &sCurOcarinaBendFreq, &sDefaultOcarinaVolume, + &gSfxDefaultReverb); } else if ((sPrevOcarinaPitch != OCARINA_PITCH_NONE) && (sCurOcarinaPitch == OCARINA_PITCH_NONE) && !isOcarinaSfxSuppressedWhenCancelled) { // Stops ocarina sound when transitioning from playing to not playing a note - Audio_StopSfxById(NA_SE_OC_OCARINA); + AudioSfx_StopById(NA_SE_OC_OCARINA); } } } @@ -2540,10 +2542,10 @@ void AudioOcarina_ResetAndMute(void) { sOcarinaInputButtonStart = 0xFFFF; AudioOcarina_PlayControllerInput(false); - Audio_StopSfxById(NA_SE_OC_OCARINA); + AudioSfx_StopById(NA_SE_OC_OCARINA); if (gAudioSpecId != 12) { - Audio_SetSfxBanksMute(0); + AudioSfx_MuteBanks(0); } sPlaybackState = 0; @@ -2553,7 +2555,7 @@ void AudioOcarina_ResetAndMute(void) { sOcarinaFlags = 0; // return to full volume for both bgm players after ocarina is finished - Audio_ClearFlagForBgmVolumeLow(SFX_CHANNEL_OCARINA); + AudioSfx_RestoreBgmVolume(SFX_CHANNEL_OCARINA); // return to full volume for all sfx channels except system & ocarina banks Audio_SetSfxVolumeExceptSystemAndOcarinaBanks(0x7F); } @@ -2602,7 +2604,7 @@ u32 AudioOcarina_SetInstrument(u8 ocarinaInstrumentId) { // lowers volume of all sfx channels except system & ocarina banks Audio_SetSfxVolumeExceptSystemAndOcarinaBanks(0x40); // lowers volume of bgm players while playing ocarina - Audio_SetFlagForBgmVolumeLow(SFX_CHANNEL_OCARINA); + AudioSfx_LowerBgmVolume(SFX_CHANNEL_OCARINA); } } } @@ -2612,7 +2614,7 @@ void AudioOcarina_SetPlaybackSong(s8 songIndexPlusOne, u8 playbackState) { if (songIndexPlusOne == 0) { sPlaybackState = 0; - Audio_StopSfxById(NA_SE_OC_OCARINA); + AudioSfx_StopById(NA_SE_OC_OCARINA); return; } @@ -2700,7 +2702,7 @@ void AudioOcarina_PlaybackSong(void) { sPlaybackStaffPos = 0; sPlaybackPitch = OCARINA_PITCH_NONE; } else { - Audio_StopSfxById(NA_SE_OC_OCARINA); + AudioSfx_StopById(NA_SE_OC_OCARINA); } return; } else { @@ -2716,7 +2718,7 @@ void AudioOcarina_PlaybackSong(void) { // Update vibrato sNotePlaybackVibrato = sPlaybackSong[sPlaybackNotePos].vibrato; // Sets vibrato to io port 6 - Audio_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 6, sNotePlaybackVibrato); + AudioThread_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 6, sNotePlaybackVibrato); // Update bend if (sNotePlaybackBend != sPlaybackSong[sPlaybackNotePos].bend) { @@ -2746,14 +2748,14 @@ void AudioOcarina_PlaybackSong(void) { sPlaybackStaffPos++; // Sets ocarina instrument Id to io port 7, which is used // as an index in seq 0 to get the true instrument Id - Audio_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 7, - sOcarinaInstrumentId - 1); - Audio_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 5, - sPlaybackPitch & OCARINA_BUTTON_MASK_PITCH); - Audio_PlaySfxGeneral(NA_SE_OC_OCARINA, &gSfxDefaultPos, 4, &sRelativeNotePlaybackBend, - &sRelativeNotePlaybackVolume, &gSfxDefaultReverb); + AudioThread_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 7, + sOcarinaInstrumentId - 1); + AudioThread_QueueCmdS8(0x6 << 24 | SEQ_PLAYER_SFX << 16 | SFX_CHANNEL_OCARINA << 8 | 5, + sPlaybackPitch & OCARINA_BUTTON_MASK_PITCH); + AudioSfx_PlaySfx(NA_SE_OC_OCARINA, &gSfxDefaultPos, 4, &sRelativeNotePlaybackBend, + &sRelativeNotePlaybackVolume, &gSfxDefaultReverb); } else { - Audio_StopSfxById(NA_SE_OC_OCARINA); + AudioSfx_StopById(NA_SE_OC_OCARINA); } } sPlaybackNotePos++; @@ -3073,7 +3075,7 @@ void AudioOcarina_TerminaWallGenerateNotes(void) { j = 0; for (; i < 8; i++) { - randomButtonIndex = Audio_NextRandom() % ARRAY_COUNT(sButtonToPitchMap); + randomButtonIndex = AudioThread_NextRandom() % ARRAY_COUNT(sButtonToPitchMap); sOcarinaSongNotes[OCARINA_SONG_TERMINA_WALL][j].pitch = sButtonToPitchMap[randomButtonIndex]; sOcarinaSongNotes[OCARINA_SONG_TERMINA_WALL][j].length = 19; sOcarinaSongNotes[OCARINA_SONG_TERMINA_WALL][j].volume = 80; @@ -3094,7 +3096,7 @@ void AudioOcarina_TerminaWallGenerateNotes(void) { sOcarinaSongNotes[OCARINA_SONG_TERMINA_WALL][j + 1].length = 0; AudioOcarina_MapSongFromPitchToButton(OCARINA_SONG_TERMINA_WALL, OCARINA_SONG_TERMINA_WALL, 8); } else { - j = Audio_NextRandom() % ARRAY_COUNT(sOoTOcarinaSongNotes); + j = AudioThread_NextRandom() % ARRAY_COUNT(sOoTOcarinaSongNotes); ocarinaNote = sOoTOcarinaSongNotes[j]; for (; ocarinaNote[i].length != 0; i++) { @@ -3140,7 +3142,7 @@ s32 AudioOcarina_MemoryGameNextNote(void) { return true; } - randomButtonIndex = Audio_NextRandom(); + randomButtonIndex = AudioThread_NextRandom(); randomPitch = sButtonToPitchMap[randomButtonIndex % ARRAY_COUNT(sButtonToPitchMap)]; if (sOcarinaSongNotes[OCARINA_SONG_MEMORY_GAME][sOcarinaMemoryGameAppendPos - 1].pitch == randomPitch) { @@ -3234,7 +3236,7 @@ void AudioOcarina_PlayLongScarecrowAfterCredits(void) { break; case 1: - Audio_SetSfxBanksMute(0); + AudioSfx_MuteBanks(0); AudioOcarina_SetInstrument(sScarecrowAfterCreditsIntrumentId); AudioOcarina_SetPlaybackSong(OCARINA_SONG_SCARECROW_LONG + 1, 1); sScarecrowAfterCreditsIntrumentId++; @@ -3475,20 +3477,6 @@ void AudioOcarina_ResetStaffs(void) { D_801D8534 = 0; } -s8 D_801D8B30[] = { - 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 56, 56, 57, 57, 58, 58, 59, 59, 60, 60, 60, 61, 61, 61, 62, 62, 62, 63, 63, 63, 64, 64, - 64, 65, 65, 65, 66, 66, 66, 67, 67, 67, 68, 68, 69, 69, 70, 70, 71, 71, 72, 73, 74, 75, - 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, - 98, 99, 100, 101, 102, 103, 105, 107, 109, 111, 113, 115, 117, 119, 121, 123, 125, 127, -}; -f32 sBigBellsVolume[8] = { - 1.0f, 0.9f, 0.8f, 0.7f, 0.6f, 0.5f, 0.4f, 0.3f, -}; -u8 sBgmPlayers[2] = { SEQ_PLAYER_BGM_MAIN, SEQ_PLAYER_BGM_SUB }; -f32 sSfxOriginalPos[] = { 0.0f, 0.0f, 0.0f }; - #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019DFF8.s") #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019E000.s") @@ -3503,23 +3491,447 @@ f32 sSfxOriginalPos[] = { 0.0f, 0.0f, 0.0f }; #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019E110.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019E14C.s") +f32 AudioSfx_ComputeVolume(u8 bankId, u8 entryIndex) { + SfxBankEntry* bankEntry = &gSfxBanks[bankId][entryIndex]; + f32 minDist; + f32 phi_f14; + f32 baseDist; + f32 phi_f12; + f32 volume; // Also acts as intermediate volumeSquared + s32 pad[3]; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019E324.s") + if (bankEntry->sfxParams & SFX_FLAG_VOLUME_NO_DIST) { + return 1.0f; + } -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019E4B0.s") + if (bankEntry->dist > 10000.0f) { + volume = 0.0f; + } else { + if (bankEntry->sfxParams & SFX_PARAM_DIST_RANGE_MASK_UPPER) { + phi_f12 = 0.35f; + phi_f14 = 0.65f; + } else { + phi_f12 = 0.81f; + phi_f14 = 0.19f; + } -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019E634.s") + switch (bankEntry->sfxParams & SFX_PARAM_DIST_RANGE_MASK) { + case 0: + baseDist = 500.0f; + break; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019E864.s") + case 1: + baseDist = 666.6667f; + break; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019EA40.s") + case 2: + baseDist = 952.381f; + break; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019EB2C.s") + case 3: + baseDist = 3846.154f; + break; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F024.s") + case 4: + baseDist = 1000.0f; + break; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F05C.s") + case 5: + baseDist = 666.6667f; + break; + + case 6: + baseDist = 500.0f; + break; + + case 7: + baseDist = 400.0f; + break; + } + + minDist = baseDist / 5.0f; + + if (bankEntry->dist < minDist) { + volume = 1.0f; + } else if (bankEntry->dist < baseDist) { + volume = + ((((baseDist - minDist) - (bankEntry->dist - minDist)) / (baseDist - minDist)) * phi_f14) + phi_f12; + } else { + volume = (1.0f - ((bankEntry->dist - baseDist) / (10000.0f - baseDist))) * phi_f12; + } + + volume = SQ(volume); + } + + return volume; +} + +s8 AudioSfx_ComputeReverb(u8 bankId, u8 entryIndex, u8 channelIndex) { + s8 distAdd = 0; + s32 scriptAdd = 0; + SfxBankEntry* entry = &gSfxBanks[bankId][entryIndex]; + s32 reverb; + + if (!(entry->sfxParams & SFX_FLAG_REVERB_NO_DIST)) { + if (entry->dist < 2500.0f) { + distAdd = *entry->posZ > 0.0f ? (entry->dist / 2500.0f) * 70.0f : (entry->dist / 2500.0f) * 91.0f; + } else { + distAdd = 70; + } + } + + if (IS_SEQUENCE_CHANNEL_VALID(gAudioContext.seqPlayers[SEQ_PLAYER_SFX].channels[channelIndex])) { + scriptAdd = gAudioContext.seqPlayers[SEQ_PLAYER_SFX].channels[channelIndex]->soundScriptIO[1]; + if (gAudioContext.seqPlayers[SEQ_PLAYER_SFX].channels[channelIndex]->soundScriptIO[1] < 0) { + scriptAdd = 0; + } + } + + reverb = (*entry->reverbAdd & 0x7F) + distAdd; + + if (entry->state != SFX_STATE_READY) { + reverb += scriptAdd; + } + + if ((bankId != BANK_OCARINA) || (SFX_INDEX(entry->sfxId) >= 2)) { + reverb += sAudioEnvReverb + (sAudioCodeReverb & 0x3F) + sSpecReverb; + } + + if (reverb > 0x7F) { + reverb = 0x7F; + } + + return reverb; +} + +s8 AudioSfx_ComputePanSigned(f32 x, f32 z, u8 token) { + f32 absX = ABS_ALT(x); + f32 absZ = ABS_ALT(z); + f32 pan; + + if (absX > 8000.0f) { + absX = 8000.0f; + } + + if (absZ > 8000.0f) { + absZ = 8000.0f; + } + + if ((x == 0.0f) && (z == 0.0f)) { + pan = 0.5f; + } else if (absZ <= absX) { + pan = (16000.0f - absX) / (4.5f * (16000.0f - absZ)); + if (x >= 0.0f) { + pan = 1.0f - pan; + } + } else { + pan = (x / (3.6f * absZ)) + 0.5f; + } + + if ((absZ < 50.0f) && (absX < 50.0f)) { + pan = ((pan - 0.5f) * SQ(absX / 50.0f)) + 0.5f; + } + + return (pan * 127.0f) + 0.5f; +} + +f32 AudioSfx_ComputeFreqScale(u8 bankId, u8 entryIndex) { + s32 applyRandScaling = false; + SfxBankEntry* entry = &gSfxBanks[bankId][entryIndex]; + f32 dist; + f32 freq = 1.0f; + + if (entry->sfxParams & SFX_PARAM_RAND_FREQ_LOWER) { + freq = 1.0f - ((gAudioContext.audioRandom & 0xF) / 192.0f); + } + + switch (bankId) { + case BANK_VOICE: + if (((entry->sfxId & 0xFF) < 0x40) && (sAudioBaseFilter2 != 0)) { + applyRandScaling = true; + } else if (((entry->sfxId & 0xFF) >= 0x40) && (sAudioExtraFilter2 != 0)) { + applyRandScaling = true; + } + break; + + case BANK_PLAYER: + case BANK_ITEM: + if (sAudioBaseFilter2 != 0) { + applyRandScaling = true; + } + break; + + case BANK_ENV: + case BANK_ENEMY: + if (((*entry->reverbAdd & 0x80) != 0) | (sAudioExtraFilter2 != 0)) { + applyRandScaling = true; + } + break; + + case BANK_SYSTEM: + case BANK_OCARINA: + break; + + default: + break; + } + + if ((applyRandScaling == true) && !(entry->sfxParams & SFX_PARAM_RAND_FREQ_SCALE)) { + freq *= 1.0293 - ((gAudioContext.audioRandom & 0xF) / 144.0f); + } + + dist = entry->dist; + if (!(entry->sfxParams & SFX_FLAG_VOLUME_NO_DIST) && !(entry->sfxParams & SFX_FLAG_FREQ_NO_DIST)) { + if (dist >= 10000.0f) { + freq += 0.2f; + } else { + freq += (0.2f * (dist / 10000.0f)); + } + } + + if ((entry->sfxParams & SFX_PARAM_RAND_FREQ_RAISE_MASK) != (0 << SFX_PARAM_RAND_FREQ_RAISE_SHIFT)) { + freq += (entry->randFreq / 192.0f); + } + + return freq; +} + +u8 AudioSfx_ComputeSurroundSoundFilter(f32 behindScreenZ, SfxBankEntry* entry, s8 panSigned) { + u8 lowPassCutoff; + u8 highPassCutoff; + u16* sfxParams; + f32 distParam; + f32 dist; + + // Remnant of OoT + if (*entry->posZ < behindScreenZ) { + lowPassCutoff = 0; + } else { + lowPassCutoff = 0; + } + + sfxParams = &entry->sfxParams; + + if (*sfxParams & SFX_FLAG_SURROUND_LOWPASS_FILTER) { + lowPassCutoff = 0xF; + } + + switch ((*sfxParams & SFX_PARAM_DIST_RANGE_MASK)) { + case 0: + distParam = 15.0f; + break; + + case 1: + distParam = 12.0f; + break; + + case 2: + distParam = 9.0f; + break; + + case 3: + distParam = 6.0f; + break; + + case 4: + distParam = 18.0f; + break; + + case 5: + distParam = 21.0f; + break; + + case 6: + distParam = 24.0f; + break; + + case 7: + distParam = 27.0f; + break; + + default: + break; + } + + if (!(entry->sfxFlags & SFX_FLAG2_SURROUND_NO_HIGHPASS_FILTER)) { + if (entry->dist > 1923.077f) { + dist = 1923.077f; + } else { + dist = entry->dist; + } + + highPassCutoff = (distParam * dist) / (2 * 1923.077f); + } else { + highPassCutoff = 0; + } + + return (lowPassCutoff << 4) + highPassCutoff; +} + +s8 AudioSfx_ComputeCombFilter(f32 posY, u16 sfxParams) { + s8 combFilterGain; + + if (posY < 0.0f) { + if (posY < -625.0f) { + combFilterGain = -32; + } else { + combFilterGain = (s8)(((625.0f + posY) / 625.0f) * 31.0f) + 0xE0; + } + } else if (posY > 1250.0f) { + combFilterGain = 127; + } else { + combFilterGain = (posY / 1250.0f) * 126.0f; + } + + return combFilterGain | 1; +} + +void AudioSfx_SetProperties(u8 bankId, u8 entryIndex, u8 channelIndex) { + static s8 sZVolumes[] = { + 0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, + 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, + 56, 56, 57, 57, 58, 58, 59, 59, 60, 60, 60, 61, 61, 61, 62, 62, 62, 63, 63, 63, 64, 64, + 64, 65, 65, 65, 66, 66, 66, 67, 67, 67, 68, 68, 69, 69, 70, 70, 71, 71, 72, 73, 74, 75, + 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, + 98, 99, 100, 101, 102, 103, 105, 107, 109, 111, 113, 115, 117, 119, 121, 123, 125, 127, + }; + f32 volume = 1.0f; + s8 volumeS8; + s8 reverb = 0; + f32 freqScale = 1.0f; + s8 panSigned = 0x40; + u8 pad; + u8 filter = 0; + s8 combFilterGain = 0; + s8 zVolume = -1; + f32 behindScreenZ; + u8 baseFilter = 0; + SfxBankEntry* entry = &gSfxBanks[bankId][entryIndex]; + s32 pad2; + + switch (bankId) { + case BANK_PLAYER: + case BANK_ITEM: + case BANK_ENV: + case BANK_ENEMY: + case BANK_VOICE: + if (sSoundMode == SOUNDMODE_SURROUND) { + combFilterGain = AudioSfx_ComputeCombFilter(*entry->posY, entry->sfxParams); + } + // fallthrough + case BANK_OCARINA: + entry->dist = sqrtf(entry->dist * 10.0f); + volume = AudioSfx_ComputeVolume(bankId, entryIndex) * *entry->volume; + reverb = AudioSfx_ComputeReverb(bankId, entryIndex, channelIndex); + panSigned = AudioSfx_ComputePanSigned(*entry->posX, *entry->posZ, entry->token); + freqScale = AudioSfx_ComputeFreqScale(bankId, entryIndex) * *entry->freqScale; + + if (sSoundMode == SOUNDMODE_SURROUND) { + if (*entry->posZ >= 0.0f) { + if (*entry->posZ < 200.0f) { + zVolume = 32.0f - ((*entry->posZ / 300.0f) * 32.0f); + } else { + zVolume = 0; + } + } else if (*entry->posZ < 0.0f) { + if (*entry->posZ > -300.0f) { + zVolume = 32.0f - ((*entry->posZ / 300.0f) * 95.0f); + } else { + zVolume = 127; + } + } + zVolume = sZVolumes[zVolume]; + } + + if (sAudioBaseFilter != 0) { + if ((bankId == BANK_PLAYER) || (bankId == BANK_ITEM) || + ((bankId == BANK_VOICE) && (((entry->sfxId & 0xFF) < 0x40) || ((entry->sfxId & 0xFF) >= 0x80)))) { + baseFilter = sAudioBaseFilter; + if (sAudioExtraFilter) { + reverb >>= 2; + } + } + } + + if (((*entry->reverbAdd & 0x80) | baseFilter | sAudioExtraFilter | + (entry->sfxFlags & SFX_FLAG2_APPLY_LOWPASS_FILTER)) != 0) { + filter = ((((*entry->reverbAdd & 0x80) >> 2) | baseFilter | sAudioExtraFilter | + ((entry->sfxFlags & SFX_FLAG2_APPLY_LOWPASS_FILTER) >> 2)) * + 2); + filter &= 0xFF; + } else if ((sSoundMode == SOUNDMODE_SURROUND) && !(entry->sfxParams & SFX_FLAG_VOLUME_NO_DIST)) { + filter = AudioSfx_ComputeSurroundSoundFilter(behindScreenZ, entry, panSigned); + } + break; + + case BANK_SYSTEM: + break; + } + + if (sSfxChannelState[channelIndex].volume != volume) { + volumeS8 = (u8)(volume * 127.0f); + sSfxChannelState[channelIndex].volume = volume; + } else { + volumeS8 = -1; + } + + //! FAKE: + if (1) {} + + // CHAN_UPD_SCRIPT_IO (slot 2, sets volume) + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | (channelIndex << 8) | 2, volumeS8); + + if (sSfxChannelState[channelIndex].reverb != reverb) { + sSfxChannelState[channelIndex].reverb = reverb; + } + if (sSfxChannelState[channelIndex].freqScale != freqScale) { + sSfxChannelState[channelIndex].freqScale = freqScale; + } + if (sSfxChannelState[channelIndex].stereoBits != 0) { + sSfxChannelState[channelIndex].stereoBits = 0; + } + if (sSfxChannelState[channelIndex].filter != filter) { + sSfxChannelState[channelIndex].filter = filter; + } + if (sSfxChannelState[channelIndex].combFilterGain != combFilterGain) { + sSfxChannelState[channelIndex].combFilterGain = combFilterGain; + } + if (sSfxChannelState[channelIndex].zVolume != zVolume) { + sSfxChannelState[channelIndex].zVolume = zVolume; + } + if (sSfxChannelState[channelIndex].panSigned != panSigned) { + sSfxChannelState[channelIndex].panSigned = panSigned; + } +} + +u32 AudioSfx_SetFreqAndStereoBits(u8 seqScriptValIn, SequenceChannel* channel) { + channel->stereo.asByte = sSfxChannelState[seqScriptValIn].stereoBits; + channel->freqScale = sSfxChannelState[seqScriptValIn].freqScale; + channel->changes.s.freqScale = true; + + return seqScriptValIn; +} + +void AudioSfx_ResetSfxChannelState(void) { + SfxChannelState* state; + u8 i; + + for (i = 0; i < ARRAY_COUNT(sSfxChannelState); i++) { + state = &sSfxChannelState[i]; + state->volume = 1.0f; + state->freqScale = 1.0f; + state->reverb = 0; + state->panSigned = 0x40; + state->stereoBits = 0; + state->filter = 0xFF; + state->combFilterGain = 0xFF; + state->zVolume = 0xFF; + } + + sSfxChannelState[SFX_CHANNEL_OCARINA].combFilterGain = 0; + sPrevSeqMode = SEQ_MODE_DEFAULT; + sAudioCodeReverb = 0; +} #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/play_sound.s") @@ -3533,9 +3945,75 @@ f32 sSfxOriginalPos[] = { 0.0f, 0.0f, 0.0f }; #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F230.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F258.s") +SfxSettings* AudioSfx_AddSfxSetting(Vec3f* pos) { + SfxSettings* sfxSettings; + u8 i = 0; + u8 sfxSettingIndex = 0xFF; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F300.s") + for (; i < ARRAY_COUNT(sSfxSettings); i++) { + sfxSettings = &sSfxSettings[i]; + + if ((sfxSettings->pos == NULL) && (sfxSettingIndex == 0xFF)) { + sfxSettingIndex = i; + } + + if (sfxSettings->pos == pos) { + return sfxSettings; + } + } + + if (sfxSettingIndex != 0xFF) { + sSfxSettingsFlags |= 1 << sfxSettingIndex; + sfxSettings = &sSfxSettings[sfxSettingIndex]; + sfxSettings->pos = pos; + return sfxSettings; + } + + return NULL; +} + +void AudioSfx_ProcessSfxSettings(void) { + SfxBankEntry* entry; + u8 sfxSettingsFlags; + u8 sfxSettingIndex = 0; + u8 bankId; + u8 entryIndex; + s32 found; + + if (sSfxSettingsFlags != 0) { + sfxSettingsFlags = sSfxSettingsFlags; + + while (sfxSettingsFlags != 0) { + bankId = BANK_ENV; + if ((sfxSettingsFlags & (1 << sfxSettingIndex))) { + + found = false; + while ((bankId <= BANK_ENEMY) && !found) { + entryIndex = gSfxBanks[bankId]->next; + + while (entryIndex != 0xFF) { + entry = &gSfxBanks[bankId][entryIndex]; + entryIndex = 0xFF; + if (entry->posX == &sSfxSettings[sfxSettingIndex].pos->x) { + found = true; + } else { + entryIndex = entry->next; + } + } + bankId++; + } + + if (!found) { + sSfxSettingsFlags ^= (1 << sfxSettingIndex); + sSfxSettings[sfxSettingIndex].pos = NULL; + } + + sfxSettingsFlags ^= (1 << sfxSettingIndex); + } + sfxSettingIndex++; + } + } +} #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F420.s") @@ -3543,7 +4021,17 @@ f32 sSfxOriginalPos[] = { 0.0f, 0.0f, 0.0f }; #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F540.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F570.s") +void AudioSfx_LowerSfxSettingsReverb(Vec3f* pos, s8 isReverbLowered) { + SfxSettings* sfxSettings = AudioSfx_AddSfxSetting(pos); + + if (sfxSettings != NULL) { + if (isReverbLowered) { + sfxSettings->reverbAdd = -0x80; + } else { + sfxSettings->reverbAdd = 0; + } + } +} #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_8019F5AC.s") @@ -3585,15 +4073,15 @@ f32 sSfxOriginalPos[] = { 0.0f, 0.0f, 0.0f }; * Used for EnRiverSound */ void Audio_PlaySfxForRiver(Vec3f* pos, f32 freqScale) { - if (!Audio_IsSfxPlaying(NA_SE_EV_RIVER_STREAM - SFX_FLAG)) { + if (!AudioSfx_IsPlaying(NA_SE_EV_RIVER_STREAM - SFX_FLAG)) { sRiverFreqScaleLerp.value = freqScale; } else if (freqScale != sRiverFreqScaleLerp.value) { sRiverFreqScaleLerp.target = freqScale; sRiverFreqScaleLerp.remainingFrames = 40; sRiverFreqScaleLerp.step = (sRiverFreqScaleLerp.target - sRiverFreqScaleLerp.value) / 40; } - Audio_PlaySfxGeneral(NA_SE_EV_RIVER_STREAM - SFX_FLAG, pos, 4, &sRiverFreqScaleLerp.value, &D_801DB4B0, - &gSfxDefaultReverb); + AudioSfx_PlaySfx(NA_SE_EV_RIVER_STREAM - SFX_FLAG, pos, 4, &sRiverFreqScaleLerp.value, &gSfxDefaultFreqAndVolScale, + &gSfxDefaultReverb); } /** @@ -3601,15 +4089,15 @@ void Audio_PlaySfxForRiver(Vec3f* pos, f32 freqScale) { * Used for Zora's River Waterfall */ void Audio_PlaySfxForWaterfall(Vec3f* pos, f32 freqScale) { - if (!Audio_IsSfxPlaying(NA_SE_EV_WATER_WALL_BIG - SFX_FLAG)) { + if (!AudioSfx_IsPlaying(NA_SE_EV_WATER_WALL_BIG - SFX_FLAG)) { sWaterfallFreqScaleLerp.value = freqScale; } else if (freqScale != sWaterfallFreqScaleLerp.value) { sWaterfallFreqScaleLerp.target = freqScale; sWaterfallFreqScaleLerp.remainingFrames = 40; sWaterfallFreqScaleLerp.step = (sWaterfallFreqScaleLerp.target - sWaterfallFreqScaleLerp.value) / 40; } - Audio_PlaySfxGeneral(NA_SE_EV_WATER_WALL_BIG - SFX_FLAG, pos, 4, &sWaterfallFreqScaleLerp.value, - &sWaterfallFreqScaleLerp.value, &gSfxDefaultReverb); + AudioSfx_PlaySfx(NA_SE_EV_WATER_WALL_BIG - SFX_FLAG, pos, 4, &sWaterfallFreqScaleLerp.value, + &sWaterfallFreqScaleLerp.value, &gSfxDefaultReverb); } /** @@ -3626,6 +4114,9 @@ void Audio_StepFreqLerp(FreqLerp* lerp) { } } +f32 sBigBellsVolume[8] = { + 1.0f, 0.9f, 0.8f, 0.7f, 0.6f, 0.5f, 0.4f, 0.3f, +}; #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A0124.s") #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A0184.s") @@ -3652,7 +4143,7 @@ void Audio_SetGanonsTowerBgmVolumeLevel(u8 ganonsTowerLevel) { for (channelIndex = 0; channelIndex < 16; channelIndex++) { // CHAN_UPD_PAN_UNSIGNED - Audio_QueueCmdS8(((u8)(u32)channelIndex << 8) | 0x7000000, pan); + AudioThread_QueueCmdS8(((u8)(u32)channelIndex << 8) | 0x7000000, pan); } // Lowest room in Ganon's Tower (Entrance Room) @@ -3710,9 +4201,9 @@ s32 Audio_SetGanonsTowerBgmVolume(u8 targetVolume) { } // CHAN_UPD_REVERB - Audio_QueueCmdS8(_SHIFTL(5, 24, 8) | _SHIFTL(SEQ_PLAYER_BGM_MAIN, 16, 8) | - _SHIFTL(channelIndex, 8, 8), - (u8)reverb); + AudioThread_QueueCmdS8(_SHIFTL(5, 24, 8) | _SHIFTL(SEQ_PLAYER_BGM_MAIN, 16, 8) | + _SHIFTL(channelIndex, 8, 8), + (u8)reverb); } } } @@ -3768,7 +4259,29 @@ void Audio_UpdateRiverSoundVolumes(void) { #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A05F0.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A0654.s") +void AudioSfx_SetChannelIO(Vec3f* pos, u16 sfxId, u8 ioData) { + u8 channelIndex = 0; + u8 bankId = SFX_BANK_SHIFT(sfxId); + u8 entryIndex; + u8 i; + + for (i = 0; i < bankId; i++) { + channelIndex += gChannelsPerBank[gSfxChannelLayout][i]; + } + + for (i = 0; i < gChannelsPerBank[gSfxChannelLayout][bankId]; i++) { + entryIndex = gActiveSfx[bankId][i].entryIndex; + + if (entryIndex != 0xFF) { + if ((sfxId == gSfxBanks[bankId][entryIndex].sfxId) && (&pos->x == gSfxBanks[bankId][entryIndex].posX)) { + AudioThread_QueueCmdS8(_SHIFTL(6, 24, 8) | _SHIFTL(SEQ_PLAYER_SFX, 16, 8) | + _SHIFTL(channelIndex, 8, 8) | _SHIFTL(6, 0, 8), + ioData); + } + } + channelIndex++; + } +} #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A0810.s") @@ -3814,7 +4327,7 @@ void func_801A09D4(Vec3f* pos, f32 xzDistToPlayer) { if (channelIndex != 9) { Audio_QueueSeqCmd(((u32)(6) << 28) | ((u32)(SEQ_PLAYER_BGM_MAIN) << 24) | ((u32)(2) << 16) | ((u32)(channelIndex) << 8) | ((u8)(127.0f * volumeRel))); - Audio_QueueCmdS8(0x03000000 | ((u8)((u32)channelIndex) << 8), pan); + AudioThread_QueueCmdS8(0x03000000 | ((u8)((u32)channelIndex) << 8), pan); } } } @@ -3837,6 +4350,7 @@ void Audio_ClearSariaBgmAtPos(Vec3f* pos) { } } +u8 sBgmPlayers[2] = { SEQ_PLAYER_BGM_MAIN, SEQ_PLAYER_BGM_SUB }; void Audio_SplitBgmChannels(s8 volumeSplit); #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/Audio_SplitBgmChannels.s") @@ -4043,6 +4557,7 @@ void Audio_ClearSariaBgm2(void) { #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A46F8.s") +f32 sSfxOriginalPos[] = { 0.0f, 0.0f, 0.0f }; #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A4748.s") #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A479C.s") @@ -4053,11 +4568,27 @@ void Audio_ClearSariaBgm2(void) { #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A4A28.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A4B80.s") +u32 Audio_SetNatureAmbienceRandomBend(u8 seqScriptValIn, SequenceChannel* channel); +#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/Audio_SetNatureAmbienceRandomBend.s") -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A4C30.s") +void Audio_Init(void) { + AudioLoad_Init(NULL, 0); +} -#pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A4C54.s") +void AudioSfx_Init(u16 fadeTimer) { + u8 channelIndex; + + AudioThread_ScheduleProcessCmds(); + Audio_StartSequence(SEQ_PLAYER_SFX, NA_BGM_GENERAL_SFX, 0x70, fadeTimer); + + for (channelIndex = 0; channelIndex < ARRAY_COUNT(sSfxChannelState); channelIndex++) { + AudioThread_QueueCmdS32(0x10 << 24 | SEQ_PLAYER_SFX << 16 | ((u8)(u32)channelIndex << 8), + &sSfxChannelState[channelIndex]); + } + + AudioThread_QueueCmdS32(0xE4000000, AudioSfx_SetFreqAndStereoBits); + AudioThread_QueueCmdS32(0xE4000001, Audio_SetNatureAmbienceRandomBend); +} #pragma GLOBAL_ASM("asm/non_matchings/code/code_8019AF00/func_801A4D00.s") diff --git a/src/code/audio/code_801A5BD0.c b/src/code/audio/code_801A5BD0.c index 38e4ff187a..4cf1147bfa 100644 --- a/src/code/audio/code_801A5BD0.c +++ b/src/code/audio/code_801A5BD0.c @@ -1,45 +1,951 @@ #include "global.h" -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/Audio_SetSfxBanksMute.s") +typedef struct { + /* 0x00 */ u16 sfxId; + /* 0x02 */ u8 token; + /* 0x04 */ s8* reverbAdd; + /* 0x08 */ Vec3f* pos; + /* 0x0C */ f32* freqScale; + /* 0x10 */ f32* volume; +} SfxRequest; // size = 0x14 -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/Audio_SetFlagForBgmVolumeLow.s") +typedef struct { + /* 0x0 */ f32 value; + /* 0x4 */ f32 target; + /* 0x8 */ f32 step; + /* 0xC */ u16 remainingFrames; +} SfxBankLerp; // size = 0x10 -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/Audio_ClearFlagForBgmVolumeLow.s") +typedef enum { + /* 0 */ SFX_RM_REQ_BY_BANK, + /* 1 */ SFX_RM_REQ_BY_POS_AND_BANK, + /* 2 */ SFX_RM_REQ_BY_POS, + /* 3 */ SFX_RM_REQ_BY_POS_AND_ID, + /* 4 */ SFX_RM_REQ_BY_TOKEN_AND_ID, + /* 5 */ SFX_RM_REQ_BY_ID +} SfxRemoveRequest; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/Audio_PlaySfxGeneral.s") +SfxBankEntry sSfxPlayerBank[9]; +SfxBankEntry sSfxItemBank[12]; +SfxBankEntry sSfxEnvironmentBank[32]; +SfxBankEntry sSfxEnemyBank[20]; +SfxBankEntry sSfxSystemBank[8]; +SfxBankEntry sSfxOcarinaBank[3]; +SfxBankEntry sSfxVoiceBank[5]; +SfxRequest sSfxRequests[0x100]; +u8 sSfxBankListEnd[7]; +u8 sSfxBankFreeListStart[7]; +u8 sSfxBankUnused[7]; +ActiveSfx gActiveSfx[7][3]; +u8 sCurSfxPlayerChannelIndex; +u8 gSfxBankMuted[7]; +SfxBankLerp sSfxBankLerp[7]; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A5DDC.s") +// sSfxRequests ring buffer endpoints. read index <= write index, wrapping around mod 256. +u8 sSfxRequestWriteIndex = 0; +u8 sSfxRequestReadIndex = 0; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A5F7C.s") +/** + * Array of pointers to arrays of SfxBankEntry of sizes: 9, 12, 32, 20, 8, 3, 5 + * + * 0 : Player Bank size 9 + * 1 : Item Bank size 12 + * 2 : Environment Bank size 32 + * 3 : Enemy Bank size 20 + * 4 : System Bank size 8 + * 5 : Ocarina Bank size 3 + * 6 : Voice Bank size 5 + */ +SfxBankEntry* gSfxBanks[7] = { + sSfxPlayerBank, sSfxItemBank, sSfxEnvironmentBank, sSfxEnemyBank, sSfxSystemBank, sSfxOcarinaBank, sSfxVoiceBank, +}; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A6430.s") +u8 sSfxBankSizes[ARRAY_COUNT(gSfxBanks)] = { + ARRAY_COUNT(sSfxPlayerBank), ARRAY_COUNT(sSfxItemBank), ARRAY_COUNT(sSfxEnvironmentBank), + ARRAY_COUNT(sSfxEnemyBank), ARRAY_COUNT(sSfxSystemBank), ARRAY_COUNT(sSfxOcarinaBank), + ARRAY_COUNT(sSfxVoiceBank), +}; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A65C8.s") +u8 gSfxChannelLayout = 0; +u16 sSfxChannelLowVolumeFlag = 0; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A6D0C.s") +// The center of the screen in projected coordinates. +// Gives the impression that the sfx has no specific location +Vec3f gSfxDefaultPos = { 0.0f, 0.0f, 0.0f }; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A7084.s") +// Reused as either frequency or volume multiplicative scaling factor +// Does not alter or change frequency or volume +f32 gSfxDefaultFreqAndVolScale = 1.0f; +s32 D_801DB4B4 = 0; // unused -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A7168.s") +// Adds no reverb to the existing reverb +s8 gSfxDefaultReverb = 0; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A7284.s") +void AudioSfx_MuteBanks(u16 muteMask) { + u8 bankId; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/Audio_StopSfxByPos.s") + for (bankId = 0; bankId < ARRAY_COUNT(gSfxBanks); bankId++) { + if (muteMask & 1) { + gSfxBankMuted[bankId] = true; + } else { + gSfxBankMuted[bankId] = false; + } + muteMask = muteMask >> 1; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A7328.s") +/** + * Lowers volumes of both bgm players so that sfx can be more pronounced. + * Each sfx channel stores its own bit to lower the volume. + * Only a single channel needs to request this to lower the volume. + */ +void AudioSfx_LowerBgmVolume(u8 channelIndex) { + sSfxChannelLowVolumeFlag |= (1 << channelIndex); -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A7484.s") + Audio_SetVolumeScale(SEQ_PLAYER_BGM_MAIN, 2, 0x40, 0xF); + Audio_SetVolumeScale(SEQ_PLAYER_BGM_SUB, 2, 0x40, 0xF); +} -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/Audio_StopSfxById.s") +/** + * Clears the flag for the specific channel to lower volume. + * If all flags are cleared, then both bgm players return to full volume + */ +void AudioSfx_RestoreBgmVolume(u8 channelIndex) { + sSfxChannelLowVolumeFlag &= ((1 << channelIndex) ^ 0xFFFF); -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A7720.s") + if (sSfxChannelLowVolumeFlag == 0) { + Audio_SetVolumeScale(SEQ_PLAYER_BGM_MAIN, 2, 0x7F, 0xF); + Audio_SetVolumeScale(SEQ_PLAYER_BGM_SUB, 2, 0x7F, 0xF); + } +} -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A7794.s") +/** + * The main function to request a sfx. All sfx requests begin here. + */ +void AudioSfx_PlaySfx(u16 sfxId, Vec3f* pos, u8 token, f32* freqScale, f32* volume, s8* reverbAdd) { + u8 i; + SfxRequest* reqWrite; + SfxRequest* reqRead; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A7828.s") + if (!gSfxBankMuted[SFX_BANK_SHIFT(sfxId)]) { + reqWrite = &sSfxRequests[sSfxRequestWriteIndex]; -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A787C.s") + for (i = sSfxRequestReadIndex; sSfxRequestWriteIndex != i; i++) { + reqRead = &sSfxRequests[i]; + if ((reqRead->pos == pos) && (reqRead->sfxId == sfxId)) { + return; + } + } -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/Audio_IsSfxPlaying.s") + reqWrite->sfxId = sfxId; + reqWrite->pos = pos; + reqWrite->token = token; + reqWrite->freqScale = freqScale; + reqWrite->volume = volume; + reqWrite->reverbAdd = reverbAdd; + sSfxRequestWriteIndex++; + } +} -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A5BD0/func_801A794C.s") +void AudioSfx_RemoveMatchingRequests(u8 aspect, SfxBankEntry* entry) { + SfxRequest* req; + s32 remove; + u8 i = sSfxRequestReadIndex; + + for (; i != sSfxRequestWriteIndex; i++) { + remove = false; + req = &sSfxRequests[i]; + + switch (aspect) { + case SFX_RM_REQ_BY_BANK: + if (SFX_BANK_MASK(req->sfxId) == SFX_BANK_MASK(entry->sfxId)) { + remove = true; + } + break; + + case SFX_RM_REQ_BY_POS_AND_BANK: + if ((SFX_BANK_MASK(req->sfxId) == SFX_BANK_MASK(entry->sfxId)) && (&req->pos->x == entry->posX)) { + remove = true; + } + break; + + case SFX_RM_REQ_BY_POS: + if (&req->pos->x == entry->posX) { + remove = true; + } + break; + + case SFX_RM_REQ_BY_POS_AND_ID: + if ((&req->pos->x == entry->posX) && (req->sfxId == entry->sfxId)) { + remove = true; + } + break; + + case SFX_RM_REQ_BY_TOKEN_AND_ID: + if ((req->token == entry->token) && (req->sfxId == entry->sfxId)) { + remove = true; + } + break; + + case SFX_RM_REQ_BY_ID: + if (req->sfxId == entry->sfxId) { + remove = true; + } + break; + + default: + break; + } + + if (remove) { + req->sfxId = 0; + } + } +} + +void AudioSfx_ProcessRequest(void) { + u16 sfxId; + u8 channelCount; + u8 index; + SfxRequest* req = &sSfxRequests[sSfxRequestReadIndex]; + SfxBankEntry* entry; + SfxParams* sfxParams; + s32 bankId; + u8 evictImportance; + u8 evictIndex = 0x80; + + if (req->sfxId == 0) { + return; + } + + bankId = SFX_BANK(req->sfxId); + channelCount = 0; + index = gSfxBanks[bankId][0].next; + + // Compare the sfx request to all sfx bank entries + while ((index != 0xFF) && (index != 0)) { + + // If an existing sfx from the same source exists in the bank, then we should either: + // renew if it is the same sfx, check if any sfx channels are available for that bank, + // interrupt that sfx and replace it with the new sfx request, or drop the new sfx request. + if (gSfxBanks[bankId][index].posX == &req->pos->x) { + + // If the new sfx has equal importance to the existing sfx, + // drop the request if the existing sfx has the "SFX_FLAG_BLOCK_EQUAL_IMPORTANCE" flag. + // Otherwise, keep processing the new sfx request + if ((gSfxParams[SFX_BANK_SHIFT(req->sfxId)][SFX_INDEX(req->sfxId)].params & + SFX_FLAG_BLOCK_EQUAL_IMPORTANCE) && + (gSfxParams[SFX_BANK_SHIFT(req->sfxId)][SFX_INDEX(req->sfxId)].importance == + gSfxBanks[bankId][index].sfxImportance)) { + // Drop the new request + return; + } + + if (gSfxBanks[bankId][index].sfxId == req->sfxId) { + // The new sfx is the same as the existing sfx + // Set channelCount to max value to reprocess the sfx + channelCount = gUsedChannelsPerBank[gSfxChannelLayout][bankId]; + } else { + // Determine which sfx to evict based on importance if there are no more channels available + if (channelCount == 0) { + // If this is the first sfx at the same source, than store the existing sfx info into evict temps + evictIndex = index; + sfxId = gSfxBanks[bankId][index].sfxId & 0xFFFF; + evictImportance = gSfxParams[SFX_BANK_SHIFT(sfxId)][SFX_INDEX(sfxId)].importance; + } else if (gSfxBanks[bankId][index].sfxImportance < evictImportance) { + // If a different existing sfx is at the same source, than update the evict temps if the next + // existing src has lower importance than the previous existing source + evictIndex = index; + sfxId = gSfxBanks[bankId][index].sfxId & 0xFFFF; + evictImportance = gSfxParams[SFX_BANK_SHIFT(sfxId)][SFX_INDEX(sfxId)].importance; + } + + channelCount++; + + // There are no channels available, evict the lowest importance + if (channelCount == gUsedChannelsPerBank[gSfxChannelLayout][bankId]) { + if (gSfxParams[SFX_BANK_SHIFT(req->sfxId)][SFX_INDEX(req->sfxId)].importance >= evictImportance) { + index = evictIndex; + } else { + index = 0; + } + } + } + + // Process this sfx by refreshing or replacing and existing sfx + if (channelCount == gUsedChannelsPerBank[gSfxChannelLayout][bankId]) { + sfxParams = &gSfxParams[SFX_BANK_SHIFT(req->sfxId)][SFX_INDEX(req->sfxId)]; + + // Interrupt existing sfx and play the new sfx instead. + if ((req->sfxId & SFX_FLAG_MASK) || (sfxParams->flags & SFX_FLAG2_FORCE_RESET) || + (index == evictIndex)) { + + // Restore bgm if the sfx about to be replaced has the right flag + if ((gSfxBanks[bankId][index].sfxParams & SFX_FLAG_LOWER_VOLUME_BGM) && + (gSfxBanks[bankId][index].state != SFX_STATE_QUEUED)) { + AudioSfx_RestoreBgmVolume(gSfxBanks[bankId][index].channelIndex); + } + + gSfxBanks[bankId][index].token = req->token; + gSfxBanks[bankId][index].sfxId = req->sfxId; + gSfxBanks[bankId][index].state = SFX_STATE_QUEUED; + gSfxBanks[bankId][index].freshness = 2; + gSfxBanks[bankId][index].freqScale = req->freqScale; + gSfxBanks[bankId][index].volume = req->volume; + gSfxBanks[bankId][index].reverbAdd = req->reverbAdd; + gSfxBanks[bankId][index].sfxParams = sfxParams->params; + gSfxBanks[bankId][index].sfxFlags = sfxParams->flags; + gSfxBanks[bankId][index].sfxImportance = sfxParams->importance; + } else if (gSfxBanks[bankId][index].state == SFX_STATE_PLAYING_ONE_FRAME) { + // The new sfx is "one-frame" and equals the existing sfx, + // continue playing the "one-frame" sfx by setting "SFX_STATE_PLAYING". + // This will avoid triggering deletion and get "SFX_STATE_REFRESH" + // The state will be set back to "SFX_STATE_PLAYING_ONE_FRAME" at the end of the cycle + gSfxBanks[bankId][index].state = SFX_STATE_PLAYING; + } + // Terminate loop, function is finished (nothing more is processed) + index = 0; + } + } + + if (index != 0) { + index = gSfxBanks[bankId][index].next; + } + } + + if ((gSfxBanks[bankId][sSfxBankFreeListStart[bankId]].next != 0xFF) && (index != 0)) { + // Allocate from free list + index = sSfxBankFreeListStart[bankId]; + + entry = &gSfxBanks[bankId][index]; + entry->posX = &req->pos->x; + entry->posY = &req->pos->y; + entry->posZ = &req->pos->z; + entry->token = req->token; + entry->freqScale = req->freqScale; + entry->volume = req->volume; + entry->reverbAdd = req->reverbAdd; + + sfxParams = &gSfxParams[SFX_BANK_SHIFT(req->sfxId)][SFX_INDEX(req->sfxId)]; + + entry->sfxParams = sfxParams->params; + entry->sfxFlags = sfxParams->flags; + entry->sfxImportance = sfxParams->importance; + entry->sfxId = req->sfxId; + entry->state = SFX_STATE_QUEUED; + entry->freshness = 2; + entry->prev = sSfxBankListEnd[bankId]; + + gSfxBanks[bankId][sSfxBankListEnd[bankId]].next = sSfxBankFreeListStart[bankId]; + sSfxBankListEnd[bankId] = sSfxBankFreeListStart[bankId]; + sSfxBankFreeListStart[bankId] = gSfxBanks[bankId][sSfxBankFreeListStart[bankId]].next; + gSfxBanks[bankId][sSfxBankFreeListStart[bankId]].prev = 0xFF; + + entry->next = 0xFF; + } +} + +void AudioSfx_RemoveBankEntry(u8 bankId, u8 entryIndex) { + SfxBankEntry* entry = &gSfxBanks[bankId][entryIndex]; + u8 i; + + if (entry->sfxParams & SFX_FLAG_LOWER_VOLUME_BGM) { + AudioSfx_RestoreBgmVolume(entry->channelIndex); + } + + if (entryIndex == sSfxBankListEnd[bankId]) { + sSfxBankListEnd[bankId] = entry->prev; + } else { + gSfxBanks[bankId][entry->next].prev = entry->prev; + } + + gSfxBanks[bankId][entry->prev].next = entry->next; + entry->next = sSfxBankFreeListStart[bankId]; + entry->prev = 0xFF; + gSfxBanks[bankId][sSfxBankFreeListStart[bankId]].prev = entryIndex; + sSfxBankFreeListStart[bankId] = entryIndex; + entry->state = SFX_STATE_EMPTY; + + for (i = 0; i < gChannelsPerBank[gSfxChannelLayout][bankId]; i++) { + if (gActiveSfx[bankId][i].entryIndex == entryIndex) { + gActiveSfx[bankId][i].entryIndex = 0xFF; + i = gChannelsPerBank[gSfxChannelLayout][bankId]; + } + } +} + +void AudioSfx_ChooseActiveSfx(u8 bankId) { + u8 numChosenSfx = 0; + u8 numChannels; + u8 entryIndex; + u8 i; + u8 j; + u8 k; + u8 sfxImportance; + u8 needNewSfx; + u8 chosenEntryIndex; + s32 pad; + SfxBankEntry* entry; + ActiveSfx chosenSfx[MAX_CHANNELS_PER_BANK]; + ActiveSfx* activeSfx; + f32 entryPosY; + f32 entryPosX; + + for (i = 0; i < MAX_CHANNELS_PER_BANK; i++) { + chosenSfx[i].priority = 0x7FFFFFFF; + chosenSfx[i].entryIndex = 0xFF; + } + + entryIndex = gSfxBanks[bankId][0].next; + k = 0; + + // Delete stale sfx and prioritize remaining sfx into the gActiveSfx arrays + while (entryIndex != 0xFF) { + + // Update the freshness for an "all-frame" sfx if it is still queued + if ((gSfxBanks[bankId][entryIndex].state == SFX_STATE_QUEUED) && + (gSfxBanks[bankId][entryIndex].sfxId & SFX_FLAG_MASK)) { + gSfxBanks[bankId][entryIndex].freshness--; + + // If a "one-frame" sfx is still in "SFX_STATE_PLAYING_ONE_FRAME", then remove the sfx + } else if (!(gSfxBanks[bankId][entryIndex].sfxId & SFX_FLAG_MASK) && + (gSfxBanks[bankId][entryIndex].state == SFX_STATE_PLAYING_ONE_FRAME)) { + // CHAN_UPD_SCRIPT_IO (ioPort 0, force stop sfx in seq 0) + AudioThread_QueueCmdS8( + (0x6 << 24) | (SEQ_PLAYER_SFX << 16) | (gSfxBanks[bankId][entryIndex].channelIndex << 8), 0); + AudioSfx_RemoveBankEntry(bankId, entryIndex); + } + + // If a "all-frame" sfx goes 2 frames in the "queued" state + // (because it is too low priority), then remove the sfx + if (gSfxBanks[bankId][entryIndex].freshness == 0) { + AudioSfx_RemoveBankEntry(bankId, entryIndex); + } else if (gSfxBanks[bankId][entryIndex].state != SFX_STATE_EMPTY) { + // process the entry + entry = &gSfxBanks[bankId][entryIndex]; + + // Recompute distSq each frame since the sound's position may have changed + // (later converted into dist) + if (&gSfxDefaultPos.x == entry[0].posX) { + entry->dist = 0.0f; + } else { + entryPosY = *entry->posY * 1; + entryPosX = *entry->posX * 0.5f; + entry->dist = (SQ(entryPosX) + SQ(entryPosY) + SQ(*entry->posZ)) / 10.0f; + } + + // Recompute priority, possibly based on sfx position relative to the camera. + // (Note that the priority is the opposite of importance; lower is more preserved) + sfxImportance = entry->sfxImportance; + + if (entry->sfxParams & SFX_FLAG_PRIORITY_NO_DIST) { + // Priority is independent of distance + entry->priority = SQ(0xFF - sfxImportance) * SQ(76); + } else { + // Priority value increases with distance (more likely to eject) + if (entry->dist > 0x7FFFFFD0) { + // max distance + entry->dist = 0x70000008; + } + + entry->priority = (u32)entry->dist + (SQ(0xFF - sfxImportance) * SQ(76)); + if (*entry->posZ < 0.0f) { + entry->priority += (s32)(-*entry->posZ * 6.0f); + } + } + + // Sfx is too far away, do not consider for chosen sfx + if (entry->dist > SQ(1e5f)) { + + // If too far away and also playing, stop playing + if (entry->state == SFX_STATE_PLAYING) { + // CHAN_UPD_SCRIPT_IO (ioPort 0, force stop sfx in seq 0) + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | (entry->channelIndex << 8), 0); + if (entry->sfxId & SFX_FLAG_MASK) { + AudioSfx_RemoveBankEntry(bankId, entryIndex); + entryIndex = k; + } + } + } else { + // Loop through all channels allocated to a specific bank + // Choose which sfx from gSfxBanks to play + // This includes all sfx requests and sfx already playing + // Sort all current sfx entries in gSfxBanks by priority + // This is where the "active" sfx are chosen + numChannels = gChannelsPerBank[gSfxChannelLayout][bankId]; + + for (i = 0; i < numChannels; i++) { + // Sort all sfx entries by priority + if (chosenSfx[i].priority >= entry->priority) { + // Update the number of sfx to attampt to play + if (numChosenSfx < gChannelsPerBank[gSfxChannelLayout][bankId]) { + numChosenSfx++; + } + + for (j = numChannels - 1; j > i; j--) { + chosenSfx[j].priority = chosenSfx[j - 1].priority; + chosenSfx[j].entryIndex = chosenSfx[j - 1].entryIndex; + } + + chosenSfx[i].priority = entry->priority; + chosenSfx[i].entryIndex = entryIndex; + i = numChannels; // make this the last pass through the loop, here equivalent to "break" + } + } + } + + k = entryIndex; + } + + entryIndex = gSfxBanks[bankId][k].next; + } + + // If a sfx is chosen, update its state + for (i = 0; i < numChosenSfx; i++) { + entry = &gSfxBanks[bankId][chosenSfx[i].entryIndex]; + + if (entry->state == SFX_STATE_QUEUED) { + // sfx is a new entry + entry->state = SFX_STATE_READY; + } else if (entry->state == SFX_STATE_PLAYING) { + // sfx is already playing + entry->state = SFX_STATE_PLAYING_REFRESH; + } + } + + // Apply the chosenSfx to the activeSfx in each channel + numChannels = gChannelsPerBank[gSfxChannelLayout][bankId]; + for (i = 0; i < numChannels; i++) { + needNewSfx = false; + activeSfx = &gActiveSfx[bankId][i]; + + // Check if a sfx is already in the channel + if (activeSfx->entryIndex == 0xFF) { + // No sfx playing in the channel + // Available for use + needNewSfx = true; + } else { + // The channel is already playing a sfx + // Get the entry of the sfx playing + entry = &gSfxBanks[bankId][activeSfx[0].entryIndex]; + + // Check the state of the sfx playing + if (entry->state == SFX_STATE_PLAYING) { + if (entry->sfxId & SFX_FLAG_MASK) { + // For "all-frames" sfx, remove the entry + AudioSfx_RemoveBankEntry(bankId, activeSfx->entryIndex); + } else { + // For "one-frame" sfx, reset the state to queued + entry->state = SFX_STATE_QUEUED; + entry->freshness = 0x80; + } + needNewSfx = true; + } else if (entry->state == SFX_STATE_EMPTY) { + // The sfx already in the channel is empty + // Can replace the sfx + activeSfx->entryIndex = 0xFF; + needNewSfx = true; + } else { + // Sfx is already playing as it should, nothing to do. + for (j = 0; j < numChannels; j++) { + if (activeSfx->entryIndex == chosenSfx[j].entryIndex) { + chosenSfx[j].entryIndex = 0xFF; + j = numChannels; + } + } + + numChosenSfx--; + } + } + + // enter the new sfx into the activeSfx + if (needNewSfx == true) { + for (j = 0; j < numChannels; j++) { + chosenEntryIndex = chosenSfx[j].entryIndex; + if ((chosenEntryIndex != 0xFF) && + (gSfxBanks[bankId][chosenEntryIndex].state != SFX_STATE_PLAYING_REFRESH)) { + for (k = 0; k < numChannels; k++) { + if (chosenEntryIndex == gActiveSfx[bankId][k].entryIndex) { + needNewSfx = false; + k = numChannels; // "break; i.e. force for-loop to end" + } + } + + if (needNewSfx == true) { + activeSfx->entryIndex = chosenEntryIndex; + chosenSfx[j].entryIndex = 0xFF; + j = numChannels + 1; + numChosenSfx--; + } + } + } + if (j == numChannels) { + // nothing found + activeSfx->entryIndex = 0xFF; + } + } + } +} + +void AudioSfx_PlayActiveSfx(u8 bankId) { + u8 entryIndex; + SequenceChannel* channel; + SfxBankEntry* entry; + u8 i; + u8 ioPort5Data; + + for (i = 0; i < gChannelsPerBank[gSfxChannelLayout][bankId]; i++) { + entryIndex = gActiveSfx[bankId][i].entryIndex; + // If entry is not empty + if (entryIndex != 0xFF) { + entry = &gSfxBanks[bankId][entryIndex]; + channel = gAudioContext.seqPlayers[SEQ_PLAYER_SFX].channels[sCurSfxPlayerChannelIndex]; + + if (entry->state == SFX_STATE_READY) { + // Initialize a sfx (new sfx request) + entry->channelIndex = sCurSfxPlayerChannelIndex; + if (entry->sfxParams & SFX_FLAG_LOWER_VOLUME_BGM) { + AudioSfx_LowerBgmVolume(sCurSfxPlayerChannelIndex); + } + + // Add noise that will offset the frequency of the sfx + if ((entry->sfxParams & SFX_PARAM_RAND_FREQ_RAISE_MASK) != (0 << SFX_PARAM_RAND_FREQ_RAISE_SHIFT)) { + switch (entry->sfxParams & SFX_PARAM_RAND_FREQ_RAISE_MASK) { + case (1 << SFX_PARAM_RAND_FREQ_RAISE_SHIFT): + entry->randFreq = AudioThread_NextRandom() & 0xF; + break; + + case (2 << SFX_PARAM_RAND_FREQ_RAISE_SHIFT): + entry->randFreq = AudioThread_NextRandom() & 0x1F; + break; + + case (3 << SFX_PARAM_RAND_FREQ_RAISE_SHIFT): + entry->randFreq = AudioThread_NextRandom() & 0x3F; + break; + + default: + entry->randFreq = 0; + break; + } + } + + // Calculate all the properties of sfx + AudioSfx_SetProperties(bankId, entryIndex, sCurSfxPlayerChannelIndex); + + // CHAN_UPD_SCRIPT_IO (ioPort 0, enable the sfx to play in seq 0) + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | ((sCurSfxPlayerChannelIndex & 0xFF) << 8), + 1); + + // CHAN_UPD_SCRIPT_IO (ioPort 4, write the lower bits sfx index to seq 0 so it can find the right code + // to execute) + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | + ((sCurSfxPlayerChannelIndex & 0xFF) << 8) | 4, + entry->sfxId & 0xFF); + + // If the sfx bank has more than 255 entries (greater than a u8 can store), + // then store the Id in upper and lower bits + if (gIsLargeSfxBank[bankId]) { + // Store upper bits + ioPort5Data = ((u8)((entry->sfxId & 0x300) >> 7) + (u8)((entry->sfxId & 0xFF) >> 7)); + } else { + ioPort5Data = 0; + } + + if ((entry->sfxParams & SFX_FLAG_8) && (entry->freshness == 0x80)) { + ioPort5Data += 0x80; + } + + if (D_801D6608[bankId]) { + // CHAN_UPD_SCRIPT_IO (ioPort 5, write the upper bits sfx index and a flag to seq 0, for banks with + // > 0xFF entries) + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | + ((sCurSfxPlayerChannelIndex & 0xFF) << 8) | 5, + ioPort5Data); + } + + // Update playing state + if (entry->sfxId & SFX_FLAG_MASK) { + // "all-frames" sfx + entry->state = SFX_STATE_PLAYING; + } else { + // "one-frame" sfx + entry->state = SFX_STATE_PLAYING_ONE_FRAME; + } + } else if ((u8)channel->soundScriptIO[1] == 0xFF) { + // Signal from seq 0 that the sfx is finished playing. Remove entry + AudioSfx_RemoveBankEntry(bankId, entryIndex); + } else if (entry->state == SFX_STATE_PLAYING_REFRESH) { + // Sfx is playing but a refresh is requested + AudioSfx_SetProperties(bankId, entryIndex, sCurSfxPlayerChannelIndex); + + // Update playing state + if (entry->sfxId & SFX_FLAG_MASK) { + // "all-frames" sfx + entry->state = SFX_STATE_PLAYING; + } else { + // "one-frame" sfx + entry->state = SFX_STATE_PLAYING_ONE_FRAME; + } + } + } + + sCurSfxPlayerChannelIndex++; + } +} + +void AudioSfx_StopByBank(u8 bankId) { + SfxBankEntry* entry; + s32 pad; + SfxBankEntry entryToRemove; + u8 entryIndex = gSfxBanks[bankId][0].next; + + while (entryIndex != 0xFF) { + entry = &gSfxBanks[bankId][entryIndex]; + if (entry->state >= SFX_STATE_PLAYING_REFRESH) { + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | ((entry->channelIndex & 0xFF) << 8), 0); + } + + if (entry->state != SFX_STATE_EMPTY) { + AudioSfx_RemoveBankEntry(bankId, entryIndex); + } + entryIndex = gSfxBanks[bankId][0].next; + } + + entryToRemove.sfxId = bankId << 12; + AudioSfx_RemoveMatchingRequests(SFX_RM_REQ_BY_BANK, &entryToRemove); +} + +void AudioSfx_StopByPosAndBankImpl(u8 bankId, Vec3f* pos) { + SfxBankEntry* entry; + u8 entryIndex = gSfxBanks[bankId][0].next; + u8 prevEntryIndex = 0; + + while (entryIndex != 0xFF) { + entry = &gSfxBanks[bankId][entryIndex]; + if (entry->posX == &pos->x) { + if (entry->state >= SFX_STATE_PLAYING_REFRESH) { + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | ((entry->channelIndex & 0xFF) << 8), 0); + } + + if (entry->state != SFX_STATE_EMPTY) { + AudioSfx_RemoveBankEntry(bankId, entryIndex); + } + } else { + prevEntryIndex = entryIndex; + } + + entryIndex = gSfxBanks[bankId][prevEntryIndex].next; + } +} + +void AudioSfx_StopByPosAndBank(u8 bankId, Vec3f* pos) { + SfxBankEntry entryToRemove; + + AudioSfx_StopByPosAndBankImpl(bankId, pos); + entryToRemove.sfxId = bankId << 12; + entryToRemove.posX = &pos->x; + AudioSfx_RemoveMatchingRequests(SFX_RM_REQ_BY_POS_AND_BANK, &entryToRemove); +} + +void AudioSfx_StopByPos(Vec3f* pos) { + u8 bankId; + SfxBankEntry entryToRemove; + + for (bankId = 0; bankId < ARRAY_COUNT(gSfxBanks); bankId++) { + AudioSfx_StopByPosAndBankImpl(bankId, pos); + } + + entryToRemove.posX = &pos->x; + AudioSfx_RemoveMatchingRequests(SFX_RM_REQ_BY_POS, &entryToRemove); +} + +void AudioSfx_StopByPosAndId(Vec3f* pos, u16 sfxId) { + SfxBankEntry* entry; + u8 entryIndex = gSfxBanks[SFX_BANK(sfxId)][0].next; + u8 prevEntryIndex = 0; + SfxBankEntry entryToRemove; + + while (entryIndex != 0xFF) { + entry = &gSfxBanks[SFX_BANK(sfxId)][entryIndex]; + if ((entry->posX == &pos->x) && (entry->sfxId == sfxId)) { + if (entry->state >= SFX_STATE_PLAYING_REFRESH) { + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | ((entry->channelIndex & 0xFF) << 8), 0); + } + + if (entry->state != SFX_STATE_EMPTY) { + AudioSfx_RemoveBankEntry(SFX_BANK(sfxId), entryIndex); + } + entryIndex = 0xFF; + } else { + prevEntryIndex = entryIndex; + } + + if (entryIndex != 0xFF) { + entryIndex = gSfxBanks[SFX_BANK(sfxId)][prevEntryIndex].next; + } + } + + entryToRemove.posX = &pos->x; + entryToRemove.sfxId = sfxId; + AudioSfx_RemoveMatchingRequests(SFX_RM_REQ_BY_POS_AND_ID, &entryToRemove); +} + +void AudioSfx_StopByTokenAndId(u8 token, u16 sfxId) { + SfxBankEntry* entry; + u8 entryIndex = gSfxBanks[SFX_BANK(sfxId)][0].next; + u8 prevEntryIndex = 0; + SfxBankEntry entryToRemove; + + while (entryIndex != 0xFF) { + entry = &gSfxBanks[SFX_BANK(sfxId)][entryIndex]; + if ((entry->token == token) && (entry->sfxId == sfxId)) { + if (entry->state >= SFX_STATE_PLAYING_REFRESH) { + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | ((entry->channelIndex & 0xFF) << 8), 0); + } + + if (entry->state != SFX_STATE_EMPTY) { + AudioSfx_RemoveBankEntry(SFX_BANK(sfxId), entryIndex); + } + } else { + prevEntryIndex = entryIndex; + } + + if (entryIndex != 0xFF) { + entryIndex = gSfxBanks[SFX_BANK(sfxId)][prevEntryIndex].next; + } + } + + entryToRemove.token = token; + entryToRemove.sfxId = sfxId; + AudioSfx_RemoveMatchingRequests(SFX_RM_REQ_BY_TOKEN_AND_ID, &entryToRemove); +} + +void AudioSfx_StopById(u32 sfxId) { + SfxBankEntry* entry; + u8 entryIndex = gSfxBanks[SFX_BANK(sfxId)][0].next; + u8 prevEntryIndex = 0; + SfxBankEntry entryToRemove; + + while (entryIndex != 0xFF) { + entry = &gSfxBanks[SFX_BANK(sfxId)][entryIndex]; + if (entry->sfxId == sfxId) { + if (entry->state >= SFX_STATE_PLAYING_REFRESH) { + AudioThread_QueueCmdS8((0x6 << 24) | (SEQ_PLAYER_SFX << 16) | ((entry->channelIndex & 0xFF) << 8), 0); + } + if (entry->state != SFX_STATE_EMPTY) { + AudioSfx_RemoveBankEntry(SFX_BANK(sfxId), entryIndex); + } + } else { + prevEntryIndex = entryIndex; + } + + entryIndex = gSfxBanks[SFX_BANK(sfxId)][prevEntryIndex].next; + } + + entryToRemove.sfxId = sfxId; + AudioSfx_RemoveMatchingRequests(SFX_RM_REQ_BY_ID, &entryToRemove); +} + +void AudioSfx_ProcessRequests(void) { + if (gAudioContext.seqPlayers[SEQ_PLAYER_SFX].enabled) { + while (sSfxRequestWriteIndex != sSfxRequestReadIndex) { + AudioSfx_ProcessRequest(); + sSfxRequestReadIndex++; + } + } +} + +/** + * Unused + */ +void AudioSfx_SetBankLerp(u8 bankId, u8 target, u16 delay) { + if (delay == 0) { + delay++; + } + + sSfxBankLerp[bankId].target = target / 127.0f; + sSfxBankLerp[bankId].remainingFrames = delay; + sSfxBankLerp[bankId].step = ((sSfxBankLerp[bankId].value - sSfxBankLerp[bankId].target) / delay); +} + +/** + * Unused + */ +void AudioSfx_StepBankLerp(u8 bankId) { + if (sSfxBankLerp[bankId].remainingFrames != 0) { + sSfxBankLerp[bankId].remainingFrames--; + + if (sSfxBankLerp[bankId].remainingFrames != 0) { + sSfxBankLerp[bankId].value -= sSfxBankLerp[bankId].step; + } else { + sSfxBankLerp[bankId].value = sSfxBankLerp[bankId].target; + } + } +} + +void AudioSfx_ProcessActiveSfx(void) { + u8 bankId; + + if (gAudioContext.seqPlayers[SEQ_PLAYER_SFX].enabled) { + sCurSfxPlayerChannelIndex = 0; + + for (bankId = 0; bankId < ARRAY_COUNT(gSfxBanks); bankId++) { + AudioSfx_ChooseActiveSfx(bankId); + AudioSfx_PlayActiveSfx(bankId); + AudioSfx_StepBankLerp(bankId); + } + } +} + +u8 AudioSfx_IsPlaying(u32 sfxId) { + SfxBankEntry* entry; + u8 entryIndex = gSfxBanks[SFX_BANK(sfxId)][0].next; + + while (entryIndex != 0xFF) { + entry = &gSfxBanks[SFX_BANK(sfxId)][entryIndex]; + if (entry->sfxId == sfxId) { + return true; + } + entryIndex = entry->next; + } + + return false; +} + +void AudioSfx_Reset(void) { + u8 bankId; + u8 i; + u8 entryIndex; + + sSfxRequestWriteIndex = 0; + sSfxRequestReadIndex = 0; + sSfxChannelLowVolumeFlag = 0; + + for (bankId = 0; bankId < ARRAY_COUNT(gSfxBanks); bankId++) { + sSfxBankListEnd[bankId] = 0; + sSfxBankFreeListStart[bankId] = 1; + sSfxBankUnused[bankId] = 0; + gSfxBankMuted[bankId] = false; + sSfxBankLerp[bankId].value = 1.0f; + sSfxBankLerp[bankId].remainingFrames = 0; + } + + for (bankId = 0; bankId < ARRAY_COUNT(gSfxBanks); bankId++) { + for (i = 0; i < MAX_CHANNELS_PER_BANK; i++) { + gActiveSfx[bankId][i].entryIndex = 0xFF; + } + } + + for (bankId = 0; bankId < ARRAY_COUNT(gSfxBanks); bankId++) { + gSfxBanks[bankId][0].prev = 0xFF; + gSfxBanks[bankId][0].next = 0xFF; + + for (i = 1; i < sSfxBankSizes[bankId] - 1; i++) { + gSfxBanks[bankId][i].prev = i - 1; + gSfxBanks[bankId][i].next = i + 1; + } + + gSfxBanks[bankId][i].prev = i - 1; + gSfxBanks[bankId][i].next = 0xFF; + } +} diff --git a/src/code/audio/code_801A7B10.c b/src/code/audio/code_801A7B10.c index 6d3faaeabd..f2f37a0138 100644 --- a/src/code/audio/code_801A7B10.c +++ b/src/code/audio/code_801A7B10.c @@ -1,6 +1,6 @@ #include "global.h" -#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A7B10/func_801A7B10.s") +#pragma GLOBAL_ASM("asm/non_matchings/code/code_801A7B10/Audio_StartSequence.s") #pragma GLOBAL_ASM("asm/non_matchings/code/code_801A7B10/func_801A7D04.s") diff --git a/src/code/audioMgr.c b/src/code/audioMgr.c index ee60141373..ce21bda37e 100644 --- a/src/code/audioMgr.c +++ b/src/code/audioMgr.c @@ -78,7 +78,7 @@ void AudioMgr_ThreadEntry(void* arg) { s16* msg = NULL; s32 exit; - func_801A4C30(); + Audio_Init(); AudioLoad_SetDmaHandler(DmaMgr_DmaHandler); func_801A4D00(); osSendMesg(&audioMgr->lockMsgQ, NULL, OS_MESG_BLOCK); diff --git a/src/code/code_80172BC0.c b/src/code/code_80172BC0.c index 2ea9e6c679..94b55d4df7 100644 --- a/src/code/code_80172BC0.c +++ b/src/code/code_80172BC0.c @@ -9,7 +9,7 @@ void AudioMgr_StopAllSfxExceptSystem(void) { for (bankIdPtr = sSfxBankIds; bankIdPtr < (sSfxBankIds + ARRAY_COUNT(sSfxBankIds)); bankIdPtr++) { if (*bankIdPtr != BANK_SYSTEM) { - func_801A7084(*bankIdPtr); + AudioSfx_StopByBank(*bankIdPtr); } } } diff --git a/src/code/z_actor.c b/src/code/z_actor.c index 751327552c..fdd334b6e6 100644 --- a/src/code/z_actor.c +++ b/src/code/z_actor.c @@ -2127,7 +2127,8 @@ void func_800B8E58(Player* player, u16 sfxId) { if (player->currentMask == PLAYER_MASK_GIANT) { func_8019F170(&player->actor.projectedPos, sfxId); } else { - Audio_PlaySfxGeneral(sfxId, &player->actor.projectedPos, 4, &D_801DB4B0, &D_801DB4B0, &gSfxDefaultReverb); + AudioSfx_PlaySfx(sfxId, &player->actor.projectedPos, 4, &gSfxDefaultFreqAndVolScale, + &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); } } @@ -2567,7 +2568,8 @@ void func_800B9D1C(Actor* actor) { if (sfxId != 0) { if (actor->audioFlags & 2) { - Audio_PlaySfxGeneral(sfxId, &actor->projectedPos, 4, &D_801DB4B0, &D_801DB4B0, &gSfxDefaultReverb); + AudioSfx_PlaySfx(sfxId, &actor->projectedPos, 4, &gSfxDefaultFreqAndVolScale, &gSfxDefaultFreqAndVolScale, + &gSfxDefaultReverb); } else if (actor->audioFlags & 4) { play_sound(sfxId); } else if (actor->audioFlags & 8) { @@ -3338,7 +3340,7 @@ Actor* Actor_Delete(ActorContext* actorCtx, Actor* actor, PlayState* play) { actorCtx->targetContext.bgmEnemy = NULL; } - Audio_StopSfxByPos(&actor->projectedPos); + AudioSfx_StopByPos(&actor->projectedPos); Actor_Destroy(actor, play); newHead = Actor_RemoveFromCategory(play, actorCtx, actor); diff --git a/src/code/z_effect_soft_sprite.c b/src/code/z_effect_soft_sprite.c index 87f1958bd6..ea8a546d62 100644 --- a/src/code/z_effect_soft_sprite.c +++ b/src/code/z_effect_soft_sprite.c @@ -59,11 +59,11 @@ EffectSs* EffectSS_GetTable() { void EffectSS_Delete(EffectSs* effectSs) { if (effectSs->flags & 2) { - Audio_StopSfxByPos(&effectSs->pos); + AudioSfx_StopByPos(&effectSs->pos); } if (effectSs->flags & 4) { - Audio_StopSfxByPos(&effectSs->vec); + AudioSfx_StopByPos(&effectSs->vec); } EffectSS_ResetEntry(effectSs); diff --git a/src/code/z_sound_source.c b/src/code/z_sound_source.c index 2cdc3ab3aa..15ebd018a1 100644 --- a/src/code/z_sound_source.c +++ b/src/code/z_sound_source.c @@ -16,7 +16,7 @@ void SoundSource_UpdateAll(PlayState* play) { for (i = 0; i < ARRAY_COUNT(play->soundSources); i++) { if (source->countdown != 0) { if (DECR(source->countdown) == 0) { - Audio_StopSfxByPos(&source->projectedPos); + AudioSfx_StopByPos(&source->projectedPos); } else { SkinMatrix_Vec3fMtxFMultXYZ(&play->viewProjectionMtxF, &source->worldPos, &source->projectedPos); if (source->playSfxEachFrame) { @@ -54,7 +54,7 @@ void SoundSource_Add(PlayState* play, Vec3f* worldPos, u32 duration, u16 sfxId, // If no sound source is available, replace the sound source with the smallest remaining countdown if (i >= ARRAY_COUNT(play->soundSources)) { source = backupSource; - Audio_StopSfxByPos(&source->projectedPos); + AudioSfx_StopByPos(&source->projectedPos); } source->worldPos = *worldPos; diff --git a/src/overlays/actors/ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c b/src/overlays/actors/ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c index 555f927984..d849ab5ed9 100644 --- a/src/overlays/actors/ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c +++ b/src/overlays/actors/ovl_Bg_Dblue_Balance/z_bg_dblue_balance.c @@ -467,7 +467,7 @@ void func_80B82DE0(BgDblueBalance* this, PlayState* play) { phi_f2 = this->unk_178; temp2 = this->unk_17A; if ((phi_f2 * temp2) <= 0.0f) { - func_801A7328(&this->dyna.actor.projectedPos, NA_SE_EV_SEESAW_INCLINE - SFX_FLAG); + AudioSfx_StopByPosAndId(&this->dyna.actor.projectedPos, NA_SE_EV_SEESAW_INCLINE - SFX_FLAG); } phi_f2 *= 0.0022222223f; diff --git a/src/overlays/actors/ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c b/src/overlays/actors/ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c index 2bd5d103af..c42d96c0f3 100644 --- a/src/overlays/actors/ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c +++ b/src/overlays/actors/ovl_Bg_Dblue_Movebg/z_bg_dblue_movebg.c @@ -289,7 +289,7 @@ void BgDblueMovebg_Destroy(Actor* thisx, PlayState* play) { DynaPoly_DeleteBgActor(play, &play->colCtx.dyna, this->dyna.bgId); if ((this->unk_160 == 9) || (this->unk_160 == 8)) { - Audio_StopSfxByPos(&this->unk_1A8); + AudioSfx_StopByPos(&this->unk_1A8); } } diff --git a/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c b/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c index 5ee6bfcf54..c484100bf1 100644 --- a/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c +++ b/src/overlays/actors/ovl_Bg_Spdweb/z_bg_spdweb.c @@ -338,7 +338,7 @@ void func_809CE4C8(BgSpdweb* this, PlayState* play) { if (this->unk_164 > 3.0f) { Actor_PlaySfxAtPos(&this->dyna.actor, NA_SE_EV_WEB_VIBRATION); } else { - Audio_StopSfxById(NA_SE_EV_WEB_VIBRATION); + AudioSfx_StopById(NA_SE_EV_WEB_VIBRATION); } } diff --git a/src/overlays/actors/ovl_Boss_03/z_boss_03.c b/src/overlays/actors/ovl_Boss_03/z_boss_03.c index 32258b61de..75378de784 100644 --- a/src/overlays/actors/ovl_Boss_03/z_boss_03.c +++ b/src/overlays/actors/ovl_Boss_03/z_boss_03.c @@ -807,8 +807,8 @@ void Boss03_CatchPlayer(Boss03* this, PlayState* play) { if (this->unk_2B8 > 30.0f) { if ((&this->actor != player->actor.parent) && (play->grabPlayer(play, player) != 0)) { player->actor.parent = &this->actor; - Audio_PlaySfxGeneral(NA_SE_VO_LI_DAMAGE_S, &player->actor.projectedPos, 4, &D_801DB4B0, &D_801DB4B0, - &gSfxDefaultReverb); + AudioSfx_PlaySfx(NA_SE_VO_LI_DAMAGE_S, &player->actor.projectedPos, 4, &gSfxDefaultFreqAndVolScale, + &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); Boss03_SetupChewPlayer(this, play); } } else { @@ -1615,7 +1615,7 @@ void Boss03_DeathCutscene(Boss03* this, PlayState* play) { this->actor.focus.pos.z, 0, 0, 0, 0); this->csTimer = 0; Actor_SetScale(&this->actor, 0.0f); - Audio_StopSfxByPos(&this->actor.projectedPos); + AudioSfx_StopByPos(&this->actor.projectedPos); } break; diff --git a/src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c b/src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c index 5688dd43ce..51a2ba34a8 100644 --- a/src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c +++ b/src/overlays/actors/ovl_Dm_Stk/z_dm_stk.c @@ -530,7 +530,7 @@ void DmStk_PlaySfxForCurseCutsceneSecondPart(DmStk* this, PlayState* play) { break; case 365: - func_801A0654(&this->actor.projectedPos, NA_SE_EN_STALKIDS_FLOAT, 0); + AudioSfx_SetChannelIO(&this->actor.projectedPos, NA_SE_EN_STALKIDS_FLOAT, 0); break; case 650: @@ -730,7 +730,8 @@ void DmStk_PlaySfxForEndingCutsceneSecondPart(DmStk* this, PlayState* play) { break; case 2000: - Audio_SetSfxBanksMute(0x7F); + AudioSfx_MuteBanks((1 << BANK_PLAYER) | (1 << BANK_ITEM) | (1 << BANK_ENV) | (1 << BANK_ENEMY) | + (1 << BANK_SYSTEM) | (1 << BANK_OCARINA) | (1 << BANK_VOICE)); break; } diff --git a/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c b/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c index 9d73fb9eac..c57fd1c7b9 100644 --- a/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c +++ b/src/overlays/actors/ovl_Door_Warp1/z_door_warp1.c @@ -446,8 +446,8 @@ void func_808B977C(DoorWarp1* this, PlayState* play) { if (func_808B866C(this, play) && !Play_InCsMode(play)) { Player* player = GET_PLAYER(play); - Audio_PlaySfxGeneral(NA_SE_EV_LINK_WARP, &player->actor.projectedPos, 4, &D_801DB4B0, &D_801DB4B0, - &gSfxDefaultReverb); + AudioSfx_PlaySfx(NA_SE_EV_LINK_WARP, &player->actor.projectedPos, 4, &gSfxDefaultFreqAndVolScale, + &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); func_800B7298(play, &this->dyna.actor, 9); player->unk_3A0.x = this->dyna.actor.world.pos.x; player->unk_3A0.z = this->dyna.actor.world.pos.z; @@ -620,8 +620,8 @@ void func_808B9FD0(DoorWarp1* this, PlayState* play) { ActorCutscene_SetIntentToPlay(play->playerActorCsIds[9]); } else { ActorCutscene_Start(play->playerActorCsIds[9], NULL); - Audio_PlaySfxGeneral(NA_SE_EV_LINK_WARP, &player->actor.projectedPos, 4, &D_801DB4B0, &D_801DB4B0, - &gSfxDefaultReverb); + AudioSfx_PlaySfx(NA_SE_EV_LINK_WARP, &player->actor.projectedPos, 4, &gSfxDefaultFreqAndVolScale, + &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); Animation_ChangeImpl(&this->skelAnime, &object_warp1_Anim_001374, 1.0f, Animation_GetLastFrame(&object_warp1_Anim_001374.common), Animation_GetLastFrame(&object_warp1_Anim_001374.common), 2, 40.0f, 1); diff --git a/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c b/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c index f953f17ab5..12076537e6 100644 --- a/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c +++ b/src/overlays/actors/ovl_En_Bigslime/z_en_bigslime.c @@ -389,7 +389,7 @@ void EnBigslime_Destroy(Actor* thisx, PlayState* play) { } Collider_DestroyCylinder(play, &this->gekkoCollider); - Audio_StopSfxByPos(&this->gekkoProjectedPos); + AudioSfx_StopByPos(&this->gekkoProjectedPos); } void EnBigslime_DynamicVtxCopyState(EnBigslime* this) { diff --git a/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c b/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c index a9a156a6f9..a121309f16 100644 --- a/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c +++ b/src/overlays/actors/ovl_En_Bji_01/z_en_bji_01.c @@ -293,7 +293,8 @@ void EnBji01_DialogueHandler(EnBji01* this, PlayState* play) { } void func_809CD634(EnBji01* this, PlayState* play) { - Audio_SetSfxBanksMute(0x6F); + AudioSfx_MuteBanks((1 << BANK_PLAYER) | (1 << BANK_ITEM) | (1 << BANK_ENV) | (1 << BANK_ENEMY) | + (1 << BANK_OCARINA) | (1 << BANK_VOICE)); Audio_QueueSeqCmd(0xE0000101); play->nextEntranceIndex = 0x54A0; /* Termina Field from telescope */ gSaveContext.respawn[RESPAWN_MODE_DOWN].entranceIndex = play->nextEntranceIndex; @@ -350,7 +351,7 @@ void EnBji01_Init(Actor* thisx, PlayState* play) { break; case 0x4C20: /* Observatory from Termina Field telescope */ this->actor.flags |= ACTOR_FLAG_10000; - Audio_SetSfxBanksMute(0); + AudioSfx_MuteBanks(0); Audio_QueueSeqCmd(0xE0000100); this->actor.params = SHIKASHI_TYPE_LOOKED_THROUGH_TELESCOPE; func_809CCE98(this, play); diff --git a/src/overlays/actors/ovl_En_Geg/z_en_geg.c b/src/overlays/actors/ovl_En_Geg/z_en_geg.c index b3e98dde33..18adc2e83b 100644 --- a/src/overlays/actors/ovl_En_Geg/z_en_geg.c +++ b/src/overlays/actors/ovl_En_Geg/z_en_geg.c @@ -699,7 +699,7 @@ void func_80BB2B1C(EnGeg* this, PlayState* play) { } this->unk_4E0--; } - func_8019F570(&this->actor.projectedPos, 1); + AudioSfx_LowerSfxSettingsReverb(&this->actor.projectedPos, true); func_8019F4AC(&this->actor.projectedPos, NA_SE_EN_GOLON_SIRLOIN_EAT - SFX_FLAG); } diff --git a/src/overlays/actors/ovl_En_Horse/z_en_horse.c b/src/overlays/actors/ovl_En_Horse/z_en_horse.c index 1922a2f4bb..440043ba5c 100644 --- a/src/overlays/actors/ovl_En_Horse/z_en_horse.c +++ b/src/overlays/actors/ovl_En_Horse/z_en_horse.c @@ -934,7 +934,7 @@ void EnHorse_Destroy(Actor* thisx, PlayState* play) { EnHorse* this = THIS; if (this->stateFlags & ENHORSE_DRAW) { - Audio_StopSfxByPos(&this->unk_218); + AudioSfx_StopByPos(&this->unk_218); } Skin_Free(&play->state, &this->skin); Collider_DestroyCylinder(play, &this->colliderCylinder1); diff --git a/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c b/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c index 119131d48a..a738f872c2 100644 --- a/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c +++ b/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c @@ -771,10 +771,10 @@ void EnKakasi_PostSongLearnDialogue(EnKakasi* this, PlayState* play) { } else { this->talkState = TEXT_STATE_5; if (play->msgCtx.choiceIndex == 1) { - func_8019F208(); // play 0x4808 sfx (decide) and calls Audio_StopSfxById + func_8019F208(); // play 0x4808 sfx (decide) and calls AudioSfx_StopById this->picto.actor.textId = 0x164A; } else { - func_8019F230(); // play 0x480A sfx (cancel) and calls Audio_StopSfxById + func_8019F230(); // play 0x480A sfx (cancel) and calls AudioSfx_StopById this->picto.actor.textId = 0x1661; } } diff --git a/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c b/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c index c66f96bd54..83a94d271d 100644 --- a/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c +++ b/src/overlays/actors/ovl_En_Mm3/z_en_mm3.c @@ -366,7 +366,8 @@ void func_80A6F9DC(EnMm3* this, PlayState* play) { } void func_80A6FBA0(EnMm3* this) { - Audio_SetSfxBanksMute(0x6F); + AudioSfx_MuteBanks((1 << BANK_PLAYER) | (1 << BANK_ITEM) | (1 << BANK_ENV) | (1 << BANK_ENEMY) | + (1 << BANK_OCARINA) | (1 << BANK_VOICE)); func_801A0238(0, 5); gSaveContext.save.weekEventReg[63] |= 1; gSaveContext.save.weekEventReg[63] &= (u8)~2; @@ -391,7 +392,7 @@ void func_80A6FBFC(EnMm3* this, PlayState* play) { } if (Actor_ProcessTalkRequest(&this->actor, &play->state)) { - Audio_SetSfxBanksMute(0); + AudioSfx_MuteBanks(0); func_801A0238(0x7F, 5); Message_StartTextbox(play, 0x2791, &this->actor); this->unk_2B4 = 0x2791; diff --git a/src/overlays/actors/ovl_En_Poh/z_en_poh.c b/src/overlays/actors/ovl_En_Poh/z_en_poh.c index d165c12d56..9d1dca75ef 100644 --- a/src/overlays/actors/ovl_En_Poh/z_en_poh.c +++ b/src/overlays/actors/ovl_En_Poh/z_en_poh.c @@ -679,7 +679,7 @@ void func_80B2E230(EnPoh* this, PlayState* play) { } void func_80B2E3B0(EnPoh* this) { - func_801A7328(&this->actor.projectedPos, NA_SE_EN_PO_BIG_CRY - SFX_FLAG); + AudioSfx_StopByPosAndId(&this->actor.projectedPos, NA_SE_EN_PO_BIG_CRY - SFX_FLAG); Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_PO_LAUGH); this->actionFunc = func_80B2E3F8; } diff --git a/src/overlays/actors/ovl_En_Test6/z_en_test6.c b/src/overlays/actors/ovl_En_Test6/z_en_test6.c index 17587b32a1..6d532bbe87 100644 --- a/src/overlays/actors/ovl_En_Test6/z_en_test6.c +++ b/src/overlays/actors/ovl_En_Test6/z_en_test6.c @@ -593,9 +593,9 @@ void func_80A91760(EnTest6* this, PlayState* play) { (CHECK_BTN_ALL(input->press.button, BTN_A) || CHECK_BTN_ALL(input->press.button, BTN_B))) { this->unk_286 = 1; if (ENTEST6_GET(&this->actor) == ENTEST6_25) { - Audio_StopSfxById(NA_SE_SY_TIME_CONTROL_SLOW); + AudioSfx_StopById(NA_SE_SY_TIME_CONTROL_SLOW); } else if (ENTEST6_GET(&this->actor) == ENTEST6_24) { - Audio_StopSfxById(NA_SE_SY_TIME_CONTROL_NORMAL); + AudioSfx_StopById(NA_SE_SY_TIME_CONTROL_NORMAL); } } diff --git a/src/overlays/actors/ovl_En_Tru/z_en_tru.c b/src/overlays/actors/ovl_En_Tru/z_en_tru.c index 6599928547..88c97e9efe 100644 --- a/src/overlays/actors/ovl_En_Tru/z_en_tru.c +++ b/src/overlays/actors/ovl_En_Tru/z_en_tru.c @@ -994,7 +994,7 @@ s32 func_80A87DC0(Actor* thisx, PlayState* play) { break; case 2: - Audio_StopSfxById(NA_SE_EN_KOUME_MAGIC); + AudioSfx_StopById(NA_SE_EN_KOUME_MAGIC); Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_KOUME_AWAY); Actor_PlaySfxAtPos(&this->actor, NA_SE_EN_KOUME_LAUGH); func_80A86924(this, 13); diff --git a/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c b/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c index c2ed3f3a11..16cfa6a4b3 100644 --- a/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c +++ b/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c @@ -247,7 +247,7 @@ void EnWallmas_WaitToDrop(EnWallmas* this, PlayState* play) { (player->actor.freezeTimer > 0) || !(player->actor.bgCheckFlags & 1) || ((WALLMASTER_GET_TYPE(&this->actor) == WALLMASTER_TYPE_PROXIMITY) && (Math_Vec3f_DistXZ(&this->actor.home.pos, playerPos) > (120.f + this->detectionRadius)))) { - Audio_StopSfxById(NA_SE_EN_FALL_AIM); + AudioSfx_StopById(NA_SE_EN_FALL_AIM); this->timer = 130; } diff --git a/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c b/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c index c14a5213a6..7625b403f8 100644 --- a/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c +++ b/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c @@ -254,8 +254,8 @@ void ObjSyokudai_Update(Actor* thisx, PlayState* play2) { OBJ_SYOKUDAI_SNUFF_TIMER_INITIAL(groupSize) + OBJ_SYOKUDAI_SNUFF_TIMER_JUST_LIT_BONUS; } } - Audio_PlaySfxGeneral(NA_SE_EV_FLAME_IGNITION, &thisx->projectedPos, 4, &D_801DB4B0, &D_801DB4B0, - &gSfxDefaultReverb); + AudioSfx_PlaySfx(NA_SE_EV_FLAME_IGNITION, &thisx->projectedPos, 4, &gSfxDefaultFreqAndVolScale, + &gSfxDefaultFreqAndVolScale, &gSfxDefaultReverb); } } } diff --git a/src/overlays/actors/ovl_Obj_Um/z_obj_um.c b/src/overlays/actors/ovl_Obj_Um/z_obj_um.c index 658cae6525..54d471f672 100644 --- a/src/overlays/actors/ovl_Obj_Um/z_obj_um.c +++ b/src/overlays/actors/ovl_Obj_Um/z_obj_um.c @@ -795,7 +795,7 @@ void ObjUm_Destroy(Actor* thisx, PlayState* play) { DynaPoly_DeleteBgActor(play, &play->colCtx.dyna, this->dyna.bgId); for (i = 0; i < ARRAY_COUNT(this->potPos); i++) { - Audio_StopSfxByPos(&this->potPos[i]); + AudioSfx_StopByPos(&this->potPos[i]); } Collider_DestroyCylinder(play, &this->banditsCollisions[0]); diff --git a/tools/disasm/functions.txt b/tools/disasm/functions.txt index dda48b3c1c..113a14861f 100644 --- a/tools/disasm/functions.txt +++ b/tools/disasm/functions.txt @@ -3688,10 +3688,10 @@ 0x80193774:("func_80193774",), 0x8019380C:("func_8019380C",), 0x80193858:("func_80193858",), - 0x8019387C:("func_8019387C",), - 0x801938A0:("Audio_QueueCmdS8",), + 0x8019387C:("AudioThread_QueueCmdS32",), + 0x801938A0:("AudioThread_QueueCmdS8",), 0x801938D0:("func_801938D0",), - 0x80193900:("func_80193900",), + 0x80193900:("AudioThread_ScheduleProcessCmds",), 0x80193990:("func_80193990",), 0x801939A8:("func_801939A8",), 0x80193AEC:("func_80193AEC",), @@ -3718,8 +3718,8 @@ 0x80194528:("func_80194528",), 0x80194548:("func_80194548",), 0x80194568:("func_80194568",), - 0x80194668:("Audio_NextRandom",), - 0x801946E4:("Audio_InitMesgQueues",), + 0x80194668:("AudioThread_NextRandom",), + 0x801946E4:("AudioThread_InitMesgQueues",), 0x80194710:("Audio_InvalDCache",), 0x80194750:("Audio_WritebackDCache",), 0x80194790:("osAiSetNextBuffer",), @@ -3858,27 +3858,27 @@ 0x8019E0FC:("func_8019E0FC",), 0x8019E104:("func_8019E104",), 0x8019E110:("func_8019E110",), - 0x8019E14C:("func_8019E14C",), - 0x8019E324:("func_8019E324",), - 0x8019E4B0:("func_8019E4B0",), - 0x8019E634:("func_8019E634",), - 0x8019E864:("func_8019E864",), - 0x8019EA40:("func_8019EA40",), - 0x8019EB2C:("func_8019EB2C",), - 0x8019F024:("func_8019F024",), - 0x8019F05C:("func_8019F05C",), + 0x8019E14C:("AudioSfx_ComputeVolume",), + 0x8019E324:("AudioSfx_ComputeReverb",), + 0x8019E4B0:("AudioSfx_ComputePanSigned",), + 0x8019E634:("AudioSfx_ComputeFreqScale",), + 0x8019E864:("AudioSfx_ComputeSurroundSoundFilter",), + 0x8019EA40:("AudioSfx_ComputeCombFilter",), + 0x8019EB2C:("AudioSfx_SetProperties",), + 0x8019F024:("AudioSfx_SetFreqAndStereoBits",), + 0x8019F05C:("AudioSfx_ResetSfxChannelState",), 0x8019F0C8:("play_sound",), 0x8019F128:("func_8019F128",), 0x8019F170:("func_8019F170",), 0x8019F1C0:("Audio_PlaySfxAtPos",), 0x8019F208:("func_8019F208",), 0x8019F230:("func_8019F230",), - 0x8019F258:("func_8019F258",), - 0x8019F300:("func_8019F300",), + 0x8019F258:("AudioSfx_AddSfxSetting",), + 0x8019F300:("AudioSfx_ProcessSfxSettings",), 0x8019F420:("func_8019F420",), 0x8019F4AC:("func_8019F4AC",), 0x8019F540:("func_8019F540",), - 0x8019F570:("func_8019F570",), + 0x8019F570:("AudioSfx_LowerSfxSettingsReverb",), 0x8019F5AC:("func_8019F5AC",), 0x8019F638:("func_8019F638",), 0x8019F780:("func_8019F780",), @@ -3912,7 +3912,7 @@ 0x801A0554:("func_801A0554",), 0x801A05E4:("func_801A05E4",), 0x801A05F0:("func_801A05F0",), - 0x801A0654:("func_801A0654",), + 0x801A0654:("AudioSfx_SetChannelIO",), 0x801A0810:("func_801A0810",), 0x801A0868:("func_801A0868",), 0x801A09D4:("func_801A09D4",), @@ -4001,9 +4001,9 @@ 0x801A47DC:("func_801A47DC",), 0x801A48E0:("func_801A48E0",), 0x801A4A28:("func_801A4A28",), - 0x801A4B80:("func_801A4B80",), - 0x801A4C30:("func_801A4C30",), - 0x801A4C54:("func_801A4C54",), + 0x801A4B80:("Audio_SetNatureAmbienceRandomBend",), + 0x801A4C30:("Audio_Init",), + 0x801A4C54:("AudioSfx_Init",), 0x801A4D00:("func_801A4D00",), 0x801A4D50:("func_801A4D50",), 0x801A4DA4:("func_801A4DA4",), @@ -4030,29 +4030,29 @@ 0x801A5808:("func_801A5808",), 0x801A5A10:("func_801A5A10",), 0x801A5A1C:("func_801A5A1C",), - 0x801A5BD0:("Audio_SetSfxBanksMute",), - 0x801A5C28:("Audio_SetFlagForBgmVolumeLow",), - 0x801A5C8C:("Audio_ClearFlagForBgmVolumeLow",), - 0x801A5CFC:("Audio_PlaySfxGeneral",), - 0x801A5DDC:("func_801A5DDC",), - 0x801A5F7C:("func_801A5F7C",), - 0x801A6430:("func_801A6430",), - 0x801A65C8:("func_801A65C8",), - 0x801A6D0C:("func_801A6D0C",), - 0x801A7084:("func_801A7084",), - 0x801A7168:("func_801A7168",), - 0x801A7284:("func_801A7284",), - 0x801A72CC:("Audio_StopSfxByPos",), - 0x801A7328:("func_801A7328",), - 0x801A7484:("func_801A7484",), - 0x801A75E8:("Audio_StopSfxById",), - 0x801A7720:("func_801A7720",), - 0x801A7794:("func_801A7794",), - 0x801A7828:("func_801A7828",), - 0x801A787C:("func_801A787C",), - 0x801A78E4:("Audio_IsSfxPlaying",), - 0x801A794C:("func_801A794C",), - 0x801A7B10:("func_801A7B10",), + 0x801A5BD0:("AudioSfx_MuteBanks",), + 0x801A5C28:("AudioSfx_LowerBgmVolume",), + 0x801A5C8C:("AudioSfx_RestoreBgmVolume",), + 0x801A5CFC:("AudioSfx_PlaySfx",), + 0x801A5DDC:("AudioSfx_RemoveMatchingRequests",), + 0x801A5F7C:("AudioSfx_ProcessRequest",), + 0x801A6430:("AudioSfx_RemoveBankEntry",), + 0x801A65C8:("AudioSfx_ChooseActiveSfx",), + 0x801A6D0C:("AudioSfx_PlayActiveSfx",), + 0x801A7084:("AudioSfx_StopByBank",), + 0x801A7168:("AudioSfx_StopByPosAndBankImpl",), + 0x801A7284:("AudioSfx_StopByPosAndBank",), + 0x801A72CC:("AudioSfx_StopByPos",), + 0x801A7328:("AudioSfx_StopByPosAndId",), + 0x801A7484:("AudioSfx_StopByTokenAndId",), + 0x801A75E8:("AudioSfx_StopById",), + 0x801A7720:("AudioSfx_ProcessRequests",), + 0x801A7794:("AudioSfx_SetBankLerp",), + 0x801A7828:("AudioSfx_StepBankLerp",), + 0x801A787C:("AudioSfx_ProcessActiveSfx",), + 0x801A78E4:("AudioSfx_IsPlaying",), + 0x801A794C:("AudioSfx_Reset",), + 0x801A7B10:("Audio_StartSequence",), 0x801A7D04:("func_801A7D04",), 0x801A7D84:("func_801A7D84",), 0x801A89A8:("Audio_QueueSeqCmd",), diff --git a/tools/disasm/variables.txt b/tools/disasm/variables.txt index cfbf68df86..47521fcd3e 100644 --- a/tools/disasm/variables.txt +++ b/tools/disasm/variables.txt @@ -2254,7 +2254,7 @@ 0x801D6194:("D_801D6194","UNK_TYPE4","",0x4), 0x801D61A0:("sSeqInstructionArgsTable","u8","[96]",0x60), 0x801D6200:("D_801D6200","UNK_TYPE1","",0x1), - 0x801D6600:("D_801D6600","UNK_TYPE1","",0x1), + 0x801D6600:("gIsLargeSfxBank","UNK_TYPE1","",0x1), 0x801D6608:("D_801D6608","UNK_TYPE1","",0x1), 0x801D6610:("gChannelsPerBank","UNK_TYPE1","",0x1), 0x801D662C:("gUsedChannelsPerBank","UNK_TYPE1","",0x1), @@ -2273,7 +2273,7 @@ 0x801D6698:("sGanonsTowerLevelsVol","u8","[8]",0x8), 0x801D66A0:("sEnterGanonsTowerTimer","UNK_TYPE1","",0x1), 0x801D66A4:("sSfxVolumeDuration","UNK_TYPE2","",0x2), - 0x801D66A8:("sAudioFileSelectSetting","UNK_TYPE1","",0x1), + 0x801D66A8:("sSoundMode","UNK_TYPE1","",0x1), 0x801D66AC:("sAudioIsWindowOpen","UNK_TYPE1","",0x1), 0x801D66B0:("sAudioCutsceneFlag","UNK_TYPE1","",0x1), 0x801D66B4:("sSpecReverb","UNK_TYPE1","",0x1), @@ -2381,14 +2381,14 @@ 0x801DADD0:("sOcarinaBankParams","UNK_TYPE1","",0x1), 0x801DAE10:("sVoiceBankParams","UNK_TYPE1","",0x1), 0x801DB450:("gSfxParams","UNK_PTR","",0x4), - 0x801DB470:("D_801DB470","UNK_TYPE1","",0x1), - 0x801DB474:("D_801DB474","UNK_TYPE1","",0x1), - 0x801DB478:("D_801DB478","UNK_PTR","[7]",0x1c), - 0x801DB494:("D_801DB494","UNK_TYPE1","",0x1), - 0x801DB49C:("D_801DB49C","UNK_TYPE1","",0x1), - 0x801DB4A0:("D_801DB4A0","UNK_TYPE2","",0x2), + 0x801DB470:("sSfxRequestWriteIndex","UNK_TYPE1","",0x1), + 0x801DB474:("sSfxRequestReadIndex","UNK_TYPE1","",0x1), + 0x801DB478:("gSfxBanks","UNK_PTR","[7]",0x1c), + 0x801DB494:("sSfxBankSizes","UNK_TYPE1","",0x1), + 0x801DB49C:("gSfxChannelLayout","UNK_TYPE1","",0x1), + 0x801DB4A0:("sSfxChannelLowVolumeFlag","UNK_TYPE2","",0x2), 0x801DB4A4:("gSfxDefaultPos","UNK_TYPE4","",0x4), - 0x801DB4B0:("D_801DB4B0","UNK_TYPE1","",0x1), + 0x801DB4B0:("gSfxDefaultFreqAndVolScale","UNK_TYPE1","",0x1), 0x801DB4B8:("gSfxDefaultReverb","UNK_TYPE1","",0x1), 0x801DB4C0:("D_801DB4C0","UNK_TYPE1","",0x1), 0x801DB4C4:("D_801DB4C4","UNK_TYPE1","",0x1), @@ -4321,21 +4321,21 @@ 0x801FD5E8:("D_801FD5E8","UNK_TYPE1","",0x1), 0x801FD608:("D_801FD608","UNK_TYPE1","",0x1), 0x801FD610:("D_801FD610","UNK_TYPE1","",0x1), - 0x801FD710:("D_801FD710","UNK_TYPE1","",0x1), - 0x801FD8C0:("D_801FD8C0","UNK_TYPE1","",0x1), - 0x801FDB00:("D_801FDB00","UNK_TYPE1","",0x1), - 0x801FE100:("D_801FE100","UNK_TYPE1","",0x1), - 0x801FE4C0:("D_801FE4C0","UNK_TYPE1","",0x1), - 0x801FE640:("D_801FE640","UNK_TYPE1","",0x1), - 0x801FE6D0:("D_801FE6D0","UNK_TYPE1","",0x1), - 0x801FE7C0:("D_801FE7C0","SoundRequest","[1]",0x14), - 0x801FFBC0:("D_801FFBC0","UNK_TYPE1","",0x1), - 0x801FFBC8:("D_801FFBC8","UNK_TYPE1","",0x1), - 0x801FFBD0:("D_801FFBD0","UNK_TYPE1","",0x1), - 0x801FFBD8:("D_801FFBD8","UNK_TYPE1","",0x1), - 0x801FFC80:("D_801FFC80","UNK_TYPE1","",0x1), - 0x801FFC84:("D_801FFC84","UNK_TYPE1","",0x1), - 0x801FFC90:("D_801FFC90","UNK_TYPE1","",0x1), + 0x801FD710:("sSfxPlayerBank","UNK_TYPE1","",0x1), + 0x801FD8C0:("sSfxItemBank","UNK_TYPE1","",0x1), + 0x801FDB00:("sSfxEnvironmentBank","UNK_TYPE1","",0x1), + 0x801FE100:("sSfxEnemyBank","UNK_TYPE1","",0x1), + 0x801FE4C0:("sSfxSystemBank","UNK_TYPE1","",0x1), + 0x801FE640:("sSfxOcarinaBank","UNK_TYPE1","",0x1), + 0x801FE6D0:("sSfxVoiceBank","UNK_TYPE1","",0x1), + 0x801FE7C0:("sSfxRequests","SfxRequest","[0x100]",0x14), + 0x801FFBC0:("sSfxBankListEnd","UNK_TYPE1","",0x1), + 0x801FFBC8:("sSfxBankFreeListStart","UNK_TYPE1","",0x1), + 0x801FFBD0:("sSfxBankUnused","UNK_TYPE1","",0x1), + 0x801FFBD8:("gActiveSfx","UNK_TYPE1","",0x1), + 0x801FFC80:("sCurSfxPlayerChannelIndex","UNK_TYPE1","",0x1), + 0x801FFC84:("gSfxBankMuted","UNK_TYPE1","",0x1), + 0x801FFC90:("sUnusedBankLerp","UNK_TYPE1","",0x1), 0x801FFD00:("D_801FFD00","UNK_TYPE1","",0x1), 0x801FFD34:("D_801FFD34","UNK_TYPE1","",0x1), 0x801FFD40:("D_801FFD40","UNK_TYPE1","",0x1), diff --git a/tools/namefixer.py b/tools/namefixer.py index 21430d5374..c82d8012ab 100755 --- a/tools/namefixer.py +++ b/tools/namefixer.py @@ -145,7 +145,11 @@ wordReplace = { "ShrinkWindow_Fini": "ShrinkWindow_Destroy", "func_801A89A8": "Audio_QueueSeqCmd", "func_8019F1C0": "Audio_PlaySfxAtPos", - "func_801A72CC": "Audio_StopSfxByPos", + "func_801A5BD0": "AudioSfx_MuteBanks", + "func_801A72CC": "AudioSfx_StopByPos", + "Audio_StopSfxByPos": "AudioSfx_StopByPos", + "func_801A7328": "AudioSfx_StopByPosAndId", + "func_801A75E8": "AudioSfx_StopById", "SkelAnime_LodDrawLimb": "SkelAnime_DrawLimbLod", "SkelAnime_LodDraw": "SkelAnime_DrawLod", "SkelAnime_LodDrawLimbSV": "SkelAnime_DrawFlexLimbLod", @@ -256,7 +260,8 @@ wordReplace = { "func_800B8B84": "Actor_PickUpNearby", "func_800B8BB0": "Actor_LiftActor", "func_800B8BD0": "Actor_PickUpFar", - "func_801A5CFC": "Audio_PlaySfxGeneral", + "func_801A5CFC": "AudioSfx_PlaySfx", + "Audio_PlaySfxGeneral": "AudioSfx_PlaySfx", "func_800BBDAC": "Actor_SpawnFloorDustRing", "func_800B8708": "Player_GetExchangeItemId", "func_801233E4": "Player_InCsMode", diff --git a/tools/sizes/code_functions.csv b/tools/sizes/code_functions.csv index 45dae2d926..fba342a6f7 100644 --- a/tools/sizes/code_functions.csv +++ b/tools/sizes/code_functions.csv @@ -3204,10 +3204,10 @@ asm/non_matchings/code/code_80192BE0/func_8019372C.s,func_8019372C,0x8019372C,0x asm/non_matchings/code/code_80192BE0/func_80193774.s,func_80193774,0x80193774,0x26 asm/non_matchings/code/code_80192BE0/func_8019380C.s,func_8019380C,0x8019380C,0x13 asm/non_matchings/code/code_80192BE0/func_80193858.s,func_80193858,0x80193858,0x9 -asm/non_matchings/code/code_80192BE0/func_8019387C.s,func_8019387C,0x8019387C,0x9 -asm/non_matchings/code/code_80192BE0/Audio_QueueCmdS8.s,Audio_QueueCmdS8,0x801938A0,0xC +asm/non_matchings/code/code_80192BE0/AudioThread_QueueCmdS32.s,AudioThread_QueueCmdS32,0x8019387C,0x9 +asm/non_matchings/code/code_80192BE0/AudioThread_QueueCmdS8.s,AudioThread_QueueCmdS8,0x801938A0,0xC asm/non_matchings/code/code_80192BE0/func_801938D0.s,func_801938D0,0x801938D0,0xC -asm/non_matchings/code/code_80192BE0/func_80193900.s,func_80193900,0x80193900,0x24 +asm/non_matchings/code/code_80192BE0/AudioThread_ScheduleProcessCmds.s,AudioThread_ScheduleProcessCmds,0x80193900,0x24 asm/non_matchings/code/code_80192BE0/func_80193990.s,func_80193990,0x80193990,0x6 asm/non_matchings/code/code_80192BE0/func_801939A8.s,func_801939A8,0x801939A8,0x51 asm/non_matchings/code/code_80192BE0/func_80193AEC.s,func_80193AEC,0x80193AEC,0x2D @@ -3234,8 +3234,8 @@ asm/non_matchings/code/code_80192BE0/func_8019440C.s,func_8019440C,0x8019440C,0x asm/non_matchings/code/code_80192BE0/func_80194528.s,func_80194528,0x80194528,0x8 asm/non_matchings/code/code_80192BE0/func_80194548.s,func_80194548,0x80194548,0x8 asm/non_matchings/code/code_80192BE0/func_80194568.s,func_80194568,0x80194568,0x40 -asm/non_matchings/code/code_80192BE0/Audio_NextRandom.s,Audio_NextRandom,0x80194668,0x1F -asm/non_matchings/code/code_80192BE0/Audio_InitMesgQueues.s,Audio_InitMesgQueues,0x801946E4,0xB +asm/non_matchings/code/code_80192BE0/AudioThread_NextRandom.s,AudioThread_NextRandom,0x80194668,0x1F +asm/non_matchings/code/code_80192BE0/AudioThread_InitMesgQueues.s,AudioThread_InitMesgQueues,0x801946E4,0xB asm/non_matchings/code/code_80194710/Audio_InvalDCache.s,Audio_InvalDCache,0x80194710,0x10 asm/non_matchings/code/code_80194710/Audio_WritebackDCache.s,Audio_WritebackDCache,0x80194750,0x10 asm/non_matchings/code/code_80194710/osAiSetNextBuffer.s,osAiSetNextBuffer,0x80194790,0x1D @@ -3374,27 +3374,27 @@ asm/non_matchings/code/code_8019AF00/func_8019E014.s,func_8019E014,0x8019E014,0x asm/non_matchings/code/code_8019AF00/func_8019E0FC.s,func_8019E0FC,0x8019E0FC,0x2 asm/non_matchings/code/code_8019AF00/func_8019E104.s,func_8019E104,0x8019E104,0x3 asm/non_matchings/code/code_8019AF00/func_8019E110.s,func_8019E110,0x8019E110,0xF -asm/non_matchings/code/code_8019AF00/func_8019E14C.s,func_8019E14C,0x8019E14C,0x76 -asm/non_matchings/code/code_8019AF00/func_8019E324.s,func_8019E324,0x8019E324,0x63 -asm/non_matchings/code/code_8019AF00/func_8019E4B0.s,func_8019E4B0,0x8019E4B0,0x61 -asm/non_matchings/code/code_8019AF00/func_8019E634.s,func_8019E634,0x8019E634,0x8C -asm/non_matchings/code/code_8019AF00/func_8019E864.s,func_8019E864,0x8019E864,0x77 -asm/non_matchings/code/code_8019AF00/func_8019EA40.s,func_8019EA40,0x8019EA40,0x3B -asm/non_matchings/code/code_8019AF00/func_8019EB2C.s,func_8019EB2C,0x8019EB2C,0x13E -asm/non_matchings/code/code_8019AF00/func_8019F024.s,func_8019F024,0x8019F024,0xE -asm/non_matchings/code/code_8019AF00/func_8019F05C.s,func_8019F05C,0x8019F05C,0x1B +asm/non_matchings/code/code_8019AF00/AudioSfx_ComputeVolume.s,AudioSfx_ComputeVolume,0x8019E14C,0x76 +asm/non_matchings/code/code_8019AF00/AudioSfx_ComputeReverb.s,AudioSfx_ComputeReverb,0x8019E324,0x63 +asm/non_matchings/code/code_8019AF00/AudioSfx_ComputePanSigned.s,AudioSfx_ComputePanSigned,0x8019E4B0,0x61 +asm/non_matchings/code/code_8019AF00/AudioSfx_ComputeFreqScale.s,AudioSfx_ComputeFreqScale,0x8019E634,0x8C +asm/non_matchings/code/code_8019AF00/AudioSfx_ComputeSurroundSoundFilter.s,AudioSfx_ComputeSurroundSoundFilter,0x8019E864,0x77 +asm/non_matchings/code/code_8019AF00/AudioSfx_ComputeCombFilter.s,AudioSfx_ComputeCombFilter,0x8019EA40,0x3B +asm/non_matchings/code/code_8019AF00/AudioSfx_SetProperties.s,AudioSfx_SetProperties,0x8019EB2C,0x13E +asm/non_matchings/code/code_8019AF00/AudioSfx_SetFreqAndStereoBits.s,AudioSfx_SetFreqAndStereoBits,0x8019F024,0xE +asm/non_matchings/code/code_8019AF00/AudioSfx_ResetSfxChannelState.s,AudioSfx_ResetSfxChannelState,0x8019F05C,0x1B asm/non_matchings/code/code_8019AF00/play_sound.s,play_sound,0x8019F0C8,0x18 asm/non_matchings/code/code_8019AF00/func_8019F128.s,func_8019F128,0x8019F128,0x12 asm/non_matchings/code/code_8019AF00/func_8019F170.s,func_8019F170,0x8019F170,0x14 asm/non_matchings/code/code_8019AF00/Audio_PlaySfxAtPos.s,Audio_PlaySfxAtPos,0x8019F1C0,0x12 asm/non_matchings/code/code_8019AF00/func_8019F208.s,func_8019F208,0x8019F208,0xA asm/non_matchings/code/code_8019AF00/func_8019F230.s,func_8019F230,0x8019F230,0xA -asm/non_matchings/code/code_8019AF00/func_8019F258.s,func_8019F258,0x8019F258,0x2A -asm/non_matchings/code/code_8019AF00/func_8019F300.s,func_8019F300,0x8019F300,0x48 +asm/non_matchings/code/code_8019AF00/AudioSfx_AddSfxSetting.s,AudioSfx_AddSfxSetting,0x8019F258,0x2A +asm/non_matchings/code/code_8019AF00/AudioSfx_ProcessSfxSettings.s,AudioSfx_ProcessSfxSettings,0x8019F300,0x48 asm/non_matchings/code/code_8019AF00/func_8019F420.s,func_8019F420,0x8019F420,0x23 asm/non_matchings/code/code_8019AF00/func_8019F4AC.s,func_8019F4AC,0x8019F4AC,0x25 asm/non_matchings/code/code_8019AF00/func_8019F540.s,func_8019F540,0x8019F540,0xC -asm/non_matchings/code/code_8019AF00/func_8019F570.s,func_8019F570,0x8019F570,0xF +asm/non_matchings/code/code_8019AF00/AudioSfx_LowerSfxSettingsReverb.s,AudioSfx_LowerSfxSettingsReverb,0x8019F570,0xF asm/non_matchings/code/code_8019AF00/func_8019F5AC.s,func_8019F5AC,0x8019F5AC,0x23 asm/non_matchings/code/code_8019AF00/func_8019F638.s,func_8019F638,0x8019F638,0x52 asm/non_matchings/code/code_8019AF00/func_8019F780.s,func_8019F780,0x8019F780,0x16 @@ -3428,7 +3428,7 @@ asm/non_matchings/code/code_8019AF00/Audio_UpdateRiverSoundVolumes.s,Audio_Updat asm/non_matchings/code/code_8019AF00/func_801A0554.s,func_801A0554,0x801A0554,0x24 asm/non_matchings/code/code_8019AF00/func_801A05E4.s,func_801A05E4,0x801A05E4,0x3 asm/non_matchings/code/code_8019AF00/func_801A05F0.s,func_801A05F0,0x801A05F0,0x19 -asm/non_matchings/code/code_8019AF00/func_801A0654.s,func_801A0654,0x801A0654,0x6F +asm/non_matchings/code/code_8019AF00/AudioSfx_SetChannelIO.s,AudioSfx_SetChannelIO,0x801A0654,0x6F asm/non_matchings/code/code_8019AF00/func_801A0810.s,func_801A0810,0x801A0810,0x16 asm/non_matchings/code/code_8019AF00/func_801A0868.s,func_801A0868,0x801A0868,0x5B asm/non_matchings/code/code_8019AF00/func_801A09D4.s,func_801A09D4,0x801A09D4,0xA7 @@ -3517,9 +3517,9 @@ asm/non_matchings/code/code_8019AF00/func_801A479C.s,func_801A479C,0x801A479C,0x asm/non_matchings/code/code_8019AF00/func_801A47DC.s,func_801A47DC,0x801A47DC,0x41 asm/non_matchings/code/code_8019AF00/func_801A48E0.s,func_801A48E0,0x801A48E0,0x52 asm/non_matchings/code/code_8019AF00/func_801A4A28.s,func_801A4A28,0x801A4A28,0x56 -asm/non_matchings/code/code_8019AF00/func_801A4B80.s,func_801A4B80,0x801A4B80,0x2C -asm/non_matchings/code/code_8019AF00/func_801A4C30.s,func_801A4C30,0x801A4C30,0x9 -asm/non_matchings/code/code_8019AF00/func_801A4C54.s,func_801A4C54,0x801A4C54,0x2B +asm/non_matchings/code/code_8019AF00/Audio_SetNatureAmbienceRandomBend.s,Audio_SetNatureAmbienceRandomBend,0x801A4B80,0x2C +asm/non_matchings/code/code_8019AF00/Audio_Init.s,Audio_Init,0x801A4C30,0x9 +asm/non_matchings/code/code_8019AF00/AudioSfx_Init.s,AudioSfx_Init,0x801A4C54,0x2B asm/non_matchings/code/code_8019AF00/func_801A4D00.s,func_801A4D00,0x801A4D00,0x14 asm/non_matchings/code/code_8019AF00/func_801A4D50.s,func_801A4D50,0x801A4D50,0x15 asm/non_matchings/code/code_8019AF00/func_801A4DA4.s,func_801A4DA4,0x801A4DA4,0x14 @@ -3546,29 +3546,29 @@ asm/non_matchings/code/code_801A51F0/func_801A5680.s,func_801A5680,0x801A5680,0x asm/non_matchings/code/code_801A51F0/func_801A5808.s,func_801A5808,0x801A5808,0x82 asm/non_matchings/code/code_801A51F0/func_801A5A10.s,func_801A5A10,0x801A5A10,0x3 asm/non_matchings/code/code_801A51F0/func_801A5A1C.s,func_801A5A1C,0x801A5A1C,0x69 -asm/non_matchings/code/code_801A5BD0/Audio_SetSfxBanksMute.s,Audio_SetSfxBanksMute,0x801A5BD0,0x16 -asm/non_matchings/code/code_801A5BD0/Audio_SetFlagForBgmVolumeLow.s,Audio_SetFlagForBgmVolumeLow,0x801A5C28,0x19 -asm/non_matchings/code/code_801A5BD0/Audio_ClearFlagForBgmVolumeLow.s,Audio_ClearFlagForBgmVolumeLow,0x801A5C8C,0x1C -asm/non_matchings/code/code_801A5BD0/Audio_PlaySfxGeneral.s,Audio_PlaySfxGeneral,0x801A5CFC,0x38 -asm/non_matchings/code/code_801A5BD0/func_801A5DDC.s,func_801A5DDC,0x801A5DDC,0x68 -asm/non_matchings/code/code_801A5BD0/func_801A5F7C.s,func_801A5F7C,0x801A5F7C,0x12D -asm/non_matchings/code/code_801A5BD0/func_801A6430.s,func_801A6430,0x801A6430,0x66 -asm/non_matchings/code/code_801A5BD0/func_801A65C8.s,func_801A65C8,0x801A65C8,0x1D1 -asm/non_matchings/code/code_801A5BD0/func_801A6D0C.s,func_801A6D0C,0x801A6D0C,0xDE -asm/non_matchings/code/code_801A5BD0/func_801A7084.s,func_801A7084,0x801A7084,0x39 -asm/non_matchings/code/code_801A5BD0/func_801A7168.s,func_801A7168,0x801A7168,0x47 -asm/non_matchings/code/code_801A5BD0/func_801A7284.s,func_801A7284,0x801A7284,0x12 -asm/non_matchings/code/code_801A5BD0/Audio_StopSfxByPos.s,Audio_StopSfxByPos,0x801A72CC,0x17 -asm/non_matchings/code/code_801A5BD0/func_801A7328.s,func_801A7328,0x801A7328,0x57 -asm/non_matchings/code/code_801A5BD0/func_801A7484.s,func_801A7484,0x801A7484,0x59 -asm/non_matchings/code/code_801A5BD0/Audio_StopSfxById.s,Audio_StopSfxById,0x801A75E8,0x4E -asm/non_matchings/code/code_801A5BD0/func_801A7720.s,func_801A7720,0x801A7720,0x1D -asm/non_matchings/code/code_801A5BD0/func_801A7794.s,func_801A7794,0x801A7794,0x25 -asm/non_matchings/code/code_801A5BD0/func_801A7828.s,func_801A7828,0x801A7828,0x15 -asm/non_matchings/code/code_801A5BD0/func_801A787C.s,func_801A787C,0x801A787C,0x1A -asm/non_matchings/code/code_801A5BD0/Audio_IsSfxPlaying.s,Audio_IsSfxPlaying,0x801A78E4,0x1A -asm/non_matchings/code/code_801A5BD0/func_801A794C.s,func_801A794C,0x801A794C,0x71 -asm/non_matchings/code/code_801A7B10/func_801A7B10.s,func_801A7B10,0x801A7B10,0x7D +asm/non_matchings/code/code_801A5BD0/AudioSfx_MuteBanks.s,AudioSfx_MuteBanks,0x801A5BD0,0x16 +asm/non_matchings/code/code_801A5BD0/AudioSfx_LowerBgmVolume.s,AudioSfx_LowerBgmVolume,0x801A5C28,0x19 +asm/non_matchings/code/code_801A5BD0/AudioSfx_RestoreBgmVolume.s,AudioSfx_RestoreBgmVolume,0x801A5C8C,0x1C +asm/non_matchings/code/code_801A5BD0/AudioSfx_PlaySfx.s,AudioSfx_PlaySfx,0x801A5CFC,0x38 +asm/non_matchings/code/code_801A5BD0/AudioSfx_RemoveMatchingRequests.s,AudioSfx_RemoveMatchingRequests,0x801A5DDC,0x68 +asm/non_matchings/code/code_801A5BD0/AudioSfx_ProcessRequest.s,AudioSfx_ProcessRequest,0x801A5F7C,0x12D +asm/non_matchings/code/code_801A5BD0/AudioSfx_RemoveBankEntry.s,AudioSfx_RemoveBankEntry,0x801A6430,0x66 +asm/non_matchings/code/code_801A5BD0/AudioSfx_ChooseActiveSfx.s,AudioSfx_ChooseActiveSfx,0x801A65C8,0x1D1 +asm/non_matchings/code/code_801A5BD0/AudioSfx_PlayActiveSfx.s,AudioSfx_PlayActiveSfx,0x801A6D0C,0xDE +asm/non_matchings/code/code_801A5BD0/AudioSfx_StopByBank.s,AudioSfx_StopByBank,0x801A7084,0x39 +asm/non_matchings/code/code_801A5BD0/AudioSfx_StopByPosAndBankImpl.s,AudioSfx_StopByPosAndBankImpl,0x801A7168,0x47 +asm/non_matchings/code/code_801A5BD0/AudioSfx_StopByPosAndBank.s,AudioSfx_StopByPosAndBank,0x801A7284,0x12 +asm/non_matchings/code/code_801A5BD0/AudioSfx_StopByPos.s,AudioSfx_StopByPos,0x801A72CC,0x17 +asm/non_matchings/code/code_801A5BD0/AudioSfx_StopByPosAndId.s,AudioSfx_StopByPosAndId,0x801A7328,0x57 +asm/non_matchings/code/code_801A5BD0/AudioSfx_StopByTokenAndId.s,AudioSfx_StopByTokenAndId,0x801A7484,0x59 +asm/non_matchings/code/code_801A5BD0/AudioSfx_StopById.s,AudioSfx_StopById,0x801A75E8,0x4E +asm/non_matchings/code/code_801A5BD0/AudioSfx_ProcessRequests.s,AudioSfx_ProcessRequests,0x801A7720,0x1D +asm/non_matchings/code/code_801A5BD0/AudioSfx_SetBankLerp.s,AudioSfx_SetBankLerp,0x801A7794,0x25 +asm/non_matchings/code/code_801A5BD0/AudioSfx_StepBankLerp.s,AudioSfx_StepBankLerp,0x801A7828,0x15 +asm/non_matchings/code/code_801A5BD0/AudioSfx_ProcessActiveSfx.s,AudioSfx_ProcessActiveSfx,0x801A787C,0x1A +asm/non_matchings/code/code_801A5BD0/AudioSfx_IsPlaying.s,AudioSfx_IsPlaying,0x801A78E4,0x1A +asm/non_matchings/code/code_801A5BD0/AudioSfx_Reset.s,AudioSfx_Reset,0x801A794C,0x71 +asm/non_matchings/code/code_801A7B10/Audio_StartSequence.s,Audio_StartSequence,0x801A7B10,0x7D asm/non_matchings/code/code_801A7B10/func_801A7D04.s,func_801A7D04,0x801A7D04,0x20 asm/non_matchings/code/code_801A7B10/func_801A7D84.s,func_801A7D84,0x801A7D84,0x309 asm/non_matchings/code/code_801A7B10/Audio_QueueSeqCmd.s,Audio_QueueSeqCmd,0x801A89A8,0xA