summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/pc_kbd
diff options
context:
space:
mode:
author Patrick Mackinlay <pmackinlay@hotmail.com>2019-05-31 19:23:06 +0700
committer Patrick Mackinlay <pmackinlay@hotmail.com>2019-05-31 19:23:06 +0700
commitd944b36ca874be298d62d5bec35fe972c30f3e17 (patch)
tree6b7a65e8925c338a6d652943a17087ce92425c92 /src/devices/bus/pc_kbd
parent9658fd8bbafa5cc4e0b01f994048f93778aa16ef (diff)
hle_mouse: minor fixes (nw)
The Indy/Indigo² issue appears to be related wait states or other unemulated delays on the driver side, and not a problem with this device or at_keybc.
Diffstat (limited to 'src/devices/bus/pc_kbd')
-rw-r--r--src/devices/bus/pc_kbd/hle_mouse.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/devices/bus/pc_kbd/hle_mouse.cpp b/src/devices/bus/pc_kbd/hle_mouse.cpp
index e7de97e61dd..b88f5b40039 100644
--- a/src/devices/bus/pc_kbd/hle_mouse.cpp
+++ b/src/devices/bus/pc_kbd/hle_mouse.cpp
@@ -32,7 +32,6 @@
* - IntelliMouse device/protocol (4-byte packet, 5 buttons, scroll wheel)
* - configurable clock (10kHz-16.7kHz)
* - receive parity error handling
- * - resolve issue with earlier Indy/Indigo² PROM versions (IBF ignored)
*/
#include "emu.h"
@@ -95,6 +94,7 @@ void hle_ps2_mouse_device::device_start()
save_item(NAME(m_rx_buf));
save_item(NAME(m_tx_len));
save_item(NAME(m_tx_pos));
+ save_item(NAME(m_tx_buf));
save_item(NAME(m_data));
save_item(NAME(m_parity));
@@ -399,7 +399,8 @@ void hle_ps2_mouse_device::command(u8 const command)
m_tx_buf[m_tx_len++] = 0xfa;
// force data sample after acknowledge transmitted
- m_sample->adjust(serial_cycle * 48, 1);
+ if (!m_sample->enabled())
+ m_sample->adjust(serial_cycle * 48, 1);
break;
case 0xec: // reset wrap mode