summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcadmic <cadmic24@gmail.com>2024-01-30 10:54:38 -0800
committerGitHub <noreply@github.com>2024-01-30 13:54:38 -0500
commit9816f62129b26b5d1068e2fa2ea887ad3fdcfd88 (patch)
treecd6390c2cf4f3c08cec43aa1ce4022a0aecd3296
parent6d09437c2162a156a843f3f10b1f864437eee6ed (diff)
Define OOT_DEBUG=0 in retail builds (#1658)
* Define OOT_DEBUG=0 in retail builds * Fix ifndef * Replace VI_MODE_EDITOR_INACTIVE * Revert "Replace VI_MODE_EDITOR_INACTIVE" This reverts commit f7c4cae7c3b3d9fdc56e97183690c05f2dcec215. * Replace VI_MODE_EDITOR_INACTIVE, take 2 * Revert EnBom_Draw
-rw-r--r--Makefile10
-rw-r--r--docs/retail_versions.md6
-rw-r--r--include/functions.h4
-rw-r--r--include/macros.h6
-rw-r--r--include/ultra64/gbi.h2
-rw-r--r--include/z64actor.h2
-rw-r--r--src/boot/boot_main.c2
-rw-r--r--src/boot/idle.c4
-rw-r--r--src/boot/is_debug.c10
-rw-r--r--src/code/game.c30
-rw-r--r--src/code/main.c8
-rw-r--r--src/code/sys_matrix.c2
-rw-r--r--src/code/z_parameter.c6
-rw-r--r--src/overlays/actors/ovl_En_Bom/z_en_bom.c2
14 files changed, 42 insertions, 52 deletions
diff --git a/Makefile b/Makefile
index f5d060060..7c3fdc42a 100644
--- a/Makefile
+++ b/Makefile
@@ -69,12 +69,12 @@ MAKE = make
CPPFLAGS += -fno-dollars-in-identifiers -P
ifeq ($(DEBUG),1)
- CFLAGS += -DOOT_DEBUG
- CPPFLAGS += -DOOT_DEBUG
+ CFLAGS += -DOOT_DEBUG=1
+ CPPFLAGS += -DOOT_DEBUG=1
OPTFLAGS := -O2
else
- CFLAGS += -DNDEBUG
- CPPFLAGS += -DNDEBUG
+ CFLAGS += -DNDEBUG -DOOT_DEBUG=0
+ CPPFLAGS += -DNDEBUG -DOOT_DEBUG=0
OPTFLAGS := -O2 -g3
endif
@@ -164,7 +164,7 @@ endif
ifeq ($(COMPILER),ido)
# Have CC_CHECK pretend to be a MIPS compiler
MIPS_BUILTIN_DEFS := -D_MIPS_ISA_MIPS2=2 -D_MIPS_ISA=_MIPS_ISA_MIPS2 -D_ABIO32=1 -D_MIPS_SIM=_ABIO32 -D_MIPS_SZINT=32 -D_MIPS_SZLONG=32 -D_MIPS_SZPTR=32
- CC_CHECK = gcc -fno-builtin -fsyntax-only -funsigned-char -std=gnu90 -D_LANGUAGE_C -DNON_MATCHING $(MIPS_BUILTIN_DEFS) $(INC) $(CHECK_WARNINGS)
+ CC_CHECK = gcc -fno-builtin -fsyntax-only -funsigned-char -std=gnu90 -D_LANGUAGE_C -DNON_MATCHING -DOOT_DEBUG=1 $(MIPS_BUILTIN_DEFS) $(INC) $(CHECK_WARNINGS)
ifeq ($(shell getconf LONG_BIT), 32)
# Work around memory allocation bug in QEMU
export QEMU_GUEST_BASE := 1
diff --git a/docs/retail_versions.md b/docs/retail_versions.md
index 6c34869f9..e39a047c8 100644
--- a/docs/retail_versions.md
+++ b/docs/retail_versions.md
@@ -27,9 +27,9 @@ an `if` block). Since retail MM versions use the same compiler flags as retail
OOT, checking MM decomp for similar code can help.
We can disable code that was removed in retail builds by adding
-`#ifdef OOT_DEBUG` around these parts of the code. In order to keep the code
-readable, we should try to minimize the amount of `#ifdef` noise whenever
-possible.
+`#if OOT_DEBUG ... #endif` or `if (OOT_DEBUG) { ... }` around these parts of the
+code. In order to keep the code readable, we should try to minimize the amount of
+`#if` noise whenever possible.
## Setup
diff --git a/include/functions.h b/include/functions.h
index 946fa16df..afe206318 100644
--- a/include/functions.h
+++ b/include/functions.h
@@ -1310,7 +1310,7 @@ void GameState_Init(GameState* gameState, GameStateFunc init, GraphicsContext* g
void GameState_Destroy(GameState* gameState);
GameStateFunc GameState_GetInit(GameState* gameState);
u32 GameState_IsRunning(GameState* gameState);
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
void* GameState_Alloc(GameState* gameState, size_t size, char* file, s32 line);
#endif
void func_800C55D0(GameAlloc* this);
@@ -1434,7 +1434,7 @@ void Matrix_RotateZYX(s16 x, s16 y, s16 z, u8 mode);
void Matrix_TranslateRotateZYX(Vec3f* translation, Vec3s* rotation);
void Matrix_SetTranslateRotateYXZ(f32 translateX, f32 translateY, f32 translateZ, Vec3s* rot);
Mtx* Matrix_MtxFToMtx(MtxF* src, Mtx* dest);
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
Mtx* Matrix_ToMtx(Mtx* dest, char* file, s32 line);
Mtx* Matrix_NewMtx(GraphicsContext* gfxCtx, char* file, s32 line);
#else
diff --git a/include/macros.h b/include/macros.h
index 53b597b4c..937ccb510 100644
--- a/include/macros.h
+++ b/include/macros.h
@@ -100,7 +100,7 @@
#define CHECK_FLAG_ALL(flags, mask) (((flags) & (mask)) == (mask))
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
#define PRINTF osSyncPrintf
#else
#ifdef __sgi /* IDO compiler */
@@ -114,7 +114,7 @@
#endif
#endif
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
#define LOG(exp, value, format, file, line) \
do { \
@@ -159,7 +159,7 @@ extern struct GraphicsContext* __gfxCtx;
#define POLY_XLU_DISP __gfxCtx->polyXlu.p
#define OVERLAY_DISP __gfxCtx->overlay.p
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
// __gfxCtx shouldn't be used directly.
// Use the DISP macros defined above when writing to display buffers.
diff --git a/include/ultra64/gbi.h b/include/ultra64/gbi.h
index 51adc6b7f..a38d85f03 100644
--- a/include/ultra64/gbi.h
+++ b/include/ultra64/gbi.h
@@ -5123,7 +5123,7 @@ _DW({ \
#define gDPNoOpTag(pkt, tag) gDPParam(pkt, G_NOOP, tag)
#define gsDPNoOpTag(tag) gsDPParam( G_NOOP, tag)
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
#define gDPNoOpHere(pkt, file, line) gDma1p(pkt, G_NOOP, file, line, 1)
#define gDPNoOpString(pkt, data, n) gDma1p(pkt, G_NOOP, data, n, 2)
diff --git a/include/z64actor.h b/include/z64actor.h
index 779fcad84..66a2ec303 100644
--- a/include/z64actor.h
+++ b/include/z64actor.h
@@ -305,7 +305,7 @@ typedef struct Actor {
/* 0x130 */ ActorFunc update; // Update Routine. Called by `Actor_UpdateAll`
/* 0x134 */ ActorFunc draw; // Draw Routine. Called by `Actor_Draw`
/* 0x138 */ ActorOverlay* overlayEntry; // Pointer to the overlay table entry for this actor
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
/* 0x13C */ char dbgPad[0x10];
#endif
} Actor; // size = 0x14C
diff --git a/src/boot/boot_main.c b/src/boot/boot_main.c
index 4edec9c40..b8c08fe8a 100644
--- a/src/boot/boot_main.c
+++ b/src/boot/boot_main.c
@@ -21,7 +21,7 @@ void bootproc(void) {
gCartHandle = osCartRomInit();
osDriveRomInit();
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
isPrintfInit();
#endif
Locale_Init();
diff --git a/src/boot/idle.c b/src/boot/idle.c
index 8ae0b588e..f7074bd2f 100644
--- a/src/boot/idle.c
+++ b/src/boot/idle.c
@@ -56,7 +56,7 @@ void Idle_ThreadEntry(void* arg) {
gViConfigYScale = 1.0f;
switch (osTvType) {
-#ifndef OOT_DEBUG
+#if !OOT_DEBUG
case OS_TV_PAL:
#endif
case OS_TV_NTSC:
@@ -69,7 +69,7 @@ void Idle_ThreadEntry(void* arg) {
gViConfigMode = osViModeMpalLan1;
break;
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
case OS_TV_PAL:
gViConfigModeType = OS_VI_FPAL_LAN1;
gViConfigMode = osViModeFpalLan1;
diff --git a/src/boot/is_debug.c b/src/boot/is_debug.c
index 7ce97c807..b5d077212 100644
--- a/src/boot/is_debug.c
+++ b/src/boot/is_debug.c
@@ -5,7 +5,7 @@ OSPiHandle* sISVHandle; // official name : is_Handle
#define gISVDbgPrnAdrs ((ISVDbg*)0xB3FF0000)
#define ASCII_TO_U32(a, b, c, d) ((u32)((a << 24) | (b << 16) | (c << 8) | (d << 0)))
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
void isPrintfInit(void) {
sISVHandle = osCartRomInit();
osEPiWriteIo(sISVHandle, (u32)&gISVDbgPrnAdrs->put, 0);
@@ -18,7 +18,7 @@ void osSyncPrintfUnused(const char* fmt, ...) {
va_list args;
va_start(args, fmt);
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
_Printf(is_proutSyncPrintf, NULL, fmt, args);
#endif
@@ -29,7 +29,7 @@ void osSyncPrintf(const char* fmt, ...) {
va_list args;
va_start(args, fmt);
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
_Printf(is_proutSyncPrintf, NULL, fmt, args);
#endif
@@ -41,14 +41,14 @@ void rmonPrintf(const char* fmt, ...) {
va_list args;
va_start(args, fmt);
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
_Printf(is_proutSyncPrintf, NULL, fmt, args);
#endif
va_end(args);
}
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
void* is_proutSyncPrintf(void* arg, const char* str, size_t count) {
u32 data;
s32 pos;
diff --git a/src/code/game.c b/src/code/game.c
index bd1310f25..2b60c66dd 100644
--- a/src/code/game.c
+++ b/src/code/game.c
@@ -1,12 +1,6 @@
#include "global.h"
#include "terminal.h"
-#ifdef OOT_DEBUG
-#define VI_MODE_EDITOR_INACTIVE (R_VI_MODE_EDIT_STATE == VI_MODE_EDIT_STATE_INACTIVE)
-#else
-#define VI_MODE_EDITOR_INACTIVE true
-#endif
-
SpeedMeter D_801664D0;
VisCvg sVisCvg;
VisZBuf sVisZBuf;
@@ -15,7 +9,7 @@ ViMode sViMode;
FaultClient sGameFaultClient;
u16 sLastButtonPressed;
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
void GameState_FaultPrint(void) {
static char sBtnChars[] = "ABZSuldr*+LRudlr";
s32 i;
@@ -70,7 +64,7 @@ void GameState_SetFBFilter(Gfx** gfxP) {
}
void func_800C4344(GameState* gameState) {
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
Input* selectedInput;
s32 hexDumpSize;
u16 inputCompareValue;
@@ -123,7 +117,7 @@ void func_800C4344(GameState* gameState) {
#endif
}
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
void GameState_DrawInputDisplay(u16 input, Gfx** gfxP) {
static const u16 sInpDispBtnColors[] = {
GPACK_RGBA5551(255, 255, 0, 1), GPACK_RGBA5551(255, 255, 0, 1), GPACK_RGBA5551(255, 255, 0, 1),
@@ -169,7 +163,7 @@ void GameState_Draw(GameState* gameState, GraphicsContext* gfxCtx) {
GameState_SetFBFilter(&newDList);
}
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
sLastButtonPressed = gameState->input[0].press.button | gameState->input[0].cur.button;
if (R_DISABLE_INPUT_DISPLAY == 0) {
GameState_DrawInputDisplay(sLastButtonPressed, &newDList);
@@ -188,7 +182,7 @@ void GameState_Draw(GameState* gameState, GraphicsContext* gfxCtx) {
#endif
if (R_ENABLE_ARENA_DBG < 0) {
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
s32 pad;
DebugArena_Display();
SystemArena_Display();
@@ -263,7 +257,7 @@ void GameState_Update(GameState* gameState) {
func_800C4344(gameState);
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
if (SREG(63) == 1u) {
if (R_VI_MODE_EDIT_STATE < VI_MODE_EDIT_STATE_INACTIVE) {
R_VI_MODE_EDIT_STATE = VI_MODE_EDIT_STATE_INACTIVE;
@@ -396,7 +390,7 @@ void GameState_Realloc(GameState* gameState, size_t size) {
THA_Init(&gameState->tha, NULL, 0);
PRINTF("ハイラル再確保失敗\n"); // "Failure to secure Hyral"
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
SystemArena_Display();
#endif
HUNGUP_AND_CRASH("../game.c", 1044);
@@ -442,7 +436,7 @@ void GameState_Init(GameState* gameState, GameStateFunc init, GraphicsContext* g
VisCvg_Init(&sVisCvg);
VisZBuf_Init(&sVisZBuf);
VisMono_Init(&sVisMono);
- if (VI_MODE_EDITOR_INACTIVE) {
+ if ((R_VI_MODE_EDIT_STATE == VI_MODE_EDIT_STATE_INACTIVE) || !OOT_DEBUG) {
ViMode_Init(&sViMode);
}
SpeedMeter_Init(&D_801664D0);
@@ -452,7 +446,7 @@ void GameState_Init(GameState* gameState, GameStateFunc init, GraphicsContext* g
// "Other initialization processing time %d us"
PRINTF("その他初期化 処理時間 %d us\n", OS_CYCLES_TO_USEC(endTime - startTime));
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
Fault_AddClient(&sGameFaultClient, GameState_FaultPrint, NULL, NULL);
#endif
@@ -473,13 +467,13 @@ void GameState_Destroy(GameState* gameState) {
VisCvg_Destroy(&sVisCvg);
VisZBuf_Destroy(&sVisZBuf);
VisMono_Destroy(&sVisMono);
- if (VI_MODE_EDITOR_INACTIVE) {
+ if ((R_VI_MODE_EDIT_STATE == VI_MODE_EDIT_STATE_INACTIVE) || !OOT_DEBUG) {
ViMode_Destroy(&sViMode);
}
THA_Destroy(&gameState->tha);
GameAlloc_Cleanup(&gameState->alloc);
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
SystemArena_Display();
Fault_RemoveClient(&sGameFaultClient);
#endif
@@ -499,7 +493,7 @@ u32 GameState_IsRunning(GameState* gameState) {
return gameState->running;
}
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
void* GameState_Alloc(GameState* gameState, size_t size, char* file, s32 line) {
void* ret;
diff --git a/src/code/main.c b/src/code/main.c
index b7407c3bf..a777e8c70 100644
--- a/src/code/main.c
+++ b/src/code/main.c
@@ -25,7 +25,7 @@ AudioMgr gAudioMgr;
OSMesgQueue sSerialEventQueue;
OSMesg sSerialMsgBuf[1];
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
void Main_LogSystemHeap(void) {
PRINTF(VT_FGCOL(GREEN));
// "System heap size% 08x (% dKB) Start address% 08x"
@@ -55,8 +55,7 @@ void Main(void* arg) {
PRINTF("システムヒープ初期化 %08x-%08x %08x\n", systemHeapStart, fb, gSystemHeapSize);
SystemHeap_Init((void*)systemHeapStart, gSystemHeapSize); // initializes the system heap
-#ifdef OOT_DEBUG
- {
+ if (OOT_DEBUG) {
void* debugHeapStart;
u32 debugHeapSize;
@@ -71,7 +70,6 @@ void Main(void* arg) {
PRINTF("debug_InitArena(%08x, %08x)\n", debugHeapStart, debugHeapSize);
DebugArena_Init(debugHeapStart, debugHeapSize);
}
-#endif
Regs_Init();
@@ -80,7 +78,7 @@ void Main(void* arg) {
osCreateMesgQueue(&sSerialEventQueue, sSerialMsgBuf, ARRAY_COUNT(sSerialMsgBuf));
osSetEventMesg(OS_EVENT_SI, &sSerialEventQueue, NULL);
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
Main_LogSystemHeap();
#endif
diff --git a/src/code/sys_matrix.c b/src/code/sys_matrix.c
index 5e15ec5e2..d6e4570ea 100644
--- a/src/code/sys_matrix.c
+++ b/src/code/sys_matrix.c
@@ -603,7 +603,7 @@ Mtx* Matrix_MtxFToMtx(MtxF* src, Mtx* dest) {
return dest;
}
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
Mtx* Matrix_ToMtx(Mtx* dest, char* file, s32 line) {
return Matrix_MtxFToMtx(MATRIX_CHECK_FLOATS(sCurrentMatrix, file, line), dest);
diff --git a/src/code/z_parameter.c b/src/code/z_parameter.c
index efbe25a91..464405c56 100644
--- a/src/code/z_parameter.c
+++ b/src/code/z_parameter.c
@@ -3932,7 +3932,7 @@ void Interface_Draw(PlayState* play) {
}
}
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
if (pauseCtx->debugState == 3) {
FlagSet_Update(play);
}
@@ -3958,8 +3958,7 @@ void Interface_Update(PlayState* play) {
s16 risingAlpha;
u16 action;
-#ifdef OOT_DEBUG
- {
+ if (OOT_DEBUG) {
Input* debugInput = &play->state.input[2];
if (CHECK_BTN_ALL(debugInput->press.button, BTN_DLEFT)) {
@@ -3973,7 +3972,6 @@ void Interface_Update(PlayState* play) {
PRINTF("J_N=%x J_N=%x\n", gSaveContext.language, &gSaveContext.language);
}
}
-#endif
if (!IS_PAUSED(&play->pauseCtx)) {
if ((gSaveContext.minigameState == 1) || !IS_CUTSCENE_LAYER ||
diff --git a/src/overlays/actors/ovl_En_Bom/z_en_bom.c b/src/overlays/actors/ovl_En_Bom/z_en_bom.c
index 0dbbfada9..c95cfed5a 100644
--- a/src/overlays/actors/ovl_En_Bom/z_en_bom.c
+++ b/src/overlays/actors/ovl_En_Bom/z_en_bom.c
@@ -359,7 +359,7 @@ void EnBom_Draw(Actor* thisx, PlayState* play) {
s32 pad;
EnBom* this = (EnBom*)thisx;
-#ifdef OOT_DEBUG
+#if OOT_DEBUG
if (1) {}
#endif