nyma pce - add gecd detection

This commit is contained in:
nattthebear 2020-05-26 16:26:58 -04:00
parent 3f43df4b1a
commit c467023dac
1 changed files with 8 additions and 6 deletions

View File

@ -1,4 +1,5 @@
using System.Collections.Generic;
using System.Linq;
using BizHawk.Emulation.Common;
using BizHawk.Emulation.Cores.Waterbox;
using BizHawk.Emulation.DiscSystem;
@ -19,12 +20,13 @@ namespace BizHawk.Emulation.Cores.Consoles.NEC.PCE
NymaSettings settings, NymaSyncSettings syncSettings)
: base(comm, "PCE", "PC Engine Controller", settings, syncSettings)
{
// TODO: detect GECD and only ask for the firmware we need
var firmwares = new Dictionary<string, byte[]>
{
{ "FIRMWARE:syscard3.pce", comm.CoreFileProvider.GetFirmware("PCECD", "Bios", true) },
{ "FIRMWARE:gecard.pce", comm.CoreFileProvider.GetFirmware("PCECD", "GE-Bios", true) },
};
var firmwares = new Dictionary<string, byte[]>();
var types = discs.Select(d => new DiscIdentifier(d).DetectDiscType())
.ToList();
if (types.Contains(DiscType.TurboCD))
firmwares.Add("FIRMWARE:syscard3.pce", comm.CoreFileProvider.GetFirmware("PCECD", "Bios", true));
if (types.Contains(DiscType.TurboGECD))
firmwares.Add("FIRMWARE:gecard.pce", comm.CoreFileProvider.GetFirmware("PCECD", "GE-Bios", true));
DoInit<LibNymaCore>(game, null, discs, "pce.wbx", null, firmwares);
}