Simplify Gambatte's sync settings for selecting GBA (#2431)
Having GBA be a console mode is more straightforward for users to understand and a more logical way of arranging options. GBA is literally a console mode, not an additional modifier to a console mode.
This commit is contained in:
parent
e4d4c3a9d8
commit
3adcc26752
|
@ -224,7 +224,6 @@ namespace BizHawk.Client.EmuHawk
|
||||||
_config.PreferredCores["GBC"] = CoreNames.Gambatte;
|
_config.PreferredCores["GBC"] = CoreNames.Gambatte;
|
||||||
var s = GetSyncSettings<Gameboy, Gameboy.GambatteSyncSettings>();
|
var s = GetSyncSettings<Gameboy, Gameboy.GambatteSyncSettings>();
|
||||||
s.EnableBIOS = true;
|
s.EnableBIOS = true;
|
||||||
s.GBACGB = false;
|
|
||||||
PutSyncSettings<Gameboy>(s);
|
PutSyncSettings<Gameboy>(s);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -97,19 +97,15 @@ namespace BizHawk.Emulation.Cores.Nintendo.Gameboy
|
||||||
{
|
{
|
||||||
Auto,
|
Auto,
|
||||||
GB,
|
GB,
|
||||||
GBC
|
GBC,
|
||||||
|
GBA
|
||||||
}
|
}
|
||||||
|
|
||||||
[DisplayName("Console Mode")]
|
[DisplayName("Console Mode")]
|
||||||
[Description("Pick which console to run, 'Auto' chooses from ROM header, 'GB' and 'GBC' chooses the respective system")]
|
[Description("Pick which console to run, 'Auto' chooses from ROM header; 'GB', 'GBC', and 'GBA' chooses the respective system")]
|
||||||
[DefaultValue(ConsoleModeType.Auto)]
|
[DefaultValue(ConsoleModeType.Auto)]
|
||||||
public ConsoleModeType ConsoleMode { get; set; }
|
public ConsoleModeType ConsoleMode { get; set; }
|
||||||
|
|
||||||
[DisplayName("CGB in GBA")]
|
|
||||||
[Description("Emulate GBA hardware running a CGB game, instead of CGB hardware. Relevant only for titles that detect the presense of a GBA, such as Shantae.")]
|
|
||||||
[DefaultValue(false)]
|
|
||||||
public bool GBACGB { get; set; }
|
|
||||||
|
|
||||||
[DisplayName("Multicart Compatibility")]
|
[DisplayName("Multicart Compatibility")]
|
||||||
[Description("Use special compatibility hacks for certain multicart games. Relevant only for specific multicarts.")]
|
[Description("Use special compatibility hacks for certain multicart games. Relevant only for specific multicarts.")]
|
||||||
[DefaultValue(false)]
|
[DefaultValue(false)]
|
||||||
|
|
|
@ -64,17 +64,15 @@ namespace BizHawk.Emulation.Cores.Nintendo.Gameboy
|
||||||
break;
|
break;
|
||||||
case GambatteSyncSettings.ConsoleModeType.GBC:
|
case GambatteSyncSettings.ConsoleModeType.GBC:
|
||||||
break;
|
break;
|
||||||
|
case GambatteSyncSettings.ConsoleModeType.GBA:
|
||||||
|
flags |= LibGambatte.LoadFlags.GBA_CGB;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
if (game.System == "GB")
|
if (game.System == "GB")
|
||||||
flags |= LibGambatte.LoadFlags.FORCE_DMG;
|
flags |= LibGambatte.LoadFlags.FORCE_DMG;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_syncSettings.GBACGB)
|
|
||||||
{
|
|
||||||
flags |= LibGambatte.LoadFlags.GBA_CGB;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (_syncSettings.MulticartCompat)
|
if (_syncSettings.MulticartCompat)
|
||||||
{
|
{
|
||||||
flags |= LibGambatte.LoadFlags.MULTICART_COMPAT;
|
flags |= LibGambatte.LoadFlags.MULTICART_COMPAT;
|
||||||
|
@ -97,7 +95,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.Gameboy
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
biosSystemId = "GBC";
|
biosSystemId = "GBC";
|
||||||
biosId = _syncSettings.GBACGB ? "AGB" : "World";
|
biosId = _syncSettings.ConsoleMode == GambatteSyncSettings.ConsoleModeType.GBA ? "AGB" : "World";
|
||||||
IsCgb = true;
|
IsCgb = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue