diff options
Diffstat (limited to 'src/devices/bus/pc1512/mouse.h')
-rw-r--r-- | src/devices/bus/pc1512/mouse.h | 49 |
1 files changed, 24 insertions, 25 deletions
diff --git a/src/devices/bus/pc1512/mouse.h b/src/devices/bus/pc1512/mouse.h index dd89ae97277..f94984ab979 100644 --- a/src/devices/bus/pc1512/mouse.h +++ b/src/devices/bus/pc1512/mouse.h @@ -18,10 +18,10 @@ **********************************************************************/ -#pragma once +#ifndef MAME_BUS_PC1512_MOUSE_H +#define MAME_BUS_PC1512_MOUSE_H -#ifndef __PC1512_MOUSE_PORT__ -#define __PC1512_MOUSE_PORT__ +#pragma once @@ -37,16 +37,16 @@ MCFG_DEVICE_SLOT_INTERFACE(_slot_intf, _def_slot, false) #define MCFG_PC1512_MOUSE_PORT_X_CB(_write) \ - devcb = &pc1512_mouse_port_t::set_x_wr_callback(*device, DEVCB_##_write); + devcb = &pc1512_mouse_port_device::set_x_wr_callback(*device, DEVCB_##_write); #define MCFG_PC1512_MOUSE_PORT_Y_CB(_write) \ - devcb = &pc1512_mouse_port_t::set_y_wr_callback(*device, DEVCB_##_write); + devcb = &pc1512_mouse_port_device::set_y_wr_callback(*device, DEVCB_##_write); #define MCFG_PC1512_MOUSE_PORT_M1_CB(_write) \ - devcb = &pc1512_mouse_port_t::set_m1_wr_callback(*device, DEVCB_##_write); + devcb = &pc1512_mouse_port_device::set_m1_wr_callback(*device, DEVCB_##_write); #define MCFG_PC1512_MOUSE_PORT_M2_CB(_write) \ - devcb = &pc1512_mouse_port_t::set_m2_wr_callback(*device, DEVCB_##_write); + devcb = &pc1512_mouse_port_device::set_m2_wr_callback(*device, DEVCB_##_write); @@ -54,7 +54,7 @@ // TYPE DEFINITIONS //************************************************************************** -class pc1512_mouse_port_t; +class pc1512_mouse_port_device; // ======================> device_pc1512_mouse_port_interface @@ -63,28 +63,28 @@ class device_pc1512_mouse_port_interface : public device_slot_card_interface { public: // construction/destruction - device_pc1512_mouse_port_interface(const machine_config &mconfig, device_t &device); virtual ~device_pc1512_mouse_port_interface() { } protected: - pc1512_mouse_port_t *m_port; + device_pc1512_mouse_port_interface(const machine_config &mconfig, device_t &device); + + pc1512_mouse_port_device *m_port; }; -// ======================> pc1512_mouse_port_t +// ======================> pc1512_mouse_port_device -class pc1512_mouse_port_t : public device_t, - public device_slot_interface +class pc1512_mouse_port_device : public device_t, public device_slot_interface { public: // construction/destruction - pc1512_mouse_port_t(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pc1512_mouse_port_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // static configuration helpers - template<class _Object> static devcb_base &set_x_wr_callback(device_t &device, _Object object) { return downcast<pc1512_mouse_port_t &>(device).m_write_x.set_callback(object); } - template<class _Object> static devcb_base &set_y_wr_callback(device_t &device, _Object object) { return downcast<pc1512_mouse_port_t &>(device).m_write_y.set_callback(object); } - template<class _Object> static devcb_base &set_m1_wr_callback(device_t &device, _Object object) { return downcast<pc1512_mouse_port_t &>(device).m_write_m1.set_callback(object); } - template<class _Object> static devcb_base &set_m2_wr_callback(device_t &device, _Object object) { return downcast<pc1512_mouse_port_t &>(device).m_write_m2.set_callback(object); } + template <class Object> static devcb_base &set_x_wr_callback(device_t &device, Object &&cb) { return downcast<pc1512_mouse_port_device &>(device).m_write_x.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_y_wr_callback(device_t &device, Object &&cb) { return downcast<pc1512_mouse_port_device &>(device).m_write_y.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_m1_wr_callback(device_t &device, Object &&cb) { return downcast<pc1512_mouse_port_device &>(device).m_write_m1.set_callback(std::forward<Object>(cb)); } + template <class Object> static devcb_base &set_m2_wr_callback(device_t &device, Object &&cb) { return downcast<pc1512_mouse_port_device &>(device).m_write_m2.set_callback(std::forward<Object>(cb)); } // peripheral interface void x_w(uint8_t data) { m_write_x(data); } @@ -105,14 +105,13 @@ protected: }; -// ======================> pc1512_mouse_t +// ======================> pc1512_mouse_device -class pc1512_mouse_t : public device_t, - public device_pc1512_mouse_port_interface +class pc1512_mouse_device : public device_t, public device_pc1512_mouse_port_interface { public: // construction/destruction - pc1512_mouse_t(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); + pc1512_mouse_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock); // optional information overrides virtual ioport_constructor device_input_ports() const override; @@ -129,11 +128,11 @@ protected: // device type definition -extern const device_type PC1512_MOUSE_PORT; -extern const device_type PC1512_MOUSE; +DECLARE_DEVICE_TYPE(PC1512_MOUSE_PORT, pc1512_mouse_port_device) +DECLARE_DEVICE_TYPE(PC1512_MOUSE, pc1512_mouse_device) // slot devices SLOT_INTERFACE_EXTERN( pc1512_mouse_port_devices ); -#endif +#endif // MAME_BUS_PC1512_MOUSE_H |