summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/video/hd44780.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/video/hd44780.h')
-rw-r--r--src/devices/video/hd44780.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/devices/video/hd44780.h b/src/devices/video/hd44780.h
index bcf5a683a88..65544ef6828 100644
--- a/src/devices/video/hd44780.h
+++ b/src/devices/video/hd44780.h
@@ -44,6 +44,17 @@ public:
// static configuration helpers
void set_lcd_size(int lines, int chars) { m_lines = lines; m_chars = chars; }
template <typename... T> void set_pixel_update_cb(T &&... args) { m_pixel_update_cb = pixel_update_delegate(std::forward<T>(args)...); }
+ void set_pixel_update_cb(pixel_update_delegate callback) { m_pixel_update_cb = callback; }
+ template <class FunctionClass> void set_pixel_update_cb(const char *devname,
+ void (FunctionClass::*callback)(bitmap_ind16 &, uint8_t, uint8_t, uint8_t, uint8_t, int), const char *name)
+ {
+ set_pixel_update_cb(pixel_update_delegate(callback, name, devname, static_cast<FunctionClass *>(nullptr)));
+ }
+ template <class FunctionClass> void set_pixel_update_cb(
+ void (FunctionClass::*callback)(bitmap_ind16 &, uint8_t, uint8_t, uint8_t, uint8_t, int), const char *name)
+ {
+ set_pixel_update_cb(pixel_update_delegate(callback, name, nullptr, static_cast<FunctionClass *>(nullptr)));
+ }
// device interface
virtual void write(offs_t offset, u8 data);