diff options
Diffstat (limited to 'src/devices/machine/ataintf.h')
-rw-r--r-- | src/devices/machine/ataintf.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/src/devices/machine/ataintf.h b/src/devices/machine/ataintf.h index c9626af52db..d68e4d78340 100644 --- a/src/devices/machine/ataintf.h +++ b/src/devices/machine/ataintf.h @@ -47,13 +47,13 @@ DECLARE_DEVICE_TYPE(ATA_SLOT, ata_slot_device) ***************************************************************************/ #define MCFG_ATA_INTERFACE_IRQ_HANDLER(_devcb) \ - devcb = &abstract_ata_interface_device::set_irq_handler(*device, DEVCB_##_devcb); + devcb = &downcast<abstract_ata_interface_device &>(*device).set_irq_handler(DEVCB_##_devcb); #define MCFG_ATA_INTERFACE_DMARQ_HANDLER(_devcb) \ - devcb = &abstract_ata_interface_device::set_dmarq_handler(*device, DEVCB_##_devcb); + devcb = &downcast<abstract_ata_interface_device &>(*device).set_dmarq_handler(DEVCB_##_devcb); #define MCFG_ATA_INTERFACE_DASP_HANDLER(_devcb) \ - devcb = &abstract_ata_interface_device::set_dasp_handler(*device, DEVCB_##_devcb); + devcb = &downcast<abstract_ata_interface_device &>(*device).set_dasp_handler(DEVCB_##_devcb); SLOT_INTERFACE_EXTERN(ata_devices); @@ -79,9 +79,9 @@ class abstract_ata_interface_device : public device_t { public: // static configuration helpers - template <class Object> static devcb_base &set_irq_handler(device_t &device, Object &&cb) { return downcast<abstract_ata_interface_device &>(device).m_irq_handler.set_callback(std::forward<Object>(cb)); } - template <class Object> static devcb_base &set_dmarq_handler(device_t &device, Object &&cb) { return downcast<abstract_ata_interface_device &>(device).m_dmarq_handler.set_callback(std::forward<Object>(cb)); } - template <class Object> static devcb_base &set_dasp_handler(device_t &device, Object &&cb) { return downcast<abstract_ata_interface_device &>(device).m_dasp_handler.set_callback(std::forward<Object>(cb)); } + template <class Object> devcb_base &set_irq_handler(Object &&cb) { return m_irq_handler.set_callback(std::forward<Object>(cb)); } + template <class Object> devcb_base &set_dmarq_handler(Object &&cb) { return m_dmarq_handler.set_callback(std::forward<Object>(cb)); } + template <class Object> devcb_base &set_dasp_handler(Object &&cb) { return m_dasp_handler.set_callback(std::forward<Object>(cb)); } uint16_t read_dma(); void write_dma(uint16_t data); |