diff options
Diffstat (limited to 'src/devices/bus/hexbus/tp0370.h')
-rw-r--r-- | src/devices/bus/hexbus/tp0370.h | 21 |
1 files changed, 4 insertions, 17 deletions
diff --git a/src/devices/bus/hexbus/tp0370.h b/src/devices/bus/hexbus/tp0370.h index 5f5c02489c0..385059c7fa3 100644 --- a/src/devices/bus/hexbus/tp0370.h +++ b/src/devices/bus/hexbus/tp0370.h @@ -28,9 +28,10 @@ public: DECLARE_READ8_MEMBER( read ); DECLARE_WRITE8_MEMBER( write ); - template <class Object> static devcb_base &set_ibc_int_callback(device_t &device, Object &&cb) { return downcast<ibc_device &>(device).m_int.set_callback(std::forward<Object>(cb)); } - template <class Object> static devcb_base &set_hexbus_wr_callback(device_t &device, Object &&cb) { return downcast<ibc_device &>(device).m_hexout.set_callback(std::forward<Object>(cb)); } - template <class Object> static devcb_base &set_hsklatch_wr_callback(device_t &device, Object &&cb) { return downcast<ibc_device &>(device).m_latch.set_callback(std::forward<Object>(cb)); } + // Callbacks + auto int_cb() { return m_int.bind(); } + auto hexbus_cb() { return m_hexout.bind(); } + auto hsklatch_cb() { return m_latch.bind(); } // INT line devcb_write_line m_int; @@ -68,19 +69,5 @@ private: } } - -/* - Links to outside -*/ - -#define MCFG_IBC_HEXBUS_OUT_CALLBACK(_write) \ - ibc_device::set_hexbus_wr_callback(*device, DEVCB_##_write); - -#define MCFG_IBC_HSKLATCH_CALLBACK(_write) \ - ibc_device::set_hsklatch_wr_callback(*device, DEVCB_##_write); - -#define MCFG_IBC_INT_CALLBACK(_write) \ - ibc_device::set_ibc_int_callback(*device, DEVCB_##_write); - DECLARE_DEVICE_TYPE_NS(IBC, bus::hexbus, ibc_device) #endif |