diff --git a/src/game/crash_screen.c b/src/game/crash_screen.c index 5363d3c8..7fafecf3 100644 --- a/src/game/crash_screen.c +++ b/src/game/crash_screen.c @@ -236,7 +236,8 @@ void draw_crash_context(OSThread *thread, s32 cause) crash_screen_print_float_reg(30, 220, 30, &tc->fp30.f.f_even); } -void draw_crash_log(UNUSED OSThread *thread, UNUSED s32 cause) + +void draw_crash_log(void) { #if PUPPYPRINT_DEBUG s32 i; @@ -249,6 +250,8 @@ void draw_crash_log(UNUSED OSThread *thread, UNUSED s32 cause) crash_screen_print(30, (LINE_HEIGHT)-(i*10), consoleLogTable[i]); } #undef LINE_HEIGHT +#else +crashPage++; #endif } @@ -319,23 +322,19 @@ void draw_crash_screen(OSThread *thread) updateBuffer = TRUE; } -#if !PUPPYPRINT_DEBUG - if (crashPage == PAGE_LOG) - crashPage++; -#endif - - if (crashPage >= PAGE_COUNT) + if (crashPage >= PAGE_COUNT && crashPage != 255) crashPage = 0; if (crashPage == 255) crashPage = PAGE_COUNT-1; if (updateBuffer) { - crash_screen_print(15, 10, "Page:%d L/Z: Left R: Right", crashPage); + crash_screen_draw_rect(25, 8, 270, 12); + crash_screen_print(30, 10, "Page:%02d L/Z: Left R: Right", crashPage); switch (crashPage) { case PAGE_CONTEXT: draw_crash_context(thread, cause); break; - case PAGE_LOG: draw_crash_log(thread, cause); break; + case PAGE_LOG: draw_crash_log(); break; case PAGE_STACKTRACE: draw_stacktrace(thread, cause); break; } @@ -421,10 +420,7 @@ void crash_screen_init(void) { gCrashScreen.width = SCREEN_WIDTH; gCrashScreen.height = SCREEN_HEIGHT; osCreateMesgQueue(&gCrashScreen.mesgQueue, &gCrashScreen.mesg, 1); - osCreateThread(&gCrashScreen.thread, 2, thread2_crash_screen, NULL, - (u8 *) gCrashScreen.stack + sizeof(gCrashScreen.stack), - OS_PRIORITY_APPMAX - ); + osCreateThread(&gCrashScreen.thread, 2, thread2_crash_screen, NULL, (u8 *) gCrashScreen.stack + sizeof(gCrashScreen.stack), OS_PRIORITY_APPMAX); osStartThread(&gCrashScreen.thread); }