mirror of
https://github.com/izzy2lost/2ship2harkinian-Android.git
synced 2026-06-19 01:20:08 -07:00
Audio sequence.c OK and documented (#1201)
* import sequence docs * cleanup * do not need raw hex
This commit is contained in:
+25
-34
@@ -2812,7 +2812,6 @@ void AudioOcarina_TerminaWallGenerateNotes(void);
|
||||
void AudioOcarina_PlayLongScarecrowAfterCredits(void);
|
||||
|
||||
void Audio_Update(void);
|
||||
// void func_8019E110(void);
|
||||
void AudioSfx_SetProperties(u8 bankId, u8 entryIndex, u8 channelIndex);
|
||||
void play_sound(u16 sfxId);
|
||||
void func_8019F128(u16 sfxId);
|
||||
@@ -2846,10 +2845,10 @@ void Audio_PlaySfxForRiver(Vec3f* pos, f32 freqScale);
|
||||
// void Audio_PlaySfxForWaterfall(void);
|
||||
// void Audio_StepFreqLerp(void);
|
||||
void func_801A0124(Vec3f* pos, u8 arg1);
|
||||
void func_801A0184(void);
|
||||
void func_801A01C4(void);
|
||||
void Audio_SetBgmVolumeOff(void);
|
||||
void Audio_SetBgmVolumeOn(void);
|
||||
void func_801A0204(s8 seqId);
|
||||
void func_801A0238(s32 arg0, s32 arg1);
|
||||
void Audio_SetMainBgmVolume(u8 targetVolume, u8 volumeFadeTimer);
|
||||
// void Audio_SetGanonsTowerBgmVolumeLevel(void);
|
||||
// void Audio_SetGanonsTowerBgmVolume(void);
|
||||
// void Audio_UpdateRiverSoundVolumes(void);
|
||||
@@ -2879,12 +2878,9 @@ void func_801A1FB4(u8 playerIndex, Vec3f* pos, u16 seqId, f32 maxDist);
|
||||
void func_801A246C(u8 param_1, u8 param_2);
|
||||
void Audio_PlayMorningSceneSequence(u16 seqId, u8 dayMinusOne);
|
||||
void Audio_PlaySceneSequence(u16 seqId, u8 dayMinusOne);
|
||||
// void func_801A27E8(void);
|
||||
// void func_801A281C(void);
|
||||
void func_801A29D4(UNK_TYPE arg0, f32 arg1, UNK_TYPE arg2);
|
||||
void func_801A2BB8(s32 seqId);
|
||||
void func_801A2C20(void);
|
||||
// void func_801A2C44(void);
|
||||
void Audio_SetSeqTempoAndFreq(u8 seqPlayerIndex, f32 freqTempoScale, u8 duration);
|
||||
void Audio_PlaySubBgm(u16 seqId);
|
||||
void Audio_StopSubBgm(void);
|
||||
void Audio_PlaySequenceInCutscene(u16 seqId);
|
||||
void Audio_StopSequenceInCutscene(u16 seqId);
|
||||
s32 Audio_IsSequencePlaying(u8 seqId);
|
||||
@@ -2895,7 +2891,7 @@ void Audio_RestorePrevBgm(void);
|
||||
void Audio_PlayFanfare(u16 seqId);
|
||||
// void func_801A312C(void);
|
||||
void func_801A31EC(u16 seqId, s8 arg1, u8 arg2);
|
||||
void Audio_PlaySequenceWithSeqPlayerIO(s8 playerIndex, u16 seqId, u8 fadeInDuration, s8 ioPort, u8 ioData);
|
||||
void Audio_PlaySequenceWithSeqPlayerIO(s8 seqPlayerIndex, u16 seqId, u8 fadeInDuration, s8 ioPort, u8 ioData);
|
||||
void Audio_SetSequenceMode(u8 seqMode);
|
||||
void Audio_UpdateEnemyBgmVolume(f32 dist);
|
||||
u8 func_801A3950(s32 playerIndex, s32 isChannelIOSet);
|
||||
@@ -2925,23 +2921,20 @@ void func_801A41F8(UNK_TYPE arg0);
|
||||
void Audio_SetSfxVolumeExceptSystemAndOcarinaBanks(u8 arg0);
|
||||
void func_801A4428(u8 reverbIndex);
|
||||
void Audio_PreNMI(void);
|
||||
// void Audio_ResetRequestedSceneSeqId(void);
|
||||
// void func_801A44D4(void);
|
||||
s32 func_801A46F8(void);
|
||||
void func_801A4748(Vec3f* pos, u16 sfxId);
|
||||
void func_801A479C(Vec3f* arg0, u16 sfxId, s32 arg2);
|
||||
void Audio_SetAmbienceChannelIO(u8 channelIndexRange, u8 ioPort, u8 ioData);
|
||||
void Audio_PlayAmbience(u8 ambienceId);
|
||||
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 Audio_InitSound(void);
|
||||
void Audio_ResetForAudioHeapStep3(void);
|
||||
void Audio_ResetForAudioHeapStep2(void);
|
||||
void Audio_ResetForAudioHeapStep1(s32 specId);
|
||||
|
||||
// void func_801A4EB0(void);
|
||||
// void func_801A4EB8(void);
|
||||
// void func_801A4FD8(void);
|
||||
void func_801A4FD8(void);
|
||||
void func_801A5080(u16 arg0);
|
||||
u16 func_801A5100(void);
|
||||
void func_801A5118(void);
|
||||
@@ -2955,7 +2948,7 @@ UNK_TYPE func_801A51F0(UNK_TYPE arg0);
|
||||
// void func_801A54D0(void);
|
||||
// void func_801A5680(void);
|
||||
// void func_801A5808(void);
|
||||
// void func_801A5A10(void);
|
||||
void AudioVoice_ResetData(void);
|
||||
// void func_801A5A1C(void);
|
||||
|
||||
void AudioSfx_MuteBanks(u16 muteMask);
|
||||
@@ -2974,20 +2967,18 @@ 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 Audio_StopSequence(u8 playerIndex, u16 fadeTimer);
|
||||
// void func_801A7D84(void);
|
||||
void Audio_QueueSeqCmd(u32 cmd);
|
||||
void func_801A89D0(void);
|
||||
u16 Audio_GetActiveSequence(u8 playerIndex);
|
||||
s32 func_801A8ABC(u32 cmdVal, u32 cmdMask);
|
||||
void Audio_SetVolumeScale(u8 playerIndex, u8 scaleIndex, u8 targetVol, u8 volFadeTimer);
|
||||
void func_801A8D5C(void);
|
||||
// void func_801A8E90(void);
|
||||
u8 func_801A9768(void);
|
||||
u8 func_801A982C(void);
|
||||
// void func_801A99B8(void);
|
||||
// void func_801A9A74(void);
|
||||
void AudioSeq_StartSequence(u8 seqPlayerIndex, u8 seqId, u8 seqArgs, u16 fadeInDuration);
|
||||
void AudioSeq_StopSequence(u8 seqPlayerIndex, u16 fadeOutDuration);
|
||||
void AudioSeq_QueueSeqCmd(u32 cmd);
|
||||
void AudioSeq_ProcessSeqCmds(void);
|
||||
u16 AudioSeq_GetActiveSeqId(u8 seqPlayerIndex);
|
||||
s32 AudioSeq_IsSeqCmdNotQueued(u32 cmdVal, u32 cmdMask);
|
||||
void AudioSeq_SetVolumeScale(u8 seqPlayerIndex, u8 scaleIndex, u8 targetVol, u8 volFadeTimer);
|
||||
void AudioSeq_UpdateActiveSequences(void);
|
||||
u8 AudioSeq_UpdateAudioHeapReset(void);
|
||||
u8 AudioSeq_ResetReverb(void);
|
||||
void AudioSeq_ResetActiveSequences(void);
|
||||
void AudioSeq_ResetActiveSequencesAndVolume(void);
|
||||
|
||||
void Regs_InitData(PlayState* play);
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
+13
-4
@@ -1,8 +1,6 @@
|
||||
#ifndef SEQUENCE_H
|
||||
#define SEQUENCE_H
|
||||
|
||||
#define NA_BGM_STOP 0x100000FF
|
||||
|
||||
#define NA_BGM_GENERAL_SFX 0x00 // General Sound Effects
|
||||
#define NA_BGM_AMBIENCE 0x01 // Ambient background noises
|
||||
#define NA_BGM_TERMINA_FIELD 0x02 // Termina Field
|
||||
@@ -133,12 +131,15 @@
|
||||
#define NA_BGM_END_CREDITS_2 0x82 // The End/Credits II "STAFFROLL2"
|
||||
#define NA_BGM_DISABLED 0xFFFF
|
||||
|
||||
#define SEQ_FLAG_ASYNC 0x8000
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ SEQ_PLAYER_BGM_MAIN,
|
||||
/* 1 */ SEQ_PLAYER_FANFARE,
|
||||
/* 2 */ SEQ_PLAYER_SFX,
|
||||
/* 3 */ SEQ_PLAYER_BGM_SUB,
|
||||
/* 4 */ SEQ_PLAYER_AMBIENCE,
|
||||
/* 5 */ SEQ_PLAYER_MAX,
|
||||
/* 0xFF */ SEQ_PLAYER_INVALID = 0xFF
|
||||
} SequencePlayerId;
|
||||
|
||||
@@ -160,6 +161,14 @@ typedef enum {
|
||||
/* 0x7 */ CHANNEL_IO_PORT_7
|
||||
} ChannelIOPort;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ VOL_SCALE_INDEX_BGM_MAIN,
|
||||
/* 1 */ VOL_SCALE_INDEX_FANFARE,
|
||||
/* 2 */ VOL_SCALE_INDEX_SFX,
|
||||
/* 3 */ VOL_SCALE_INDEX_BGM_SUB,
|
||||
/* 4 */ VOL_SCALE_INDEX_MAX
|
||||
} VolumeScaleIndex; // May be worth using SequencePlayerId instead
|
||||
|
||||
typedef enum {
|
||||
/* 0x0 */ AMBIENCE_CHANNEL_STREAM_0,
|
||||
/* 0x1 */ AMBIENCE_CHANNEL_CRITTER_0,
|
||||
@@ -174,7 +183,7 @@ typedef enum {
|
||||
/* 0xD */ AMBIENCE_CHANNEL_SOUND_MODE,
|
||||
/* 0xE */ AMBIENCE_CHANNEL_RAIN,
|
||||
/* 0xF */ AMBIENCE_CHANNEL_LIGHTNING
|
||||
} AmbienceChannelIndex; // playerIndex = SEQ_PLAYER_AMBIENCE
|
||||
} AmbienceChannelIndex; // seqPlayerIndex = SEQ_PLAYER_AMBIENCE
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ AMBIENCE_ID_00,
|
||||
@@ -198,7 +207,7 @@ typedef enum {
|
||||
/* 0x12 */ AMBIENCE_ID_12,
|
||||
/* 0x13 */ AMBIENCE_ID_13,
|
||||
/* 0xFF */ AMBIENCE_ID_DISABLED = 0xFF
|
||||
} AmbienceId; // playerIndex = SEQ_PLAYER_AMBIENCE
|
||||
} AmbienceId; // seqPlayerIndex = SEQ_PLAYER_AMBIENCE
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ AMBIENCE_STREAM_0,
|
||||
|
||||
+8
-37
@@ -995,14 +995,9 @@ extern u8 gSfxChannelLayout;
|
||||
extern Vec3f gSfxDefaultPos;
|
||||
extern f32 gSfxDefaultFreqAndVolScale;
|
||||
extern s8 gSfxDefaultReverb;
|
||||
// extern UNK_TYPE1 D_801DB4C0;
|
||||
// extern UNK_TYPE1 D_801DB4C4;
|
||||
// extern UNK_TYPE1 D_801DB4C8;
|
||||
// extern UNK_TYPE1 D_801DB4CC;
|
||||
extern u8 gAudioSpecId;
|
||||
// extern UNK_TYPE1 D_801DB4D8;
|
||||
// extern UNK_TYPE4 D_801DB4DC;
|
||||
extern ReverbSettings* gReverbSettingsTable[];
|
||||
extern u8 gAudioHeapResetState;
|
||||
extern ReverbSettings* gReverbSettingsTable[10];
|
||||
extern AudioSpec gAudioSpecs[21];
|
||||
|
||||
// rodata
|
||||
@@ -2669,38 +2664,14 @@ extern s32 D_801FD120;
|
||||
// extern UNK_TYPE1 D_801FD5E8;
|
||||
// extern UNK_TYPE1 D_801FD608;
|
||||
// extern UNK_TYPE1 D_801FD610;
|
||||
// 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;
|
||||
// extern UNK_TYPE1 D_80200000;
|
||||
// extern UNK_TYPE1 D_80200002;
|
||||
// extern UNK_TYPE1 D_80200004;
|
||||
// extern UNK_TYPE1 D_80200008;
|
||||
// extern UNK_TYPE1 D_8020001E;
|
||||
// extern UNK_TYPE1 D_802000C9;
|
||||
// extern UNK_TYPE1 D_802000D4;
|
||||
extern SeqRequest sSeqRequests[][5];
|
||||
extern u8 sNumSeqRequests[5];
|
||||
extern u32 sAudioSeqCmds[0xB0];
|
||||
extern ActiveSequence gActiveSeqs[];
|
||||
// extern UNK_TYPE1 D_8020034A;
|
||||
// extern UNK_TYPE1 D_80200B88;
|
||||
// extern UNK_TYPE1 D_80200BBA;
|
||||
// extern UNK_TYPE1 D_80200BCC;
|
||||
// extern UNK_TYPE1 D_80200BCE;
|
||||
// extern UNK_TYPE1 D_80200BD0;
|
||||
extern u8 sResetAudioHeapTimer;
|
||||
extern u16 sResetAudioHeapFadeReverbVolume;
|
||||
extern u16 sResetAudioHeapFadeReverbVolumeStep;
|
||||
extern AudioContext gAudioCtx; // at 0x80200C70
|
||||
extern AudioCustomUpdateFunction gAudioCustomUpdateFunction;
|
||||
extern AudioCustomSeqFunction gAudioCustomSeqFunction;
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
#include "color.h"
|
||||
#include "ichain.h"
|
||||
#include "sequence.h"
|
||||
#include "seqcmd.h"
|
||||
#include "sfx.h"
|
||||
#include "message_data_static.h"
|
||||
|
||||
|
||||
+40
-34
@@ -11,6 +11,12 @@
|
||||
#define SEQ_NUM_CHANNELS 16
|
||||
#define SEQ_IO_VAL_NONE -1
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ AUDIO_HEAP_RESET_STATE_NONE,
|
||||
/* 1 */ AUDIO_HEAP_RESET_STATE_RESETTING,
|
||||
/* 2 */ AUDIO_HEAP_RESET_STATE_RESETTING_ALT // Never set to
|
||||
} AudioHeapResetState;
|
||||
|
||||
typedef enum {
|
||||
/* 0x00 */ AUDIO_CUSTOM_FUNCTION_SEQ_0,
|
||||
/* 0x01 */ AUDIO_CUSTOM_FUNCTION_SEQ_1,
|
||||
@@ -1090,50 +1096,50 @@ typedef struct {
|
||||
} AudioHeapInitSizes; // size = 0xC
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ f32 unk_00;
|
||||
/* 0x04 */ f32 unk_04;
|
||||
/* 0x08 */ f32 unk_08;
|
||||
/* 0x0C */ f32 unk_10;
|
||||
/* 0x10 */ f32 unk_14;
|
||||
/* 0x14 */ f32 unk_18;
|
||||
/* 0x18 */ u16 unk_0C;
|
||||
/* 0x1A */ u16 unk_1C;
|
||||
} unk_50_s; // size = 0x1C
|
||||
/* 0x00 */ f32 volCur;
|
||||
/* 0x04 */ f32 volTarget;
|
||||
/* 0x08 */ f32 volStep;
|
||||
/* 0x0C */ f32 freqScaleCur;
|
||||
/* 0x10 */ f32 freqScaleTarget;
|
||||
/* 0x14 */ f32 freqScaleStep;
|
||||
/* 0x18 */ u16 volTimer;
|
||||
/* 0x1A */ u16 freqScaleTimer;
|
||||
} ActiveSequenceChannelData; // size = 0x1C
|
||||
|
||||
typedef struct {
|
||||
/* 0x000 */ unk_50_s unk_50[0x10];
|
||||
/* 0x000 */ ActiveSequenceChannelData channelData[SEQ_NUM_CHANNELS];
|
||||
/* 0x1C0 */ f32 volCur;
|
||||
/* 0x1C4 */ f32 volTarget;
|
||||
/* 0x1C8 */ f32 unk_08;
|
||||
/* 0x1CC */ u32 unk_14;
|
||||
/* 0x1D0 */ f32 unk_1C;
|
||||
/* 0x1D4 */ f32 unk_20;
|
||||
/* 0x1D8 */ f32 unk_24;
|
||||
/* 0x1DC */ u32 unk_2C[8];
|
||||
/* 0x1FC */ u32 unk_25C;
|
||||
/* 0x200 */ u16 unk_0C;
|
||||
/* 0x202 */ u16 unk_18;
|
||||
/* 0x204 */ u16 unk_28;
|
||||
/* 0x206 */ u16 unk_250;
|
||||
/* 0x208 */ u16 unk_252;
|
||||
/* 0x1C8 */ f32 volStep;
|
||||
/* 0x1CC */ u32 tempoCmd;
|
||||
/* 0x1D0 */ f32 tempoCur;
|
||||
/* 0x1D4 */ f32 tempoTarget;
|
||||
/* 0x1D8 */ f32 tempoStep;
|
||||
/* 0x1DC */ u32 setupCmd[8]; // setup commands
|
||||
/* 0x1FC */ u32 startAsyncSeqCmd; // temporarily stores the seqCmd used in SEQCMD_PLAY_SEQUENCE, to be called again once the font is reloaded in
|
||||
/* 0x200 */ u16 volTimer;
|
||||
/* 0x202 */ u16 tempoOriginal;
|
||||
/* 0x204 */ u16 tempoTimer;
|
||||
/* 0x206 */ u16 freqScaleChannelFlags;
|
||||
/* 0x208 */ u16 volChannelFlags;
|
||||
/* 0x20A */ u16 seqId;
|
||||
/* 0x20C */ u16 unk_256;
|
||||
/* 0x20E */ u16 unk_258;
|
||||
/* 0x210 */ u8 unk_260;
|
||||
/* 0x211 */ u8 unk_261[0x1];
|
||||
/* 0x212 */ u8 volScales[0x4];
|
||||
/* 0x20C */ u16 prevSeqId; // last seqId played on a player
|
||||
/* 0x20E */ u16 channelPortMask;
|
||||
/* 0x210 */ u8 isWaitingForFonts;
|
||||
/* 0x211 */ u8 fontId;
|
||||
/* 0x212 */ u8 volScales[VOL_SCALE_INDEX_MAX];
|
||||
/* 0x216 */ u8 volFadeTimer;
|
||||
/* 0x217 */ u8 fadeVolUpdate;
|
||||
/* 0x218 */ u8 unk_4C;
|
||||
/* 0x219 */ u8 unk_4D;
|
||||
/* 0x21A */ u8 unk_4E;
|
||||
/* 0x21B */ u8 unk_21B;
|
||||
/* 0x218 */ u8 setupCmdTimer;
|
||||
/* 0x219 */ u8 setupCmdNum; // number of setup commands
|
||||
/* 0x21A */ u8 setupFadeTimer;
|
||||
/* 0x21B */ u8 isSeqPlayerInit;
|
||||
} ActiveSequence; // size = 0x21C
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 unk_0;
|
||||
/* 0x1 */ u8 unk_1; // importance?
|
||||
} Struct_8016E320; // size = 0x02
|
||||
/* 0x0 */ u8 seqId;
|
||||
/* 0x1 */ u8 priority;
|
||||
} SeqRequest; // size = 0x02
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ BANK_PLAYER,
|
||||
|
||||
@@ -622,7 +622,6 @@ beginseg
|
||||
include "build/src/audio/sfx_params.o"
|
||||
include "build/src/audio/sfx.o"
|
||||
include "build/src/audio/sequence.o"
|
||||
include "build/data/code/sequence.data.o"
|
||||
include "build/data/code/sequence.bss.o"
|
||||
include "build/src/audio/session_config.o"
|
||||
include "build/src/code/jpegutils.o"
|
||||
|
||||
+196
-108
File diff suppressed because it is too large
Load Diff
+906
-15
File diff suppressed because it is too large
Load Diff
+4
-4
@@ -102,8 +102,8 @@ void AudioSfx_MuteBanks(u16 muteMask) {
|
||||
void AudioSfx_LowerBgmVolume(u8 channelIndex) {
|
||||
sSfxChannelLowVolumeFlag |= (1 << channelIndex);
|
||||
|
||||
Audio_SetVolumeScale(SEQ_PLAYER_BGM_MAIN, 2, 0x40, 0xF);
|
||||
Audio_SetVolumeScale(SEQ_PLAYER_BGM_SUB, 2, 0x40, 0xF);
|
||||
AudioSeq_SetVolumeScale(SEQ_PLAYER_BGM_MAIN, VOL_SCALE_INDEX_SFX, 0x40, 0xF);
|
||||
AudioSeq_SetVolumeScale(SEQ_PLAYER_BGM_SUB, VOL_SCALE_INDEX_SFX, 0x40, 0xF);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -114,8 +114,8 @@ void AudioSfx_RestoreBgmVolume(u8 channelIndex) {
|
||||
sSfxChannelLowVolumeFlag &= ((1 << channelIndex) ^ 0xFFFF);
|
||||
|
||||
if (sSfxChannelLowVolumeFlag == 0) {
|
||||
Audio_SetVolumeScale(SEQ_PLAYER_BGM_MAIN, 2, 0x7F, 0xF);
|
||||
Audio_SetVolumeScale(SEQ_PLAYER_BGM_SUB, 2, 0x7F, 0xF);
|
||||
AudioSeq_SetVolumeScale(SEQ_PLAYER_BGM_MAIN, VOL_SCALE_INDEX_SFX, 0x7F, 0xF);
|
||||
AudioSeq_SetVolumeScale(SEQ_PLAYER_BGM_SUB, VOL_SCALE_INDEX_SFX, 0x7F, 0xF);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -37,6 +37,6 @@ UNK_TYPE func_801A51F0(UNK_TYPE arg0) {
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/voice_internal/func_801A5808.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/voice_internal/func_801A5A10.s")
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/voice_internal/AudioVoice_ResetData.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/code/voice_internal/func_801A5A1C.s")
|
||||
|
||||
@@ -80,7 +80,7 @@ void AudioMgr_ThreadEntry(void* arg) {
|
||||
|
||||
Audio_Init();
|
||||
AudioLoad_SetDmaHandler(DmaMgr_DmaHandler);
|
||||
func_801A4D00();
|
||||
Audio_InitSound();
|
||||
osSendMesg(&audioMgr->lockMsgQ, NULL, OS_MESG_BLOCK);
|
||||
IrqMgr_AddClient(audioMgr->irqMgr, &irqClient, &audioMgr->interruptMsgQ);
|
||||
|
||||
|
||||
+4
-4
@@ -396,9 +396,9 @@ void Cutscene_Command_FadeSequence(PlayState* play, CutsceneContext* csCtx, CsCm
|
||||
u8 fadeTimer = cmd->endFrame - cmd->startFrame;
|
||||
|
||||
if (cmd->type == 2) {
|
||||
Audio_QueueSeqCmd((fadeTimer << 0x10) | 0x110000FF);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, fadeTimer);
|
||||
} else {
|
||||
Audio_QueueSeqCmd((fadeTimer << 0x10) | NA_BGM_STOP);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, fadeTimer);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -471,7 +471,7 @@ void func_800EADB0(PlayState* play, CutsceneContext* csCtx, CsCmdBase* cmd) {
|
||||
break;
|
||||
|
||||
case 7:
|
||||
seqId = Audio_GetActiveSequence(SEQ_PLAYER_BGM_MAIN);
|
||||
seqId = AudioSeq_GetActiveSeqId(SEQ_PLAYER_BGM_MAIN);
|
||||
break;
|
||||
|
||||
case 8:
|
||||
@@ -492,7 +492,7 @@ void Cutscene_Command_FadeAmbienceSequence(PlayState* play, CutsceneContext* csC
|
||||
if (csCtx->frames == cmd->startFrame && csCtx->frames < cmd->endFrame) {
|
||||
u8 fadeTimer = cmd->endFrame - cmd->startFrame;
|
||||
|
||||
Audio_QueueSeqCmd((fadeTimer << 0x10) | 0x140000FF);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_AMBIENCE, fadeTimer);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -73,7 +73,7 @@ void GameOver_Update(PlayState* play) {
|
||||
break;
|
||||
|
||||
case GAMEOVER_DEATH_FADE_OUT:
|
||||
if (Audio_GetActiveSequence(SEQ_PLAYER_FANFARE) != NA_BGM_GAME_OVER) {
|
||||
if (AudioSeq_GetActiveSeqId(SEQ_PLAYER_FANFARE) != NA_BGM_GAME_OVER) {
|
||||
func_80169F78(&play->state);
|
||||
if (gSaveContext.respawnFlag != -7) {
|
||||
gSaveContext.respawnFlag = -6;
|
||||
|
||||
@@ -4324,7 +4324,7 @@ void Interface_DrawPerfectLetters(PlayState* play) {
|
||||
|
||||
void Interface_StartMoonCrash(PlayState* play) {
|
||||
if (play->actorCtx.flags & ACTORCTX_FLAG_1) {
|
||||
Audio_QueueSeqCmd(0xE0000100);
|
||||
SEQCMD_DISABLE_PLAY_SEQUENCES(false);
|
||||
}
|
||||
|
||||
gSaveContext.save.day = 4;
|
||||
|
||||
+2
-2
@@ -572,7 +572,7 @@ void Play_UpdateTransition(PlayState* this) {
|
||||
((this->nextEntrance == ENTRANCE(TERMINA_FIELD, 2)) && !CHECK_WEEKEVENTREG(WEEKEVENTREG_55_80)) ||
|
||||
((this->nextEntrance == ENTRANCE(ROAD_TO_IKANA, 1)) && !CHECK_WEEKEVENTREG(WEEKEVENTREG_52_20))) &&
|
||||
(!func_800FE590(this) || (Entrance_GetSceneId(this->nextEntrance + sceneLayer) < 0) ||
|
||||
(Audio_GetActiveSequence(SEQ_PLAYER_BGM_MAIN) != NA_BGM_FINAL_HOURS))) {
|
||||
(AudioSeq_GetActiveSeqId(SEQ_PLAYER_BGM_MAIN) != NA_BGM_FINAL_HOURS))) {
|
||||
func_801A4058(20);
|
||||
gSaveContext.seqId = (u8)NA_BGM_DISABLED;
|
||||
gSaveContext.ambienceId = AMBIENCE_ID_DISABLED;
|
||||
@@ -585,7 +585,7 @@ void Play_UpdateTransition(PlayState* this) {
|
||||
}
|
||||
|
||||
if (func_800FE590(this) && (Entrance_GetSceneId(this->nextEntrance + sceneLayer) >= 0) &&
|
||||
(Audio_GetActiveSequence(SEQ_PLAYER_BGM_MAIN) == NA_BGM_FINAL_HOURS)) {
|
||||
(AudioSeq_GetActiveSeqId(SEQ_PLAYER_BGM_MAIN) == NA_BGM_FINAL_HOURS)) {
|
||||
func_801A41C8(20);
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -444,7 +444,7 @@ void Scene_CommandSoundSettings(PlayState* play, SceneCmd* cmd) {
|
||||
play->sequenceCtx.ambienceId = cmd->soundSettings.ambienceId;
|
||||
|
||||
if (gSaveContext.seqId == (u8)NA_BGM_DISABLED ||
|
||||
Audio_GetActiveSequence(SEQ_PLAYER_BGM_MAIN) == NA_BGM_FINAL_HOURS) {
|
||||
AudioSeq_GetActiveSeqId(SEQ_PLAYER_BGM_MAIN) == NA_BGM_FINAL_HOURS) {
|
||||
Audio_SetSpec(cmd->soundSettings.specId);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -979,7 +979,7 @@ void func_809DAB78(Boss02* this, PlayState* play) {
|
||||
}
|
||||
|
||||
if (otherTwinmold->unk_0144 >= 10) {
|
||||
Audio_QueueSeqCmd(NA_BGM_CLEAR_BOSS | 0x8000);
|
||||
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, NA_BGM_CLEAR_BOSS | SEQ_FLAG_ASYNC);
|
||||
}
|
||||
|
||||
Actor_PlaySfx(&this->actor, NA_SE_EN_INBOSS_DEAD_OLD);
|
||||
@@ -1105,7 +1105,7 @@ void func_809DBFB4(Boss02* this, PlayState* play) {
|
||||
this->unk_0144 = 20;
|
||||
|
||||
if (otherTwinmold->unk_0144 >= 10) {
|
||||
Audio_QueueSeqCmd(0x100100FF);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1);
|
||||
} else {
|
||||
otherTwinmold->unk_0195 = 1;
|
||||
}
|
||||
@@ -1311,7 +1311,7 @@ void Boss02_Static_Update(Actor* thisx, PlayState* play) {
|
||||
if (sMusicStartTimer != 0) {
|
||||
sMusicStartTimer--;
|
||||
if (sMusicStartTimer == 0) {
|
||||
Audio_QueueSeqCmd(NA_BGM_BOSS | 0x8000);
|
||||
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, NA_BGM_BOSS | SEQ_FLAG_ASYNC);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -518,7 +518,7 @@ void Boss03_Init(Actor* thisx, PlayState* play2) {
|
||||
if ((KREG(64) != 0) || CHECK_EVENTINF(EVENTINF_56)) {
|
||||
this->actionFunc = func_809E344C;
|
||||
D_809E9842 = false;
|
||||
Audio_QueueSeqCmd(NA_BGM_STOP | 0x10000);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1);
|
||||
} else {
|
||||
Boss03_SetupIntroCutscene(this, play);
|
||||
D_809E9842 = true;
|
||||
@@ -1305,7 +1305,7 @@ void Boss03_IntroCutscene(Boss03* this, PlayState* play) {
|
||||
this->actor.gravity = -1.5f;
|
||||
this->actor.speed = 20.0f;
|
||||
|
||||
Audio_QueueSeqCmd(NA_BGM_BOSS | 0x8000);
|
||||
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, NA_BGM_BOSS | SEQ_FLAG_ASYNC);
|
||||
Actor_PlaySfx(&this->actor, NA_SE_EN_KONB_JUMP_OLD);
|
||||
this->skelAnime.playSpeed = 1.0f;
|
||||
}
|
||||
@@ -1415,7 +1415,7 @@ void Boss03_SetupDeathCutscene(Boss03* this, PlayState* play) {
|
||||
this->actionFunc = Boss03_DeathCutscene;
|
||||
Animation_MorphToLoop(&this->skelAnime, &gGyorgFloppingAnim, -10.0f);
|
||||
this->floppingAnimLastFrame = Animation_GetLastFrame(&gGyorgFloppingAnim);
|
||||
Audio_QueueSeqCmd(NA_BGM_STOP | 0x10000);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 1);
|
||||
this->workTimer[WORK_TIMER_UNK0_C] = 0;
|
||||
this->unk_242 = 0;
|
||||
this->csState = 0;
|
||||
@@ -1558,7 +1558,7 @@ void Boss03_DeathCutscene(Boss03* this, PlayState* play) {
|
||||
|
||||
case 1:
|
||||
if (this->unk_240 == 0x96) {
|
||||
Audio_QueueSeqCmd(NA_BGM_CLEAR_BOSS | 0x8000);
|
||||
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, NA_BGM_CLEAR_BOSS | SEQ_FLAG_ASYNC);
|
||||
}
|
||||
Math_ApproachF(&this->unk_56C, 0.01f, 1.0f, 0.0005f);
|
||||
Math_ApproachF(&this->actor.scale.x, 0.01f, 0.05f, 0.001f);
|
||||
@@ -2084,7 +2084,7 @@ void Boss03_Update(Actor* thisx, PlayState* play2) {
|
||||
if (D_809E9841 != 0) {
|
||||
D_809E9841--;
|
||||
if (D_809E9841 == 0) {
|
||||
Audio_QueueSeqCmd(NA_BGM_BOSS | 0x8000);
|
||||
SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM_MAIN, 0, NA_BGM_BOSS | SEQ_FLAG_ASYNC);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -716,7 +716,7 @@ void DmStk_PlaySfxForEndingCutsceneSecondPart(DmStk* this, PlayState* play) {
|
||||
break;
|
||||
|
||||
case 1730:
|
||||
Audio_QueueSeqCmd(0x141400FF);
|
||||
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_AMBIENCE, 20);
|
||||
break;
|
||||
|
||||
case 1395:
|
||||
@@ -724,7 +724,7 @@ void DmStk_PlaySfxForEndingCutsceneSecondPart(DmStk* this, PlayState* play) {
|
||||
break;
|
||||
|
||||
case 1850:
|
||||
Audio_QueueSeqCmd(0x42320000);
|
||||
SEQCMD_SET_SEQPLAYER_VOLUME(SEQ_PLAYER_SFX, 50, 0);
|
||||
break;
|
||||
|
||||
case 2000:
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user