* fix a few bugs related to 2D GPU registers (so there are atleast some of the graphics tests that pass)

* less shitty texture mapping (and perspective-correct interpolation in general). extra bonus is that it also takes less divisions.
This commit is contained in:
StapleButter
2017-03-04 14:47:20 +01:00
parent ff4c1c9cf6
commit b6e12e0c18
4 changed files with 34 additions and 13 deletions

View File

@ -125,6 +125,9 @@ u16 GPU2D::Read16(u32 addr)
case 0x00A: return BGCnt[1];
case 0x00C: return BGCnt[2];
case 0x00E: return BGCnt[3];
case 0x064: return CaptureCnt & 0xFFFF;
case 0x066: return CaptureCnt >> 16;
}
printf("unknown GPU read16 %08X\n", addr);
@ -136,6 +139,8 @@ u32 GPU2D::Read32(u32 addr)
switch (addr & 0x00000FFF)
{
case 0x000: return DispCnt;
case 0x064: return CaptureCnt;
}
return Read16(addr) | (Read16(addr+2) << 16);