diff options
Diffstat (limited to 'src/devices/bus/z88/z88.h')
-rw-r--r-- | src/devices/bus/z88/z88.h | 28 |
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 |