From 421b9f21c19eac6bc4753d7869abb04dfd23f6ba Mon Sep 17 00:00:00 2001 From: sorgelig Date: Sat, 25 Apr 2020 17:12:18 +0800 Subject: [PATCH] pcecd: support bios per CD. --- support/pcecd/pcecd.cpp | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/support/pcecd/pcecd.cpp b/support/pcecd/pcecd.cpp index 2207661..94dcada 100644 --- a/support/pcecd/pcecd.cpp +++ b/support/pcecd/pcecd.cpp @@ -128,6 +128,7 @@ int pcecd_using_cd() void pcecd_set_image(int num, const char *filename) { (void)num; + static char romname[1024]; pcecdd.Unload(); pcecdd.state = PCECD_STATE_NODISC; @@ -141,8 +142,21 @@ void pcecd_set_image(int num, const char *filename) pcecdd.SendData = pcecd_send_data; // load CD BIOS - sprintf(path, "%s/cd.rom", user_io_get_core_path()); - user_io_file_tx(path, 0); + strcpy(romname, filename); + char *p = strrchr(romname, '/'); + int loaded = 0; + if (p) + { + p++; + strcpy(p, "cd_bios.rom"); + loaded = user_io_file_tx(romname, 0); + } + + if (!loaded) + { + sprintf(path, "%s/cd_bios.rom", user_io_get_core_path()); + user_io_file_tx(path, 0); + } notify_mount(1); } else {