diff options
Diffstat (limited to 'src/devices/machine/6525tpi.h')
-rw-r--r-- | src/devices/machine/6525tpi.h | 31 |
1 files changed, 16 insertions, 15 deletions
diff --git a/src/devices/machine/6525tpi.h b/src/devices/machine/6525tpi.h index ed927d2e11a..1164e3b31d5 100644 --- a/src/devices/machine/6525tpi.h +++ b/src/devices/machine/6525tpi.h @@ -28,8 +28,10 @@ * ****************************************************************************/ -#ifndef __TPI6525_H__ -#define __TPI6525_H__ +#ifndef MAME_MACHINE_6525TPI_H +#define MAME_MACHINE_6525TPI_H + +#pragma once /*************************************************************************** @@ -40,17 +42,16 @@ class tpi6525_device : public device_t { public: tpi6525_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); - ~tpi6525_device() {} - - template<class _Object> static devcb_base &set_out_irq_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_out_irq_cb.set_callback(object); } - template<class _Object> static devcb_base &set_in_pa_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_in_pa_cb.set_callback(object); } - template<class _Object> static devcb_base &set_out_pa_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_out_pa_cb.set_callback(object); } - template<class _Object> static devcb_base &set_in_pb_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_in_pb_cb.set_callback(object); } - template<class _Object> static devcb_base &set_out_pb_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_out_pb_cb.set_callback(object); } - template<class _Object> static devcb_base &set_in_pc_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_in_pc_cb.set_callback(object); } - template<class _Object> static devcb_base &set_out_pc_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_out_pc_cb.set_callback(object); } - template<class _Object> static devcb_base &set_out_ca_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_out_ca_cb.set_callback(object); } - template<class _Object> static devcb_base &set_out_cb_callback(device_t &device, _Object object) { return downcast<tpi6525_device &>(device).m_out_cb_cb.set_callback(object); } + + template <class Object> static devcb_base &set_out_irq_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_out_irq_cb.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_in_pa_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_in_pa_cb.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_out_pa_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_out_pa_cb.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_in_pb_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_in_pb_cb.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_out_pb_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_out_pb_cb.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_in_pc_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_in_pc_cb.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_out_pc_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_out_pc_cb.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_out_ca_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_out_ca_cb.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_out_cb_callback(device_t &device, Object &&cb) { return downcast<tpi6525_device &>(device).m_out_cb_cb.set_callback(std::forward<Object>(cb)); } DECLARE_READ8_MEMBER( read ); DECLARE_WRITE8_MEMBER( write ); @@ -120,7 +121,7 @@ private: static void port_line_w(uint8_t &port, int line, int state); }; -extern const device_type TPI6525; +DECLARE_DEVICE_TYPE(TPI6525, tpi6525_device) #define MCFG_TPI6525_OUT_IRQ_CB(_devcb) \ @@ -151,4 +152,4 @@ extern const device_type TPI6525; devcb = &tpi6525_device::set_out_cb_callback(*device, DEVCB_##_devcb); -#endif /* __TPI6525_H__ */ +#endif // MAME_MACHINE_6525TPI_H |