diff options
author | 2019-10-16 16:47:20 +1100 | |
---|---|---|
committer | 2019-10-16 16:47:20 +1100 | |
commit | de879f69eb93b321eaa5577a2c66de3347332d18 (patch) | |
tree | b8cef2523fed3e46a14a16d46832db81fa2f93f7 /src/devices/bus/ss50/mps2.cpp | |
parent | 151f5fca2555be797ee45ab01bd226d8c71eae0e (diff) |
SWTPC MP-S2: connect up the RS232 control lines
At least some of these are required for operation with terminals. For example
the SWTPC 8212 terminal uses DTR to CTS for hardware flow control, and that is
needed even at 9600 baud.
Diffstat (limited to 'src/devices/bus/ss50/mps2.cpp')
-rw-r--r-- | src/devices/bus/ss50/mps2.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/devices/bus/ss50/mps2.cpp b/src/devices/bus/ss50/mps2.cpp index 7211aea1e3e..30bdd9e5a64 100644 --- a/src/devices/bus/ss50/mps2.cpp +++ b/src/devices/bus/ss50/mps2.cpp @@ -134,20 +134,24 @@ void ss50_mps2_device::device_add_mconfig(machine_config &config) { ACIA6850(config, m_acia_upper, 0); m_acia_upper->txd_handler().set("rs232_upper", FUNC(rs232_port_device::write_txd)); - //m_acia_upper->rts_handler().set(FUNC(ss50_mps2_device::reader_control_w)); + m_acia_upper->rts_handler().set("rs232_upper", FUNC(rs232_port_device::write_rts)); m_acia_upper->irq_handler().set("irq", FUNC(input_merger_device::in_w<0>)); rs232_port_device &rs232_upper(RS232_PORT(config, "rs232_upper", default_rs232_devices, "terminal")); rs232_upper.rxd_handler().set(m_acia_upper, FUNC(acia6850_device::write_rxd)); + rs232_upper.cts_handler().set(m_acia_upper, FUNC(acia6850_device::write_cts)); + rs232_upper.dcd_handler().set(m_acia_upper, FUNC(acia6850_device::write_dcd)); rs232_upper.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal_upper)); ACIA6850(config, m_acia_lower, 0); m_acia_lower->txd_handler().set("rs232_lower", FUNC(rs232_port_device::write_txd)); - //m_acia_lower->rts_handler().set(FUNC(ss50_mps2_device::reader_control_w)); + m_acia_lower->rts_handler().set("rs232_lower", FUNC(rs232_port_device::write_rts)); m_acia_lower->irq_handler().set("irq", FUNC(input_merger_device::in_w<1>)); rs232_port_device &rs232_lower(RS232_PORT(config, "rs232_lower", default_rs232_devices, "terminal")); rs232_lower.rxd_handler().set(m_acia_lower, FUNC(acia6850_device::write_rxd)); + rs232_lower.cts_handler().set(m_acia_lower, FUNC(acia6850_device::write_cts)); + rs232_lower.dcd_handler().set(m_acia_lower, FUNC(acia6850_device::write_dcd)); rs232_lower.set_option_device_input_defaults("terminal", DEVICE_INPUT_DEFAULTS_NAME(terminal_lower)); INPUT_MERGER_ANY_HIGH(config, "irq").output_handler().set(FUNC(ss50_mps2_device::write_irq)); |