diff options
Diffstat (limited to 'src/emu/screen.h')
-rw-r--r-- | src/emu/screen.h | 27 |
1 files changed, 13 insertions, 14 deletions
diff --git a/src/emu/screen.h b/src/emu/screen.h index acd106f3c4e..32702e26938 100644 --- a/src/emu/screen.h +++ b/src/emu/screen.h @@ -177,6 +177,18 @@ public: { set_type(type); } + screen_device(const machine_config &mconfig, const char *tag, device_t *owner, screen_type_enum type, rgb_t color) + : screen_device(mconfig, tag, owner, u32(0)) + { + set_type(type); + set_color(color); + } + screen_device(const machine_config &mconfig, const char *tag, device_t *owner, const char *region) + : screen_device(mconfig, tag, owner, u32(0)) + { + set_type(SCREEN_TYPE_SVG); + set_svg_region(region); + } ~screen_device(); // configuration readers @@ -217,6 +229,7 @@ public: void set_vblank_time(attoseconds_t time) { m_vblank = time; m_oldstyle_vblank_supplied = true; } void set_size(u16 width, u16 height) { m_width = width; m_height = height; } void set_visarea(s16 minx, s16 maxx, s16 miny, s16 maxy) { m_visarea.set(minx, maxx, miny, maxy); } + void set_visarea_full() { m_visarea.set(0, m_width - 1, 0, m_height - 1); } // call after set_size void set_default_position(double xscale, double xoffs, double yscale, double yoffs) { m_xscale = xscale; m_xoffset = xoffs; @@ -520,22 +533,12 @@ typedef device_type_iterator<screen_device> screen_device_iterator; #define MCFG_SCREEN_ADD(_tag, _type) \ MCFG_DEVICE_ADD(_tag, SCREEN, SCREEN_TYPE_##_type) -#define MCFG_SCREEN_ADD_MONOCHROME(_tag, _type, _color) \ - MCFG_DEVICE_ADD(_tag, SCREEN, 0) \ - MCFG_SCREEN_TYPE(_type) \ - MCFG_SCREEN_COLOR(_color) - #define MCFG_SCREEN_MODIFY(_tag) \ MCFG_DEVICE_MODIFY(_tag) #define MCFG_SCREEN_TYPE(_type) \ downcast<screen_device &>(*device).set_type(SCREEN_TYPE_##_type); -#define MCFG_SCREEN_SVG_ADD(_tag, _region) \ - MCFG_DEVICE_ADD(_tag, SCREEN, 0) \ - MCFG_SCREEN_TYPE(SVG) \ - downcast<screen_device &>(*device).set_svg_region(_region); - #define MCFG_SCREEN_RAW_PARAMS(_pixclock, _htotal, _hbend, _hbstart, _vtotal, _vbend, _vbstart) \ downcast<screen_device &>(*device).set_raw(_pixclock, _htotal, _hbend, _hbstart, _vtotal, _vbend, _vbstart); @@ -550,8 +553,6 @@ typedef device_type_iterator<screen_device> screen_device_iterator; #define MCFG_SCREEN_VISIBLE_AREA(_minx, _maxx, _miny, _maxy) \ downcast<screen_device &>(*device).set_visarea(_minx, _maxx, _miny, _maxy); -#define MCFG_SCREEN_DEFAULT_POSITION(_xscale, _xoffs, _yscale, _yoffs) \ - downcast<screen_device &>(*device).set_default_position(_xscale, _xoffs, _yscale, _yoffs); #define MCFG_SCREEN_UPDATE_DRIVER(_class, _method) \ downcast<screen_device &>(*device).set_screen_update(&_class::_method, #_class "::" #_method); #define MCFG_SCREEN_UPDATE_DEVICE(_device, _class, _method) \ @@ -564,7 +565,5 @@ typedef device_type_iterator<screen_device> screen_device_iterator; downcast<screen_device &>(*device).set_palette(finder_base::DUMMY_TAG); #define MCFG_SCREEN_VIDEO_ATTRIBUTES(_flags) \ downcast<screen_device &>(*device).set_video_attributes(_flags); -#define MCFG_SCREEN_COLOR(_color) \ - downcast<screen_device &>(*device).set_color(_color); #endif // MAME_EMU_SCREEN_H |