diff options
Diffstat (limited to 'src/mame/video/k052109.h')
-rw-r--r-- | src/mame/video/k052109.h | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/mame/video/k052109.h b/src/mame/video/k052109.h index 1cb9aa5c358..1721ade5083 100644 --- a/src/mame/video/k052109.h +++ b/src/mame/video/k052109.h @@ -5,14 +5,13 @@ #pragma once -#include "screen.h" #include "tilemap.h" typedef device_delegate<void (int layer, int bank, int *code, int *color, int *flags, int *priority)> k052109_cb_delegate; #define K052109_CB_MEMBER(_name) void _name(int layer, int bank, int *code, int *color, int *flags, int *priority) -class k052109_device : public device_t, public device_gfx_interface +class k052109_device : public device_t, public device_gfx_interface, public device_video_interface { static const gfx_layout charlayout; static const gfx_layout charlayout_ram; @@ -24,9 +23,10 @@ public: ~k052109_device() {} auto irq_handler() { return m_irq_handler.bind(); } + auto firq_handler() { return m_firq_handler.bind(); } + auto nmi_handler() { return m_nmi_handler.bind(); } template <typename... T> void set_tile_callback(T &&... args) { m_k052109_cb = k052109_cb_delegate(std::forward<T>(args)...); } void set_char_ram(bool ram); - template <typename T> void set_screen_tag(T &&tag) { m_screen.set_tag(std::forward<T>(tag)); } /* The callback is passed: @@ -51,7 +51,7 @@ public: void set_rmrd_line(int state); int get_rmrd_line(); void tilemap_update(); - int is_irq_enabled(); + int is_irq_enabled() { return m_irq_enabled; } // FIXME: remove void tilemap_mark_dirty(int tmap_num); void tilemap_draw(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect, int tmap_num, uint32_t flags, uint8_t priority); @@ -87,8 +87,6 @@ private: optional_region_ptr<uint8_t> m_char_rom; - optional_device<screen_device> m_screen; - k052109_cb_delegate m_k052109_cb; devcb_write_line m_irq_handler; |