diff options
Diffstat (limited to 'src/mame/drivers/ptcsol.cpp')
-rw-r--r-- | src/mame/drivers/ptcsol.cpp | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/src/mame/drivers/ptcsol.cpp b/src/mame/drivers/ptcsol.cpp index 750a85a6842..381e6361a31 100644 --- a/src/mame/drivers/ptcsol.cpp +++ b/src/mame/drivers/ptcsol.cpp @@ -121,7 +121,6 @@ //#include "bus/s100/s100.h" #include "imagedev/cassette.h" #include "machine/ay31015.h" -#include "machine/clock.h" #include "machine/keyboard.h" #include "sound/spkrdev.h" #include "sound/wave.h" @@ -158,8 +157,6 @@ public: , m_cass2(*this, "cassette2") , m_uart(*this, "uart") , m_uart_s(*this, "uart_s") - , m_uart_clock(*this, "uart_clock") - , m_uart_s_clock(*this, "uart_s_clock") , m_rs232(*this, "rs232") , m_p_videoram(*this, "videoram") , m_p_chargen(*this, "chargen") @@ -214,8 +211,6 @@ private: required_device<cassette_image_device> m_cass2; required_device<ay31015_device> m_uart; required_device<ay31015_device> m_uart_s; - required_device<clock_device> m_uart_clock; - required_device<clock_device> m_uart_s_clock; required_device<rs232_port_device> m_rs232; required_shared_ptr<uint8_t> m_p_videoram; required_region_ptr<u8> m_p_chargen; @@ -425,7 +420,8 @@ WRITE8_MEMBER( sol20_state::sol20_fa_w ) m_cassette_timer->adjust(attotime::zero); // bit 5 baud rate */ - m_uart_clock->set_unscaled_clock(BIT(data, 5) ? 4800 : 19200); + m_uart->set_receiver_clock((BIT(data, 5)) ? 4800.0 : 19200.0); + m_uart->set_transmitter_clock((BIT(data, 5)) ? 4800.0 : 19200.0); } WRITE8_MEMBER( sol20_state::sol20_fd_w ) @@ -617,7 +613,8 @@ void sol20_state::machine_reset() s_clock = s_bauds[s_count] << 4; // these lines could be commented out for now if you want better performance - m_uart_s_clock->set_unscaled_clock(s_clock); + m_uart_s->set_receiver_clock(s_clock); + m_uart_s->set_transmitter_clock(s_clock); // boot-bank membank("boot")->set_entry(1); @@ -772,23 +769,19 @@ void sol20_state::sol20(machine_config &config) m_cass2->set_interface("sol20_cass"); AY51013(config, m_uart); // TMS6011NC + m_uart->set_tx_clock(4800.0); + m_uart->set_rx_clock(4800.0); m_uart->set_auto_rdav(true); // ROD (pin 4) tied to RDD (pin 18) - CLOCK(config, m_uart_clock, 4800); - m_uart_clock->signal_handler().set(m_uart, FUNC(ay51013_device::write_rcp)); - m_uart_clock->signal_handler().append(m_uart, FUNC(ay51013_device::write_tcp)); - RS232_PORT(config, m_rs232, default_rs232_devices, nullptr); AY51013(config, m_uart_s); // TMS6011NC m_uart_s->read_si_callback().set(m_rs232, FUNC(rs232_port_device::rxd_r)); m_uart_s->write_so_callback().set(m_rs232, FUNC(rs232_port_device::write_txd)); + m_uart_s->set_tx_clock(4800.0); + m_uart_s->set_rx_clock(4800.0); m_uart_s->set_auto_rdav(true); // ROD (pin 4) tied to RDD (pin 18) - CLOCK(config, m_uart_s_clock, 4800); - m_uart_s_clock->signal_handler().set(m_uart_s, FUNC(ay51013_device::write_rcp)); - m_uart_s_clock->signal_handler().append(m_uart_s, FUNC(ay51013_device::write_tcp)); - generic_keyboard_device &keyboard(GENERIC_KEYBOARD(config, "keyboard", 0)); keyboard.set_keyboard_callback(FUNC(sol20_state::kbd_put)); |