summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/cpu/pdp1
diff options
context:
space:
mode:
author mooglyguy <therealmogminer@gmail.com>2018-12-15 10:39:01 +0100
committer mooglyguy <therealmogminer@gmail.com>2018-12-15 10:39:27 +0100
commitb865623fdf791f2dd7c31829ddd671df49f84964 (patch)
treefab5a3647ca2e138e1c047d43c0e3322422c4da2 /src/devices/cpu/pdp1
parentf41b6e8d812103f7eb50dcaf35fdb83e9a3a5eff (diff)
-arcadia, binbug, cd2650, cvs, dm7000, dolphunk, galaxia, hp48, instruct, konamim2, laserbat, phunsy, pipbug, quasar,
quizshow, ravens, subhuntr, taitopjc, tx0, vc4000, zac_1, zac_2: Removed MACHINE_CONFIG. [Ryan Holtz] -bus/arcadia/slot, bus/vc4000/slot, tx0, ppc, s2650, saturn: Removed MCFG macros. [Ryan Holtz]
Diffstat (limited to 'src/devices/cpu/pdp1')
-rw-r--r--src/devices/cpu/pdp1/tx0.h33
1 files changed, 10 insertions, 23 deletions
diff --git a/src/devices/cpu/pdp1/tx0.h b/src/devices/cpu/pdp1/tx0.h
index f19f7899ffd..50fe94eb429 100644
--- a/src/devices/cpu/pdp1/tx0.h
+++ b/src/devices/cpu/pdp1/tx0.h
@@ -21,33 +21,20 @@ enum
};
-#define MCFG_TX0_CONFIG(_cpy_devcb, _r1l_devcb, _dis_devcb, _r3l_devcb, _prt_devcb, _rsv_devcb, _p6h_devcb, _p7h_devcb, _sel_devcb, _res_devcb) \
- downcast<tx0_device &>(*device).set_cpy_cb(DEVCB_##_cpy_devcb); \
- downcast<tx0_device &>(*device).set_r1l_cb(DEVCB_##_r1l_devcb); \
- downcast<tx0_device &>(*device).set_dis_cb(DEVCB_##_dis_devcb); \
- downcast<tx0_device &>(*device).set_r3l_cb(DEVCB_##_r3l_devcb); \
- downcast<tx0_device &>(*device).set_prt_cb(DEVCB_##_prt_devcb); \
- downcast<tx0_device &>(*device).set_rsv_cb(DEVCB_##_rsv_devcb); \
- downcast<tx0_device &>(*device).set_p6h_cb(DEVCB_##_p6h_devcb); \
- downcast<tx0_device &>(*device).set_p7h_cb(DEVCB_##_p7h_devcb); \
- downcast<tx0_device &>(*device).set_sel_cb(DEVCB_##_sel_devcb); \
- downcast<tx0_device &>(*device).set_res_cb(DEVCB_##_res_devcb);
-
-
class tx0_device : public cpu_device
{
public:
// configuration helpers
- template <class Object> devcb_base &set_cpy_cb(Object &&cb) { return m_cpy_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_r1l_cb(Object &&cb) { return m_r1l_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_dis_cb(Object &&cb) { return m_dis_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_r3l_cb(Object &&cb) { return m_r3l_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_prt_cb(Object &&cb) { return m_prt_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_rsv_cb(Object &&cb) { return m_rsv_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_p6h_cb(Object &&cb) { return m_p6h_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_p7h_cb(Object &&cb) { return m_p7h_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_sel_cb(Object &&cb) { return m_sel_handler.set_callback(std::forward<Object>(cb)); }
- template <class Object> devcb_base &set_res_cb(Object &&cb) { return m_io_reset_callback.set_callback(std::forward<Object>(cb)); }
+ auto cpy() { return m_cpy_handler.bind(); }
+ auto r1l() { return m_r1l_handler.bind(); }
+ auto dis() { return m_dis_handler.bind(); }
+ auto r3l() { return m_r3l_handler.bind(); }
+ auto prt() { return m_prt_handler.bind(); }
+ auto rsv() { return m_rsv_handler.bind(); }
+ auto p6h() { return m_p6h_handler.bind(); }
+ auto p7h() { return m_p7h_handler.bind(); }
+ auto sel() { return m_sel_handler.bind(); }
+ auto res() { return m_io_reset_callback.bind(); }
void pulse_reset();
void io_complete();