AxibugEmuOnline/AxibugEmuOnline.Client/Assets/MyNes.Core/Mapper061.cs
2024-07-03 18:22:22 +08:00

21 lines
613 B
C#

namespace MyNes.Core
{
[BoardInfo("20-in-1", 61)]
internal class Mapper061 : Board
{
internal override void WritePRG(ref ushort address, ref byte data)
{
if ((address & 0x10) == 0)
{
Switch32KPRG(address & 0xF, PRGArea.Area8000);
}
else
{
Switch16KPRG(((address & 0xF) << 1) | ((address & 0x20) >> 5), PRGArea.Area8000);
Switch16KPRG(((address & 0xF) << 1) | ((address & 0x20) >> 5), PRGArea.AreaC000);
}
Switch01KNMTFromMirroring(((address & 0x80) == 128) ? Mirroring.Horz : Mirroring.Vert);
}
}
}