diff options
Diffstat (limited to 'src/devices/machine/6850acia.h')
-rw-r--r-- | src/devices/machine/6850acia.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/devices/machine/6850acia.h b/src/devices/machine/6850acia.h index 1dc975911d8..4d4086fd4af 100644 --- a/src/devices/machine/6850acia.h +++ b/src/devices/machine/6850acia.h @@ -15,13 +15,13 @@ #define MCFG_ACIA6850_TXD_HANDLER(_devcb) \ - devcb = &downcast<acia6850_device &>(*device).set_txd_handler(DEVCB_##_devcb); + downcast<acia6850_device &>(*device).set_txd_handler(DEVCB_##_devcb); #define MCFG_ACIA6850_RTS_HANDLER(_devcb) \ - devcb = &downcast<acia6850_device &>(*device).set_rts_handler(DEVCB_##_devcb); + downcast<acia6850_device &>(*device).set_rts_handler(DEVCB_##_devcb); #define MCFG_ACIA6850_IRQ_HANDLER(_devcb) \ - devcb = &downcast<acia6850_device &>(*device).set_irq_handler(DEVCB_##_devcb); + downcast<acia6850_device &>(*device).set_irq_handler(DEVCB_##_devcb); class acia6850_device : public device_t { @@ -33,6 +33,9 @@ public: template <class Object> devcb_base &set_txd_handler(Object &&cb) { return m_txd_handler.set_callback(std::forward<Object>(cb)); } template <class Object> devcb_base &set_rts_handler(Object &&cb) { return m_rts_handler.set_callback(std::forward<Object>(cb)); } template <class Object> devcb_base &set_irq_handler(Object &&cb) { return m_irq_handler.set_callback(std::forward<Object>(cb)); } + auto txd_handler() { return m_txd_handler.bind(); } + auto rts_handler() { return m_rts_handler.bind(); } + auto irq_handler() { return m_irq_handler.bind(); } DECLARE_WRITE8_MEMBER( control_w ); DECLARE_READ8_MEMBER( status_r ); |