summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authormzxrules <mzxrules@gmail.com>2025-02-26 17:18:30 -0500
committerGitHub <noreply@github.com>2025-02-26 17:18:30 -0500
commitcf1a39c26fca0f7827fef79d08b114fde1c43cce (patch)
treeccbebda2637107cf2c2742639f0f808ec4374c47 /src
parent2b30c61a2698862e3debd50c2be193df23f9e8b5 (diff)
Reduce dependencies on global.h (10) (#2490)
* reduce z64.h size * fix z_cheap_proc.inc.c * ,bss * remove temp delcaration
Diffstat (limited to 'src')
-rw-r--r--src/audio/general.c7
-rw-r--r--src/audio/lib/effects.c2
-rw-r--r--src/audio/lib/load.c1
-rw-r--r--src/audio/lib/seqplayer.c2
-rw-r--r--src/boot/assert.c3
-rw-r--r--src/boot/boot_main.c5
-rw-r--r--src/boot/cic6105.c4
-rw-r--r--src/boot/idle.c1
-rw-r--r--src/boot/is_debug.c1
-rw-r--r--src/boot/z_locale.c10
-rw-r--r--src/boot/z_std_dma.c5
-rw-r--r--src/code/PreRender.c9
-rw-r--r--src/code/TwoHeadGfxArena.c2
-rw-r--r--src/code/audio_thread_manager.c7
-rw-r--r--src/code/code_n64dd_800AD4C0.c6
-rw-r--r--src/code/db_camera.c1
-rw-r--r--src/code/fault_gc.c4
-rw-r--r--src/code/fault_n64.c2
-rw-r--r--src/code/game.c4
-rw-r--r--src/code/graph.c8
-rw-r--r--src/code/irqmgr.c6
-rw-r--r--src/code/listalloc.c3
-rw-r--r--src/code/main.c9
-rw-r--r--src/code/mempak.c5
-rw-r--r--src/code/sched.c3
-rw-r--r--src/code/shrink_window.c5
-rw-r--r--src/code/speed_meter.c10
-rw-r--r--src/code/sys_debug_controller.c5
-rw-r--r--src/code/sys_freeze.c6
-rw-r--r--src/code/sys_rumble.c3
-rw-r--r--src/code/z_actor.c4
-rw-r--r--src/code/z_bg_item.c5
-rw-r--r--src/code/z_bgcheck.c2
-rw-r--r--src/code/z_camera.c22
-rw-r--r--src/code/z_cheap_proc.inc.c5
-rw-r--r--src/code/z_collision_check.c2
-rw-r--r--src/code/z_common_data.c8
-rw-r--r--src/code/z_demo.c6
-rw-r--r--src/code/z_eff_blure.c11
-rw-r--r--src/code/z_eff_shield_particle.c12
-rw-r--r--src/code/z_eff_spark.c10
-rw-r--r--src/code/z_eff_ss_dead.c4
-rw-r--r--src/code/z_effect.c5
-rw-r--r--src/code/z_effect_soft_sprite_old_init.c14
-rw-r--r--src/code/z_en_a_keep.c9
-rw-r--r--src/code/z_fbdemo.c9
-rw-r--r--src/code/z_fbdemo_circle.c2
-rw-r--r--src/code/z_fcurve_data_skelanime.c8
-rw-r--r--src/code/z_kaleido_scope_call.c4
-rw-r--r--src/code/z_kankyo.c8
-rw-r--r--src/code/z_map_mark.c1
-rw-r--r--src/code/z_message.c2
-rw-r--r--src/code/z_moji.c3
-rw-r--r--src/code/z_play.c7
-rw-r--r--src/code/z_player_call.c6
-rw-r--r--src/code/z_rcp.c3
-rw-r--r--src/code/z_rumble.c4
-rw-r--r--src/code/z_scene.c9
-rw-r--r--src/code/z_skelanime.c14
-rw-r--r--src/code/z_skin_matrix.c6
-rw-r--r--src/code/z_view.c9
-rw-r--r--src/code/z_vimode.c8
-rw-r--r--src/code/z_viscvg.c5
-rw-r--r--src/code/z_vismono.c9
-rw-r--r--src/code/z_viszbuf.c5
-rw-r--r--src/code/z_vr_box_draw.c5
-rw-r--r--src/libleo/api/cacreateleomanager.c4
-rw-r--r--src/libleo/api/cjcreateleomanager.c4
-rw-r--r--src/libleo/leo/leocmdex.c4
-rw-r--r--src/libleo/leo/leomecha.c4
-rw-r--r--src/libleo/leo/leotimer.c4
-rw-r--r--src/libu64/gfxprint.c6
-rw-r--r--src/libu64/stackcheck.c6
-rw-r--r--src/libu64/system_heap.c2
-rw-r--r--src/libultra/os/settimer.c3
-rw-r--r--src/n64dd/n64dd_801C8000.c2
-rw-r--r--src/n64dd/n64dd_801C8940.c5
-rw-r--r--src/n64dd/n64dd_801C9B70.c2
-rw-r--r--src/n64dd/n64dd_801CA0B0.c5
-rw-r--r--src/n64dd/z_n64dd.c8
-rw-r--r--src/overlays/actors/ovl_Boss_Sst/z_boss_sst.c4
-rw-r--r--src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c1
-rw-r--r--src/overlays/actors/ovl_En_Bili/z_en_bili.c3
-rw-r--r--src/overlays/gamestates/ovl_file_choose/z_file_choose.c3
-rw-r--r--src/overlays/gamestates/ovl_file_choose/z_file_copy_erase.c2
-rw-r--r--src/overlays/gamestates/ovl_file_choose/z_file_nameset.c1
-rw-r--r--src/overlays/gamestates/ovl_title/z_title.c3
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_kaleido_collect.c8
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_kaleido_debug.c6
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c7
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_kaleido_item.c7
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c8
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_kaleido_prompt.c5
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c19
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h33
-rw-r--r--src/overlays/misc/ovl_kaleido_scope/z_lmap_mark.c7
96 files changed, 454 insertions, 107 deletions
diff --git a/src/audio/general.c b/src/audio/general.c
index 228fb879f..ddf13f4cf 100644
--- a/src/audio/general.c
+++ b/src/audio/general.c
@@ -1,9 +1,14 @@
+#include "libu64/gfxprint.h"
#include "ultra64.h"
-#include "global.h"
+#include "attributes.h"
+#include "controller.h"
+#include "padmgr.h"
#include "seqcmd.h"
#include "sequence.h"
#include "versions.h"
+#include "global.h"
+
#define ABS_ALT(x) ((x) < 0 ? -(x) : (x))
#if !PLATFORM_N64
diff --git a/src/audio/lib/effects.c b/src/audio/lib/effects.c
index bbfcaf61a..e6d232488 100644
--- a/src/audio/lib/effects.c
+++ b/src/audio/lib/effects.c
@@ -1,4 +1,6 @@
#include "ultra64.h"
+#include "attributes.h"
+
#include "global.h"
void Audio_SequenceChannelProcessSound(SequenceChannel* channel, s32 recalculateVolume, s32 applyBend) {
diff --git a/src/audio/lib/load.c b/src/audio/lib/load.c
index 8ecf7f888..d4c1ea864 100644
--- a/src/audio/lib/load.c
+++ b/src/audio/lib/load.c
@@ -1,4 +1,5 @@
#include "ultra64.h"
+#include "attributes.h"
#include "buffers.h"
#include "versions.h"
diff --git a/src/audio/lib/seqplayer.c b/src/audio/lib/seqplayer.c
index 2caaf17e0..1a1d40c4d 100644
--- a/src/audio/lib/seqplayer.c
+++ b/src/audio/lib/seqplayer.c
@@ -15,7 +15,9 @@
*/
#include "ultra64.h"
#include "assert.h"
+#include "attributes.h"
#include "audio/aseq.h"
+
#include "global.h"
static_assert(MML_VERSION == MML_VERSION_OOT, "This file implements the OoT version of the MML");
diff --git a/src/boot/assert.c b/src/boot/assert.c
index e58f2cc1e..661f7db87 100644
--- a/src/boot/assert.c
+++ b/src/boot/assert.c
@@ -1,4 +1,5 @@
-#include "global.h"
+#include "libc64/sprintf.h"
+#include "assert.h"
#include "fault.h"
NORETURN void __assert(const char* assertion, const char* file, int line) {
diff --git a/src/boot/boot_main.c b/src/boot/boot_main.c
index 4bd5b5bd0..75c1b9cf8 100644
--- a/src/boot/boot_main.c
+++ b/src/boot/boot_main.c
@@ -1,11 +1,14 @@
-#include "global.h"
#include "boot.h"
#include "stack.h"
+#include "stackcheck.h"
#if PLATFORM_N64
#include "cic6105.h"
#endif
+#include "z_locale.h"
#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:128"
StackEntry sBootThreadInfo;
diff --git a/src/boot/cic6105.c b/src/boot/cic6105.c
index 7f76e99c3..29b04f2a8 100644
--- a/src/boot/cic6105.c
+++ b/src/boot/cic6105.c
@@ -1,7 +1,9 @@
#pragma increment_block_number "ntsc-1.2:0"
-
#include "global.h"
+#include "audiomgr.h"
#include "cic6105.h"
+#include "regs.h"
+#include "sched.h"
#include "fault.h"
s32 func_80001714(void);
diff --git a/src/boot/idle.c b/src/boot/idle.c
index ffc6de34b..be4c9f7cb 100644
--- a/src/boot/idle.c
+++ b/src/boot/idle.c
@@ -1,4 +1,5 @@
#include "buffers.h"
+#include "main.h"
#include "segment_symbols.h"
#include "stack.h"
#include "stackcheck.h"
diff --git a/src/boot/is_debug.c b/src/boot/is_debug.c
index 1f8938f9d..912b75984 100644
--- a/src/boot/is_debug.c
+++ b/src/boot/is_debug.c
@@ -1,4 +1,5 @@
#include "global.h"
+#include "attributes.h"
typedef struct ISVDbg {
/* 0x00 */ u32 magic; // "IS64"
diff --git a/src/boot/z_locale.c b/src/boot/z_locale.c
index b6ce255c6..f54be014b 100644
--- a/src/boot/z_locale.c
+++ b/src/boot/z_locale.c
@@ -1,8 +1,14 @@
-#include "global.h"
+#include "libu64/debug.h"
+#include "alignment.h"
+#include "line_numbers.h"
+#include "padmgr.h"
#include "region.h"
#include "terminal.h"
#include "versions.h"
-#include "line_numbers.h"
+#include "z_locale.h"
+
+#include "macros.h"
+#include "global.h"
s32 gCurrentRegion = 0;
diff --git a/src/boot/z_std_dma.c b/src/boot/z_std_dma.c
index b8d527619..7cbf00994 100644
--- a/src/boot/z_std_dma.c
+++ b/src/boot/z_std_dma.c
@@ -19,6 +19,9 @@
* to be uncompressed and the request queue and address translation is skipped.
*/
#include "libc64/sleep.h"
+#include "libc64/sprintf.h"
+#include "libu64/debug.h"
+#include "attributes.h"
#include "fault.h"
#include "line_numbers.h"
#if PLATFORM_N64
@@ -33,7 +36,7 @@
#include "global.h"
#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" \
- "ntsc-1.2:86 pal-1.0:84 pal-1.1:84"
+ "ntsc-1.2:12 pal-1.0:10 pal-1.1:10"
StackEntry sDmaMgrStackInfo;
OSMesgQueue sDmaMgrMsgQueue;
diff --git a/src/code/PreRender.c b/src/code/PreRender.c
index 8e002a5a1..9dcb28f3a 100644
--- a/src/code/PreRender.c
+++ b/src/code/PreRender.c
@@ -5,8 +5,15 @@
* buffer copies and coverage drawing. Also contains software implementations of the Video Interface anti-aliasing and
* divot filters.
*/
-#include "global.h"
+#include "libu64/debug.h"
#include "alloca.h"
+#include "color.h"
+#include "gfx.h"
+#include "prerender.h"
+#include "regs.h"
+
+#include "macros.h"
+#include "global.h"
void PreRender_SetValuesSave(PreRender* this, u32 width, u32 height, void* fbuf, void* zbuf, void* cvg) {
this->widthSave = width;
diff --git a/src/code/TwoHeadGfxArena.c b/src/code/TwoHeadGfxArena.c
index ce7b8a45f..c3f2216fa 100644
--- a/src/code/TwoHeadGfxArena.c
+++ b/src/code/TwoHeadGfxArena.c
@@ -8,7 +8,7 @@
*
* @see TwoHeadArena.c
*/
-#include "global.h"
+#include "thga.h"
void THGA_Init(TwoHeadGfxArena* thga, void* start, size_t size) {
THA_Init(&thga->tha, start, size);
diff --git a/src/code/audio_thread_manager.c b/src/code/audio_thread_manager.c
index 1dc72642f..8837601f8 100644
--- a/src/code/audio_thread_manager.c
+++ b/src/code/audio_thread_manager.c
@@ -5,7 +5,12 @@
* and sending the audio rsp tasks generated by the driver to the task scheduler.
*/
-#include "global.h"
+#include "audiomgr.h"
+#include "regs.h"
+#include "speed_meter.h"
+#include "z64dma.h"
+
+#include "macros.h"
void AudioMgr_NotifyTaskDone(AudioMgr* audioMgr) {
AudioTask* task = audioMgr->rspTask;
diff --git a/src/code/code_n64dd_800AD4C0.c b/src/code/code_n64dd_800AD4C0.c
index 34dcdb3bb..4c4e0db0e 100644
--- a/src/code/code_n64dd_800AD4C0.c
+++ b/src/code/code_n64dd_800AD4C0.c
@@ -1,9 +1,11 @@
#include "fault.h"
#include "n64dd.h"
+#include "regs.h"
+#include "segmented_address.h"
+#include "z64actor.h"
+#include "z64cutscene.h"
#include "z64save.h"
-#include "global.h"
-
n64ddStruct_800FEE70_pointers D_800FEE70 = {
func_801C7C1C,
NULL,
diff --git a/src/code/db_camera.c b/src/code/db_camera.c
index 5b997b490..f31650587 100644
--- a/src/code/db_camera.c
+++ b/src/code/db_camera.c
@@ -1,6 +1,7 @@
#include "libu64/gfxprint.h"
#include "attributes.h"
#include "controller.h"
+#include "db_camera.h"
#include "debug_arena.h"
#include "letterbox.h"
#include "mempak.h"
diff --git a/src/code/fault_gc.c b/src/code/fault_gc.c
index c70503cdd..29d04071c 100644
--- a/src/code/fault_gc.c
+++ b/src/code/fault_gc.c
@@ -40,8 +40,8 @@
* DPad-Up may be pressed to enable sending fault pages over osSyncPrintf as well as displaying them on-screen.
* DPad-Down disables sending fault pages over osSyncPrintf.
*/
-#pragma increment_block_number "gc-eu:160 gc-eu-mq:160 gc-eu-mq-dbg:160 gc-jp:176 gc-jp-ce:176 gc-jp-mq:176 gc-us:176" \
- "gc-us-mq:176 ique-cn:176"
+#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-eu-mq-dbg:96 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128" \
+ "gc-us-mq:128 ique-cn:128"
#include "global.h"
#include "libc64/sleep.h"
diff --git a/src/code/fault_n64.c b/src/code/fault_n64.c
index feb884716..ecfc87f10 100644
--- a/src/code/fault_n64.c
+++ b/src/code/fault_n64.c
@@ -13,7 +13,7 @@
#include "macros.h"
#include "global.h"
-#pragma increment_block_number "ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
+#pragma increment_block_number "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
typedef struct FaultMgr {
OSThread thread;
diff --git a/src/code/game.c b/src/code/game.c
index 3f5dfb7eb..6db35e563 100644
--- a/src/code/game.c
+++ b/src/code/game.c
@@ -1,3 +1,4 @@
+#include "libc64/malloc.h"
#include "libu64/debug.h"
#include "libu64/gfxprint.h"
#include "audiomgr.h"
@@ -16,10 +17,13 @@
#include "regs.h"
#include "rumble.h"
#include "speed_meter.h"
+#include "sys_debug_controller.h"
#include "terminal.h"
#include "versions.h"
#include "vi_mode.h"
+#include "zelda_arena.h"
#include "z64debug.h"
+#include "z64dma.h"
#include "z64game.h"
#include "z64vis.h"
diff --git a/src/code/graph.c b/src/code/graph.c
index 288a1cee7..4fc7a56ac 100644
--- a/src/code/graph.c
+++ b/src/code/graph.c
@@ -4,6 +4,7 @@
#include "buffers.h"
#include "console_logo_state.h"
+#include "controller.h"
#include "gfx.h"
#include "fault.h"
#include "file_select_state.h"
@@ -13,12 +14,15 @@
#include "prenmi_state.h"
#include "regs.h"
#include "setup_state.h"
+#include "speed_meter.h"
+#include "sys_debug_controller.h"
#include "sys_ucode.h"
#include "terminal.h"
#include "title_setup_state.h"
#include "ucode_disas.h"
#include "versions.h"
#include "z_game_dlftbls.h"
+#include "z64audio.h"
#include "z64save.h"
#include "z64play.h"
@@ -28,8 +32,8 @@
#define GFXPOOL_HEAD_MAGIC 0x1234
#define GFXPOOL_TAIL_MAGIC 0x5678
-#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.0:224" \
- "ntsc-1.1:224 ntsc-1.2:224 pal-1.0:224 pal-1.1:224"
+#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 ique-cn:128" \
+ "ntsc-1.0:96 ntsc-1.1:96 ntsc-1.2:96 pal-1.0:96 pal-1.1:96"
/**
* The time at which the previous `Graph_Update` ended.
diff --git a/src/code/irqmgr.c b/src/code/irqmgr.c
index b90d5df7b..d741612e2 100644
--- a/src/code/irqmgr.c
+++ b/src/code/irqmgr.c
@@ -32,11 +32,15 @@
*
* @see sched.c
*/
-#include "global.h"
+#include "libu64/debug.h"
+#include "irqmgr.h"
+#include "stackcheck.h"
#include "terminal.h"
#include "versions.h"
#include "z64thread.h"
+#include "macros.h"
+
vu32 gIrqMgrResetStatus = IRQ_RESET_STATUS_IDLE;
volatile OSTime sIrqMgrResetTime = 0;
volatile OSTime gIrqMgrRetraceTime = 0;
diff --git a/src/code/listalloc.c b/src/code/listalloc.c
index 7560c20c6..9ccaa443d 100644
--- a/src/code/listalloc.c
+++ b/src/code/listalloc.c
@@ -1,4 +1,5 @@
-#include "global.h"
+#include "libc64/malloc.h"
+#include "listalloc.h"
ListAlloc* ListAlloc_Init(ListAlloc* this) {
this->prev = NULL;
diff --git a/src/code/main.c b/src/code/main.c
index 32a543a9b..8a52882d0 100644
--- a/src/code/main.c
+++ b/src/code/main.c
@@ -12,11 +12,16 @@ extern struct Scheduler gScheduler;
extern struct PadMgr gPadMgr;
extern struct IrqMgr gIrqMgr;
+#include "libc64/malloc.h"
+#include "audiomgr.h"
#include "debug_arena.h"
#include "fault.h"
+#include "padmgr.h"
#include "prenmi_buff.h"
+#include "regs.h"
#include "segmented_address.h"
#include "stack.h"
+#include "stackcheck.h"
#include "terminal.h"
#include "versions.h"
#if PLATFORM_N64
@@ -28,8 +33,8 @@ extern struct IrqMgr gIrqMgr;
#include "global.h"
-#pragma increment_block_number "gc-eu:160 gc-eu-mq:160 gc-jp:160 gc-jp-ce:160 gc-jp-mq:160 gc-us:160 gc-us-mq:160" \
- "ique-cn:160 ntsc-1.0:140 ntsc-1.1:140 ntsc-1.2:140 pal-1.0:138 pal-1.1:138"
+#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:13 ntsc-1.1:13 ntsc-1.2:13 pal-1.0:11 pal-1.1:11"
extern u8 _buffersSegmentEnd[];
diff --git a/src/code/mempak.c b/src/code/mempak.c
index 8d68be5ca..f316f0ea3 100644
--- a/src/code/mempak.c
+++ b/src/code/mempak.c
@@ -7,7 +7,10 @@
* Each file is assigned an uppercase ASCII letter as an identifier, the game name for each is marked as
* 'ZELDA DEMO TOOL', encoded according to the N64 Font Code described in section 26.3 of the N64 Programming Manual.
*/
-#include "global.h"
+#include "mempak.h"
+#include "padmgr.h"
+
+#include "macros.h"
#define MEMPAK_MAX_FILES 11
diff --git a/src/code/sched.c b/src/code/sched.c
index 57eae6950..4fb5a3376 100644
--- a/src/code/sched.c
+++ b/src/code/sched.c
@@ -42,11 +42,14 @@
#include "libu64/debug.h"
#include "fault.h"
#include "irqmgr.h"
+#include "main.h"
#include "regs.h"
#include "sched.h"
+#include "speed_meter.h"
#include "versions.h"
#include "z64thread.h"
+#include "macros.h"
#include "global.h"
#define RSP_DONE_MSG 667
diff --git a/src/code/shrink_window.c b/src/code/shrink_window.c
index ad8da58d3..e952a0c3f 100644
--- a/src/code/shrink_window.c
+++ b/src/code/shrink_window.c
@@ -1,4 +1,7 @@
-#include "global.h"
+#include "letterbox.h"
+#include "regs.h"
+
+#include "macros.h"
typedef enum LetterboxState {
/* 0 */ LETTERBOX_STATE_IDLE,
diff --git a/src/code/speed_meter.c b/src/code/speed_meter.c
index c8a6fee43..dabfac7aa 100644
--- a/src/code/speed_meter.c
+++ b/src/code/speed_meter.c
@@ -1,8 +1,14 @@
#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" \
"ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
-
-#include "global.h"
+#include "libc64/malloc.h"
+#include "libu64/debug.h"
+#include "gfx.h"
+#include "regs.h"
+#include "speed_meter.h"
#include "terminal.h"
+#include "zelda_arena.h"
+#include "z64game.h"
+#include "z64view.h"
/**
* How much time the audio update on the audio thread (`AudioThread_Update`) took in total, between scheduling the last
diff --git a/src/code/sys_debug_controller.c b/src/code/sys_debug_controller.c
index eb1398ff2..06ce8bf6c 100644
--- a/src/code/sys_debug_controller.c
+++ b/src/code/sys_debug_controller.c
@@ -1,4 +1,7 @@
-#include "global.h"
+#include "sys_debug_controller.h"
+#include "stdbool.h"
+#include "ultra64/ultratypes.h"
+#include "padmgr.h"
u32 gIsCtrlr2Valid = false;
diff --git a/src/code/sys_freeze.c b/src/code/sys_freeze.c
index f7cb515cf..ea50a8949 100644
--- a/src/code/sys_freeze.c
+++ b/src/code/sys_freeze.c
@@ -1,6 +1,10 @@
-#include "global.h"
+#include "libc64/sleep.h"
+#include "attributes.h"
+#include "sys_freeze.h"
#include "terminal.h"
+#include "macros.h"
+
NORETURN void func_800D31A0(void) {
PRINTF(VT_FGCOL(RED) "\n**** Freeze!! ****\n" VT_RST);
for (;;) {
diff --git a/src/code/sys_rumble.c b/src/code/sys_rumble.c
index 10844f367..57f61c921 100644
--- a/src/code/sys_rumble.c
+++ b/src/code/sys_rumble.c
@@ -12,7 +12,8 @@
*
* @note Original filename is likely sys_vibrate.c or similar as it is ordered after sys_ucode.c
*/
-#include "global.h"
+#include "rumble.h"
+#include "padmgr.h"
/**
* Rumble manager update, runs on Vertical Retrace on the padmgr thread.
diff --git a/src/code/z_actor.c b/src/code/z_actor.c
index 54807627b..798d8a036 100644
--- a/src/code/z_actor.c
+++ b/src/code/z_actor.c
@@ -33,8 +33,8 @@
#include "assets/objects/gameplay_dangeon_keep/gameplay_dangeon_keep.h"
#include "assets/objects/object_bdoor/object_bdoor.h"
-#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" \
- "ntsc-1.0:128 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
+#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ntsc-1.0:128" \
+ "ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
CollisionPoly* sCurCeilingPoly;
s32 sCurCeilingBgId;
diff --git a/src/code/z_bg_item.c b/src/code/z_bg_item.c
index 1a4d9f58d..43c32eb55 100644
--- a/src/code/z_bg_item.c
+++ b/src/code/z_bg_item.c
@@ -1,4 +1,7 @@
-#include "global.h"
+#include "z_lib.h"
+#include "z64actor.h"
+#include "z64bgcheck.h"
+#include "z64play.h"
/**
* @param transformFlags How other actors standing on the dynapoly actor's collision move when the dynapoly actor moves.
diff --git a/src/code/z_bgcheck.c b/src/code/z_bgcheck.c
index c5d22fd6a..71733baef 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:184 ntsc-1.1:184 ntsc-1.2:184"
+#pragma increment_block_number "ntsc-1.0:208 ntsc-1.1:208 ntsc-1.2:208"
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 d36f36b9a..79516f017 100644
--- a/src/code/z_camera.c
+++ b/src/code/z_camera.c
@@ -1,14 +1,30 @@
+#include "libc64/math64.h"
+#include "libc64/qrand.h"
#include "ultra64.h"
+
+#include "attributes.h"
+#include "controller.h"
+#include "db_camera.h"
+#include "letterbox.h"
+#include "one_point_cutscene.h"
#include "quake.h"
+#include "regs.h"
+#include "sfx.h"
+#include "sys_math3d.h"
#include "terminal.h"
+#include "z_lib.h"
+#include "zelda_arena.h"
+#include "z64audio.h"
#include "z64cutscene_spline.h"
#include "z64debug.h"
#include "z64olib.h"
+#include "z64play.h"
+#include "z64player.h"
#include "z64save.h"
#include "overlays/actors/ovl_En_Horse/z_en_horse.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 ique-cn:0" \
- "ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
+#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \
+ "ique-cn:192 ntsc-1.0:192 ntsc-1.1:192 ntsc-1.2:192 pal-1.0:192 pal-1.1:192"
s16 Camera_RequestSettingImpl(Camera* camera, s16 requestedSetting, s16 flags);
s32 Camera_RequestModeImpl(Camera* camera, s16 requestedMode, u8 forceModeChange);
@@ -3642,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:120 ntsc-1.1:120 ntsc-1.2:120 pal-1.0:118 pal-1.1:118"
+ "ique-cn:128 ntsc-1.0:95 ntsc-1.1:95 ntsc-1.2:95 pal-1.0:93 pal-1.1:93"
s32 Camera_KeepOn4(Camera* camera) {
static Vec3f D_8015BD50;
diff --git a/src/code/z_cheap_proc.inc.c b/src/code/z_cheap_proc.inc.c
index 059f67c02..e922c0832 100644
--- a/src/code/z_cheap_proc.inc.c
+++ b/src/code/z_cheap_proc.inc.c
@@ -1,4 +1,7 @@
-#include "global.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "sys_matrix.h"
+#include "z64play.h"
void Gfx_DrawDListOpa(PlayState* play, Gfx* dlist) {
OPEN_DISPS(play->state.gfxCtx, "../z_cheap_proc.c", 214);
diff --git a/src/code/z_collision_check.c b/src/code/z_collision_check.c
index c342ddf15..e05bb44d1 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:224 ntsc-1.1:224 ntsc-1.2:224 pal-1.0:224 pal-1.1:224"
+#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"
typedef s32 (*ColChkResetFunc)(PlayState*, Collider*);
typedef void (*ColChkApplyFunc)(PlayState*, CollisionCheckContext*, Collider*);
diff --git a/src/code/z_common_data.c b/src/code/z_common_data.c
index a7f1e7c79..97cb44a4f 100644
--- a/src/code/z_common_data.c
+++ b/src/code/z_common_data.c
@@ -1,14 +1,14 @@
+#include "alignment.h"
#include "region.h"
#include "sequence.h"
#include "versions.h"
+#include "z_locale.h"
#include "z64environment.h"
#include "z64save.h"
#include "z64transition.h"
-#include "global.h"
-
-#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-jp:64 gc-jp-ce:64 gc-jp-mq:64 gc-us:64 gc-us-mq:64" \
- "ntsc-1.0:176 ntsc-1.1:176 ntsc-1.2:176 pal-1.0:192 pal-1.1:192"
+#pragma increment_block_number "gc-eu:192 gc-eu-mq:192 gc-jp:192 gc-jp-ce:192 gc-jp-mq:192 gc-us:192 gc-us-mq:192" \
+ "ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
ALIGNED(16) SaveContext gSaveContext;
#if PLATFORM_IQUE
diff --git a/src/code/z_demo.c b/src/code/z_demo.c
index bd1c41857..921613bd8 100644
--- a/src/code/z_demo.c
+++ b/src/code/z_demo.c
@@ -1,4 +1,4 @@
-#pragma increment_block_number "gc-eu:0 gc-eu-mq:128 gc-jp:0 gc-jp-ce:0 gc-jp-mq:128 gc-us:0 gc-us-mq:128 ique-cn:0" \
+#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 ique-cn:0" \
"ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:0 pal-1.1:0"
#include "global.h"
#include "libu64/gfxprint.h"
@@ -144,8 +144,8 @@ u16 gCamAtSplinePointsAppliedFrame;
u16 gCamEyePointAppliedFrame;
u16 gCamAtPointAppliedFrame;
-#pragma increment_block_number "gc-eu:0 gc-eu-mq:128 gc-jp:0 gc-jp-ce:0 gc-jp-mq:128 gc-us:0 gc-us-mq:128 ique-cn:0" \
- "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
+#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 ique-cn:0" \
+ "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:0 pal-1.0:128 pal-1.1:128"
// Cam ID to return to when a scripted cutscene is finished
s16 sReturnToCamId;
diff --git a/src/code/z_eff_blure.c b/src/code/z_eff_blure.c
index db87e31fd..d44007bb7 100644
--- a/src/code/z_eff_blure.c
+++ b/src/code/z_eff_blure.c
@@ -1,4 +1,15 @@
+#include "libc64/math64.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "sys_math3d.h"
+#include "sys_matrix.h"
+#include "z_lib.h"
+#include "z64effect.h"
+#include "z64skin_matrix.h"
+
+#include "macros.h"
#include "global.h"
+
#include "assets/objects/gameplay_keep/gameplay_keep.h"
void EffectBlure_AddVertex(EffectBlure* this, Vec3f* p1, Vec3f* p2) {
diff --git a/src/code/z_eff_shield_particle.c b/src/code/z_eff_shield_particle.c
index 74cd6a435..e4e331964 100644
--- a/src/code/z_eff_shield_particle.c
+++ b/src/code/z_eff_shield_particle.c
@@ -1,5 +1,15 @@
-#include "global.h"
+#include "libc64/qrand.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
#include "terminal.h"
+#include "z64effect.h"
+#include "z64light.h"
+#include "z64play.h"
+#include "z64skin_matrix.h"
+
+#include "macros.h"
+#include "global.h"
+
#include "assets/objects/gameplay_keep/gameplay_keep.h"
static Vtx sVertices[5] = {
diff --git a/src/code/z_eff_spark.c b/src/code/z_eff_spark.c
index 8074be900..f14c8160f 100644
--- a/src/code/z_eff_spark.c
+++ b/src/code/z_eff_spark.c
@@ -1,4 +1,14 @@
+#include "libc64/qrand.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "sys_matrix.h"
+#include "z64effect.h"
+#include "z64play.h"
+#include "z64skin_matrix.h"
+
+#include "macros.h"
#include "global.h"
+
#include "assets/objects/gameplay_keep/gameplay_keep.h"
// original name: "spark"
diff --git a/src/code/z_eff_ss_dead.c b/src/code/z_eff_ss_dead.c
index 2a64a23f4..c75273872 100644
--- a/src/code/z_eff_ss_dead.c
+++ b/src/code/z_eff_ss_dead.c
@@ -1,4 +1,6 @@
-#include "global.h"
+#include "gfx.h"
+#include "z_lib.h"
+#include "z64play.h"
void func_80026230(PlayState* play, Color_RGBA8* color, s16 arg2, s16 arg3) {
f32 cos;
diff --git a/src/code/z_effect.c b/src/code/z_effect.c
index ac2141db0..02ba00a8d 100644
--- a/src/code/z_effect.c
+++ b/src/code/z_effect.c
@@ -1,6 +1,7 @@
-#include "global.h"
-
+#include "gfx.h"
+#include "z64effect.h"
#include "z64frame_advance.h"
+#include "z64play.h"
EffectContext sEffectContext;
diff --git a/src/code/z_effect_soft_sprite_old_init.c b/src/code/z_effect_soft_sprite_old_init.c
index 253996b62..c04e76128 100644
--- a/src/code/z_effect_soft_sprite_old_init.c
+++ b/src/code/z_effect_soft_sprite_old_init.c
@@ -1,4 +1,16 @@
-#include "global.h"
+#include "libc64/qrand.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "rand.h"
+#include "regs.h"
+#include "segmented_address.h"
+#include "sfx.h"
+#include "z_lib.h"
+#include "z64effect.h"
+#include "z64play.h"
+#include "z64player.h"
+#include "z64skin_matrix.h"
+
#include "overlays/effects/ovl_Effect_Ss_Dust/z_eff_ss_dust.h"
#include "overlays/effects/ovl_Effect_Ss_KiraKira/z_eff_ss_kirakira.h"
#include "overlays/effects/ovl_Effect_Ss_Bomb/z_eff_ss_bomb.h"
diff --git a/src/code/z_en_a_keep.c b/src/code/z_en_a_keep.c
index 23d77075d..9b2bf7c0b 100644
--- a/src/code/z_en_a_keep.c
+++ b/src/code/z_en_a_keep.c
@@ -1,4 +1,11 @@
-#include "global.h"
+#include "z_en_a_obj.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "sfx.h"
+#include "sys_matrix.h"
+#include "z_lib.h"
+#include "z64play.h"
+
#include "assets/objects/gameplay_keep/gameplay_keep.h"
#include "assets/objects/object_d_hsblock/object_d_hsblock.h"
diff --git a/src/code/z_fbdemo.c b/src/code/z_fbdemo.c
index a2b0fb8bf..246e27b1a 100644
--- a/src/code/z_fbdemo.c
+++ b/src/code/z_fbdemo.c
@@ -9,7 +9,14 @@
* @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 "global.h"
+#include "libc64/malloc.h"
+#include "libc64/sleep.h"
+#include "libu64/debug.h"
+#include "gfx.h"
+#include "z64math.h"
+#include "z64transition_instances.h"
+
+#include "macros.h"
// color framebuffer
extern u16 D_0F000000[];
diff --git a/src/code/z_fbdemo_circle.c b/src/code/z_fbdemo_circle.c
index 59f019e95..c25f174a7 100644
--- a/src/code/z_fbdemo_circle.c
+++ b/src/code/z_fbdemo_circle.c
@@ -1,3 +1,5 @@
+#include "gfx.h"
+
#include "global.h"
typedef enum TransitionCircleDirection {
diff --git a/src/code/z_fcurve_data_skelanime.c b/src/code/z_fcurve_data_skelanime.c
index 1086adb2e..379744931 100644
--- a/src/code/z_fcurve_data_skelanime.c
+++ b/src/code/z_fcurve_data_skelanime.c
@@ -25,8 +25,14 @@
* - higher detail draws both.
*/
-#include "global.h"
+#include "gfx.h"
+#include "regs.h"
+#include "segmented_address.h"
+#include "sys_matrix.h"
+#include "zelda_arena.h"
+#include "z64actor.h"
#include "z64curve.h"
+#include "z64play.h"
void SkelCurve_Clear(SkelCurve* skelCurve) {
skelCurve->limbCount = 0;
diff --git a/src/code/z_kaleido_scope_call.c b/src/code/z_kaleido_scope_call.c
index 1d99a6f5c..cacd46abe 100644
--- a/src/code/z_kaleido_scope_call.c
+++ b/src/code/z_kaleido_scope_call.c
@@ -1,5 +1,5 @@
-#pragma increment_block_number "gc-eu:224 gc-eu-mq:224 gc-jp:224 gc-jp-ce:224 gc-jp-mq:224 gc-us:224 gc-us-mq:224" \
- "ique-cn:224 ntsc-1.0:224 ntsc-1.1:224 ntsc-1.2:224 pal-1.0:224 pal-1.1:224"
+#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:144 ntsc-1.1:144 ntsc-1.2:144 pal-1.0:144 pal-1.1:144"
#include "libu64/debug.h"
#include "kaleido_manager.h"
diff --git a/src/code/z_kankyo.c b/src/code/z_kankyo.c
index 61285768a..ff23bbebc 100644
--- a/src/code/z_kankyo.c
+++ b/src/code/z_kankyo.c
@@ -1,5 +1,5 @@
-#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ique-cn:0" \
- "ntsc-1.0:0 ntsc-1.1:0 ntsc-1.2:0 pal-1.0:64 pal-1.1:64"
+#pragma increment_block_number "gc-eu:64 gc-eu-mq:64 gc-jp:64 gc-jp-ce:64 gc-jp-mq:64 gc-us:64 gc-us-mq:64 ique-cn:64" \
+ "ntsc-1.0:64 ntsc-1.1:64 ntsc-1.2:64 pal-1.0:64 pal-1.1:64"
#include "libc64/qrand.h"
#include "libu64/gfxprint.h"
@@ -235,8 +235,8 @@ s16 sLightningFlashAlpha;
s16 sSunDepthTestX;
s16 sSunDepthTestY;
-#pragma increment_block_number "gc-eu:160 gc-eu-mq:160 gc-jp:128 gc-jp-ce:128 gc-jp-mq:128 gc-us:128 gc-us-mq:128" \
- "ique-cn:128 ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:160 pal-1.1:160"
+#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"
LightNode* sNGameOverLightNode;
LightInfo sNGameOverLightInfo;
diff --git a/src/code/z_map_mark.c b/src/code/z_map_mark.c
index d226d9e0a..600aa2189 100644
--- a/src/code/z_map_mark.c
+++ b/src/code/z_map_mark.c
@@ -1,5 +1,6 @@
#include "libu64/debug.h"
#include "libu64/overlay.h"
+#include "map.h"
#include "regs.h"
#include "romfile.h"
#include "segment_symbols.h"
diff --git a/src/code/z_message.c b/src/code/z_message.c
index 1240cfed9..88c219d37 100644
--- a/src/code/z_message.c
+++ b/src/code/z_message.c
@@ -24,7 +24,7 @@
#include "assets/textures/parameter_static/parameter_static.h"
#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" \
- "ntsc-1.0:208 ntsc-1.1:208 ntsc-1.2:208 pal-1.0:128 pal-1.1:128"
+ "ntsc-1.0:80 ntsc-1.1:80 ntsc-1.2:80 pal-1.0:128 pal-1.1:128"
#if !PLATFORM_IQUE
#define MSG_BUF_DECODED (msgCtx->msgBufDecoded)
diff --git a/src/code/z_moji.c b/src/code/z_moji.c
index c9cbbdda8..33abd83f7 100644
--- a/src/code/z_moji.c
+++ b/src/code/z_moji.c
@@ -2,6 +2,9 @@
* Unused. A very simple utility for drawing text on screen.
*/
+#include "gfx.h"
+
+#include "macros.h"
#include "global.h"
// how big to draw the characters on screen
diff --git a/src/code/z_play.c b/src/code/z_play.c
index d49ae40fe..13ce98451 100644
--- a/src/code/z_play.c
+++ b/src/code/z_play.c
@@ -1,3 +1,5 @@
+#include "libc64/malloc.h"
+#include "libc64/qrand.h"
#include "libu64/debug.h"
#include "buffers.h"
#include "controller.h"
@@ -33,11 +35,12 @@
#include "z64play.h"
#include "z64player.h"
#include "z64save.h"
+#include "z64vis.h"
#include "global.h"
-#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 gc-jp:0 gc-jp-ce:0 gc-jp-mq:0 gc-us:0 gc-us-mq:0 ique-cn:192" \
- "ntsc-1.0:144 ntsc-1.1:144 ntsc-1.2:144 pal-1.0:144 pal-1.1:144"
+#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 ique-cn:0" \
+ "ntsc-1.0:224 ntsc-1.1:224 ntsc-1.2:224 pal-1.0:224 pal-1.1:224"
TransitionTile gTransitionTile;
s32 gTransitionTileState;
diff --git a/src/code/z_player_call.c b/src/code/z_player_call.c
index 2874522df..eb52aff79 100644
--- a/src/code/z_player_call.c
+++ b/src/code/z_player_call.c
@@ -1,4 +1,8 @@
-#include "global.h"
+#include "kaleido_manager.h"
+#include "z64actor.h"
+#include "z64actor_profile.h"
+#include "z64play.h"
+#include "z64player.h"
#define FLAGS \
(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_UPDATE_CULLING_DISABLED | \
diff --git a/src/code/z_rcp.c b/src/code/z_rcp.c
index eb9790a6e..6228b51cf 100644
--- a/src/code/z_rcp.c
+++ b/src/code/z_rcp.c
@@ -3,11 +3,10 @@
#include "gfx_setupdl.h"
#include "gfxalloc.h"
#include "letterbox.h"
+#include "main.h"
#include "regs.h"
#include "z64play.h"
-#include "global.h"
-
Gfx sSetupDL[SETUPDL_MAX][6] = {
{
/* SETUPDL_0 */
diff --git a/src/code/z_rumble.c b/src/code/z_rumble.c
index 49a54e7aa..52897d629 100644
--- a/src/code/z_rumble.c
+++ b/src/code/z_rumble.c
@@ -11,7 +11,9 @@
*
* @note Original filename is likely z_vibrate.c or similar as it is ordered after z_ss_sram.c and before z_view.c
*/
-#include "global.h"
+#include "rumble.h"
+#include "padmgr.h"
+#include "z64math.h"
RumbleMgr sRumbleMgr;
diff --git a/src/code/z_scene.c b/src/code/z_scene.c
index 805141ade..77206ce6f 100644
--- a/src/code/z_scene.c
+++ b/src/code/z_scene.c
@@ -1,9 +1,16 @@
-#include "global.h"
+#include "regs.h"
+#include "romfile.h"
#include "seqcmd.h"
+#include "segment_symbols.h"
+#include "segmented_address.h"
#include "terminal.h"
#include "versions.h"
#include "z_actor_dlftbls.h"
+#include "z_lib.h"
+#include "z64play.h"
+#include "z64player.h"
#include "z64save.h"
+#include "z64scene.h"
SceneCmdHandlerFunc sSceneCmdHandlers[SCENE_CMD_ID_MAX];
RomFile sNaviQuestHintFiles[];
diff --git a/src/code/z_skelanime.c b/src/code/z_skelanime.c
index 49502f4ec..be5f27564 100644
--- a/src/code/z_skelanime.c
+++ b/src/code/z_skelanime.c
@@ -1,5 +1,17 @@
-#include "global.h"
+#include "libu64/debug.h"
+#include "gfx.h"
+#include "regs.h"
+#include "segmented_address.h"
+#include "segment_symbols.h"
+#include "sys_matrix.h"
#include "terminal.h"
+#include "z_lib.h"
+#include "zelda_arena.h"
+#include "z64animation.h"
+#include "z64animation_legacy.h"
+#include "z64play.h"
+
+#include "macros.h"
#define ANIM_INTERP 1
diff --git a/src/code/z_skin_matrix.c b/src/code/z_skin_matrix.c
index 689fe6710..f83cb8295 100644
--- a/src/code/z_skin_matrix.c
+++ b/src/code/z_skin_matrix.c
@@ -1,5 +1,9 @@
-#include "global.h"
+#include "gfx.h"
#include "terminal.h"
+#include "z_lib.h"
+#include "z64skin_matrix.h"
+
+#include "macros.h"
// clang-format off
MtxF sMtxFClear = {
diff --git a/src/code/z_view.c b/src/code/z_view.c
index 5b68f00bf..dd4608cde 100644
--- a/src/code/z_view.c
+++ b/src/code/z_view.c
@@ -1,5 +1,12 @@
-#include "global.h"
+#include "libc64/malloc.h"
+#include "libu64/debug.h"
+#include "gfx.h"
+#include "letterbox.h"
+#include "main.h"
+#include "regs.h"
+#include "sys_matrix.h"
#include "terminal.h"
+#include "z64view.h"
vu32 sLogOnNextViewInit = true;
diff --git a/src/code/z_vimode.c b/src/code/z_vimode.c
index 668e9648e..d1f472057 100644
--- a/src/code/z_vimode.c
+++ b/src/code/z_vimode.c
@@ -1,9 +1,15 @@
#include "vi_mode.h"
-#include "global.h"
+#include "libu64/debug.h"
#include "ultra64/viint.h"
+#include "controller.h"
+#include "main.h"
+#include "regs.h"
#include "versions.h"
+#include "global.h"
+#include "macros.h"
+
void ViMode_LogPrint(OSViMode* osViMode) {
LOG_ADDRESS("osvimodep", osViMode, "../z_vimode.c", 87);
LOG_HEX32("osvimodep->comRegs.ctrl", osViMode->comRegs.ctrl, "../z_vimode.c", 88);
diff --git a/src/code/z_viscvg.c b/src/code/z_viscvg.c
index 9caf39a3f..5fff1a460 100644
--- a/src/code/z_viscvg.c
+++ b/src/code/z_viscvg.c
@@ -20,7 +20,10 @@
* before the filter is applied.
*/
-#include "global.h"
+#include "gfx.h"
+#include "z64vis.h"
+
+#include "macros.h"
/**
* Draws only coverage: does not retain any of the original pixel RGB, primColor is used as background color.
diff --git a/src/code/z_vismono.c b/src/code/z_vismono.c
index aac4fa84f..e3cecda5c 100644
--- a/src/code/z_vismono.c
+++ b/src/code/z_vismono.c
@@ -8,7 +8,14 @@
* comments.
*/
-#include "global.h"
+#include "libc64/malloc.h"
+#include "libu64/debug.h"
+#include "attributes.h"
+#include "gfx.h"
+#include "gfxalloc.h"
+#include "z64vis.h"
+
+#include "macros.h"
// Height of the fragments the color frame buffer (CFB) is split into.
// It is the maximum amount of lines such that all rgba16 SCREEN_WIDTH-long lines fit into
diff --git a/src/code/z_viszbuf.c b/src/code/z_viszbuf.c
index 5a542bc12..8f8265bfd 100644
--- a/src/code/z_viszbuf.c
+++ b/src/code/z_viszbuf.c
@@ -32,7 +32,10 @@
* again ignored by the RenderMode.
*/
-#include "global.h"
+#include "gfx.h"
+#include "z64vis.h"
+
+#include "macros.h"
// Height of the fragments the z-buffer is split into.
// It is the maximum amount of lines such that all rgba16 SCREEN_WIDTH-long lines fit into TMEM.
diff --git a/src/code/z_vr_box_draw.c b/src/code/z_vr_box_draw.c
index 45e3237de..aa7fa1dae 100644
--- a/src/code/z_vr_box_draw.c
+++ b/src/code/z_vr_box_draw.c
@@ -1,4 +1,7 @@
-#include "global.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "sys_matrix.h"
+#include "z64skybox.h"
Mtx* sSkyboxDrawMatrix;
diff --git a/src/libleo/api/cacreateleomanager.c b/src/libleo/api/cacreateleomanager.c
index fc3235c08..aa9c0feda 100644
--- a/src/libleo/api/cacreateleomanager.c
+++ b/src/libleo/api/cacreateleomanager.c
@@ -1,9 +1,11 @@
-#include "global.h"
#include "ultra64/asm.h"
#include "ultra64/leo.h"
#include "ultra64/leoappli.h"
#include "ultra64/leodrive.h"
#include "libc/stdint.h"
+#include "attributes.h"
+
+#include "global.h"
s32 LeoCACreateLeoManager(s32 comPri, s32 intPri, OSMesg* cmdBuf, s32 cmdMsgCnt) {
OSPiHandle* driveRomHandle;
diff --git a/src/libleo/api/cjcreateleomanager.c b/src/libleo/api/cjcreateleomanager.c
index 26ced4f7d..4cd6ab001 100644
--- a/src/libleo/api/cjcreateleomanager.c
+++ b/src/libleo/api/cjcreateleomanager.c
@@ -1,9 +1,11 @@
-#include "global.h"
#include "ultra64/asm.h"
#include "ultra64/leo.h"
#include "ultra64/leoappli.h"
#include "ultra64/leodrive.h"
#include "libc/stdint.h"
+#include "attributes.h"
+
+#include "global.h"
s32 LeoCJCreateLeoManager(s32 comPri, s32 intPri, OSMesg* cmdBuf, s32 cmdMsgCnt) {
OSPiHandle* driveRomHandle;
diff --git a/src/libleo/leo/leocmdex.c b/src/libleo/leo/leocmdex.c
index ca3101fb0..7a678dc67 100644
--- a/src/libleo/leo/leocmdex.c
+++ b/src/libleo/leo/leocmdex.c
@@ -1,7 +1,9 @@
-#include "global.h"
#include "ultra64/leo.h"
#include "ultra64/leoappli.h"
#include "ultra64/leodrive.h"
+#include "attributes.h"
+
+#include "global.h"
extern vu16 LEOrw_flags;
diff --git a/src/libleo/leo/leomecha.c b/src/libleo/leo/leomecha.c
index da141616c..98de987f7 100644
--- a/src/libleo/leo/leomecha.c
+++ b/src/libleo/leo/leomecha.c
@@ -1,7 +1,9 @@
-#include "global.h"
#include "ultra64/leo.h"
#include "ultra64/leoappli.h"
#include "ultra64/leodrive.h"
+#include "attributes.h"
+
+#include "global.h"
extern s32 currentCommand;
diff --git a/src/libleo/leo/leotimer.c b/src/libleo/leo/leotimer.c
index aadfc3b82..c2c5d98b5 100644
--- a/src/libleo/leo/leotimer.c
+++ b/src/libleo/leo/leotimer.c
@@ -1,7 +1,9 @@
-#include "global.h"
#include "ultra64/leo.h"
#include "ultra64/leoappli.h"
#include "ultra64/leodrive.h"
+#include "attributes.h"
+
+#include "global.h"
typedef struct {
/* 0x0 */ u8 year;
diff --git a/src/libu64/gfxprint.c b/src/libu64/gfxprint.c
index b3ebfcd0e..7a1c37e08 100644
--- a/src/libu64/gfxprint.c
+++ b/src/libu64/gfxprint.c
@@ -1,4 +1,8 @@
-#include "global.h"
+#include "libc64/aprintf.h"
+#include "libu64/gfxprint.h"
+#include "attributes.h"
+
+#include "macros.h"
u16 sGfxPrintFontTLUT[64] = {
0x0000, 0xFFFF, 0x0000, 0xFFFF, 0x0000, 0xFFFF, 0x0000, 0xFFFF, 0x0000, 0xFFFF, 0x0000, 0xFFFF, 0x0000,
diff --git a/src/libu64/stackcheck.c b/src/libu64/stackcheck.c
index 787eb1c3e..f98e828ea 100644
--- a/src/libu64/stackcheck.c
+++ b/src/libu64/stackcheck.c
@@ -1,6 +1,10 @@
-#include "global.h"
+#include "libu64/debug.h"
+#include "attributes.h"
+#include "stackcheck.h"
#include "terminal.h"
+#include "macros.h"
+
StackEntry* sStackInfoListStart = NULL;
StackEntry* sStackInfoListEnd = NULL;
diff --git a/src/libu64/system_heap.c b/src/libu64/system_heap.c
index 1ae93e868..3a98ef3ce 100644
--- a/src/libu64/system_heap.c
+++ b/src/libu64/system_heap.c
@@ -1,4 +1,4 @@
-#include "global.h"
+#include "libc64/malloc.h"
#include "libc64/os_malloc.h"
typedef void (*arg3_800FC868)(void*);
diff --git a/src/libultra/os/settimer.c b/src/libultra/os/settimer.c
index c5632e82c..3c4c64407 100644
--- a/src/libultra/os/settimer.c
+++ b/src/libultra/os/settimer.c
@@ -1,3 +1,6 @@
+#include "ultra64.h"
+#include "attributes.h"
+
#include "global.h"
s32 osSetTimer(OSTimer* timer, OSTime countdown, OSTime interval, OSMesgQueue* mq, OSMesg msg) {
diff --git a/src/n64dd/n64dd_801C8000.c b/src/n64dd/n64dd_801C8000.c
index 9b0a4b3ad..8c6c91a9c 100644
--- a/src/n64dd/n64dd_801C8000.c
+++ b/src/n64dd/n64dd_801C8000.c
@@ -1,7 +1,7 @@
// Does some command processing
-#include "global.h"
#include "n64dd.h"
#include "versions.h"
+#include "z_locale.h"
void func_801C8554(void);
void func_801C8578(void* arg0, void* arg1, OSId id, void* sp, OSPri pri);
diff --git a/src/n64dd/n64dd_801C8940.c b/src/n64dd/n64dd_801C8940.c
index 437a23dcf..a0d1ff84b 100644
--- a/src/n64dd/n64dd_801C8940.c
+++ b/src/n64dd/n64dd_801C8940.c
@@ -1,6 +1,9 @@
// Lower-level command processing in a background thread
-#include "global.h"
#include "n64dd.h"
+#include "libc64/sleep.h"
+#include "attributes.h"
+
+#include "global.h"
s32 D_801D2EA0 = 0;
u8* D_801D2EA4 = NULL;
diff --git a/src/n64dd/n64dd_801C9B70.c b/src/n64dd/n64dd_801C9B70.c
index d7d2f6384..2437904c3 100644
--- a/src/n64dd/n64dd_801C9B70.c
+++ b/src/n64dd/n64dd_801C9B70.c
@@ -1,6 +1,6 @@
// User-facing error handling
-#include "global.h"
#include "n64dd.h"
+#include "z_locale.h"
u8 B_801E0F80[0x600];
u8 B_801E1580[0x2800];
diff --git a/src/n64dd/n64dd_801CA0B0.c b/src/n64dd/n64dd_801CA0B0.c
index 8758e0fd6..d564d46ca 100644
--- a/src/n64dd/n64dd_801CA0B0.c
+++ b/src/n64dd/n64dd_801CA0B0.c
@@ -1,5 +1,8 @@
-#include "global.h"
#include "n64dd.h"
+#include "libc64/aprintf.h"
+#include "attributes.h"
+
+#include "global.h"
// Draws text to framebuffer
typedef struct struct_801CA704 {
diff --git a/src/n64dd/z_n64dd.c b/src/n64dd/z_n64dd.c
index 1b6934f50..17aff6416 100644
--- a/src/n64dd/z_n64dd.c
+++ b/src/n64dd/z_n64dd.c
@@ -1,11 +1,15 @@
// Main interface for the 64DD from the rest of the game. Starts background
// threads and provides functions to submit commands to them.
-#include "global.h"
+#include "libc64/sleep.h"
#include "fault.h"
+#include "irqmgr.h"
+#include "line_numbers.h"
#include "n64dd.h"
#include "stack.h"
+#include "stackcheck.h"
+#include "sys_freeze.h"
#include "versions.h"
-#include "line_numbers.h"
+#include "z64audio.h"
#include "z64thread.h"
#pragma increment_block_number "ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
diff --git a/src/overlays/actors/ovl_Boss_Sst/z_boss_sst.c b/src/overlays/actors/ovl_Boss_Sst/z_boss_sst.c
index 3cb53006c..1425b63c8 100644
--- a/src/overlays/actors/ovl_Boss_Sst/z_boss_sst.c
+++ b/src/overlays/actors/ovl_Boss_Sst/z_boss_sst.c
@@ -32,8 +32,8 @@
#include "assets/objects/object_sst/object_sst.h"
#include "assets/objects/gameplay_keep/gameplay_keep.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 pal-1.0:128" \
- "pal-1.1:128"
+#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 ique-cn:128" \
+ "pal-1.0:128 pal-1.1:128"
#define FLAGS \
(ACTOR_FLAG_ATTENTION_ENABLED | ACTOR_FLAG_HOSTILE | ACTOR_FLAG_UPDATE_CULLING_DISABLED | \
diff --git a/src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c b/src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c
index 9e9510f2d..5165520c6 100644
--- a/src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c
+++ b/src/overlays/actors/ovl_Elf_Msg/z_elf_msg.c
@@ -11,6 +11,7 @@
#include "gfx_setupdl.h"
#include "ichain.h"
#include "regs.h"
+#include "sys_matrix.h"
#include "terminal.h"
#include "z64play.h"
#include "z64player.h"
diff --git a/src/overlays/actors/ovl_En_Bili/z_en_bili.c b/src/overlays/actors/ovl_En_Bili/z_en_bili.c
index 57078a73a..82f7b6279 100644
--- a/src/overlays/actors/ovl_En_Bili/z_en_bili.c
+++ b/src/overlays/actors/ovl_En_Bili/z_en_bili.c
@@ -7,8 +7,11 @@
#include "z_en_bili.h"
#include "libc64/qrand.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
#include "ichain.h"
#include "rand.h"
+#include "segmented_address.h"
#include "sfx.h"
#include "sys_matrix.h"
#include "versions.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 1ebeaa882..4517fc7e7 100644
--- a/src/overlays/gamestates/ovl_file_choose/z_file_choose.c
+++ b/src/overlays/gamestates/ovl_file_choose/z_file_choose.c
@@ -7,6 +7,7 @@
#include "gfx_setupdl.h"
#include "letterbox.h"
#include "macros.h"
+#include "main.h"
#include "map_select_state.h"
#if PLATFORM_N64
#include "n64dd.h"
@@ -20,8 +21,10 @@
#include "sys_matrix.h"
#include "terminal.h"
#include "versions.h"
+#include "z_lib.h"
#include "z64audio.h"
#include "z64environment.h"
+#include "z64play.h"
#include "z64save.h"
#include "z64skybox.h"
#include "z64sram.h"
diff --git a/src/overlays/gamestates/ovl_file_choose/z_file_copy_erase.c b/src/overlays/gamestates/ovl_file_choose/z_file_copy_erase.c
index 8fe674c3a..4cb4fa5c8 100644
--- a/src/overlays/gamestates/ovl_file_choose/z_file_copy_erase.c
+++ b/src/overlays/gamestates/ovl_file_choose/z_file_copy_erase.c
@@ -3,12 +3,12 @@
#include "controller.h"
#include "regs.h"
+#include "rumble.h"
#include "sfx.h"
#include "z64save.h"
#include "z64sram.h"
#include "macros.h"
-#include "global.h"
// In iQue versions, this file contains many workarounds for EGCS internal
// compiler errors (see docs/compilers.md)
diff --git a/src/overlays/gamestates/ovl_file_choose/z_file_nameset.c b/src/overlays/gamestates/ovl_file_choose/z_file_nameset.c
index aeee6539a..2c1e49fb5 100644
--- a/src/overlays/gamestates/ovl_file_choose/z_file_nameset.c
+++ b/src/overlays/gamestates/ovl_file_choose/z_file_nameset.c
@@ -4,6 +4,7 @@
#include "controller.h"
#include "gfx.h"
#include "gfx_setupdl.h"
+#include "regs.h"
#include "rumble.h"
#include "sfx.h"
#include "sys_matrix.h"
diff --git a/src/overlays/gamestates/ovl_title/z_title.c b/src/overlays/gamestates/ovl_title/z_title.c
index 0470a4f52..175c43f9e 100644
--- a/src/overlays/gamestates/ovl_title/z_title.c
+++ b/src/overlays/gamestates/ovl_title/z_title.c
@@ -14,10 +14,13 @@
#include "console_logo_state.h"
#include "gfx.h"
#include "gfx_setupdl.h"
+#include "padmgr.h"
#include "regs.h"
#include "segment_symbols.h"
#include "sequence.h"
#include "sys_matrix.h"
+#include "sys_debug_controller.h"
+#include "sys_freeze.h"
#include "title_setup_state.h"
#include "versions.h"
#include "z64actor.h"
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_collect.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_collect.c
index c35e3f8cf..4690ccade 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_collect.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_collect.c
@@ -1,7 +1,15 @@
#include "z_kaleido_scope.h"
+#include "controller.h"
+#include "gfx.h"
+#include "regs.h"
+#include "sfx.h"
+#include "z64ocarina.h"
+#include "z64play.h"
#include "z64save.h"
+#include "global.h"
+
#include "assets/textures/parameter_static/parameter_static.h"
#include "assets/textures/icon_item_static/icon_item_static.h"
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_debug.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_debug.c
index 0cecf2ed2..3339bc325 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_debug.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_debug.c
@@ -1,5 +1,11 @@
#include "z_kaleido_scope.h"
+#include "libu64/gfxprint.h"
+#include "controller.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "gfxalloc.h"
+#include "z64play.h"
#include "z64save.h"
#include "assets/textures/parameter_static/parameter_static.h"
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c
index 0ac596023..8a8b62799 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_equipment.c
@@ -1,5 +1,12 @@
#include "z_kaleido_scope.h"
+#include "controller.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "regs.h"
+#include "sfx.h"
+#include "z64play.h"
+#include "z64player.h"
#include "z64save.h"
#include "assets/textures/icon_item_static/icon_item_static.h"
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_item.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_item.c
index 3b9ee9a5d..e76c6a7ce 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_item.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_item.c
@@ -1,5 +1,12 @@
#include "z_kaleido_scope.h"
+#include "libu64/pad.h"
+#include "controller.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "regs.h"
+#include "sfx.h"
+#include "z64play.h"
#include "z64save.h"
#include "assets/textures/parameter_static/parameter_static.h"
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c
index ccd2bcee9..09a85cb03 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_map.c
@@ -1,9 +1,17 @@
#include "z_kaleido_scope.h"
+
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "map.h"
+#include "regs.h"
+#include "sfx.h"
#include "sys_ucode.h"
#include "versions.h"
#include "z64play.h"
#include "z64save.h"
+#include "global.h"
+
#include "assets/textures/icon_item_24_static/icon_item_24_static.h"
#if OOT_NTSC
#include "assets/textures/icon_item_jpn_static/icon_item_jpn_static.h"
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_prompt.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_prompt.c
index c784ab0b4..6264c4147 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_prompt.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_prompt.c
@@ -1,5 +1,10 @@
#include "z_kaleido_scope.h"
+#include "libu64/pad.h"
+#include "regs.h"
+#include "sfx.h"
+#include "z64play.h"
+
static s16 sKaleidoPromptCursorAlphaVals[] = { 100, 255 };
void KaleidoScope_UpdatePrompt(PlayState* play) {
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c
index 634d7ed38..5c0bfab0d 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.c
@@ -1,13 +1,30 @@
#include "z_kaleido_scope.h"
+#include "libc64/sleep.h"
+#include "controller.h"
+#include "gfx.h"
+#include "gfx_setupdl.h"
+#include "gfxalloc.h"
+#include "map.h"
#if PLATFORM_N64
#include "n64dd.h"
#endif
+#include "regs.h"
+#include "segment_symbols.h"
+#include "segmented_address.h"
#include "seqcmd.h"
+#include "sfx.h"
+#include "sys_matrix.h"
#include "terminal.h"
#include "title_setup_state.h"
#include "versions.h"
+#include "z64audio.h"
+#include "z64ocarina.h"
+#include "z64play.h"
+#include "z64player.h"
#include "z64save.h"
+#include "global.h"
+
#include "assets/textures/icon_item_static/icon_item_static.h"
#include "assets/textures/icon_item_24_static/icon_item_24_static.h"
#if OOT_NTSC
@@ -20,7 +37,7 @@
#endif
#include "assets/textures/icon_item_gameover_static/icon_item_gameover_static.h"
-#pragma increment_block_number "gc-eu:0 gc-eu-mq:0 ntsc-1.0:128 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:128 pal-1.1:128"
+#pragma increment_block_number "gc-eu:128 gc-eu-mq:128 ntsc-1.0:0 ntsc-1.1:128 ntsc-1.2:128 pal-1.0:0 pal-1.1:0"
#if !PLATFORM_GC
#define KALEIDO_PROMPT_CURSOR_R 100
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h
index c1e965c65..5a9923443 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h
+++ b/src/overlays/misc/ovl_kaleido_scope/z_kaleido_scope.h
@@ -2,8 +2,11 @@
#define Z_KALEIDO_SCOPE_H
#include "ultra64.h"
-#include "global.h"
+#include "gfx.h"
#include "z64inventory.h"
+#include "z64pause.h"
+
+struct PlayState;
extern u8 gAmmoItems[];
extern s16 gVtxPageMapWorldQuadsWidth[];
@@ -166,26 +169,26 @@ typedef enum ItemQuad {
/* 41 */ ITEM_QUAD_MAX
} ItemQuad;
-void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx);
+void KaleidoScope_DrawQuestStatus(struct PlayState* play, GraphicsContext* gfxCtx);
s32 KaleidoScope_UpdateQuestStatusPoint(PauseContext* pauseCtx, s32 point);
-void KaleidoScope_DrawDebugEditor(PlayState* play);
-void KaleidoScope_DrawPlayerWork(PlayState* play);
-void KaleidoScope_DrawEquipment(PlayState* play);
+void KaleidoScope_DrawDebugEditor(struct PlayState* play);
+void KaleidoScope_DrawPlayerWork(struct PlayState* play);
+void KaleidoScope_DrawEquipment(struct PlayState* play);
void KaleidoScope_SetCursorPos(PauseContext* pauseCtx, u16 index, Vtx* vtx);
-void KaleidoScope_DrawItemSelect(PlayState* play);
-void KaleidoScope_UpdateItemEquip(PlayState* play);
-void KaleidoScope_DrawDungeonMap(PlayState* play, GraphicsContext* gfxCtx);
-void KaleidoScope_DrawWorldMap(PlayState* play, GraphicsContext* gfxCtx);
-void KaleidoScope_UpdatePrompt(PlayState* play);
+void KaleidoScope_DrawItemSelect(struct PlayState* play);
+void KaleidoScope_UpdateItemEquip(struct PlayState* play);
+void KaleidoScope_DrawDungeonMap(struct PlayState* play, GraphicsContext* gfxCtx);
+void KaleidoScope_DrawWorldMap(struct PlayState* play, GraphicsContext* gfxCtx);
+void KaleidoScope_UpdatePrompt(struct PlayState* play);
Gfx* KaleidoScope_QuadTextureIA4(Gfx* gfx, void* texture, s16 width, s16 height, u16 point);
Gfx* KaleidoScope_QuadTextureIA8(Gfx* gfx, void* texture, s16 width, s16 height, u16 point);
-void KaleidoScope_MoveCursorToSpecialPos(PlayState* play, u16 specialPos);
+void KaleidoScope_MoveCursorToSpecialPos(struct PlayState* play, u16 specialPos);
void KaleidoScope_DrawQuadTextureRGBA32(GraphicsContext* gfxCtx, void* texture, u16 width, u16 height, u16 point);
void KaleidoScope_ProcessPlayerPreRender();
-void KaleidoScope_SetupPlayerPreRender(PlayState* play);
-void KaleidoScope_DrawCursor(PlayState* play, u16 pageIndex);
-void KaleidoScope_UpdateDungeonMap(PlayState* play);
+void KaleidoScope_SetupPlayerPreRender(struct PlayState* play);
+void KaleidoScope_DrawCursor(struct PlayState* play, u16 pageIndex);
+void KaleidoScope_UpdateDungeonMap(struct PlayState* play);
-void PauseMapMark_Draw(PlayState* play);
+void PauseMapMark_Draw(struct PlayState* play);
#endif
diff --git a/src/overlays/misc/ovl_kaleido_scope/z_lmap_mark.c b/src/overlays/misc/ovl_kaleido_scope/z_lmap_mark.c
index 89283bfc1..126ceca4f 100644
--- a/src/overlays/misc/ovl_kaleido_scope/z_lmap_mark.c
+++ b/src/overlays/misc/ovl_kaleido_scope/z_lmap_mark.c
@@ -1,7 +1,14 @@
#if PLATFORM_N64
#include "n64dd.h"
#endif
+#include "regs.h"
+#include "sys_matrix.h"
#include "z_kaleido_scope.h"
+#include "z_lib.h"
+#include "z64play.h"
+
+#include "global.h"
+
#include "assets/textures/parameter_static/parameter_static.h"
typedef struct PauseMapMarkInfo {