summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfig02 <fig02srl@gmail.com>2025-04-05 19:16:52 -0400
committerGitHub <noreply@github.com>2025-04-05 19:16:52 -0400
commit5133db15a3d3f554e7936a600ff358a6aa38540a (patch)
treeb94d427b1ae5dff84d73812ad02c984b763564d8
parent1beeff96583e30f6a61960446a97b3583ff2ac73 (diff)
Remove functions.h (#2501)
* split most of functions.h * osdriverominit * forgot include * fix * remove functions.h * temporary fix for fix_bss * fix bss * revert fix_bss.py change
-rw-r--r--include/flag_set.h8
-rw-r--r--include/functions.h84
-rw-r--r--include/global.h1
-rw-r--r--include/idle.h6
-rw-r--r--include/inflate.h10
-rw-r--r--include/is_debug.h18
-rw-r--r--include/libu64/rcp_utils.h6
-rw-r--r--include/libu64/runtime.h8
-rw-r--r--include/memory_utils.h9
-rw-r--r--include/mio0.h8
-rw-r--r--include/sys_cfb.h10
-rw-r--r--include/transition_circle.h55
-rw-r--r--include/transition_fade.h24
-rw-r--r--include/transition_tile.h30
-rw-r--r--include/transition_triforce.h27
-rw-r--r--include/transition_wipe.h30
-rw-r--r--include/ultra64.h1
-rw-r--r--include/yaz0.h10
-rw-r--r--include/z64play.h1
-rw-r--r--include/z64transition.h4
-rw-r--r--include/z64transition_instances.h98
-rw-r--r--src/boot/boot_main.c2
-rw-r--r--src/boot/idle.c1
-rw-r--r--src/boot/inflate.c2
-rw-r--r--src/boot/is_debug.c3
-rw-r--r--src/boot/z_std_dma.c10
-rw-r--r--src/code/fault_gc_drawer.c4
-rw-r--r--src/code/flg_set.c2
-rw-r--r--src/code/graph.c1
-rw-r--r--src/code/main.c5
-rw-r--r--src/code/sched.c1
-rw-r--r--src/code/sys_cfb.c3
-rw-r--r--src/code/z_bgcheck.c2
-rw-r--r--src/code/z_camera.c2
-rw-r--r--src/code/z_collision_check.c2
-rw-r--r--src/code/z_demo.c1
-rw-r--r--src/code/z_en_item00.c2
-rw-r--r--src/code/z_fbdemo.c2
-rw-r--r--src/code/z_fbdemo_circle.c2
-rw-r--r--src/code/z_fbdemo_fade.c3
-rw-r--r--src/code/z_fbdemo_triforce.c2
-rw-r--r--src/code/z_fbdemo_wipe1.c2
-rw-r--r--src/code/z_kankyo.c2
-rw-r--r--src/code/z_message.c1
-rw-r--r--src/code/z_parameter.c1
-rw-r--r--src/code/z_play.c5
-rw-r--r--src/code/z_sram.c1
-rw-r--r--src/libu64/rcp_utils.c5
-rw-r--r--src/libu64/runtime.c2
-rw-r--r--src/overlays/gamestates/ovl_file_choose/z_file_choose.c1
50 files changed, 326 insertions, 194 deletions
diff --git a/include/flag_set.h b/include/flag_set.h
new file mode 100644
index 000000000..df9262ac7
--- /dev/null
+++ b/include/flag_set.h
@@ -0,0 +1,8 @@
+#ifndef FLAG_SET_H
+#define FLAG_SET_H
+
+struct PlayState;
+
+void FlagSet_Update(struct PlayState* play);
+
+#endif
diff --git a/include/functions.h b/include/functions.h
deleted file mode 100644
index 1fe27acb2..000000000
--- a/include/functions.h
+++ /dev/null
@@ -1,84 +0,0 @@
-#ifndef FUNCTIONS_H
-#define FUNCTIONS_H
-
-#include "z64.h"
-#include "macros.h"
-
-void Idle_ThreadEntry(void* arg);
-
-#if !PLATFORM_IQUE
-void Yaz0_Decompress(uintptr_t romStart, u8* dst, size_t size);
-#else
-void gzip_decompress(uintptr_t romStart, u8* dst, size_t size);
-#endif
-
-#if DEBUG_FEATURES
-void isPrintfInit(void);
-#endif
-void rmonPrintf(const char* fmt, ...);
-
-#if DEBUG_FEATURES
-void* is_proutSyncPrintf(void* arg, const char* str, size_t count);
-NORETURN void func_80002384(const char* exp, const char* file, int line);
-#endif
-
-OSPiHandle* osDriveRomInit(void);
-
-void Mio0_Decompress(u8* src, u8* dst);
-
-void FlagSet_Update(PlayState* play);
-
-void* MemCpy(void* dest, const void* src, s32 len);
-
-void TransitionTile_Destroy(TransitionTile* this);
-TransitionTile* TransitionTile_Init(TransitionTile* this, s32 cols, s32 rows);
-void TransitionTile_Draw(TransitionTile* this, Gfx** gfxP);
-void TransitionTile_Update(TransitionTile* this);
-
-void TransitionTriforce_Start(void* thisx);
-void* TransitionTriforce_Init(void* thisx);
-void TransitionTriforce_Destroy(void* thisx);
-void TransitionTriforce_Update(void* thisx, s32 updateRate);
-void TransitionTriforce_SetColor(void* thisx, u32 color);
-void TransitionTriforce_SetType(void* thisx, s32 type);
-void TransitionTriforce_Draw(void* thisx, Gfx** gfxP);
-s32 TransitionTriforce_IsDone(void* thisx);
-
-void TransitionWipe_Start(void* thisx);
-void* TransitionWipe_Init(void* thisx);
-void TransitionWipe_Destroy(void* thisx);
-void TransitionWipe_Update(void* thisx, s32 updateRate);
-void TransitionWipe_Draw(void* thisx, Gfx** gfxP);
-s32 TransitionWipe_IsDone(void* thisx);
-void TransitionWipe_SetType(void* thisx, s32 type);
-void TransitionWipe_SetColor(void* thisx, u32 color);
-
-void TransitionCircle_Start(void* thisx);
-void* TransitionCircle_Init(void* thisx);
-void TransitionCircle_Destroy(void* thisx);
-void TransitionCircle_Update(void* thisx, s32 updateRate);
-void TransitionCircle_Draw(void* thisx, Gfx** gfxP);
-s32 TransitionCircle_IsDone(void* thisx);
-void TransitionCircle_SetType(void* thisx, s32 type);
-void TransitionCircle_SetColor(void* thisx, u32 color);
-void TransitionCircle_SetUnkColor(void* thisx, u32 color);
-
-void TransitionFade_Start(void* thisx);
-void* TransitionFade_Init(void* thisx);
-void TransitionFade_Destroy(void* thisx);
-void TransitionFade_Update(void* thisx, s32 updateRate);
-void TransitionFade_Draw(void* thisx, Gfx** gfxP);
-s32 TransitionFade_IsDone(void* thisx);
-void TransitionFade_SetColor(void* thisx, u32 color);
-void TransitionFade_SetType(void* thisx, s32 type);
-
-void SysCfb_Init(s32 n64dd);
-void* SysCfb_GetFbPtr(s32 idx);
-void* SysCfb_GetFbEnd(void);
-
-void RcpUtils_PrintRegisterStatus(void);
-void RcpUtils_Reset(void);
-
-void Runtime_Init(void* start, u32 size);
-
-#endif
diff --git a/include/global.h b/include/global.h
index d2a081a5f..902ddad84 100644
--- a/include/global.h
+++ b/include/global.h
@@ -1,7 +1,6 @@
#ifndef GLOBAL_H
#define GLOBAL_H
-#include "functions.h"
#include "variables.h"
#include "macros.h"
#include "versions.h"
diff --git a/include/idle.h b/include/idle.h
new file mode 100644
index 000000000..03dfa5180
--- /dev/null
+++ b/include/idle.h
@@ -0,0 +1,6 @@
+#ifndef IDLE_H
+#define IDLE_H
+
+void Idle_ThreadEntry(void* arg);
+
+#endif
diff --git a/include/inflate.h b/include/inflate.h
new file mode 100644
index 000000000..f26f7e496
--- /dev/null
+++ b/include/inflate.h
@@ -0,0 +1,10 @@
+#ifndef INFLATE_H
+#define INFLATE_H
+
+#include "libc/stddef.h"
+#include "libc/stdint.h"
+#include "ultra64.h"
+
+void gzip_decompress(uintptr_t romStart, u8* dst, size_t size);
+
+#endif
diff --git a/include/is_debug.h b/include/is_debug.h
new file mode 100644
index 000000000..e5f03bb78
--- /dev/null
+++ b/include/is_debug.h
@@ -0,0 +1,18 @@
+#ifndef IS_DEBUG_H
+#define IS_DEBUG_H
+
+#include "libc/stddef.h"
+#include "attributes.h"
+
+#if DEBUG_FEATURES
+void isPrintfInit(void);
+#endif
+
+void rmonPrintf(const char* fmt, ...);
+
+#if DEBUG_FEATURES
+void* is_proutSyncPrintf(void* arg, const char* str, size_t count);
+NORETURN void func_80002384(const char* exp, const char* file, int line);
+#endif
+
+#endif
diff --git a/include/libu64/rcp_utils.h b/include/libu64/rcp_utils.h
new file mode 100644
index 000000000..758230514
--- /dev/null
+++ b/include/libu64/rcp_utils.h
@@ -0,0 +1,6 @@
+#ifndef LIBU64_RCP_UTILS_H
+#define LIBU64_RCP_UTILS_H
+
+void RcpUtils_Reset(void);
+
+#endif
diff --git a/include/libu64/runtime.h b/include/libu64/runtime.h
new file mode 100644
index 000000000..7df947cef
--- /dev/null
+++ b/include/libu64/runtime.h
@@ -0,0 +1,8 @@
+#ifndef LIBU64_RUNTIME_H
+#define LIBU64_RUNTIME_H
+
+#include "ultra64.h"
+
+void Runtime_Init(void* start, u32 size);
+
+#endif
diff --git a/include/memory_utils.h b/include/memory_utils.h
new file mode 100644
index 000000000..7a8d9aca9
--- /dev/null
+++ b/include/memory_utils.h
@@ -0,0 +1,9 @@
+#ifndef MEMORY_UTILS_H
+#define MEMORY_UTILS_H
+
+#include "ultra64.h"
+
+void* MemCpy(void* dest, const void* src, s32 len);
+void* MemSet(void* dest, s32 val, s32 len);
+
+#endif
diff --git a/include/mio0.h b/include/mio0.h
new file mode 100644
index 000000000..d350b4555
--- /dev/null
+++ b/include/mio0.h
@@ -0,0 +1,8 @@
+#ifndef MIO0_H
+#define MIO0_H
+
+#include "ultra64.h"
+
+void Mio0_Decompress(u8* src, u8* dst);
+
+#endif
diff --git a/include/sys_cfb.h b/include/sys_cfb.h
new file mode 100644
index 000000000..5b7039175
--- /dev/null
+++ b/include/sys_cfb.h
@@ -0,0 +1,10 @@
+#ifndef SYS_CFB_H
+#define SYS_CFB_H
+
+#include "ultra64.h"
+
+void SysCfb_Init(s32 n64dd);
+void* SysCfb_GetFbPtr(s32 idx);
+void* SysCfb_GetFbEnd(void);
+
+#endif
diff --git a/include/transition_circle.h b/include/transition_circle.h
new file mode 100644
index 000000000..23dec1d9d
--- /dev/null
+++ b/include/transition_circle.h
@@ -0,0 +1,55 @@
+#ifndef TRANSITION_CIRCLE_H
+#define TRANSITION_CIRCLE_H
+
+#include "ultra64.h"
+#include "color.h"
+
+typedef enum TransitionCircleAppearance {
+ /* 0 */ TCA_NORMAL,
+ /* 1 */ TCA_WAVE,
+ /* 2 */ TCA_RIPPLE,
+ /* 3 */ TCA_STARBURST
+} TransitionCircleAppearance;
+
+typedef enum TransitionCircleColor {
+ /* 0 */ TCC_BLACK,
+ /* 1 */ TCC_WHITE,
+ /* 2 */ TCC_GRAY,
+ /* 3 */ TCC_SPECIAL // color varies depending on appearance. unused and appears broken
+} TransitionCircleColor;
+
+typedef enum TransitionCircleSpeed {
+ /* 0 */ TCS_FAST,
+ /* 1 */ TCS_SLOW
+} TransitionCircleSpeed;
+
+typedef struct TransitionCircle {
+ /* 0x000 */ Color_RGBA8_u32 color;
+ /* 0x004 */ Color_RGBA8_u32 unkColor;
+ /* 0x008 */ s32 texX;
+ /* 0x00C */ s32 texY;
+ /* 0x010 */ s32 speed;
+ /* 0x014 */ u8 direction;
+ /* 0x015 */ u8 colorType;
+ /* 0x016 */ u8 speedType;
+ /* 0x017 */ u8 appearanceType;
+ /* 0x018 */ u8 isDone;
+ /* 0x019 */ u8 frame;
+ /* 0x01A */ u16 normal;
+ /* 0x020 */ Mtx projection;
+ /* 0x060 */ Mtx lookAt;
+ /* 0x0A0 */ void* texture;
+ /* 0x0A8 */ Mtx modelView[2][3];
+} TransitionCircle; // size = 0x228
+
+void TransitionCircle_Start(void* thisx);
+void* TransitionCircle_Init(void* thisx);
+void TransitionCircle_Destroy(void* thisx);
+void TransitionCircle_Update(void* thisx, s32 updateRate);
+void TransitionCircle_Draw(void* thisx, Gfx** gfxP);
+s32 TransitionCircle_IsDone(void* thisx);
+void TransitionCircle_SetType(void* thisx, s32 type);
+void TransitionCircle_SetColor(void* thisx, u32 color);
+void TransitionCircle_SetUnkColor(void* thisx, u32 color);
+
+#endif
diff --git a/include/transition_fade.h b/include/transition_fade.h
new file mode 100644
index 000000000..be4e575e0
--- /dev/null
+++ b/include/transition_fade.h
@@ -0,0 +1,24 @@
+#ifndef TRANSITION_FADE_H
+#define TRANSITION_FADE_H
+
+#include "ultra64.h"
+#include "color.h"
+
+typedef struct TransitionFade {
+ /* 0x000 */ u8 type;
+ /* 0x001 */ u8 isDone;
+ /* 0x002 */ u8 direction;
+ /* 0x004 */ Color_RGBA8_u32 color;
+ /* 0x008 */ u16 timer;
+} TransitionFade; // size = 0xC
+
+void TransitionFade_Start(void* thisx);
+void* TransitionFade_Init(void* thisx);
+void TransitionFade_Destroy(void* thisx);
+void TransitionFade_Update(void* thisx, s32 updateRate);
+void TransitionFade_Draw(void* thisx, Gfx** gfxP);
+s32 TransitionFade_IsDone(void* thisx);
+void TransitionFade_SetColor(void* thisx, u32 color);
+void TransitionFade_SetType(void* thisx, s32 type);
+
+#endif
diff --git a/include/transition_tile.h b/include/transition_tile.h
new file mode 100644
index 000000000..14191f3fe
--- /dev/null
+++ b/include/transition_tile.h
@@ -0,0 +1,30 @@
+#ifndef TRANSITION_TILE_H
+#define TRANSITION_TILE_H
+
+#include "ultra64.h"
+
+typedef struct TransitionTileVtxData {
+ /* 0x0 */ f32 x;
+ /* 0x4 */ f32 y;
+} TransitionTileVtxData; // size = 0x8
+
+typedef struct TransitionTile {
+ /* 0x00 */ s32 cols;
+ /* 0x04 */ s32 rows;
+ /* 0x08 */ s32 frame;
+ /* 0x0C */ TransitionTileVtxData* vtxData;
+ /* 0x10 */ Vtx* vtxFrame1;
+ /* 0x14 */ Vtx* vtxFrame2;
+ /* 0x18 */ Mtx projection;
+ /* 0x58 */ Mtx modelView;
+ /* 0x98 */ Mtx unk_98;
+ /* 0xD8 */ Gfx* gfx; // "gfxtbl"
+ /* 0xDC */ u16* zBuffer;
+} TransitionTile; // size = 0xE0
+
+TransitionTile* TransitionTile_Init(TransitionTile* this, s32 cols, s32 rows);
+void TransitionTile_Destroy(TransitionTile* this);
+void TransitionTile_Update(TransitionTile* this);
+void TransitionTile_Draw(TransitionTile* this, Gfx** gfxP);
+
+#endif
diff --git a/include/transition_triforce.h b/include/transition_triforce.h
new file mode 100644
index 000000000..85eb1597e
--- /dev/null
+++ b/include/transition_triforce.h
@@ -0,0 +1,27 @@
+#ifndef TRANSITION_TRIFORCE_H
+#define TRANSITION_TRIFORCE_H
+
+#include "ultra64.h"
+#include "color.h"
+
+typedef struct TransitionTriforce {
+ /* 0x000 */ Color_RGBA8_u32 color;
+ /* 0x004 */ f32 transPos;
+ /* 0x008 */ f32 step;
+ /* 0x00C */ s32 state;
+ /* 0x010 */ s32 type;
+ /* 0x018 */ Mtx projection;
+ /* 0x058 */ s32 frame;
+ /* 0x060 */ Mtx modelView[2][3];
+} TransitionTriforce; // size = 0x1E0
+
+void TransitionTriforce_Start(void* thisx);
+void* TransitionTriforce_Init(void* thisx);
+void TransitionTriforce_Destroy(void* thisx);
+void TransitionTriforce_Update(void* thisx, s32 updateRate);
+void TransitionTriforce_SetColor(void* thisx, u32 color);
+void TransitionTriforce_SetType(void* thisx, s32 type);
+void TransitionTriforce_Draw(void* thisx, Gfx** gfxP);
+s32 TransitionTriforce_IsDone(void* thisx);
+
+#endif
diff --git a/include/transition_wipe.h b/include/transition_wipe.h
new file mode 100644
index 000000000..654e9b623
--- /dev/null
+++ b/include/transition_wipe.h
@@ -0,0 +1,30 @@
+#ifndef TRANSITION_WIPE_H
+#define TRANSITION_WIPE_H
+
+#include "ultra64.h"
+#include "color.h"
+
+typedef struct TransitionWipe {
+ /* 0x000 */ Color_RGBA8_u32 color;
+ /* 0x004 */ Color_RGBA8_u32 unkColor;
+ /* 0x008 */ u8 direction;
+ /* 0x009 */ u8 frame;
+ /* 0x00A */ u8 isDone;
+ /* 0x00C */ u16 texX;
+ /* 0x00E */ u16 texY;
+ /* 0x010 */ u16 normal;
+ /* 0x018 */ Mtx projection;
+ /* 0x058 */ Mtx lookAt;
+ /* 0x098 */ Mtx modelView[2][3];
+} TransitionWipe; // size = 0x218
+
+void TransitionWipe_Start(void* thisx);
+void* TransitionWipe_Init(void* thisx);
+void TransitionWipe_Destroy(void* thisx);
+void TransitionWipe_Update(void* thisx, s32 updateRate);
+void TransitionWipe_Draw(void* thisx, Gfx** gfxP);
+s32 TransitionWipe_IsDone(void* thisx);
+void TransitionWipe_SetType(void* thisx, s32 type);
+void TransitionWipe_SetColor(void* thisx, u32 color);
+
+#endif
diff --git a/include/ultra64.h b/include/ultra64.h
index 9972a4dfe..cccab388b 100644
--- a/include/ultra64.h
+++ b/include/ultra64.h
@@ -105,6 +105,7 @@ OSMesgQueue* osPiGetCmdQueue(void);
s32 osEPiReadIo(OSPiHandle* handle, u32 devAddr, u32* data);
void osViSetSpecialFeatures(u32 func);
OSPiHandle* osCartRomInit(void);
+OSPiHandle* osDriveRomInit(void);
void __osSetFpcCsr(u32);
u32 __osGetFpcCsr(void);
s32 osEPiWriteIo(OSPiHandle* handle, u32 devAddr, u32 data);
diff --git a/include/yaz0.h b/include/yaz0.h
new file mode 100644
index 000000000..52f5ba951
--- /dev/null
+++ b/include/yaz0.h
@@ -0,0 +1,10 @@
+#ifndef YAZ0_H
+#define YAZ0_H
+
+#include "libc/stddef.h"
+#include "libc/stdint.h"
+#include "ultra64.h"
+
+void Yaz0_Decompress(uintptr_t romStart, u8* dst, size_t size);
+
+#endif
diff --git a/include/z64play.h b/include/z64play.h
index 4ca9e0b02..4853ac8f4 100644
--- a/include/z64play.h
+++ b/include/z64play.h
@@ -4,6 +4,7 @@
#include "ultra64.h"
#include "prerender.h"
+#include "transition_tile.h"
#include "z64actor.h"
#include "z64bgcheck.h"
#include "z64camera.h"
diff --git a/include/z64transition.h b/include/z64transition.h
index 569b8fb32..d46683d2b 100644
--- a/include/z64transition.h
+++ b/include/z64transition.h
@@ -3,6 +3,10 @@
#include "ultra64/ultratypes.h"
#include "ultra64/gbi.h" // for Gfx
+#include "transition_circle.h"
+#include "transition_fade.h"
+#include "transition_triforce.h"
+#include "transition_wipe.h"
#include "z64transition_instances.h"
#define TRANS_TRIGGER_OFF 0 // transition is not active
diff --git a/include/z64transition_instances.h b/include/z64transition_instances.h
index 154b98d00..cc35add03 100644
--- a/include/z64transition_instances.h
+++ b/include/z64transition_instances.h
@@ -1,104 +1,10 @@
#ifndef Z64TRANSITION_INSTANCES_H
#define Z64TRANSITION_INSTANCES_H
-#include "ultra64.h"
-#include "color.h"
-
-typedef struct TransitionTileVtxData {
- /* 0x0 */ f32 x;
- /* 0x4 */ f32 y;
-} TransitionTileVtxData; // size = 0x8
-
-typedef struct TransitionTile {
- /* 0x00 */ s32 cols;
- /* 0x04 */ s32 rows;
- /* 0x08 */ s32 frame;
- /* 0x0C */ TransitionTileVtxData* vtxData;
- /* 0x10 */ Vtx* vtxFrame1;
- /* 0x14 */ Vtx* vtxFrame2;
- /* 0x18 */ Mtx projection;
- /* 0x58 */ Mtx modelView;
- /* 0x98 */ Mtx unk_98;
- /* 0xD8 */ Gfx* gfx; // "gfxtbl"
- /* 0xDC */ u16* zBuffer;
-} TransitionTile; // size = 0xE0
-
typedef enum TransitionInstanceType {
/* 1 */ TRANS_INSTANCE_TYPE_FILL_OUT = 1,
- /* 2 */ TRANS_INSTANCE_TYPE_FILL_IN
+ /* 2 */ TRANS_INSTANCE_TYPE_FILL_IN,
+ /* 3 */ TRANS_INSTANCE_TYPE_FADE_FLASH
} TransitionInstanceType;
-typedef struct TransitionWipe {
- /* 0x000 */ Color_RGBA8_u32 color;
- /* 0x004 */ Color_RGBA8_u32 unkColor;
- /* 0x008 */ u8 direction;
- /* 0x009 */ u8 frame;
- /* 0x00A */ u8 isDone;
- /* 0x00C */ u16 texX;
- /* 0x00E */ u16 texY;
- /* 0x010 */ u16 normal;
- /* 0x018 */ Mtx projection;
- /* 0x058 */ Mtx lookAt;
- /* 0x098 */ Mtx modelView[2][3];
-} TransitionWipe; // size = 0x218
-
-#define TRANS_INSTANCE_TYPE_FADE_FLASH 3
-
-typedef struct TransitionFade {
- /* 0x000 */ u8 type;
- /* 0x001 */ u8 isDone;
- /* 0x002 */ u8 direction;
- /* 0x004 */ Color_RGBA8_u32 color;
- /* 0x008 */ u16 timer;
-} TransitionFade; // size = 0xC
-
-typedef enum TransitionCircleAppearance {
- /* 0 */ TCA_NORMAL,
- /* 1 */ TCA_WAVE,
- /* 2 */ TCA_RIPPLE,
- /* 3 */ TCA_STARBURST
-} TransitionCircleAppearance;
-
-typedef enum TransitionCircleColor {
- /* 0 */ TCC_BLACK,
- /* 1 */ TCC_WHITE,
- /* 2 */ TCC_GRAY,
- /* 3 */ TCC_SPECIAL // color varies depending on appearance. unused and appears broken
-} TransitionCircleColor;
-
-typedef enum TransitionCircleSpeed {
- /* 0 */ TCS_FAST,
- /* 1 */ TCS_SLOW
-} TransitionCircleSpeed;
-
-typedef struct TransitionCircle {
- /* 0x000 */ Color_RGBA8_u32 color;
- /* 0x004 */ Color_RGBA8_u32 unkColor;
- /* 0x008 */ s32 texX;
- /* 0x00C */ s32 texY;
- /* 0x010 */ s32 speed;
- /* 0x014 */ u8 direction;
- /* 0x015 */ u8 colorType;
- /* 0x016 */ u8 speedType;
- /* 0x017 */ u8 appearanceType;
- /* 0x018 */ u8 isDone;
- /* 0x019 */ u8 frame;
- /* 0x01A */ u16 normal;
- /* 0x020 */ Mtx projection;
- /* 0x060 */ Mtx lookAt;
- /* 0x0A0 */ void* texture;
- /* 0x0A8 */ Mtx modelView[2][3];
-} TransitionCircle; // size = 0x228
-
-typedef struct TransitionTriforce {
- /* 0x000 */ Color_RGBA8_u32 color;
- /* 0x004 */ f32 transPos;
- /* 0x008 */ f32 step;
- /* 0x00C */ s32 state;
- /* 0x010 */ s32 type;
- /* 0x018 */ Mtx projection;
- /* 0x058 */ s32 frame;
- /* 0x060 */ Mtx modelView[2][3];
-} TransitionTriforce; // size = 0x1E0
-
#endif
diff --git a/src/boot/boot_main.c b/src/boot/boot_main.c
index 75c1b9cf8..689d4f031 100644
--- a/src/boot/boot_main.c
+++ b/src/boot/boot_main.c
@@ -1,4 +1,6 @@
#include "boot.h"
+#include "idle.h"
+#include "is_debug.h"
#include "stack.h"
#include "stackcheck.h"
#if PLATFORM_N64
diff --git a/src/boot/idle.c b/src/boot/idle.c
index e24ab4ede..c56489137 100644
--- a/src/boot/idle.c
+++ b/src/boot/idle.c
@@ -1,4 +1,5 @@
#include "buffers.h"
+#include "idle.h"
#include "main.h"
#include "segment_symbols.h"
#include "stack.h"
diff --git a/src/boot/inflate.c b/src/boot/inflate.c
index c0467dd38..391ce0368 100644
--- a/src/boot/inflate.c
+++ b/src/boot/inflate.c
@@ -95,6 +95,8 @@
the two sets of lengths.
*/
+#include "inflate.h"
+
#include "ultra64/ultratypes.h"
#include "libc/stddef.h"
#include "libc/stdint.h"
diff --git a/src/boot/is_debug.c b/src/boot/is_debug.c
index 912b75984..d520b262b 100644
--- a/src/boot/is_debug.c
+++ b/src/boot/is_debug.c
@@ -1,5 +1,6 @@
+#include "is_debug.h"
+
#include "global.h"
-#include "attributes.h"
typedef struct ISVDbg {
/* 0x00 */ u32 magic; // "IS64"
diff --git a/src/boot/z_std_dma.c b/src/boot/z_std_dma.c
index e8581b6a5..9f5901b73 100644
--- a/src/boot/z_std_dma.c
+++ b/src/boot/z_std_dma.c
@@ -23,6 +23,9 @@
#include "libu64/debug.h"
#include "attributes.h"
#include "fault.h"
+#if PLATFORM_IQUE
+#include "inflate.h"
+#endif
#include "line_numbers.h"
#if PLATFORM_N64
#include "n64dd.h"
@@ -31,12 +34,15 @@
#include "stack.h"
#include "stackcheck.h"
#include "terminal.h"
+#if !PLATFORM_IQUE
+#include "yaz0.h"
+#endif
#include "z64thread.h"
#include "global.h"
-#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.2:20" \
- "pal-1.0:18 pal-1.1:18"
+#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.2:14" \
+ "pal-1.0:12 pal-1.1:12"
StackEntry sDmaMgrStackInfo;
OSMesgQueue sDmaMgrMsgQueue;
diff --git a/src/code/fault_gc_drawer.c b/src/code/fault_gc_drawer.c
index 9d3478a48..4482ba9ae 100644
--- a/src/code/fault_gc_drawer.c
+++ b/src/code/fault_gc_drawer.c
@@ -7,7 +7,7 @@
#include "global.h"
#include "fault.h"
#include "terminal.h"
-#pragma increment_block_number "gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
+#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128"
typedef struct FaultDrawer {
/* 0x00 */ u16* fb;
@@ -101,7 +101,7 @@ FaultDrawer sFaultDrawerDefault = {
NULL,
};
-#pragma increment_block_number "gc-eu:128 gc-eu-mq:128"
+#pragma increment_block_number "gc-eu:0 gc-eu-mq:0"
FaultDrawer sFaultDrawer;
char D_8016B6C0[0x20];
diff --git a/src/code/flg_set.c b/src/code/flg_set.c
index 5f4316d7f..88f32a3e4 100644
--- a/src/code/flg_set.c
+++ b/src/code/flg_set.c
@@ -1,3 +1,5 @@
+#include "flag_set.h"
+
#include "libu64/gfxprint.h"
#include "libu64/pad.h"
#include "gfx.h"
diff --git a/src/code/graph.c b/src/code/graph.c
index a20c64e1f..8fe664dec 100644
--- a/src/code/graph.c
+++ b/src/code/graph.c
@@ -15,6 +15,7 @@
#include "regs.h"
#include "setup_state.h"
#include "speed_meter.h"
+#include "sys_cfb.h"
#include "sys_debug_controller.h"
#include "sys_ucode.h"
#include "terminal.h"
diff --git a/src/code/main.c b/src/code/main.c
index 79c40658c..ab330cb33 100644
--- a/src/code/main.c
+++ b/src/code/main.c
@@ -1,3 +1,4 @@
+#include "sys_cfb.h"
#include "ultra64.h"
#include "versions.h"
@@ -13,6 +14,8 @@ extern struct PadMgr gPadMgr;
extern struct IrqMgr gIrqMgr;
#include "libc64/malloc.h"
+#include "libu64/rcp_utils.h"
+#include "libu64/runtime.h"
#include "audiomgr.h"
#include "debug_arena.h"
#include "fault.h"
@@ -35,7 +38,7 @@ extern struct IrqMgr gIrqMgr;
#include "global.h"
#pragma increment_block_number "gc-eu:32 gc-eu-mq:32 gc-jp:32 gc-jp-ce:32 gc-jp-mq:32 gc-us:32 gc-us-mq:32 ique-cn:32" \
- "ntsc-1.0:6 ntsc-1.1:6 ntsc-1.2:6 pal-1.0:4 pal-1.1:4"
+ "ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:254 pal-1.1:254"
extern u8 _buffersSegmentEnd[];
diff --git a/src/code/sched.c b/src/code/sched.c
index 561a28370..2b519c6bd 100644
--- a/src/code/sched.c
+++ b/src/code/sched.c
@@ -40,6 +40,7 @@
* @see irqmgr.c
*/
#include "libu64/debug.h"
+#include "libu64/rcp_utils.h"
#include "fault.h"
#include "irqmgr.h"
#include "main.h"
diff --git a/src/code/sys_cfb.c b/src/code/sys_cfb.c
index 4e4bc06f2..4fa17abfd 100644
--- a/src/code/sys_cfb.c
+++ b/src/code/sys_cfb.c
@@ -1,4 +1,5 @@
-#include "ultra64.h"
+#include "sys_cfb.h"
+
#include "libu64/debug.h"
#include "attributes.h"
#include "line_numbers.h"
diff --git a/src/code/z_bgcheck.c b/src/code/z_bgcheck.c
index 71733baef..f4f3a1fd3 100644
--- a/src/code/z_bgcheck.c
+++ b/src/code/z_bgcheck.c
@@ -11,7 +11,7 @@
#include "z64player.h"
#include "z64skin_matrix.h"
-#pragma increment_block_number "ntsc-1.0:208 ntsc-1.1:208 ntsc-1.2:208"
+#pragma increment_block_number "ntsc-1.0:200 ntsc-1.1:200 ntsc-1.2:200"
u16 DynaSSNodeList_GetNextNodeIdx(DynaSSNodeList* nodeList);
void BgCheck_GetStaticLookupIndicesFromPos(CollisionContext* colCtx, Vec3f* pos, Vec3i* sector);
diff --git a/src/code/z_camera.c b/src/code/z_camera.c
index 8582519cd..64299a886 100644
--- a/src/code/z_camera.c
+++ b/src/code/z_camera.c
@@ -3658,7 +3658,7 @@ s32 Camera_KeepOn3(Camera* camera) {
}
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
- "ique-cn:128 ntsc-1.0:102 ntsc-1.1:102 ntsc-1.2:102 pal-1.0:100 pal-1.1:100"
+ "ique-cn:128 ntsc-1.0:98 ntsc-1.1:98 ntsc-1.2:98 pal-1.0:96 pal-1.1:96"
s32 Camera_KeepOn4(Camera* camera) {
static Vec3f D_8015BD50;
diff --git a/src/code/z_collision_check.c b/src/code/z_collision_check.c
index e05bb44d1..392df7c1f 100644
--- a/src/code/z_collision_check.c
+++ b/src/code/z_collision_check.c
@@ -15,7 +15,7 @@
#include "overlays/effects/ovl_Effect_Ss_HitMark/z_eff_ss_hitmark.h"
#include "z_lib.h"
-#pragma increment_block_number "ique-cn:0 ntsc-1.0:248 ntsc-1.1:248 ntsc-1.2:248 pal-1.0:248 pal-1.1:248"
+#pragma increment_block_number "ique-cn:0 ntsc-1.0:240 ntsc-1.1:240 ntsc-1.2:240 pal-1.0:240 pal-1.1:240"
typedef s32 (*ColChkResetFunc)(PlayState*, Collider*);
typedef void (*ColChkApplyFunc)(PlayState*, CollisionCheckContext*, Collider*);
diff --git a/src/code/z_demo.c b/src/code/z_demo.c
index 921613bd8..d34e0808d 100644
--- a/src/code/z_demo.c
+++ b/src/code/z_demo.c
@@ -6,6 +6,7 @@
#include "gfx.h"
#include "gfxalloc.h"
#include "letterbox.h"
+#include "memory_utils.h"
#if PLATFORM_N64
#include "n64dd.h"
#endif
diff --git a/src/code/z_en_item00.c b/src/code/z_en_item00.c
index aa757f864..f0c627b25 100644
--- a/src/code/z_en_item00.c
+++ b/src/code/z_en_item00.c
@@ -22,7 +22,7 @@
#include "assets/objects/gameplay_keep/gameplay_keep.h"
#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-eu-mq-dbg:0 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128" \
- "gc-us-mq:128 ntsc-1.0:128 ntsc-1.2:128"
+ "gc-us-mq:128 ique-cn:128 ntsc-1.0:128 ntsc-1.2:128"
#define FLAGS 0
diff --git a/src/code/z_fbdemo.c b/src/code/z_fbdemo.c
index 246e27b1a..46cfa0573 100644
--- a/src/code/z_fbdemo.c
+++ b/src/code/z_fbdemo.c
@@ -9,6 +9,8 @@
* @note The only coded effect has a visual effect to blend the tiles to a single point, which looks like the screen
* gets sucked into.
*/
+#include "transition_tile.h"
+
#include "libc64/malloc.h"
#include "libc64/sleep.h"
#include "libu64/debug.h"
diff --git a/src/code/z_fbdemo_circle.c b/src/code/z_fbdemo_circle.c
index c25f174a7..eb1b22feb 100644
--- a/src/code/z_fbdemo_circle.c
+++ b/src/code/z_fbdemo_circle.c
@@ -1,3 +1,5 @@
+#include "transition_circle.h"
+
#include "gfx.h"
#include "global.h"
diff --git a/src/code/z_fbdemo_fade.c b/src/code/z_fbdemo_fade.c
index 3375628cb..cbd9f6813 100644
--- a/src/code/z_fbdemo_fade.c
+++ b/src/code/z_fbdemo_fade.c
@@ -1,4 +1,5 @@
-#include "ultra64.h"
+#include "transition_fade.h"
+
#include "main.h"
#include "regs.h"
#include "terminal.h"
diff --git a/src/code/z_fbdemo_triforce.c b/src/code/z_fbdemo_triforce.c
index 7bb8862b2..93826fa36 100644
--- a/src/code/z_fbdemo_triforce.c
+++ b/src/code/z_fbdemo_triforce.c
@@ -1,3 +1,5 @@
+#include "transition_triforce.h"
+
#include "global.h"
#include "assets/code/fbdemo_triforce/z_fbdemo_triforce.c"
diff --git a/src/code/z_fbdemo_wipe1.c b/src/code/z_fbdemo_wipe1.c
index a3418e91a..d876b0b73 100644
--- a/src/code/z_fbdemo_wipe1.c
+++ b/src/code/z_fbdemo_wipe1.c
@@ -1,3 +1,5 @@
+#include "transition_wipe.h"
+
#include "gfx.h"
#include "z64save.h"
#include "z64transition_instances.h"
diff --git a/src/code/z_kankyo.c b/src/code/z_kankyo.c
index 0bdc048ee..d86af19c0 100644
--- a/src/code/z_kankyo.c
+++ b/src/code/z_kankyo.c
@@ -236,7 +236,7 @@ s16 sSunDepthTestX;
s16 sSunDepthTestY;
#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:160 gc-jp-ce:160 gc-jp-mq:160 gc-us:160 gc-us-mq:160" \
- "ique-cn:160 ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
+ "ique-cn:160 ntsc-1.0:160 ntsc-1.1:160 ntsc-1.2:160 pal-1.0:192 pal-1.1:192"
LightNode* sNGameOverLightNode;
LightInfo sNGameOverLightInfo;
diff --git a/src/code/z_message.c b/src/code/z_message.c
index 88c219d37..789d4aa6a 100644
--- a/src/code/z_message.c
+++ b/src/code/z_message.c
@@ -4,6 +4,7 @@
#include "gfx.h"
#include "gfx_setupdl.h"
#include "gfxalloc.h"
+#include "memory_utils.h"
#include "message_data_static.h"
#if PLATFORM_N64
#include "n64dd.h"
diff --git a/src/code/z_parameter.c b/src/code/z_parameter.c
index 2c9b21950..4dd6662d5 100644
--- a/src/code/z_parameter.c
+++ b/src/code/z_parameter.c
@@ -1,5 +1,6 @@
#include "attributes.h"
#include "controller.h"
+#include "flag_set.h"
#include "gfx.h"
#include "gfx_setupdl.h"
#include "main.h"
diff --git a/src/code/z_play.c b/src/code/z_play.c
index cc041ecaf..7e4f5f5e3 100644
--- a/src/code/z_play.c
+++ b/src/code/z_play.c
@@ -24,6 +24,11 @@
#include "sys_matrix.h"
#include "terminal.h"
#include "title_setup_state.h"
+#include "transition_circle.h"
+#include "transition_fade.h"
+#include "transition_tile.h"
+#include "transition_triforce.h"
+#include "transition_wipe.h"
#include "versions.h"
#include "z_actor_dlftbls.h"
#include "zelda_arena.h"
diff --git a/src/code/z_sram.c b/src/code/z_sram.c
index bf713d373..534017d83 100644
--- a/src/code/z_sram.c
+++ b/src/code/z_sram.c
@@ -1,5 +1,6 @@
#include "file_select_state.h"
#include "controller.h"
+#include "memory_utils.h"
#include "terminal.h"
#include "versions.h"
#include "z64game.h"
diff --git a/src/libu64/rcp_utils.c b/src/libu64/rcp_utils.c
index 420ac51f9..c4f0cad53 100644
--- a/src/libu64/rcp_utils.c
+++ b/src/libu64/rcp_utils.c
@@ -1,3 +1,5 @@
+#include "libu64/rcp_utils.h"
+
#include "global.h"
#if PLATFORM_N64 || DEBUG_FEATURES
@@ -55,9 +57,12 @@ void RcpUtils_PrintRegisterStatus(void) {
void RcpUtils_Reset(void) {
RcpUtils_PrintRegisterStatus();
+
// Flush the RDP pipeline and freeze clock counter
osDpSetStatus(DPC_SET_FREEZE | DPC_SET_FLUSH);
+
// Halt the RSP, disable interrupt on break and set "task done" signal
__osSpSetStatus(SP_SET_HALT | SP_SET_TASKDONE | SP_CLR_INTR_BREAK);
+
RcpUtils_PrintRegisterStatus();
}
diff --git a/src/libu64/runtime.c b/src/libu64/runtime.c
index 9dbb522f5..aa0c507b7 100644
--- a/src/libu64/runtime.c
+++ b/src/libu64/runtime.c
@@ -1,3 +1,5 @@
+#include "libu64/runtime.h"
+
#include "libc64/malloc.h"
#include "libc64/os_malloc.h"
diff --git a/src/overlays/gamestates/ovl_file_choose/z_file_choose.c b/src/overlays/gamestates/ovl_file_choose/z_file_choose.c
index 4517fc7e7..9da143369 100644
--- a/src/overlays/gamestates/ovl_file_choose/z_file_choose.c
+++ b/src/overlays/gamestates/ovl_file_choose/z_file_choose.c
@@ -9,6 +9,7 @@
#include "macros.h"
#include "main.h"
#include "map_select_state.h"
+#include "memory_utils.h"
#if PLATFORM_N64
#include "n64dd.h"
#endif