allow DSi mode to run with internal DS BIOS
This commit is contained in:
parent
023dc0c446
commit
5f8255bc90
|
@ -859,7 +859,7 @@ std::unique_ptr<ARM9BIOSImage> EmuInstance::loadARM9BIOS() noexcept
|
||||||
{
|
{
|
||||||
if (!globalCfg.GetBool("Emu.ExternalBIOSEnable"))
|
if (!globalCfg.GetBool("Emu.ExternalBIOSEnable"))
|
||||||
{
|
{
|
||||||
return globalCfg.GetInt("Emu.ConsoleType") == 0 ? std::make_unique<ARM9BIOSImage>(bios_arm9_bin) : nullptr;
|
return std::make_unique<ARM9BIOSImage>(bios_arm9_bin);
|
||||||
}
|
}
|
||||||
|
|
||||||
string path = globalCfg.GetString("DS.BIOS9Path");
|
string path = globalCfg.GetString("DS.BIOS9Path");
|
||||||
|
@ -882,7 +882,7 @@ std::unique_ptr<ARM7BIOSImage> EmuInstance::loadARM7BIOS() noexcept
|
||||||
{
|
{
|
||||||
if (!globalCfg.GetBool("Emu.ExternalBIOSEnable"))
|
if (!globalCfg.GetBool("Emu.ExternalBIOSEnable"))
|
||||||
{
|
{
|
||||||
return globalCfg.GetInt("Emu.ConsoleType") == 0 ? std::make_unique<ARM7BIOSImage>(bios_arm7_bin) : nullptr;
|
return std::make_unique<ARM7BIOSImage>(bios_arm7_bin);
|
||||||
}
|
}
|
||||||
|
|
||||||
string path = globalCfg.GetString("DS.BIOS7Path");
|
string path = globalCfg.GetString("DS.BIOS7Path");
|
||||||
|
@ -1006,12 +1006,13 @@ std::optional<Firmware> EmuInstance::loadFirmware(int type) noexcept
|
||||||
{ // If we're using built-in firmware...
|
{ // If we're using built-in firmware...
|
||||||
if (type == 1)
|
if (type == 1)
|
||||||
{
|
{
|
||||||
Log(Error, "DSi firmware: cannot use built-in firmware in DSi mode!\n");
|
// TODO: support generating a firmware for DSi mode
|
||||||
return std::nullopt;
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
return generateFirmware(type);
|
return generateFirmware(type);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
//const string& firmwarepath = type == 1 ? Config::DSiFirmwarePath : Config::FirmwarePath;
|
//const string& firmwarepath = type == 1 ? Config::DSiFirmwarePath : Config::FirmwarePath;
|
||||||
string firmwarepath;
|
string firmwarepath;
|
||||||
if (type == 1)
|
if (type == 1)
|
||||||
|
@ -1458,16 +1459,16 @@ void EmuInstance::reset()
|
||||||
|
|
||||||
|
|
||||||
bool EmuInstance::bootToMenu()
|
bool EmuInstance::bootToMenu()
|
||||||
{
|
{printf("bootToMenu 1\n");
|
||||||
// Keep whatever cart is in the console, if any.
|
// Keep whatever cart is in the console, if any.
|
||||||
if (!updateConsole())
|
if (!updateConsole())
|
||||||
// Try to update the console, but keep the existing cart. If that fails...
|
// Try to update the console, but keep the existing cart. If that fails...
|
||||||
return false;
|
return false;
|
||||||
|
printf("bootToMenu 2\n");
|
||||||
// BIOS and firmware files are loaded, patched, and installed in UpdateConsole
|
// BIOS and firmware files are loaded, patched, and installed in UpdateConsole
|
||||||
if (nds->NeedsDirectBoot())
|
if (nds->NeedsDirectBoot())
|
||||||
return false;
|
return false;
|
||||||
|
printf("bootToMenu 3\n");
|
||||||
initFirmwareSaveManager();
|
initFirmwareSaveManager();
|
||||||
nds->Reset();
|
nds->Reset();
|
||||||
setBatteryLevels();
|
setBatteryLevels();
|
||||||
|
|
Loading…
Reference in New Issue