summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/rs232/ie15.h
diff options
context:
space:
mode:
author Sergey Svishchev <shattered@users.noreply.github.com>2017-02-26 03:08:23 +0300
committer Sergey Svishchev <shattered@users.noreply.github.com>2017-02-27 00:16:35 +0300
commit0b4832bdf3f7e521675bd89a5141c9d1eed5b557 (patch)
tree37f2b9702df2a1ad67b78c995f0b84b708657ce8 /src/devices/bus/rs232/ie15.h
parent4b9648e7cd7cae926c4b088b8a5840cd1364ec1c (diff)
ie15: convert to a device with frontends (standalone driver and rs232 slot device)
Diffstat (limited to 'src/devices/bus/rs232/ie15.h')
-rw-r--r--src/devices/bus/rs232/ie15.h42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/devices/bus/rs232/ie15.h b/src/devices/bus/rs232/ie15.h
new file mode 100644
index 00000000000..281a842b634
--- /dev/null
+++ b/src/devices/bus/rs232/ie15.h
@@ -0,0 +1,42 @@
+// license:BSD-3-Clause
+// copyright-holders:Sergey Svishchev
+
+#ifndef MAME_BUS_RS232_IE15_H
+#define MAME_BUS_RS232_IE15_H
+
+#include "rs232.h"
+#include "machine/ie15.h"
+
+
+class ie15_terminal_device : public ie15_device,
+ public device_rs232_port_interface
+{
+public:
+ ie15_terminal_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
+
+ virtual DECLARE_WRITE_LINE_MEMBER( input_txd ) override { ie15_device::serial_rx_callback(state); }
+
+ DECLARE_WRITE_LINE_MEMBER(update_serial);
+
+protected:
+ virtual ioport_constructor device_input_ports() const override;
+ virtual void device_start() override;
+ virtual void device_reset() override;
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
+ virtual void tra_callback() override;
+ virtual void tra_complete() override;
+ virtual void rcv_complete() override;
+
+private:
+ required_ioport m_rs232_txbaud;
+ required_ioport m_rs232_rxbaud;
+ required_ioport m_rs232_startbits;
+ required_ioport m_rs232_databits;
+ required_ioport m_rs232_parity;
+ required_ioport m_rs232_stopbits;
+};
+
+extern const device_type SERIAL_TERMINAL_IE15;
+
+#endif // MAME_BUS_RS232_IE15_H