diff --git a/Machines/Commodore/Plus4/Keyboard.cpp b/Machines/Commodore/Plus4/Keyboard.cpp index ca48ef1bb..871422a75 100644 --- a/Machines/Commodore/Plus4/Keyboard.cpp +++ b/Machines/Commodore/Plus4/Keyboard.cpp @@ -43,12 +43,16 @@ uint16_t KeyboardMapper::mapped_key_for_key(Inputs::Keyboard::Key key) const { BIND(Semicolon, Semicolon); BIND(Quote, Colon); BIND(Equals, Equals); BIND(ForwardSlash, Slash); + BIND(OpenSquareBracket, At); + BIND(CloseSquareBracket, Plus); + BIND(Backslash, Clear_Home); + + BIND(F11, Clear_Home); + BIND(F12, Run_Stop); + // TODO: - // At // GBP // Asterisk - // Clear_Home - // Run_Stop } #undef BIND return MachineTypes::MappedKeyboardMachine::KeyNotMapped; diff --git a/Machines/Commodore/Plus4/Keyboard.hpp b/Machines/Commodore/Plus4/Keyboard.hpp index 1519976f4..850c1bdaa 100644 --- a/Machines/Commodore/Plus4/Keyboard.hpp +++ b/Machines/Commodore/Plus4/Keyboard.hpp @@ -63,6 +63,12 @@ enum Key: uint16_t { Control = key(7, 0x04), k2 = key(7, 0x08), Space = key(7, 0x10), Commodore = key(7, 0x20), Q = key(7, 0x40), Run_Stop = key(7, 0x80), + + // Bonus virtual keys: + F4 = 0xfe00, + F5 = 0xfe01, + F6 = 0xfe02, + F7 = 0xfe03, }; struct KeyboardMapper: public MachineTypes::MappedKeyboardMachine::KeyboardMapper {