diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/ExROM.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/ExROM.cs index 7aa9b5027e..d3eef28a95 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/ExROM.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/ExROM.cs @@ -103,6 +103,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES case "MAPPER005": break; case "NES-ELROM": //Castlevania 3 - Dracula's Curse (U) + case "HVC-ELROM": AssertPrg(128, 256); AssertChr(128); break; case "NES-EKROM": //Gemfire (U) diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/MMC3_family/TxROM.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/MMC3_family/TxROM.cs index c8039cfc78..9c0822167d 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/MMC3_family/TxROM.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/MMC3_family/TxROM.cs @@ -60,6 +60,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES AssertBattery(false); break; case "NES-TKROM": //kirby's adventure + case "NES-TKEPROM": // kirby's adventure (proto) case "HVC-TKROM": //Akuma No Shoutaijou (J) AssertPrg(128, 256, 512); AssertChr(128, 256); AssertVram(0); AssertWram(8); break; diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/NROM.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/NROM.cs index 849b29dcd6..d9e3a1f265 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/NROM.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/NROM.cs @@ -34,7 +34,13 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES case "UNIF_NES-NROM-256": // Locksmith case "UNIF_NES-NROM-128": // various case "TENGEN-800003": // ms pac man, others - AssertPrg(8, 16, 32); AssertChr(8); AssertVram(0); AssertWram(0, 8); + case "JALECO-JF-02": + case "TAITO-NROM-256": + case "HVC-SROM": + case "SETA-NROM-128": + case "BANDAI-NROM-128": + AssertPrg(8, 16, 32); + AssertChr(8); AssertVram(0); AssertWram(0, 8); break; default: diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/Namcot1xx/Mapper206.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/Namcot1xx/Mapper206.cs index 3a9267c17c..4a682ab86e 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/Namcot1xx/Mapper206.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/Namcot1xx/Mapper206.cs @@ -24,7 +24,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES AssertPrg(128); AssertChr(64); AssertVram(0); AssertWram(0); break; case "NAMCOT-3407": //family jockey (J) - AssertPrg(32); AssertChr(32); AssertVram(0); AssertWram(0); + AssertPrg(32); AssertChr(32, 16); AssertVram(0); AssertWram(0); break; case "NAMCOT-3413": //pro yakyuu family stadium (J) AssertPrg(64); AssertChr(32); AssertVram(0); AssertWram(0); @@ -48,6 +48,12 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES case "TENGEN-800030": // Pac-Mania (U), etc AssertPrg(64, 128); AssertChr(32, 64); AssertVram(0); AssertWram(0); break; + case "NES-DE1ROM": + AssertPrg(128); AssertChr(64); AssertVram(0); AssertWram(0); + break; + case "NAMCOT-3451": + AssertPrg(32); AssertChr(32); AssertVram(0); AssertWram(0); + break; default: return false; } diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/SxROM.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/SxROM.cs index 95a1dde9f6..70e7d745ca 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/SxROM.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/SxROM.cs @@ -380,6 +380,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES AssertPrg(256); AssertChr(128); AssertVram(0); AssertWram(0); break; case "NES-SLRROM": //tecmo bowl + case "HVC-SLRROM": AssertPrg(128); AssertChr(128); AssertVram(0); AssertWram(0); break; case "HVC-SMROM": //Hokkaidou Rensa Satsujin: Okhotsu ni Shoyu @@ -430,6 +431,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES switch (Cart.board_type) { case "NES-SOROM": //Nobunaga's Ambition + case "HVC-SOROM": // KHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAN AssertPrg(128, 256); AssertChr(0); AssertVram(8); AssertWram(16); break; default: return false; diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/UxROM.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/UxROM.cs index 2aa093cb5e..2cd49b7559 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/UxROM.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/UxROM.cs @@ -13,6 +13,8 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES //TODO - look for a mirror=H UNROM--maybe there are none? this may be fixed to the board type. + // why are there no bus conflicts in here??????? + [NES.INESBoardImplPriority] public sealed class UxROM : NES.NESBoardBase { @@ -38,6 +40,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES case "HVC-UNROM": case "KONAMI-UNROM": case "NES-UNEPROM": // proto + case "IREM-UNROM": AssertPrg(128); AssertChr(0); AssertVram(8); //AssertWram(0); //JJ - Tobidase Daisakusen Part 2 (J) includes WRAM break; @@ -49,6 +52,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES case "NES-UOROM": //paperboy 2 case "HVC-UOROM": + case "JALECO-JF-18": AssertPrg(256); AssertChr(0); AssertVram(8); AssertWram(0); break; diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/VRC1.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/VRC1.cs index 349eb7182d..92feb7b3ea 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/VRC1.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/VRC1.cs @@ -41,6 +41,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES case "MAPPER075": break; case "KONAMI-VRC-1": + case "JALECO-JF-20": AssertPrg(128); AssertChr(128); AssertVram(0); AssertWram(0); break; default: diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/VRC2_4.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/VRC2_4.cs index 774a119493..2645b24937 100644 --- a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/VRC2_4.cs +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/VRC2_4.cs @@ -129,8 +129,12 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES remap = (addr) => ((addr & 0xF000) | ((addr >> 2) & 3)); else if (Cart.pcb == "351406") remap = (addr) => ((addr & 0xF000) | ((addr & 1) << 1) | ((addr & 2) >> 1)); - else throw new Exception("Unknown PCB type for VRC4"); - + else if (Cart.pcb == "351948") // Ganbare Goemon Gaiden + throw new Exception("VRC4: Fix me!"); + else if (Cart.pcb == "352889") // Ganbare Goemon Gaiden 2 + throw new Exception("VRC4: Fix me!"); + else + throw new Exception("Unknown PCB type for VRC4"); break; case "KONAMI-VRC-2": AssertPrg(128); AssertChr(128); AssertVram(0); AssertWram(0);