diff options
Diffstat (limited to 'src/devices/cpu/hd61700/hd61700.h')
-rw-r--r-- | src/devices/cpu/hd61700/hd61700.h | 40 |
1 files changed, 7 insertions, 33 deletions
diff --git a/src/devices/cpu/hd61700/hd61700.h b/src/devices/cpu/hd61700/hd61700.h index 8b69bf41913..bb8b7dc4ba9 100644 --- a/src/devices/cpu/hd61700/hd61700.h +++ b/src/devices/cpu/hd61700/hd61700.h @@ -12,32 +12,6 @@ #pragma once //************************************************************************** -// INTERFACE CONFIGURATION MACROS -//************************************************************************** - -#define MCFG_HD61700_LCD_CTRL_CB(_devcb) \ - downcast<hd61700_cpu_device &>(*device).set_lcd_ctrl_callback(DEVCB_##_devcb); - -#define MCFG_HD61700_LCD_WRITE_CB(_devcb) \ - downcast<hd61700_cpu_device &>(*device).set_lcd_write_callback(DEVCB_##_devcb); - -#define MCFG_HD61700_LCD_READ_CB(_devcb) \ - downcast<hd61700_cpu_device &>(*device).set_lcd_read_callback(DEVCB_##_devcb); - -#define MCFG_HD61700_KB_WRITE_CB(_devcb) \ - downcast<hd61700_cpu_device &>(*device).set_kb_write_callback(DEVCB_##_devcb); - -#define MCFG_HD61700_KB_READ_CB(_devcb) \ - downcast<hd61700_cpu_device &>(*device).set_kb_read_callback(DEVCB_##_devcb); - -#define MCFG_HD61700_PORT_WRITE_CB(_devcb) \ - downcast<hd61700_cpu_device &>(*device).set_port_write_callback(DEVCB_##_devcb); - -#define MCFG_HD61700_PORT_READ_CB(_devcb) \ - downcast<hd61700_cpu_device &>(*device).set_port_read_callback(DEVCB_##_devcb); - - -//************************************************************************** // DEFINITIONS //************************************************************************** @@ -61,13 +35,13 @@ public: // construction/destruction hd61700_cpu_device(const machine_config &mconfig, const char *_tag, device_t *_owner, uint32_t _clock); - template<class Object> devcb_base &set_lcd_ctrl_callback(Object &&cb) { return m_lcd_ctrl_cb.set_callback(std::forward<Object>(cb)); } - template<class Object> devcb_base &set_lcd_write_callback(Object &&cb) { return m_lcd_write_cb.set_callback(std::forward<Object>(cb)); } - template<class Object> devcb_base &set_lcd_read_callback(Object &&cb) { return m_lcd_read_cb.set_callback(std::forward<Object>(cb)); } - template<class Object> devcb_base &set_kb_write_callback(Object &&cb) { return m_kb_write_cb.set_callback(std::forward<Object>(cb)); } - template<class Object> devcb_base &set_kb_read_callback(Object &&cb) { return m_kb_read_cb.set_callback(std::forward<Object>(cb)); } - template<class Object> devcb_base &set_port_write_callback(Object &&cb) { return m_port_write_cb.set_callback(std::forward<Object>(cb)); } - template<class Object> devcb_base &set_port_read_callback(Object &&cb) { return m_port_read_cb.set_callback(std::forward<Object>(cb)); } + auto lcd_ctrl() { return m_lcd_ctrl_cb.bind(); } + auto lcd_write() { return m_lcd_write_cb.bind(); } + auto lcd_read() { return m_lcd_read_cb.bind(); } + auto kb_write() { return m_kb_write_cb.bind(); } + auto kb_read() { return m_kb_read_cb.bind(); } + auto port_write() { return m_port_write_cb.bind(); } + auto port_read() { return m_port_read_cb.bind(); } protected: // device-level overrides |