mirror of
https://github.com/melonDS-emu/melonDS.git
synced 2025-07-25 23:29:55 -06:00
Remove the last ConfigEntry
state (#1902)
* Get rid of `ConfigEntry::ExternalBIOSEnable` - Now the BIOS files themselves are checked - The frontend's `Config::ExternalBIOSEnable` is not affected * Add `JITArgs` * Pass the JIT status to the `ARM` constructors * Encapsulate `NDS::EnableJIT` * Pass `JITArgs` to `ARMJIT`'s constructor * Remove the `JIT_*` `ConfigEntry`s in favor of members - Allow all the JIT args to be set with `NDS::SetJITArgs` - Encapsulate the JIT-related parameters in `ARMJIT` so they can reset the block cache if changed - Update the active (or newly-created) console in the frontend with adjusted JIT args * Make audio bit depth and interpolation configurable in `NDSArgs` - Define enums for both - Give those settings default values in `NDSArgs` - Remove `ConfigEntry::AudioBitDepth` - Initialize these settings in the relevant SPU constructors * Move the last DSi-specific logic in `Reset` to its own subclass * Remove `ConfigEntry::DSi_FullBIOSBoot` - Add members to `DSi` instead for getting and setting this - Update the frontend to accommodate these changes * Oops, missed a spot * Remove `ConfigEntry::Firm_MAC` and `Platform::GetConfigArray` - Also move the MAC parsing code to `ROMManager` * Remove the last `ConfigEntry` state - Make GDB support configurable via members * Add some `#ifdef`s that I'd almost forgotten
This commit is contained in:
@ -193,90 +193,6 @@ std::string InstanceFileSuffix()
|
||||
return suffix;
|
||||
}
|
||||
|
||||
|
||||
int GetConfigInt(ConfigEntry entry)
|
||||
{
|
||||
const int imgsizes[] = {0, 256, 512, 1024, 2048, 4096};
|
||||
|
||||
switch (entry)
|
||||
{
|
||||
#ifdef JIT_ENABLED
|
||||
case JIT_MaxBlockSize: return Config::JIT_MaxBlockSize;
|
||||
#endif
|
||||
|
||||
case AudioBitDepth: return Config::AudioBitDepth;
|
||||
|
||||
#ifdef GDBSTUB_ENABLED
|
||||
case GdbPortARM7: return Config::GdbPortARM7;
|
||||
case GdbPortARM9: return Config::GdbPortARM9;
|
||||
#endif
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
bool GetConfigBool(ConfigEntry entry)
|
||||
{
|
||||
switch (entry)
|
||||
{
|
||||
#ifdef JIT_ENABLED
|
||||
case JIT_Enable: return Config::JIT_Enable != 0;
|
||||
case JIT_LiteralOptimizations: return Config::JIT_LiteralOptimisations != 0;
|
||||
case JIT_BranchOptimizations: return Config::JIT_BranchOptimisations != 0;
|
||||
case JIT_FastMemory: return Config::JIT_FastMemory != 0;
|
||||
#endif
|
||||
|
||||
case ExternalBIOSEnable: return Config::ExternalBIOSEnable != 0;
|
||||
|
||||
case DSi_FullBIOSBoot: return Config::DSiFullBIOSBoot != 0;
|
||||
|
||||
#ifdef GDBSTUB_ENABLED
|
||||
case GdbEnabled: return Config::GdbEnabled;
|
||||
case GdbARM7BreakOnStartup: return Config::GdbARM7BreakOnStartup;
|
||||
case GdbARM9BreakOnStartup: return Config::GdbARM9BreakOnStartup;
|
||||
#endif
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
bool GetConfigArray(ConfigEntry entry, void* data)
|
||||
{
|
||||
switch (entry)
|
||||
{
|
||||
case Firm_MAC:
|
||||
{
|
||||
std::string& mac_in = Config::FirmwareMAC;
|
||||
u8* mac_out = (u8*)data;
|
||||
|
||||
int o = 0;
|
||||
u8 tmp = 0;
|
||||
for (int i = 0; i < 18; i++)
|
||||
{
|
||||
char c = mac_in[i];
|
||||
if (c == '\0') break;
|
||||
|
||||
int n;
|
||||
if (c >= '0' && c <= '9') n = c - '0';
|
||||
else if (c >= 'a' && c <= 'f') n = c - 'a' + 10;
|
||||
else if (c >= 'A' && c <= 'F') n = c - 'A' + 10;
|
||||
else continue;
|
||||
|
||||
if (!(o & 1))
|
||||
tmp = n;
|
||||
else
|
||||
mac_out[o >> 1] = n | (tmp << 4);
|
||||
|
||||
o++;
|
||||
if (o >= 12) return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
constexpr char AccessMode(FileMode mode, bool file_exists)
|
||||
{
|
||||
if (!(mode & FileMode::Write))
|
||||
|
Reference in New Issue
Block a user