diff options
author | 2020-01-31 20:05:02 +1100 | |
---|---|---|
committer | 2020-01-31 20:05:02 +1100 | |
commit | bddfe1030c9a0847ebb74a8c253844624692413c (patch) | |
tree | 22656a0010dc0d5dd67abb8eb2eae456c22d54d7 /src/devices/machine/mc6854.h | |
parent | 7d5c59f6e507c3ee855014cbbf9a2e6f212057fd (diff) |
Revert "Alfaskop improvements"
Diffstat (limited to 'src/devices/machine/mc6854.h')
-rw-r--r-- | src/devices/machine/mc6854.h | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/src/devices/machine/mc6854.h b/src/devices/machine/mc6854.h index 2e2fe6fa663..defd3aa76c1 100644 --- a/src/devices/machine/mc6854.h +++ b/src/devices/machine/mc6854.h @@ -23,19 +23,16 @@ public: mc6854_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0); - auto out_irq_cb() { return m_out_irq_cb.bind(); } - auto out_rdsr_cb() { return m_out_rdsr_cb.bind(); } - auto out_tdsr_cb() { return m_out_tdsr_cb.bind(); } - auto out_txd_cb() { return m_out_txd_cb.bind(); } - auto out_rts_cb() { return m_out_rts_cb.bind(); } - auto out_dtr_cb() { return m_out_dtr_cb.bind(); } + auto out_irq_cb() { return m_out_irq_cb.bind(); } + auto out_txd_cb() { return m_out_txd_cb.bind(); } + auto out_rts_cb() { return m_out_rts_cb.bind(); } + auto out_dtr_cb() { return m_out_dtr_cb.bind(); } template <typename... T> void set_out_frame_callback(T &&... args) { m_out_frame_cb.set(std::forward<T>(args)...); } /* interface to CPU via address/data bus*/ uint8_t read(offs_t offset); void write(offs_t offset, uint8_t data); - uint8_t dma_r(){ return read(2); } /* low-level, bit-based interface */ DECLARE_WRITE_LINE_MEMBER( set_rx ); @@ -55,15 +52,12 @@ protected: // device-level overrides virtual void device_start() override; virtual void device_reset() override; - bool receive_allowed() const; private: static constexpr unsigned FIFO_SIZE = 3; // hardcoded size of the 6854 FIFO (this is a hardware limit) // internal state devcb_write_line m_out_irq_cb; /* interrupt request */ - devcb_write_line m_out_rdsr_cb; /* Rx fifo DMA request */ - devcb_write_line m_out_tdsr_cb; /* Tx fifo DMA request */ /* low-level, bit-based interface */ devcb_write_line m_out_txd_cb; /* transmit bit */ @@ -93,8 +87,6 @@ private: uint8_t m_rones; /* count '1 bits */ uint8_t m_rsize; /* bits in the shift register */ uint16_t m_rfifo[FIFO_SIZE]; /* X x 8-bit FIFO + full & addr marker bits */ - bool m_rxd; - bool m_rxc; /* frame-based interface*/ uint8_t m_frame[MAX_FRAME_LENGTH]; @@ -140,7 +132,6 @@ DECLARE_DEVICE_TYPE(MC6854, mc6854_device) The frame-based interface is higher-level and faster. It passes bytes directly from one end to the other without bothering with the actual bit-encoding, synchronization, and CRC. - Once completed, a frame is sent through out_frame. Aborted frames are not transmitted at all. No start flag, stop flag, or crc bits are transmitted. send_frame makes a frame available to the CPU through the 6854 (it may |