diff --git a/cfg.cpp b/cfg.cpp index 5df4653..9831f33 100644 --- a/cfg.cpp +++ b/cfg.cpp @@ -54,7 +54,7 @@ static const ini_var_t ini_vars[] = { "RBF_HIDE_DATECODE", (void*)(&(cfg.rbf_hide_datecode)), UINT8, 0, 1 }, { "MENU_PAL", (void*)(&(cfg.menu_pal)), UINT8, 0, 1 }, { "BOOTCORE", (void*)(&(cfg.bootcore)), STRING, 0, sizeof(cfg.bootcore) - 1 }, - { "BOOTCORE_TIMEOUT", (void*)(&(cfg.bootcore_timeout)), INT16, 10, 30 }, + { "BOOTCORE_TIMEOUT", (void*)(&(cfg.bootcore_timeout)), INT16, 2, 30 }, { "FONT", (void*)(&(cfg.font)), STRING, 0, sizeof(cfg.font) - 1 }, { "FB_SIZE", (void*)(&(cfg.fb_size)), UINT8, 0, 4 }, { "FB_TERMINAL", (void*)(&(cfg.fb_terminal)), UINT8, 0, 1 }, diff --git a/menu.cpp b/menu.cpp index eba6bf5..41a4451 100644 --- a/menu.cpp +++ b/menu.cpp @@ -494,9 +494,6 @@ static uint32_t menu_key_get(void) } c2 = c1; - // inject a fake "MENU_KEY" if no menu is visible and the menu key is loaded - if (!user_io_osd_is_visible() && !video_fb_state() && is_menu()) c = KEY_F12; - // generate repeat "key-pressed" events if ((c1 & UPSTROKE) || (!c1)) { @@ -905,7 +902,7 @@ void HandleUI(void) minus = false; recent = false; - if (c && c != KEY_F12 && cfg.bootcore[0] != '\0') cfg.bootcore[0] = '\0'; + if (c && cfg.bootcore[0] != '\0') cfg.bootcore[0] = '\0'; if (is_menu()) { @@ -1150,7 +1147,7 @@ void HandleUI(void) // fall through case MENU_ERROR: case MENU_NONE2: - if (menu) + if (menu || (is_menu() && !video_fb_state())) { page = 0; OsdSetSize(16); @@ -5149,8 +5146,9 @@ void HandleUI(void) if (cfg.bootcore[0] != '\0') { - if (btimeout >= 10) + if (btimeout > 0) { + OsdWrite(12, "\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81\x81"); sprintf(str, " Bootcore -> %s", bootcoretype); OsdWrite(13, str, 0, 0); strcpy(straux, cfg.bootcore); @@ -5173,7 +5171,7 @@ void HandleUI(void) sprintf(str, " Press any key to cancel"); OsdWrite(15, str, 0, 0); btimeout--; - if (btimeout < 10) + if (!btimeout) { OsdWrite(13, "", 0, 0); OsdWrite(14, s, 1, 0, 0, 0);