diff options
author | 2018-05-06 19:19:48 +1000 | |
---|---|---|
committer | 2018-05-06 19:19:48 +1000 | |
commit | 138b60e6c6078260b12becbc6706fa0523eea506 (patch) | |
tree | 6c5bb013da8e6ea0500148169adf2c8436e900ab /src/emu/render.cpp | |
parent | 495ec11fdf79e06fb5102b395b7316fa273006a7 (diff) |
(nw) misc follow-up
Fix MT06964
Fix µPD7759 class hierarchy, and reset callback before resolving it
(fixed assert in Sega C2)
Remove some more low-value device add indirection macros, default some
more clocks
Make cards inherit clock from slot by default
Diffstat (limited to 'src/emu/render.cpp')
-rw-r--r-- | src/emu/render.cpp | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/emu/render.cpp b/src/emu/render.cpp index 2bb74643d91..c5f4418f447 100644 --- a/src/emu/render.cpp +++ b/src/emu/render.cpp @@ -1042,7 +1042,7 @@ void render_target::set_bounds(s32 width, s32 height, float pixel_aspect) void render_target::set_view(int viewindex) { layout_view *view = view_by_index(viewindex); - if (view != nullptr) + if (view) { m_curview = view; view->recompute(m_layerconfig); @@ -1170,7 +1170,7 @@ void render_target::compute_visible_area(s32 target_width, s32 target_height, fl { switch (m_scale_mode) { - case SCALE_FRACTIONAL: + case SCALE_FRACTIONAL: { float width, height; float scale; @@ -1210,7 +1210,7 @@ void render_target::compute_visible_area(s32 target_width, s32 target_height, fl break; } - default: + default: { // get source size and aspect s32 src_width, src_height; @@ -1691,22 +1691,24 @@ void render_target::load_additional_layout_files(const char *basename, bool have if (!have_default && !have_artwork) { - if (screens == 0) + if (screens == 2) { - load_layout_file(nullptr, &layout_noscreens); + load_layout_file(nullptr, &layout_dualhsxs); if (m_filelist.empty()) throw emu_fatalerror("Couldn't parse default layout??"); } - else if (screens == 2) + } + + if (screens == 0) // ensure the fallback view for systems with no screens is loaded if necessary + { + if (!view_by_index(0)) { - load_layout_file(nullptr, &layout_dualhsxs); + load_layout_file(nullptr, &layout_noscreens); if (m_filelist.empty()) throw emu_fatalerror("Couldn't parse default layout??"); } } - - // generate default layouts for larger numbers of screens - if (screens >= 3) + else if (screens >= 3) // generate default layouts for larger numbers of screens { util::xml::file::ptr const root(util::xml::file::create()); if (!root) |