Enhancements are additions that are not in the original game. They can be helpful for debugging, fixing bugs, adding features, etc.
Ported from sm64 located in debug/crash_screen_enhancement.c
How to use:
make clean
make -j DEBUG=1
#define CRASH_SCREEN_ENHANCEMENT
//#define SKIP_DRAW_SQUARE
The new crash screen should now work.
Force "a crash" on boot to test:
#include "debug/crash_screen_enhancement.h" void display_and_vsync(void) { profiler_log_thread5_time(BEFORE_DISPLAY_LISTS); osRecvMesg(&gGfxVblankQueue, &gMainReceivedMesg, OS_MESG_BLOCK); exec_display_list(&gGfxPool->spTask); profiler_log_thread5_time(AFTER_DISPLAY_LISTS); osRecvMesg(&gGameVblankQueue, &gMainReceivedMesg, OS_MESG_BLOCK); osViSwapBuffer((void *) PHYSICAL_TO_VIRTUAL(gPhysicalFramebuffers[sRenderedFramebuffer])); profiler_log_thread5_time(THREAD5_END); osRecvMesg(&gGameVblankQueue, &gMainReceivedMesg, OS_MESG_BLOCK); crash_screen_set_framebuffer((uintptr_t *) gPhysicalFramebuffers[sRenderedFramebuffer]); crash_screen_draw(&gGameLoopThread); // Add this line ^ if (++sRenderedFramebuffer == 3) { sRenderedFramebuffer = 0; } if (++sRenderingFramebuffer == 3) { sRenderingFramebuffer = 0; } gGlobalTimer++; }
There was an error while loading. Please reload this page.