summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpetrie911 <69443847+petrie911@users.noreply.github.com>2024-04-24 23:14:49 -0500
committerGitHub <noreply@github.com>2024-04-25 01:14:49 -0300
commit0c9be776da37e754a9b9422a945bf1bc5cfd7e75 (patch)
tree645f323b60ddd6b8bd2c85adfe961003898b5190
parenta6b80a5825c4a9ae06223a3879c864589ff13cf1 (diff)
Cumulative docs update (#221)
* lights fix * names * remove header * so many names * format * more docs * makefile
-rw-r--r--Makefile1
-rw-r--r--include/context.h12
-rw-r--r--include/prevent_context_reordering.h6
-rw-r--r--include/sf64audio_external.h36
-rw-r--r--include/sf64audio_provisional.h14
-rw-r--r--include/sf64level.h6
-rw-r--r--include/sf64thread.h34
-rw-r--r--include/variables.h4
-rw-r--r--linker_scripts/us/symbol_addrs.txt2
-rw-r--r--linker_scripts/us/symbol_addrs_audio.txt78
-rw-r--r--linker_scripts/us/symbol_addrs_engine.txt10
-rw-r--r--linker_scripts/us/symbol_addrs_nlib_vars.txt24
-rw-r--r--src/audio/audio_general.c407
-rw-r--r--src/audio/audio_load.c30
-rw-r--r--src/audio/audio_playback.c94
-rw-r--r--src/audio/audio_seqplayer.c206
-rw-r--r--src/audio/audio_synthesis.c4
-rw-r--r--src/audio/audio_thread.c50
-rw-r--r--src/engine/fox_360.c283
-rw-r--r--src/engine/fox_A48A0.c2
-rw-r--r--src/engine/fox_beam.c2
-rw-r--r--src/engine/fox_bg.c2
-rw-r--r--src/engine/fox_context.c14
-rw-r--r--src/engine/fox_demo.c12
-rw-r--r--src/engine/fox_edisplay.c4
-rw-r--r--src/engine/fox_enmy.c8
-rw-r--r--src/engine/fox_enmy2.c34
-rw-r--r--src/engine/fox_game.c4
-rw-r--r--src/engine/fox_hud.c26
-rw-r--r--src/engine/fox_play.c38
-rw-r--r--src/engine/fox_save.c8
-rw-r--r--src/engine/fox_versus.c2
-rw-r--r--src/libultra/io/pfsgetstatus.c10
-rw-r--r--src/mods/levelselect.c5
-rw-r--r--src/overlays/ovl_ending/fox_end2.c10
-rw-r--r--src/overlays/ovl_i1/fox_co.c6
-rw-r--r--src/overlays/ovl_i1/fox_tr360.c2
-rw-r--r--src/overlays/ovl_i1/fox_ve1.c2
-rw-r--r--src/overlays/ovl_i2/fox_me.c4
-rw-r--r--src/overlays/ovl_i2/fox_sx.c4
-rw-r--r--src/overlays/ovl_i3/fox_a6.c4
-rw-r--r--src/overlays/ovl_i3/fox_so.c8
-rw-r--r--src/overlays/ovl_i3/fox_zo.c10
-rw-r--r--src/overlays/ovl_i4/fox_bo.c58
-rw-r--r--src/overlays/ovl_i4/fox_fo.c34
-rw-r--r--src/overlays/ovl_i4/fox_ka.c16
-rw-r--r--src/overlays/ovl_i4/fox_sz.c12
-rw-r--r--src/overlays/ovl_i5/fox_ma.c32
-rw-r--r--src/overlays/ovl_i5/fox_ti.c8
-rw-r--r--src/overlays/ovl_i5/fox_ti_cs.c4
-rw-r--r--src/overlays/ovl_i6/fox_andross.c18
-rw-r--r--src/overlays/ovl_i6/fox_sy.c6
-rw-r--r--src/overlays/ovl_i6/fox_ve2.c6
-rw-r--r--src/overlays/ovl_menu/fox_map.c182
-rw-r--r--src/overlays/ovl_menu/fox_option.c30
-rw-r--r--src/overlays/ovl_menu/fox_title.c4
-rw-r--r--src/sys/sys_fault.c12
-rw-r--r--src/sys/sys_joybus.c14
-rw-r--r--src/sys/sys_lib.c8
-rw-r--r--src/sys/sys_main.c121
-rw-r--r--src/sys/sys_timer.c6
m---------tools/Torch0
62 files changed, 1058 insertions, 1035 deletions
diff --git a/Makefile b/Makefile
index 41aaebe9..5938057c 100644
--- a/Makefile
+++ b/Makefile
@@ -378,6 +378,7 @@ toolchain:
torch:
@$(MAKE) -s -C tools torch
+ rm -f torch.hash.yml
init:
@$(MAKE) clean
diff --git a/include/context.h b/include/context.h
index 69b40f0b..cae98592 100644
--- a/include/context.h
+++ b/include/context.h
@@ -24,7 +24,7 @@ extern s32 gTeamShields[6];
extern s32 gSavedTeamShields[6];
extern s32 gPrevPlanetSavedTeamShields[6];
extern s32 gTeamDamage[6];
-extern u8 gNextPlanetPath; // next planet path
+extern u8 gMissionStatus; // next planet path
extern f32 gGroundHeight;
extern f32 D_ctx_80177950;
extern f32 D_ctx_80177968;
@@ -47,11 +47,11 @@ extern u8 gAqDrawMode;
extern s32 D_ctx_80177AE0;
extern s32 gMainController;
extern s32 D_ctx_80177B40;
-extern PlanetId gMissionNumber; // D_ctx_80177B48 // Arrow pointer?
-extern s32 D_ctx_80177B50[7];
-extern s32 D_ctx_80177B70[7];
-extern PlanetId D_ctx_80177B90[7];
-extern s32 D_ctx_80177BB0[7];
+extern s32 gMissionNumber;
+extern s32 gMissionTeamStatus[7];
+extern s32 gMissionHitCount[7];
+extern PlanetId gMissionPlanet[7];
+extern s32 gMissionMedal[7];
extern s32 gPlanetPathStatus[]; // overruns D_ctx_80177C30?
extern s32 gPrevPlanetTeamShields[6];
extern s32 D_ctx_80177C58[6];
diff --git a/include/prevent_context_reordering.h b/include/prevent_context_reordering.h
index 9da5e25d..31026d79 100644
--- a/include/prevent_context_reordering.h
+++ b/include/prevent_context_reordering.h
@@ -1,12 +1,12 @@
#ifndef PREVENT_CONTEXT_REORDERING_H
#define PREVENT_CONTEXT_REORDERING_H
-// extern int Dummyhalf;
+extern int Dummyhalf;
// struct Dummy0 {int x;};
// struct Dummy1 {int x;};
// struct Dummy2 {int x;};
-struct Dummy3 {int x;};
-struct Dummy4 {int x;};
+// struct Dummy3 {int x;};
+// struct Dummy4 {int x;};
struct Dummy5 {int x;};
struct Dummy6 {int x;};
struct Dummy7 {int x;};
diff --git a/include/sf64audio_external.h b/include/sf64audio_external.h
index 51e9e3e9..db903add 100644
--- a/include/sf64audio_external.h
+++ b/include/sf64audio_external.h
@@ -151,29 +151,29 @@ void Audio_PlayVoiceWithoutBGM(u32 msgId);
void Audio_ClearVoice(void);
s32 Audio_GetCurrentVoice(void);
s32 Audio_GetCurrentVoiceStatus(void);
-void func_8001AF40(u8 unkVoiceParam);
+void Audio_SetUnkVoiceParam(u8 unkVoiceParam);
u8* Audio_UpdateFrequencyAnalysis(void);
void Audio_StartPlayerNoise(u8 playerId);
-void func_8001CA24(u8 playerId);
-void func_8001CB80(u8 playerId, u8 arg1);
-void func_8001CCDC(u8 playerId, f32* sfxSource);
-void func_8001CE28(u8 playerId, f32* sfxSource);
-void func_8001CF60(f32* sfxSource);
-void func_8001CFA8(f32 arg0);
-void func_8001D034(f32* sfxSource, u32 sfxId, u8 semitones);
-void func_8001D0B4(f32* sfxSource, u32 sfxId, f32 freqMod);
-void func_8001D10C(f32* sfxSource, u32 sfxId);
-void func_8001D15C(u8 arg0);
-void func_8001D1C8(u8 arg0, u8 arg1);
-void Audio_PlayEventSfx(f32* sfxSource, u16 arg1);
-void Audio_StopEventSfx(f32* sfxSource, u16 arg1);
-void Audio_SetBaseSfxReverb(s8 reverb);
+void Audio_StopPlayerNoise(u8 playerId);
+void Audio_InitBombSfx(u8 playerId, u8 type);
+void Audio_PlayBombFlightSfx(u8 playerId, f32* sfxSource);
+void Audio_PlayBombExplodeSfx(u8 playerId, f32* sfxSource);
+void Audio_StopEngineNoise(f32* sfxSource);
+void Audio_SetSfxSpeedModulation(f32 vel);
+void Audio_SetTransposeAndPlaySfx(f32* sfxSource, u32 sfxId, u8 semitones);
+void Audio_SetModulationAndPlaySfx(f32* sfxSource, u32 sfxId, f32 freqMod);
+void Audio_PlaySfxModulated(f32* sfxSource, u32 sfxId);
+void Audio_SetSfxMapModulation(u8 fMod);
+void Audio_SetHeatAlarmParams(u8 shields, u8 heightParam);
+void Audio_PlayEventSfx(f32* sfxSource, u16 eventSfxId);
+void Audio_StopEventSfx(f32* sfxSource, u16 eventSfxId);
+void Audio_SetEnvSfxReverb(s8 reverb);
void Audio_SetBgmParam(s8 bgmParam);
void Audio_PlaySequence(u8 seqPlayId, u16 seqId, u8 fadeinTime, u8 bgmParam);
void Audio_PlayFanfare(u16 seqId, u8 bgmVolume, u8 bgmFadeoutTime, u8 bgmFadeinTime);
-void func_8001D520(void);
-void func_8001D638(u8 arg0);
-void func_8001D6DC(u8 arg0);
+void Audio_PlayDeathSequence(void);
+void Audio_PlayPauseSfx(u8 active);
+void Audio_PlayMapMenuSfx(u8 active);
void Audio_SetVolume(u8 audioType, u8 volume);
void Audio_PlaySoundTest(u8 enable);
void Audio_PlaySequenceDistorted(u8 seqPlayId, u16 seqId, u16 distortion, u8 fadeinTime, u8 unused);
diff --git a/include/sf64audio_provisional.h b/include/sf64audio_provisional.h
index 8cece3a1..9abfc390 100644
--- a/include/sf64audio_provisional.h
+++ b/include/sf64audio_provisional.h
@@ -122,6 +122,12 @@ typedef enum {
/* 5 */ LOAD_STATUS_PERMANENTLY_LOADED // the entry data is loaded in the permanent pool, it won't be discarded
} AudioLoadStatus;
+typedef enum AudioResetStatus {
+ AUDIORESET_READY,
+ AUDIORESET_WAIT,
+ AUDIORESET_BLOCK,
+} AudioResetStatus;
+
typedef s32 (*DmaHandler)(OSPiHandle* handle, OSIoMesg* mb, s32 direction);
struct Note;
@@ -752,7 +758,7 @@ typedef struct {
/* 0x14 */ u32 chunkSize;
/* 0x18 */ OSMesg retMsg;
/* 0x1C */ OSMesgQueue* retQueue;
- /* 0x20 */ OSMesgQueue msgQueue;
+ /* 0x20 */ OSMesgQueue mesgQueue;
/* 0x38 */ OSMesg msg;
/* 0x3C */ OSIoMesg ioMesg;
} AudioAsyncLoad; // size = 0x54
@@ -768,7 +774,7 @@ typedef struct {
/* 0x14 */ s32 bytesRemaining;
/* 0x18 */ s8* status; // write-only
/* 0x1C */ Sample sample;
- /* 0x2C */ OSMesgQueue msgQueue;
+ /* 0x2C */ OSMesgQueue mesgQueue;
/* 0x44 */ OSMesg msg;
/* 0x48 */ OSIoMesg ioMesg;
} AudioSlowLoad; // size = 0x60
@@ -812,7 +818,7 @@ typedef struct SampleDma {
typedef struct {
/* 0x00 */ OSTask task;
- /* 0x40 */ OSMesgQueue* msgQueue;
+ /* 0x40 */ OSMesgQueue* mesgQueue;
/* 0x44 */ void* unk_44; // probably a message that gets unused.
/* 0x48 */ char unk_48[0x8];
} AudioTask; // size = 0x50
@@ -1081,7 +1087,7 @@ void func_800168BC(void);
void AudioThread_ScheduleProcessCmds(void);
u32 AudioThread_GetAsyncLoadStatus(u32 *);
u8* AudioThread_GetFontsForSequence(s32 seqId, u32* outNumFonts);
-s32 func_8001ED34(void);
+bool AudioThread_ResetComplete(void);
void AudioThread_ResetAudioHeap(s32);
void AudioThread_Init(void);
diff --git a/include/sf64level.h b/include/sf64level.h
index 24f7aaeb..f1f03a4a 100644
--- a/include/sf64level.h
+++ b/include/sf64level.h
@@ -12,6 +12,12 @@ typedef enum {
/* 3 */ LEVELTYPE_UNK3,
} LevelType;
+typedef enum {
+ /* 0 */ MISSION_COMPLETE,
+ /* 1 */ MISSION_ACCOMPLISHED,
+ /* 2 */ MISSION_WARP,
+} MissionStatus;
+
typedef struct {
/* 0x00 */ s32 type;
/* 0x04 */ s32 unk_04;
diff --git a/include/sf64thread.h b/include/sf64thread.h
index e56936dd..e3d20022 100644
--- a/include/sf64thread.h
+++ b/include/sf64thread.h
@@ -42,7 +42,7 @@ typedef struct {
typedef struct {
/* 0x000 */ OSThread thread;
/* 0x1B0 */ char stack[0x800];
- /* 0x9B0 */ OSMesgQueue msgQueue;
+ /* 0x9B0 */ OSMesgQueue mesgQueue;
/* 0x9C8 */ OSMesg msg;
/* 0x9CC */ FrameBuffer* fb;
/* 0x9D0 */ u16 width;
@@ -59,7 +59,7 @@ typedef enum {
typedef struct {
/* 0x00 */ OSTask task;
- /* 0x40 */ OSMesgQueue* msgQueue;
+ /* 0x40 */ OSMesgQueue* mesgQueue;
/* 0x44 */ OSMesg msg;
/* 0x48 */ SpTaskState state;
} SPTask; // size = 0x50, 0x8 aligned
@@ -126,32 +126,32 @@ extern u32 gSegments[16]; // 800E1FD0
extern OSMesgQueue gPiMgrCmdQueue; // 800E2010
extern OSMesg sPiMgrCmdBuff[50]; // 800E2028
-extern OSMesgQueue gDmaMsgQueue;
+extern OSMesgQueue gDmaMesgQueue;
extern OSMesg sDmaMsgBuff[1];
extern OSIoMesg gDmaIOMsg;
extern OSMesgQueue gSerialEventQueue;
extern OSMesg sSerialEventBuff[1];
-extern OSMesgQueue gMainThreadMsgQueue;
+extern OSMesgQueue gMainThreadMesgQueue;
extern OSMesg sMainThreadMsgBuff[32];
-extern OSMesgQueue gTaskMsgQueue;
+extern OSMesgQueue gTaskMesgQueue;
extern OSMesg sTaskMsgBuff[16];
-extern OSMesgQueue gAudioVImsgQueue;
+extern OSMesgQueue gAudioVImesgQueue;
extern OSMesg sAudioVImsgBuff[1];
-extern OSMesgQueue gAudioTaskMsgQueue;
+extern OSMesgQueue gAudioTaskMesgQueue;
extern OSMesg sAudioTaskMsgBuff[1];
-extern OSMesgQueue gGfxVImsgQueue;
+extern OSMesgQueue gGfxVImesgQueue;
extern OSMesg sGfxVImsgBuff[4];
-extern OSMesgQueue gGfxTaskMsgQueue;
+extern OSMesgQueue gGfxTaskMesgQueue;
extern OSMesg sGfxTaskMsgBuff[2];
-extern OSMesgQueue gSerialThreadMsgQueue;
+extern OSMesgQueue gSerialThreadMesgQueue;
extern OSMesg sSerialThreadMsgBuff[8];
-extern OSMesgQueue gControllerMsgQueue;
+extern OSMesgQueue gControllerMesgQueue;
extern OSMesg sControllerMsgBuff[1];
-extern OSMesgQueue gSaveMsgQueue;
+extern OSMesgQueue gSaveMesgQueue;
extern OSMesg sSaveMsgBuff[1];
-extern OSMesgQueue gTimerTaskMsgQueue;
+extern OSMesgQueue gTimerTaskMesgQueue;
extern OSMesg sTimerTaskMsgBuff[16];
-extern OSMesgQueue gTimerWaitMsgQueue;
+extern OSMesgQueue gTimerWaitMesgQueue;
extern OSMesg sTimerWaitMsgBuff[1];
extern GfxPool gGfxPools[2]; // 800E23B0
@@ -182,7 +182,11 @@ extern OSThread gMainThread; // 8013A040
extern u8 sMainThreadStack[0x1000]; // 8013A1F0
extern OSThread gAudioThread; //8013B1F0
-#define MSG_QUEUE_EMPTY -1
+#define MESG_QUEUE_EMPTY -1
+
+#define MQ_GET_MESG(mq, mesg) (osRecvMesg((mq), (OSMesg*) (mesg), OS_MESG_NOBLOCK) != -1)
+#define MQ_WAIT_FOR_MESG(mq, mesg) osRecvMesg((mq), (OSMesg*) (mesg), OS_MESG_BLOCK)
+#define MQ_CLEAR_QUEUE(mq) do {s32 m1 = -1; s32 mesg; do {} while(osRecvMesg((mq), (OSMesg*) &(mesg), OS_MESG_NOBLOCK) != m1);} while(0)
#define FAULT_MESG_BREAK 1
#define FAULT_MESG_FAULT 2
diff --git a/include/variables.h b/include/variables.h
index 5fbe0197..aa2b6f9c 100644
--- a/include/variables.h
+++ b/include/variables.h
@@ -89,7 +89,7 @@ extern CollisionHeader2 D_800D2CA0[];
// fox_play
extern u8 gVenomHardClear;
-extern u8 D_play_800D3180[30];
+extern u8 gLeveLClearStatus[30];
// fox_radio
extern s32 gCurrentMsgPri;
@@ -99,7 +99,7 @@ extern s32 gAllRangeSupplyTimer;
extern s32 sStarWolfKillTimer;
extern s16 gStarWolfMsgTimer;
extern s32 gAllRangeWingRepairTimer;
-extern s32 gAllRangeWingRepairSent;
+extern s32 gAllRangeSuppliesSent;
extern f32 gSzMissileR;
extern f32 gSzMissileG;
extern f32 gSzMissileB;
diff --git a/linker_scripts/us/symbol_addrs.txt b/linker_scripts/us/symbol_addrs.txt
index b629a9f5..2f4d01f7 100644
--- a/linker_scripts/us/symbol_addrs.txt
+++ b/linker_scripts/us/symbol_addrs.txt
@@ -70,7 +70,7 @@ D_display_801613E0 = 0x801613E0;//size:0x18
D_edata_800CC124 = 0x800CC124;//type:u8
D_boss_800C9E90 = 0x800C9E90;//size:0x70
-D_play_800D3180 = 0x800D3180; // size:0x20
+gLeveLClearStatus = 0x800D3180; // size:0x20
gRcpSetupDLs = 0x800D31B0; // size:0x18C0
D_edisplay_800CFCA0 = 0x800CFCA0;
diff --git a/linker_scripts/us/symbol_addrs_audio.txt b/linker_scripts/us/symbol_addrs_audio.txt
index bf9f7536..c3f16723 100644
--- a/linker_scripts/us/symbol_addrs_audio.txt
+++ b/linker_scripts/us/symbol_addrs_audio.txt
@@ -23,10 +23,10 @@ sSeqCmdWritePos = 0x800C5D44;
sSeqCmdReadPos = 0x800C5D48;
sStartSeqDisabled = 0x800C5D4C;
sSoundModeList = 0x800C5D50;
-sNewAudioSpecId = 0x800C5D54;
+sAudioSpecId = 0x800C5D54;
D_800C5D58 = 0x800C5D58;
-sBaseReverb = 0x800C5D60;
+sEnvReverb = 0x800C5D60;
sAudioSpecReverb = 0x800C5D64;
sVolumeSettings = 0x800C5D68;
D_800C5D6C = 0x800C5D6C;
@@ -39,7 +39,7 @@ sSfxVolMod = 0x800C5E78;
sPlaylistIndex = 0x800C5E7C;
sPlaylistTimer = 0x800C5E80;
sPlaylistCmdIndex = 0x800C5E84;
-D_800C5E88 = 0x800C5E88;
+sEventSfx = 0x800C5E88;
sSoundTestTracks = 0x800C5EE4;
sPlaylists = 0x800C5FF4; //type:u16 size:5000
@@ -47,7 +47,7 @@ D_800C7380 = 0x800C7380;
D_800C7384 = 0x800C7384;
D_800C7388 = 0x800C7388;
D_800C738C = 0x800C738C;
-D_800C7390 = 0x800C7390;
+sUnkVoiceParam = 0x800C7390;
D_800C7394 = 0x800C7394;
D_800C7398 = 0x800C7398;
D_800C7418 = 0x800C7418;
@@ -67,7 +67,7 @@ gThreadCmdWritePos = 0x800C7C50;
gThreadCmdReadPos = 0x800C7C54;
gAudioTaskStartQueue = 0x800C7C58;
gThreadCmdProcQueue = 0x800C7C5C;
-gAudioUnkQueue = 0x800C7C60;
+gAudioSpecQueue = 0x800C7C60;
gAudioResetQueue = 0x800C7C64;
gMaxAbiCmdCnt = 0x800C7C68;
gWaitingAudioTask = 0x800C7C6C;
@@ -106,7 +106,7 @@ D_80149AD8 = 0x80149AD8;
D_80149ED8 = 0x80149ED8;
D_8014A2D8 = 0x8014A2D8;
D_8014A8D8 = 0x8014A8D8;
-D_8014A958 = 0x8014A958;
+sFreqAnalyzerBars = 0x8014A958;
sSeqRequests = 0x8014A978;
sNumSeqRequests = 0x8014A9A0;
sAudioSeqCmds = 0x8014A9A8;
@@ -115,10 +115,10 @@ sDelayedSeqCmdFlags = 0x8014B708;
sDelayedSeqCmds = 0x8014B710;
sSfxChannelState = 0x8014B790;
sPlayerNoise = 0x8014B850;
-D_8014BA10 = 0x8014BA10;
-D_8014BA20 = 0x8014BA20;
-D_8014BA24 = 0x8014BA24;
-D_8014BA28 = 0x8014BA28;
+sBombFreqMod = 0x8014BA10;
+sBombType = 0x8014BA20;
+sBombState = 0x8014BA24;
+sBombStartFrame = 0x8014BA28;
gAudioContextStart = 0x8014BA40; // size:0x10
gSynthReverbs = 0x8014BA50; // size:0x750
@@ -212,12 +212,12 @@ gAudioContextEnd = 0x80155D90;//size:0x10
sAudioTaskStartQueue = 0x80155DA0;
sThreadCmdProcQueue = 0x80155DB8;
-sAudioUnkQueue = 0x80155DD0;
+sAudioSpecQueue = 0x80155DD0;
sAudioResetQueue = 0x80155DE8;
gThreadCmdBuffer = 0x80155E00;
sAudioTaskStartMsg = 0x80156600;
sThreadCmdProcMsg = 0x80156608;
-sAudioUnkMsg = 0x80156618;
+sAudioSpecMsg = 0x80156618;
sAudioResetMsg = 0x8015661C;
@@ -408,8 +408,8 @@ Audio_GetSfxPan = 0x80016CDC;
Audio_GetSfxFreqMod = 0x80016EE4;
Audio_SetSfxProperties = 0x80016FF0;
Audio_UpdateDopplerShift = 0x80017360;
-func_80017494 = 0x80017494;
-func_80017550 = 0x80017550;
+Audio_LoadInstruments = 0x80017494;
+Audio_LoadAquasSequence = 0x80017550;
Audio_ResetSfxChannelState = 0x80017588;
Audio_StartSequence = 0x80017600;
Audio_StopSequence = 0x80017760;
@@ -420,12 +420,12 @@ Audio_GetActiveSeqId = 0x8001839C;
Audio_SeqCmdNotQueued = 0x80018410;
Audio_SeqCmdValueNotQueued = 0x80018470;
Audio_ResetSequenceRequests = 0x800184D4;
-func_800184EC = 0x800184EC;
+Audio_DisableSetupOp = 0x800184EC;
Audio_SetSequenceFade = 0x800185A0;
Audio_UpdateActiveSequences = 0x800185F8;
Audio_SetDelayedSeqCmd = 0x80018E9C;
Audio_UpdateDelayedSeqCmds = 0x80018EE0;
-func_80018FA4 = 0x80018FA4;
+Audio_HandleReset = 0x80018FA4;
Audio_ResetActiveSequences = 0x80019068;
Audio_ResetActiveSequencesAndVolume = 0x800190E4;
Audio_SetSfxBanksMute = 0x80019158;
@@ -454,8 +454,8 @@ Audio_UpdateVoice = 0x8001AD44;
Audio_ClearVoice = 0x8001AE58;
Audio_GetCurrentVoice = 0x8001AE78;
Audio_GetCurrentVoiceStatus = 0x8001AED4;
-func_8001AF40 = 0x8001AF40;
-func_8001AF50 = 0x8001AF50;
+Audio_SetUnkVoiceParam = 0x8001AF40;
+Audio_UpdateUnkVoiceParam = 0x8001AF50;
Audio_ResetPlayerFreqMods = 0x8001AF9C;
Audio_UpdateArwingNoise = 0x8001B014;
Audio_UpdateLandmasterNoise = 0x8001B454;
@@ -465,31 +465,31 @@ Audio_UpdatePlayerReverb = 0x8001BB74;
Audio_UpdatePlayerNoise = 0x8001BC20;
Audio_ResetVoicesAndPlayers = 0x8001BC48;
Audio_ProcessPlaylist = 0x8001BD0C;
-func_8001BFC0 = 0x8001BFC0;
+Audio_AnalyzeFrequencies = 0x8001BFC0;
Audio_UpdateFrequencyAnalysis = 0x8001C3EC;
Audio_StartPlayerNoise = 0x8001C8B8;
-func_8001CA24 = 0x8001CA24;
-func_8001CB80 = 0x8001CB80;
-func_8001CCDC = 0x8001CCDC;
-func_8001CE28 = 0x8001CE28;
-func_8001CEFC = 0x8001CEFC;
-func_8001CF60 = 0x8001CF60;
-func_8001CFA8 = 0x8001CFA8;
-func_8001D034 = 0x8001D034;
-func_8001D0B4 = 0x8001D0B4;
-func_8001D10C = 0x8001D10C;
-func_8001D15C = 0x8001D15C;
-func_8001D1C8 = 0x8001D1C8;
+Audio_StopPlayerNoise = 0x8001CA24;
+Audio_InitBombSfx = 0x8001CB80;
+Audio_PlayBombFlightSfx = 0x8001CCDC;
+Audio_PlayBombExplodeSfx = 0x8001CE28;
+Audio_StartEngineNoise = 0x8001CEFC;
+Audio_StopEngineNoise = 0x8001CF60;
+Audio_SetSfxSpeedModulation = 0x8001CFA8;
+Audio_SetTransposeAndPlaySfx = 0x8001D034;
+Audio_SetModulationAndPlaySfx = 0x8001D0B4;
+Audio_PlaySfxModulated = 0x8001D10C;
+Audio_SetSfxMapModulation = 0x8001D15C;
+Audio_SetHeatAlarmParams = 0x8001D1C8;
Audio_PlayEventSfx = 0x8001D2FC;
Audio_StopEventSfx = 0x8001D3A0;
-Audio_SetBaseSfxReverb = 0x8001D400;
+Audio_SetEnvSfxReverb = 0x8001D400;
Audio_SetBgmParam = 0x8001D410;
Audio_PlaySequence = 0x8001D444;
Audio_PlayFanfare = 0x8001D4AC;
-func_8001D520 = 0x8001D520;
-func_8001D638 = 0x8001D638;
-func_8001D6DC = 0x8001D6DC;
-func_8001D780 = 0x8001D780;
+Audio_PlayDeathSequence = 0x8001D520;
+Audio_PlayPauseSfx = 0x8001D638;
+Audio_PlayMapMenuSfx = 0x8001D6DC;
+Audio_RestoreVolumeSettings = 0x8001D780;
Audio_SetVolume = 0x8001D8A8;
Audio_PlaySoundTest = 0x8001D8F4;
Audio_PlaySequenceDistorted = 0x8001D9E0;
@@ -499,8 +499,8 @@ Audio_KillAllSfx = 0x8001DC2C;
Audio_SetAudioSpec = 0x8001DC6C;
Audio_PlayBgm = 0x8001DCB4;
Audio_InitSounds = 0x8001DCE0;
-func_8001DD40 = 0x8001DD40;
-func_8001DE1C = 0x8001DE1C;
+Audio_RestartSeqPlayers = 0x8001DD40;
+Audio_StartReset = 0x8001DE1C;
Audio_Update = 0x8001DECC;
@@ -519,7 +519,7 @@ AudioThread_ResetCmdQueue = 0x8001E998;
AudioThread_ProcessCmds = 0x8001E9AC;
AudioThread_GetAsyncLoadStatus = 0x8001ECAC;
AudioThread_GetFontsForSequence = 0x8001ED14;
-func_8001ED34 = 0x8001ED34;
+AudioThread_ResetComplete = 0x8001ED34;
AudioThread_ResetAudioHeap = 0x8001ED8C;
AudioThread_PreNMIReset = 0x8001EE00;
AudioThread_Init = 0x8001EE3C;
diff --git a/linker_scripts/us/symbol_addrs_engine.txt b/linker_scripts/us/symbol_addrs_engine.txt
index 2d93d445..03dd42b3 100644
--- a/linker_scripts/us/symbol_addrs_engine.txt
+++ b/linker_scripts/us/symbol_addrs_engine.txt
@@ -472,7 +472,7 @@ gPrevPlanetSavedTeamShields = 0x801778F0;//size=0x18
gBoostButton = 0x80177908;
gTeamDamage = 0x80177910;
gBrakeButton = 0x80177928;
-gNextPlanetPath = 0x80177930;
+gMissionStatus = 0x80177930;
gShootButton = 0x80177938;
gGroundHeight = 0x80177940;
gBombButton = 0x80177948;
@@ -512,10 +512,10 @@ gVsLockOnTimers = 0x80177B00;
D_ctx_80177B40 = 0x80177B40;
gStartAndrossFightTimer = 0x80177B44;
gMissionNumber = 0x80177B48;
-D_ctx_80177B50 = 0x80177B50;
-D_ctx_80177B70 = 0x80177B70;
-D_ctx_80177B90 = 0x80177B90;
-D_ctx_80177BB0 = 0x80177BB0;
+gMissionTeamStatus = 0x80177B50;
+gMissionHitCount = 0x80177B70;
+gMissionPlanet = 0x80177B90;
+gMissionMedal = 0x80177BB0;
gControllerRumbleTimers = 0x80177BD0;
gPlanetPathStatus = 0x80177BD8;
D_ctx_80177C30 = 0x80177C30;
diff --git a/linker_scripts/us/symbol_addrs_nlib_vars.txt b/linker_scripts/us/symbol_addrs_nlib_vars.txt
index 7df28f31..4bfa4433 100644
--- a/linker_scripts/us/symbol_addrs_nlib_vars.txt
+++ b/linker_scripts/us/symbol_addrs_nlib_vars.txt
@@ -35,33 +35,33 @@ gSegments = 0x800E1FD0;
gPiMgrCmdQueue = 0x800E2010;
sPiMgrCmdBuff = 0x800E2028;
-gDmaMsgQueue = 0x800E20F0;
+gDmaMesgQueue = 0x800E20F0;
sDmaMsgBuff = 0x800E2108;
gDmaIOMsg = 0x800E2110;
gSerialEventQueue = 0x800E2128;
sSerialEventBuff = 0x800E2140;
-gMainThreadMsgQueue = 0x800E2148;
+gMainThreadMesgQueue = 0x800E2148;
sMainThreadMsgBuff = 0x800E2160;
-gTaskMsgQueue = 0x800E21E0;
+gTaskMesgQueue = 0x800E21E0;
sTaskMsgBuff = 0x800E21F8;
-gAudioVImsgQueue = 0x800E2238;
-gAudioTaskMsgQueue = 0x800E2258;
-gGfxVImsgQueue = 0x800E2278;
-gGfxTaskMsgQueue = 0x800E22A0;
+gAudioVImesgQueue = 0x800E2238;
+gAudioTaskMesgQueue = 0x800E2258;
+gGfxVImesgQueue = 0x800E2278;
+gGfxTaskMesgQueue = 0x800E22A0;
sAudioVImsgBuff = 0x800E2250;
sAudioTaskMsgBuff = 0x800E2270;
sGfxVImsgBuff = 0x800E2290;
sGfxTaskMsgBuff = 0x800E22B8;
-gSerialThreadMsgQueue = 0x800E22C0;
+gSerialThreadMesgQueue = 0x800E22C0;
sSerialThreadMsgBuff = 0x800E22D8;
-gControllerMsgQueue = 0x800E22F8;
+gControllerMesgQueue = 0x800E22F8;
sControllerMsgBuff = 0x800E2310;
-gSaveMsgQueue = 0x800E2318;
+gSaveMesgQueue = 0x800E2318;
sSaveMsgBuff = 0x800E2330;
-gTimerTaskMsgQueue = 0x800E2338;
+gTimerTaskMesgQueue = 0x800E2338;
sTimerTaskMsgBuff = 0x800E2350;
-gTimerWaitMsgQueue = 0x800E2390;
+gTimerWaitMesgQueue = 0x800E2390;
sTimerWaitMsgBuff = 0x800E23A8;
gGfxPools = 0x800E23B0; // size:0x55AA0
diff --git a/src/audio/audio_general.c b/src/audio/audio_general.c
index 04ee7736..cbabdbc5 100644
--- a/src/audio/audio_general.c
+++ b/src/audio/audio_general.c
@@ -4,15 +4,15 @@
#include "audiothread_cmd.h"
#include "audioseq_cmd.h"
-void func_8001D0B4(f32* sfxSource, u32 sfxId, f32 freqMod);
+void Audio_SetModulationAndPlaySfx(f32* sfxSource, u32 sfxId, f32 freqMod);
s32 Audio_GetCurrentVoice(void);
void Audio_PlaySequence(u8, u16, u8, u8);
void Audio_PlayFanfare(u16, u8, u8, u8);
void Audio_PlaySequenceDistorted(u8, u16, u16, u8, u8);
-void func_8001DD40(void);
-void func_8001D6DC(u8);
-void func_8001DE1C(u8);
+void Audio_RestartSeqPlayers(void);
+void Audio_PlayMapMenuSfx(u8);
+void Audio_StartReset(u8);
static const char devstr1[] = "preload start (%d): ";
static const char devstr2[] = "%d ";
@@ -45,11 +45,11 @@ ActiveSfx sActiveSfx[5][8];
u8 sCurSfxPlayerChannelIndex;
u8 sSfxBankMuted[5];
Modulation sSfxVolumeMods[5];
-f32 D_80149AD8[256];
-f32 D_80149ED8[256];
-f32 D_8014A2D8[384];
-f32 D_8014A8D8[32];
-u8 D_8014A958[32];
+f32 sAudioAnalyzerData[256];
+f32 sAnalyzerBuffer1[256];
+f32 sAnalyzerBuffer2[384];
+f32 sNewFreqAmplitudes[32];
+u8 sFreqAnalyzerBars[32];
SeqRequest sSeqRequests[4][5];
u8 sNumSeqRequests[4];
s32 sAudioSeqCmds[256];
@@ -58,10 +58,10 @@ u16 sDelayedSeqCmdFlags;
DelayedSeqCmd sDelayedSeqCmds[16];
SfxChannelState sSfxChannelState[16];
PlayerNoiseModulation sPlayerNoise[4];
-f32 D_8014BA10[4];
-u8 D_8014BA20[4];
-u8 D_8014BA24[4];
-s32 D_8014BA28[4];
+f32 sBombFreqMod[4];
+u8 sBombType[4];
+u8 sBombState[4];
+s32 sBombStartFrame[4];
u8 sChannelsPerBank[5][5] = {
{ 3, 2, 2, 2, 2 }, { 3, 1, 2, 2, 2 }, { 3, 2, 2, 2, 3 }, { 6, 0, 2, 0, 4 }, { 0, 0, 0, 0, 0 },
@@ -82,13 +82,13 @@ u8 sSeqCmdWritePos = 0;
u8 sSeqCmdReadPos = 0;
u8 sStartSeqDisabled = 0;
u8 sSoundModeList[4] = { SOUNDMODE_STEREO, SOUNDMODE_HEADSET, SOUNDMODE_SURROUND, SOUNDMODE_MONO };
-u8 sNewAudioSpecId = AUDIOSPEC_0;
-u8 D_800C5D58 = 0;
+u8 sAudioSpecId = AUDIOSPEC_0;
+u8 sAudioResetStatus = AUDIORESET_READY;
s32 D_800C5D5C = 0; // unused. file split?
-s8 sBaseReverb = 0;
+s8 sEnvReverb = 0;
s8 sAudioSpecReverb = 0;
u8 sVolumeSettings[3] = { 99, 99, 99 };
-u8 D_800C5D6C[29][7] = {
+u8 sAudioSpecInstrumentSets[29][7] = {
{ 0, 3, 4, 80, 12, 21, 255 }, { 17, 18, 15, 96, 20, 22, 255 }, { 0, 3, 5, 80, 16, 255, 0 },
{ 17, 18, 15, 96, 20, 22, 255 }, { 0, 3, 4, 80, 12, 21, 255 }, { 17, 18, 15, 96, 20, 22, 255 },
{ 0, 3, 4, 80, 12, 21, 255 }, { 17, 18, 15, 96, 20, 22, 255 }, { 0, 3, 4, 80, 12, 21, 255 },
@@ -100,10 +100,10 @@ u8 D_800C5D6C[29][7] = {
{ 255, 0, 0, 0, 0, 0, 0 }, { 255, 0, 0, 0, 0, 0, 0 }, { 255, 0, 0, 0, 0, 0, 0 },
{ 255, 0, 0, 0, 0, 0, 0 }, { 0, 3, 4, 80, 12, 21, 255 },
};
-s8 D_800C5E38[29] = {
+s8 sAudioSpecReverbAdd[29] = {
10, 0, 25, 0, 25, 0, 10, 0, 10, 35, 0, 10, 40, 0, 25, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
};
-u32 D_800C5E58[5] = { 20, 16, 10, 10, 20 };
+u32 sPlayerNoiseTimes[5] = { 20, 16, 10, 10, 20 };
s32 D_800C5E6C = 0; // unused. file split?
u8 D_800C5E70 = 0;
f32 sSfxFreqMod = 1.0f;
@@ -111,7 +111,7 @@ f32 sSfxVolMod = 1.0f; // never modified
u8 sPlaylistIndex = 255;
s32 sPlaylistTimer = 0;
u8 sPlaylistCmdIndex = 0;
-u32 D_800C5E88[] = {
+u32 sEventSfx[] = {
0x1903000D, 0x1903000E, 0x19500015, 0x2903A021, 0x4900000C, 0x19122005, 0x1913204A, 0x2900306A,
0x29034024, 0x2902306C, 0x19032056, 0x19030057, 0x19033058, 0x19030006, 0x29503032, 0x1903407D,
0x4900402E, 0x19038072, 0x1903807E, 0x1903807F, 0x19038080, 0x11032081, 0x19031082,
@@ -508,12 +508,12 @@ PlaylistCmd sPlaylists[][100] = {
},
};
-s32 D_800C737C = 0; // unused. file split?
-f32 D_800C7380 = 1.0f;
+s32 D_800C737C = 0; // unused. file split?
+f32 D_800C7380 = 1.0f; // unused/
u32 sNextVoiceId = 0;
u32 sCurrentVoiceId = 0;
u8 sSetNextVoiceId = 0;
-u8 D_800C7390 = 0;
+u8 sUnkVoiceParam = 0;
u8 sMuteBgmForVoice = 0;
void func_80016A50(void) {
@@ -581,7 +581,7 @@ s8 Audio_GetSfxReverb(u8 bankId, u8 entryIndex, u8 channelId) {
if (scriptReverb == -1) {
scriptReverb = 0;
}
- totalReverb = *sSfxBanks[bankId][entryIndex].reverbAdd + distReverb + scriptReverb + sBaseReverb + sAudioSpecReverb;
+ totalReverb = *sSfxBanks[bankId][entryIndex].reverbAdd + distReverb + scriptReverb + sEnvReverb + sAudioSpecReverb;
totalReverb = MIN(127, totalReverb);
return totalReverb;
}
@@ -688,6 +688,7 @@ void Audio_SetSfxProperties(u8 bankId, u8 entryIndex, u8 channelId) {
sSfxChannelState[channelId].pan = pan;
}
}
+
f32 Audio_UpdateDopplerShift(f32* srcPos, f32* srcVel, f32 soundSpeed, f32* curDopplerShift) {
f32 xVel;
f32 zVel;
@@ -742,25 +743,25 @@ f32 Audio_UpdateDopplerShift(f32* srcPos, f32* srcVel, f32 soundSpeed, f32* curD
return newShift;
}
-void func_80017494(void) {
+void Audio_LoadInstruments(void) {
u8 i;
- for (i = 0; D_800C5D6C[sNewAudioSpecId][i] != 0xFF; i++) {
- AUDIOCMD_GLOBAL_SYNC_LOAD_INSTRUMENT(0, D_800C5D6C[sNewAudioSpecId][i], 0);
+ for (i = 0; sAudioSpecInstrumentSets[sAudioSpecId][i] != 0xFF; i++) {
+ AUDIOCMD_GLOBAL_SYNC_LOAD_INSTRUMENT(0, sAudioSpecInstrumentSets[sAudioSpecId][i], 0);
}
}
-void func_80017550(void) {
- if (sNewAudioSpecId == AUDIOSPEC_12) {
- AUDIOCMD_GLOBAL_SYNC_LOAD_SEQ_PARTS(14, 0);
+void Audio_LoadAquasSequence(void) {
+ if (sAudioSpecId == AUDIOSPEC_12) {
+ AUDIOCMD_GLOBAL_SYNC_LOAD_SEQ_PARTS(SEQ_ID_AQUAS, 0);
}
}
void Audio_ResetSfxChannelState(void) {
u8 i;
- sBaseReverb = 0;
- sAudioSpecReverb = D_800C5E38[sNewAudioSpecId];
+ sEnvReverb = 0;
+ sAudioSpecReverb = sAudioSpecReverbAdd[sAudioSpecId];
for (i = 0; i < 16; i++) {
sSfxChannelState[i].volMod = 1.0f;
sSfxChannelState[i].freqMod = 1.0f;
@@ -805,7 +806,7 @@ void Audio_ProcessSeqCmd(u32 seqCmd) {
s32 priority;
u8 i; // sp63
u8 specId;
- u8 sp61;
+ u8 oldSpecId;
u8 ioPort;
u8 channel;
u8 found;
@@ -1018,12 +1019,12 @@ void Audio_ProcessSeqCmd(u32 seqCmd) {
case SEQCMD_OP_RESET_AUDIO_HEAP:
specId = seqCmd & 0xFF;
sSfxChannelLayout = (seqCmd & 0xFF00) >> 8;
- sp61 = sNewAudioSpecId;
- sNewAudioSpecId = specId;
+ oldSpecId = sAudioSpecId;
+ sAudioSpecId = specId;
- if (sp61 != specId) {
+ if (oldSpecId != specId) {
AudioThread_ResetAudioHeap(specId);
- func_8001DE1C(sp61);
+ Audio_StartReset(oldSpecId);
AUDIOCMD_GLOBAL_STOP_AUDIOCMDS();
} else {
@@ -1082,14 +1083,15 @@ void Audio_ResetSequenceRequests(u8 seqPlayId) {
sNumSeqRequests[seqPlayId] = 0;
}
-void func_800184EC(u8 seqPlayId, u8 setupOpDisable) {
+// unused
+void Audio_DisableSetupOp(u8 seqPlayId, u8 opcode) {
u8 i;
for (i = 0; i < sActiveSequences[seqPlayId].setupCmdNum; i++) {
u8 setupOp = ((sActiveSequences[seqPlayId].setupCmd[i] & 0xF00000) >> 20);
- if (setupOp == setupOpDisable) {
- sActiveSequences[seqPlayId].setupCmd[i] = 0xFF000000;
+ if (setupOp == opcode) {
+ sActiveSequences[seqPlayId].setupCmd[i] = 0xFF000000; // 0 duration volume reset on SEQ_PLAYER_BGM
}
}
}
@@ -1246,7 +1248,7 @@ void Audio_UpdateActiveSequences(void) {
if (sActiveSequences[seqPlayId].setupCmdNum == 0) {
continue;
}
- if (!Audio_SeqCmdValueNotQueued(SEQCMD_OP_MASK, SEQCMD_OP_RESET_AUDIO_HEAP << 28)) {
+ if (!Audio_SeqCmdValueNotQueued(SEQCMD_OP_RESET_AUDIO_HEAP << 28, SEQCMD_OP_MASK)) {
sActiveSequences[seqPlayId].setupCmdNum = 0;
break;
}
@@ -1254,9 +1256,9 @@ void Audio_UpdateActiveSequences(void) {
sActiveSequences[seqPlayId].setupCmdTimer--;
} else if (!gSeqPlayers[seqPlayId].enabled) {
for (i = 0; i < sActiveSequences[seqPlayId].setupCmdNum; i++) {
- setupOp = (sActiveSequences[seqPlayId].setupCmd[i] & 0xF00000) >> 0x14;
+ setupOp = (sActiveSequences[seqPlayId].setupCmd[i] & 0xF00000) >> 20;
- setupSeqPlayId = (sActiveSequences[seqPlayId].setupCmd[i] & 0xF0000) >> 0x10;
+ setupSeqPlayId = (sActiveSequences[seqPlayId].setupCmd[i] & 0xF0000) >> 16;
val2 = (sActiveSequences[seqPlayId].setupCmd[i] & 0xFF00) >> 8;
val1 = sActiveSequences[seqPlayId].setupCmd[i] & 0xFF;
switch (setupOp) {
@@ -1321,24 +1323,24 @@ void Audio_UpdateDelayedSeqCmds(void) {
}
}
-u8 func_80018FA4(void) {
- if (D_800C5D58 != 0) {
- if (D_800C5D58 == 1) {
- if (func_8001ED34() == 1) {
- D_800C5D58 = 0;
+u8 Audio_HandleReset(void) {
+ if (sAudioResetStatus != AUDIORESET_READY) {
+ if (sAudioResetStatus == AUDIORESET_WAIT) {
+ if (AudioThread_ResetComplete() == true) {
+ sAudioResetStatus = AUDIORESET_READY;
AUDIOCMD_SEQPLAYER_SET_IO(SEQ_PLAYER_SFX, 0, sSfxChannelLayout);
- func_8001DD40();
+ Audio_RestartSeqPlayers();
}
- } else if (D_800C5D58 == 2) {
- while (func_8001ED34() != 1) {
+ } else if (sAudioResetStatus == AUDIORESET_BLOCK) {
+ while (AudioThread_ResetComplete() != true) {
;
}
- D_800C5D58 = 0;
+ sAudioResetStatus = AUDIORESET_READY;
AUDIOCMD_SEQPLAYER_SET_IO(SEQ_PLAYER_SFX, 0, sSfxChannelLayout);
- func_8001DD40();
+ Audio_RestartSeqPlayers();
}
}
- return D_800C5D58;
+ return sAudioResetStatus;
}
void Audio_ResetActiveSequences(void) {
@@ -2008,14 +2010,14 @@ s32 Audio_GetCurrentVoiceStatus(void) {
return 0;
}
-void func_8001AF40(u8 unkVoiceParam) {
- D_800C7390 = unkVoiceParam;
+void Audio_SetUnkVoiceParam(u8 unkVoiceParam) {
+ sUnkVoiceParam = unkVoiceParam;
}
-void func_8001AF50(void) {
- if (D_800C7390 != 0xFF) {
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_VOICE, 14, 0, D_800C7390);
- D_800C7390 = 0xFF;
+void Audio_UpdateUnkVoiceParam(void) {
+ if (sUnkVoiceParam != 0xFF) {
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_VOICE, 14, 0, sUnkVoiceParam);
+ sUnkVoiceParam = 0xFF;
}
}
@@ -2093,9 +2095,9 @@ void Audio_UpdateArwingNoise(u8 playerId) {
sPlayerNoise[playerId].freqMod[i].value += sPlayerNoise[playerId].freqMod[i].step;
if ((sPlayerNoise[playerId].freqMod[i].timer == 0) && (sPlayerNoise[playerId].freqMod[i].target != 1.0f)) {
sPlayerNoise[playerId].freqMod[i].target = 1.0f;
- sPlayerNoise[playerId].freqMod[i].timer = D_800C5E58[i];
+ sPlayerNoise[playerId].freqMod[i].timer = sPlayerNoiseTimes[i];
sPlayerNoise[playerId].freqMod[i].step =
- (1.0f - sPlayerNoise[playerId].freqMod[i].value) / D_800C5E58[i];
+ (1.0f - sPlayerNoise[playerId].freqMod[i].value) / sPlayerNoiseTimes[i];
}
}
}
@@ -2138,9 +2140,9 @@ void Audio_UpdateLandmasterNoise(u8 playerId) {
sPlayerNoise[playerId].freqMod[i].value += sPlayerNoise[playerId].freqMod[i].step;
if ((sPlayerNoise[playerId].freqMod[i].timer == 0) && (sPlayerNoise[playerId].freqMod[i].target != 1.0f)) {
sPlayerNoise[playerId].freqMod[i].target = 1.0f;
- sPlayerNoise[playerId].freqMod[i].timer = D_800C5E58[i];
+ sPlayerNoise[playerId].freqMod[i].timer = sPlayerNoiseTimes[i];
sPlayerNoise[playerId].freqMod[i].step =
- (1.0f - sPlayerNoise[playerId].freqMod[i].value) / D_800C5E58[i];
+ (1.0f - sPlayerNoise[playerId].freqMod[i].value) / sPlayerNoiseTimes[i];
}
}
}
@@ -2196,9 +2198,9 @@ void Audio_UpdateBlueMarineNoise(u8 playerId) {
sPlayerNoise[playerId].freqMod[i].value += sPlayerNoise[playerId].freqMod[i].step;
if ((sPlayerNoise[playerId].freqMod[i].timer == 0) && (sPlayerNoise[playerId].freqMod[i].target != 1.0f)) {
sPlayerNoise[playerId].freqMod[i].target = 1.0f;
- sPlayerNoise[playerId].freqMod[i].timer = D_800C5E58[i];
+ sPlayerNoise[playerId].freqMod[i].timer = sPlayerNoiseTimes[i];
sPlayerNoise[playerId].freqMod[i].step =
- (1.0f - sPlayerNoise[playerId].freqMod[i].value) / D_800C5E58[i];
+ (1.0f - sPlayerNoise[playerId].freqMod[i].value) / sPlayerNoiseTimes[i];
}
}
}
@@ -2268,8 +2270,8 @@ void Audio_ResetVoicesAndPlayers(void) {
sPlayerNoise[playerId].reverbAdd = 0;
sPlayerNoise[playerId].totalMod = 1.0f;
sPlayerNoise[playerId].dopplerShift = 1.0f;
- D_8014BA24[playerId] = 0;
- D_8014BA28[playerId] = 0;
+ sBombState[playerId] = 0;
+ sBombStartFrame[playerId] = 0;
}
sSfxFreqMod = 1.0f;
sSfxVolMod = 1.0f;
@@ -2321,7 +2323,7 @@ void Audio_ProcessPlaylist(void) {
}
}
-void func_8001BFC0(f32* buffer0, f32* buffer1, s32 length, f32* buffer2) {
+void Audio_AnalyzeFrequencies(f32* buffer0, f32* buffer1, s32 length, f32* buffer2) {
f32 temp_ft0;
f32 var_fs0;
f32* buff0fromStart;
@@ -2399,14 +2401,14 @@ void func_8001BFC0(f32* buffer0, f32* buffer1, s32 length, f32* buffer2) {
}
u8* Audio_UpdateFrequencyAnalysis(void) {
- s32 temp2;
- s32 i;
- s32 j;
- s32 k;
- s32 l;
- s32 m;
- s16* temp;
- f32* test;
+ s32 fmax;
+ s32 i1;
+ s32 fmin;
+ s32 i2;
+ s32 i3;
+ s32 fbin;
+ s16* aiData;
+ s32 pad;
static s32 sFreqBins[] = {
0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 14, 16, 19, 22,
26, 31, 37, 44, 54, 68, 88, 108, 138, 163, 188, 208, 222, 234, 242, 246,
@@ -2419,36 +2421,36 @@ u8* Audio_UpdateFrequencyAnalysis(void) {
Audio_ProcessPlaylist();
// clang-format off
- temp = gAiBuffers[gCurAiBuffIndex];\
- for(l = 0; l < 256; l++) {\
- D_80149AD8[l] = *temp++;
+ aiData = gAiBuffers[gCurAiBuffIndex];\
+ for(i3 = 0; i3 < 256; i3++) {\
+ sAudioAnalyzerData[i3] = *aiData++;
}
// clang-format on
- func_8001BFC0(D_80149AD8, D_80149ED8, 8, D_8014A2D8);
- j = 0;
- for (i = 0; i < 32; i++) {
- temp2 = sFreqBins[i] + 1;
- for (m = j; m < temp2; m++) {
- if (D_80149AD8[m] > 0.0f) {
- D_8014A8D8[i] += D_80149AD8[m];
+ Audio_AnalyzeFrequencies(sAudioAnalyzerData, sAnalyzerBuffer1, 8, sAnalyzerBuffer2);
+ fmin = 0;
+ for (i1 = 0; i1 < 32; i1++) {
+ fmax = sFreqBins[i1] + 1;
+ for (fbin = fmin; fbin < fmax; fbin++) {
+ if (sAudioAnalyzerData[fbin] > 0.0f) {
+ sNewFreqAmplitudes[i1] += sAudioAnalyzerData[fbin];
} else {
- D_8014A8D8[i] -= D_80149AD8[m];
+ sNewFreqAmplitudes[i1] -= sAudioAnalyzerData[fbin];
}
}
- j = m;
+ fmin = fbin;
}
- for (k = 0; k < 32; k++) {
- D_8014A8D8[k] /= 8;
+ for (i2 = 0; i2 < 32; i2++) {
+ sNewFreqAmplitudes[i2] /= 8;
}
- for (l = 0; l < 32; l++) {
- D_8014A8D8[l] = (D_8014A8D8[l] / 32768.0f) * sFreqGain;
- if (D_8014A8D8[l] > 1.0f) {
- D_8014A8D8[l] = 1.0f;
+ for (i3 = 0; i3 < 32; i3++) {
+ sNewFreqAmplitudes[i3] = (sNewFreqAmplitudes[i3] / 32768.0f) * sFreqGain;
+ if (sNewFreqAmplitudes[i3] > 1.0f) {
+ sNewFreqAmplitudes[i3] = 1.0f;
}
- sFreqAmplitudes[l] = sFreqAmplitudes[l] * 0.75f + 0.25f * D_8014A8D8[l];
- D_8014A958[l] = sFreqAmplitudes[l] * 255.0f;
+ sFreqAmplitudes[i3] = sFreqAmplitudes[i3] * 0.75f + 0.25f * sNewFreqAmplitudes[i3];
+ sFreqAnalyzerBars[i3] = sFreqAmplitudes[i3] * 255.0f;
}
- return D_8014A958;
+ return sFreqAnalyzerBars;
}
void Audio_StartPlayerNoise(u8 playerId) {
@@ -2479,7 +2481,7 @@ void Audio_StartPlayerNoise(u8 playerId) {
}
}
-void func_8001CA24(u8 playerId) {
+void Audio_StopPlayerNoise(u8 playerId) {
u32 sfxId = 0x00000000;
switch (sPlayerNoise[playerId].form) {
@@ -2505,56 +2507,56 @@ void func_8001CA24(u8 playerId) {
}
}
-void func_8001CB80(u8 playerId, u8 arg1) {
- D_8014BA28[playerId] = sAudioFrameCounter;
- switch (arg1) {
+void Audio_InitBombSfx(u8 playerId, u8 type) {
+ sBombStartFrame[playerId] = sAudioFrameCounter;
+ switch (type) {
case 1:
- D_8014BA10[playerId] = 1.0f;
- D_8014BA20[playerId] = 1;
+ sBombFreqMod[playerId] = 1.0f;
+ sBombType[playerId] = 1;
break;
case 2:
- D_8014BA10[playerId] = 1.5f;
- D_8014BA20[playerId] = 2;
+ sBombFreqMod[playerId] = 1.5f;
+ sBombType[playerId] = 2;
break;
default:
case 0:
- D_8014BA10[playerId] = 0.75f;
- D_8014BA20[playerId] = 0;
+ sBombFreqMod[playerId] = 0.75f;
+ sBombType[playerId] = 0;
break;
}
- if (D_8014BA24[playerId] != 1) {
- Audio_PlaySfx(0x01008008, gPlayer[playerId].sfx.srcPos, playerId, &D_8014BA10[playerId], &gDefaultMod,
+ if (sBombState[playerId] != 1) {
+ Audio_PlaySfx(0x01008008, gPlayer[playerId].sfx.srcPos, playerId, &sBombFreqMod[playerId], &gDefaultMod,
&sPlayerNoise[playerId].reverbAdd);
- D_8014BA24[playerId] = 1;
+ sBombState[playerId] = 1;
}
}
-void func_8001CCDC(u8 playerId, f32* sfxSource) {
- if (D_8014BA24[playerId] != 0) {
- switch (D_8014BA20[playerId]) {
+void Audio_PlayBombFlightSfx(u8 playerId, f32* sfxSource) {
+ if (sBombState[playerId] != 0) {
+ switch (sBombType[playerId]) {
case 1:
- D_8014BA10[playerId] = 1.2f;
+ sBombFreqMod[playerId] = 1.2f;
break;
case 2:
- D_8014BA10[playerId] = 1.5f;
+ sBombFreqMod[playerId] = 1.5f;
break;
default:
case 0:
- D_8014BA10[playerId] = 1.0f;
+ sBombFreqMod[playerId] = 1.0f;
break;
}
Audio_KillSfxBySourceAndId(gPlayer[playerId].sfx.srcPos, 0x01008008);
- Audio_PlaySfx(0x09001001, sfxSource, playerId, &D_8014BA10[playerId], &gDefaultMod,
+ Audio_PlaySfx(0x09001001, sfxSource, playerId, &sBombFreqMod[playerId], &gDefaultMod,
&sPlayerNoise[playerId].reverbAdd);
- D_8014BA24[playerId] = 2;
+ sBombState[playerId] = 2;
}
}
-void func_8001CE28(u8 playerId, f32* sfxSource) {
+void Audio_PlayBombExplodeSfx(u8 playerId, f32* sfxSource) {
u32 sfxId;
- if (D_8014BA24[playerId] != 0) {
- switch (D_8014BA20[playerId]) {
+ if (sBombState[playerId] != 0) {
+ switch (sBombType[playerId]) {
case 1:
sfxId = 0x0903A00A;
break;
@@ -2568,35 +2570,35 @@ void func_8001CE28(u8 playerId, f32* sfxSource) {
}
Audio_KillSfxByTokenAndId(playerId, 0x09001001);
AUDIO_PLAY_SFX(sfxId, sfxSource, playerId);
- D_8014BA24[playerId] = 0;
+ sBombState[playerId] = 0;
}
}
-void func_8001CEFC(f32* sfxSource) {
+void Audio_StartEngineNoise(f32* sfxSource) {
u32 sfxId = (gPlayer[0].sfx.levelType == LEVELTYPE_SPACE) ? 0x31000040 : 0x3100000C;
AUDIO_PLAY_SFX(sfxId, sfxSource, 0);
}
-void func_8001CF60(f32* sfxSource) {
+void Audio_StopEngineNoise(f32* sfxSource) {
u32 sfxId = (gPlayer[0].sfx.levelType == LEVELTYPE_SPACE) ? 0x31000040 : 0x3100000C;
Audio_KillSfxBySourceAndId(sfxSource, sfxId);
}
-void func_8001CFA8(f32 arg0) {
- f32 var_fv0 = ABS(arg0);
+void Audio_SetSfxSpeedModulation(f32 vel) {
+ f32 speed = ABS(vel);
- if (var_fv0 < 6.0f) {
- var_fv0 = 6.0f;
- } else if (var_fv0 > 30.0f) {
- var_fv0 = 30.0f;
+ if (speed < 6.0f) {
+ speed = 6.0f;
+ } else if (speed > 30.0f) {
+ speed = 30.0f;
}
- sSfxFreqMod = ((var_fv0 - 18.0f) / 24.0f) + 1.0f;
+ sSfxFreqMod = ((speed - 18.0f) / 24.0f) + 1.0f;
}
-void func_8001D034(f32* sfxSource, u32 sfxId, u8 semitones) {
+void Audio_SetTransposeAndPlaySfx(f32* sfxSource, u32 sfxId, u8 semitones) {
f32 semitoneMods[] = {
1.0f, 1.059f, 1.122f, 1.189f, 1.26f, 1.335f, 1.414f, 1.498f, 1.587f, 1.682f, 1.782f, 1.888f, 2.0f,
};
@@ -2604,64 +2606,69 @@ void func_8001D034(f32* sfxSource, u32 sfxId, u8 semitones) {
if (semitones > 12) {
semitones = 12;
}
- func_8001D0B4(sfxSource, sfxId, semitoneMods[semitones]);
+ Audio_SetModulationAndPlaySfx(sfxSource, sfxId, semitoneMods[semitones]);
}
-void func_8001D0B4(f32* sfxSource, u32 sfxId, f32 freqMod) {
+void Audio_SetModulationAndPlaySfx(f32* sfxSource, u32 sfxId, f32 freqMod) {
sSfxFreqMod = freqMod;
Audio_PlaySfx(sfxId, sfxSource, 0, &sSfxFreqMod, &gDefaultMod, &gDefaultReverb);
}
-void func_8001D10C(f32* sfxSource, u32 sfxId) {
+void Audio_PlaySfxModulated(f32* sfxSource, u32 sfxId) {
Audio_PlaySfx(sfxId, sfxSource, 0, &sSfxFreqMod, &sSfxVolMod, &gDefaultReverb);
}
-void func_8001D15C(u8 arg0) {
- if (arg0 < 12) {
- sSfxFreqMod = (arg0 / 11.0f) + 0.5f;
+void Audio_SetSfxMapModulation(u8 fMod) {
+ if (fMod < 12) {
+ sSfxFreqMod = (fMod / 11.0f) + 0.5f;
} else {
sSfxFreqMod = 1.5f;
}
}
-void func_8001D1C8(u8 arg0, u8 arg1) {
- u8 temp1;
- u8 temp2;
+void Audio_SetHeatAlarmParams(u8 shields, u8 heightParam) {
+ // height param is (s32) height / 100 - 1, clamped to [0, 5]
+ u8 alarmVolume;
+ u8 heightVolume;
+
+ // modifies tempo
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 9, 2, 8 + (shields >> 2));
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 10, 2, 8 + (shields >> 2));
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 11, 2, 8 + (shields >> 2));
+
+ // modifies frequency
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 9, 1, 19 - (heightParam * 3));
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 10, 1, 19 - (heightParam * 3));
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 11, 1, 19 - (heightParam * 3));
+
+ alarmVolume = 68 - (shields >> 3);
+ heightVolume = 80 - (heightParam * 10);
+ if (heightVolume > alarmVolume) {
+ alarmVolume = heightVolume;
+ }
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 9, 3, alarmVolume);
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 10, 3, alarmVolume);
+ AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 11, 3, alarmVolume);
+}
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 9, 2, 8 + (arg0 >> 2));
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 10, 2, 8 + (arg0 >> 2));
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 11, 2, 8 + (arg0 >> 2));
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 9, 1, 19 - (arg1 * 3));
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 10, 1, 19 - (arg1 * 3));
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 11, 1, 19 - (arg1 * 3));
- temp1 = 68 - (arg0 >> 3);
- temp2 = 80 - (arg1 * 10);
- if (temp1 < temp2) {
- temp1 = temp2;
- }
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 9, 3, temp1);
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 10, 3, temp1);
- AUDIOCMD_CHANNEL_SET_IO(SEQ_PLAYER_SFX, 11, 3, temp1);
-}
-
-void Audio_PlayEventSfx(f32* sfxSource, u16 arg1) {
- if ((D_800C5E88[arg1] & 0xF0000000) != 0x40000000) {
- AUDIO_PLAY_SFX(D_800C5E88[arg1], sfxSource, 0);
+void Audio_PlayEventSfx(f32* sfxSource, u16 eventSfxId) {
+ if ((sEventSfx[eventSfxId] & 0xF0000000) != 0x40000000) {
+ AUDIO_PLAY_SFX(sEventSfx[eventSfxId], sfxSource, 0);
} else {
- AUDIO_PLAY_SFX(D_800C5E88[arg1], gDefaultSfxSource, 0);
+ AUDIO_PLAY_SFX(sEventSfx[eventSfxId], gDefaultSfxSource, 0);
}
}
-void Audio_StopEventSfx(f32* sfxSource, u16 arg1) {
- if ((D_800C5E88[arg1] & 0xF0000000) != 0x40000000) {
- Audio_KillSfxBySourceAndId(sfxSource, D_800C5E88[arg1]);
+void Audio_StopEventSfx(f32* sfxSource, u16 eventSfxId) {
+ if ((sEventSfx[eventSfxId] & 0xF0000000) != 0x40000000) {
+ Audio_KillSfxBySourceAndId(sfxSource, sEventSfx[eventSfxId]);
} else {
- Audio_KillSfxBySourceAndId(gDefaultSfxSource, D_800C5E88[arg1]);
+ Audio_KillSfxBySourceAndId(gDefaultSfxSource, sEventSfx[eventSfxId]);
}
}
-void Audio_SetBaseSfxReverb(s8 reverb) {
- sBaseReverb = reverb;
+void Audio_SetEnvSfxReverb(s8 reverb) {
+ sEnvReverb = reverb;
}
void Audio_SetBgmParam(s8 bgmParam) {
@@ -2681,16 +2688,16 @@ void Audio_PlayFanfare(u16 seqId, u8 bgmVolume, u8 bgmFadeoutTime, u8 bgmFadeinT
}
}
-void func_8001D520(void) {
+void Audio_PlayDeathSequence(void) {
u8 i;
- if (sNewAudioSpecId == AUDIOSPEC_24) {
+ if (sAudioSpecId == AUDIOSPEC_24) {
Audio_ClearVoice();
- func_8001D6DC(0);
+ Audio_PlayMapMenuSfx(0);
AUDIO_PLAY_SFX(0x0903F004, gDefaultSfxSource, 4);
SEQCMD_SET_SEQPLAYER_VOLUME(SEQ_PLAYER_BGM, 5, 30);
SEQCMD_SETUP_RESTORE_SEQPLAYER_VOLUME(SEQ_PLAYER_FANFARE, SEQ_PLAYER_BGM, 30);
- SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_FANFARE, 0, 0, 39);
+ SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_FANFARE, 0, 0, SEQ_ID_DEATH);
} else {
for (i = 0; i < 5; i++) {
Audio_KillSfxByBank(i);
@@ -2699,12 +2706,12 @@ void func_8001D520(void) {
AUDIO_PLAY_SFX(0x0903F004, gDefaultSfxSource, 4);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 0);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 0);
- SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM, 0, 0, 39);
+ SEQCMD_PLAY_SEQUENCE(SEQ_PLAYER_BGM, 0, 0, SEQ_ID_DEATH);
}
}
-void func_8001D638(u8 arg0) {
- if (arg0) {
+void Audio_PlayPauseSfx(u8 active) {
+ if (active) {
AUDIO_PLAY_SFX(0x4900F000, gDefaultSfxSource, 4);
AUDIOCMD_GLOBAL_MUTE();
} else {
@@ -2713,8 +2720,8 @@ void func_8001D638(u8 arg0) {
}
}
-void func_8001D6DC(u8 arg0) {
- if (arg0) {
+void Audio_PlayMapMenuSfx(u8 active) {
+ if (active) {
AUDIO_PLAY_SFX(0x49000019, gDefaultSfxSource, 4);
AUDIOCMD_GLOBAL_MUTE();
} else {
@@ -2723,7 +2730,7 @@ void func_8001D6DC(u8 arg0) {
}
}
-void func_8001D780(u8 audioType) {
+void Audio_RestoreVolumeSettings(u8 audioType) {
s8 volume = ((sVolumeSettings[audioType] * 127) / 99) % 128U;
u8 i;
@@ -2748,7 +2755,7 @@ void Audio_SetVolume(u8 audioType, u8 volume) {
volume = 99;
}
sVolumeSettings[audioType] = volume;
- func_8001D780(audioType);
+ Audio_RestoreVolumeSettings(audioType);
}
void Audio_PlaySoundTest(u8 enable) {
@@ -2834,40 +2841,40 @@ void Audio_InitSounds(void) {
Audio_StartSequence(SEQ_PLAYER_SFX, SEQ_ID_SFX, 0xFF, 10);
}
-void func_8001DD40(void) {
+void Audio_RestartSeqPlayers(void) {
s32 pad1;
s32 pad2;
- u16 sp1E = 1;
+ u16 fadeIn = 1;
Audio_StartSequence(SEQ_PLAYER_VOICE, SEQ_ID_VOICE, 0xFF, 1);
- if (sNewAudioSpecId == AUDIOSPEC_12) {
- sp1E = 360;
- } else if (sNewAudioSpecId < AUDIOSPEC_23) {
- sp1E = 90;
- }
- Audio_StartSequence(SEQ_PLAYER_SFX, SEQ_ID_SFX, 0xFF, sp1E);
- func_80017494();
- func_80017550();
+ if (sAudioSpecId == AUDIOSPEC_12) {
+ fadeIn = 360;
+ } else if (sAudioSpecId < AUDIOSPEC_23) {
+ fadeIn = 90;
+ }
+ Audio_StartSequence(SEQ_PLAYER_SFX, SEQ_ID_SFX, 0xFF, fadeIn);
+ Audio_LoadInstruments();
+ Audio_LoadAquasSequence();
SEQCMD_SET_SEQPLAYER_VOLUME(SEQ_PLAYER_SFX, 0, 127);
SEQCMD_SET_SEQPLAYER_VOLUME(SEQ_PLAYER_VOICE, 0, 127);
AudioThread_ScheduleProcessCmds();
AUDIOCMD_GLOBAL_STOP_AUDIOCMDS();
AUDIOCMD_GLOBAL_STOP_AUDIOCMDS();
AUDIOCMD_GLOBAL_STOP_AUDIOCMDS();
- func_8001D780(0);
- func_8001D780(2);
- func_8001D780(1);
+ Audio_RestoreVolumeSettings(0);
+ Audio_RestoreVolumeSettings(2);
+ Audio_RestoreVolumeSettings(1);
}
-void func_8001DE1C(u8 oldSpecId) {
+void Audio_StartReset(u8 oldSpecId) {
if (oldSpecId == AUDIOSPEC_16) {
- if ((sNewAudioSpecId == AUDIOSPEC_22) || (sNewAudioSpecId == AUDIOSPEC_23)) {
- D_800C5D58 = 2;
+ if ((sAudioSpecId == AUDIOSPEC_22) || (sAudioSpecId == AUDIOSPEC_23)) {
+ sAudioResetStatus = AUDIORESET_BLOCK;
}
- } else if ((oldSpecId == AUDIOSPEC_28) && (sNewAudioSpecId == AUDIOSPEC_23)) {
- D_800C5D58 = 2;
+ } else if ((oldSpecId == AUDIOSPEC_28) && (sAudioSpecId == AUDIOSPEC_23)) {
+ sAudioResetStatus = AUDIORESET_BLOCK;
} else {
- D_800C5D58 = 1;
+ sAudioResetStatus = AUDIORESET_WAIT;
}
AUDIOCMD_GLOBAL_UNMUTE(true);
Audio_ResetVoicesAndPlayers();
@@ -2877,13 +2884,13 @@ void func_8001DE1C(u8 oldSpecId) {
}
void Audio_Update(void) {
- if (func_80018FA4() == 0) {
+ if (Audio_HandleReset() == AUDIORESET_READY) {
Audio_ProcessSfxRequests();
Audio_ProcessSeqCmds();
Audio_PlayAllSfx();
Audio_UpdatePlayerNoise();
Audio_UpdateVoice();
- func_8001AF50();
+ Audio_UpdateUnkVoiceParam();
Audio_UpdateActiveSequences();
Audio_UpdateDelayedSeqCmds();
AudioThread_ScheduleProcessCmds();
diff --git a/src/audio/audio_load.c b/src/audio/audio_load.c
index a86837e6..7cf8671e 100644
--- a/src/audio/audio_load.c
+++ b/src/audio/audio_load.c
@@ -291,7 +291,7 @@ s32 AudioLoad_SyncLoadInstrument(s32 fontId, s32 instId, s32 drumId) {
void AudioLoad_AsyncLoadSampleBank(s32 sampleBankId, s32 nChunks, s32 retData, OSMesgQueue* retQueue) {
if (AudioLoad_AsyncLoadInner(2, AudioLoad_GetLoadTableIndex(2, sampleBankId), nChunks, retData, retQueue) == NULL) {
- osSendMesg(retQueue, NULL, 0);
+ osSendMesg(retQueue, NULL, OS_MESG_NOBLOCK);
}
}
@@ -642,14 +642,14 @@ void AudioLoad_SyncDma(u32 devAddr, u8* ramAddr, u32 size, s32 medium) {
break;
}
AudioLoad_Dma(&gSyncDmaIoMsg, 1, 0, devAddr, ramAddr, 0x400, &gSyncDmaQueue, medium, D_800C50E8);
- osRecvMesg(&gSyncDmaQueue, NULL, 1);
+ MQ_WAIT_FOR_MESG(&gSyncDmaQueue, NULL);
size -= 0x400;
devAddr += 0x400;
ramAddr += 0x400;
}
if (size != 0) {
AudioLoad_Dma(&gSyncDmaIoMsg, 1, 0, devAddr, ramAddr, size, &gSyncDmaQueue, medium, D_800C50F4);
- osRecvMesg(&gSyncDmaQueue, NULL, 1);
+ MQ_WAIT_FOR_MESG(&gSyncDmaQueue, NULL);
}
}
@@ -737,7 +737,7 @@ void* AudioLoad_AsyncLoadInner(s32 tableType, s32 id, s32 nChunks, s32 retData,
ramAddr = AudioLoad_SearchCaches(tableType, id);
if (ramAddr != NULL) {
loadStatus = 2;
- osSendMesg(retQueue, (void*) (retData << 0x18), 0);
+ osSendMesg(retQueue, (void*) (retData << 0x18), OS_MESG_NOBLOCK);
} else {
table = AudioLoad_GetLoadTable(tableType);
size = table->entries[id].size;
@@ -990,7 +990,7 @@ void AudioLoad_ProcessSlowLoads(s32 resetStatus) {
slowLoad = &gSlowLoads.slowLoad[i];
switch (slowLoad->state) {
case 2:
- osRecvMesg(&slowLoad->msgQueue, NULL, 1);
+ MQ_WAIT_FOR_MESG(&slowLoad->mesgQueue, NULL);
if (resetStatus != 0) {
slowLoad->state = 3;
break;
@@ -1035,8 +1035,8 @@ static char devstr47[] = "Other Type: Not Write ID.\n";
void AudioLoad_DmaSlowCopy(AudioSlowLoad* slowLoad, s32 size) {
osInvalDCache(slowLoad->curRamAddr, size);
- osCreateMesgQueue(&slowLoad->msgQueue, &slowLoad->msg, 1);
- AudioLoad_Dma(&slowLoad->ioMesg, 0, 0, slowLoad->curDevAddr, slowLoad->curRamAddr, size, &slowLoad->msgQueue,
+ osCreateMesgQueue(&slowLoad->mesgQueue, &slowLoad->msg, 1);
+ AudioLoad_Dma(&slowLoad->ioMesg, 0, 0, slowLoad->curDevAddr, slowLoad->curRamAddr, size, &slowLoad->mesgQueue,
slowLoad->medium, D_800C52F4);
}
@@ -1081,7 +1081,7 @@ AudioAsyncLoad* AudioLoad_StartAsyncLoad(u32 devAddr, u8* ramAddr, u32 size, s32
asyncLoad->medium = medium;
asyncLoad->retMsg = retMesg;
- osCreateMesgQueue(&asyncLoad->msgQueue, &asyncLoad->msg, 1);
+ osCreateMesgQueue(&asyncLoad->mesgQueue, &asyncLoad->msg, 1);
return asyncLoad;
}
@@ -1114,11 +1114,11 @@ void AudioLoad_ProcessAsyncLoad(AudioAsyncLoad* asyncLoad, s32 resetStatus) {
asyncLoad->delay = 0;
} else {
if (resetStatus != 0) {
- osRecvMesg(&asyncLoad->msgQueue, NULL, 1);
+ MQ_WAIT_FOR_MESG(&asyncLoad->mesgQueue, NULL);
asyncLoad->status = 0;
return;
}
- if (osRecvMesg(&asyncLoad->msgQueue, NULL, 0) == -1) {
+ if (!MQ_GET_MESG(&asyncLoad->mesgQueue, NULL)) {
return;
}
}
@@ -1160,7 +1160,7 @@ void AudioLoad_ProcessAsyncLoad(AudioAsyncLoad* asyncLoad, s32 resetStatus) {
break;
}
asyncLoad->status = 0;
- osSendMesg(asyncLoad->retQueue, asyncLoad->retMsg, 0);
+ osSendMesg(asyncLoad->retQueue, asyncLoad->retMsg, OS_MESG_NOBLOCK);
} else {
if (asyncLoad->bytesRemaining < asyncLoad->chunkSize) {
if (asyncLoad->medium == MEDIUM_UNK) {
@@ -1190,9 +1190,9 @@ static char D_800C53AC[] = "BGCOPY";
void AudioLoad_AsyncDma(AudioAsyncLoad* asyncLoad, u32 size) {
size = ALIGN16(size);
osInvalDCache(asyncLoad->curRamAddr, size);
- osCreateMesgQueue(&asyncLoad->msgQueue, &asyncLoad->msg, 1);
+ osCreateMesgQueue(&asyncLoad->mesgQueue, &asyncLoad->msg, 1);
if (size) {}
- AudioLoad_Dma(&asyncLoad->ioMesg, 0, 0, asyncLoad->curDevAddr, asyncLoad->curRamAddr, size, &asyncLoad->msgQueue,
+ AudioLoad_Dma(&asyncLoad->ioMesg, 0, 0, asyncLoad->curDevAddr, asyncLoad->curRamAddr, size, &asyncLoad->mesgQueue,
asyncLoad->medium, D_800C53AC);
}
@@ -1353,11 +1353,11 @@ s32 AudioLoad_ProcessSamplePreloads(s32 resetStatus) {
if (gPreloadSampleStackTop > 0) {
if (resetStatus != 0) {
- if (osRecvMesg(&gPreloadSampleQueue, (OSMesg) &preloadIndex, 0)) {}
+ if (!MQ_GET_MESG(&gPreloadSampleQueue, &preloadIndex)) {}
gPreloadSampleStackTop = 0;
return false;
}
- if (osRecvMesg(&gPreloadSampleQueue, (OSMesg) &preloadIndex, 0) == -1) {
+ if (!MQ_GET_MESG(&gPreloadSampleQueue, &preloadIndex)) {
return false;
}
// "Receive %d\n"
diff --git a/src/audio/audio_playback.c b/src/audio/audio_playback.c
index dc533ce1..21639354 100644
--- a/src/audio/audio_playback.c
+++ b/src/audio/audio_playback.c
@@ -165,44 +165,44 @@ TunedSample* func_80011D10(Instrument* instrument, s32 arg1) {
return sample;
}
-Instrument* Audio_GetInstrument(s32 arg0, s32 arg1) {
- Instrument* temp_v1;
+Instrument* Audio_GetInstrument(s32 fontId, s32 instId) {
+ Instrument* instrument;
- if ((gFontLoadStatus[arg0] < 2) != 0) {
- D_80155D88 = arg0 + 0x10000000;
+ if ((gFontLoadStatus[fontId] < 2) != 0) {
+ D_80155D88 = fontId + 0x10000000;
return NULL;
}
- if (arg1 >= gSoundFontList[arg0].numInstruments) {
- D_80155D88 = (arg0 << 8) + arg1 + 0x03000000;
+ if (instId >= gSoundFontList[fontId].numInstruments) {
+ D_80155D88 = (fontId << 8) + instId + 0x03000000;
return NULL;
}
- temp_v1 = gSoundFontList[arg0].instruments[arg1];
- if (temp_v1 == NULL) {
- D_80155D88 = (arg0 << 8) + arg1 + 0x01000000;
- return temp_v1;
+ instrument = gSoundFontList[fontId].instruments[instId];
+ if (instrument == NULL) {
+ D_80155D88 = (fontId << 8) + instId + 0x01000000;
+ return instrument;
}
- return temp_v1;
+ return instrument;
}
-Drum* Audio_GetDrum(s32 arg0, s32 arg1) {
- Drum* temp;
+Drum* Audio_GetDrum(s32 fontId, s32 drumId) {
+ Drum* drum;
- if ((gFontLoadStatus[arg0] < 2) != 0) {
- D_80155D88 = arg0 + 0x10000000;
+ if ((gFontLoadStatus[fontId] < 2) != 0) {
+ D_80155D88 = fontId + 0x10000000;
return NULL;
}
- if (arg1 >= gSoundFontList[arg0].numDrums) {
- D_80155D88 = (arg0 << 8) + arg1 + 0x04000000;
+ if (drumId >= gSoundFontList[fontId].numDrums) {
+ D_80155D88 = (fontId << 8) + drumId + 0x04000000;
return NULL;
}
- if ((u32) gSoundFontList[arg0].drums < AUDIO_RELOCATED_ADDRESS_START) {
+ if ((u32) gSoundFontList[fontId].drums < AUDIO_RELOCATED_ADDRESS_START) {
return NULL;
}
- temp = gSoundFontList[arg0].drums[arg1];
- if (gSoundFontList[arg0].drums[arg1] == NULL) {
- D_80155D88 = (arg0 << 8) + arg1 + 0x05000000;
+ drum = gSoundFontList[fontId].drums[drumId];
+ if (gSoundFontList[fontId].drums[drumId] == NULL) {
+ D_80155D88 = (fontId << 8) + drumId + 0x05000000;
}
- return temp;
+ return drum;
}
void func_80011EB8(Note* note) {
@@ -428,35 +428,35 @@ void func_8001268C(SequenceLayer* layer) {
func_80012438(layer, 7);
}
-s32 func_800126AC(Note* note, SequenceLayer* layer, s32 arg2) {
- f32 var_fv0;
- u8 var_v1 = 0;
+s32 func_800126AC(Note* note, SequenceLayer* layer, s32 waveId) {
+ f32 freqMod;
+ u8 harmonicIndex = 0;
- if (arg2 < 128) {
- arg2 = 128;
+ if (waveId < 128) {
+ waveId = 128;
}
- var_fv0 = layer->freqMod;
+ freqMod = layer->freqMod;
if ((layer->portamento.mode != 0) && (layer->portamento.extent > 0.0f)) {
- var_fv0 *= layer->portamento.extent + 1.0f;
- }
- if (var_fv0 < 1.0f) {
- var_fv0 = 1.0465f;
- } else if (var_fv0 < 2.0f) {
- var_v1 = 1;
- var_fv0 = 0.52325f;
- } else if (var_fv0 < 4.0f) {
- var_v1 = 2;
- var_fv0 = 0.26263f;
+ freqMod *= layer->portamento.extent + 1.0f;
+ }
+ if (freqMod < 1.0f) {
+ freqMod = 1.0465f;
+ } else if (freqMod < 2.0f) {
+ harmonicIndex = 1;
+ freqMod = 0.52325f;
+ } else if (freqMod < 4.0f) {
+ harmonicIndex = 2;
+ freqMod = 0.26263f;
} else {
- var_v1 = 3;
- var_fv0 = 0.13081f;
+ harmonicIndex = 3;
+ freqMod = 0.13081f;
}
- layer->freqMod *= var_fv0;
- note->playbackState.waveId = arg2;
- note->playbackState.harmonicIndex = var_v1;
- note->noteSubEu.waveSampleAddr = &gWaveSamples[arg2 - 128][var_v1 * 64];
- return var_v1;
+ layer->freqMod *= freqMod;
+ note->playbackState.waveId = waveId;
+ note->playbackState.harmonicIndex = harmonicIndex;
+ note->noteSubEu.waveSampleAddr = &gWaveSamples[waveId - 128][harmonicIndex * 64];
+ return harmonicIndex;
}
void func_800127B0(Note* note, SequenceLayer* layer) {
@@ -601,7 +601,7 @@ void func_80012C40(Note* note) {
}
}
-Note* func_80012C6C(AudioListItem* item, s32 arg1) {
+Note* func_80012C6C(AudioListItem* item, s32 priority) {
AudioListItem* var_v0;
AudioListItem* var_v1;
void* temp_a0;
@@ -620,7 +620,7 @@ Note* func_80012C6C(AudioListItem* item, s32 arg1) {
return NULL;
}
- if (((Note*) var_v1->u.value)->playbackState.priority >= arg1) {
+ if (((Note*) var_v1->u.value)->playbackState.priority >= priority) {
return NULL;
}
return (Note*) var_v1->u.value;
diff --git a/src/audio/audio_seqplayer.c b/src/audio/audio_seqplayer.c
index badce99d..c936fbe9 100644
--- a/src/audio/audio_seqplayer.c
+++ b/src/audio/audio_seqplayer.c
@@ -349,25 +349,25 @@ void func_80014748(SequenceLayer* layer) {
break;
}
switch (cmd) { /* switch 5; irregular */
- case 0xFF: /* switch 5 */
+ case 0xFF:
if (state->depth == 0) {
func_800140D0(layer);
return;
}
state->pc = state->stack[--state->depth];
break;
- case 0xFC: /* switch 5 */
+ case 0xFC:
sp44 = func_800146D4(state);
state->stack[state->depth] = state->pc;
state->depth++;
state->pc = &seqPlayer->seqData[sp44];
break;
- case 0xF8: /* switch 5 */
+ case 0xF8:
state->remLoopIters[state->depth] = func_800146C0(state);
state->stack[state->depth] = state->pc;
state->depth++;
break;
- case 0xF7: /* switch 5 */
+ case 0xF7:
state->remLoopIters[state->depth - 1]--;
if (state->remLoopIters[state->depth - 1] != 0) {
state->pc = state->stack[state->depth - 1];
@@ -375,15 +375,15 @@ void func_80014748(SequenceLayer* layer) {
state->depth--;
}
break;
- case 0xFB: /* switch 5 */
+ case 0xFB:
sp44 = func_800146D4(state);
state->pc = &seqPlayer->seqData[sp44];
break;
- case 0xF4: /* switch 5 */
+ case 0xF4:
state->pc += (s8) func_800146C0(state);
break;
- case 0xC1: /* switch 5 */
- case 0xCA: /* switch 5 */
+ case 0xC1:
+ case 0xCA:
var_s2 = *state->pc++;
if (cmd == 0xC1) {
layer->velocitySquare = (f32) (var_s2 * var_s2) / 16129.0f;
@@ -391,8 +391,8 @@ void func_80014748(SequenceLayer* layer) {
layer->pan = var_s2;
}
break;
- case 0xC2: /* switch 5 */
- case 0xC9: /* switch 5 */
+ case 0xC2:
+ case 0xC9:
var_s2 = *state->pc++;
if (cmd == 0xC9) {
layer->gateTime = var_s2;
@@ -400,8 +400,8 @@ void func_80014748(SequenceLayer* layer) {
layer->transposition = var_s2;
}
break;
- case 0xC4: /* switch 5 */
- case 0xC5: /* switch 5 */
+ case 0xC4:
+ case 0xC5:
if (cmd == 0xC4) {
layer->continuousNotes = 1;
} else {
@@ -409,11 +409,11 @@ void func_80014748(SequenceLayer* layer) {
}
func_8001266C(layer);
break;
- case 0xC3: /* switch 5 */
+ case 0xC3:
sp44 = func_80014704(state);
layer->shortNoteDefaultDelay = sp44;
break;
- case 0xC6: /* switch 5 */
+ case 0xC6:
cmd = func_800146C0(state);
if (cmd >= 127) {
if (cmd == 127) {
@@ -433,7 +433,7 @@ void func_80014748(SequenceLayer* layer) {
}
}
break;
- case 0xC7: /* switch 5 */
+ case 0xC7:
layer->portamento.mode = func_800146C0(state);
cmd = func_800146C0(state) + channel->transposition + layer->transposition + seqPlayer->transposition;
if (cmd > 127) {
@@ -447,27 +447,27 @@ void func_80014748(SequenceLayer* layer) {
layer->portamentoTime = sp44;
}
break;
- case 0xC8: /* switch 5 */
+ case 0xC8:
layer->portamento.mode = 0;
break;
- case 0xCB: /* switch 5 */
+ case 0xCB:
sp44 = func_800146D4(state);
layer->adsr.envelope = (EnvelopePoint*) &seqPlayer->seqData[sp44];
layer->adsr.decayIndex = func_800146C0(state);
break;
- case 0xCC: /* switch 5 */
+ case 0xCC:
layer->bit1 = 1;
break;
- case 0xCD: /* switch 5 */
+ case 0xCD:
layer->stereo.asByte = func_800146C0(state);
break;
- default: /* switch 5 */
+ default:
switch (cmd & 0xF0) { /* switch 6; irregular */
- case 0xD0: /* switch 6 */
+ case 0xD0:
sp44 = (u16) seqPlayer->shortNoteVelocityTable[cmd & 0xF];
layer->velocitySquare = (f32) (sp44 * sp44) / 16129.0f;
break;
- case 0xE0: /* switch 6 */
+ case 0xE0:
layer->gateTime = seqPlayer->shortNoteGateTimeTable[cmd & 0xF];
break;
default:
@@ -518,14 +518,14 @@ void func_80014748(SequenceLayer* layer) {
cmd -= (cmd & 0xC0);
} else {
switch (cmd & 0xC0) { /* switch 4; irregular */
- case 0x0: /* switch 4 */
+ case 0x0:
sp44 = func_80014704(state);
layer->lastDelay = sp44;
break;
- case 0x40: /* switch 4 */
+ case 0x40:
sp44 = layer->shortNoteDefaultDelay;
break;
- case 0x80: /* switch 4 */
+ case 0x80:
sp44 = layer->lastDelay;
break;
}
@@ -587,19 +587,19 @@ void func_80014748(SequenceLayer* layer) {
temp_fv1 = gPitchFrequencies[cmd] * tuning;
temp_fa1 = gPitchFrequencies[layer->portamentoTargetNote] * tuning;
portamento = &layer->portamento;
- switch (portamento->mode & ~0x80) { /* switch 3 */
- case 1: /* switch 3 */
- case 3: /* switch 3 */
- case 5: /* switch 3 */
+ switch (portamento->mode & ~0x80) {
+ case 1:
+ case 3:
+ case 5:
var_v0_2 = temp_fv1;
freqMod = temp_fa1;
break;
- case 2: /* switch 3 */
- case 4: /* switch 3 */
+ case 2:
+ case 4:
freqMod = temp_fv1;
var_v0_2 = temp_fa1;
break;
- default: /* switch 3 */
+ default:
freqMod = temp_fv1;
var_v0_2 = temp_fv1;
break;
@@ -741,7 +741,7 @@ void func_800153E8(SequenceChannel* channel) {
case 0xD5:
case 0xD6:
break;
- case 0xFF: /* switch 3 */
+ case 0xFF:
if (state->depth == 0) {
func_8001415C(channel);
goto end_loop;
@@ -750,10 +750,10 @@ void func_800153E8(SequenceChannel* channel) {
break;
case 0xFE:
goto end_loop;
- case 0xFD: /* switch 3 */
+ case 0xFD:
channel->delay = func_80014704(state);
goto end_loop;
- case 0xEA: /* switch 3 */
+ case 0xEA:
channel->stopScript = 1;
goto end_loop;
case 0xFC:
@@ -764,14 +764,14 @@ void func_800153E8(SequenceChannel* channel) {
state->depth++;
state->pc = &seqPlayer->seqData[sp52];
break;
- case 0xF8: /* switch 3 */
+ case 0xF8:
// if (0 && state->depth >= 4) {
// }
state->remLoopIters[state->depth] = func_800146C0(state);
state->stack[state->depth] = state->pc;
state->depth++;
break;
- case 0xF7: /* switch 3 */
+ case 0xF7:
state->remLoopIters[state->depth - 1]--;
if (state->remLoopIters[state->depth - 1] != 0) {
state->pc = state->stack[state->depth - 1];
@@ -779,13 +779,13 @@ void func_800153E8(SequenceChannel* channel) {
state->depth--;
}
break;
- case 0xF6: /* switch 3 */
+ case 0xF6:
state->depth--;
break;
- case 0xF5: /* switch 3 */
- case 0xF9: /* switch 3 */
- case 0xFA: /* switch 3 */
- case 0xFB: /* switch 3 */
+ case 0xF5:
+ case 0xF9:
+ case 0xFA:
+ case 0xFB:
sp52 = func_800146D4(state);
if (((cmd == 0xFA) && (sp4B != 0)) || ((cmd == 0xF9) && (sp4B >= 0)) ||
((cmd == 0xF5) && (sp4B < 0))) {
@@ -793,34 +793,34 @@ void func_800153E8(SequenceChannel* channel) {
}
state->pc = &seqPlayer->seqData[sp52];
break;
- case 0xF2: /* switch 3 */
- case 0xF3: /* switch 3 */
- case 0xF4: /* switch 3 */
+ case 0xF2:
+ case 0xF3:
+ case 0xF4:
temps8 = func_800146C0(state);
if (((cmd == 0xF3) && (sp4B != 0)) || ((cmd == 0xF2) && (sp4B >= 0))) {
break;
}
state->pc = &state->pc[temps8];
break;
- case 0xF1: /* switch 3 */
+ case 0xF1:
func_80012964(&channel->notePool);
func_80012AC4(&channel->notePool, func_800146C0(state));
break;
- case 0xF0: /* switch 3 */
+ case 0xF0:
func_80012964(&channel->notePool);
break;
- case 0xC2: /* switch 3 */
+ case 0xC2:
sp52 = func_800146D4(state);
channel->dynTable = (u8(*)[2]) & seqPlayer->seqData[sp52];
break;
- case 0xC5: /* switch 3 */
+ case 0xC5:
if (sp4B != -1) {
seqData = channel->dynTable[sp4B];
sp52 = (seqData[0] << 8) + seqData[1];
channel->dynTable = (u8(*)[2]) & seqPlayer->seqData[sp52];
}
break;
- case 0xEB: /* switch 3 */
+ case 0xEB:
cmd = func_800146C0(state);
sp52 = ((u16*) gSeqFontTable)[seqPlayer->seqId];
loBits = gSeqFontTable[sp52];
@@ -829,85 +829,85 @@ void func_800153E8(SequenceChannel* channel) {
channel->fontId = cmd;
}
/* fallthrough */
- case 0xC1: /* switch 3 */
+ case 0xC1:
cmd = func_800146C0(state);
func_80015330(channel, cmd);
break;
- case 0xC3: /* switch 3 */
+ case 0xC3:
channel->largeNotes = false;
break;
- case 0xC4: /* switch 3 */
+ case 0xC4:
channel->largeNotes = true;
break;
- case 0xDF: /* switch 3 */
+ case 0xDF:
cmd = func_800146C0(state);
func_800153C4(channel, cmd);
channel->changes.s.volume = 1;
break;
- case 0xE0: /* switch 3 */
+ case 0xE0:
channel->volumeMod = (s32) func_800146C0(state) * 0.0078125f;
channel->changes.s.volume = 1;
break;
- case 0xDE: /* switch 3 */
+ case 0xDE:
sp52 = func_800146D4(state);
channel->freqMod = (s32) sp52 / 32768.0f;
channel->changes.s.freqMod = 1;
break;
- case 0xD3: /* switch 3 */
+ case 0xD3:
cmd = func_800146C0(state) + 0x80;
channel->freqMod = gBendPitchOneOctaveFrequencies[cmd];
channel->changes.s.freqMod = 1;
break;
- case 0xEE: /* switch 3 */
+ case 0xEE:
cmd = func_800146C0(state) + 0x80;
channel->freqMod = gBendPitchTwoSemitonesFrequencies[cmd];
channel->changes.s.freqMod = 1;
break;
- case 0xDD: /* switch 3 */
+ case 0xDD:
channel->newPan = func_800146C0(state);
channel->changes.s.pan = 1;
break;
- case 0xDC: /* switch 3 */
+ case 0xDC:
channel->panChannelWeight = func_800146C0(state);
channel->changes.s.pan = 1;
break;
- case 0xDB: /* switch 3 */
+ case 0xDB:
temps8 = *(state->pc++);
channel->transposition = temps8;
break;
- case 0xDA: /* switch 3 */
+ case 0xDA:
sp52 = func_800146D4(state);
channel->adsr.envelope = (EnvelopePoint*) &seqPlayer->seqData[sp52];
break;
- case 0xD9: /* switch 3 */
+ case 0xD9:
channel->adsr.decayIndex = func_800146C0(state);
break;
- case 0xD8: /* switch 3 */
+ case 0xD8:
channel->vibratoDepthTarget = func_800146C0(state) * 8;
channel->vibratoDepthStart = 0;
channel->vibratoDepthChangeDelay = 0;
break;
- case 0xD7: /* switch 3 */
+ case 0xD7:
channel->vibratoRateStart = channel->vibratoRateTarget = func_800146C0(state) * 32;
channel->vibratoRateChangeDelay = 0;
break;
- case 0xE2: /* switch 3 */
+ case 0xE2:
channel->vibratoDepthStart = func_800146C0(state) * 8;
channel->vibratoDepthTarget = func_800146C0(state) * 8;
channel->vibratoDepthChangeDelay = func_800146C0(state) * 0x10;
break;
- case 0xE1: /* switch 3 */
+ case 0xE1:
channel->vibratoRateStart = func_800146C0(state) * 32;
channel->vibratoRateTarget = func_800146C0(state) * 32;
channel->vibratoRateChangeDelay = func_800146C0(state) * 0x10;
break;
- case 0xE3: /* switch 3 */
+ case 0xE3:
channel->vibratoDelay = func_800146C0(state) * 0x10;
break;
- case 0xD4: /* switch 3 */
+ case 0xD4:
channel->targetReverbVol = func_800146C0(state);
break;
- case 0xC6: /* switch 3 */
+ case 0xC6:
cmd = func_800146C0(state);
sp52 = ((u16*) gSeqFontTable)[seqPlayer->seqId];
loBits = gSeqFontTable[sp52];
@@ -916,15 +916,15 @@ void func_800153E8(SequenceChannel* channel) {
channel->fontId = cmd;
}
break;
- case 0xC7: /* switch 3 */
+ case 0xC7:
cmd = func_800146C0(state);
sp52 = func_800146D4(state);
seqData = &seqPlayer->seqData[sp52];
*seqData = (u8) sp4B + cmd;
break;
- case 0xC8: /* switch 3 */
- case 0xC9: /* switch 3 */
- case 0xCC: /* switch 3 */
+ case 0xC8:
+ case 0xC9:
+ case 0xCC:
temps8 = func_800146C0(state);
if (cmd == 0xC8) {
sp4B -= temps8;
@@ -934,40 +934,40 @@ void func_800153E8(SequenceChannel* channel) {
sp4B &= temps8;
}
break;
- case 0xCD: /* switch 3 */
+ case 0xCD:
func_8001415C(seqPlayer->channels[func_800146C0(state)]);
break;
- case 0xCA: /* switch 3 */
+ case 0xCA:
channel->muteBehavior = func_800146C0(state);
break;
- case 0xCB: /* switch 3 */
+ case 0xCB:
sp52 = func_800146D4(state);
pad = sp52 + sp4B;
// seqData =&seqPlayer->seqData[sp4B];
sp4B = seqPlayer->seqData[pad];
break;
- case 0xCE: /* switch 3 */
+ case 0xCE:
channel->unkC4 = func_800146D4(state);
break;
- case 0xCF: /* switch 3 */
+ case 0xCF:
sp52 = func_800146D4(state);
seqData = &seqPlayer->seqData[sp52];
seqData[0] = (channel->unkC4 >> 8) & 0xFF;
seqData[1] = channel->unkC4 & 0xFF;
break;
- case 0xD0: /* switch 3 */
+ case 0xD0:
channel->stereoHeadsetEffects = func_800146C0(state);
break;
- case 0xD1: /* switch 3 */
+ case 0xD1:
channel->noteAllocPolicy = func_800146C0(state);
break;
- case 0xD2: /* switch 3 */
+ case 0xD2:
channel->adsr.sustain = func_800146C0(state);
break;
- case 0xE5: /* switch 3 */
+ case 0xE5:
channel->someOtherPriority = func_800146C0(state);
break;
- case 0xE4: /* switch 3 */
+ case 0xE4:
if (sp4B != -1) {
if (state->depth >= 4) {
// eu_stubbed_printf_0("Audio:Track: CTBLCALL Macro Level Over Error!\n");
@@ -982,10 +982,10 @@ void func_800153E8(SequenceChannel* channel) {
// }
}
break;
- case 0xE6: /* switch 3 */
+ case 0xE6:
channel->bookOffset = func_800146C0(state);
break;
- case 0xE7: /* switch 3 */
+ case 0xE7:
sp52 = func_800146D4(state);
seqData = &seqPlayer->seqData[sp52];
channel->muteBehavior = *seqData++;
@@ -998,7 +998,7 @@ void func_800153E8(SequenceChannel* channel) {
channel->someOtherPriority = *seqData++;
channel->changes.s.pan = 1;
break;
- case 0xE8: /* switch 3 */
+ case 0xE8:
channel->muteBehavior = func_800146C0(state);
channel->noteAllocPolicy = func_800146C0(state);
channel->notePriority = func_800146C0(state);
@@ -1009,7 +1009,7 @@ void func_800153E8(SequenceChannel* channel) {
channel->someOtherPriority = func_800146C0(state);
channel->changes.s.pan = 1;
break;
- case 0xEC: /* switch 3 */
+ case 0xEC:
channel->vibratoDepthTarget = 0;
channel->vibratoDepthStart = 0;
channel->vibratoDepthChangeDelay = 0;
@@ -1018,58 +1018,58 @@ void func_800153E8(SequenceChannel* channel) {
channel->vibratoRateChangeDelay = 0;
channel->freqMod = 1.0f;
break;
- case 0xE9: /* switch 3 */
+ case 0xE9:
channel->notePriority = func_800146C0(state);
break;
- case 0xED: /* switch 3 */
+ case 0xED:
// cmd =
channel->reverbIndex = func_800146C0(state);
break;
- case 0xEF: /* switch 3 */
+ case 0xEF:
func_800146D4(state);
func_800146C0(state);
break;
}
} else {
loBits = cmd & 0xF;
- switch (cmd & 0xF0) { /* switch 2 */
- case 0x0: /* switch 2 */
+ switch (cmd & 0xF0) {
+ case 0x0:
if (channel->layers[loBits] != NULL) {
sp4B = channel->layers[loBits]->finished;
} else {
sp4B = -1;
}
break;
- case 0x10: /* switch 2 */
+ case 0x10:
channel->seqScriptIO[loBits] = -1;
if (AudioLoad_SlowLoadSample(channel->fontId, sp4B, &channel->seqScriptIO[loBits]) == -1) {}
break;
- case 0x70: /* switch 2 */
+ case 0x70:
channel->seqScriptIO[loBits] = sp4B;
break;
- case 0x80: /* switch 2 */
+ case 0x80:
sp4B = channel->seqScriptIO[loBits];
if (loBits < 4) {
channel->seqScriptIO[loBits] = -1;
}
break;
- case 0x50: /* switch 2 */
+ case 0x50:
sp4B -= channel->seqScriptIO[loBits];
break;
- case 0x60: /* switch 2 */
+ case 0x60:
channel->delay = loBits;
goto end_loop;
- case 0x90: /* switch 2 */
+ case 0x90:
sp52 = func_800146D4(state);
if (func_80013FC4(channel, loBits) == 0) {
// if(1) {}
channel->layers[loBits]->state.pc = &seqPlayer->seqData[sp52];
}
break;
- case 0xA0: /* switch 2 */
+ case 0xA0:
func_8001410C(channel, loBits);
break;
- case 0xB0: /* switch 2 */
+ case 0xB0:
if ((sp4B != -1) && (func_80013FC4(channel, loBits) != -1)) {
seqData = channel->dynTable[sp4B];
sp52 = (seqData[0] << 8) + seqData[1];
@@ -1080,11 +1080,11 @@ void func_800153E8(SequenceChannel* channel) {
sp52 = func_800146D4(state);
func_80014440(seqPlayer, loBits, &seqPlayer->seqData[sp52]);
break;
- case 0x30: /* switch 2 */
+ case 0x30:
cmd = func_800146C0(state);
seqPlayer->channels[loBits]->seqScriptIO[cmd] = sp4B;
break;
- case 0x40: /* switch 2 */
+ case 0x40:
cmd = func_800146C0(state);
sp4B = seqPlayer->channels[loBits]->seqScriptIO[cmd];
break;
diff --git a/src/audio/audio_synthesis.c b/src/audio/audio_synthesis.c
index ebd3f6af..f7705523 100644
--- a/src/audio/audio_synthesis.c
+++ b/src/audio/audio_synthesis.c
@@ -1,7 +1,9 @@
#include "sys.h"
#include "sf64audio_provisional.h"
-s32 D_80145D40;
+s32 D_80145D40; // unused
+
+// all of these are part of the DFT-related function
f32 D_80145D48[256];
f32 D_80146148[256];
f32 D_80146548[515];
diff --git a/src/audio/audio_thread.c b/src/audio/audio_thread.c
index e8c067b9..499cb668 100644
--- a/src/audio/audio_thread.c
+++ b/src/audio/audio_thread.c
@@ -8,19 +8,19 @@ void AudioThread_SetFadeInTimer(s32 seqPlayId, s32 fadeTime);
OSMesgQueue sAudioTaskStartQueue;
OSMesgQueue sThreadCmdProcQueue;
-OSMesgQueue sAudioUnkQueue;
+OSMesgQueue sAudioSpecQueue;
OSMesgQueue sAudioResetQueue;
AudioCmd gThreadCmdBuffer[256];
OSMesg sAudioTaskStartMsg[1];
OSMesg sThreadCmdProcMsg[4];
-OSMesg sAudioUnkMsg[1];
+OSMesg sAudioSpecMsg[1];
OSMesg sAudioResetMsg[1];
u8 gThreadCmdWritePos = 0;
u8 gThreadCmdReadPos = 0;
OSMesgQueue* gAudioTaskStartQueue = &sAudioTaskStartQueue;
OSMesgQueue* gThreadCmdProcQueue = &sThreadCmdProcQueue;
-OSMesgQueue* gAudioUnkQueue = &sAudioUnkQueue;
+OSMesgQueue* gAudioSpecQueue = &sAudioSpecQueue;
OSMesgQueue* gAudioResetQueue = &sAudioResetQueue;
static const char devstr0[] = "DAC:Lost 1 Frame.\n";
@@ -57,7 +57,7 @@ SPTask* AudioThread_CreateTask(void) {
if ((gAudioTaskCountQ % gAudioBufferParams.count) != 0) {
return gWaitingAudioTask;
}
- osSendMesg(gAudioTaskStartQueue, (OSMesg) gAudioTaskCountQ, 0);
+ osSendMesg(gAudioTaskStartQueue, (OSMesg) gAudioTaskCountQ, OS_MESG_NOBLOCK);
gAudioTaskIndexQ ^= 1;
gCurAiBuffIndex++;
gCurAiBuffIndex %= 3;
@@ -71,7 +71,7 @@ SPTask* AudioThread_CreateTask(void) {
gCurAudioFrameDmaCount = 0;
AudioLoad_DecreaseSampleDmaTtls();
AudioLoad_ProcessLoads(gResetStatus);
- if (osRecvMesg(gAudioUnkQueue, (OSMesg) &sp38, 0) != -1) {
+ if (MQ_GET_MESG(gAudioSpecQueue, &sp38)) {
if (gResetStatus == 0) {
gResetStatus = 5;
}
@@ -79,7 +79,7 @@ SPTask* AudioThread_CreateTask(void) {
}
if ((gResetStatus != 0) && (AudioHeap_ResetStep() == 0)) {
if (gResetStatus == 0) {
- osSendMesg(gAudioResetQueue, (OSMesg) (s32) gAudioSpecId, 0);
+ osSendMesg(gAudioResetQueue, (OSMesg) (s32) gAudioSpecId, OS_MESG_NOBLOCK);
}
gWaitingAudioTask = NULL;
return NULL;
@@ -102,7 +102,7 @@ SPTask* AudioThread_CreateTask(void) {
if (gAiBuffLengths[sp4C] > gAudioBufferParams.maxAiBufferLength) {
gAiBuffLengths[sp4C] = gAudioBufferParams.maxAiBufferLength;
}
- while (osRecvMesg(gThreadCmdProcQueue, (OSMesg) &sp34, 0) != -1) {
+ while (MQ_GET_MESG(gThreadCmdProcQueue, &sp34)) {
AudioThread_ProcessCmds(sp34);
}
gCurAbiCmdBuffer = func_80009B64(gCurAbiCmdBuffer, &sp50, sp40, gAiBuffLengths[sp4C]);
@@ -111,7 +111,7 @@ SPTask* AudioThread_CreateTask(void) {
sp4C = gAudioTaskIndexQ;
- gAudioCurTask->msgQueue = NULL;
+ gAudioCurTask->mesgQueue = NULL;
gAudioCurTask->msg = NULL;
task = &gAudioCurTask->task.t;
@@ -244,7 +244,7 @@ void AudioThread_InitQueues(void) {
gThreadCmdReadPos = 0;
osCreateMesgQueue(gAudioTaskStartQueue, sAudioTaskStartMsg, 1);
osCreateMesgQueue(gThreadCmdProcQueue, sThreadCmdProcMsg, 4);
- osCreateMesgQueue(gAudioUnkQueue, sAudioUnkMsg, 1);
+ osCreateMesgQueue(gAudioSpecQueue, sAudioSpecMsg, 1);
osCreateMesgQueue(gAudioResetQueue, sAudioResetMsg, 1);
}
@@ -282,7 +282,7 @@ void AudioThread_ScheduleProcessCmds(void) {
D_800C7C70 = (u8) (gThreadCmdWritePos - gThreadCmdReadPos + 0x100);
}
msg = (((gThreadCmdReadPos & 0xFF) << 8) | (gThreadCmdWritePos & 0xFF));
- osSendMesg(gThreadCmdProcQueue, (OSMesg) msg, 0);
+ osSendMesg(gThreadCmdProcQueue, (OSMesg) msg, OS_MESG_NOBLOCK);
gThreadCmdReadPos = gThreadCmdWritePos;
}
@@ -327,10 +327,10 @@ void AudioThread_ProcessCmds(u32 msg) {
player->recalculateVolume = true;
}
break;
- case AUDIOCMD_OP_SEQPLAYER_SET_TEMPO: /* switch 1 */
+ case AUDIOCMD_OP_SEQPLAYER_SET_TEMPO:
player->tempo = cmd->asInt * 48;
break;
- case AUDIOCMD_OP_SEQPLAYER_SET_TRANSPOSITION: /* switch 1 */
+ case AUDIOCMD_OP_SEQPLAYER_SET_TRANSPOSITION:
player->transposition = cmd->asSbyte;
break;
case 0x46: // AUDIOCMD_OP_SEQPLAYER_SET_IO?
@@ -387,45 +387,43 @@ void AudioThread_ProcessCmds(u32 msg) {
}
u32 AudioThread_GetAsyncLoadStatus(u32* outData) {
- u32 sp1C;
+ u32 loadStatus;
- if (osRecvMesg(&gExternalLoadQueue, (OSMesg*) &sp1C, 0) == -1) {
+ if (!MQ_GET_MESG(&gExternalLoadQueue, &loadStatus)) {
*outData = 0;
return 0;
}
- *outData = sp1C & 0xFFFFFF;
- return sp1C >> 0x18;
+ *outData = loadStatus & 0xFFFFFF;
+ return loadStatus >> 0x18;
}
u8* AudioThread_GetFontsForSequence(s32 seqId, u32* outNumFonts) {
return AudioLoad_GetFontsForSequence(seqId, outNumFonts);
}
-s32 func_8001ED34(void) {
+bool AudioThread_ResetComplete(void) {
s32 pad;
s32 sp18;
- if (osRecvMesg(gAudioResetQueue, (OSMesg*) &sp18, 0) == -1) {
- return 0;
+ if (!MQ_GET_MESG(gAudioResetQueue, &sp18)) {
+ return false;
}
if (sp18 != gAudioSpecId) {
- return 0;
+ return false;
}
- return 1;
+ return true;
}
void AudioThread_ResetAudioHeap(s32 specId) {
- // clang-format off
- s32 m1 = -1;OSMesg sp28;do {} while (osRecvMesg(gAudioResetQueue, &sp28, 0) != m1);
- // clang-format on
+ MQ_CLEAR_QUEUE(gAudioResetQueue);
AudioThread_ResetCmdQueue();
- osSendMesg(gAudioUnkQueue, (OSMesg) specId, 0);
+ osSendMesg(gAudioSpecQueue, (OSMesg) specId, OS_MESG_NOBLOCK);
}
void AudioThread_PreNMIReset(void) {
gResetTimer = 1;
- AudioThread_ResetAudioHeap(0);
+ AudioThread_ResetAudioHeap(AUDIOSPEC_0);
gResetStatus = 0;
}
diff --git a/src/engine/fox_360.c b/src/engine/fox_360.c
index 566ab856..b74b9e33 100644
--- a/src/engine/fox_360.c
+++ b/src/engine/fox_360.c
@@ -62,7 +62,7 @@ s32 gAllRangeSupplyTimer;
s32 sStarWolfKillTimer;
s16 gStarWolfMsgTimer;
s32 gAllRangeWingRepairTimer;
-s32 gAllRangeWingRepairSent;
+s32 gAllRangeSuppliesSent;
f32 gSzMissileR;
f32 gSzMissileG;
f32 gSzMissileB;
@@ -250,7 +250,7 @@ void AllRange_GreatFoxRepair(Player* player) {
player->unk_014 = 0;
player->unk_018 = 0;
player->unk_01C = 0;
- gActors[0].state = 2;
+ gActors[0].state = STATE360_2;
}
break;
}
@@ -402,10 +402,10 @@ void ActorAllRange_SpawnTeam(void) {
} else {
actor->aiIndex = D_360_800C9ADC[i];
}
- actor->state = 2;
+ actor->state = STATE360_2;
actor->unk_0F4.y = 180.0f;
if (actor->aiIndex <= -1) {
- actor->state = 3;
+ actor->state = STATE360_3;
}
actor->health = 50;
if ((gLevelType == LEVELTYPE_PLANET) || (gCurrentLevel == LEVEL_BOLSE)) {
@@ -442,7 +442,7 @@ void ActorAllRange_SpawnStarWolf(void) {
actor->health = 100;
actor->unk_0C9 = 1;
actor->unk_0F4.y = 225.0f;
- actor->state = 0;
+ actor->state = STATE360_0;
actor->timer_0BC = 250;
actor->unk_0F4.x = -20.0f;
actor->iwork[11] = 1;
@@ -474,8 +474,8 @@ void ActorAllRange_StarWolfDefeatMesg(u16* msg, RadioCharacterId character) {
ActorAllRange_PlayMessage(msg, character);
}
-void func_360_8002F69C(Actor* actor) {
- Actor* otherActor;
+void func_360_8002F69C(Actor* this) {
+ Actor* actor;
s32 i;
if (sStarWolfKillTimer != 0) {
@@ -492,7 +492,7 @@ void func_360_8002F69C(Actor* actor) {
}
if (gAllRangeEventTimer == D_360_800C9B4C) {
ActorAllRange_SpawnStarWolf();
- actor->state = 3;
+ this->state = STATE360_3;
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_STANDBY;
if ((gCurrentLevel == LEVEL_VENOM_2) || (gCurrentLevel == LEVEL_BOLSE)) {
gPlayer[0].camRoll = 20.0f;
@@ -510,56 +510,53 @@ void func_360_8002F69C(Actor* actor) {
gPlayer[0].cam.at.y = gActors[4].obj.pos.y;
gPlayer[0].cam.at.z = gActors[4].obj.pos.z;
}
- if (gAllRangeEventTimer > D_360_800C9B4C) {
- if (gStarWolfMsgTimer == 0) {
- gAllRangeFrameCount++;
- for (i = 1, otherActor = &gActors[1]; i < 8; i++, otherActor++) {
- if ((otherActor->obj.status == OBJ_ACTIVE) && (otherActor->state == 2) && (otherActor->health < 70) &&
- (otherActor->timer_0C6 != 0) && (otherActor->unk_0D4 == 1)) {
- if ((gActors[otherActor->aiIndex].state == STATE360_3) &&
- (gActors[otherActor->aiIndex].aiType <= AI360_ANDREW)) {
- gActors[otherActor->aiIndex].iwork[2] = AI360_FOX;
- gActors[otherActor->aiIndex].state = 2;
- gActors[otherActor->aiIndex].aiIndex = otherActor->aiType;
- if (gTeamHelpActor == &gActors[otherActor->aiIndex]) {
- gTeamHelpActor = NULL;
- gTeamHelpTimer = 0;
- }
- if (gActors[otherActor->aiIndex].iwork[3] == 0) {
- switch (gActors[otherActor->aiIndex].aiType) {
- case AI360_FALCO:
- ActorAllRange_PlayMessage(gMsg_ID_9160, RCID_FALCO);
- break;
- case AI360_SLIPPY:
- ActorAllRange_PlayMessage(gMsg_ID_9170, RCID_SLIPPY);
- break;
- case AI360_PEPPY:
- ActorAllRange_PlayMessage(gMsg_ID_9180, RCID_PEPPY);
- break;
- }
- gActors[otherActor->aiIndex].iwork[3] = 200;
- }
+ if ((gAllRangeEventTimer > D_360_800C9B4C) && (gStarWolfMsgTimer == 0)) {
+ gAllRangeFrameCount++;
+ for (i = 1, actor = &gActors[1]; i < 8; i++, actor++) {
+ if ((actor->obj.status == OBJ_ACTIVE) && (actor->state == STATE360_2) && (actor->health < 70) &&
+ (actor->timer_0C6 != 0) && (actor->unk_0D4 == 1)) {
+ if ((gActors[actor->aiIndex].state == STATE360_3) && (gActors[actor->aiIndex].aiType <= AI360_ANDREW)) {
+ gActors[actor->aiIndex].iwork[2] = AI360_FOX;
+ gActors[actor->aiIndex].state = STATE360_2;
+ gActors[actor->aiIndex].aiIndex = actor->aiType;
+ if (gTeamHelpActor == &gActors[actor->aiIndex]) {
+ gTeamHelpActor = NULL;
+ gTeamHelpTimer = 0;
}
- if (otherActor->aiType == AI360_WOLF) {
- if (gCurrentLevel != LEVEL_VENOM_2) {
- otherActor->state = STATE360_3;
- otherActor->unk_04E = 300;
+ if (gActors[actor->aiIndex].iwork[3] == 0) {
+ switch (gActors[actor->aiIndex].aiType) {
+ case AI360_FALCO:
+ ActorAllRange_PlayMessage(gMsg_ID_9160, RCID_FALCO);
+ break;
+ case AI360_SLIPPY:
+ ActorAllRange_PlayMessage(gMsg_ID_9170, RCID_SLIPPY);
+ break;
+ case AI360_PEPPY:
+ ActorAllRange_PlayMessage(gMsg_ID_9180, RCID_PEPPY);
+ break;
}
- } else {
- otherActor->state = STATE360_3;
- otherActor->aiIndex = -1;
+ gActors[actor->aiIndex].iwork[3] = 200;
}
}
+ if (actor->aiType == AI360_WOLF) {
+ if (gCurrentLevel != LEVEL_VENOM_2) {
+ actor->state = STATE360_3;
+ actor->unk_04E = 300;
+ }
+ } else {
+ actor->state = STATE360_3;
+ actor->aiIndex = -1;
+ }
}
- if (gTeamShields[TEAM_ID_FALCO] <= 0) {
- gActors[AI360_LEON].aiIndex = AI360_FOX;
- }
- if (gTeamShields[TEAM_ID_SLIPPY] <= 0) {
- gActors[AI360_ANDREW].aiIndex = AI360_FOX;
- }
- if (gTeamShields[TEAM_ID_PEPPY] <= 0) {
- gActors[AI360_PIGMA].aiIndex = AI360_FOX;
- }
+ }
+ if (gTeamShields[TEAM_ID_FALCO] <= 0) {
+ gActors[AI360_LEON].aiIndex = AI360_FOX;
+ }
+ if (gTeamShields[TEAM_ID_SLIPPY] <= 0) {
+ gActors[AI360_ANDREW].aiIndex = AI360_FOX;
+ }
+ if (gTeamShields[TEAM_ID_PEPPY] <= 0) {
+ gActors[AI360_PIGMA].aiIndex = AI360_FOX;
}
}
}
@@ -582,7 +579,7 @@ void func_360_8002FB4C(Actor* actor) {
}
if (!var_a0) {
actor->aiIndex = i;
- actor->state = 2;
+ actor->state = STATE360_2;
actor->iwork[2] = AI360_FOX;
break;
}
@@ -590,31 +587,29 @@ void func_360_8002FB4C(Actor* actor) {
}
}
-void func_360_8002FC00(Actor* actor) {
- Actor* otherActor;
+void func_360_8002FC00(Actor* this) {
+ Actor* actor;
s32 i;
- for (i = 0, otherActor = &gActors[10]; i < 50; i++, otherActor++) {
- if ((otherActor->obj.status == OBJ_DYING) && (otherActor->aiIndex >= AI360_FALCO) &&
- (otherActor->aiIndex <= AI360_PEPPY)) {
+ for (i = 0, actor = &gActors[10]; i < 50; i++, actor++) {
+ if ((actor->obj.status == OBJ_DYING) && (actor->aiIndex >= AI360_FALCO) && (actor->aiIndex <= AI360_PEPPY)) {
Actor* actor2;
s32 j;
for (j = 0, actor2 = &gActors[10]; j < 51; j++, actor2++) {
- if ((actor2->obj.status == OBJ_ACTIVE) && (actor2->state == 2) &&
- (actor2->aiIndex == otherActor->aiIndex)) {
+ if ((actor2->obj.status == OBJ_ACTIVE) && (actor2->state == STATE360_2) &&
+ (actor2->aiIndex == actor->aiIndex)) {
return;
}
}
- if (gTeamShields[otherActor->aiIndex] > 0) {
- func_360_8002FB4C(&gActors[otherActor->aiIndex]);
- if ((otherActor->iwork[5] != 0) && (otherActor->unk_0D4 == 1) &&
- (gActors[otherActor->aiIndex].iwork[3] == 0)) {
- if (gTeamHelpActor == &gActors[otherActor->aiIndex]) {
+ if (gTeamShields[actor->aiIndex] > 0) {
+ func_360_8002FB4C(&gActors[actor->aiIndex]);
+ if ((actor->iwork[5] != 0) && (actor->unk_0D4 == 1) && (gActors[actor->aiIndex].iwork[3] == 0)) {
+ if (gTeamHelpActor == &gActors[actor->aiIndex]) {
gTeamHelpActor = NULL;
gTeamHelpTimer = 0;
}
- switch (gActors[otherActor->aiIndex].aiType) {
+ switch (gActors[actor->aiIndex].aiType) {
case AI360_FALCO:
ActorAllRange_PlayMessage(gMsg_ID_9160, RCID_FALCO);
break;
@@ -625,15 +620,15 @@ void func_360_8002FC00(Actor* actor) {
ActorAllRange_PlayMessage(gMsg_ID_9180, RCID_PEPPY);
break;
}
- gActors[otherActor->aiIndex].iwork[3] = 200;
- gActors[otherActor->aiIndex].timer_0C4 = 600;
+ gActors[actor->aiIndex].iwork[3] = 200;
+ gActors[actor->aiIndex].timer_0C4 = 600;
}
}
}
}
}
-bool func_360_8002FE74(void) {
+bool AllRange_SupplyEvent(void) {
switch (gCurrentLevel) {
case LEVEL_FORTUNA:
return gAllRangeEventTimer == D_360_800C9B4C + 2400;
@@ -650,7 +645,7 @@ void ActorAllRange_SpawnSupplies(Actor* this) {
s32 i;
if ((gCallTimer != 0) && (gControllerPress[gMainController].button & R_CBUTTONS)) {
- func_8001AF40(0);
+ Audio_SetUnkVoiceParam(0);
gCallVoiceParam = 0;
gCallTimer = 0;
Radio_PlayMessage(gMsg_ID_20230, RCID_ROB64);
@@ -682,13 +677,13 @@ void ActorAllRange_SpawnSupplies(Actor* this) {
}
}
}
- if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_ACTIVE) && !gAllRangeWingRepairSent) {
+ if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_ACTIVE) && !gAllRangeSuppliesSent) {
if (gAllRangeWingRepairTimer != 0) {
gAllRangeWingRepairTimer--;
}
- if ((gPlayer[0].shields < 64) || func_360_8002FE74() || (gAllRangeWingRepairTimer == 1)) {
+ if ((gPlayer[0].shields < 64) || AllRange_SupplyEvent() || (gAllRangeWingRepairTimer == 1)) {
gCallTimer = 60;
- gAllRangeWingRepairSent = true;
+ gAllRangeSuppliesSent = true;
}
}
}
@@ -719,27 +714,27 @@ void ActorAllRange_UpdateEvents(Actor* this) {
ActorAllRange_SpawnSupplies(this);
}
-s32 func_360_800301F4(Actor* actor) {
+s32 func_360_800301F4(Actor* this) {
Boss* boss;
f32 temp_ft4;
f32 temp_ft5;
s32 i;
- f32 sp1C;
- f32 sp18;
+ f32 sinY;
+ f32 cosY;
if (gLevelMode == LEVELMODE_ON_RAILS) {
return 0;
}
- sp1C = SIN_DEG(actor->obj.rot.y);
- sp18 = COS_DEG(actor->obj.rot.y);
- temp_ft4 = actor->fwork[9] * 10.0f + (sp1C * 650.0f);
- temp_ft5 = actor->fwork[9] * 10.0f + (sp18 * 650.0f);
+ sinY = SIN_DEG(this->obj.rot.y);
+ cosY = COS_DEG(this->obj.rot.y);
+ temp_ft4 = this->fwork[9] * 10.0f + (sinY * 650.0f);
+ temp_ft5 = this->fwork[9] * 10.0f + (cosY * 650.0f);
for (i = 0; i < 200; i++) {
if ((gScenery360[i].obj.status == OBJ_ACTIVE) &&
- (fabsf(gScenery360[i].obj.pos.x - (actor->obj.pos.x + temp_ft4)) < 1000.0f) &&
- (fabsf(gScenery360[i].obj.pos.z - (actor->obj.pos.z + temp_ft5)) < 1000.0f)) {
- if (fabsf(gScenery360[i].obj.pos.y - actor->obj.pos.y) < 1000.0f) {
- if (gScenery360[i].obj.pos.y < actor->obj.pos.y) {
+ (fabsf(gScenery360[i].obj.pos.x - (this->obj.pos.x + temp_ft4)) < 1000.0f) &&
+ (fabsf(gScenery360[i].obj.pos.z - (this->obj.pos.z + temp_ft5)) < 1000.0f)) {
+ if (fabsf(gScenery360[i].obj.pos.y - this->obj.pos.y) < 1000.0f) {
+ if (gScenery360[i].obj.pos.y < this->obj.pos.y) {
return 1;
} else {
return -1;
@@ -748,10 +743,10 @@ s32 func_360_800301F4(Actor* actor) {
}
}
boss = &gBosses[0];
- if ((gCurrentLevel == LEVEL_SECTOR_Z) && (fabsf(boss->obj.pos.x - (actor->obj.pos.x + temp_ft4)) < 2000.0f) &&
- (fabsf(boss->obj.pos.z - (actor->obj.pos.z + temp_ft5)) < 2000.0f)) {
- if (fabsf(boss->obj.pos.y - actor->obj.pos.y) < 1500.0f) {
- if (boss->obj.pos.y < actor->obj.pos.y) {
+ if ((gCurrentLevel == LEVEL_SECTOR_Z) && (fabsf(boss->obj.pos.x - (this->obj.pos.x + temp_ft4)) < 2000.0f) &&
+ (fabsf(boss->obj.pos.z - (this->obj.pos.z + temp_ft5)) < 2000.0f)) {
+ if (fabsf(boss->obj.pos.y - this->obj.pos.y) < 1500.0f) {
+ if (boss->obj.pos.y < this->obj.pos.y) {
return 1;
} else {
return -1;
@@ -761,7 +756,7 @@ s32 func_360_800301F4(Actor* actor) {
return 0;
}
-s32 func_360_8003049C(Actor* actor) {
+s32 func_360_8003049C(Actor* this) {
Scenery360* scenery360;
s32 i;
f32 sp44;
@@ -777,25 +772,24 @@ s32 func_360_8003049C(Actor* actor) {
return 0;
}
if ((gLevelType == LEVELTYPE_SPACE) && (gCurrentLevel != LEVEL_BOLSE)) {
- return func_360_800301F4(actor);
+ return func_360_800301F4(this);
}
- sp40 = SIN_DEG(actor->obj.rot.y);
- sp3C = COS_DEG(actor->obj.rot.y);
- temp_fa0 = actor->fwork[9] * 10.0f + (sp40 * 650.0f);
- temp_ft4 = actor->fwork[9] * 10.0f + (sp3C * 650.0f);
+ sp40 = SIN_DEG(this->obj.rot.y);
+ sp3C = COS_DEG(this->obj.rot.y);
+ temp_fa0 = this->fwork[9] * 10.0f + (sp40 * 650.0f);
+ temp_ft4 = this->fwork[9] * 10.0f + (sp3C * 650.0f);
if (gLevelMode == LEVELMODE_ALL_RANGE) {
for (i = 0, scenery360 = gScenery360; i < 200; i++, scenery360++) {
if ((scenery360->obj.status == OBJ_ACTIVE) &&
- (fabsf(scenery360->obj.pos.x - (actor->obj.pos.x + temp_fa0)) < 1200.0f) &&
- (fabsf(scenery360->obj.pos.z - (actor->obj.pos.z + temp_ft4)) < 1200.0f) &&
- (actor->obj.pos.y < 650.0f)) {
+ (fabsf(scenery360->obj.pos.x - (this->obj.pos.x + temp_fa0)) < 1200.0f) &&
+ (fabsf(scenery360->obj.pos.z - (this->obj.pos.z + temp_ft4)) < 1200.0f) && (this->obj.pos.y < 650.0f)) {
return 1;
}
}
}
sp44 = 1200.0f;
var_ft5 = 650.0f;
- if (actor->aiType < AI360_KATT) {
+ if (this->aiType < AI360_KATT) {
var_ft5 = 720.0f;
}
@@ -808,9 +802,9 @@ s32 func_360_8003049C(Actor* actor) {
sp44 = 1500.0f;
var_ft5 = 700.0f;
}
- if ((fabsf(boss->obj.pos.x - (actor->obj.pos.x + temp_fa0)) < sp44) &&
- (fabsf(boss->obj.pos.z - (actor->obj.pos.z + temp_ft4)) < sp44) &&
- (fabsf(boss->obj.pos.y - actor->obj.pos.y) < var_ft5)) {
+ if ((fabsf(boss->obj.pos.x - (this->obj.pos.x + temp_fa0)) < sp44) &&
+ (fabsf(boss->obj.pos.z - (this->obj.pos.z + temp_ft4)) < sp44) &&
+ (fabsf(boss->obj.pos.y - this->obj.pos.y) < var_ft5)) {
return 1;
}
return 0;
@@ -857,7 +851,7 @@ void ActorAllRange_ApplyDamage(Actor* this) {
((this->aiType != AI360_MISSILE) || (this->unk_0D0 != 2))) {
this->health -= this->damage;
}
- } else if ((this->aiType <= AI360_PEPPY) && (this->state != 6)) {
+ } else if ((this->aiType <= AI360_PEPPY) && (this->state != STATE360_6)) {
if (this->aiType == AI360_FALCO) {
gTeamDamage[this->aiType] = this->damage;
} else {
@@ -1226,42 +1220,42 @@ void ActorAllRange_Update(Actor* this) {
ActorAllRange_UpdateEvents(this);
return;
}
- if ((this->iwork[17] != 0) && (this->iwork[16] == 0) && (this->aiType >= AI360_WOLF)) {
+ if ((this->iwork[17] != 0) && (this->iwork[16] == STATE360_0) && (this->aiType >= AI360_WOLF)) {
switch (RAND_INT(3.9f)) {
case 0:
case 1:
if (gCurrentLevel == LEVEL_VENOM_2) {
- this->iwork[16] = 10;
+ this->iwork[16] = STATE360_10;
}
break;
case 2:
- this->iwork[16] = 8;
+ this->iwork[16] = STATE360_8;
break;
case 3:
- this->iwork[16] = 7;
+ this->iwork[16] = STATE360_7;
break;
}
this->iwork[17] = 0;
if (this->iwork[18] != 0) {
this->iwork[18]--;
- this->iwork[16] = 0;
+ this->iwork[16] = STATE360_0;
}
}
- if ((this->lockOnTimers[0] != 0) && (gCurrentLevel != LEVEL_VENOM_2) && (this->aiType < AI360_10) &&
- (this->lockOnTimers[0] < 5) && ((gGameFrameCount % 32) == 0)) {
- this->iwork[16] = 10;
+ if ((this->lockOnTimers[TEAM_ID_FOX] != 0) && (gCurrentLevel != LEVEL_VENOM_2) && (this->aiType < AI360_10) &&
+ (this->lockOnTimers[TEAM_ID_FOX] < 5) && ((gGameFrameCount % 32) == 0)) {
+ this->iwork[16] = STATE360_10;
}
- if ((this->iwork[16] != 0) && (this->state < 7)) {
+ if ((this->iwork[16] != STATE360_0) && (this->state < STATE360_7)) {
this->state = this->iwork[16];
switch (this->state) {
- case 7:
- case 8:
+ case STATE360_7:
+ case STATE360_8:
if (this->unk_0F4.x > 180.0f) {
this->unk_0F4.x -= 360.0f;
}
this->unk_046 = 0;
break;
- case 9:
+ case STATE360_9:
this->timer_0BC = RAND_INT(20.0f) + 30;
if (Rand_ZeroOne() < 0.5f) {
this->fwork[19] = this->obj.rot.y + 50.0f;
@@ -1275,7 +1269,7 @@ void ActorAllRange_Update(Actor* this) {
this->fwork[19] += 360.0f;
}
break;
- case 10:
+ case STATE360_10:
this->timer_0BC = 35;
if (Rand_ZeroOne() < 0.5f) {
this->fwork[7] = 360.0f;
@@ -1290,7 +1284,7 @@ void ActorAllRange_Update(Actor* this) {
break;
}
}
- this->iwork[16] = 0;
+ this->iwork[16] = STATE360_0;
spCC = spC8 = spC4 = 0.0f;
if (this->iwork[7] != 0) {
this->iwork[7]--;
@@ -1352,8 +1346,8 @@ void ActorAllRange_Update(Actor* this) {
sp104 = 0;
this->iwork[5] = 0;
if ((this->aiType > AI360_FOX) && (this->aiType <= AI360_PEPPY) && (gTeamShields[this->aiType] <= 0) &&
- (this->state != 6)) {
- this->state = 6;
+ (this->state != STATE360_6)) {
+ this->state = STATE360_6;
if (this->timer_0C2 < 100) {
gTeamShields[this->aiType] = 1;
switch (this->aiType) {
@@ -1412,20 +1406,20 @@ void ActorAllRange_Update(Actor* this) {
case STATE360_0:
if (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_START_360) {
this->fwork[0] = this->fwork[1] = 40.0f;
- if (gActors[0].state == 5) {
+ if (gActors[0].state == STATE360_5) {
Math_SmoothStepToF(&this->unk_0F4.x, 30.0f, 0.1f, 0.5f, 0.0f);
this->fwork[1] = 200.0f;
}
if (this->timer_0BC == 0) {
if (this->aiType == AI360_WOLF) {
- this->state = 3;
+ this->state = STATE360_3;
if (gCurrentLevel == LEVEL_VENOM_2) {
this->unk_04E = 200;
} else {
this->unk_04E = 200;
}
} else {
- this->state = 2;
+ this->state = STATE360_2;
if (this->aiType == AI360_KATT) {
this->fwork[7] = 360.0f;
this->fwork[8] = 0.0f;
@@ -1441,9 +1435,9 @@ void ActorAllRange_Update(Actor* this) {
Math_SmoothStepToF(&this->unk_0F4.x, 15.0f, 0.1f, 1.0f, 0.0f);
}
if (this->timer_0BC == 0) {
- this->state = 3;
+ this->state = STATE360_3;
if ((gCurrentLevel == LEVEL_BOLSE) && (this->aiIndex > -1)) {
- this->state = 2;
+ this->state = STATE360_2;
}
}
break;
@@ -1464,7 +1458,7 @@ void ActorAllRange_Update(Actor* this) {
spF0 = 0.2f;
}
if (this->aiIndex <= -1) {
- this->state = 3;
+ this->state = STATE360_3;
} else {
if (gActors[this->aiIndex].aiType == AI360_MISSILE) {
spF0 = 0.8f;
@@ -1475,7 +1469,7 @@ void ActorAllRange_Update(Actor* this) {
if (gCurrentLevel != LEVEL_VENOM_2) {
if ((gPlayer[0].somersault && (this->iwork[4] > 10)) ||
((gCurrentLevel == LEVEL_BOLSE) && (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_STANDBY))) {
- this->state = 3;
+ this->state = STATE360_3;
this->unk_04E = 300;
this->timer_0BC = 160;
if (this->aiType == AI360_WOLF) {
@@ -1488,7 +1482,7 @@ void ActorAllRange_Update(Actor* this) {
}
}
if ((this->aiType >= AI360_WOLF) && (this->aiType != AI360_KATT) &&
- ((gCurrentLevel != LEVEL_VENOM_2) || (this->aiType != AI360_WOLF))) {
+ !((gCurrentLevel == LEVEL_VENOM_2) && (this->aiType == AI360_WOLF))) {
spCC = SIN_DEG((this->index * 45) + gGameFrameCount) * 100.0f;
spC8 = COS_DEG((this->index * 45) + (gGameFrameCount * 2)) * 100.0f;
spC4 = SIN_DEG((this->index * 45) + gGameFrameCount) * 100.0f;
@@ -1499,7 +1493,7 @@ void ActorAllRange_Update(Actor* this) {
this->fwork[6] = gPlayer[0].unk_138 + spC4;
this->fwork[1] = gPlayer[0].unk_0D0 + 10.0f;
}
- if ((gActors[0].state == 6) && (this->aiType <= AI360_PEPPY)) {
+ if ((gActors[0].state == STATE360_6) && (this->aiType <= AI360_PEPPY)) {
this->fwork[3] = 3.0f;
this->fwork[1] = gPlayer[0].unk_0D0 - 5.0f;
this->iwork[11] = 2;
@@ -1545,7 +1539,7 @@ void ActorAllRange_Update(Actor* this) {
this->fwork[6] = gBosses[0].obj.pos.z;
this->fwork[1] = 40.0f;
}
- if ((this->aiIndex > -1) && (this->aiIndex != AI360_GREAT_FOX) && (gActors[0].state != 6)) {
+ if ((this->aiIndex > -1) && (this->aiIndex != AI360_GREAT_FOX) && (gActors[0].state != STATE360_6)) {
if (spE8 < spF8) {
if (spEC < spF8) {
if (this->aiIndex != AI360_FOX) {
@@ -1554,7 +1548,7 @@ void ActorAllRange_Update(Actor* this) {
this->fwork[1] = gPlayer[0].unk_0D0 - 5.0f;
if ((gCurrentLevel == LEVEL_VENOM_2) &&
(gPlayer[0].state_1C8 == PLAYERSTATE_1C8_U_TURN) && (gPlayer[0].unk_4D8 > 100.0f)) {
- this->iwork[16] = 8;
+ this->iwork[16] = STATE360_8;
}
}
}
@@ -1752,10 +1746,10 @@ void ActorAllRange_Update(Actor* this) {
} else {
this->iwork[4] = 0;
}
- if ((this->aiIndex >= AI360_FALCO) &&
- ((gActors[this->aiIndex].obj.status == OBJ_DYING) || (gActors[this->aiIndex].state == 6) ||
- (gActors[this->aiIndex].obj.status == OBJ_FREE))) {
- this->state = 3;
+ if ((this->aiIndex >= AI360_FALCO) && ((gActors[this->aiIndex].obj.status == OBJ_DYING) ||
+ (gActors[this->aiIndex].state == STATE360_6) ||
+ (gActors[this->aiIndex].obj.status == OBJ_FREE))) {
+ this->state = STATE360_3;
if (gCurrentLevel == LEVEL_BOLSE) {
func_360_8002FB4C(this);
}
@@ -1783,7 +1777,7 @@ void ActorAllRange_Update(Actor* this) {
this->fwork[3] = 1.0f;
this->fwork[1] = 38.0f;
}
- if ((gCurrentLevel == LEVEL_SECTOR_Z) && (gActors[0].state == 10)) {
+ if ((gCurrentLevel == LEVEL_SECTOR_Z) && (gActors[0].state == STATE360_10)) {
this->fwork[10] = 30.0f;
}
if ((gLevelType == LEVELTYPE_SPACE) && (gCurrentLevel != LEVEL_BOLSE)) {
@@ -1823,7 +1817,7 @@ void ActorAllRange_Update(Actor* this) {
}
if ((this->aiIndex >= AI360_FALCO) && (gActors[this->aiIndex].obj.id == OBJ_ACTOR_ALLRANGE) &&
(gActors[this->aiIndex].timer_0C2 == 0) && (gActors[this->aiIndex].obj.status == OBJ_ACTIVE)) {
- this->state = 2;
+ this->state = STATE360_2;
this->iwork[2] = AI360_FOX;
}
if (this->aiIndex == AI360_FOX) {
@@ -1831,7 +1825,7 @@ void ActorAllRange_Update(Actor* this) {
this->unk_04E--;
}
if (this->unk_04E == 0) {
- this->state = 2;
+ this->state = STATE360_2;
this->iwork[2] = AI360_FOX;
}
}
@@ -1841,7 +1835,7 @@ void ActorAllRange_Update(Actor* this) {
Math_SmoothStepToF(&this->unk_0F4.x, 360.0f, 0.1f, 5.0f, 0.0001f);
Math_SmoothStepToAngle(&this->obj.rot.z, 0.0f, 0.1f, 3.0f, 0.01f);
if (this->unk_0F4.x > 350.0f) {
- this->state = 3;
+ this->state = STATE360_3;
}
break;
case STATE360_8:
@@ -1871,7 +1865,7 @@ void ActorAllRange_Update(Actor* this) {
break;
case 1:
if (this->timer_0BC == 0) {
- this->state = 3;
+ this->state = STATE360_3;
}
break;
}
@@ -1885,13 +1879,13 @@ void ActorAllRange_Update(Actor* this) {
}
Math_SmoothStepToAngle(&this->obj.rot.z, spD0, 0.1f, 15.0f, 0.01f);
if (this->timer_0BC == 0) {
- this->state = 3;
+ this->state = STATE360_3;
}
break;
case STATE360_10:
sp104 = 1;
if (this->timer_0BC == 0) {
- this->state = 3;
+ this->state = STATE360_3;
}
if (this->timer_0BC > 20) {
Math_SmoothStepToF(&this->fwork[23], 180.0f, 1.0f, 60.0f, 0.0f);
@@ -1899,14 +1893,14 @@ void ActorAllRange_Update(Actor* this) {
break;
}
if (sp104 != 0) {
- s32 var_v0 = 3;
+ s32 var_v0 = 4 - 1;
spE4 = this->fwork[4] - this->obj.pos.x;
spE0 = this->fwork[5] - this->obj.pos.y;
spDC = this->fwork[6] - this->obj.pos.z;
if (gCurrentLevel == LEVEL_VENOM_2) {
- var_v0 = 1;
+ var_v0 = 2 - 1;
}
if (!((this->index + gGameFrameCount) & var_v0)) {
this->fwork[19] = Math_RadToDeg(Math_Atan2F(spE4, spDC));
@@ -1956,7 +1950,7 @@ void ActorAllRange_Update(Actor* this) {
}
if ((this->fwork[7] > 0.01f) && (this->fwork[7] < 359.9f)) {
if ((((gGameFrameCount + 15) % 32) == 0) && (gCurrentLevel != LEVEL_VENOM_2)) {
- this->lockOnTimers[0] = 0;
+ this->lockOnTimers[TEAM_ID_FOX] = 0;
}
} else {
Math_SmoothStepToAngle(&this->obj.rot.z, spD0, 0.1f, 3.0f, 0.01f);
@@ -1977,7 +1971,6 @@ void ActorAllRange_Update(Actor* this) {
Matrix_RotateZ(gCalcMatrix, this->obj.rot.z * M_DTOR, MTXF_APPLY);
spA8.x = 0.0f;
spA8.y = 70.0f;
-
spA8.z = -70.0f;
Matrix_MultVec3fNoTranslate(gCalcMatrix, &spA8, &sp9C);
func_effect_80078E50(this->obj.pos.x + sp9C.x, this->obj.pos.y + sp9C.y, this->obj.pos.z + sp9C.z,
diff --git a/src/engine/fox_A48A0.c b/src/engine/fox_A48A0.c
index 01036834..677cf218 100644
--- a/src/engine/fox_A48A0.c
+++ b/src/engine/fox_A48A0.c
@@ -31,7 +31,7 @@ void func_800A3E00(void) {
break;
case 2:
if ((gControllerPress[0].button & START_BUTTON) || (gControllerPress[1].button & START_BUTTON)) {
- func_8001D638(0);
+ Audio_PlayPauseSfx(0);
D_ctx_80177868 = 3;
gDrawMode = DRAW_NONE;
Play_Setup();
diff --git a/src/engine/fox_beam.c b/src/engine/fox_beam.c
index 98ba98d2..fb588b6e 100644
--- a/src/engine/fox_beam.c
+++ b/src/engine/fox_beam.c
@@ -56,7 +56,7 @@ void func_beam_80035E78(PlayerShot* shot) {
shot->unk_5C = 1;
shot->unk_64 = 30;
shot->unk_58 = 150;
- func_8001CE28(shot->playerNum, shot->sfxSource);
+ Audio_PlayBombExplodeSfx(shot->playerNum, shot->sfxSource);
gScreenFlashTimer = 4;
if (shot->obj.pos.y < (gGroundHeight + 450.0f)) {
gCameraShake = 15;
diff --git a/src/engine/fox_bg.c b/src/engine/fox_bg.c
index d185de70..b78a0593 100644
--- a/src/engine/fox_bg.c
+++ b/src/engine/fox_bg.c
@@ -611,7 +611,7 @@ void Background_DrawBackdrop(void) {
break;
case LEVEL_FORTUNA:
sp128 = 1.5f;
- if ((gCsFrameCount > 400) && (gNextPlanetPath == 0)) {
+ if ((gCsFrameCount > 400) && (gMissionStatus == MISSION_COMPLETE)) {
sp128 = 0.75f;
}
Matrix_Translate(gGfxMatrix, sp138 - 120.0f, -(sp134 - 120.0f), -290.0f, MTXF_APPLY);
diff --git a/src/engine/fox_context.c b/src/engine/fox_context.c
index 7434822e..b56f03d7 100644
--- a/src/engine/fox_context.c
+++ b/src/engine/fox_context.c
@@ -22,7 +22,7 @@ s32 gTeamShields[6];
s32 gSavedTeamShields[6];
s32 gPrevPlanetSavedTeamShields[6];
s32 gTeamDamage[6];
-u8 gNextPlanetPath; // next planet path
+u8 gMissionStatus; // next planet path
f32 gGroundHeight;
f32 D_ctx_80177950;
f32 D_ctx_80177968;
@@ -45,11 +45,11 @@ u8 gAqDrawMode;
s32 D_ctx_80177AE0;
s32 gMainController;
s32 D_ctx_80177B40;
-s32 gMissionNumber; // D_ctx_80177B48 // Arrow pointer?
-s32 D_ctx_80177B50[7];
-s32 D_ctx_80177B70[7];
-PlanetId D_ctx_80177B90[7];
-s32 D_ctx_80177BB0[7];
+s32 gMissionNumber;
+s32 gMissionTeamStatus[7];
+s32 gMissionHitCount[7];
+PlanetId gMissionPlanet[7];
+s32 gMissionMedal[7];
#ifdef AVOID_UB
s32 gPlanetPathStatus[24];
#else
@@ -93,7 +93,7 @@ s32 gRadioState;
s32 D_ctx_801782A4;
s32 D_Timer_801782AC;
s32 D_Timer_801782B4;
-u8 D_play_800D3180[30] = {
+u8 gLeveLClearStatus[30] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
};
s32 D_ctx_801782C0;
diff --git a/src/engine/fox_demo.c b/src/engine/fox_demo.c
index e4035b99..b2a2da19 100644
--- a/src/engine/fox_demo.c
+++ b/src/engine/fox_demo.c
@@ -292,11 +292,11 @@ void Cutscene_WarpZoneComplete(Player* player) {
player->timer_1F8 = 0;
gFadeoutType = 4;
if (gCurrentLevel == LEVEL_METEO) {
- D_play_800D3180[LEVEL_METEO] = Play_CheckMedalStatus(200) + 1;
+ gLeveLClearStatus[LEVEL_METEO] = Play_CheckMedalStatus(200) + 1;
} else {
- D_play_800D3180[LEVEL_SECTOR_X] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_SECTOR_X] = Play_CheckMedalStatus(150) + 1;
}
- gNextPlanetPath = 2;
+ gMissionStatus = MISSION_WARP;
}
}
} else {
@@ -1290,7 +1290,7 @@ void Cutscene_CoComplete2(Player* player) {
player->timer_1F8 = 0;
gFadeoutType = 4;
Audio_FadeOutAll(10);
- D_play_800D3180[gCurrentLevel] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[gCurrentLevel] = Play_CheckMedalStatus(150) + 1;
}
break;
}
@@ -1422,7 +1422,7 @@ void Cutscene_LevelComplete(Player* player) {
if (gCurrentLevel == LEVEL_TITANIA) {
Titania_LevelComplete(player);
- } else if (gNextPlanetPath != 0) {
+ } else if (gMissionStatus != MISSION_COMPLETE) {
Macbeth_LevelComplete2(player);
} else {
Macbeth_LevelComplete1(player);
@@ -1610,7 +1610,7 @@ void Cutscene_DropVsItem(Player* player, ObjectId itemId, Item* item) {
void Cutscene_KillPlayer(Player* player) {
s32 teamId;
- func_8001CA24(player->num);
+ Audio_StopPlayerNoise(player->num);
Audio_KillSfxBySourceAndId(player->sfxSource, 0x0900C010);
func_play_800A5FA0(player->sfxSource, 0x0903F004, player->num);
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
diff --git a/src/engine/fox_edisplay.c b/src/engine/fox_edisplay.c
index c6218e05..2815176a 100644
--- a/src/engine/fox_edisplay.c
+++ b/src/engine/fox_edisplay.c
@@ -1026,11 +1026,11 @@ void Actor_DrawOnRails(Actor* this) {
Matrix_MultVec3f(gGfxMatrix, &sp34, &gTeamArrowsViewPos[this->aiType]);
}
}
- if ((this->lockOnTimers[0] != 0) && (gReflectY > 0)) {
+ if ((this->lockOnTimers[TEAM_ID_FOX] != 0) && (gReflectY > 0)) {
sp34.y += this->info.unk_1C;
Matrix_MultVec3f(gGfxMatrix, &sp34, &D_display_80161578[0]);
if (D_display_80161578[0].z > -200.0f) {
- this->lockOnTimers[0] = 0;
+ this->lockOnTimers[TEAM_ID_FOX] = 0;
}
}
}
diff --git a/src/engine/fox_enmy.c b/src/engine/fox_enmy.c
index a277bb15..26bcc7eb 100644
--- a/src/engine/fox_enmy.c
+++ b/src/engine/fox_enmy.c
@@ -2286,8 +2286,8 @@ void ItemMeteoWarp_Update(ItemMeteoWarp* this) {
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_ENTER_WARP_ZONE;
gPlayer[0].unk_1D0 = 0;
AUDIO_PLAY_SFX(0x1900602A, gDefaultSfxSource, 0);
- gNextPlanetPath = 2;
- D_play_800D3180[gCurrentLevel] = 1;
+ gMissionStatus = MISSION_WARP;
+ gLeveLClearStatus[gCurrentLevel] = 1;
}
}
}
@@ -2642,9 +2642,9 @@ void Actor_Update(Actor* this) {
gChargeTimers[i] = 0;
}
}
- } else if (this->lockOnTimers[0] != 0) {
+ } else if (this->lockOnTimers[TEAM_ID_FOX] != 0) {
if (!(gControllerHold[gMainController].button & A_BUTTON)) {
- this->lockOnTimers[0]--;
+ this->lockOnTimers[TEAM_ID_FOX]--;
}
gChargeTimers[0] = 0;
}
diff --git a/src/engine/fox_enmy2.c b/src/engine/fox_enmy2.c
index c303222f..9980eaa5 100644
--- a/src/engine/fox_enmy2.c
+++ b/src/engine/fox_enmy2.c
@@ -307,11 +307,11 @@ void Actor194_8006B46C(Actor194* this, f32 xTrans, f32 yTrans, f32 zTrans, f32 x
if (arg7 != 1) {
RCP_SetupDL_29(gFogRed, gFogGreen, gFogBlue, gFogAlpha, gFogNear, gFogFar);
- if ((arg7 == 0) && (this->lockOnTimers[0] != 0)) {
+ if ((arg7 == 0) && (this->lockOnTimers[TEAM_ID_FOX] != 0)) {
sp34.y += this->info.unk_1C;
Matrix_MultVec3f(gGfxMatrix, &sp34, D_display_80161578);
if (D_display_80161578->z > -500.0f) {
- this->lockOnTimers[0] = 0;
+ this->lockOnTimers[TEAM_ID_FOX] = 0;
}
}
} else {
@@ -1265,7 +1265,7 @@ void ActorEvent_ProcessScript(ActorEvent* this) {
break;
case EV_OPC(EVOP_SET_REVERB):
- Audio_SetBaseSfxReverb(actorScript[this->aiIndex + 1]);
+ Audio_SetEnvSfxReverb(actorScript[this->aiIndex + 1]);
this->aiIndex += 2;
ActorEvent_ProcessScript(this);
break;
@@ -2626,7 +2626,7 @@ void ActorEvent_ProcessTriggers(ActorEvent* this) {
case EVC_PRESS_CRIGHT:
if (gControllerPress[gMainController].button & R_CBUTTONS) {
- func_8001AF40(0);
+ Audio_SetUnkVoiceParam(0);
gCallVoiceParam = 0;
gCallTimer = 0;
ActorEvent_TriggerBranch(this);
@@ -2640,79 +2640,79 @@ void ActorEvent_ProcessTriggers(ActorEvent* this) {
break;
case EVC_ME_CLEAR:
- if (D_play_800D3180[LEVEL_METEO] != 0) {
+ if (gLeveLClearStatus[LEVEL_METEO] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_FO_CLEAR:
- if (D_play_800D3180[LEVEL_FORTUNA] != 0) {
+ if (gLeveLClearStatus[LEVEL_FORTUNA] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_SX_CLEAR:
- if (D_play_800D3180[LEVEL_SECTOR_X] != 0) {
+ if (gLeveLClearStatus[LEVEL_SECTOR_X] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_TI_CLEAR:
- if (D_play_800D3180[LEVEL_TITANIA] != 0) {
+ if (gLeveLClearStatus[LEVEL_TITANIA] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_BO_CLEAR:
- if (D_play_800D3180[LEVEL_BOLSE] != 0) {
+ if (gLeveLClearStatus[LEVEL_BOLSE] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_SY_CLEAR:
- if (D_play_800D3180[LEVEL_SECTOR_Y] != 0) {
+ if (gLeveLClearStatus[LEVEL_SECTOR_Y] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_KA_CLEAR:
- if (D_play_800D3180[LEVEL_KATINA] != 0) {
+ if (gLeveLClearStatus[LEVEL_KATINA] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_SO_CLEAR:
- if (D_play_800D3180[LEVEL_SOLAR] != 0) {
+ if (gLeveLClearStatus[LEVEL_SOLAR] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_MA_CLEAR:
- if (D_play_800D3180[LEVEL_MACBETH] != 0) {
+ if (gLeveLClearStatus[LEVEL_MACBETH] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_AQ_CLEAR:
- if (D_play_800D3180[LEVEL_AQUAS] != 0) {
+ if (gLeveLClearStatus[LEVEL_AQUAS] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_ZO_CLEAR:
- if (D_play_800D3180[LEVEL_ZONESS] != 0) {
+ if (gLeveLClearStatus[LEVEL_ZONESS] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_SZ_CLEAR:
- if (D_play_800D3180[LEVEL_SECTOR_Z] != 0) {
+ if (gLeveLClearStatus[LEVEL_SECTOR_Z] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
case EVC_A6_CLEAR:
- if (D_play_800D3180[LEVEL_AREA_6] != 0) {
+ if (gLeveLClearStatus[LEVEL_AREA_6] != 0) {
ActorEvent_TriggerBranch(this);
}
break;
diff --git a/src/engine/fox_game.c b/src/engine/fox_game.c
index 389eb086..20167e46 100644
--- a/src/engine/fox_game.c
+++ b/src/engine/fox_game.c
@@ -115,7 +115,7 @@ void Game_SetGameState(void) {
gBlurAlpha = 255;
gDrawMode = DRAW_NONE;
Audio_ClearVoice();
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
}
bool Game_ChangeScene(void) {
@@ -413,7 +413,7 @@ void Game_Update(void) {
D_ctx_801778A4 = 3;
gBlurAlpha = 255;
for (i = 0; i < 30; i++) {
- D_play_800D3180[i] = 0;
+ gLeveLClearStatus[i] = 0;
}
gExpertMode = false;
gOptionSoundMode = gSaveFile.save.data.soundMode;
diff --git a/src/engine/fox_hud.c b/src/engine/fox_hud.c
index 03affb02..96eb29fc 100644
--- a/src/engine/fox_hud.c
+++ b/src/engine/fox_hud.c
@@ -759,7 +759,7 @@ void func_hud_80086DCC(void) {
gLevelClearScreenTimer--;
}
- boolTemp = gNextPlanetPath;
+ boolTemp = gMissionStatus;
if ((gCurrentLevel == LEVEL_TITANIA) || (gCurrentLevel == LEVEL_BOLSE) || (gCurrentLevel == LEVEL_VENOM_1) ||
(gCurrentLevel == LEVEL_VENOM_2) || (gCurrentLevel == LEVEL_AREA_6) || (gCurrentLevel == LEVEL_AQUAS) ||
@@ -1258,14 +1258,14 @@ void func_hud_800884E4(void) {
s32 mask;
s32 i;
- D_ctx_80177B70[gMissionNumber] = gHitCount;
+ gMissionHitCount[gMissionNumber] = gHitCount;
mask = 0x00FF0000;
for (i = 0; i < 3; i++) {
if (gTeamShields[3 - i] <= 0) {
- D_ctx_80177B50[gMissionNumber] ^= mask;
+ gMissionTeamStatus[gMissionNumber] ^= mask;
} else {
- D_ctx_80177B50[gMissionNumber] |= mask;
+ gMissionTeamStatus[gMissionNumber] |= mask;
}
mask >>= 8;
}
@@ -1289,8 +1289,8 @@ void func_hud_80088564(void) {
gSaveFile.save.data.planet[planetId].normalClear = 1;
}
- if (D_play_800D3180[gCurrentLevel] == 2) {
- D_ctx_80177BB0[gMissionNumber] = 1;
+ if (gLeveLClearStatus[gCurrentLevel] == 2) {
+ gMissionMedal[gMissionNumber] = 1;
if (gExpertMode) {
gSaveFile.save.data.planet[planetId].expertMedal = 1;
@@ -1456,7 +1456,7 @@ void func_hud_80088970(void) {
break;
}
- func_8001CA24(gPlayer[0].num);
+ Audio_StopPlayerNoise(gPlayer[0].num);
Audio_ClearVoice();
gRadioState = 0;
@@ -1496,7 +1496,7 @@ void func_hud_80088970(void) {
if (gFillScreenAlpha == 0) {
if (gLevelType == LEVELTYPE_PLANET) {
if (D_80161838[1] == 0) {
- func_8001D520();
+ Audio_PlayDeathSequence();
}
if (D_80161838[1] == 10) {
gLifeCount[gPlayerNum]--;
@@ -1509,7 +1509,7 @@ void func_hud_80088970(void) {
}
} else {
if (D_80161838[1] == 0) {
- func_8001D520();
+ Audio_PlayDeathSequence();
}
if (D_80161838[1] == 6) {
gLifeCount[gPlayerNum]--;
@@ -1564,7 +1564,7 @@ void func_hud_80088970(void) {
gSavedHitCount = D_ctx_80177CA0 = 0;
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_NEXT;
gScreenFlashTimer = 0;
gPlayer[0].timer_1F8 = 0;
@@ -1576,7 +1576,7 @@ void func_hud_80088970(void) {
break;
case 10:
- func_8001D638(0);
+ Audio_PlayPauseSfx(0);
gDrawMode = DRAW_PLAY;
gPlayState = PLAY_UPDATE;
break;
@@ -2252,7 +2252,7 @@ void func_hud_8008B044(void) {
AUDIO_PLAY_SFX(0x49002018, gDefaultSfxSource, 4);
if (gCallVoiceParam != 0) {
- func_8001AF40(1);
+ Audio_SetUnkVoiceParam(1);
}
D_80161794 = 0;
D_80161798 = 1;
@@ -5861,7 +5861,7 @@ void HUD_AquasComplete(Player* player) {
gFillScreenAlphaStep = 16;
if (gFillScreenAlpha == 255) {
- D_play_800D3180[LEVEL_AQUAS] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_AQUAS] = Play_CheckMedalStatus(150) + 1;
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
player->timer_1F8 = 0;
Audio_FadeOutAll(10);
diff --git a/src/engine/fox_play.c b/src/engine/fox_play.c
index 8f424900..c81521e5 100644
--- a/src/engine/fox_play.c
+++ b/src/engine/fox_play.c
@@ -497,7 +497,7 @@ void func_play_800A594C(void) {
}
if (D_ctx_8017782C == 0) {
if (gCurrentLevel == LEVEL_SOLAR) {
- func_8001D1C8(255, 1);
+ Audio_SetHeatAlarmParams(255, 1);
AUDIO_PLAY_SFX(0x4100C023, gDefaultSfxSource, 4);
Audio_KillSfxBySourceAndId(gPlayer[0].sfxSource, 0x3140807E);
}
@@ -2393,7 +2393,7 @@ void func_play_800AB334(void) {
break;
case LEVEL_VENOM_ANDROSS:
AUDIO_SET_SPEC(SFXCHAN_0, AUDIOSPEC_15);
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
D_ctx_8017796C = -1;
break;
}
@@ -2562,7 +2562,7 @@ void Play_Init(void) {
Audio_KillSfxById(0x49000014);
Memory_FreeAll();
D_ctx_80177C78 = D_ctx_80177C8C = gShowBossHealth = gStarWolfMsgTimer = gAllRangeWingRepairTimer =
- gAllRangeWingRepairSent = 0;
+ gAllRangeSuppliesSent = 0;
D_display_800CA220 = 0;
gShowLevelClearStatusScreen = 0;
if (gCurrentLevel != LEVEL_VERSUS) {
@@ -2589,10 +2589,10 @@ void Play_Init(void) {
func_play_800A594C();
gDropHitCountItem = D_ctx_8017796C = gStartAndrossFightTimer = gSoShieldsEmpty = gAllRangeEventTimer =
gAllRangeFrameCount = gBossActive = gGameFrameCount = gCameraShake = D_ctx_801782FC = gBossFrameCount =
- gCallTimer = gAllRangeSupplyTimer = gNextPlanetPath = 0;
+ gCallTimer = gAllRangeSupplyTimer = gMissionStatus = 0;
if (gCurrentLevel == LEVEL_SECTOR_X) {
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
}
D_ctx_80177CC0 = -25000.0f;
D_ctx_80177950 = 1.0f;
@@ -2893,8 +2893,8 @@ void func_play_800ACC7C(Player* player) {
}
gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].unk_48 = 30.0f;
gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].unk_60 = 0;
- func_8001CB80(player->num, 1);
- func_8001CCDC(player->num, gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxSource);
+ Audio_InitBombSfx(player->num, 1);
+ Audio_PlayBombFlightSfx(player->num, gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxSource);
}
}
@@ -3074,8 +3074,8 @@ bool func_play_800AD1F4(Player* player) {
}
gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].unk_48 = 30.0f;
gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].unk_60 = 0;
- func_8001CB80(player->num, 1);
- func_8001CCDC(player->num, gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxSource);
+ Audio_InitBombSfx(player->num, 1);
+ Audio_PlayBombFlightSfx(player->num, gPlayerShots[ARRAY_COUNT(gPlayerShots) - 1].sfxSource);
return true;
}
}
@@ -4283,7 +4283,7 @@ void func_play_800B0F50(Player* playerx) {
player->unk_018 = 1.0f;
}
if ((D_ctx_8017782C != 0) && (D_ctx_80177CA0 == 0)) {
- D_play_800D3180[gCurrentLevel] = 0;
+ gLeveLClearStatus[gCurrentLevel] = 0;
for (j = 0; j < 10; j++) {
D_ctx_80177A10[j] = 0;
D_ctx_80177A48[j] = 0.0f;
@@ -5107,7 +5107,7 @@ void func_play_800B41EC(Player* player) {
if (gCurrentLevel == LEVEL_SOLAR) {
Audio_KillSfxById(0x4100C023);
}
- func_8001CA24(player->num);
+ Audio_StopPlayerNoise(player->num);
func_play_800A5FA0(player->sfxSource, 0x0900C010, player->num);
player->shields = 0;
player->unk_1D0 = 0;
@@ -5521,7 +5521,7 @@ void Player_Update(Player* player) {
gPlayerGlareAlphas[0] = 0;
gShowAllRangeCountdown = gRadioState = 0;
Audio_ClearVoice();
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
D_ctx_80161A94[0] = gGoldRingCount[0];
if (gCurrentLevel == LEVEL_VENOM_ANDROSS) {
D_ctx_80177C94 = gGoldRingCount[0];
@@ -6205,8 +6205,8 @@ void Play_UpdateLevel(void) {
gPlayer[0].unk_1D0 = 0;
gSceneSetup = 1;
AUDIO_PLAY_SFX(0x1900602A, gDefaultSfxSource, 0);
- gNextPlanetPath = 2;
- D_play_800D3180[gCurrentLevel] = 1;
+ gMissionStatus = MISSION_WARP;
+ gLeveLClearStatus[gCurrentLevel] = 1;
}
break;
case LEVEL_CORNERIA:
@@ -6268,7 +6268,7 @@ void Play_UpdateLevel(void) {
}
}
shields = MIN(gPlayer[0].shields, 255);
- func_8001D1C8(shields, heightParam);
+ Audio_SetHeatAlarmParams(shields, heightParam);
if (((gGameFrameCount % 8) == 0) && (gPlayer[0].state_1C8 != PLAYERSTATE_1C8_LEVEL_COMPLETE)) {
Solar_8019E8B8(RAND_FLOAT_CENTERED(6000.0f), -80.0f,
gPlayer[0].unk_138 + (RAND_FLOAT(2000.0f) + -6000.0f),
@@ -6448,11 +6448,11 @@ void Play_Main(void) {
(gPlayer[0].state_1C8 == PLAYERSTATE_1C8_LEVEL_INTRO) &&
gSaveFile.save.data.planet[D_800D2F6C[gCurrentLevel]].normalClear) {
Audio_ClearVoice();
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
Play_ClearObjectData();
for (i = 0; i < gCamCount; i++) {
Audio_KillSfxBySource(gPlayer[i].sfxSource);
- func_8001CA24(i);
+ Audio_StopPlayerNoise(i);
}
gPlayState = PLAY_INIT;
gDrawMode = gVersusMode = 0;
@@ -6465,7 +6465,7 @@ void Play_Main(void) {
func_versus_800C1E9C();
}
if ((gControllerPress[gMainController].button & START_BUTTON) && gPauseEnabled) {
- func_8001D638(1);
+ Audio_PlayPauseSfx(1);
gPlayState = PLAY_PAUSE;
D_ctx_80177868 = 4;
D_ctx_80178484 = 100000;
@@ -6494,7 +6494,7 @@ void Play_Main(void) {
}
if ((D_ctx_80177868 == 4) && (gControllerPress[gMainController].button & START_BUTTON) &&
(gPauseEnabled != 0)) {
- func_8001D638(0);
+ Audio_PlayPauseSfx(0);
gPlayState = PLAY_UPDATE;
gDrawMode = DRAW_PLAY;
}
diff --git a/src/engine/fox_save.c b/src/engine/fox_save.c
index 086e2d12..c6a88897 100644
--- a/src/engine/fox_save.c
+++ b/src/engine/fox_save.c
@@ -44,8 +44,8 @@ s32 Save_Write(void) {
gSaveFile.save.checksum = Save_Checksum(&gSaveFile.save);
gSaveFile.backup = gSaveFile.save;
gSaveIOBuffer = gSaveFile;
- osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_WRITE_SAVE, OS_MESG_PRI_NORMAL);
- osRecvMesg(&gSaveMsgQueue, &sp1C, OS_MESG_BLOCK);
+ osSendMesg(&gSerialThreadMesgQueue, (OSMesg) SI_WRITE_SAVE, OS_MESG_NOBLOCK);
+ MQ_WAIT_FOR_MESG(&gSaveMesgQueue, &sp1C);
if (sp1C != (OSMesg) SI_SAVE_SUCCESS) {
return -1;
}
@@ -56,8 +56,8 @@ s32 Save_Read(void) {
OSMesg sp24;
s32 i;
- osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_SAVE, OS_MESG_PRI_NORMAL);
- osRecvMesg(&gSaveMsgQueue, &sp24, OS_MESG_BLOCK);
+ osSendMesg(&gSerialThreadMesgQueue, (OSMesg) SI_READ_SAVE, OS_MESG_NOBLOCK);
+ MQ_WAIT_FOR_MESG(&gSaveMesgQueue, &sp24);
if ((s32) sp24 != SI_SAVE_SUCCESS) {
return -1;
}
diff --git a/src/engine/fox_versus.c b/src/engine/fox_versus.c
index 6340a806..1ed295c9 100644
--- a/src/engine/fox_versus.c
+++ b/src/engine/fox_versus.c
@@ -56,7 +56,7 @@ void func_versus_800BC760(void) {
for (i = 0; i < gCamCount; i++) {
Audio_KillSfxBySource(gPlayer[i].sfxSource);
- func_8001CA24(i);
+ Audio_StopPlayerNoise(i);
}
gGameState = GSTATE_INIT;
diff --git a/src/libultra/io/pfsgetstatus.c b/src/libultra/io/pfsgetstatus.c
index 8c8ab37d..a07f1874 100644
--- a/src/libultra/io/pfsgetstatus.c
+++ b/src/libultra/io/pfsgetstatus.c
@@ -8,11 +8,11 @@ s32 __osPfsGetStatus(OSMesgQueue* queue, int channel) {
u8 pattern;
OSContStatus status[4];
- __osPfsRequestData(0);
- ret = __osSiRawStartDma(1, &__osPfsPifRam);
- osRecvMesg(queue, &dummy, 1);
- ret = __osSiRawStartDma(0, &__osPfsPifRam);
- osRecvMesg(queue, &dummy, 1);
+ __osPfsRequestData(CONT_CMD_REQUEST_STATUS);
+ ret = __osSiRawStartDma(OS_WRITE, &__osPfsPifRam);
+ osRecvMesg(queue, &dummy, OS_MESG_BLOCK);
+ ret = __osSiRawStartDma(OS_READ, &__osPfsPifRam);
+ osRecvMesg(queue, &dummy, OS_MESG_BLOCK);
__osPfsGetInitData(&pattern, status);
if (status[channel].status & CONT_CARD_ON && status[channel].status & CONT_CARD_PULL) {
diff --git a/src/mods/levelselect.c b/src/mods/levelselect.c
index d9c8a0ad..4a51f980 100644
--- a/src/mods/levelselect.c
+++ b/src/mods/levelselect.c
@@ -5,6 +5,8 @@ extern PlanetId sPlanetList[15];
extern PlanetId sCurrentPlanetId;
extern s32 D_menu_801B8280;
extern s32 D_menu_801CD968;
+extern s32 D_menu_801CD944;
+extern s32 D_menu_801CD948;
void Map_801A61B4(LevelId level);
void Map_801A6368(void);
@@ -48,7 +50,8 @@ void Map_LevelSelect(void) {
}
// Bypass briefing
- if (gControllerPress[0].button & A_BUTTON) {
+ // if (gControllerPress[0].button & A_BUTTON) {
+ if ((D_menu_801CD944 == 2) && (D_menu_801CD948 > 0)) {
Map_801A61B4(gCurrentLevel);
D_menu_801B8280 = 0;
D_menu_801CD968 = 0;
diff --git a/src/overlays/ovl_ending/fox_end2.c b/src/overlays/ovl_ending/fox_end2.c
index 567ab4e1..a97b4119 100644
--- a/src/overlays/ovl_ending/fox_end2.c
+++ b/src/overlays/ovl_ending/fox_end2.c
@@ -241,9 +241,9 @@ bool Ending_8018DCB4(void) {
s32 unk40[10];
for (i = 0; i < gMissionNumber + 1; i++) {
- temp2 += ((D_ctx_80177B50[i] & 0x00FF0000) >> 16) & 1;
- temp2 += ((D_ctx_80177B50[i] & 0x0000FF00) >> 8) & 1;
- temp2 += (D_ctx_80177B50[i] & 0x000000FF) & 1;
+ temp2 += ((gMissionTeamStatus[i] & 0x00FF0000) >> 16) & 1;
+ temp2 += ((gMissionTeamStatus[i] & 0x0000FF00) >> 8) & 1;
+ temp2 += (gMissionTeamStatus[i] & 0x000000FF) & 1;
}
for (i = 0; i < 10; i += 1) {
@@ -502,7 +502,7 @@ void Ending_8018F2A8(u32 arg0, AssetInfo* asset) {
void Ending_8018F64C(u32 arg0, AssetInfo* asset) {
f32 temp;
- if (D_play_800D3180[8] == 0) {
+ if (gLeveLClearStatus[LEVEL_ZONESS] == 0) {
return;
}
@@ -569,7 +569,7 @@ void Ending_8018F64C(u32 arg0, AssetInfo* asset) {
void Ending_8018FC60(u32 arg0, AssetInfo* asset) {
f32 temp;
- if (D_play_800D3180[16] == 0) {
+ if (gLeveLClearStatus[LEVEL_KATINA] == 0) {
return;
}
diff --git a/src/overlays/ovl_i1/fox_co.c b/src/overlays/ovl_i1/fox_co.c
index 5ff17edc..e653f380 100644
--- a/src/overlays/ovl_i1/fox_co.c
+++ b/src/overlays/ovl_i1/fox_co.c
@@ -1140,7 +1140,7 @@ void Corneria_8018ACE0(Actor* actor) {
Object_SetInfo(&actor->info, actor->obj.id);
actor->state = 100;
actor->timer_0BC = 10;
- actor->lockOnTimers[0] = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = 0;
actor->vel.x = actor->vel.y = actor->vel.z = 0.0f;
}
}
@@ -1951,7 +1951,7 @@ void Corneria_8018C19C(Boss* boss) {
func_boss_80042EC0(boss);
boss->fwork[17] = 10.0f;
boss->vel.y *= 1.5f;
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_ACTIVE) ||
(gPlayer[0].state_1C8 == PLAYERSTATE_1C8_U_TURN)) {
func_boss_8004319C(gPlayer, boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z);
@@ -3168,7 +3168,7 @@ void Corneria_LevelComplete1(Player* player) {
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
player->timer_1F8 = 0;
gFadeoutType = 4;
- D_play_800D3180[gCurrentLevel] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[gCurrentLevel] = Play_CheckMedalStatus(150) + 1;
}
}
break;
diff --git a/src/overlays/ovl_i1/fox_tr360.c b/src/overlays/ovl_i1/fox_tr360.c
index 0387d8e4..8dcedd49 100644
--- a/src/overlays/ovl_i1/fox_tr360.c
+++ b/src/overlays/ovl_i1/fox_tr360.c
@@ -236,7 +236,7 @@ void Training_8019949C(void) {
}
if ((gCallTimer != 0) && (gControllerPress[gMainController].button & R_CBUTTONS)) {
- func_8001AF40(0);
+ Audio_SetUnkVoiceParam(0);
gCallVoiceParam = 0;
gCallTimer = 0;
// This is ROB 64. Keep up the good work.
diff --git a/src/overlays/ovl_i1/fox_ve1.c b/src/overlays/ovl_i1/fox_ve1.c
index f98852e5..c3edfb90 100644
--- a/src/overlays/ovl_i1/fox_ve1.c
+++ b/src/overlays/ovl_i1/fox_ve1.c
@@ -2350,7 +2350,7 @@ void Venom1_80198414(void) {
D_ctx_80177CB4 = gPlayer[0].wings.leftState;
D_ctx_80177CBC = gRightWingHealth[0];
D_ctx_80177CC4 = gLeftWingHealth[0];
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(gPlayer[0].sfxSource);
}
diff --git a/src/overlays/ovl_i2/fox_me.c b/src/overlays/ovl_i2/fox_me.c
index baa43a47..2479cd07 100644
--- a/src/overlays/ovl_i2/fox_me.c
+++ b/src/overlays/ovl_i2/fox_me.c
@@ -395,7 +395,7 @@ void Meteo_80188344(Boss* boss) {
boss->timer_054 = 5;
boss->swork[0] += 32;
- func_8001D034(boss->sfxSource, 0x3103605B, boss->unk_04A);
+ Audio_SetTransposeAndPlaySfx(boss->sfxSource, 0x3103605B, boss->unk_04A);
boss->unk_04A++;
if (boss->unk_04A >= 8) {
@@ -2330,7 +2330,7 @@ void Meteo_LevelComplete(Player* player) {
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
player->timer_1F8 = 0;
gFadeoutType = 4;
- D_play_800D3180[LEVEL_METEO] = Play_CheckMedalStatus(0xC8) + 1;
+ gLeveLClearStatus[LEVEL_METEO] = Play_CheckMedalStatus(200) + 1;
}
}
} else {
diff --git a/src/overlays/ovl_i2/fox_sx.c b/src/overlays/ovl_i2/fox_sx.c
index 8936b38b..55e90771 100644
--- a/src/overlays/ovl_i2/fox_sx.c
+++ b/src/overlays/ovl_i2/fox_sx.c
@@ -1076,7 +1076,7 @@ void SectorX_80190078(Boss* boss) {
gPlayer[0].unk_234 = 1;
}
Object_Kill(&boss->obj, boss->sfxSource);
- gNextPlanetPath = boss->swork[6];
+ gMissionStatus = boss->swork[6];
}
break;
@@ -1759,7 +1759,7 @@ void SectorX_LevelComplete(Player* player) {
gFadeoutType = 4;
player->timer_1F8 = 0;
Play_ClearObjectData();
- D_play_800D3180[LEVEL_SECTOR_X] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_SECTOR_X] = Play_CheckMedalStatus(150) + 1;
}
}
break;
diff --git a/src/overlays/ovl_i3/fox_a6.c b/src/overlays/ovl_i3/fox_a6.c
index 80b7722e..34a25827 100644
--- a/src/overlays/ovl_i3/fox_a6.c
+++ b/src/overlays/ovl_i3/fox_a6.c
@@ -2729,7 +2729,7 @@ void Area6_LevelComplete(Player* player) {
gFillScreenAlphaTarget = 255;
gFillScreenAlphaStep = 8;
if (gFillScreenAlpha == 255) {
- D_play_800D3180[LEVEL_AREA_6] = Play_CheckMedalStatus(300) + 1;
+ gLeveLClearStatus[LEVEL_AREA_6] = Play_CheckMedalStatus(300) + 1;
for (i = TEAM_ID_FALCO; i < TEAM_ID_MAX; i++) {
gPrevPlanetTeamShields[i] = gTeamShields[i];
gPrevPlanetSavedTeamShields[i] = gSavedTeamShields[i];
@@ -2741,7 +2741,7 @@ void Area6_LevelComplete(Player* player) {
}
}
D_ctx_80161A94[0] = gGoldRingCount[0];
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(player->sfxSource);
Play_ClearObjectData();
gNextGameState = GSTATE_PLAY;
diff --git a/src/overlays/ovl_i3/fox_so.c b/src/overlays/ovl_i3/fox_so.c
index 506fa6a1..722c15b7 100644
--- a/src/overlays/ovl_i3/fox_so.c
+++ b/src/overlays/ovl_i3/fox_so.c
@@ -1128,7 +1128,7 @@ void Solar_LevelStart(Player* player) {
player->cam.at.z = player->unk_138;
D_ctx_80177950 = 1.0f;
- func_8001D1C8(255, 3);
+ Audio_SetHeatAlarmParams(255, 3);
AUDIO_PLAY_SFX(0x4100C023, gDefaultSfxSource, 4);
gLoadLevelObjects = 1;
gFillScreenAlphaTarget = 0;
@@ -2876,7 +2876,7 @@ void Solar_LevelComplete(Player* player) {
if (gCsFrameCount == 400) {
player->unk_1D0++;
Play_ClearObjectData();
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(player->sfxSource);
gFillScreenAlpha = 250;
player->timer_1F8 = 20;
@@ -3016,12 +3016,12 @@ void Solar_LevelComplete(Player* player) {
gFillScreenRed = gFillScreenGreen = gFillScreenBlue = 0;
gFillScreenAlphaStep = 8;
if (gFillScreenAlpha == 255) {
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_FadeOutAll(10);
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
player->timer_1F8 = 0;
gFadeoutType = 4;
- D_play_800D3180[LEVEL_SOLAR] = Play_CheckMedalStatus(100) + 1;
+ gLeveLClearStatus[LEVEL_SOLAR] = Play_CheckMedalStatus(100) + 1;
}
}
break;
diff --git a/src/overlays/ovl_i3/fox_zo.c b/src/overlays/ovl_i3/fox_zo.c
index 41b76607..7513903b 100644
--- a/src/overlays/ovl_i3/fox_zo.c
+++ b/src/overlays/ovl_i3/fox_zo.c
@@ -1007,7 +1007,7 @@ void Zoness_80191680(Actor* actor) {
sp54 = Math_RadToDeg(Math_Atan2F(sp64, sp5C));
otherActor = &gActors[actor->iwork[0]];
if ((actor->state != 0) || (otherActor->obj.status == OBJ_FREE)) {
- actor->lockOnTimers[0] = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = 0;
actor->info.unk_1C = 0.0f;
sp54 += 180.0f;
if (sp54 > 360.0f) {
@@ -4582,7 +4582,7 @@ void Zoness_LevelComplete(Player* player) {
if (gCsFrameCount == 160) {
player->unk_1D0++;
Play_ClearObjectData();
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(player->sfxSource);
gFillScreenAlpha = 250;
player->timer_1F8 = 20;
@@ -4672,12 +4672,12 @@ void Zoness_LevelComplete(Player* player) {
gFillScreenRed = gFillScreenGreen = gFillScreenBlue = 0;
gFillScreenAlphaStep = 8;
if (gFillScreenAlpha == 255) {
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_FadeOutAll(10);
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
player->timer_1F8 = 0;
gFadeoutType = 4;
- D_play_800D3180[LEVEL_ZONESS] = Play_CheckMedalStatus(250) + 1;
+ gLeveLClearStatus[LEVEL_ZONESS] = Play_CheckMedalStatus(250) + 1;
}
}
break;
@@ -4686,7 +4686,7 @@ void Zoness_LevelComplete(Player* player) {
switch (gCsFrameCount) {
case 320:
if (!gMissedZoSearchlight) {
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
}
gLevelClearScreenTimer = 100;
break;
diff --git a/src/overlays/ovl_i4/fox_bo.c b/src/overlays/ovl_i4/fox_bo.c
index dcf0f275..984b032e 100644
--- a/src/overlays/ovl_i4/fox_bo.c
+++ b/src/overlays/ovl_i4/fox_bo.c
@@ -88,39 +88,39 @@ s32 D_i4_801A0530;
f32 D_i4_8019EEC0 = 0.0f;
-void Bolse_8018BD60(Actor* actor) {
+void Bolse_8018BD60(Actor* this) {
s32 i;
- Actor* actorPtr;
+ Actor* actor;
f32 D_i4_8019EEC4[4] = { 8000.0f, -8000.0f, 8000.0f, -8000.0f };
f32 D_i4_8019EED4[4] = { 8000.0f, 8000.0f, -8000.0f, -8000.0f };
if (gAllRangeCheckpoint == 0) {
- actor->unk_04E++;
- if (actor->unk_04E >= 4) {
- actor->unk_04E = 0;
+ this->unk_04E++;
+ if (this->unk_04E >= 4) {
+ this->unk_04E = 0;
}
- for (actorPtr = gActors + 10, i = 10; i < 16; i++, actorPtr++) {
- if (actorPtr->obj.status == OBJ_FREE) {
- Actor_Initialize(actorPtr);
- actorPtr->obj.status = OBJ_ACTIVE;
- actorPtr->obj.id = OBJ_ACTOR_ALLRANGE;
- actorPtr->obj.pos.x = D_i4_8019EEC4[actor->unk_04E];
- actorPtr->obj.pos.y = 1000.0f;
- actorPtr->obj.pos.z = D_i4_8019EED4[actor->unk_04E];
- actorPtr->state = 1;
- actorPtr->aiIndex = -1;
- actorPtr->health = 24;
- actorPtr->iwork[11] = 1;
- actorPtr->itemDrop = DROP_SILVER_RING_50p;
- actorPtr->aiType = i;
- Object_SetInfo(&actorPtr->info, actorPtr->obj.id);
- AUDIO_PLAY_SFX(0x3100000C, actorPtr->sfxSource, 4);
+ for (actor = &gActors[10], i = 10; i < 16; i++, actor++) {
+ if (actor->obj.status == OBJ_FREE) {
+ Actor_Initialize(actor);
+ actor->obj.status = OBJ_ACTIVE;
+ actor->obj.id = OBJ_ACTOR_ALLRANGE;
+ actor->obj.pos.x = D_i4_8019EEC4[this->unk_04E];
+ actor->obj.pos.y = 1000.0f;
+ actor->obj.pos.z = D_i4_8019EED4[this->unk_04E];
+ actor->state = 1;
+ actor->aiIndex = -1;
+ actor->health = 24;
+ actor->iwork[11] = 1;
+ actor->itemDrop = DROP_SILVER_RING_50p;
+ actor->aiType = i;
+ Object_SetInfo(&actor->info, actor->obj.id);
+ AUDIO_PLAY_SFX(0x3100000C, actor->sfxSource, 4);
break;
}
}
}
- func_360_8002F69C(actor);
- func_360_8002FC00(actor);
+ func_360_8002F69C(this);
+ func_360_8002FC00(this);
}
f32 D_i4_8019EEE4[] = { -200.0f, -100.0f, -0.0f, 100.0f, 200.0f };
@@ -431,7 +431,7 @@ void Bolse_UpdateEventHandler(Actor* this) {
break;
case 390:
- if (D_play_800D3180[LEVEL_FORTUNA] == 0) {
+ if (gLeveLClearStatus[LEVEL_FORTUNA] == 0) {
Radio_PlayMessage(gMsg_ID_9285, RCID_FOX);
} else {
Radio_PlayMessage(gMsg_ID_11241, RCID_FOX);
@@ -628,7 +628,7 @@ bool Bolse_8018D278(Actor* actor) {
Object_Kill(&actor->obj, actor->sfxSource);
actor->info.bonus = 0;
- actor->lockOnTimers[0] = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = 0;
actor->info.unk_1C = 0.0f;
return true;
@@ -743,7 +743,7 @@ void Bolse_8018D7F0(Actor* actor) {
Bolse_8018D4F0(actor);
Bolse_8018D584(actor);
} else {
- actor->lockOnTimers[0] = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = 0;
actor->info.bonus = 0;
actor->info.unk_1C = 0.0f;
}
@@ -1407,7 +1407,7 @@ void Bolse_LevelComplete(Player* player) {
if (player->timer_1F8 == 0) {
player->unk_1D0 = 5;
player->timer_1F8 = 1000;
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(player->sfxSource);
Play_ClearObjectData();
@@ -1629,9 +1629,9 @@ void Bolse_LevelComplete(Player* player) {
D_ctx_80161A94[0] = gGoldRingCount[0];
gNextGameState = GSTATE_PLAY;
gNextLevel = LEVEL_VENOM_1;
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(player->sfxSource);
- D_play_800D3180[LEVEL_BOLSE] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_BOLSE] = Play_CheckMedalStatus(150) + 1;
for (i = TEAM_ID_FALCO; i < TEAM_ID_MAX; i++) {
gPrevPlanetTeamShields[i] = gTeamShields[i];
diff --git a/src/overlays/ovl_i4/fox_fo.c b/src/overlays/ovl_i4/fox_fo.c
index 301525cc..7d3ba318 100644
--- a/src/overlays/ovl_i4/fox_fo.c
+++ b/src/overlays/ovl_i4/fox_fo.c
@@ -203,7 +203,7 @@ void Fortuna_80187960(Actor* actor) {
if ((gStarWolfTeamAlive[0] == 0) && (gStarWolfTeamAlive[1] == 0) && (gStarWolfTeamAlive[2] == 0) &&
(gStarWolfTeamAlive[3] == 0)) {
Radio_PlayMessage(gMsg_ID_9411, RCID_FOX);
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
gPlayer[0].timer_1F8 = 50;
player->unk_190 = 5.0f;
player->unk_194 = 5.0f;
@@ -211,7 +211,7 @@ void Fortuna_80187960(Actor* actor) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 30);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 30);
} else {
- gNextPlanetPath = 0;
+ gMissionStatus = MISSION_COMPLETE;
gPlayer[0].timer_1F8 = 30;
}
}
@@ -363,7 +363,7 @@ void Fortuna_80187960(Actor* actor) {
case 6:
actor->iwork[0] += 1;
- if (gNextPlanetPath == 0) {
+ if (gMissionStatus == MISSION_COMPLETE) {
actor1->aiIndex = AI360_FOX;
actor1->state = 2;
actor2->aiIndex = AI360_FOX;
@@ -494,7 +494,7 @@ void Fortuna_80188AD0(Actor* actor) {
actor->state = 1;
actor->info.hitbox = SEGMENTED_TO_VIRTUAL(D_FO_600FF64);
actor->info.unk_1C = 0.0f;
- actor->lockOnTimers[0] = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = 0;
actor->info.bonus = 0;
AUDIO_PLAY_SFX(0x2903B009, actor->sfxSource, 4);
}
@@ -645,7 +645,7 @@ void Fortuna_LevelComplete(Player* player) {
Math_SmoothStepToF(&player->unk_12C, 0.0f, 0.1f, 15.0f, 0.0f);
Math_SmoothStepToF(&player->camRoll, 0.0f, 0.1f, 3.0f, 0.0f);
Math_SmoothStepToAngle(&player->unk_4D8, 0.0f, 0.1f, 20.0f, 0.0f);
- if (gNextPlanetPath == 0) {
+ if (gMissionStatus == MISSION_COMPLETE) {
if (player->pos.y < 700.0f) {
Math_SmoothStepToF(&player->pos.y, 700.0f, 0.1f, 10.0f, 0.0f);
}
@@ -695,7 +695,7 @@ void Fortuna_LevelComplete(Player* player) {
break;
case 0:
- if (gNextPlanetPath == 0) {
+ if (gMissionStatus == MISSION_COMPLETE) {
Math_SmoothStepToF(&player->unk_0E8, 40.0f, 0.1f, 2.5f, 0.0f);
Math_SmoothStepToF(&player->unk_0EC, 60.0f, 0.2f, 5.0f, 0.0f);
Math_SmoothStepToF(&player->unk_0E4, 0.0f, 0.1f, 2.5f, 0.0f);
@@ -712,7 +712,7 @@ void Fortuna_LevelComplete(Player* player) {
}
if (player->timer_1F8 == 0) {
- if (gNextPlanetPath != 0) {
+ if (gMissionStatus != MISSION_COMPLETE) {
player->timer_1F8 = 150;
player->unk_1D0 = -1;
player->pos.x = 0.0f;
@@ -752,7 +752,7 @@ void Fortuna_LevelComplete(Player* player) {
//! FAKE:
if (((&dest) && (&dest)) && (&dest)) {}
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(player->sfxSource);
player->unk_234 = 0;
gFillScreenAlpha = 255;
@@ -763,7 +763,7 @@ void Fortuna_LevelComplete(Player* player) {
break;
case 2:
- if (!(gNextPlanetPath) && (player->timer_1F8) > 830) {
+ if (!(gMissionStatus) && (player->timer_1F8) > 830) {
gFillScreenAlphaTarget = 0;
gFillScreenAlphaStep = 8;
}
@@ -778,9 +778,9 @@ void Fortuna_LevelComplete(Player* player) {
gBosses[0].swork[0] = 1;
- if ((func_hud_80090200(&gBosses[0]) == 2) || (gNextPlanetPath != 0)) {
+ if ((func_hud_80090200(&gBosses[0]) == 2) || (gMissionStatus != MISSION_COMPLETE)) {
Play_ClearObjectData();
- if (gNextPlanetPath == 0) {
+ if (gMissionStatus == MISSION_COMPLETE) {
player->unk_1D0 = 10;
} else {
player->unk_1D0 = 20;
@@ -803,7 +803,7 @@ void Fortuna_LevelComplete(Player* player) {
D_ctx_801784D4 = D_ctx_801784C8 = D_ctx_801784C8 = D_ctx_801784FC = D_ctx_801784C8 = 58.0f;
D_ctx_801784D8 = D_ctx_801784CC = D_ctx_801784CC = D_ctx_80178500 = D_ctx_801784CC = 13.0f;
- if (gNextPlanetPath == 0) {
+ if (gMissionStatus == MISSION_COMPLETE) {
player->pos.x = 0.0f;
player->pos.y = 0.0f;
player->unk_0E4 = 0.0f;
@@ -829,7 +829,7 @@ void Fortuna_LevelComplete(Player* player) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_BGM, 100);
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 100);
Audio_StartPlayerNoise(0);
- if (gNextPlanetPath == 0) {
+ if (gMissionStatus == MISSION_COMPLETE) {
Fortuna_801890EC(actor0, 3);
}
}
@@ -871,7 +871,7 @@ void Fortuna_LevelComplete(Player* player) {
}
if (gCsFrameCount == 200) {
- if (gNextPlanetPath == 0) {
+ if (gMissionStatus == MISSION_COMPLETE) {
AUDIO_PLAY_BGM(SEQ_ID_BAD_END);
} else {
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
@@ -919,7 +919,7 @@ void Fortuna_LevelComplete(Player* player) {
Radio_PlayMessage(gMsg_ID_20010, RCID_FOX);
}
- if (gNextPlanetPath == 0) {
+ if (gMissionStatus == MISSION_COMPLETE) {
switch (gCsFrameCount) {
case 588:
switch (gTeamShields[TEAM_ID_SLIPPY]) {
@@ -1101,7 +1101,7 @@ void Fortuna_LevelComplete(Player* player) {
for (i = 0; i < 6; i++) {
gSavedStarWolfTeamAlive[i] = gStarWolfTeamAlive[i];
}
- D_play_800D3180[LEVEL_FORTUNA] = Play_CheckMedalStatus(50) + 1;
+ gLeveLClearStatus[LEVEL_FORTUNA] = Play_CheckMedalStatus(50) + 1;
}
break;
@@ -1328,7 +1328,7 @@ void Fortuna_LevelComplete(Player* player) {
}
// clang-format on
- D_play_800D3180[LEVEL_FORTUNA] = Play_CheckMedalStatus(50) + 1;
+ gLeveLClearStatus[LEVEL_FORTUNA] = Play_CheckMedalStatus(50) + 1;
Play_ClearObjectData();
break;
}
diff --git a/src/overlays/ovl_i4/fox_ka.c b/src/overlays/ovl_i4/fox_ka.c
index 8154ae20..6e0d4094 100644
--- a/src/overlays/ovl_i4/fox_ka.c
+++ b/src/overlays/ovl_i4/fox_ka.c
@@ -1042,7 +1042,7 @@ void Katina_801946C4(Boss* boss) {
gPlayer[0].unk_1D0 = 2;
gPlayer[0].unk_234 = 1;
gCsFrameCount = 200;
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(&gPlayer[0].sfxSource[0]);
gPlayer[0].timer_1F8 = 50;
gPlayer[0].unk_0D0 = 0.0f;
@@ -1066,7 +1066,7 @@ void Katina_801946C4(Boss* boss) {
(gPlayer[0].state_1C8 == PLAYERSTATE_1C8_U_TURN))) {
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_LEVEL_COMPLETE;
gPlayer[0].unk_1D0 = 0;
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
boss->obj.pos.z = 0.0f;
boss->health = -1;
boss->fwork[10] = 0.0f;
@@ -1367,7 +1367,7 @@ void Katina_80197024(void) {
Rand_SetSeed(1, 29100, 9786);
- if (gNextPlanetPath != 0) {
+ if (gMissionStatus != MISSION_COMPLETE) {
target = 19;
} else {
target = 2;
@@ -1481,7 +1481,7 @@ void Katina_LevelComplete(Player* player) {
if (gCsFrameCount == 250) {
player->unk_1D0 = 2;
Play_ClearObjectData();
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(&player->sfxSource[0]);
player->timer_1F8 = 50;
player->unk_0D0 = 0.0f;
@@ -1499,7 +1499,7 @@ void Katina_LevelComplete(Player* player) {
player->pos.z = 150.0f;
player->unk_1D0 = 3;
Audio_StartPlayerNoise(0);
- if (gNextPlanetPath != 0) {
+ if (gMissionStatus != MISSION_COMPLETE) {
AUDIO_PLAY_BGM(SEQ_ID_GOOD_END);
} else {
AUDIO_PLAY_BGM(SEQ_ID_BAD_END);
@@ -1553,7 +1553,7 @@ void Katina_LevelComplete(Player* player) {
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
player->timer_1F8 = 0;
gFadeoutType = 4;
- D_play_800D3180[LEVEL_KATINA] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_KATINA] = Play_CheckMedalStatus(150) + 1;
}
}
switch (gCsFrameCount) {
@@ -1587,7 +1587,7 @@ void Katina_LevelComplete(Player* player) {
break;
case 570:
- if (gNextPlanetPath != 0) {
+ if (gMissionStatus != MISSION_COMPLETE) {
if (gKaAllyKillCount == 0) {
Radio_PlayMessage(gMsg_ID_18100, RCID_BILL);
} else {
@@ -1599,7 +1599,7 @@ void Katina_LevelComplete(Player* player) {
break;
case 700:
- if (gNextPlanetPath != 0) {
+ if (gMissionStatus != MISSION_COMPLETE) {
if (gKaAllyKillCount == 0) {
Radio_PlayMessage(gMsg_ID_18105, RCID_FOX);
} else {
diff --git a/src/overlays/ovl_i4/fox_sz.c b/src/overlays/ovl_i4/fox_sz.c
index 466a905a..e45723b5 100644
--- a/src/overlays/ovl_i4/fox_sz.c
+++ b/src/overlays/ovl_i4/fox_sz.c
@@ -58,7 +58,7 @@ void SectorZ_80199900(Actor* actor, s32 arg1) {
SEQCMD_STOP_SEQUENCE(SEQ_PLAYER_FANFARE, 1);
}
- if ((D_i4_801A0560 == 3) && (D_play_800D3180[LEVEL_ZONESS] != 0)) {
+ if ((D_i4_801A0560 == 3) && (gLeveLClearStatus[LEVEL_ZONESS] != 0)) {
D_360_800C9B4C = gAllRangeEventTimer + 110;
}
}
@@ -1209,7 +1209,7 @@ void SectorZ_LevelComplete(Player* player) {
if ((gCsFrameCount == 210) && gGreatFoxIntact) {
gLevelClearScreenTimer = 100;
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
}
if ((gCsFrameCount == 230) && (D_i4_801A0564 != 0)) {
@@ -1240,7 +1240,7 @@ void SectorZ_LevelComplete(Player* player) {
player->unk_1D0 = 10;
player->timer_1F8 = 1000;
- func_8001CA24(0U);
+ Audio_StopPlayerNoise(0U);
Audio_KillSfxBySource(player->sfxSource);
Play_ClearObjectData();
@@ -1353,7 +1353,7 @@ void SectorZ_LevelComplete(Player* player) {
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
player->timer_1F8 = 0;
gFadeoutType = 4;
- D_play_800D3180[LEVEL_SECTOR_Z] = Play_CheckMedalStatus(100) + 1;
+ gLeveLClearStatus[LEVEL_SECTOR_Z] = Play_CheckMedalStatus(100) + 1;
}
}
break;
@@ -1485,10 +1485,10 @@ void SectorZ_LevelComplete(Player* player) {
case 1370:
if (gGreatFoxIntact) {
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
} else {
AUDIO_PLAY_BGM(SEQ_ID_BAD_END);
- gNextPlanetPath = 0;
+ gMissionStatus = MISSION_COMPLETE;
}
break;
diff --git a/src/overlays/ovl_i5/fox_ma.c b/src/overlays/ovl_i5/fox_ma.c
index cd6312e3..28a4e433 100644
--- a/src/overlays/ovl_i5/fox_ma.c
+++ b/src/overlays/ovl_i5/fox_ma.c
@@ -445,19 +445,19 @@ void Macbeth_8019A198(Actor* actor) {
if ((actor->iwork[5] == D_MA_801BE2F0[3] - 1) || (actor->iwork[5] == D_i5_801BA1E4 - 1)) {
if (D_i5_801BE310 != actor->iwork[5]) {
if (actor->vel.z > -6.0f) {
- func_8001CFA8(-6.0f);
+ Audio_SetSfxSpeedModulation(-6.0f);
} else {
- func_8001CFA8(actor->vel.z);
+ Audio_SetSfxSpeedModulation(actor->vel.z);
}
- func_8001D10C(actor->sfxSource, 0x31078085);
+ Audio_PlaySfxModulated(actor->sfxSource, 0x31078085);
D_i5_801BE310 = actor->iwork[5];
}
D_i5_801BA1E0 = actor->obj.pos.z;
if (D_i5_801BE313 != 0) {
if (actor->vel.z > -6.0f) {
- func_8001CFA8(-6.0f);
+ Audio_SetSfxSpeedModulation(-6.0f);
} else {
- func_8001CFA8(actor->vel.z);
+ Audio_SetSfxSpeedModulation(actor->vel.z);
}
}
}
@@ -890,7 +890,7 @@ void Macbeth_8019C778(Actor* actor) {
if (gPlayer[0].state_1C8 == PLAYERSTATE_1C8_ACTIVE) {
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_LEVEL_COMPLETE;
gPlayer[0].unk_1D0 = 0;
- gNextPlanetPath = 0;
+ gMissionStatus = MISSION_COMPLETE;
}
actor->state++;
Audio_KillSfxBySourceAndId(gPlayer[0].sfxSource, 0x1100000A);
@@ -3043,7 +3043,7 @@ void Macbeth_801A4B24(Actor* actor) {
D_ctx_8017796C = -1;
gPlayer[0].state_1C8 = PLAYERSTATE_1C8_LEVEL_COMPLETE;
gPlayer[0].unk_1D0 = 0;
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
actor->timer_0BC = 5;
actor->state = 6;
Audio_KillSfxBySourceAndId(gPlayer[0].sfxSource, 0x1100000A);
@@ -6363,7 +6363,7 @@ void Macbeth_LevelComplete2(Player* player) {
}
break;
case 1420:
- if (D_play_800D3180[LEVEL_ZONESS] != 0) {
+ if (gLeveLClearStatus[LEVEL_ZONESS] != 0) {
Macbeth_801AF44C();
}
break;
@@ -6371,7 +6371,7 @@ void Macbeth_LevelComplete2(Player* player) {
D_i5_801BA88C = 170.0f;
break;
case 1500:
- if (D_play_800D3180[LEVEL_ZONESS] != 0) {
+ if (gLeveLClearStatus[LEVEL_ZONESS] != 0) {
Radio_PlayMessage(gMsg_ID_17300, RCID_KATT);
}
break;
@@ -6422,7 +6422,7 @@ void Macbeth_LevelComplete2(Player* player) {
case 2160:
gProjectFar = 30000.0f;
player->unk_240 = 1;
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
AUDIO_PLAY_SFX(0x01008016, player->sfxSource, 0);
break;
case 2310:
@@ -6461,7 +6461,7 @@ void Macbeth_LevelComplete2(Player* player) {
gFadeoutType = 4;
Play_ClearObjectData();
Audio_FadeOutAll(10);
- D_play_800D3180[LEVEL_MACBETH] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_MACBETH] = Play_CheckMedalStatus(150) + 1;
}
}
}
@@ -6971,17 +6971,17 @@ void Macbeth_LevelComplete1(Player* player) {
}
break;
case 680:
- if (D_play_800D3180[LEVEL_ZONESS] != 0) {
+ if (gLeveLClearStatus[LEVEL_ZONESS] != 0) {
Macbeth_801B3718();
}
break;
case 1027:
- if (D_play_800D3180[LEVEL_ZONESS] != 0) {
+ if (gLeveLClearStatus[LEVEL_ZONESS] != 0) {
Radio_PlayMessage(gMsg_ID_17350, RCID_KATT);
}
break;
case 1065:
- if (D_play_800D3180[LEVEL_ZONESS] != 0) {
+ if (gLeveLClearStatus[LEVEL_ZONESS] != 0) {
gActors[8].state++;
}
break;
@@ -6995,7 +6995,7 @@ void Macbeth_LevelComplete1(Player* player) {
gActors[2].state++;
break;
case 1158:
- if (D_play_800D3180[LEVEL_ZONESS] != 0) {
+ if (gLeveLClearStatus[LEVEL_ZONESS] != 0) {
Object_Kill(&gActors[8].obj, gActors[8].sfxSource);
}
/* fallthrough */
@@ -7030,7 +7030,7 @@ void Macbeth_LevelComplete1(Player* player) {
gFadeoutType = 4;
Play_ClearObjectData();
Audio_FadeOutAll(10);
- D_play_800D3180[LEVEL_MACBETH] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_MACBETH] = Play_CheckMedalStatus(150) + 1;
}
}
}
diff --git a/src/overlays/ovl_i5/fox_ti.c b/src/overlays/ovl_i5/fox_ti.c
index 7ff65057..ad546293 100644
--- a/src/overlays/ovl_i5/fox_ti.c
+++ b/src/overlays/ovl_i5/fox_ti.c
@@ -360,7 +360,7 @@ void Titania_80189CC8(Actor* actor) {
if (actor->health <= 0) {
actor->health = 0;
AUDIO_PLAY_SFX(0x2903A008, actor->sfxSource, 4);
- actor->lockOnTimers[0] = actor->itemDrop = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = actor->itemDrop = 0;
actor->info.unk_1C = 0.0f;
Actor_Despawn(actor);
actor->info.bonus = 0;
@@ -866,7 +866,7 @@ void Titania_8018B268(Actor* actor) {
Animation_DrawSkeleton(0, D_TI1_700D700, actor->vwork, Titania_8018AFD4, Titania_8018B1B4, actor,
&gIdentityMatrix);
func_effect_8007D2C8(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z, 10.0f);
- actor->lockOnTimers[0] = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = 0;
actor->info.unk_1C = 0.0f;
}
}
@@ -1679,7 +1679,7 @@ void Titania_8018C8A8(Actor* actor) {
if (actor->health > 0) {
actor->info.unk_1C = actor->fwork[27];
} else {
- actor->lockOnTimers[0] = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = 0;
actor->info.unk_1C = 0.0f;
}
actor->unk_0D0 = 0;
@@ -1882,7 +1882,7 @@ void Titania_8018E5F8(Actor* actor) {
if (actor->health <= 0) {
BonusText_Display(actor->obj.pos.x, actor->obj.pos.y, actor->obj.pos.z + actor->fwork[27], 2);
gHitCount += 2;
- actor->lockOnTimers[0] = actor->health = actor->itemDrop = 0;
+ actor->lockOnTimers[TEAM_ID_FOX] = actor->health = actor->itemDrop = 0;
actor->info.unk_1C = 0.0f;
Actor_Despawn(actor);
actor->info.bonus = 0;
diff --git a/src/overlays/ovl_i5/fox_ti_cs.c b/src/overlays/ovl_i5/fox_ti_cs.c
index 0d7c3fd8..c1684749 100644
--- a/src/overlays/ovl_i5/fox_ti_cs.c
+++ b/src/overlays/ovl_i5/fox_ti_cs.c
@@ -498,7 +498,7 @@ void Titania_LevelComplete(Player* player) {
Titania_80188108(&gActors[3], 3);
gProjectFar = 30000.0f;
player->unk_240 = 1;
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
AUDIO_PLAY_SFX(0x01008016, player->sfxSource, 0);
break;
}
@@ -526,7 +526,7 @@ void Titania_LevelComplete(Player* player) {
gFadeoutType = 4;
Play_ClearObjectData();
Audio_FadeOutAll(10);
- D_play_800D3180[LEVEL_TITANIA] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_TITANIA] = Play_CheckMedalStatus(150) + 1;
}
}
}
diff --git a/src/overlays/ovl_i6/fox_andross.c b/src/overlays/ovl_i6/fox_andross.c
index e3d18707..a4eb3f41 100644
--- a/src/overlays/ovl_i6/fox_andross.c
+++ b/src/overlays/ovl_i6/fox_andross.c
@@ -639,7 +639,7 @@ void Andross_80189470(Actor* actor) {
if ((gPlayer[0].state_1C8 == PLAYERSTATE_1C8_ACTIVE) && (fabsf(actor->obj.pos.x - gPlayer[0].pos.x) < 500.0f) &&
(fabsf(actor->obj.pos.z - gPlayer[0].unk_138) < 500.0f)) {
Audio_KillSfxById(0x11403076);
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
gCurrentLevel = LEVEL_VENOM_2;
gLevelPhase = 1;
gVenomHardClear = 1;
@@ -950,7 +950,7 @@ void Andross_80189B70(Boss* boss) {
if (gCsFrameCount == 200) {
gBossActive = 0;
gPlayer[0].unk_0D0 = D_play_80161A54;
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
boss->state = 21;
func_effect_8007B344(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z, 60.0f, 5);
func_effect_8007A568(boss->obj.pos.x, boss->obj.pos.y, boss->obj.pos.z, 40.0f);
@@ -1029,7 +1029,7 @@ void Andross_80189B70(Boss* boss) {
Radio_PlayMessage(gMsg_ID_19340, RCID_JAMES);
break;
case 1000:
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
break;
case 1300:
Radio_PlayMessage(gMsg_ID_19355, RCID_JAMES);
@@ -1558,7 +1558,7 @@ void Andross_8018D0D8(Boss* boss) {
}
void Andross_Boss320_Init(Boss320* this) {
- Audio_SetBaseSfxReverb(0x18);
+ Audio_SetEnvSfxReverb(24);
D_i6_801A7F5C = D_i6_801A7F64 = D_i6_801A7F6C = D_i6_801A7F74 = D_i6_801A7F7C = D_i6_801A8430 = 0.0f;
gAndrossUnkAlpha = 0.0f;
this->health = 100;
@@ -2471,7 +2471,7 @@ void Andross_8018DBF0(Boss* boss) {
boss->timer_050 = 30;
boss->swork[9] = 20;
boss->fwork[9] = 0.0f;
- func_8001CE28(0, boss->sfxSource);
+ Audio_PlayBombExplodeSfx(0, boss->sfxSource);
boss->timer_05C = 50;
}
break;
@@ -3554,7 +3554,7 @@ void Andross_80193C4C(Player* player) {
sp68.z = 0.0f;
if (gCsFrameCount == 50) {
AUDIO_PLAY_SFX(0x11403071, player->sfxSource, 0);
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
}
if (gCsFrameCount > 40) {
sp90 = 1;
@@ -3632,7 +3632,7 @@ void Andross_80193C4C(Player* player) {
break;
case 340:
Audio_KillSfxBySourceAndId(player->sfxSource, 0x11403071);
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
gVenomHardClear = 0;
gBlurAlpha = 255;
gCurrentLevel = LEVEL_VENOM_2;
@@ -3720,7 +3720,7 @@ void Andross_80193C4C(Player* player) {
D_i6_801A7F50 = gAmbientG;
D_i6_801A7F54 = gAmbientB;
D_ctx_801784D4 = -50.0f;
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
for (i = 0; i < 200; i++) {
gScenery360[i].obj.status = OBJ_FREE;
}
@@ -3946,7 +3946,7 @@ void Andross_80193C4C(Player* player) {
if (gFillScreenAlpha == 255) {
gNextGameState = GSTATE_ENDING;
D_ending_80196D00 = 0;
- D_play_800D3180[LEVEL_VENOM_ANDROSS] = Play_CheckMedalStatus(200) + 1;
+ gLeveLClearStatus[LEVEL_VENOM_ANDROSS] = Play_CheckMedalStatus(200) + 1;
AUDIO_SET_SPEC(SFXCHAN_0, AUDIOSPEC_27);
}
}
diff --git a/src/overlays/ovl_i6/fox_sy.c b/src/overlays/ovl_i6/fox_sy.c
index 4ebe5d6b..dda59f43 100644
--- a/src/overlays/ovl_i6/fox_sy.c
+++ b/src/overlays/ovl_i6/fox_sy.c
@@ -2116,7 +2116,7 @@ void SectorY_LevelComplete(Player* player) {
D_ctx_80177A48[0] = 1.0f;
player->unk_1D0++;
Play_ClearObjectData();
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(player->sfxSource);
gFillScreenAlpha = 250;
player->timer_1F8 = 50;
@@ -2221,7 +2221,7 @@ void SectorY_LevelComplete(Player* player) {
player->state_1C8 = PLAYERSTATE_1C8_NEXT;
player->timer_1F8 = 0;
gFadeoutType = 4;
- D_play_800D3180[LEVEL_SECTOR_Y] = Play_CheckMedalStatus(150) + 1;
+ gLeveLClearStatus[LEVEL_SECTOR_Y] = Play_CheckMedalStatus(150) + 1;
}
}
break;
@@ -2230,7 +2230,7 @@ void SectorY_LevelComplete(Player* player) {
switch (gCsFrameCount) {
case 520:
if (gHitCount >= 100) {
- gNextPlanetPath = 1;
+ gMissionStatus = MISSION_ACCOMPLISHED;
}
gLevelClearScreenTimer = 100;
break;
diff --git a/src/overlays/ovl_i6/fox_ve2.c b/src/overlays/ovl_i6/fox_ve2.c
index 72866fae..26b45964 100644
--- a/src/overlays/ovl_i6/fox_ve2.c
+++ b/src/overlays/ovl_i6/fox_ve2.c
@@ -110,7 +110,7 @@ void Venom2_80196314(Actor* actor) {
player->state_1C8 = PLAYERSTATE_1C8_LEVEL_COMPLETE;
player->unk_1D0 = 0;
- D_play_800D3180[gCurrentLevel] = 2;
+ gLeveLClearStatus[gCurrentLevel] = 2;
D_ctx_80177C94 = gGoldRingCount[0];
D_ctx_80177C9C = player->shields + 1;
D_play_80161A5C = D_ctx_80177CA4 = gHitCount;
@@ -415,10 +415,10 @@ void Venom2_LevelComplete(Player* player) {
gNextGameState = GSTATE_PLAY;
gNextLevel = LEVEL_VENOM_ANDROSS;
- if (D_play_800D3180[gCurrentLevel] != 0) {
+ if (gLeveLClearStatus[gCurrentLevel] != 0) {
gNextLevelPhase = 1;
}
- func_8001CA24(0);
+ Audio_StopPlayerNoise(0);
Audio_KillSfxBySource(player->sfxSource);
for (i = 0; i < 200; i++) {
diff --git a/src/overlays/ovl_menu/fox_map.c b/src/overlays/ovl_menu/fox_map.c
index 8e84c006..8393cfab 100644
--- a/src/overlays/ovl_menu/fox_map.c
+++ b/src/overlays/ovl_menu/fox_map.c
@@ -30,12 +30,12 @@ s32 D_menu_801CD840[24];
s32 D_menu_801CD8A0[15];
s32 D_menu_801CD8E0[7];
s32 D_menu_801CD900[15];
-s32 D_menu_801CD93C;
+MissionStatus sPrevMissionStatus;
s32 D_menu_801CD940;
s32 D_menu_801CD944; // mapState
s32 D_menu_801CD948;
s32 D_menu_801CD94C;
-s32 D_menu_801CD950;
+PlanetId sPrevPlanetId;
PlanetId sCurrentPlanetId; // sCurrentPlanetId
PlanetId sNextPlanetId;
s32 D_menu_801CD95C;
@@ -1450,19 +1450,19 @@ void Map_8019F164(void) {
}
}
- D_menu_801CD93C = gNextPlanetPath;
+ sPrevMissionStatus = gMissionStatus;
sCurrentPlanetId = Map_GetPlanetId(gCurrentLevel);
- D_menu_801CD950 = sCurrentPlanetId;
+ sPrevPlanetId = sCurrentPlanetId;
D_menu_801CD980 = Map_8019FD1C(gCurrentLevel, 0);
Map_8019FD1C(gCurrentLevel, 2);
- if (D_play_800D3180[gCurrentLevel] == 2) {
+ if (gLeveLClearStatus[gCurrentLevel] == 2) {
D_menu_801CD98C = 1;
- D_ctx_80177BB0[gMissionNumber] = 1;
+ gMissionMedal[gMissionNumber] = 1;
Map_8019FD1C(gCurrentLevel, 1);
}
@@ -1474,16 +1474,16 @@ void Map_8019F164(void) {
Map_8019FA1C();
- switch (D_menu_801CD93C) {
- case 0:
+ switch (sPrevMissionStatus) {
+ case MISSION_COMPLETE:
sNextPlanetId = sPlanets[sCurrentPlanetId].dest1;
break;
- case 1:
+ case MISSION_ACCOMPLISHED:
sNextPlanetId = sPlanets[sCurrentPlanetId].dest2;
break;
- case 2:
+ case MISSION_WARP:
sNextPlanetId = sPlanets[sCurrentPlanetId].warp;
break;
}
@@ -1502,7 +1502,7 @@ void Map_8019F164(void) {
D_menu_801CEFD8 = 0;
- if (D_menu_801CD93C != 0) {
+ if (sPrevMissionStatus != MISSION_COMPLETE) {
D_menu_801CEFD8 = 1;
}
@@ -1521,7 +1521,7 @@ void Map_8019F42C(void) {
D_menu_801CD974 = 1;
sCurrentPlanetId = Map_GetPlanetId(gCurrentLevel);
- D_ctx_80177B70[gMissionNumber] = gHitCount;
+ gMissionHitCount[gMissionNumber] = gHitCount;
Map_8019F910();
Map_8019FD1C(gCurrentLevel, 0);
@@ -1534,7 +1534,7 @@ void Map_8019F42C(void) {
if (gMissionNumber != 0) {
for (i = 0; i < gMissionNumber; i++) {
- D_menu_801CD8E0[i] = Map_GetPathId(D_ctx_80177B90[i], D_ctx_80177B90[i + 1]);
+ D_menu_801CD8E0[i] = Map_GetPathId(gMissionPlanet[i], gMissionPlanet[i + 1]);
}
}
@@ -1559,8 +1559,8 @@ void Map_8019F42C(void) {
void Map_8019F600(void) {
s32 i;
- s32 sp18;
- s32 temp_t4;
+ s32 path1;
+ s32 path2;
gTotalHits = 0;
gHitCount = 0;
@@ -1568,58 +1568,59 @@ void Map_8019F600(void) {
gTeamShields[TEAM_ID_FALCO] = 255;
gTeamShields[TEAM_ID_SLIPPY] = 255;
gTeamShields[TEAM_ID_PEPPY] = 255;
- gSavedTeamShields[1] = 255;
- gSavedTeamShields[2] = 255;
- gSavedTeamShields[3] = 255;
- gPrevPlanetTeamShields[1] = 255;
- gPrevPlanetTeamShields[2] = 255;
- gPrevPlanetTeamShields[3] = 255;
- D_ctx_80177C58[1] = 255;
- D_ctx_80177C58[2] = 255;
- D_ctx_80177C58[3] = 255;
-
- D_menu_801CD950 = -1;
-
- for (i = 0; i < 15; i++) {
+ gSavedTeamShields[TEAM_ID_FALCO] = 255;
+ gSavedTeamShields[TEAM_ID_SLIPPY] = 255;
+ gSavedTeamShields[TEAM_ID_PEPPY] = 255;
+ gPrevPlanetTeamShields[TEAM_ID_FALCO] = 255;
+ gPrevPlanetTeamShields[TEAM_ID_SLIPPY] = 255;
+ gPrevPlanetTeamShields[TEAM_ID_PEPPY] = 255;
+ D_ctx_80177C58[TEAM_ID_FALCO] = 255;
+ D_ctx_80177C58[TEAM_ID_SLIPPY] = 255;
+ D_ctx_80177C58[TEAM_ID_PEPPY] = 255;
+
+ sPrevPlanetId = PLANET_NONE;
+
+ for (i = 0; i < ARRAY_COUNT(sPlanets); i++) {
sPlanets[i].alpha = 0;
}
D_menu_801CD970 = 0;
- for (i = 0; i < 24; i++) {
+ //! @bug gPlanetPathStatus is 2 shorter than sPaths
+ for (i = 0; i < ARRAY_COUNT(sPaths); i++) {
gPlanetPathStatus[i] = 0;
gTexturedLines[i].unk_24 = 0.0f;
}
- for (i = 0; i < 7; i++) {
- D_ctx_80177BB0[i] = 0;
- D_ctx_80177B70[i] = 0;
- D_ctx_80177B50[i] = 0x00FFFFFF;
- }
- D_ctx_80177B90[0] = PLANET_CORNERIA;
- D_ctx_80177B90[1] = PLANET_NONE;
- D_ctx_80177B90[2] = PLANET_NONE;
- D_ctx_80177B90[3] = PLANET_NONE;
- D_ctx_80177B90[4] = PLANET_NONE;
- D_ctx_80177B90[5] = PLANET_NONE;
- D_ctx_80177B90[6] = PLANET_VENOM;
+ for (i = 0; i < ARRAY_COUNT(gMissionMedal); i++) {
+ gMissionMedal[i] = 0;
+ gMissionHitCount[i] = 0;
+ gMissionTeamStatus[i] = 0x00FFFFFF;
+ }
+ gMissionPlanet[0] = PLANET_CORNERIA;
+ gMissionPlanet[1] = PLANET_NONE;
+ gMissionPlanet[2] = PLANET_NONE;
+ gMissionPlanet[3] = PLANET_NONE;
+ gMissionPlanet[4] = PLANET_NONE;
+ gMissionPlanet[5] = PLANET_NONE;
+ gMissionPlanet[6] = PLANET_VENOM;
- for (i = 0; i < 24; i++) {
+ for (i = 0; i < ARRAY_COUNT(sPaths); i++) {
sPaths[i].alpha = 255;
}
gMissionNumber = 0;
- gCurrentLevel = 0;
+ gCurrentLevel = LEVEL_CORNERIA;
- sCurrentPlanetId = 9;
+ sCurrentPlanetId = PLANET_CORNERIA;
D_menu_801CEA9C = 0.0f;
D_menu_801CD9B0 = 0.002f;
D_menu_801CD9B4 = 0.01f;
D_menu_801CD944 = 0;
- sp18 = Map_GetPathId(sCurrentPlanetId, sPlanets[sCurrentPlanetId].dest1);
- temp_t4 = Map_GetPathId(sCurrentPlanetId, sPlanets[sCurrentPlanetId].dest2);
- gPlanetPathStatus[sp18] = 1;
- gPlanetPathStatus[temp_t4] = 1;
+ path1 = Map_GetPathId(sCurrentPlanetId, sPlanets[sCurrentPlanetId].dest1);
+ path2 = Map_GetPathId(sCurrentPlanetId, sPlanets[sCurrentPlanetId].dest2);
+ gPlanetPathStatus[path1] = 1;
+ gPlanetPathStatus[path2] = 1;
}
void Map_8019F83C(void) {
@@ -1648,9 +1649,9 @@ void Map_8019F910(void) {
for (i = 0; i < 3; i++) {
if (gTeamShields[3 - i] <= 0) {
- D_ctx_80177B50[gMissionNumber] ^= mask;
+ gMissionTeamStatus[gMissionNumber] ^= mask;
} else {
- D_ctx_80177B50[gMissionNumber] |= mask;
+ gMissionTeamStatus[gMissionNumber] |= mask;
}
mask >>= 8;
}
@@ -1690,10 +1691,10 @@ void Map_8019FC04(void) {
}
for (i = 0; i < 7; i++) {
- if (D_ctx_80177B90[i] == PLANET_KATINA) {
+ if (gMissionPlanet[i] == PLANET_KATINA) {
D_menu_801CEB48[1] = false;
}
- if (D_ctx_80177B90[i] == PLANET_SECTOR_Y) {
+ if (gMissionPlanet[i] == PLANET_SECTOR_Y) {
D_menu_801CEB48[2] = false;
}
}
@@ -2780,7 +2781,7 @@ void Map_801A281C(void) {
D_menu_801CEECC = Map_GetPathId(sCurrentPlanetId, sNextPlanetId);
- if (D_menu_801CD93C == 2) {
+ if (sPrevMissionStatus == MISSION_WARP) {
gPlanetPathStatus[D_menu_801CEECC] = 5;
sPaths[D_menu_801CEECC].unk_14 = 5;
} else {
@@ -2907,7 +2908,7 @@ void Map_801A2EB8(void) {
s32 temp2;
if (D_menu_801CD9C4 == 30) {
- if (D_menu_801CD93C == 2) {
+ if (sPrevMissionStatus == MISSION_WARP) {
AUDIO_PLAY_SFX(0x0900802A, gDefaultSfxSource, 4);
} else {
AUDIO_PLAY_SFX(0x09000032, gDefaultSfxSource, 4);
@@ -2918,7 +2919,7 @@ void Map_801A2EB8(void) {
if (D_menu_801CD9C4 == 80) {
sCurrentPlanetId = sNextPlanetId;
- D_ctx_80177B90[gMissionNumber] = sCurrentPlanetId;
+ gMissionPlanet[gMissionNumber] = sCurrentPlanetId;
Map_801A6368();
}
@@ -2982,7 +2983,7 @@ void Map_801A2EB8(void) {
}
if ((D_menu_801CEED8 == 5) && (D_menu_801CEEDC == 0.0f)) {
- if (D_menu_801CD93C != 2) {
+ if (sPrevMissionStatus != MISSION_WARP) {
sPaths[D_menu_801CEECC].unk_14 = 2;
D_menu_801CEEA0 = 0;
D_menu_801CEEA4 = 100;
@@ -3482,7 +3483,7 @@ void Map_801A4AE8(void) {
if (D_menu_801CF000[D_menu_801CEFDC] == 0) {
if (D_menu_801CEFD0 != 0) {
if (gLifeCount[gPlayerNum] != 0) {
- func_8001D520();
+ Audio_PlayDeathSequence();
D_menu_801CD9CC = 1;
D_menu_801CD9D0 = 0;
D_menu_801CD9B8 = 120;
@@ -3508,7 +3509,7 @@ void Map_801A4AE8(void) {
D_menu_801CD9CC = 0;
var_a0 = D_menu_801CEFDC;
- if (D_menu_801CD93C != 0) {
+ if (sPrevMissionStatus != MISSION_COMPLETE) {
var_a0 += 2;
}
@@ -3555,7 +3556,7 @@ void Map_801A4D7C(void) {
if (Map_801A5770() != 0) {
D_menu_801CEFE8[D_menu_801CEFDC] = 255.0f;
- if (D_menu_801CD93C != 0) {
+ if (sPrevMissionStatus != MISSION_COMPLETE) {
if (D_menu_801CEFD4 < 0) {
D_menu_801CEFDC++;
if (D_menu_801CEFDC >= 3) {
@@ -3583,18 +3584,19 @@ void Map_801A4D7C(void) {
}
if (gControllerPress[gMainController].button & (B_BUTTON | START_BUTTON)) {
- func_8001D6DC(0);
+ Audio_PlayMapMenuSfx(0);
D_menu_801CEFC4 = 0;
D_menu_801CD944 = 3;
return;
}
if (gControllerPress[gMainController].button & A_BUTTON) {
- func_8001D6DC(0);
+ Audio_PlayMapMenuSfx(0);
AUDIO_PLAY_SFX(0x49000003, gDefaultSfxSource, 4);
D_menu_801CF000[D_menu_801CEFDC] = 10;
- if (((D_menu_801CD93C != 0) && (D_menu_801CEFDC == 2)) || ((D_menu_801CD93C == 0) && (D_menu_801CEFDC == 1))) {
+ if (((sPrevMissionStatus != MISSION_COMPLETE) && (D_menu_801CEFDC == 2)) ||
+ ((sPrevMissionStatus == MISSION_COMPLETE) && (D_menu_801CEFDC == 1))) {
D_menu_801CEFD0 = 1;
D_menu_801CF00C = 10;
}
@@ -3656,17 +3658,17 @@ void Map_801A4FC4(void) {
D_menu_801CEEA8 = 255;
D_menu_801CEEAC = 255;
- gTotalHits -= D_ctx_80177B70[gMissionNumber - 1];
- D_ctx_80177B90[gMissionNumber] = PLANET_NONE;
- D_ctx_80177B70[gMissionNumber - 1] = 0;
- D_ctx_80177BB0[gMissionNumber - 1] = 0;
- D_ctx_80177B50[gMissionNumber - 1] = 0x00FFFFFF;
+ gTotalHits -= gMissionHitCount[gMissionNumber - 1];
+ gMissionPlanet[gMissionNumber] = PLANET_NONE;
+ gMissionHitCount[gMissionNumber - 1] = 0;
+ gMissionMedal[gMissionNumber - 1] = 0;
+ gMissionTeamStatus[gMissionNumber - 1] = 0x00FFFFFF;
gHitCount = 0;
gMissionNumber--;
D_menu_801CD83C = Map_801A05B4();
- sCurrentPlanetId = D_menu_801CD950;
+ sCurrentPlanetId = sPrevPlanetId;
if (sPlanets[sCurrentPlanetId].dest1 != PLANET_NONE) {
temp2 = Map_GetPathId(sCurrentPlanetId, sPlanets[sCurrentPlanetId].dest1);
@@ -3712,11 +3714,11 @@ void Map_801A53C8(void) {
sPaths[D_menu_801CEECC].alpha = 0;
sPaths[D_menu_801CEECC].unk_14 = 0;
- sCurrentPlanetId = D_menu_801CD950;
+ sCurrentPlanetId = sPrevPlanetId;
if (!D_menu_801CEFD8) {
sNextPlanetId = sPlanets[sCurrentPlanetId].dest1;
- } else if (D_menu_801CD93C != 2) {
+ } else if (sPrevMissionStatus != MISSION_WARP) {
if (sPlanets[sCurrentPlanetId].dest2 != PLANET_NONE) {
sNextPlanetId = sPlanets[sCurrentPlanetId].dest2;
} else {
@@ -3747,7 +3749,7 @@ void Map_801A53C8(void) {
D_menu_801CEEAC = 255;
sCurrentPlanetId = sNextPlanetId;
- D_ctx_80177B90[gMissionNumber] = sCurrentPlanetId;
+ gMissionPlanet[gMissionNumber] = sCurrentPlanetId;
Map_801A6368();
@@ -3820,7 +3822,7 @@ void Map_801A5834(void) {
}
var_t0 = 1;
- if (D_menu_801CD93C == 0) {
+ if (sPrevMissionStatus == MISSION_COMPLETE) {
var_t0 = 0;
}
@@ -3850,7 +3852,7 @@ void Map_801A5834(void) {
z = 24.0f;
colorIndex++;
- if (D_menu_801CD93C != 0) {
+ if (sPrevMissionStatus != MISSION_COMPLETE) {
mask = 0xFFFFFFFF;
if (D_menu_801CF000[colorIndex] != 0) {
mask = 0x00000001;
@@ -4261,7 +4263,7 @@ void Map_801A659C(void) {
Audio_KillSfxById(0x1100004C);
Audio_KillSfxById(0x1100204C);
- if (sCurrentPlanetId != 9) {
+ if (sCurrentPlanetId != PLANET_CORNERIA) {
AUDIO_PLAY_SFX(0x49000003, gDefaultSfxSource, 4);
}
@@ -4565,7 +4567,7 @@ void Map_801A6EC0(PlanetId planetId) {
void Map_801A7230(PlanetId planetId) {
switch (sPlanets[planetId].anim) {
case PL_ANIM_STATIC:
- if ((D_menu_801CD944 == 3 || planetId == sCurrentPlanetId || planetId == sNextPlanetId) &&
+ if (((D_menu_801CD944 == 3) || (planetId == sCurrentPlanetId) || (planetId == sNextPlanetId)) &&
D_menu_801CD944 != 1 && D_menu_801CD944 != 7) {
RCP_SetupDL(&gMasterDisp, 0x35);
} else {
@@ -4575,7 +4577,7 @@ void Map_801A7230(PlanetId planetId) {
break;
case PL_ANIM_ROTATE_Y:
- if ((D_menu_801CD944 == 3 || planetId == sCurrentPlanetId || planetId == sNextPlanetId) &&
+ if (((D_menu_801CD944 == 3) || (planetId == sCurrentPlanetId) || (planetId == sNextPlanetId)) &&
D_menu_801CD944 != 1 && D_menu_801CD944 != 7) {
RCP_SetupDL(&gMasterDisp, 0x17);
} else {
@@ -5181,7 +5183,7 @@ void Map_801A9224(void) {
mask = 0xFFFFFFFF;
}
- if ((D_menu_801CD944 == 3) || ((sCurrentPlanetId == 0) && (D_menu_801CD944 != 7))) {
+ if ((D_menu_801CD944 == 3) || ((sCurrentPlanetId == PLANET_METEO) && (D_menu_801CD944 != 7))) {
RCP_SetupDL(&gMasterDisp, 0x35);
} else {
RCP_SetupDL(&gMasterDisp, 0x40);
@@ -5493,9 +5495,9 @@ void Map_801A9FD4(s32 arg0) {
Matrix_SetGfxMtx(&gMasterDisp);
for (var_fs0 = 0.0f, var_fs1 = -41.5f, i = 0; i < var_s3; i++, var_fs0 += 24.0f + temp, var_fs1 += 13.8f) {
- if (D_ctx_80177B90[i] != PLANET_NONE) {
- Map_801AA434(i, 28.0f + var_fs0, 182.0f, D_ctx_80177B90[i]);
- Map_801AA778(i, var_fs1, -25.4f, D_ctx_80177B90[i]);
+ if (gMissionPlanet[i] != PLANET_NONE) {
+ Map_801AA434(i, 28.0f + var_fs0, 182.0f, gMissionPlanet[i]);
+ Map_801AA778(i, var_fs1, -25.4f, gMissionPlanet[i]);
}
}
@@ -5511,7 +5513,7 @@ void Map_801AA1CC(s32 arg0) {
s32 temp;
f32 y = 182.0f;
f32 x2 = 16.0f;
- PlanetId* ptr = &D_ctx_80177B90[0];
+ PlanetId* ptr = &gMissionPlanet[0];
for (x = 0.0f, i = 0; i < 7; i++, x += 24.0f + x2, ptr++) {
RCP_SetupDL(&gMasterDisp, 0x53);
@@ -5567,8 +5569,8 @@ void Map_801AA434(s32 arg0, f32 x, f32 y, s32 idx) {
Graphics_DisplaySmallText(x + 12.0f - Graphics_GetSmallTextWidth(sPlanetNames[idx]) * 0.5f, y - 8.0f, 1.0f, 1.0f,
sPlanetNames[idx]);
- Graphics_DisplaySmallNumber(x + 15.0f - ((func_hud_8008BCBC(D_ctx_80177B70[arg0]) - 1) * 8), y + 24.0f + 1.0f,
- D_ctx_80177B70[arg0]);
+ Graphics_DisplaySmallNumber(x + 15.0f - ((func_hud_8008BCBC(gMissionHitCount[arg0]) - 1) * 8), y + 24.0f + 1.0f,
+ gMissionHitCount[arg0]);
if (D_game_80161A34 == 7) {
temp = gMissionNumber;
@@ -5581,7 +5583,7 @@ void Map_801AA434(s32 arg0, f32 x, f32 y, s32 idx) {
mask = 0x00FF0000;
x2 = 0.0f;
for (i = 0; i < 3; i++, x2 += 9.0f) {
- if ((D_ctx_80177B50[arg0] & mask)) {
+ if ((gMissionTeamStatus[arg0] & mask)) {
RCP_SetupDL(&gMasterDisp, 0x53);
gDPSetPrimColor(gMasterDisp++, 0, 0, D_menu_801B6ADC[i], D_menu_801B6AE8[i], D_menu_801B6AF4[i], 255);
Graphics_DisplaySmallText((s32) x + x2 - 1.0f, (s32) y + 24.0f + 8.0f + 2.0f, 1.0f, 1.0f,
@@ -5753,7 +5755,7 @@ void Map_801AA778(s32 arg0, f32 x, f32 y, PlanetId planetId) {
break;
}
- if (D_ctx_80177BB0[arg0] != 0) {
+ if (gMissionMedal[arg0] != 0) {
Map_801AB17C(x, y, 0.0f);
}
}
@@ -6560,8 +6562,8 @@ void Map_801AD11C(void) {
var_t0 = 0;
if (gControllerPress[gMainController].button & A_BUTTON) {
- if ((D_game_80161A34 == 7) && (D_menu_801CD93C != 0) && (!D_menu_801CEFD0)) {
- func_8001D6DC(1);
+ if ((D_game_80161A34 == 7) && (sPrevMissionStatus != MISSION_COMPLETE) && (!D_menu_801CEFD0)) {
+ Audio_PlayMapMenuSfx(1);
D_menu_801CEFC4 = 1;
D_menu_801CEFD4 = 0;
D_menu_801CEFDC = 0;
@@ -6581,7 +6583,7 @@ void Map_801AD11C(void) {
if (D_menu_801CEFD0) {
AUDIO_PLAY_SFX(0x4900100A, gDefaultSfxSource, 4);
} else {
- func_8001D6DC(1);
+ Audio_PlayMapMenuSfx(1);
D_menu_801CEFC4 = 1;
D_menu_801CEFD4 = 0;
D_menu_801CEFDC = 0;
@@ -6620,11 +6622,11 @@ void Map_801AD11C(void) {
if (var_a1 < var_a2) {
var_a0 = var_a2;
}
- func_8001D15C(var_a0);
+ Audio_SetSfxMapModulation(var_a0);
}
if (D_menu_801CF014 == 0 && var_a3 == 1) {
- func_8001D10C(gDefaultSfxSource, 0x1100204C);
+ Audio_PlaySfxModulated(gDefaultSfxSource, 0x1100204C);
D_menu_801CF014 = 1;
}
diff --git a/src/overlays/ovl_menu/fox_option.c b/src/overlays/ovl_menu/fox_option.c
index af8ece76..d2c945dd 100644
--- a/src/overlays/ovl_menu/fox_option.c
+++ b/src/overlays/ovl_menu/fox_option.c
@@ -435,8 +435,8 @@ void Option_Setup(void) {
if ((D_game_80161A34 == 5) || (D_game_80161A34 == 8)) {
if (D_game_80161A34 == 8) {
- D_ctx_80177B90[gMissionNumber] = PLANET_VENOM;
- if (D_play_800D3180[LEVEL_VENOM_ANDROSS] == 1) {
+ gMissionPlanet[gMissionNumber] = PLANET_VENOM;
+ if (gLeveLClearStatus[LEVEL_VENOM_ANDROSS] == 1) {
gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].played = 1;
if (playedExpertMode) {
gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].expertClear = 1;
@@ -444,8 +444,8 @@ void Option_Setup(void) {
gSaveFile.save.data.planet[SAVE_SLOT_VENOM_1].normalClear = 1;
}
Save_Write();
- } else if (D_play_800D3180[LEVEL_VENOM_ANDROSS] == 2) {
- D_ctx_80177BB0[gMissionNumber] = 1;
+ } else if (gLeveLClearStatus[LEVEL_VENOM_ANDROSS] == 2) {
+ gMissionMedal[gMissionNumber] = 1;
gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].played = 1;
if (playedExpertMode) {
gSaveFile.save.data.planet[SAVE_SLOT_VENOM_2].expertClear = 1;
@@ -3836,9 +3836,9 @@ s32 Option_8019C8C4(void) {
s32 temp[10];
for (i = 0; i < gMissionNumber + 1; i++) {
- var_v0 += ((D_ctx_80177B50[i] & 0x00FF0000) >> 16) & 1;
- var_v0 += ((D_ctx_80177B50[i] & 0x0000FF00) >> 8) & 1;
- var_v0 += (D_ctx_80177B50[i] & 0x000000FF) & 1;
+ var_v0 += ((gMissionTeamStatus[i] & 0x00FF0000) >> 16) & 1;
+ var_v0 += ((gMissionTeamStatus[i] & 0x0000FF00) >> 8) & 1;
+ var_v0 += (gMissionTeamStatus[i] & 0x000000FF) & 1;
}
for (i = 0; i < 10; i++) {
@@ -4155,13 +4155,13 @@ void Option_8019D624(void) {
sp10A[10] = 0;
for (i = 0; i < 7; i++) {
- sp10A[10] |= (D_ctx_80177BB0[i] << i);
+ sp10A[10] |= (gMissionMedal[i] << i);
}
for (j = 0; j < 7; j++) {
var_s0[10][j].unk_C = 0;
- var_t2 = D_ctx_80177B70[j];
+ var_t2 = gMissionHitCount[j];
if (var_t2 > 255) {
var_t2 = var_t2 - 256;
@@ -4170,21 +4170,21 @@ void Option_8019D624(void) {
var_s0[10][j].unk_0 = var_t2;
- var_a0 = D_ctx_80177B90[j];
+ var_a0 = gMissionPlanet[j];
- if (D_ctx_80177B90[j] == PLANET_VENOM) {
+ if (gMissionPlanet[j] == PLANET_VENOM) {
var_a0 = SAVE_SLOT_VENOM_1;
}
- if (D_ctx_80177B90[j] == PLANET_SOLAR) {
+ if (gMissionPlanet[j] == PLANET_SOLAR) {
var_a0 = SAVE_SLOT_SOLAR;
}
var_s0[10][j].unk_8 = var_a0;
- var_s0[10][j].unk_D = ((D_ctx_80177B50[j] & 0x00FF0000) >> 16) & 1;
- var_s0[10][j].unk_F = ((D_ctx_80177B50[j] & 0x0000FF00) >> 8) & 1;
- var_s0[10][j].unk_E = (D_ctx_80177B50[j] & 0x000000FF) & 1;
+ var_s0[10][j].unk_D = ((gMissionTeamStatus[j] & 0x00FF0000) >> 16) & 1;
+ var_s0[10][j].unk_F = ((gMissionTeamStatus[j] & 0x0000FF00) >> 8) & 1;
+ var_s0[10][j].unk_E = (gMissionTeamStatus[j] & 0x000000FF) & 1;
}
for (i = 0; i < 10; i++) {
diff --git a/src/overlays/ovl_menu/fox_title.c b/src/overlays/ovl_menu/fox_title.c
index d6f6897c..21d2077d 100644
--- a/src/overlays/ovl_menu/fox_title.c
+++ b/src/overlays/ovl_menu/fox_title.c
@@ -1651,7 +1651,7 @@ void Title_8018B5C4(void) {
D_menu_801B7BEC = 0;
Title_8018B058();
- Audio_SetBaseSfxReverb(0x68);
+ Audio_SetEnvSfxReverb(104);
D_menu_801B82A8 = 30;
@@ -1861,7 +1861,7 @@ void Title_8018B5C4(void) {
D_menu_801B86AC);
if (D_menu_801B82B4 > 8) {
- Audio_SetBaseSfxReverb(0);
+ Audio_SetEnvSfxReverb(0);
D_menu_801B82C0 = 0;
D_menu_801B82C4 = 5;
}
diff --git a/src/sys/sys_fault.c b/src/sys/sys_fault.c
index 864a3be7..04dc5ea4 100644
--- a/src/sys/sys_fault.c
+++ b/src/sys/sys_fault.c
@@ -230,12 +230,12 @@ void Fault_ThreadEntry(void* arg0) {
var_s0 = 0;
var_s2 = 0;
- osSetEventMesg(OS_EVENT_CPU_BREAK, &gFaultMgr.msgQueue, (OSMesg) FAULT_MESG_BREAK);
- osSetEventMesg(OS_EVENT_FAULT, &gFaultMgr.msgQueue, (OSMesg) FAULT_MESG_FAULT);
+ osSetEventMesg(OS_EVENT_CPU_BREAK, &gFaultMgr.mesgQueue, (OSMesg) FAULT_MESG_BREAK);
+ osSetEventMesg(OS_EVENT_FAULT, &gFaultMgr.mesgQueue, (OSMesg) FAULT_MESG_FAULT);
sp40 = NULL;
while (sp40 == NULL) {
- osRecvMesg(&gFaultMgr.msgQueue, &sp44, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gFaultMgr.mesgQueue, &sp44);
sp40 = func_80007CEC();
}
@@ -244,8 +244,8 @@ void Fault_ThreadEntry(void* arg0) {
#if 1 // Turn this off for instant crash debugger (no button combination needed)
while (var_s5 == 0) {
- osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL);
- osRecvMesg(&gControllerMsgQueue, NULL, OS_MESG_BLOCK);
+ osSendMesg(&gSerialThreadMesgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_NOBLOCK);
+ MQ_WAIT_FOR_MESG(&gControllerMesgQueue, NULL);
Controller_UpdateInput();
switch (var_s0) {
case 0:
@@ -332,7 +332,7 @@ void Fault_Init(void) {
gFaultMgr.fb = (FrameBuffer*) (PHYS_TO_K0(osMemSize) - sizeof(FrameBuffer));
gFaultMgr.width = SCREEN_WIDTH;
gFaultMgr.height = SCREEN_HEIGHT;
- osCreateMesgQueue(&gFaultMgr.msgQueue, &gFaultMgr.msg, 1);
+ osCreateMesgQueue(&gFaultMgr.mesgQueue, &gFaultMgr.msg, 1);
osCreateThread(&gFaultMgr.thread, THREAD_ID_FAULT, Fault_ThreadEntry, 0, gFaultMgr.stack + sizeof(gFaultMgr.stack),
127);
osStartThread(&gFaultMgr.thread);
diff --git a/src/sys/sys_joybus.c b/src/sys/sys_joybus.c
index ea64bb6a..cbdbf1ce 100644
--- a/src/sys/sys_joybus.c
+++ b/src/sys/sys_joybus.c
@@ -88,33 +88,33 @@ void Controller_ReadData(void) {
}
} else {
osContStartReadData(&gSerialEventQueue);
- osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gSerialEventQueue, NULL);
osContGetReadData(sNextController);
}
- osSendMesg(&gControllerMsgQueue, (OSMesg) SI_CONT_READ_DONE, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gControllerMesgQueue, (OSMesg) SI_CONT_READ_DONE, OS_MESG_NOBLOCK);
}
void Save_ReadData(void) {
if ((gStartNMI == 0) && (Save_ReadEeprom(&gSaveIOBuffer) == 0)) {
- osSendMesg(&gSaveMsgQueue, (OSMesg) SI_SAVE_SUCCESS, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gSaveMesgQueue, (OSMesg) SI_SAVE_SUCCESS, OS_MESG_NOBLOCK);
return;
}
- osSendMesg(&gSaveMsgQueue, (OSMesg) SI_SAVE_FAILED, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gSaveMesgQueue, (OSMesg) SI_SAVE_FAILED, OS_MESG_NOBLOCK);
}
void Save_WriteData(void) {
if ((gStartNMI == 0) && (Save_WriteEeprom(&gSaveIOBuffer) == 0)) {
- osSendMesg(&gSaveMsgQueue, (OSMesg) SI_SAVE_SUCCESS, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gSaveMesgQueue, (OSMesg) SI_SAVE_SUCCESS, OS_MESG_NOBLOCK);
return;
}
- osSendMesg(&gSaveMsgQueue, (OSMesg) SI_SAVE_FAILED, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gSaveMesgQueue, (OSMesg) SI_SAVE_FAILED, OS_MESG_NOBLOCK);
}
void Controller_Rumble(void) {
s32 i;
osContStartQuery(&gSerialEventQueue);
- osRecvMesg(&gSerialEventQueue, NULL, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gSerialEventQueue, NULL);
osContGetQuery(sControllerStatus);
for (i = 0; i < 4; i++) {
diff --git a/src/sys/sys_lib.c b/src/sys/sys_lib.c
index 702c3a19..9360abc0 100644
--- a/src/sys/sys_lib.c
+++ b/src/sys/sys_lib.c
@@ -105,15 +105,15 @@ void Lib_DmaRead(void* src, void* dst, ptrdiff_t size) {
osInvalICache(dst, size);
osInvalDCache(dst, size);
while (size > 0x100) {
- osPiStartDma(&gDmaIOMsg, 0, 0, (uintptr_t) src, dst, 0x100, &gDmaMsgQueue);
+ osPiStartDma(&gDmaIOMsg, 0, 0, (uintptr_t) src, dst, 0x100, &gDmaMesgQueue);
size -= 0x100;
src = (void*) ((uintptr_t) src + 0x100);
dst = (void*) ((uintptr_t) dst + 0x100);
- osRecvMesg(&gDmaMsgQueue, NULL, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gDmaMesgQueue, NULL);
}
if (size != 0) {
- osPiStartDma(&gDmaIOMsg, 0, 0, (uintptr_t) src, dst, size, &gDmaMsgQueue);
- osRecvMesg(&gDmaMsgQueue, NULL, OS_MESG_BLOCK);
+ osPiStartDma(&gDmaIOMsg, 0, 0, (uintptr_t) src, dst, size, &gDmaMesgQueue);
+ MQ_WAIT_FOR_MESG(&gDmaMesgQueue, NULL);
}
}
diff --git a/src/sys/sys_main.c b/src/sys/sys_main.c
index 7ba1f708..1d16f407 100644
--- a/src/sys/sys_main.c
+++ b/src/sys/sys_main.c
@@ -12,32 +12,32 @@ u32 gSegments[16]; // 800E1FD0
OSMesgQueue gPiMgrCmdQueue; // 800E2010
OSMesg sPiMgrCmdBuff[50]; // 800E2028
-OSMesgQueue gDmaMsgQueue;
+OSMesgQueue gDmaMesgQueue;
void* sDmaMsgBuff[1];
OSIoMesg gDmaIOMsg;
OSMesgQueue gSerialEventQueue;
void* sSerialEventBuff[1];
-OSMesgQueue gMainThreadMsgQueue;
+OSMesgQueue gMainThreadMesgQueue;
void* sMainThreadMsgBuff[32];
-OSMesgQueue gTaskMsgQueue;
+OSMesgQueue gTaskMesgQueue;
void* sTaskMsgBuff[16];
-OSMesgQueue gAudioVImsgQueue;
+OSMesgQueue gAudioVImesgQueue;
void* sAudioVImsgBuff[1];
-OSMesgQueue gAudioTaskMsgQueue;
+OSMesgQueue gAudioTaskMesgQueue;
void* sAudioTaskMsgBuff[1];
-OSMesgQueue gGfxVImsgQueue;
+OSMesgQueue gGfxVImesgQueue;
void* sGfxVImsgBuff[4];
-OSMesgQueue gGfxTaskMsgQueue;
+OSMesgQueue gGfxTaskMesgQueue;
void* sGfxTaskMsgBuff[2];
-OSMesgQueue gSerialThreadMsgQueue;
+OSMesgQueue gSerialThreadMesgQueue;
void* sSerialThreadMsgBuff[8];
-OSMesgQueue gControllerMsgQueue;
+OSMesgQueue gControllerMesgQueue;
void* sControllerMsgBuff[1];
-OSMesgQueue gSaveMsgQueue;
+OSMesgQueue gSaveMesgQueue;
void* sSaveMsgBuff[1];
-OSMesgQueue gTimerTaskMsgQueue;
+OSMesgQueue gTimerTaskMesgQueue;
void* sTimerTaskMsgBuff[16];
-OSMesgQueue gTimerWaitMsgQueue;
+OSMesgQueue gTimerWaitMesgQueue;
void* sTimerWaitMsgBuff[1];
GfxPool gGfxPools[2];
@@ -107,28 +107,28 @@ void Audio_ThreadEntry(void* arg0) {
Audio_InitSounds();
task = AudioThread_CreateTask();
if (task != NULL) {
- task->msgQueue = &gAudioTaskMsgQueue;
+ task->mesgQueue = &gAudioTaskMesgQueue;
task->msg = (OSMesg) TASK_MESG_1;
osWritebackDCacheAll();
- osSendMesg(&gTaskMsgQueue, task, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gTaskMesgQueue, task, OS_MESG_NOBLOCK);
}
while (1) {
task = AudioThread_CreateTask();
if (task != NULL) {
- task->msgQueue = &gAudioTaskMsgQueue;
+ task->mesgQueue = &gAudioTaskMesgQueue;
task->msg = (OSMesg) TASK_MESG_1;
osWritebackDCacheAll();
}
- osRecvMesg(&gAudioTaskMsgQueue, NULL, OS_MESG_NOBLOCK);
+ MQ_GET_MESG(&gAudioTaskMesgQueue, NULL);
if (task != NULL) {
- osSendMesg(&gTaskMsgQueue, task, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gTaskMesgQueue, task, OS_MESG_NOBLOCK);
}
- osRecvMesg(&gAudioVImsgQueue, NULL, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gAudioVImesgQueue, NULL);
}
}
void Graphics_SetTask(void) {
- gGfxTask->msgQueue = &gGfxTaskMsgQueue;
+ gGfxTask->mesgQueue = &gGfxTaskMesgQueue;
gGfxTask->msg = (OSMesg) TASK_MESG_2;
gGfxTask->task.t.type = M_GFXTASK;
gGfxTask->task.t.flags = 0;
@@ -147,7 +147,7 @@ void Graphics_SetTask(void) {
gGfxTask->task.t.yield_data_ptr = (u64*) &gOSYieldData;
gGfxTask->task.t.yield_data_size = OS_YIELD_DATA_SIZE;
osWritebackDCacheAll();
- osSendMesg(&gTaskMsgQueue, gGfxTask, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gTaskMesgQueue, gGfxTask, OS_MESG_NOBLOCK);
}
void Graphics_InitializeTask(u32 frameCount) {
@@ -200,7 +200,7 @@ void SerialInterface_ThreadEntry(void* arg0) {
Controller_Init();
while (1) {
- osRecvMesg(&gSerialThreadMsgQueue, &sp34, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gSerialThreadMesgQueue, &sp34);
switch ((s32) sp34) {
case SI_READ_CONTROLLER:
@@ -223,7 +223,7 @@ void Timer_ThreadEntry(void* arg0) {
void* sp24;
while (1) {
- osRecvMesg(&gTimerTaskMsgQueue, &sp24, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gTimerTaskMesgQueue, &sp24);
Timer_CompleteTask(sp24);
}
}
@@ -234,7 +234,7 @@ void Graphics_ThreadEntry(void* arg0) {
u8 validVIsPerFrame;
Game_Initialize();
- osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gSerialThreadMesgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_NOBLOCK);
Graphics_InitializeTask(gSysFrameCount);
{
gSPSegment(gUnkDisp1++, 0, 0);
@@ -250,10 +250,10 @@ void Graphics_ThreadEntry(void* arg0) {
while (1) {
gSysFrameCount++;
Graphics_InitializeTask(gSysFrameCount);
- osRecvMesg(&gControllerMsgQueue, NULL, OS_MESG_BLOCK);
- osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_RUMBLE, OS_MESG_PRI_NORMAL);
+ MQ_WAIT_FOR_MESG(&gControllerMesgQueue, NULL);
+ osSendMesg(&gSerialThreadMesgQueue, (OSMesg) SI_RUMBLE, OS_MESG_NOBLOCK);
Controller_UpdateInput();
- osSendMesg(&gSerialThreadMsgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gSerialThreadMesgQueue, (OSMesg) SI_READ_CONTROLLER, OS_MESG_NOBLOCK);
if (gControllerPress[3].button & U_JPAD) {
Main_SetVIMode();
}
@@ -270,7 +270,7 @@ void Graphics_ThreadEntry(void* arg0) {
gDPFullSync(gMasterDisp++);
gSPEndDisplayList(gMasterDisp++);
}
- osRecvMesg(&gGfxTaskMsgQueue, NULL, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gGfxTaskMesgQueue, NULL);
Graphics_SetTask();
if (gFillScreen == 0) {
osViSwapBuffer(&gFrameBuffers[(gSysFrameCount - 1) % 3]);
@@ -278,9 +278,9 @@ void Graphics_ThreadEntry(void* arg0) {
func_80007FE4(&gFrameBuffers[(gSysFrameCount - 1) % 3], SCREEN_WIDTH, 16);
visPerFrame = MIN(gVIsPerFrame, 4);
- validVIsPerFrame = MAX(visPerFrame, gGfxVImsgQueue.validCount + 1);
+ validVIsPerFrame = MAX(visPerFrame, gGfxVImesgQueue.validCount + 1);
for (i = 0; i < validVIsPerFrame; i += 1) { // Can't be ++
- osRecvMesg(&gGfxVImsgQueue, NULL, OS_MESG_BLOCK);
+ MQ_WAIT_FOR_MESG(&gGfxVImesgQueue, NULL);
}
Audio_Update();
@@ -288,38 +288,39 @@ void Graphics_ThreadEntry(void* arg0) {
}
void Main_InitMesgQueues(void) {
- osCreateMesgQueue(&gDmaMsgQueue, sDmaMsgBuff, ARRAY_COUNT(sDmaMsgBuff));
- osCreateMesgQueue(&gTaskMsgQueue, sTaskMsgBuff, ARRAY_COUNT(sTaskMsgBuff));
- osCreateMesgQueue(&gAudioVImsgQueue, sAudioVImsgBuff, ARRAY_COUNT(sAudioVImsgBuff));
- osCreateMesgQueue(&gAudioTaskMsgQueue, sAudioTaskMsgBuff, ARRAY_COUNT(sAudioTaskMsgBuff));
- osCreateMesgQueue(&gGfxVImsgQueue, sGfxVImsgBuff, ARRAY_COUNT(sGfxVImsgBuff));
- osCreateMesgQueue(&gGfxTaskMsgQueue, sGfxTaskMsgBuff, ARRAY_COUNT(sGfxTaskMsgBuff));
+ osCreateMesgQueue(&gDmaMesgQueue, sDmaMsgBuff, ARRAY_COUNT(sDmaMsgBuff));
+ osCreateMesgQueue(&gTaskMesgQueue, sTaskMsgBuff, ARRAY_COUNT(sTaskMsgBuff));
+ osCreateMesgQueue(&gAudioVImesgQueue, sAudioVImsgBuff, ARRAY_COUNT(sAudioVImsgBuff));
+ osCreateMesgQueue(&gAudioTaskMesgQueue, sAudioTaskMsgBuff, ARRAY_COUNT(sAudioTaskMsgBuff));
+ osCreateMesgQueue(&gGfxVImesgQueue, sGfxVImsgBuff, ARRAY_COUNT(sGfxVImsgBuff));
+ osCreateMesgQueue(&gGfxTaskMesgQueue, sGfxTaskMsgBuff, ARRAY_COUNT(sGfxTaskMsgBuff));
osCreateMesgQueue(&gSerialEventQueue, sSerialEventBuff, ARRAY_COUNT(sSerialEventBuff));
osSetEventMesg(OS_EVENT_SI, &gSerialEventQueue, NULL);
- osCreateMesgQueue(&gMainThreadMsgQueue, sMainThreadMsgBuff, ARRAY_COUNT(sMainThreadMsgBuff));
- osViSetEvent(&gMainThreadMsgQueue, (OSMesg) EVENT_MESG_VI, 1);
- osSetEventMesg(OS_EVENT_SP, &gMainThreadMsgQueue, (OSMesg) EVENT_MESG_SP);
- osSetEventMesg(OS_EVENT_DP, &gMainThreadMsgQueue, (OSMesg) EVENT_MESG_DP);
- osSetEventMesg(OS_EVENT_PRENMI, &gMainThreadMsgQueue, (OSMesg) EVENT_MESG_PRENMI);
- osCreateMesgQueue(&gTimerTaskMsgQueue, sTimerTaskMsgBuff, ARRAY_COUNT(sTimerTaskMsgBuff));
- osCreateMesgQueue(&gTimerWaitMsgQueue, sTimerWaitMsgBuff, ARRAY_COUNT(sTimerWaitMsgBuff));
- osCreateMesgQueue(&gSerialThreadMsgQueue, sSerialThreadMsgBuff, ARRAY_COUNT(sSerialThreadMsgBuff));
- osCreateMesgQueue(&gControllerMsgQueue, sControllerMsgBuff, ARRAY_COUNT(sControllerMsgBuff));
- osCreateMesgQueue(&gSaveMsgQueue, sSaveMsgBuff, ARRAY_COUNT(sSaveMsgBuff));
+ osCreateMesgQueue(&gMainThreadMesgQueue, sMainThreadMsgBuff, ARRAY_COUNT(sMainThreadMsgBuff));
+ osViSetEvent(&gMainThreadMesgQueue, (OSMesg) EVENT_MESG_VI, 1);
+ osSetEventMesg(OS_EVENT_SP, &gMainThreadMesgQueue, (OSMesg) EVENT_MESG_SP);
+ osSetEventMesg(OS_EVENT_DP, &gMainThreadMesgQueue, (OSMesg) EVENT_MESG_DP);
+ osSetEventMesg(OS_EVENT_PRENMI, &gMainThreadMesgQueue, (OSMesg) EVENT_MESG_PRENMI);
+ osCreateMesgQueue(&gTimerTaskMesgQueue, sTimerTaskMsgBuff, ARRAY_COUNT(sTimerTaskMsgBuff));
+ osCreateMesgQueue(&gTimerWaitMesgQueue, sTimerWaitMsgBuff, ARRAY_COUNT(sTimerWaitMsgBuff));
+ osCreateMesgQueue(&gSerialThreadMesgQueue, sSerialThreadMsgBuff, ARRAY_COUNT(sSerialThreadMsgBuff));
+ osCreateMesgQueue(&gControllerMesgQueue, sControllerMsgBuff, ARRAY_COUNT(sControllerMsgBuff));
+ osCreateMesgQueue(&gSaveMesgQueue, sSaveMsgBuff, ARRAY_COUNT(sSaveMsgBuff));
}
void Main_HandleRDP(void) {
- SPTask** var_v1 = sGfxTasks;
+ SPTask** task = sGfxTasks;
u8 i;
- if ((*var_v1)->msgQueue != NULL) {
- osSendMesg((*var_v1)->msgQueue, (*var_v1)->msg, OS_MESG_PRI_NORMAL);
+ if ((*task)->mesgQueue != NULL) {
+ osSendMesg((*task)->mesgQueue, (*task)->msg, OS_MESG_NOBLOCK);
}
- (*var_v1)->state = SPTASK_STATE_FINISHED_DP;
- for (i = 0; i < ARRAY_COUNT(sGfxTasks) - 1; i += 1, var_v1++) {
- *var_v1 = *(var_v1 + 1);
+ (*task)->state = SPTASK_STATE_FINISHED_DP;
+
+ for (i = 0; i < ARRAY_COUNT(sGfxTasks) - 1; i += 1, task++) {
+ *task = *(task + 1);
}
- *var_v1 = NULL;
+ *task = NULL;
}
void Main_HandleRSP(void) {
@@ -333,8 +334,8 @@ void Main_HandleRSP(void) {
} else {
task->state = SPTASK_STATE_FINISHED;
if (task->task.t.type == M_AUDTASK) {
- if (task->msgQueue != NULL) {
- osSendMesg(task->msgQueue, task->msg, OS_MESG_PRI_NORMAL);
+ if (task->mesgQueue != NULL) {
+ osSendMesg(task->mesgQueue, task->msg, OS_MESG_NOBLOCK);
}
sAudioTasks[0] = NULL;
}
@@ -361,7 +362,7 @@ void Main_GetNewTasks(void) {
newAudioTask = sNewAudioTasks;
newGfxTask = sNewGfxTasks;
- while (osRecvMesg(&gTaskMsgQueue, &spTaskMsg, OS_MESG_NOBLOCK) != MSG_QUEUE_EMPTY) {
+ while (MQ_GET_MESG(&gTaskMesgQueue, &spTaskMsg)) {
newTask = (SPTask*) spTaskMsg;
newTask->state = SPTASK_STATE_NOT_STARTED;
@@ -421,7 +422,7 @@ void Main_StartNextTask(void) {
}
void Main_ThreadEntry(void* arg0) {
- OSMesg ogMsg;
+ OSMesg osMesg;
u8 mesg;
osCreateThread(&gAudioThread, THREAD_ID_AUDIO, Audio_ThreadEntry, arg0,
@@ -440,13 +441,13 @@ void Main_ThreadEntry(void* arg0) {
Main_InitMesgQueues();
while (true) {
- osRecvMesg(&gMainThreadMsgQueue, &ogMsg, OS_MESG_BLOCK);
- mesg = (u32) ogMsg;
+ MQ_WAIT_FOR_MESG(&gMainThreadMesgQueue, &osMesg);
+ mesg = (u32) osMesg;
switch (mesg) {
case EVENT_MESG_VI:
- osSendMesg(&gAudioVImsgQueue, (OSMesg) EVENT_MESG_VI, OS_MESG_PRI_NORMAL);
- osSendMesg(&gGfxVImsgQueue, (OSMesg) EVENT_MESG_VI, OS_MESG_PRI_NORMAL);
+ osSendMesg(&gAudioVImesgQueue, (OSMesg) EVENT_MESG_VI, OS_MESG_NOBLOCK);
+ osSendMesg(&gGfxVImesgQueue, (OSMesg) EVENT_MESG_VI, OS_MESG_NOBLOCK);
Main_GetNewTasks();
break;
case EVENT_MESG_SP:
diff --git a/src/sys/sys_timer.c b/src/sys/sys_timer.c
index 6e33932e..c3ffaa17 100644
--- a/src/sys/sys_timer.c
+++ b/src/sys/sys_timer.c
@@ -23,7 +23,7 @@ s32 Timer_CreateTask(u64 time, TimerAction action, s32* address, s32 value) {
task->action = action;
task->address = address;
task->value = value;
- return osSetTimer(&task->timer, time, 0, &gTimerTaskMsgQueue, task);
+ return osSetTimer(&task->timer, time, 0, &gTimerTaskMesgQueue, task);
}
void Timer_Increment(s32* address, s32 value) {
@@ -45,6 +45,6 @@ void Timer_Wait(u64 time) {
OSTimer timer;
OSMesg dummy;
- osSetTimer(&timer, time, 0, &gTimerWaitMsgQueue, NULL);
- osRecvMesg(&gTimerWaitMsgQueue, &dummy, OS_MESG_BLOCK);
+ osSetTimer(&timer, time, 0, &gTimerWaitMesgQueue, NULL);
+ MQ_WAIT_FOR_MESG(&gTimerWaitMesgQueue, &dummy);
}
diff --git a/tools/Torch b/tools/Torch
-Subproject a72020cca7f1498f73d42c71e694fd114843fe7
+Subproject df54367b676f44d2b925e681ae05eef665f7c45