1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00

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 f7c4cae7c3.

* Replace VI_MODE_EDITOR_INACTIVE, take 2

* Revert EnBom_Draw
This commit is contained in:
cadmic 2024-01-30 10:54:38 -08:00 committed by GitHub
parent 6d09437c21
commit 9816f62129
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
14 changed files with 42 additions and 52 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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.

View File

@ -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)

View File

@ -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

View File

@ -21,7 +21,7 @@ void bootproc(void) {
gCartHandle = osCartRomInit();
osDriveRomInit();
#ifdef OOT_DEBUG
#if OOT_DEBUG
isPrintfInit();
#endif
Locale_Init();

View File

@ -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;

View File

@ -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;

View File

@ -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;

View File

@ -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

View File

@ -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);

View File

@ -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 ||

View File

@ -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