1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-06-25 18:30:07 +00:00

Takes a swing at improper key repeat.

This commit is contained in:
Thomas Harte 2021-02-28 16:46:09 -05:00
parent 2f45e07d82
commit cbf5a79ee8

View File

@ -171,11 +171,14 @@ void Executor::write(uint16_t address, uint8_t value) {
} break;
// Timers.
case 0xf9: prescalers_[0].reload_value = value; break;
case 0xfa: timers_[0].reload_value = value; break;
case 0xfb: timers_[1].reload_value = value; break;
case 0xfc: prescalers_[1].reload_value = value; break;
case 0xfd: timers_[2].reload_value = value; break;
//
// Reloading of value with the reload value is a guess, based upon what I take
// to be the intended usage of timer 2 in handling key repeat on the Apple IIgs.
case 0xf9: prescalers_[0].value = prescalers_[0].reload_value = value; break;
case 0xfa: timers_[0].value = timers_[0].reload_value = value; break;
case 0xfb: timers_[1].value = timers_[1].reload_value = value; break;
case 0xfc: prescalers_[1].value = prescalers_[1].reload_value = value; break;
case 0xfd: timers_[2].value = timers_[2].reload_value = value; break;
case 0xfe: interrupt_control_ = value; break;
case 0xff: timer_control_ = value; break;