summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/x68k/x68kexp.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/x68k/x68kexp.h')
-rw-r--r--src/devices/bus/x68k/x68kexp.h27
1 files changed, 15 insertions, 12 deletions
diff --git a/src/devices/bus/x68k/x68kexp.h b/src/devices/bus/x68k/x68kexp.h
index c1bde3a2306..5b66685fbed 100644
--- a/src/devices/bus/x68k/x68kexp.h
+++ b/src/devices/bus/x68k/x68kexp.h
@@ -61,8 +61,10 @@
*
*/
-#ifndef X68KEXP_H_
-#define X68KEXP_H_
+#ifndef MAME_BUS_X68K_X68KEXP_H
+#define MAME_BUS_X68K_X68KEXP_H
+
+#pragma once
//**************************************************************************
@@ -99,28 +101,29 @@ class device_x68k_expansion_card_interface : public device_slot_card_interface
{
public:
// construction/destruction
- device_x68k_expansion_card_interface(const machine_config &mconfig, device_t &device);
virtual ~device_x68k_expansion_card_interface();
// reset
- virtual void x68k_reset_w() { };
+ virtual void x68k_reset_w() { }
+
+protected:
+ device_x68k_expansion_card_interface(const machine_config &mconfig, device_t &device);
};
// ======================> x68k_expansion_slot_device
-class x68k_expansion_slot_device : public device_t,
- public device_slot_interface
+class x68k_expansion_slot_device : public device_t, public device_slot_interface
{
public:
// construction/destruction
x68k_expansion_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual ~x68k_expansion_slot_device();
- template<class _Object> static devcb_base &set_out_irq2_callback(device_t &device, _Object object) { return downcast<x68k_expansion_slot_device &>(device).m_out_irq2_cb.set_callback(object); }
- template<class _Object> static devcb_base &set_out_irq4_callback(device_t &device, _Object object) { return downcast<x68k_expansion_slot_device &>(device).m_out_irq4_cb.set_callback(object); }
- template<class _Object> static devcb_base &set_out_nmi_callback(device_t &device, _Object object) { return downcast<x68k_expansion_slot_device &>(device).m_out_nmi_cb.set_callback(object); }
- template<class _Object> static devcb_base &set_out_reset_callback(device_t &device, _Object object) { return downcast<x68k_expansion_slot_device &>(device).m_out_reset_cb.set_callback(object); }
+ template <class Object> static devcb_base &set_out_irq2_callback(device_t &device, Object &&cb) { return downcast<x68k_expansion_slot_device &>(device).m_out_irq2_cb.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_out_irq4_callback(device_t &device, Object &&cb) { return downcast<x68k_expansion_slot_device &>(device).m_out_irq4_cb.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_out_nmi_callback(device_t &device, Object &&cb) { return downcast<x68k_expansion_slot_device &>(device).m_out_nmi_cb.set_callback(std::forward<Object>(cb)); }
+ template <class Object> static devcb_base &set_out_reset_callback(device_t &device, Object &&cb) { return downcast<x68k_expansion_slot_device &>(device).m_out_reset_cb.set_callback(std::forward<Object>(cb)); }
DECLARE_WRITE_LINE_MEMBER( irq2_w );
@@ -143,6 +146,6 @@ protected:
// device type definition
-extern const device_type X68K_EXPANSION_SLOT;
+DECLARE_DEVICE_TYPE(X68K_EXPANSION_SLOT, x68k_expansion_slot_device)
-#endif /* X68KEXP_H_ */
+#endif // MAME_BUS_X68K_X68KEXP_H