perfect_dark/src/game/debug2.c

1287 lines
22 KiB
C

#include <ultra64.h>
#include "constants.h"
#include "game/challenge.h"
#include "game/chraction.h"
#include "game/debug.h"
#include "game/gamefile.h"
#include "lib/ailist.h"
#include "lib/debughud.h"
#include "lib/rmon.h"
#include "lib/str.h"
#include "lib/vi.h"
#include "lib/vm.h"
#include "bss.h"
#include "data.h"
#include "types.h"
#define DEBUGMENU_MAIN 0
#define DEBUGMENU_CUTSCENE 1
#define DEBUGOPT_ALLLEVELS 13
#define DEBUGOPT_ALLTRAINING 29
#define DEBUGOPT_PROPS 32
#define DEBUGOPT_TILES 39
#define DEBUGOPT_PADS 40
#define DEBUGOPT_CUTDEBUG 44
#define DEBUGOPT_CHRSTATS 65
#define DEBUGOPT_ALLCHALLENGES 67
#define DEBUGOPT_VMSTATS 69
#define DEBUGOPT_MEMINFO 70
#define DEBUGOPT_ALLBUDDIES 94
#define DEBUGOPT_SETCOMPLETE 95
#if VERSION == VERSION_PAL_BETA
#define DEBUGOPT_MANPOS 102
#else
#define DEBUGOPT_MANPOS 101
#endif
// The DEBUG_VALUE macro is used for readability.
#ifdef DEBUG
#define DEBUG_VALUE(valueifdebug, valueifnotdebug) (valueifdebug)
#else
#define DEBUG_VALUE(valueifdebug, valueifnotdebug) (valueifnotdebug)
#endif
#if VERSION == VERSION_PAL_BETA
s32 var80075d60 = 2;
s32 var80075d64 = 2;
s32 var80075d68 = 2;
s32 var800786f4nb = 2;
#endif
#ifdef DEBUG
s32 g_DebugMenuOffsets[] = {
15,
30,
45,
59,
72,
84,
#if VERSION == VERSION_PAL_BETA
96,
109,
#else
95,
108,
#endif
-1,
};
s32 g_DebugMenuPositions[][2] = {
{ 8, 2 },
{ 8, 3 },
{ 8, 4 },
{ 8, 5 },
{ 8, 6 },
{ 8, 7 },
{ 8, 8 },
{ 8, 9 },
{ 8, 10 },
{ 8, 11 },
{ 8, 12 },
{ 8, 13 },
{ 8, 14 },
{ 8, 15 },
{ 8, 16 },
{ 25, 2 },
{ 25, 3 },
{ 25, 4 },
{ 25, 5 },
{ 25, 6 },
{ 25, 7 },
{ 25, 8 },
{ 25, 9 },
{ 25, 10 },
{ 25, 11 },
{ 25, 12 },
{ 25, 13 },
{ 25, 14 },
{ 25, 15 },
{ 25, 16 },
{ 40, 2 },
{ 40, 3 },
{ 40, 4 },
{ 40, 5 },
{ 40, 6 },
{ 40, 7 },
{ 40, 8 },
{ 40, 9 },
{ 40, 10 },
{ 40, 11 },
{ 40, 12 },
{ 40, 13 },
{ 40, 14 },
{ 40, 15 },
{ 40, 16 },
{ 57, 2 },
{ 57, 3 },
{ 57, 4 },
{ 57, 5 },
{ 57, 6 },
{ 57, 7 },
{ 57, 8 },
{ 57, 9 },
{ 57, 10 },
{ 57, 11 },
{ 57, 12 },
{ 57, 13 },
{ 57, 14 },
{ 57, 15 },
{ 8, 18 },
{ 8, 19 },
{ 8, 20 },
{ 8, 21 },
{ 8, 22 },
{ 8, 23 },
{ 8, 24 },
{ 8, 25 },
{ 8, 26 },
{ 8, 27 },
{ 8, 28 },
{ 8, 29 },
{ 8, 30 },
{ 25, 18 },
{ 25, 19 },
{ 25, 20 },
{ 25, 21 },
{ 25, 22 },
{ 25, 23 },
{ 25, 24 },
{ 25, 25 },
{ 25, 26 },
{ 25, 27 },
{ 25, 28 },
{ 25, 29 },
{ 40, 18 },
{ 40, 19 },
{ 40, 20 },
{ 40, 21 },
{ 40, 22 },
{ 40, 23 },
{ 40, 24 },
{ 40, 25 },
{ 40, 26 },
{ 40, 27 },
{ 40, 28 },
#if VERSION == VERSION_PAL_BETA
{ 40, 29 },
#endif
{ 57, 18 },
{ 57, 19 },
{ 57, 20 },
{ 57, 21 },
{ 57, 22 },
{ 57, 23 },
{ 57, 24 },
{ 57, 25 },
{ 57, 26 },
{ 57, 27 },
{ 57, 28 },
{ 57, 29 },
{ 57, 30 },
};
// Comments are strings found in XBLA debug.
char *g_DebugMenuLabels[] = {
"-", // "move view"
"-", // "rotate view"
"-", // "bond view"
"-", // "bond die"
"-", // "3rd person"
"-", // "EDIT SOUNDS"
"-", // "spirit view"
"-", // "cut scene"
"-", // "watch window"
"-", // "MP3 Player"
"-", // "lights print"
"-", // "Game Boy Camera"
"-", // "GUN SOUNDZzz"
"All Levels",
"-", // "chr view"
"-", // "select anim"
"-", // "gun pos"
"-", // "music"
"-", // "sfx"
"-", // "view textures"
"-", // "invincible"
"-", // "visible"
"-", // "collisions"
"-", // "all guns"
"-", // "max ammo"
"-", // "Shadow Stats"
"-", // "Footsteps"
"-", // "Debug Person"
"-", // "APS"
"All Training",
"-", // "display speed"
"-", // "background"
#if VERSION == VERSION_NTSC_BETA
"props",
#else
"-",
#endif
"-", // "print man pos"
"-", // "port edit"
"-", // "rect portals"
"-", // "pr room loads"
"-", // "x-ray specs"
"-", // "period"
#if VERSION == VERSION_NTSC_BETA
"tiles",
"pads",
#else
"-",
"-",
#endif
"-", // "cover"
"-", // "black"
"-", // "Portal Debug"
"-", // "cut debug"
"-", // "show mem use"
"-", // "show mem bars"
"-", // "grab rgb"
"-", // "grab jpeg"
"-", // "rnd walk"
"-", // "record ramrom"
"-", // "record 1"
"-", // "record 2"
"-", // "record 3"
"-", // "replay ramrom"
"-", // "save ramrom"
"-", // "load ramrom"
"-", // "Memory Pak"
"-", // "draw skjump"
"-", // "fast"
"-", // "objectives"
"-", // "weather"
"-", // "konsole!"
"-", // "Slo-Mo"
"-", // "Sky"
#if VERSION == VERSION_NTSC_BETA
"chr stats",
#else
"-",
#endif
"-", // "Noise Balls"
"all challenges",
"-", // "Breadcrumbs"
"VM Stats",
"Mem Info",
"-", // "Mem Load"
"-", // "res mode"
"-", // "screen size"
"-", // "screen pos"
"-", // "show stats"
"-", // "blur"
"-", // "rain"
"-", // "snow"
"-", // "cameras"
"-", // "ai print"
"-", // "eye spy"
"-", // "aiEndLevel off"
"-", // "bot wzone"
"-", // "show patrols"
"-", // "world pos"
"-", // "vis cvg"
"-", // "chr num"
"-", // "chr test"
"-", // "room blocks"
"-", // "profile"
"-", // "obj load"
"-", // "weapon load"
"-", // "frame mode"
"all buddies",
#if VERSION == VERSION_PAL_BETA
"set complete",
#endif
"-", // "joy2 sky edit"
"-", // "Edit Wallhits"
"-", // "joy2 detail edit"
"-", // "explosion info"
"-", // "magic fog"
"-", // "gun watch pos"
"testing man pos",
"-", // "fog"
"-", // "show stacks"
"-", // "lod"
"-", // "FrGraph"
"-", // "DL-Info"
"-", // "Codesize"
};
s32 g_DebugCutsceneOffsets[] = {
0, -1,
};
s32 g_DebugCutscenePositions[][2] = {
{ 8, 2 },
{ 8, 3 },
{ 8, 4 },
{ 8, 5 },
{ 8, 6 },
{ 8, 7 },
{ 8, 8 },
{ 8, 9 },
{ 8, 10 },
{ 8, 11 },
};
char *g_DebugCutsceneLabelPtrs[10];
char g_DebugCutsceneLabelBuffers[10][20];
u32 var800a7950nb;
s32 g_DebugCurMenu = DEBUGMENU_MAIN;
s32 g_DebugSelectedOptionsByMenu[2] = {0, 0};
#endif
#if VERSION != VERSION_PAL_BETA
s32 var80075d60 = 2;
s32 var80075d64 = 2;
s32 var80075d68 = 2;
s32 var800786f4nb = 2;
#endif
#ifdef DEBUG
s32 g_DebugProfileMode = 0;
bool g_DebugRenderBg = true;
bool g_DebugRenderProps = true;
s32 var80078704nb = 1;
s32 var80078708nb = 0;
bool g_DebugRoomState = false;
s32 var80078710nb = 0;
s32 var80078714nb = 0;
s32 g_DebugRoomGfxExtraMem = 0;
bool g_DebugObjDeform = false;
#endif
bool g_DebugLineMode = false;
#ifdef DEBUG
s32 var80078724nb = 0;
s32 var80078728nb = 0;
s32 var8007872cnb = 0;
bool g_DebugManPos = false;
#endif
bool g_DebugTurboMode = false;
#ifdef DEBUG
bool g_DebugObjectives = false;
bool g_DebugZBufferDisabled = false;
s32 var80078740nb = 0;
s32 var80078744nb = 0;
s32 var80078748nb = 0;
s32 var8007874cnb = 0;
s32 var80078750nb = 0;
s32 var80078754nb = 0;
s32 var80078758nb = 0;
s32 var8007875cnb = 0;
s32 var80078760nb = 0;
s32 g_DebugSlowMotion = SLOWMOTION_OFF;
s32 var80078768nb = 0;
s32 g_DebugTiles = 0;
s32 g_DebugPads = 0;
s32 var80078774nb = 0;
s32 var80078778nb = 0;
s32 var8007877cnb = 0;
s32 var80078780nb = 0;
s32 var80078784nb = 0;
s32 var80078788nb = 0;
s32 var8007878cnb = 0;
s32 var80078790nb = 0;
bool g_DebugFootsteps = true;
bool g_DebugAllChallenges = false;
bool g_DebugAllBuddies = false;
#if VERSION >= VERSION_NTSC_1_0
bool g_DebugSetComplete = false;
#endif
bool g_DebugAllTraining = false;
s32 g_DebugCutDebug = 0;
s32 var800787a8nb = 0;
bool g_DebugMemInfo = false;
s32 var800787b0nb = 0;
s32 var800787b4nb = 0;
s32 var800787b8nb = 0;
s32 var800787bcnb = 0;
s32 var800787c0nb = 0;
s32 var800787c4nb = 1;
s32 var800787c8nb = 0;
s32 var800787ccnb = 0;
s32 var800787d0nb = 0;
s32 var800787d4nb = 0;
s32 var800787d8nb = 0;
s32 var800787dcnb = 0;
s32 var800787e0nb = 0;
bool g_DebugChrStats = false;
s32 var800787e8nb = 0;
s32 var800787ecnb = 0;
s32 var800787f0nb = 0;
u32 var800787f4nb = 0x80500000;
u32 var800787f8nb = 0x00040000;
u32 var800787fcnb = 0x7f000000;
u32 var80078800nb = 0x7f100000;
u32 var80078804nb = 0x80600000;
u32 var80078808nb = 0x00040000;
u32 var8007880cnb = 0x70000000;
u32 var80078810nb = 0x70100000;
#endif
s32 g_DebugScreenshotRgb = 0;
s32 g_DebugScreenshotJpg = 0;
#ifdef DEBUG
bool g_DebugIsMenuOpen = false;
#endif
f32 var80075d80 = 0;
f32 var80075d84 = 0;
f32 var80075d88 = 0;
f32 var80075d8c = 0;
f32 var80075d90 = 0;
f32 var80075d94 = -1;
f32 var80075d98 = 0;
f32 var80075d9c = 1;
f32 var80075da0 = 0;
f32 var80075da4 = 0;
f32 var80075da8 = 1;
f32 var80075dac = 0;
f32 var80075db0 = 0;
f32 var80075db4 = 1;
f32 var80075db8 = 0;
f32 var80075dbc = 0;
f32 var80075dc0 = 0;
f32 var80075dc4 = 0;
f32 var80075dc8 = 0;
f32 var80075dcc = 0;
f32 var80075dd0 = 0;
f32 var80075dd4 = 0;
f32 var80075dd8 = 1;
void debugUpdateMenu(void)
{
#ifdef DEBUG
s32 i;
if (g_DebugCurMenu == DEBUGMENU_MAIN) {
dmenuSetMenu(g_DebugMenuLabels, g_DebugMenuPositions, g_DebugMenuOffsets);
} else if (g_DebugCurMenu == DEBUGMENU_CUTSCENE) {
for (i = 0; i < ARRAYCOUNT(g_DebugCutsceneLabelPtrs); i++) {
g_DebugCutsceneLabelPtrs[i] = g_DebugCutsceneLabelBuffers[i];
}
g_DebugCutsceneOffsets[0] = 0;
strcpy(g_DebugCutsceneLabelPtrs[0], "main");
g_DebugCutsceneOffsets[0]++;
for (i = 0; ; i++) {
if (ailistFindById(0xc00 + i) == NULL) {
break;
}
sprintf(g_DebugCutsceneLabelPtrs[i + 1], "scene %d", i);
g_DebugCutsceneOffsets[0]++;
}
dmenuSetMenu(g_DebugCutsceneLabelPtrs, g_DebugCutscenePositions, g_DebugCutsceneOffsets);
}
dmenuSetSelectedOption(g_DebugSelectedOptionsByMenu[g_DebugCurMenu]);
#endif
}
#ifdef DEBUG
void debugSaveSelectedOption(void)
{
g_DebugSelectedOptionsByMenu[g_DebugCurMenu] = dmenuGetSelectedOption();
}
void debug0f1193e4nb(void) // not called
{
// empty
}
void debug0f1193ecnb(void) // not called
{
// empty
}
void debug0f1193f4nb(void) // not called
{
var80075d60 = var80075d64 = var800786f4nb = 2;
}
void debug0f11941cnb(void) // not called
{
rmon0002fa30(&var800787f4nb, 2);
rmon0002fa38(250);
}
void debug0f11944cnb(void) // not called
{
rmon0002fa40();
}
#endif
bool debugProcessInput(s8 stickx, s8 sticky, u16 buttons, u16 buttonsthisframe)
{
#ifdef DEBUG
s32 i;
s32 prev;
s32 tmp = 3;
debugUpdateMenu();
if (g_DebugScreenshotRgb) {
prev = g_DebugScreenshotRgb++;
if (tmp == prev) {
viGrabRgb32();
g_DebugScreenshotRgb = 0;
viSet16Bit();
osViBlack(false);
}
}
if (g_DebugScreenshotJpg) {
prev = g_DebugScreenshotJpg++;
if (tmp == prev) {
viGrabJpg32();
g_DebugScreenshotJpg = 0;
viSet16Bit();
osViBlack(false);
}
}
if (!g_DebugIsMenuOpen) {
tmp = (buttons & U_CBUTTONS) && (buttons & D_CBUTTONS);
g_DebugIsMenuOpen = tmp;
return tmp;
}
if (var80075d68 != -2) {
var800786f4nb = var80075d68;
var80075d68 = -2;
}
if (buttonsthisframe & L_JPAD) {
dmenuNavigateLeft();
var80075d68 = -2;
}
if (buttonsthisframe & R_JPAD) {
dmenuNavigateRight();
var80075d68 = -2;
}
if (buttonsthisframe & U_JPAD) {
dmenuNavigateUp();
var80075d68 = -2;
}
if (buttonsthisframe & D_JPAD) {
dmenuNavigateDown();
var80075d68 = -2;
}
if (buttonsthisframe & (A_BUTTON | START_BUTTON)) {
if (g_DebugCurMenu == DEBUGMENU_CUTSCENE) {
if (dmenuGetSelectedOption() == 0) {
// Selected "main" from cutscene menu
g_DebugCurMenu = DEBUGMENU_MAIN;
dhudClear();
debugUpdateMenu();
} else {
cutsceneStart(0xc00 + dmenuGetSelectedOption() - 1);
}
} else if (g_DebugCurMenu == DEBUGMENU_MAIN) {
switch (dmenuGetSelectedOption()) {
#if VERSION == VERSION_PAL_BETA
case DEBUGOPT_MANPOS:
g_DebugManPos ^= 1;
break;
case DEBUGOPT_ALLBUDDIES:
g_DebugAllBuddies ^= 1;
break;
case DEBUGOPT_SETCOMPLETE:
g_DebugSetComplete ^= 1;
break;
case DEBUGOPT_VMSTATS:
g_VmShowStats ^= 1;
break;
case DEBUGOPT_MEMINFO:
g_DebugMemInfo ^= 1;
break;
case DEBUGOPT_ALLLEVELS:
for (i = 0; i < 21; i++) {
for (tmp = 0; tmp < 3; tmp++) {
g_GameFile.besttimes[i][tmp] = 7;
}
}
g_AltTitleUnlocked = true;
break;
case DEBUGOPT_ALLCHALLENGES:
g_DebugAllChallenges ^= 1;
challengeDetermineUnlockedFeatures();
break;
case DEBUGOPT_ALLTRAINING:
g_DebugAllTraining ^= 1;
for (i = 0; i < ARRAYCOUNT(g_GameFile.firingrangescores); i++) {
g_GameFile.firingrangescores[i] = 0xff;
}
gamefileSetFlag(GAMEFILEFLAG_CI_CLOAK_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_DISGUISE_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_XRAY_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_IR_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_RTRACKER_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_DOORDECODER_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_NIGHTVISION_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_CAMSPY_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_ECMMINE_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_UPLINK_DONE);
break;
#else
case DEBUGOPT_MANPOS:
g_DebugManPos ^= 1;
break;
case DEBUGOPT_PADS:
g_DebugPads = (g_DebugPads + 1) % 4;
break;
case DEBUGOPT_TILES:
g_DebugTiles = (g_DebugTiles + 1) % 4;
break;
case DEBUGOPT_ALLLEVELS:
for (i = 0; i < 21; i++) {
for (tmp = 0; tmp < 3; tmp++) {
g_GameFile.besttimes[i][tmp] = 7;
}
}
g_AltTitleUnlocked = true;
break;
case DEBUGOPT_ALLCHALLENGES:
g_DebugAllChallenges ^= 1;
challengeDetermineUnlockedFeatures();
break;
case DEBUGOPT_ALLBUDDIES:
g_DebugAllBuddies ^= 1;
break;
case DEBUGOPT_ALLTRAINING:
g_DebugAllTraining ^= 1;
for (i = 0; i < ARRAYCOUNT(g_GameFile.firingrangescores); i++) {
g_GameFile.firingrangescores[i] = 0xff;
}
gamefileSetFlag(GAMEFILEFLAG_CI_CLOAK_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_DISGUISE_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_XRAY_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_IR_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_RTRACKER_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_DOORDECODER_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_NIGHTVISION_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_CAMSPY_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_ECMMINE_DONE);
gamefileSetFlag(GAMEFILEFLAG_CI_UPLINK_DONE);
break;
case DEBUGOPT_CUTDEBUG:
g_DebugCutDebug ^= 1;
break;
case DEBUGOPT_CHRSTATS:
g_DebugChrStats ^= 1;
break;
case DEBUGOPT_PROPS:
g_DebugRenderProps ^= 1;
break;
case DEBUGOPT_VMSTATS:
g_VmShowStats ^= 1;
break;
case DEBUGOPT_MEMINFO:
g_DebugMemInfo ^= 1;
break;
#endif
}
}
}
if (buttonsthisframe & START_BUTTON) {
if (g_DebugIsMenuOpen == true) {
dhudClear();
}
g_DebugIsMenuOpen = false;
}
debugSaveSelectedOption();
return g_DebugIsMenuOpen;
#else
return false;
#endif
}
s32 debugGetProfileMode(void)
{
return DEBUG_VALUE(g_DebugProfileMode, 0);
}
bool debugIsBgRenderingEnabled(void)
{
return DEBUG_VALUE(g_DebugRenderBg, true);
}
bool debugIsPropRenderingEnabled(void)
{
return DEBUG_VALUE(g_DebugRenderProps, true);
}
bool debug0f11ed88(void)
{
return DEBUG_VALUE(var80078708nb, false);
}
bool debugIsManPosEnabled(void)
{
return DEBUG_VALUE(g_DebugManPos, false);
}
void debugSetManPos(bool enabled)
{
#ifdef DEBUG
g_DebugManPos = enabled;
#endif
}
bool debug0f11eda0(void) // not called
{
return DEBUG_VALUE(var80078710nb, false);
}
bool debug0f11eda8(void) // not called
{
return DEBUG_VALUE(var80078714nb, false);
}
bool debugIsRoomGfxExtraMemEnabled(void)
{
return DEBUG_VALUE(g_DebugRoomGfxExtraMem, false);
}
bool debugIsObjDeformDebugEnabled(void)
{
return DEBUG_VALUE(g_DebugObjDeform, false);
}
bool debugIsRoomStateDebugEnabled(void)
{
return DEBUG_VALUE(g_DebugRoomState, false);
}
bool debugIsLineModeEnabled(void)
{
return g_DebugLineMode;
}
void debugSetLineModeEnabled(bool enabled)
{
g_DebugLineMode = enabled;
}
#ifndef DEBUG
bool debug0f11ede0(void) // not called
{
return false;
}
bool debug0f11ede8(void) // not called
{
return false;
}
bool debug0f11edf0(void) // not called
{
return false;
}
void debug0f11edf8(void) // not called
{
// empty
}
void debug0f11ee00(void) // not called
{
// empty
}
#endif
bool debugIsTurboModeEnabled(void)
{
return g_DebugTurboMode;
}
void debugSetTurboMode(bool enabled)
{
g_DebugTurboMode = enabled;
}
bool debugForceAllObjectivesComplete(void)
{
return DEBUG_VALUE(g_DebugObjectives, false);
}
bool debugIsZBufferDisabled(void)
{
return DEBUG_VALUE(g_DebugZBufferDisabled, false);
}
bool debug0f11ee30(void) // not called
{
return DEBUG_VALUE(var80078744nb, false);
}
bool debug0f11ee38(void) // not called
{
return DEBUG_VALUE(var80078750nb, false);
}
bool debug0f11ee40(void)
{
return DEBUG_VALUE(var80078754nb, false);
}
//------------------------------------------------------------------------------
// Unsure which functions are which between versions
// as none are called by both versions
#ifdef DEBUG
bool debug0f1199d8nb(void) // not called
{
return var80078758nb;
}
bool debug0f1199e4nb(void) // not called
{
return var80078740nb;
}
bool debug0f1199f0nb(void)
{
return var80078724nb;
}
bool debug0f1199fcnb(void) // not called
{
return var80078728nb;
}
bool debug0f119a08nb(void) // not called
{
return var8007872cnb;
}
bool debug0f119a14nb(void)
{
return var80078748nb;
}
bool debug0f119a20nb(void) // not called
{
return var8007874cnb;
}
bool debug0f119a2cnb(void) // not called
{
return var8007875cnb;
}
#else
bool debug0f11ee48(void) // not called
{
return false;
}
bool debug0f11ee50(void) // not called
{
return false;
}
bool debug0f11ee58(void) // not called
{
return false;
}
bool debug0f11ee60(void) // not called
{
return false;
}
bool debug0f11ee68(void) // not called
{
return false;
}
#endif
//------------------------------------------------------------------------------
s32 debugGetSlowMotion(void)
{
return DEBUG_VALUE(g_DebugSlowMotion, SLOWMOTION_OFF);
}
bool debug0f11ee78(void) // not called
{
return DEBUG_VALUE(var80078768nb, false);
}
bool debug0f11ee80(void) // not called
{
return DEBUG_VALUE(var80078760nb, false);
}
s32 debugGetTilesDebugMode(void)
{
return DEBUG_VALUE(g_DebugTiles, 0);
}
s32 debugGetPadsDebugMode(void)
{
return DEBUG_VALUE(g_DebugPads, 0);
}
bool debug0f11ee98(void) // not called
{
return DEBUG_VALUE(var80078774nb, false);
}
#ifdef DEBUG
void debug0f119a80nb(void)
{
var80078774nb = 0;
}
#endif
bool debug0f11eea0(void) // not called
{
return DEBUG_VALUE(var80078778nb, false);
}
bool debug0f11eea8(void)
{
return DEBUG_VALUE(var80078780nb, false);
}
#ifdef DEBUG
bool debug0f119aa4nb(void)
{
return false;
}
#endif
bool debugDangerousProps(void)
{
return DEBUG_VALUE(var800787ecnb, false);
}
//------------------------------------------------------------------------------
// Unsure which functions are which between versions
// as none are called by both versions
#ifdef DEBUG
bool debug0f119ab8nb(void) // not called
{
return var800787d8nb;
}
bool debug0f119ac4nb(void) // not called
{
return var800787dcnb;
}
bool debug0f119ad0nb(void) // not called
{
return var8007877cnb;
}
#else
bool debug0f11eeb8(void) // not called
{
return false;
}
bool debug0f11eec0(void) // not called
{
return false;
}
bool debug0f11eec8(void) // not called
{
return false;
}
bool debug0f11eed0(void) // not called
{
return false;
}
#endif
//------------------------------------------------------------------------------
s32 debugGetMotionBlur(void)
{
return DEBUG_VALUE(var80078784nb, 0);
}
bool debug0f119ae8nb(void)
{
return DEBUG_VALUE(var80078790nb, false);
}
u32 dprint()
{
return DEBUG_VALUE(var800787b8nb, 0);
}
//------------------------------------------------------------------------------
// Reordered functions between versions
#ifdef DEBUG
bool debug0f119b00nb(void) // not called
{
return var800787c0nb;
}
bool debugAllowEndLevel(void)
{
return var800787c4nb;
}
bool debug0f119b18nb(void) // not called
{
return var800787c8nb;
}
bool debug0f119b24nb(void) // not called
{
return var800787ccnb;
}
bool debug0f119b30nb(void) // not called
{
return var800787d0nb;
}
bool debug0f119b3cnb(void) // not called
{
return var800787d4nb;
}
bool debugIsFootstepsEnabled(void)
{
return g_DebugFootsteps;
}
bool debugIsAllChallengesEnabled(void)
{
return g_DebugAllChallenges;
}
bool debugIsAllBuddiesEnabled(void)
{
return g_DebugAllBuddies;
}
#if VERSION >= VERSION_NTSC_1_0
bool debugIsSetCompleteEnabled(void)
{
return g_DebugSetComplete;
}
#endif
bool debugIsAllTrainingEnabled(void)
{
return g_DebugAllTraining;
}
bool debugGetCutDebug(void) // not called
{
return g_DebugCutDebug;
}
bool debug0f119b84nb(void) // not called
{
return var800787a8nb;
}
bool debugIsMemInfoEnabled(void)
{
return g_DebugMemInfo;
}
bool debug0f119b9cnb(void) // not called
{
return var800787b0nb;
}
bool debug0f119ba8nb(void) // not called
{
return var800787bcnb;
}
bool debugIsChrStatsEnabled(void)
{
return g_DebugChrStats;
}
bool debug0f11ef80(void)
{
return var800787e8nb;
}
bool debug0f119bccnb(void) // not called
{
return var800787e0nb;
}
bool debug0f119bd8nb(void) // not called
{
return var800787f0nb;
}
#else
bool debug0f11eef0(void) // not called
{
return false;
}
bool debugIsFootstepsEnabled(void)
{
return true;
}
bool debug0f11ef00(void) // not called
{
return false;
}
bool debug0f11ef08(void) // not called
{
return false;
}
bool debug0f11ef10(void) // not called
{
return false;
}
bool debug0f11ef18(void) // not called
{
return false;
}
bool debug0f11ef20(void) // not called
{
return false;
}
bool debug0f11ef28(void) // not called
{
return false;
}
bool debug0f11ef30(void) // not called
{
return false;
}
bool debug0f11ef38(void) // not called
{
return false;
}
bool debug0f11ef40(void) // not called
{
return false;
}
bool debugAllowEndLevel(void)
{
return true;
}
bool debug0f11ef50(void) // not called
{
return false;
}
bool debug0f11ef58(void) // not called
{
return false;
}
bool debug0f11ef60(void) // not called
{
return false;
}
bool debug0f11ef68(void) // not called
{
return false;
}
bool debug0f11ef70(void) // not called
{
return false;
}
bool debugIsChrStatsEnabled(void)
{
return false;
}
bool debug0f11ef80(void)
{
return false;
}
bool debug0f11ef88(void) // not called
{
return false;
}
bool debug0f11ef90(void) // not called
{
return false;
}
void debug0f11ef98(s32 arg0) // not called
{
// empty
}
void debug0f11efa0(void) // not called
{
// empty
}
void debug0f11efa8(void) // not called
{
// empty
}
#endif