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.h19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/devices/bus/z88/z88.h b/src/devices/bus/z88/z88.h
index 444eeb3c111..de8ecdc883f 100644
--- a/src/devices/bus/z88/z88.h
+++ b/src/devices/bus/z88/z88.h
@@ -90,18 +90,9 @@ class z88cart_slot_device : public device_t,
{
public:
// construction/destruction
- template <typename T>
- z88cart_slot_device(machine_config const &mconfig, char const *tag, device_t *owner, T &&opts, char const *dflt)
- : z88cart_slot_device(mconfig, tag, owner, 0)
- {
- option_reset();
- opts(*this);
- set_default_option(dflt);
- set_fixed(false);
- }
z88cart_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock = 0);
- auto out_flp_callback() { return m_out_flp_cb.bind(); }
+ template <class Object> devcb_base &set_out_flp_callback(Object &&cb) { return m_out_flp_cb.set_callback(std::forward<Object>(cb)); }
// image-level overrides
virtual image_init_result call_load() override;
@@ -142,4 +133,12 @@ private:
// device type definition
DECLARE_DEVICE_TYPE(Z88CART_SLOT, z88cart_slot_device)
+
+/***************************************************************************
+ DEVICE CONFIGURATION MACROS
+***************************************************************************/
+
+#define MCFG_Z88CART_SLOT_OUT_FLP_CB(_devcb) \
+ downcast<z88cart_slot_device &>(*device).set_out_flp_callback(DEVCB_##_devcb);
+
#endif // MAME_BUS_Z88_Z88_H