summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices
diff options
context:
space:
mode:
author Michael Zapf <github@mizapf.de>2020-03-21 15:21:11 +0100
committer Michael Zapf <github@mizapf.de>2020-03-21 15:23:29 +0100
commit735cffaa9837864e5340be4f0cb60e0ea8886e2e (patch)
treee9326b277908d6cf5ce58206853dc8bea90826aa /src/devices
parentbdd2a3377699b3cfb69a64a6a1d91020b562f829 (diff)
ti99: Clear datamux latch of stale content, in case that no device responds on the bus.
Diffstat (limited to 'src/devices')
-rw-r--r--src/devices/bus/ti99/internal/datamux.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/devices/bus/ti99/internal/datamux.cpp b/src/devices/bus/ti99/internal/datamux.cpp
index 91265ab6d5c..1a4f90d17a0 100644
--- a/src/devices/bus/ti99/internal/datamux.cpp
+++ b/src/devices/bus/ti99/internal/datamux.cpp
@@ -372,7 +372,7 @@ uint16_t datamux_device::read(offs_t offset)
// Reading the even address now (addr)
uint8_t hbyte = 0;
read_all(m_addr_buf, &hbyte);
- LOGMASKED(LOG_ACCESS, "Read even byte from address %04x -> %02x\n", m_addr_buf, hbyte);
+ LOGMASKED(LOG_ACCESS, "%04x -> %02x\n", m_addr_buf, hbyte);
value = (hbyte<<8) | m_latch;
}
@@ -500,9 +500,11 @@ WRITE_LINE_MEMBER( datamux_device::clock_in )
}
if (m_waitcount==2)
{
+ // Clear the latch (if no device responds on the bus, we assume the data lines as 0)
+ m_latch = 0;
// read odd byte
read_all(m_addr_buf+1, &m_latch);
- LOGMASKED(LOG_ACCESS, "Read odd byte from address %04x -> %02x\n", m_addr_buf+1, m_latch);
+ LOGMASKED(LOG_ACCESS, "%04x -> %02x\n", m_addr_buf+1, m_latch);
// do the setaddress for the even address
setaddress_all(m_addr_buf);
}