diff --git a/Makefile b/Makefile index f5d060060d..7c3fdc42a5 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 6c34869f97..e39a047c84 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 946fa16df0..afe2063181 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 53b597b4c2..937ccb5106 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 51adc6b7fe..a38d85f034 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 779fcad840..66a2ec3039 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 4edec9c40b..b8c08fe8ac 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 8ae0b588ea..f7074bd2fe 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 7ce97c807e..b5d077212a 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 bd1310f253..2b60c66dd0 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 b7407c3bf5..a777e8c700 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 5e15ec5e26..d6e4570ea4 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 efbe25a91d..464405c561 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 0dbbfada97..c95cfed5a5 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