diff options
Diffstat (limited to 'src/devices/cpu/m6805/m68705.h')
-rw-r--r-- | src/devices/cpu/m6805/m68705.h | 38 |
1 files changed, 7 insertions, 31 deletions
diff --git a/src/devices/cpu/m6805/m68705.h b/src/devices/cpu/m6805/m68705.h index 3966d5301ba..35e3f9f91ec 100644 --- a/src/devices/cpu/m6805/m68705.h +++ b/src/devices/cpu/m6805/m68705.h @@ -24,41 +24,17 @@ DECLARE_DEVICE_TYPE(M68705U3, m68705u3_device) // ======================> m68705_device -#define MCFG_M68705_PORTA_R_CB(obj) \ - downcast<m68705_device &>(*device).set_port_cb_r<0>(DEVCB_##obj); - -#define MCFG_M68705_PORTB_R_CB(obj) \ - downcast<m68705_device &>(*device).set_port_cb_r<1>(DEVCB_##obj); - -#define MCFG_M68705_PORTC_R_CB(obj) \ - downcast<m68705_device &>(*device).set_port_cb_r<2>(DEVCB_##obj); - -#define MCFG_M68705_PORTD_R_CB(obj) \ - downcast<m68705_device &>(*device).set_port_cb_r<3>(DEVCB_##obj); - -#define MCFG_M68705_PORTA_W_CB(obj) \ - downcast<m68705_device &>(*device).set_port_cb_w<0>(DEVCB_##obj); - -#define MCFG_M68705_PORTB_W_CB(obj) \ - downcast<m68705_device &>(*device).set_port_cb_w<1>(DEVCB_##obj); - -#define MCFG_M68705_PORTC_W_CB(obj) \ - downcast<m68705_device &>(*device).set_port_cb_w<2>(DEVCB_##obj); - - class m68705_device : public m6805_base_device, public device_nvram_interface { public: // configuration helpers - template<std::size_t N, typename Object> devcb_base &set_port_cb_r(Object &&obj) { return m_port_cb_r[N].set_callback(std::forward<Object>(obj)); } - template<std::size_t N, typename Object> devcb_base &set_port_cb_w(Object &&obj) { return m_port_cb_w[N].set_callback(std::forward<Object>(obj)); } - auto porta_r_cb() { return m_port_cb_r[0].bind(); } - auto portb_r_cb() { return m_port_cb_r[1].bind(); } - auto portc_r_cb() { return m_port_cb_r[2].bind(); } - auto portd_r_cb() { return m_port_cb_r[3].bind(); } - auto porta_w_cb() { return m_port_cb_w[0].bind(); } - auto portb_w_cb() { return m_port_cb_w[1].bind(); } - auto portc_w_cb() { return m_port_cb_w[2].bind(); } + auto porta_r() { return m_port_cb_r[0].bind(); } + auto portb_r() { return m_port_cb_r[1].bind(); } + auto portc_r() { return m_port_cb_r[2].bind(); } + auto portd_r() { return m_port_cb_r[3].bind(); } + auto porta_w() { return m_port_cb_w[0].bind(); } + auto portb_w() { return m_port_cb_w[1].bind(); } + auto portc_w() { return m_port_cb_w[2].bind(); } protected: // state index constants |