GBA Hardware: Increase e-Reader scanning stability
Vicki Pfau vi@endrift.com
Thu, 20 Feb 2020 18:11:01 -0800
1 files changed,
2 insertions(+),
3 deletions(-)
jump to
M
src/gba/hardware.c
→
src/gba/hardware.c
@@ -981,9 +981,8 @@ hw->eReaderRegisterControl0 = control;
if (!EReaderControl0IsScan(oldControl) && EReaderControl0IsScan(control)) { hw->eReaderX = 0; hw->eReaderY = 0; + } else if (EReaderControl0IsLedEnable(control) && EReaderControl0IsScan(control) && !EReaderControl1IsScanline(hw->eReaderRegisterControl1)) { _eReaderReadData(hw); - } else if (EReaderControl0IsLedEnable(control) && EReaderControl1IsScanline(hw->eReaderRegisterControl1)) { - GBARaiseIRQ(hw->p, IRQ_GAMEPAK, 0); } mLOG(GBA_HW, STUB, "Unimplemented e-Reader Control0 write: %02X", value); }@@ -996,7 +995,7 @@ ++hw->eReaderY;
if (hw->eReaderY == (hw->eReaderSerial[0x15] | (hw->eReaderSerial[0x14] << 8))) { hw->eReaderY = 0; if (hw->eReaderX < 3400) { - hw->eReaderX += 225; + hw->eReaderX += 220; } } _eReaderReadData(hw);