diff options
author | 2013-12-22 16:27:05 +0000 | |
---|---|---|
committer | 2013-12-22 16:27:05 +0000 | |
commit | 6c3f17c5956faefd2f1dc026468db2da03eee2bc (patch) | |
tree | 275f9cacd98df9821ae9e0e2a2ff4d155a4df358 /src/mess/drivers/alphatro.c | |
parent | b4c7b67ff9a1b12dd414502864cee66628b3bd19 (diff) |
replaced read rx/cts/dcd callbacks in I8251 with write handlers, which allows multiple chips to be connected together without using glue methods. [smf]
Diffstat (limited to 'src/mess/drivers/alphatro.c')
-rw-r--r-- | src/mess/drivers/alphatro.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/src/mess/drivers/alphatro.c b/src/mess/drivers/alphatro.c index 296d87a5458..cfbdfe3ae72 100644 --- a/src/mess/drivers/alphatro.c +++ b/src/mess/drivers/alphatro.c @@ -67,7 +67,6 @@ public: DECLARE_READ8_MEMBER(port10_r); DECLARE_WRITE8_MEMBER(port10_w); DECLARE_INPUT_CHANGED_MEMBER(alphatro_break); - DECLARE_READ_LINE_MEMBER(rxdata_callback); DECLARE_WRITE_LINE_MEMBER(txdata_callback); TIMER_DEVICE_CALLBACK_MEMBER(alphatro_c); TIMER_DEVICE_CALLBACK_MEMBER(alphatro_p); @@ -140,11 +139,6 @@ void alphatro_state::device_timer(emu_timer &timer, device_timer_id id, int para } } -READ_LINE_MEMBER( alphatro_state::rxdata_callback ) -{ - return (bool)m_cass_data[2]; -} - WRITE_LINE_MEMBER( alphatro_state::txdata_callback ) { m_cass_state = state; @@ -379,7 +373,7 @@ void alphatro_state::machine_reset() m_cass_state = 1; m_cass_data[0] = 0; m_cass_data[1] = 0; - m_cass_data[2] = 0; + m_usart->write_rx(0); m_cass_data[3] = 0; m_beep->set_state(0); m_beep->set_frequency(950); /* piezo-device needs to be measured */ @@ -417,14 +411,11 @@ static MC6845_INTERFACE( alphatro_crtc6845_interface ) static const i8251_interface alphatro_usart_interface = { - DEVCB_DRIVER_LINE_MEMBER(alphatro_state,rxdata_callback), //rxd_cb DEVCB_DRIVER_LINE_MEMBER(alphatro_state,txdata_callback), //txd_cb DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, - DEVCB_NULL, - DEVCB_NULL, DEVCB_NULL }; @@ -447,7 +438,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(alphatro_state::alphatro_p) if (cass_ws != m_cass_data[0]) { m_cass_data[0] = cass_ws; - m_cass_data[2] = ((m_cass_data[1] < 12) ? 1 : 0); + m_usart->write_rx((m_cass_data[1] < 12) ? 1 : 0); m_cass_data[1] = 0; } } |