diff options
Diffstat (limited to 'src/devices/machine/z80ctc.h')
-rw-r--r-- | src/devices/machine/z80ctc.h | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/devices/machine/z80ctc.h b/src/devices/machine/z80ctc.h index 158028c9e9f..ce07fd9cf61 100644 --- a/src/devices/machine/z80ctc.h +++ b/src/devices/machine/z80ctc.h @@ -36,20 +36,20 @@ //************************************************************************** #define MCFG_Z80CTC_INTR_CB(_devcb) \ - devcb = &downcast<z80ctc_device &>(*device).set_intr_callback(DEVCB_##_devcb); + downcast<z80ctc_device &>(*device).set_intr_callback(DEVCB_##_devcb); #define MCFG_Z80CTC_ZC0_CB(_devcb) \ - devcb = &downcast<z80ctc_device &>(*device).set_zc_callback<0>(DEVCB_##_devcb); + downcast<z80ctc_device &>(*device).set_zc_callback<0>(DEVCB_##_devcb); #define MCFG_Z80CTC_ZC1_CB(_devcb) \ - devcb = &downcast<z80ctc_device &>(*device).set_zc_callback<1>(DEVCB_##_devcb); + downcast<z80ctc_device &>(*device).set_zc_callback<1>(DEVCB_##_devcb); #define MCFG_Z80CTC_ZC2_CB(_devcb) \ - devcb = &downcast<z80ctc_device &>(*device).set_zc_callback<2>(DEVCB_##_devcb); + downcast<z80ctc_device &>(*device).set_zc_callback<2>(DEVCB_##_devcb); // not supported on a standard ctc, only used for the tmpz84c015 #define MCFG_Z80CTC_ZC3_CB(_devcb) \ - devcb = &downcast<z80ctc_device &>(*device).set_zc_callback<3>(DEVCB_##_devcb); + downcast<z80ctc_device &>(*device).set_zc_callback<3>(DEVCB_##_devcb); //************************************************************************** @@ -105,6 +105,8 @@ public: template <class Object> devcb_base &set_intr_callback(Object &&cb) { return m_intr_cb.set_callback(std::forward<Object>(cb)); } template <int Channel, class Object> devcb_base &set_zc_callback(Object &&cb) { return m_zc_cb[Channel].set_callback(std::forward<Object>(cb)); } + auto intr_callback() { return m_intr_cb.bind(); } + template <int Channel> auto zc_callback() { return m_zc_cb[Channel].bind(); } // read/write handlers DECLARE_READ8_MEMBER( read ); |