diff --git a/Makefile.arm9 b/Makefile.arm9 index 72b0023..09faf88 100644 --- a/Makefile.arm9 +++ b/Makefile.arm9 @@ -33,7 +33,7 @@ DBGWARM := -Wextra -Wcast-align -Wcast-qual -Wdisabled-optimization \ -Wformat=2 -Wlogical-op -Wmissing-include-dirs -Wredundant-decls \ - -Wshadow -Wsign-conversion -fstrict-overflow -Wstrict-overflow=5 \ + -Wshadow -fstrict-overflow \ -Wswitch-default -Wundef CFLAGS := -Wall $(DBGWARM) -fstrict-aliasing -Wstrict-aliasing -std=c11 -g -O2 \ diff --git a/include/arm9/main.h b/include/arm9/main.h index 57767c8..6fd4764 100644 --- a/include/arm9/main.h +++ b/include/arm9/main.h @@ -1,6 +1,6 @@ #pragma once -#include "arm9/debug.h" +#include "arm9/debug.h" // TODO: remove after debugging #include "fatfs/ff.h" #include "arm9/ui.h" diff --git a/include/arm9/menu.h b/include/arm9/menu.h index 00f19be..c4fcbfa 100644 --- a/include/arm9/menu.h +++ b/include/arm9/menu.h @@ -1,6 +1,9 @@ #pragma once +#include "arm9/ui.h" +#include "arm9/menu_firmloader.h" #include "arm9/menu_nand.h" +#include "arm9/menu_options.h" enum menu_state_type { MENU_STATE_MAIN = 0, diff --git a/include/arm9/menu_firmloader.h b/include/arm9/menu_firmloader.h new file mode 100644 index 0000000..b0380f6 --- /dev/null +++ b/include/arm9/menu_firmloader.h @@ -0,0 +1,6 @@ +#pragma once + +bool isFirmLoaded(void); +bool menuLaunchFirm(const char *filePath, bool quick); +bool menuTryLoadFirmwareFromSettings(void); +bool TryLoadFirmwareFromSettings(void); diff --git a/include/arm9/menu_options.h b/include/arm9/menu_options.h new file mode 100644 index 0000000..df8ea58 --- /dev/null +++ b/include/arm9/menu_options.h @@ -0,0 +1,4 @@ +#pragma once + +bool menuOptions(void); + diff --git a/include/arm9/util_nand.h b/include/arm9/util_nand.h deleted file mode 100644 index a7c73e8..0000000 --- a/include/arm9/util_nand.h +++ /dev/null @@ -1,5 +0,0 @@ -#pragma once - -#include "main.h" - -bool dumpNand(const char *filepath); diff --git a/source/arm9/config.c b/source/arm9/config.c index 1e11dc3..26ef923 100644 --- a/source/arm9/config.c +++ b/source/arm9/config.c @@ -19,7 +19,7 @@ #define MAX_FILE_SIZE 0x4000 - 1 static const char *SdmcFilepath = "sdmc:\\loadercfg.txt"; -static const char *NandFilepath = "nand:\\loader\\loadercfg.txt"; +// static const char *NandFilepath = "nand:\\loader\\loadercfg.txt"; static const char *filepath; @@ -40,7 +40,6 @@ static void unloadConfigFile(); static bool createConfigFile(); -bool writeConfigFile(); static bool parseConfigFile(); static bool parseBootOption(AttributeEntryType *attr); static bool writeBootOption(AttributeEntryType *attr, const void *newData, int key); @@ -574,7 +573,7 @@ if(!newData) return false; - mode = *(u32 *)newData; + mode = *(const u32 *)newData; if(mode > BootModeQuiet) return false; diff --git a/source/arm9/console.c b/source/arm9/console.c index a10fdc9..7c42884 100644 --- a/source/arm9/console.c +++ b/source/arm9/console.c @@ -488,35 +488,6 @@ NULL }; -static const devoptab_t dotab_null = { - "null", - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - 0, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL, - NULL -}; - //--------------------------------------------------------------------------------- PrintConsole* consoleInit(int screen, PrintConsole* console) { //--------------------------------------------------------------------------------- diff --git a/source/arm9/dev.c b/source/arm9/dev.c index 850cbae..339d969 100644 --- a/source/arm9/dev.c +++ b/source/arm9/dev.c @@ -12,8 +12,6 @@ #include "arm9/dev.h" -extern void panic(); - // SD card device bool sdmmc_sd_init(void); bool sdmmc_sd_read_sector(u32 sector, u32 count, void *buf); diff --git a/source/arm9/main.c b/source/arm9/main.c index dfde7e4..0db1b42 100644 --- a/source/arm9/main.c +++ b/source/arm9/main.c @@ -26,10 +26,6 @@ static void fw_detect(); static bool loadSettings(int *mode); -// TODO: remove after debugging -extern void panic(void); -extern void hashCodeRoData(void); - int main(void) { int mode; diff --git a/source/arm9/menu.c b/source/arm9/menu.c index 828a495..8e72cee 100644 --- a/source/arm9/menu.c +++ b/source/arm9/menu.c @@ -12,8 +12,8 @@ #include "hid.h" #include "version.h" #include "arm9/main.h" -#include "arm9/util_nand.h" #include "arm9/menu.h" +#include "arm9/menu_firmloader.h" #include "arm9/timer.h" #include "arm9/interrupt.h" #include "arm9/config.h" @@ -173,7 +173,7 @@ break; case MENU_STATE_FIRM_LAUNCH_SETTINGS: - if(!menuTryLoadFirmwareFromSettings(false)) + if(!menuTryLoadFirmwareFromSettings()) uiClearConsoles(); break; @@ -187,36 +187,6 @@ break; case MENU_STATE_TEST_CONFIG: - uiClearConsoles(); - consoleSelect(&con_top); - printf("Key Text Data:\n"); - for(int i=0; i"); - } - printf("\n\nKey Raw Data:\n"); - for(int i=0; i"); - } - TIMER_sleep(6000); - uiClearConsoles(); menuSetReturnToState(STATE_PREVIOUS); break; diff --git a/source/arm9/menu_firmloader.c b/source/arm9/menu_firmloader.c index e6ec6cc..e28112f 100644 --- a/source/arm9/menu_firmloader.c +++ b/source/arm9/menu_firmloader.c @@ -88,7 +88,7 @@ } // Does very basic checks whether the firmware actually exists. -bool statFirmware(const char *filePath) +static bool statFirmware(const char *filePath) { FILINFO fileStat; u32 fileSize; diff --git a/source/arm9/menu_nand.c b/source/arm9/menu_nand.c index 1a8ef42..b508a55 100644 --- a/source/arm9/menu_nand.c +++ b/source/arm9/menu_nand.c @@ -9,7 +9,6 @@ #include "util.h" #include "arm9/menu.h" #include "arm9/timer.h" -#include "arm9/util_nand.h" static u64 getFreeSpace(const char *drive) diff --git a/source/arm9/nandimage.c b/source/arm9/nandimage.c index 9983b11..205775a 100644 --- a/source/arm9/nandimage.c +++ b/source/arm9/nandimage.c @@ -16,7 +16,7 @@ if(f_open(&file, filePath, FA_READ) != FR_OK) return NANDIMG_ERROR_NEXISTS; - isContinuous = file.obj.stat & 3 == 2; + isContinuous = (file.obj.stat & 3) == 2; f_close(&file);