diff --git a/menu.cpp b/menu.cpp index 5946cdc..6881c4e 100644 --- a/menu.cpp +++ b/menu.cpp @@ -101,6 +101,8 @@ enum MENU MENU_JOYKBDMAP1, MENU_KBDMAP, MENU_KBDMAP1, + MENU_SCRIPTS_PRE, + MENU_SCRIPTS_PRE1, MENU_SCRIPTS, MENU_SCRIPTS1, MENU_BTPAIR, @@ -3569,7 +3571,8 @@ void HandleUI(void) menusub = 0; break; case 3: - SelectFile("SH", SCANO_DIR, MENU_SCRIPTS, MENU_FIRMWARE1); + menustate = MENU_SCRIPTS_PRE; + menusub = 0; break; } } @@ -3598,6 +3601,46 @@ void HandleUI(void) if (CheckTimer(menu_timer)) menustate = MENU_NONE1; break; + case MENU_SCRIPTS_PRE: + OsdSetTitle("Warning!!!", 0); + helptext = 0; + menumask = 3; + m = 0; + OsdWrite(m++); + OsdWrite(m++, " Attention:"); + OsdWrite(m++, " This is dangerous operation!"); + OsdWrite(m++); + OsdWrite(m++, " Script has control over the"); + OsdWrite(m++, " whole system and may damage"); + OsdWrite(m++, " the files or settings, then"); + OsdWrite(m++, " MiSTer won't boot, so you"); + OsdWrite(m++, " will have to re-format the"); + OsdWrite(m++, " SD card and fill with files"); + OsdWrite(m++, " in order to use it again."); + OsdWrite(m++); + OsdWrite(m++); + OsdWrite(m++, " Do you want to continue?"); + OsdWrite(m++, " No", menusub == 0); + OsdWrite(m++, " Yes", menusub == 1); + menustate = MENU_SCRIPTS_PRE1; + parentstate = MENU_SCRIPTS_PRE; + break; + + case MENU_SCRIPTS_PRE1: + if (menu) menustate = MENU_FIRMWARE1; + else if (select) + { + switch (menusub) + { + case 0: + menustate = MENU_FIRMWARE1; + break; + case 1: + SelectFile("SH", SCANO_DIR, MENU_SCRIPTS, MENU_FIRMWARE1); + break; + } + } + break; case MENU_BTPAIR: OsdSetSize(16); diff --git a/user_io.h b/user_io.h index 4264fb4..8af8718 100644 --- a/user_io.h +++ b/user_io.h @@ -241,7 +241,7 @@ void user_io_set_scaler_coeff(char *name); void user_io_minimig_set_adjust(char n); char user_io_minimig_get_adjust(); -#define HomeDir (is_minimig() ? "Amiga" : is_archie() ? "Archie" : user_io_get_core_name()) +#define HomeDir (is_minimig() ? "Amiga" : is_archie() ? "Archie" : is_menu_core() ? "Scripts" : user_io_get_core_name()) int GetUARTMode(); int GetMidiLinkMode();