summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/video/k053246_k053247_k055673.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/video/k053246_k053247_k055673.h')
-rw-r--r--src/mame/video/k053246_k053247_k055673.h30
1 files changed, 4 insertions, 26 deletions
diff --git a/src/mame/video/k053246_k053247_k055673.h b/src/mame/video/k053246_k053247_k055673.h
index 079781c410f..d80a0dbf65b 100644
--- a/src/mame/video/k053246_k053247_k055673.h
+++ b/src/mame/video/k053246_k053247_k055673.h
@@ -16,18 +16,6 @@ typedef device_delegate<void (int *code, int *color, int *priority_mask)> k05324
#define K053246_CB_MEMBER(_name) void _name(int *code, int *color, int *priority_mask)
#define K055673_CB_MEMBER(_name) void _name(int *code, int *color, int *priority_mask)
-#define MCFG_K053246_CB(_class, _method) \
- downcast<k053247_device &>(*device).set_k053247_callback(k053247_cb_delegate(&_class::_method, #_class "::" #_method, this));
-
-#define MCFG_K053246_CONFIG(_gfx_reg, _order, _dx, _dy) \
- downcast<k053247_device &>(*device).set_config(_gfx_reg, _order, _dx, _dy);
-
-#define MCFG_K055673_CB(_class, _method) \
- downcast<k053247_device &>(*device).set_k053247_callback(k053247_cb_delegate(&_class::_method, #_class "::" #_method, this));
-
-#define MCFG_K055673_CONFIG(_gfx_reg, _order, _dx, _dy) \
- downcast<k053247_device &>(*device).set_config(_gfx_reg, _order, _dx, _dy);
-
/** Konami 053246 / 053247 / 055673 **/
#define K055673_LAYOUT_GX 5
@@ -68,9 +56,10 @@ public:
// configuration
void set_k053247_callback(k053247_cb_delegate callback) { m_k053247_cb = callback; }
- void set_config(const char *gfx_reg, int bpp, int dx, int dy)
+ template <typename... T> void set_sprite_callback(T &&... args) { m_k053247_cb = k053247_cb_delegate(std::forward<T>(args)...); }
+ template <typename T> void set_config(T &&tag, int bpp, int dx, int dy)
{
- m_memory_region = gfx_reg;
+ m_gfxrom.set_tag(tag);
m_bpp = bpp;
m_dx = dx;
m_dy = dy;
@@ -119,7 +108,7 @@ public:
k053247_cb_delegate m_k053247_cb;
- const char *m_memory_region;
+ required_region_ptr<uint8_t> m_gfxrom;
int m_gfx_num;
int m_bpp;
@@ -488,15 +477,4 @@ private:
DECLARE_DEVICE_TYPE(K055673, k055673_device)
-
-#define MCFG_K053246_SET_SCREEN MCFG_VIDEO_SET_SCREEN
-
-#define MCFG_K053246_PALETTE MCFG_GFX_PALETTE
-
-
-#define MCFG_K055673_SET_SCREEN MCFG_VIDEO_SET_SCREEN
-
-#define MCFG_K055673_PALETTE MCFG_GFX_PALETTE
-
-
#endif // MAME_INCLUDES_K053246_K053247_K055673_H