diff options
Diffstat (limited to 'src/devices/bus/ti99/internal/998board.cpp')
-rw-r--r-- | src/devices/bus/ti99/internal/998board.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/devices/bus/ti99/internal/998board.cpp b/src/devices/bus/ti99/internal/998board.cpp index 77c8470a85e..0199742329a 100644 --- a/src/devices/bus/ti99/internal/998board.cpp +++ b/src/devices/bus/ti99/internal/998board.cpp @@ -2669,12 +2669,10 @@ void oso_device::update_hexbus() // Check how the bus has changed. This depends on the states of all // connected peripherals - uint8_t value1 = hexbus_read(); - // if (value1 != value) LOGMASKED(LOG_OSO, "actually: %02x (BAV*=%d, HSK*=%d, data=%01x)\n", value1, (value1 & 0x04)? 1:0, (value1 & 0x10)? 1:0, ((value1>>4)&0x0c) | (value1&0x03)); // Update the state of BAV and HSK - m_bav = ((value1 & bus::hexbus::HEXBUS_LINE_BAV)==0); - m_hsk = ((value1 & bus::hexbus::HEXBUS_LINE_HSK)==0); + m_bav = (bus_bav_level()==ASSERT_LINE); + m_hsk = (bus_hsk_level()==ASSERT_LINE); // Sometimes, Oso does not have a chance to advance its state after the // last byte was read. In that case, a change of rdsetin would not be @@ -2682,7 +2680,7 @@ void oso_device::update_hexbus() // has happened. if (m_hsk==false) m_rdsetold = false; - m_oldvalue = value1; + m_oldvalue = m_current_bus_value; } /* @@ -2691,8 +2689,8 @@ void oso_device::update_hexbus() void oso_device::hexbus_value_changed(uint8_t data) { // LOGMASKED(LOG_OSO, "Hexbus value changed to %02x\n", data); - bool bav = (data & bus::hexbus::HEXBUS_LINE_BAV)==0; - bool hsk = (data & bus::hexbus::HEXBUS_LINE_HSK)==0; + bool bav = (bus_bav_level()==ASSERT_LINE); + bool hsk = (bus_hsk_level()==ASSERT_LINE); if ((bav != m_bav) || (hsk != m_hsk)) { @@ -2700,7 +2698,7 @@ void oso_device::hexbus_value_changed(uint8_t data) m_hsk = hsk; LOGMASKED(LOG_HEXBUS, "BAV*=%d, HSK*=%d\n", m_bav? 0:1, m_hsk? 0:1); - int nibble = ((data & bus::hexbus::HEXBUS_LINE_BIT32)>>4) | (data & bus::hexbus::HEXBUS_LINE_BIT10); + int nibble = data_lines(data); // The real devices are driven at a similar clock rate like the 99/8. // The designers assumed that there is a clock tick of Oso between |