Nes - fix mapper 243 chr handling, we were correctly doing what was documented in the disch docs, but Nintendulator and FCEUX did something slightly different that is working. Changed to do against the docs and do what working emulators do

This commit is contained in:
adelikat 2015-08-09 19:42:47 -04:00
parent f8167c8841
commit 7fc3777e45
1 changed files with 4 additions and 1 deletions

View File

@ -126,7 +126,10 @@ namespace BizHawk.Emulation.Cores.Nintendo.NES
{
if (addr < 0x2000)
{
int chr_bank = regs[4] | (regs[6] << 1) | (regs[2] << 3);
// FCEUX and Nintendulator do HLDD instead of HDDL
// THis pattern works and HDDL does not, Seems like the disch docs wrong so we are going with what works
int chr_bank = regs[4] << 2 | (regs[6]) | (regs[2] << 3);
return VROM[((chr_bank & chr_bank_mask_8k) * 0x2000) + addr];
}
else