summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/machine/k573cass.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/machine/k573cass.h')
-rw-r--r--src/mame/machine/k573cass.h46
1 files changed, 9 insertions, 37 deletions
diff --git a/src/mame/machine/k573cass.h b/src/mame/machine/k573cass.h
index 0481b5c02fd..30423d5464f 100644
--- a/src/mame/machine/k573cass.h
+++ b/src/mame/machine/k573cass.h
@@ -16,9 +16,6 @@
#include "machine/x76f100.h"
#include "machine/zs01.h"
-#define MCFG_KONAMI573_CASSETTE_DSR_HANDLER(_devcb) \
- downcast<konami573_cassette_slot_device &>(*device).set_dsr_handler(DEVCB_##_devcb);
-
DECLARE_DEVICE_TYPE(KONAMI573_CASSETTE_SLOT, konami573_cassette_slot_device)
@@ -32,7 +29,7 @@ class konami573_cassette_slot_device : public device_t,
public:
konami573_cassette_slot_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
- template <class Object> devcb_base &set_dsr_handler(Object &&cb) { return m_dsr_handler.set_callback(std::forward<Object>(cb)); }
+ auto dsr_handler() { return m_dsr_handler.bind(); }
DECLARE_WRITE_LINE_MEMBER(write_line_d0);
DECLARE_WRITE_LINE_MEMBER(write_line_d1);
@@ -140,31 +137,6 @@ private:
DECLARE_DEVICE_TYPE(KONAMI573_CASSETTE_Y, konami573_cassette_y_device)
-
-#define MCFG_KONAMI573_CASSETTE_Y_D0_HANDLER(_devcb) \
- downcast<konami573_cassette_y_device &>(*device).set_d0_handler(DEVCB_##_devcb);
-
-#define MCFG_KONAMI573_CASSETTE_Y_D1_HANDLER(_devcb) \
- downcast<konami573_cassette_y_device &>(*device).set_d1_handler(DEVCB_##_devcb);
-
-#define MCFG_KONAMI573_CASSETTE_Y_D2_HANDLER(_devcb) \
- downcast<konami573_cassette_y_device &>(*device).set_d2_handler(DEVCB_##_devcb);
-
-#define MCFG_KONAMI573_CASSETTE_Y_D3_HANDLER(_devcb) \
- downcast<konami573_cassette_y_device &>(*device).set_d3_handler(DEVCB_##_devcb);
-
-#define MCFG_KONAMI573_CASSETTE_Y_D4_HANDLER(_devcb) \
- downcast<konami573_cassette_y_device &>(*device).set_d4_handler(DEVCB_##_devcb);
-
-#define MCFG_KONAMI573_CASSETTE_Y_D5_HANDLER(_devcb) \
- downcast<konami573_cassette_y_device &>(*device).set_d5_handler(DEVCB_##_devcb);
-
-#define MCFG_KONAMI573_CASSETTE_Y_D6_HANDLER(_devcb) \
- downcast<konami573_cassette_y_device &>(*device).set_d6_handler(DEVCB_##_devcb);
-
-#define MCFG_KONAMI573_CASSETTE_Y_D7_HANDLER(_devcb) \
- downcast<konami573_cassette_y_device &>(*device).set_d7_handler(DEVCB_##_devcb);
-
class konami573_cassette_y_device: public device_t,
public konami573_cassette_interface
{
@@ -172,14 +144,14 @@ public:
konami573_cassette_y_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// configuration helpers
- template <class Object> devcb_base &set_d0_handler(Object &&cb) { return m_d0_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_d1_handler(Object &&cb) { return m_d1_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_d2_handler(Object &&cb) { return m_d2_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_d3_handler(Object &&cb) { return m_d3_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_d4_handler(Object &&cb) { return m_d4_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_d5_handler(Object &&cb) { return m_d5_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_d6_handler(Object &&cb) { return m_d6_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_d7_handler(Object &&cb) { return m_d7_handler.set_callback(std::forward<Object>(cb)); }
+ auto d0_handler() { return m_d0_handler.bind(); }
+ auto d1_handler() { return m_d1_handler.bind(); }
+ auto d2_handler() { return m_d2_handler.bind(); }
+ auto d3_handler() { return m_d3_handler.bind(); }
+ auto d4_handler() { return m_d4_handler.bind(); }
+ auto d5_handler() { return m_d5_handler.bind(); }
+ auto d6_handler() { return m_d6_handler.bind(); }
+ auto d7_handler() { return m_d7_handler.bind(); }
virtual DECLARE_READ_LINE_MEMBER(read_line_secflash_sda) override;
virtual DECLARE_WRITE_LINE_MEMBER(write_line_d0) override;