all repos — mgba @ 3bded6d039240472107d98ff0e95d4c17cc62cbc

mGBA Game Boy Advance Emulator

GBA Hardware: Increase e-Reader scanning stability
Vicki Pfau vi@endrift.com
Thu, 20 Feb 2020 18:11:01 -0800
commit

3bded6d039240472107d98ff0e95d4c17cc62cbc

parent

774a292384425db2594a227f4f137ba954e20da0

1 files changed, 2 insertions(+), 3 deletions(-)

jump to
M src/gba/hardware.csrc/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);