diff options
-rw-r--r-- | src/emu/render.cpp | 35 |
1 files changed, 22 insertions, 13 deletions
diff --git a/src/emu/render.cpp b/src/emu/render.cpp index 236a1d56330..1c176929aad 100644 --- a/src/emu/render.cpp +++ b/src/emu/render.cpp @@ -899,7 +899,11 @@ template <typename T> render_target::render_target(render_manager &manager, T && , m_listindex(0) , m_width(640) , m_height(480) + , m_keepaspect(false) + , m_int_overscan(false) , m_pixel_aspect(0.0f) + , m_int_scale_x(0) + , m_int_scale_y(0) , m_max_refresh(0) , m_orientation(0) , m_base_view(nullptr) @@ -913,20 +917,25 @@ template <typename T> render_target::render_target(render_manager &manager, T && m_base_layerconfig.set_zoom_to_screen(manager.machine().options().artwork_crop()); // aspect and scale options - m_keepaspect = (manager.machine().options().keep_aspect() && !(flags & RENDER_CREATE_HIDDEN)); - m_int_overscan = manager.machine().options().int_overscan(); - m_int_scale_x = manager.machine().options().int_scale_x(); - m_int_scale_y = manager.machine().options().int_scale_y(); - if (m_manager.machine().options().auto_stretch_xy()) - m_scale_mode = SCALE_FRACTIONAL_AUTO; - else if (manager.machine().options().uneven_stretch_x()) - m_scale_mode = SCALE_FRACTIONAL_X; - else if (manager.machine().options().uneven_stretch_y()) - m_scale_mode = SCALE_FRACTIONAL_Y; - else if (manager.machine().options().uneven_stretch()) - m_scale_mode = SCALE_FRACTIONAL; + if (!(flags & RENDER_CREATE_HIDDEN)) + { + m_keepaspect = manager.machine().options().keep_aspect(); + m_int_overscan = manager.machine().options().int_overscan(); + m_int_scale_x = manager.machine().options().int_scale_x(); + m_int_scale_y = manager.machine().options().int_scale_y(); + if (m_manager.machine().options().auto_stretch_xy()) + m_scale_mode = SCALE_FRACTIONAL_AUTO; + else if (manager.machine().options().uneven_stretch_x()) + m_scale_mode = SCALE_FRACTIONAL_X; + else if (manager.machine().options().uneven_stretch_y()) + m_scale_mode = SCALE_FRACTIONAL_Y; + else if (manager.machine().options().uneven_stretch()) + m_scale_mode = SCALE_FRACTIONAL; + else + m_scale_mode = SCALE_INTEGER; + } else - m_scale_mode = SCALE_INTEGER; + m_scale_mode = SCALE_FRACTIONAL; // determine the base orientation based on options if (!manager.machine().options().rotate()) |