nes-fix m074 and m192 and add You Ling Xing Dong to gamedb to correct mapper from m074->m192. p.s. you ling mi long dong
This commit is contained in:
parent
a378a47b67
commit
7e9d487580
|
@ -28,7 +28,15 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
|||
{
|
||||
if (addr < 0x2000)
|
||||
{
|
||||
VRAM[addr & 0x7FF] = value;
|
||||
int bank = Get_CHRBank_1K(addr);
|
||||
if (bank == 0x08)
|
||||
{
|
||||
VRAM[addr & 0x03FF] = value;
|
||||
}
|
||||
else if (bank == 0x09)
|
||||
{
|
||||
VRAM[(addr & 0x03FF) + 0x400] = value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -36,32 +44,24 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
|||
}
|
||||
}
|
||||
|
||||
private int GetBankNum(int addr)
|
||||
{
|
||||
int bank_1k = Get_CHRBank_1K(addr);
|
||||
bank_1k &= chr_mask;
|
||||
return bank_1k;
|
||||
}
|
||||
|
||||
public override byte ReadPPU(int addr)
|
||||
{
|
||||
if (addr < 0x2000)
|
||||
{
|
||||
int bank = GetBankNum(addr);
|
||||
if (bank == 0x08)
|
||||
{
|
||||
return VRAM[addr & 0x03FF];
|
||||
}
|
||||
else if (bank == 0x09)
|
||||
{
|
||||
return VRAM[(addr & 0x03FF) + 0x400];
|
||||
}
|
||||
else
|
||||
{
|
||||
addr = MapCHR(addr);
|
||||
return VROM[addr + extra_vrom];
|
||||
}
|
||||
|
||||
int bank = Get_CHRBank_1K(addr);
|
||||
if (bank == 0x08)
|
||||
{
|
||||
return VRAM[addr & 0x03FF];
|
||||
}
|
||||
else if (bank == 0x09)
|
||||
{
|
||||
return VRAM[(addr & 0x03FF) + 0x400];
|
||||
}
|
||||
else
|
||||
{
|
||||
addr = MapCHR(addr);
|
||||
return VROM[addr];
|
||||
}
|
||||
}
|
||||
else return base.ReadPPU(addr);
|
||||
}
|
||||
|
|
|
@ -28,7 +28,23 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
|||
{
|
||||
if (addr < 0x2000)
|
||||
{
|
||||
VRAM[addr & 0xFFF] = value;
|
||||
int bank = Get_CHRBank_1K(addr);
|
||||
if (bank == 0x08)
|
||||
{
|
||||
VRAM[addr & 0x03FF] = value;
|
||||
}
|
||||
else if (bank == 0x09)
|
||||
{
|
||||
VRAM[(addr & 0x03FF) + 0x400] = value;
|
||||
}
|
||||
if (bank == 0x0A)
|
||||
{
|
||||
VRAM[addr & 0x03FF + 0x800] = value;
|
||||
}
|
||||
else if (bank == 0x0B)
|
||||
{
|
||||
VRAM[(addr & 0x03FF) + 0xC00] = value;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -36,18 +52,12 @@ namespace BizHawk.Emulation.Consoles.Nintendo
|
|||
}
|
||||
}
|
||||
|
||||
private int GetBankNum(int addr)
|
||||
{
|
||||
int bank_1k = Get_CHRBank_1K(addr);
|
||||
bank_1k &= chr_mask;
|
||||
return bank_1k;
|
||||
}
|
||||
|
||||
public override byte ReadPPU(int addr)
|
||||
{
|
||||
if (addr < 0x2000)
|
||||
{
|
||||
int bank = GetBankNum(addr);
|
||||
int bank = Get_CHRBank_1K(addr);
|
||||
if (bank == 0x08)
|
||||
{
|
||||
byte value = VRAM[addr & 0x03FF];
|
||||
|
|
|
@ -106,6 +106,7 @@ sha1:F5FA7807F2B70ADFE5707D9BF88F90DAC1436DB0 Di 4 Ci - Ji Qi Ren Dai Zhan (Ch)
|
|||
sha1:A9887C308C5D0659C3AA45D003A603C9DFFB148A B Ji Jia Zhan Shi (Asia) NES board=MAPPER074;VRAM=2
|
||||
sha1:5084F25F14A61AB2799BD85D363B57B9B494601D Ji Jia Zhan Shi (Asia) NES board=MAPPER074;VRAM=2
|
||||
sha1:6143D80047FFC17C752078C622A44C3E0CB7466E B Dong Fang de Chuan Shuo - The Hyrule Fantasy (Asia) NES board=MAPPER245
|
||||
sha1:CEFEBA536DB507DBDEF8A538F9C332D7A75BF613 You Ling Xing Dong (Ch) NES board=MAPPER192;VRAM=4
|
||||
|
||||
;wrong vram info
|
||||
sha1:32D71DD6C5A8D78A918FE1B9D6D6C4A570D9652D Oeka Kids - Anpanman no Hiragana Daisuki (J) NES board=MAPPER096;VRAM=32
|
||||
|
|
Loading…
Reference in New Issue