summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/i86/i286.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/cpu/i86/i286.h')
-rw-r--r--src/devices/cpu/i86/i286.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/devices/cpu/i86/i286.h b/src/devices/cpu/i86/i286.h
index 8136b0128ce..dbf5e245673 100644
--- a/src/devices/cpu/i86/i286.h
+++ b/src/devices/cpu/i86/i286.h
@@ -72,8 +72,8 @@ public:
virtual space_config_vector memory_space_config() const override;
typedef delegate<uint32_t (bool)> a20_cb;
- static void static_set_a20_callback(device_t &device, a20_cb object) { downcast<i80286_cpu_device &>(device).m_a20_callback = object; }
- template <class Object> static devcb_base &static_set_shutdown_callback(device_t &device, Object &&cb) { return downcast<i80286_cpu_device &>(device).m_out_shutdown_func.set_callback(std::forward<Object>(cb)); }
+ template <typename Object> void set_a20_callback(Object &&cb) { m_a20_callback = std::forward<Object>(cb); }
+ template <class Object> devcb_base &set_shutdown_callback(Object &&cb) { return m_out_shutdown_func.set_callback(std::forward<Object>(cb)); }
protected:
virtual void execute_run() override;
@@ -162,9 +162,9 @@ private:
};
#define MCFG_80286_A20(_class, _a20_cb) \
- i80286_cpu_device::static_set_a20_callback(*device, i80286_cpu_device::a20_cb(&_class::_a20_cb, this));
+ downcast<i80286_cpu_device &>(*device).set_a20_callback(i80286_cpu_device::a20_cb(&_class::_a20_cb, this));
#define MCFG_80286_SHUTDOWN(_devcb) \
- devcb = &i80286_cpu_device::static_set_shutdown_callback(*device, DEVCB_##_devcb);
+ devcb = &downcast<i80286_cpu_device &>(*device).set_shutdown_callback(DEVCB_##_devcb);
#endif // MAME_CPU_I86_I286_H