From a0b9310e8ffb7f665cb6e0375dbe453cf7f49fd5 Mon Sep 17 00:00:00 2001 From: sorgelig Date: Fri, 15 May 2020 00:11:41 +0800 Subject: [PATCH] pcecd: notify if CD BIOS isn't loaded. --- menu.cpp | 9 ++++----- support/pcecd/pcecd.cpp | 8 ++++++-- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/menu.cpp b/menu.cpp index cc6f9d9..2df8f4d 100644 --- a/menu.cpp +++ b/menu.cpp @@ -1761,13 +1761,12 @@ void HandleUI(void) break; case MENU_8BIT_MAIN_FILE_SELECTED: + MenuHide(); printf("File selected: %s\n", selPath); memcpy(Selected_F[ioctl_index & 15], selPath, sizeof(Selected_F[ioctl_index & 15])); if (fs_Options & SCANO_NEOGEO) { - menustate = MENU_NONE1; - HandleUI(); neogeo_romset_tx(selPath); } else @@ -1780,13 +1779,15 @@ void HandleUI(void) user_io_store_filename(selPath); user_io_file_tx(selPath, user_io_ext_idx(selPath, fs_pFileExt) << 6 | ioctl_index, opensave); if (user_io_use_cheats()) cheats_init(selPath, user_io_get_file_crc()); - menustate = MENU_NONE1; } recent_update(SelectedDir, Selected_F[ioctl_index & 15], SelectedLabel, ioctl_index); break; case MENU_8BIT_MAIN_IMAGE_SELECTED: + menustate = selPath[0] ? MENU_NONE1 : MENU_8BIT_MAIN1; + HandleUI(); + printf("Image selected: %s\n", selPath); memcpy(Selected_S[ioctl_index & 3], selPath, sizeof(Selected_S[ioctl_index & 3])); @@ -1817,8 +1818,6 @@ void HandleUI(void) user_io_file_mount(selPath, ioctl_index); } - menustate = selPath[0] ? MENU_NONE1 : MENU_8BIT_MAIN1; - recent_update(SelectedDir, Selected_S[ioctl_index & 3], SelectedLabel, ioctl_index + 500); break; diff --git a/support/pcecd/pcecd.cpp b/support/pcecd/pcecd.cpp index 08ad2ef..f5d466a 100644 --- a/support/pcecd/pcecd.cpp +++ b/support/pcecd/pcecd.cpp @@ -8,6 +8,7 @@ #include "../../user_io.h" #include "../../spi.h" #include "../../hardware.h" +#include "../../menu.h" #include "pcecd.h" @@ -225,9 +226,12 @@ void pcecd_set_image(int num, const char *filename) if (!loaded) { - sprintf(buf, "%s/cd_bios.rom", user_io_get_core_path()); - load_bios(buf, filename); + sprintf(buf, "%sCD/cd_bios.rom", user_io_get_core_path()); + loaded = load_bios(buf, filename); } + + if (!loaded) Info("CD BIOS not found!", 4000); + notify_mount(1); } else {