From 24697ee7ea1999d408a7018277145da90dc9df3a Mon Sep 17 00:00:00 2001 From: Alex Janka Date: Sun, 29 Oct 2023 11:18:26 +1100 Subject: [PATCH] fallback rom for vst... AND IT WORKS EVERYWHERE!! 0.5.0 BABY!! --- Cargo.lock | 2 +- gb-vst/Cargo.toml | 2 +- gb-vst/error.gb | Bin 0 -> 131072 bytes gb-vst/src/lib.rs | 13 +++++-------- 4 files changed, 7 insertions(+), 10 deletions(-) create mode 100644 gb-vst/error.gb diff --git a/Cargo.lock b/Cargo.lock index d252890..e2d1bc1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3433,7 +3433,7 @@ checksum = "49d64318d8311fc2668e48b63969f4343e0a85c4a109aa8460d6672e364b8bd1" [[package]] name = "twinc_emu_vst" -version = "0.4.1" +version = "0.5.0" dependencies = [ "async-ringbuf", "baseview", diff --git a/gb-vst/Cargo.toml b/gb-vst/Cargo.toml index f594ea5..baa8186 100644 --- a/gb-vst/Cargo.toml +++ b/gb-vst/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "twinc_emu_vst" -version = "0.4.1" +version = "0.5.0" edition = "2021" [lib] diff --git a/gb-vst/error.gb b/gb-vst/error.gb new file mode 100644 index 0000000000000000000000000000000000000000..1c9c3045d1b9d7efd9b4aacec7fb8c6faafd198c GIT binary patch literal 131072 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 literal 0 HcmV?d00001 diff --git a/gb-vst/src/lib.rs b/gb-vst/src/lib.rs index 82ec4e1..2b5a182 100644 --- a/gb-vst/src/lib.rs +++ b/gb-vst/src/lib.rs @@ -94,10 +94,6 @@ fn access_config<'a>() -> &'a Configs { let emu_config = config_manager.load_or_create_base_config(); let vst_config = config_manager.load_or_create_config::("vst"); - if vst_config.rom.is_empty() { - panic!("no rom provided!!"); - } - Configs { vst_config, emu_config, @@ -298,13 +294,14 @@ impl Plugin for GameboyEmu { } else { let configs = access_config(); let rom_path = configs.config_dir.join(configs.vst_config.rom.clone()); - if !rom_path.is_file() { - panic!("{rom_path:?} is not a file!"); - } let (rom, camera) = RomFile::Path(rom_path) .load(gb_emu_lib::connect::SramType::None, NoCamera::default()) - .expect("failed to load rom"); + .unwrap_or_else(|_v| { + RomFile::Raw(include_bytes!("../error.gb").to_vec()) + .load(gb_emu_lib::connect::SramType::None, NoCamera::default()) + .expect("Couldn't load built-in fallback rom") + }); let _ = IS_CGB.set(rom.rom_type == CgbRomType::CgbOnly || configs.emu_config.prefer_cgb);