Implement mapper 254
This commit is contained in:
parent
1d098aa242
commit
2001978a3e
|
@ -682,9 +682,11 @@
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper196.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper196.cs" />
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper197.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper197.cs" />
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper205.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper205.cs" />
|
||||||
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper219.cs" />
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper245.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper245.cs" />
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper249.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper249.cs" />
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper250.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper250.cs" />
|
||||||
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\Mapper254.cs" />
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\MMC3.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\MMC3.cs" />
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\NES-QJ.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\NES-QJ.cs" />
|
||||||
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\RexSoftSL1632.cs" />
|
<Compile Include="Consoles\Nintendo\NES\Boards\MMC3_family\RexSoftSL1632.cs" />
|
||||||
|
|
|
@ -0,0 +1,19 @@
|
||||||
|
namespace BizHawk.Emulation.Cores.Nintendo.NES
|
||||||
|
{
|
||||||
|
public sealed class Mapper219 : MMC3Board_Base
|
||||||
|
{
|
||||||
|
public override bool Configure(NES.EDetectionOrigin origin)
|
||||||
|
{
|
||||||
|
switch (Cart.board_type)
|
||||||
|
{
|
||||||
|
case "MAPPER219":
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
BaseSetup();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,51 @@
|
||||||
|
using BizHawk.Common;
|
||||||
|
|
||||||
|
namespace BizHawk.Emulation.Cores.Nintendo.NES
|
||||||
|
{
|
||||||
|
public sealed class Mapper254 : MMC3Board_Base
|
||||||
|
{
|
||||||
|
private ByteBuffer regs = new ByteBuffer(2);
|
||||||
|
|
||||||
|
public override bool Configure(NES.EDetectionOrigin origin)
|
||||||
|
{
|
||||||
|
switch (Cart.board_type)
|
||||||
|
{
|
||||||
|
case "MAPPER254":
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
BaseSetup();
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override byte ReadWRAM(int addr)
|
||||||
|
{
|
||||||
|
if (regs[0] > 0)
|
||||||
|
{
|
||||||
|
return WRAM[addr];
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return (byte)(WRAM[addr] ^ regs[1]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void WritePRG(int addr, byte value)
|
||||||
|
{
|
||||||
|
switch (addr)
|
||||||
|
{
|
||||||
|
case 0x0000:
|
||||||
|
regs[0] = 0xff;
|
||||||
|
break;
|
||||||
|
case 0x2001:
|
||||||
|
regs[1] = value;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
base.WritePRG(addr, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue