diff options
Diffstat (limited to 'src/emu/dipty.h')
-rw-r--r-- | src/emu/dipty.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/emu/dipty.h b/src/emu/dipty.h new file mode 100644 index 00000000000..cbb4a9cb725 --- /dev/null +++ b/src/emu/dipty.h @@ -0,0 +1,46 @@ +// license:BSD-3-Clause +// copyright-holders:F.Ulivi +/*************************************************************************** + + dipty.h + + Device PTY interface + +***************************************************************************/ + +#pragma once + +#ifndef __EMU_H__ +#error Dont include this file directly; include emu.h instead. +#endif + +#ifndef __DIPTY_H__ +#define __DIPTY_H__ + +class device_pty_interface : public device_interface +{ +public: + // construction/destruction + device_pty_interface(const machine_config &mconfig, device_t &device); + virtual ~device_pty_interface(); + + bool open(void); + void close(void); + + ssize_t read(UINT8 *rx_chars , size_t count); + void write(UINT8 tx_char); + + bool is_slave_connected(void) const; + + const char *slave_name(void) const; + +protected: + osd_file *m_pty_master; + std::string m_slave_name; + bool m_opened; +}; + +// iterator +typedef device_interface_iterator<device_pty_interface> pty_interface_iterator; + +#endif /* __DIPTY_H__ */ |