diff --git a/BizHawk.Emulation.Cores/BizHawk.Emulation.Cores.csproj b/BizHawk.Emulation.Cores/BizHawk.Emulation.Cores.csproj index 165efce0f0..726a51b140 100644 --- a/BizHawk.Emulation.Cores/BizHawk.Emulation.Cores.csproj +++ b/BizHawk.Emulation.Cores/BizHawk.Emulation.Cores.csproj @@ -705,7 +705,7 @@ - + @@ -762,6 +762,7 @@ + @@ -1188,4 +1189,4 @@ --> - + \ No newline at end of file diff --git a/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/UNIF/UNIF_BTL-Mario1-MALEE2.cs b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/UNIF/UNIF_BTL-Mario1-MALEE2.cs new file mode 100644 index 0000000000..4f6cdf485b --- /dev/null +++ b/BizHawk.Emulation.Cores/Consoles/Nintendo/NES/Boards/UNIF/UNIF_BTL-Mario1-MALEE2.cs @@ -0,0 +1,39 @@ +namespace BizHawk.Emulation.Cores.Nintendo.NES +{ + public sealed class Mapper055 : NES.NESBoardBase + { + public override bool Configure(NES.EDetectionOrigin origin) + { + switch (Cart.board_type) + { + case "MAPPER055": // Nestopia calls this mapper 55, I know of no dumps with the designation though + case "UNIF_BTL-MARIO1-MALEE2": + break; + default: + return false; + } + + WRAM = new byte[0x800]; + SetMirrorType(EMirrorType.Vertical); + return true; + } + + public override byte ReadWRAM(int addr) + { + if (addr < 0x1000) + { + return ROM[0x8000 + (addr & 0x7FF)]; + } + + return WRAM[(addr & 0x7FF)]; + } + + public override void WriteWRAM(int addr, byte value) + { + if (addr >= 0x1000) + { + WRAM[(addr & 0x7FF)] = value; + } + } + } +}