From 0ff69c560f9873a4f6b3ba11e8ba4ef64fd8c243 Mon Sep 17 00:00:00 2001 From: CasualPokePlayer <50538166+CasualPokePlayer@users.noreply.github.com> Date: Tue, 1 Mar 2022 09:18:49 -0800 Subject: [PATCH] Fix SXROM Detection (#3170) * fix #3168? * revert iNES 2.0 parsing changes (and revert 4ff7745), add special iNES 2.0 case for SXROM * oh right subboard crap --- .../Consoles/Nintendo/NES/Boards/SxROM.cs | 5 +++++ .../Consoles/Nintendo/NES/NES.iNES.cs | 12 +----------- 2 files changed, 6 insertions(+), 11 deletions(-) diff --git a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/SxROM.cs b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/SxROM.cs index 7f0d16c10a..d40cadd113 100644 --- a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/SxROM.cs +++ b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/SxROM.cs @@ -589,6 +589,11 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES { switch (Cart.BoardType) { + case "MAPPER0001-00": + if (Cart.WramSize < 32) + return false; + AssertPrg(128, 256, 512); AssertChr(0); AssertVram(8); AssertWram(32); + break; case "HVC-SXROM": //final fantasy 1& 2 AssertPrg(128, 256, 512); AssertChr(0); AssertVram(8); AssertWram(32); break; diff --git a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.iNES.cs b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.iNES.cs index 1b1dbdc786..757646148b 100644 --- a/src/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.iNES.cs +++ b/src/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/NES.iNES.cs @@ -48,17 +48,7 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES int mapper = data[6] >> 4 | data[7] & 0xf0 | data[8] << 8 & 0xf00; int submapper = data[8] >> 4; - - // only add submapper if it is non-zero - if (submapper != 0) - { - CartV2.BoardType = $"MAPPER{mapper:d4}-{submapper:d2}"; - } - else - { - CartV2.BoardType = $"MAPPER{mapper:d4}"; - } - + CartV2.BoardType = $"MAPPER{mapper:d4}-{submapper:d2}"; int vrambat = iNES2Wram(data[11] >> 4); int vramnon = iNES2Wram(data[11] & 15);