diff --git a/CHANGES b/CHANGES index 328de47b8..15f85e7f0 100644 --- a/CHANGES +++ b/CHANGES @@ -30,6 +30,7 @@ Misc: - GB Serialize: Add missing savestate support for MBC6 and NT (newer) - GBA: Improve detection of valid ELF ROMs - GBA Audio: Remove broken XQ audio pending rewrite + - Libretro: Add Super Game Boy Color support (closes mgba.io/i/3188) - mGUI: Enable auto-softpatching (closes mgba.io/i/2899) - mGUI: Persist fast forwarding after closing menu (fixes mgba.io/i/2414) - Qt: Handle multiple save game files for disparate games separately (fixes mgba.io/i/2887) diff --git a/src/platform/libretro/libretro.c b/src/platform/libretro/libretro.c index 86a692837..d2565a42b 100644 --- a/src/platform/libretro/libretro.c +++ b/src/platform/libretro/libretro.c @@ -268,6 +268,8 @@ static void _reloadSettings(void) { model = GB_MODEL_SGB; } else if (strcmp(var.value, "Game Boy Color") == 0) { model = GB_MODEL_CGB; + } else if (strcmp(var.value, "Super Game Boy Color") == 0) { + model = GB_MODEL_SCGB; } else if (strcmp(var.value, "Game Boy Advance") == 0) { model = GB_MODEL_AGB; } else { @@ -278,6 +280,8 @@ static void _reloadSettings(void) { mCoreConfigSetDefaultValue(&core->config, "gb.model", modelName); mCoreConfigSetDefaultValue(&core->config, "sgb.model", modelName); mCoreConfigSetDefaultValue(&core->config, "cgb.model", modelName); + mCoreConfigSetDefaultValue(&core->config, "cgb.hybridModel", modelName); + mCoreConfigSetDefaultValue(&core->config, "cgb.sgbModel", modelName); } var.key = "mgba_sgb_borders"; diff --git a/src/platform/libretro/libretro_core_options.h b/src/platform/libretro/libretro_core_options.h index 76ca634f9..f0a4b3f04 100644 --- a/src/platform/libretro/libretro_core_options.h +++ b/src/platform/libretro/libretro_core_options.h @@ -87,11 +87,12 @@ struct retro_core_option_v2_definition option_defs_us[] = { NULL, "system", { - { "Autodetect", NULL }, - { "Game Boy", NULL }, - { "Super Game Boy", NULL }, - { "Game Boy Color", NULL }, - { "Game Boy Advance", NULL }, + { "Autodetect", NULL }, + { "Game Boy", NULL }, + { "Super Game Boy", NULL }, + { "Game Boy Color", NULL }, + { "Super Game Boy Color", NULL }, + { "Game Boy Advance", NULL }, { NULL, NULL }, }, "Autodetect"