summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/bus/z88/z88.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/bus/z88/z88.h')
-rw-r--r--src/devices/bus/z88/z88.h28
1 files changed, 17 insertions, 11 deletions
diff --git a/src/devices/bus/z88/z88.h b/src/devices/bus/z88/z88.h
index cd7a8ce3808..477b98eca7c 100644
--- a/src/devices/bus/z88/z88.h
+++ b/src/devices/bus/z88/z88.h
@@ -51,8 +51,10 @@
*********************************************************************/
-#ifndef __Z88CART_H__
-#define __Z88CART_H__
+#ifndef MAME_BUS_Z88_Z88_H
+#define MAME_BUS_Z88_Z88_H
+
+#pragma once
#include "softlist_dev.h"
@@ -67,7 +69,6 @@ class device_z88cart_interface : public device_slot_card_interface
{
public:
// construction/destruction
- device_z88cart_interface(const machine_config &mconfig, device_t &device);
virtual ~device_z88cart_interface();
// reading and writing
@@ -75,6 +76,9 @@ public:
virtual DECLARE_WRITE8_MEMBER(write) { }
virtual uint8_t* get_cart_base() { return nullptr; }
virtual uint32_t get_cart_size() { return 0; }
+
+protected:
+ device_z88cart_interface(const machine_config &mconfig, device_t &device);
};
@@ -89,11 +93,7 @@ public:
z88cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
virtual ~z88cart_slot_device();
- template<class _Object> static devcb_base &set_out_flp_callback(device_t &device, _Object object) { return downcast<z88cart_slot_device &>(device).m_out_flp_cb.set_callback(object); }
-
- // device-level overrides
- virtual void device_start() override;
- virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+ template <class Object> static devcb_base &set_out_flp_callback(device_t &device, Object &&cb) { return downcast<z88cart_slot_device &>(device).m_out_flp_cb.set_callback(std::forward<Object>(cb)); }
// image-level overrides
virtual image_init_result call_load() override;
@@ -116,8 +116,14 @@ public:
virtual DECLARE_READ8_MEMBER(read);
virtual DECLARE_WRITE8_MEMBER(write);
virtual uint8_t* get_cart_base();
+
+protected:
+ // device-level overrides
+ virtual void device_start() override;
+ virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
+
private:
- static const device_timer_id TIMER_FLP_CLEAR = 0;
+ static constexpr device_timer_id TIMER_FLP_CLEAR = 0;
devcb_write_line m_out_flp_cb;
device_z88cart_interface* m_cart;
@@ -126,7 +132,7 @@ private:
// device type definition
-extern const device_type Z88CART_SLOT;
+DECLARE_DEVICE_TYPE(Z88CART_SLOT, z88cart_slot_device)
/***************************************************************************
@@ -136,4 +142,4 @@ extern const device_type Z88CART_SLOT;
#define MCFG_Z88CART_SLOT_OUT_FLP_CB(_devcb) \
devcb = &z88cart_slot_device::set_out_flp_callback(*device, DEVCB_##_devcb);
-#endif /* __Z88CART_H__ */
+#endif // MAME_BUS_Z88_Z88_H