diff --git a/Core/RegisterHandlerB.h b/Core/RegisterHandlerB.h index 37e7b94..bd61001 100644 --- a/Core/RegisterHandlerB.h +++ b/Core/RegisterHandlerB.h @@ -27,7 +27,9 @@ public: if(addr >= 0x2140 && addr <= 0x217F) { return _spc->Read(addr & 0x03); } else if(addr == 0x2180) { - return _workRam[_wramPosition++]; + uint8_t value = _workRam[_wramPosition]; + _wramPosition = (_wramPosition + 1) & 0x1FFFF; + return value; } else { return _ppu->Read(addr); }