summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Patrick Mackinlay <pmackinlay@hotmail.com>2020-04-01 16:46:19 +0700
committer Patrick Mackinlay <pmackinlay@hotmail.com>2020-04-01 16:46:19 +0700
commitc7d2ed4337f68e0befd38b46356d1303c3dd32b8 (patch)
tree6e7b562d13ebaec115495a95376ac792817e1e33
parentc6bf068434d55765fdd703822570b0ecd910a932 (diff)
cxd1185: faster (nw)
* don't always delay for the whole selection timeout
-rw-r--r--src/devices/machine/cxd1185.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/devices/machine/cxd1185.cpp b/src/devices/machine/cxd1185.cpp
index 03510efd5b5..369053aa69d 100644
--- a/src/devices/machine/cxd1185.cpp
+++ b/src/devices/machine/cxd1185.cpp
@@ -768,8 +768,14 @@ void cxd1185_device::scsi_ctrl_changed()
}
else if ((m_status & (TARG | INIT)) == INIT)
{
+ if ((ctrl & S_SEL) && !(m_scsi_ctrl_state & S_BSY) && (ctrl & S_BSY))
+ {
+ LOGMASKED(LOG_SCSI, "target selected\n");
- if ((m_scsi_ctrl_state & S_BSY) && !(ctrl & S_BSY))
+ // truncate selection delay
+ m_state_timer->adjust(attotime::zero);
+ }
+ else if ((m_scsi_ctrl_state & S_BSY) && !(ctrl & S_BSY))
{
LOGMASKED(LOG_SCSI, "target disconnected\n");