diff options
Diffstat (limited to 'src/mame/machine/k573cass.h')
-rw-r--r-- | src/mame/machine/k573cass.h | 46 |
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; |