NESHawk: Fix some unlicensed games

This commit is contained in:
alyosha-tas 2017-12-02 10:03:27 -05:00
parent d840769a70
commit 5e481a6083
2 changed files with 7 additions and 22 deletions

View File

@ -275,6 +275,7 @@ sha1:6AAA5521F91F101448E77C996C9802015578400C Dooly_Bravo_Land NES board=MAPPE
sha1:4EBC1ED9665C36913D0F05129E6A54787BAD3165 Dragon Ball 3 - Gokuu Den (Japan) (Rev 1) NES board=BANDAI-FCG-2;PRG=128;CHR=256;WRAM=0;VRAM=0;PAD_V=0;PAD_H=1
sha1:5A6DFDD8A2D62EBE313A6FDB986C3585077BB348 Final Combat (Asia) (NTSC) (Unl) NES board=MAPPER139
sha1:DFAF6D81280ADBEB2ADF3DAB38E536B0F2FDFC76 Final Combat (Asia) (PAL) (Unl) NES board=MAPPER139;system=NES-PAL
sha1:433CEC30E71DCA31E32B8A44A0D534DBFE7039CA BoogerMan II (RexSoft) [!] NES board=UNIF_UNL-KOF97
;;;;;;;;;;;;;;;;;;;-----------------------------------------------------------------------

View File

@ -33,36 +33,20 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
public override void WritePRG(int addr, byte value)
{
if (addr < 0x1000) // 0x8000 - 0x8FFF
{
base.WritePRG(addr & 1, Unscramble(value));
}
value = Unscramble(value);
else if (addr == 0x1000) // 9000 = 8001
if (addr == 0x1000) // 9000 = 8001
{
base.WritePRG(1, Unscramble(value));
base.WritePRG(1, value);
}
else if (addr == 0x2000) // A000 = 8000)
{
base.WritePRG(0, Unscramble(value));
}
else if (addr == 0x5000) // D000 = C001
{
base.WritePRG(0x4001, Unscramble(value));
base.WritePRG(0x4001, value);
}
else if (addr >= 0x6000 && addr < 0x7000) // 0xE0000 - 0xEFFF
else if (addr == 0x7000) // F000 = E001
{
base.WritePRG(addr & 1, Unscramble(value));
base.WritePRG(0x6001, value);
}
else if (addr == 0x7000) // F000
{
base.WritePRG(0x6001, Unscramble(value));
}
else
{
base.WritePRG(addr, value);