diff --git a/src/devices/video/hlcd0515.h b/src/devices/video/hlcd0515.h index c551ef2e1fc..c8904fe2455 100644 --- a/src/devices/video/hlcd0515.h +++ b/src/devices/video/hlcd0515.h @@ -13,11 +13,11 @@ // COL/ROW pins (offset for ROW) #define MCFG_HLCD0515_WRITE_COLS_CB(_devcb) \ - hlcd0515_device::set_write_cols_callback(*device, DEVCB_##_devcb); + devcb = &hlcd0515_device::set_write_cols_callback(*device, DEVCB_##_devcb); // DATA OUT pin, don't use on HLCD0569 #define MCFG_HLCD0515_WRITE_DATA_CB(_devcb) \ - hlcd0515_device::set_write_data_callback(*device, DEVCB_##_devcb); + devcb = hlcd0515_device::set_write_data_callback(*device, DEVCB_##_devcb); // pinout reference @@ -58,8 +58,8 @@ public: hlcd0515_device(const machine_config &mconfig, device_type type, const char *name, const char *tag, device_t *owner, u32 clock, u8 colmax, const char *shortname, const char *source); // static configuration helpers - template static devcb_base &set_write_cols_callback(device_t &device, _Object object) { return downcast(device).m_write_cols.set_callback(object); } - template static devcb_base &set_write_data_callback(device_t &device, _Object object) { return downcast(device).m_write_data.set_callback(object); } + template static devcb_base &set_write_cols_callback(device_t &device, Object &&object) { return downcast(device).m_write_cols.set_callback(std::forward(object)); } + template static devcb_base &set_write_data_callback(device_t &device, Object &&object) { return downcast(device).m_write_data.set_callback(std::forward(object)); } DECLARE_WRITE_LINE_MEMBER(write_clock); DECLARE_WRITE_LINE_MEMBER(write_cs);