summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/74175.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/74175.h')
-rw-r--r--src/devices/machine/74175.h51
1 files changed, 4 insertions, 47 deletions
diff --git a/src/devices/machine/74175.h b/src/devices/machine/74175.h
index f4f1912f085..55e0c0eda42 100644
--- a/src/devices/machine/74175.h
+++ b/src/devices/machine/74175.h
@@ -48,56 +48,13 @@
#pragma once
-#define MCFG_74174_Q1_CB(_devcb) \
- downcast<ttl741745_device &>(*device).set_q1_cb(DEVCB_##_devcb);
-
-#define MCFG_74174_Q2_CB(_devcb) \
- downcast<ttl741745_device &>(*device).set_q2_cb(DEVCB_##_devcb);
-
-#define MCFG_74174_Q3_CB(_devcb) \
- downcast<ttl741745_device &>(*device).set_q3_cb(DEVCB_##_devcb);
-
-#define MCFG_74174_Q4_CB(_devcb) \
- downcast<ttl741745_device &>(*device).set_q4_cb(DEVCB_##_devcb);
-
-#define MCFG_74175_Q1_CB(_devcb) \
- downcast<ttl741745_device &>(*device).set_q1_cb(DEVCB_##_devcb);
-
-#define MCFG_74175_Q2_CB(_devcb) \
- downcast<ttl741745_device &>(*device).set_q2_cb(DEVCB_##_devcb);
-
-#define MCFG_74175_Q3_CB(_devcb) \
- downcast<ttl741745_device &>(*device).set_q3_cb(DEVCB_##_devcb);
-
-#define MCFG_74175_Q4_CB(_devcb) \
- downcast<ttl741745_device &>(*device).set_q4_cb(DEVCB_##_devcb);
-
-#define MCFG_74174_Q5_CB(_devcb) \
- downcast<ttl74174_device &>(*device).set_q5_cb(DEVCB_##_devcb);
-
-#define MCFG_74174_Q6_CB(_devcb) \
- downcast<ttl74174_device &>(*device).set_q6_cb(DEVCB_##_devcb);
-
-#define MCFG_74175_NOT_Q1_CB(_devcb) \
- downcast<ttl74175_device &>(*device).set_not_q1_cb(DEVCB_##_devcb);
-
-#define MCFG_74175_NOT_Q2_CB(_devcb) \
- downcast<ttl74175_device &>(*device).set_not_q2_cb(DEVCB_##_devcb);
-
-#define MCFG_74175_NOT_Q3_CB(_devcb) \
- downcast<ttl74175_device &>(*device).set_not_q3_cb(DEVCB_##_devcb);
-
-#define MCFG_74175_NOT_Q4_CB(_devcb) \
- downcast<ttl74175_device &>(*device).set_not_q1_cb(DEVCB_##_devcb);
-
-
class ttl741745_device : public device_t
{
public:
- template <class Object> devcb_base &set_q1_cb(Object &&cb) { return m_q1_func.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_q2_cb(Object &&cb) { return m_q2_func.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_q3_cb(Object &&cb) { return m_q3_func.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_q4_cb(Object &&cb) { return m_q4_func.set_callback(std::forward<Object>(cb)); }
+ auto q1_callback() { return m_q1_func.bind(); }
+ auto q2_callback() { return m_q2_func.bind(); }
+ auto q3_callback() { return m_q3_func.bind(); }
+ auto q4_callback() { return m_q4_func.bind(); }
DECLARE_WRITE_LINE_MEMBER( clear_w );
DECLARE_WRITE_LINE_MEMBER( d1_w );