diff --git a/arm9/src/main.c b/arm9/src/main.c index 188097f..7c10c7a 100644 --- a/arm9/src/main.c +++ b/arm9/src/main.c @@ -16,6 +16,7 @@ enum { MAIN_MENU_TITLES, MAIN_MENU_BACKUP, MAIN_MENU_TEST, + MAIN_MENU_FIX, MAIN_MENU_EXIT }; @@ -60,6 +61,7 @@ static int _mainMenu(int cursor) addMenuItem(m, "Titles", NULL, 0); addMenuItem(m, "Restore", NULL, 0); addMenuItem(m, "Test", NULL, 0); + addMenuItem(m, "Fix FAT copy mismatch", NULL, 0); addMenuItem(m, "Shut Down", NULL, 0); m->cursor = cursor; @@ -146,6 +148,11 @@ int main(int argc, char **argv) testMenu(); break; + case MAIN_MENU_FIX: + nandio_force_fat_fix(); + messageBox("Mismatch in FAT copies will be\nfixed on close.\n"); + break; + case MAIN_MENU_EXIT: programEnd = true; break; diff --git a/arm9/src/nand/nandio.c b/arm9/src/nand/nandio.c index c330b2c..0f0a2ea 100644 --- a/arm9/src/nand/nandio.c +++ b/arm9/src/nand/nandio.c @@ -233,3 +233,10 @@ bool nandio_shutdown() crypt_buf = 0; return true; } + +bool nandio_force_fat_fix() +{ + nandWritten = true; + + return true; +} diff --git a/arm9/src/nand/nandio.h b/arm9/src/nand/nandio.h index 75bba11..62c2f90 100644 --- a/arm9/src/nand/nandio.h +++ b/arm9/src/nand/nandio.h @@ -22,6 +22,8 @@ void getConsoleID(uint8_t *consoleID) ; extern bool nandio_shutdown() ; +extern bool nandio_force_fat_fix() ; + #ifdef __cplusplus } #endif