diff options
author | 2016-12-20 12:04:46 +0100 | |
---|---|---|
committer | 2016-12-20 12:04:56 +0100 | |
commit | 746b030b0e8930089ddac8f3a22f13bd12d62496 (patch) | |
tree | 469a4015611f687046a53a4f91a731a26d5b7569 /src/devices/bus/apricot | |
parent | 6a5811233cfb03ec03a6613c03a89fad96322f57 (diff) |
apricot: Fix keyboard error 31, now displays 'System OK'
Diffstat (limited to 'src/devices/bus/apricot')
-rw-r--r-- | src/devices/bus/apricot/keyboard/hle.cpp | 10 | ||||
-rw-r--r-- | src/devices/bus/apricot/keyboard/hle.h | 7 |
2 files changed, 16 insertions, 1 deletions
diff --git a/src/devices/bus/apricot/keyboard/hle.cpp b/src/devices/bus/apricot/keyboard/hle.cpp index d0f4eaa41a4..72d8abc771d 100644 --- a/src/devices/bus/apricot/keyboard/hle.cpp +++ b/src/devices/bus/apricot/keyboard/hle.cpp @@ -4,6 +4,11 @@ ACT Apricot Keyboard (HLE) + TODO: + - MicroScreen emulation + - Mouse emulation + - LEDs + Keyboard to System: - 01-60: Key make codes - 70-7f: Mouse codes @@ -308,6 +313,11 @@ void apricot_keyboard_hle_device::received_byte(uint8_t byte) break; + case CMD_KEYBOARD_RESET: + logerror("System requests keyboard reset\n"); + transmit_byte(ACK_DIAGNOSTICS); + break; + default: logerror("Unhandled command: %02x\n", byte); } diff --git a/src/devices/bus/apricot/keyboard/hle.h b/src/devices/bus/apricot/keyboard/hle.h index e1cef569472..cc8369d19d0 100644 --- a/src/devices/bus/apricot/keyboard/hle.h +++ b/src/devices/bus/apricot/keyboard/hle.h @@ -57,7 +57,12 @@ private: enum { CMD_REQ_TIME_AND_DATE = 0xe1, - CMD_SET_TIME_AND_DATE = 0xe4 + CMD_SET_TIME_AND_DATE = 0xe4, + CMD_KEYBOARD_RESET = 0xe8 + }; + + enum { + ACK_DIAGNOSTICS = 0xfb }; int m_rtc_index; |