From 1b5b3e575c4c0aadad7aa486e0273bb538520661 Mon Sep 17 00:00:00 2001 From: Thomas Harte Date: Fri, 29 Dec 2023 14:45:48 -0500 Subject: [PATCH] Add repeat-only functionality. --- Machines/Apple/AppleII/AppleII.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/Machines/Apple/AppleII/AppleII.cpp b/Machines/Apple/AppleII/AppleII.cpp index 127200666..3d7286963 100644 --- a/Machines/Apple/AppleII/AppleII.cpp +++ b/Machines/Apple/AppleII/AppleII.cpp @@ -339,6 +339,13 @@ template class ConcreteMachine: case Key::F5: case Key::F6: case Key::F7: case Key::F8: case Key::F9: case Key::F10: case Key::F11: repeat_is_pressed = is_pressed; + + if constexpr (!is_iie()) { + if(is_pressed && !is_repeat) { + value = last_key; + break; + } + } return true; case Key::F12: @@ -391,6 +398,7 @@ template class ConcreteMachine: } if(is_pressed) { + last_key = value; keyboard_input = uint8_t(value | 0x80); key_is_down = true; } else { @@ -410,6 +418,7 @@ template class ConcreteMachine: } } + char last_key = 0; bool repeat_is_pressed = false; bool shift_is_pressed = false; bool control_is_pressed = false;