summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--scripts/src/emu.lua10
-rw-r--r--src/devices/video/bt45x.cpp2
-rw-r--r--src/devices/video/gba_lcd.cpp2
-rw-r--r--src/emu/layout/horizont.lay24
-rw-r--r--src/emu/layout/lcd.lay8
-rw-r--r--src/emu/layout/lcd_rot.lay8
-rw-r--r--src/emu/layout/svg.lay8
-rw-r--r--src/emu/layout/vertical.lay37
-rw-r--r--src/emu/render.cpp320
-rw-r--r--src/emu/rendlay.cpp56
-rw-r--r--src/emu/rendlay.h11
-rw-r--r--src/emu/save.h61
-rw-r--r--src/emu/screen.cpp131
-rw-r--r--src/emu/screen.h12
-rw-r--r--src/frontend/mame/info.cpp53
-rw-r--r--src/frontend/mame/luaengine.cpp2
-rw-r--r--src/frontend/mame/ui/devopt.cpp5
-rw-r--r--src/frontend/mame/ui/info.cpp2
-rw-r--r--src/lib/util/avhuff.h9
-rw-r--r--src/lib/util/bitstream.h9
-rw-r--r--src/lib/util/cdrom.h11
-rw-r--r--src/lib/util/chd.h9
-rw-r--r--src/lib/util/chdcd.h8
-rw-r--r--src/lib/util/chdcodec.h9
-rw-r--r--src/lib/util/corestr.h8
-rw-r--r--src/lib/util/coretmpl.h20
-rw-r--r--src/lib/util/coreutil.h8
-rw-r--r--src/lib/util/delegate.h9
-rw-r--r--src/lib/util/flac.h29
-rw-r--r--src/lib/util/harddisk.h8
-rw-r--r--src/lib/util/hash.h8
-rw-r--r--src/lib/util/hashing.h8
-rw-r--r--src/lib/util/huffman.h9
-rw-r--r--src/lib/util/jedparse.h8
-rw-r--r--src/lib/util/opresolv.h8
-rw-r--r--src/lib/util/palette.h9
-rw-r--r--src/lib/util/plaparse.h10
-rw-r--r--src/lib/util/pool.h8
-rw-r--r--src/lib/util/vbiparse.h8
-rw-r--r--src/lib/util/wavwrite.h8
-rw-r--r--src/mame/drivers/alesis.cpp1
-rw-r--r--src/mame/drivers/alphasma.cpp2
-rw-r--r--src/mame/drivers/alto2.cpp17
-rw-r--r--src/mame/drivers/bw2.cpp1
-rw-r--r--src/mame/drivers/cesclass.cpp2
-rw-r--r--src/mame/drivers/cfx9850.cpp3
-rw-r--r--src/mame/drivers/clcd.cpp2
-rw-r--r--src/mame/drivers/cybiko.cpp4
-rw-r--r--src/mame/drivers/deshoros.cpp2
-rw-r--r--src/mame/drivers/fb01.cpp2
-rw-r--r--src/mame/drivers/gamepock.cpp3
-rw-r--r--src/mame/drivers/gb.cpp79
-rw-r--r--src/mame/drivers/gizmondo.cpp3
-rw-r--r--src/mame/drivers/gmaster.cpp2
-rw-r--r--src/mame/drivers/gp32.cpp4
-rw-r--r--src/mame/drivers/gridcomp.cpp5
-rw-r--r--src/mame/drivers/hh_hmcs40.cpp33
-rw-r--r--src/mame/drivers/hh_melps4.cpp7
-rw-r--r--src/mame/drivers/hh_sm510.cpp68
-rw-r--r--src/mame/drivers/hh_tms1k.cpp3
-rw-r--r--src/mame/drivers/hh_ucom4.cpp17
-rw-r--r--src/mame/drivers/hp49gp.cpp4
-rw-r--r--src/mame/drivers/hp_ipc.cpp8
-rw-r--r--src/mame/drivers/hprot1.cpp2
-rw-r--r--src/mame/drivers/hunter2.cpp2
-rw-r--r--src/mame/drivers/hx20.cpp1
-rw-r--r--src/mame/drivers/icatel.cpp2
-rw-r--r--src/mame/drivers/juicebox.cpp2
-rw-r--r--src/mame/drivers/lcmate2.cpp2
-rw-r--r--src/mame/drivers/micronic.cpp3
-rw-r--r--src/mame/drivers/microvsn.cpp3
-rw-r--r--src/mame/drivers/mini2440.cpp6
-rw-r--r--src/mame/drivers/mstation.cpp2
-rw-r--r--src/mame/drivers/nakajies.cpp9
-rw-r--r--src/mame/drivers/nbmj8688.cpp32
-rw-r--r--src/mame/drivers/nc.cpp3
-rw-r--r--src/mame/drivers/ngp.cpp3
-rw-r--r--src/mame/drivers/palm.cpp11
-rw-r--r--src/mame/drivers/palmz22.cpp10
-rw-r--r--src/mame/drivers/pasopia7.cpp3
-rw-r--r--src/mame/drivers/pb1000.cpp2
-rw-r--r--src/mame/drivers/pc2000.cpp2
-rw-r--r--src/mame/drivers/pc4.cpp2
-rw-r--r--src/mame/drivers/pce220.cpp4
-rw-r--r--src/mame/drivers/pda600.cpp9
-rw-r--r--src/mame/drivers/pitagjr.cpp3
-rw-r--r--src/mame/drivers/pofo.cpp3
-rw-r--r--src/mame/drivers/pokemini.cpp3
-rw-r--r--src/mame/drivers/prestige.cpp3
-rw-r--r--src/mame/drivers/psion.cpp2
-rw-r--r--src/mame/drivers/replicator.cpp2
-rw-r--r--src/mame/drivers/rex6000.cpp3
-rw-r--r--src/mame/drivers/tetrisp2.cpp79
-rw-r--r--src/mame/drivers/ti630.cpp2
-rw-r--r--src/mame/drivers/ti89.cpp2
-rw-r--r--src/mame/drivers/tmmjprd.cpp37
-rw-r--r--src/mame/drivers/wpc_dot.cpp55
-rw-r--r--src/mame/drivers/wpc_flip1.cpp27
-rw-r--r--src/mame/drivers/wpc_flip2.cpp27
-rw-r--r--src/mame/drivers/x07.cpp1
-rw-r--r--src/mame/drivers/ymmu100.cpp2
-rw-r--r--src/mame/drivers/z88.cpp2
-rw-r--r--src/mame/includes/alesis.h1
-rw-r--r--src/mame/includes/gb.h9
-rw-r--r--src/mame/includes/hx20.h1
-rw-r--r--src/mame/includes/nbmj8688.h7
-rw-r--r--src/mame/includes/wpc_dot.h36
-rw-r--r--src/mame/includes/wpc_flip1.h6
-rw-r--r--src/mame/includes/wpc_flip2.h6
-rw-r--r--src/mame/includes/x07.h7
-rw-r--r--src/mame/includes/z88.h3
-rw-r--r--src/mame/layout/nbmj8688.lay40
-rw-r--r--src/mame/layout/rocknms.lay26
-rw-r--r--src/mame/layout/stepstag.lay41
-rw-r--r--src/mame/video/decodmd1.cpp5
-rw-r--r--src/mame/video/decodmd2.cpp32
-rw-r--r--src/mame/video/decodmd3.cpp29
-rw-r--r--src/mame/video/gamate.cpp3
-rw-r--r--src/mame/video/kyocera.cpp5
-rw-r--r--src/mame/video/wpc_dmd.cpp2
-rw-r--r--src/osd/eigccppc.h6
-rw-r--r--src/osd/osdnet.h8
-rw-r--r--src/osd/osdsync.h7
123 files changed, 790 insertions, 1103 deletions
diff --git a/scripts/src/emu.lua b/scripts/src/emu.lua
index c9a8ddeb625..4e763996a2c 100644
--- a/scripts/src/emu.lua
+++ b/scripts/src/emu.lua
@@ -271,13 +271,8 @@ dependency {
{ MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/dualhovu.lh" },
{ MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/dualhsxs.lh" },
{ MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/dualhuov.lh" },
- { MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/horizont.lh" },
{ MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/triphsxs.lh" },
{ MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/quadhsxs.lh" },
- { MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/vertical.lh" },
- { MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/lcd.lh" },
- { MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/lcd_rot.lh" },
- { MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/svg.lh" },
{ MAME_DIR .. "src/emu/rendlay.cpp", GEN_DIR .. "emu/layout/noscreens.lh" },
}
@@ -291,13 +286,8 @@ custombuildtask {
layoutbuildtask("emu/layout", "dualhovu"),
layoutbuildtask("emu/layout", "dualhsxs"),
layoutbuildtask("emu/layout", "dualhuov"),
- layoutbuildtask("emu/layout", "horizont"),
layoutbuildtask("emu/layout", "triphsxs"),
layoutbuildtask("emu/layout", "quadhsxs"),
- layoutbuildtask("emu/layout", "vertical"),
- layoutbuildtask("emu/layout", "lcd"),
- layoutbuildtask("emu/layout", "lcd_rot"),
- layoutbuildtask("emu/layout", "svg"),
layoutbuildtask("emu/layout", "noscreens"),
}
diff --git a/src/devices/video/bt45x.cpp b/src/devices/video/bt45x.cpp
index f1176ee5f77..2f676c831fe 100644
--- a/src/devices/video/bt45x.cpp
+++ b/src/devices/video/bt45x.cpp
@@ -146,7 +146,7 @@ void bt45x_rgb_device_base::device_start()
m_color_ram = std::make_unique<std::array<u8, 3>[]>(m_palette_colors + m_overlay_colors);
- //save_pointer(NAME(m_color_ram), m_palette_colors + m_overlay_colors);
+ save_pointer(NAME(m_color_ram), m_palette_colors + m_overlay_colors);
}
void bt45x_mono_device_base::device_start()
diff --git a/src/devices/video/gba_lcd.cpp b/src/devices/video/gba_lcd.cpp
index 098499b1af5..98957a3353a 100644
--- a/src/devices/video/gba_lcd.cpp
+++ b/src/devices/video/gba_lcd.cpp
@@ -13,7 +13,6 @@
#include "emu.h"
#include "gba_lcd.h"
-#include "rendlay.h"
#include "screen.h"
@@ -1810,7 +1809,6 @@ MACHINE_CONFIG_START(gba_lcd_device::device_add_mconfig)
MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, gba_lcd_device, screen_update)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 32768)
MCFG_PALETTE_INIT_OWNER(gba_lcd_device, gba)
MACHINE_CONFIG_END
diff --git a/src/emu/layout/horizont.lay b/src/emu/layout/horizont.lay
deleted file mode 100644
index 908804832af..00000000000
--- a/src/emu/layout/horizont.lay
+++ /dev/null
@@ -1,24 +0,0 @@
-<?xml version="1.0"?>
-<mamelayout version="2">
- <view name="Standard (4:3)">
- <screen index="0">
- <bounds left="0" top="0" right="4" bottom="3" />
- </screen>
- </view>
-
- <view name="Pixel Aspect (~scr0nativexaspect~:~scr0nativeyaspect~)">
- <screen index="0">
- <bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" />
- </screen>
- </view>
-
- <view name="Cocktail">
- <screen index="0">
- <bounds x="0" y="-3.03" width="4" height="3" />
- <orientation rotate="180" />
- </screen>
- <screen index="0">
- <bounds x="0" y="0" width="4" height="3" />
- </screen>
- </view>
-</mamelayout>
diff --git a/src/emu/layout/lcd.lay b/src/emu/layout/lcd.lay
deleted file mode 100644
index 8de4141324a..00000000000
--- a/src/emu/layout/lcd.lay
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0"?>
-<mamelayout version="2">
- <view name="LCD with square pixels">
- <screen index="0">
- <bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" />
- </screen>
- </view>
-</mamelayout>
diff --git a/src/emu/layout/lcd_rot.lay b/src/emu/layout/lcd_rot.lay
deleted file mode 100644
index 95176d24a06..00000000000
--- a/src/emu/layout/lcd_rot.lay
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0"?>
-<mamelayout version="2">
- <view name="LCD with square pixels">
- <screen index="0">
- <bounds left="0" top="0" right="~scr0height~" bottom="~scr0width~" />
- </screen>
- </view>
-</mamelayout>
diff --git a/src/emu/layout/svg.lay b/src/emu/layout/svg.lay
deleted file mode 100644
index 96a25360a19..00000000000
--- a/src/emu/layout/svg.lay
+++ /dev/null
@@ -1,8 +0,0 @@
-<?xml version="1.0"?>
-<mamelayout version="2">
- <view name="SVG">
- <screen index="0">
- <bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" />
- </screen>
- </view>
-</mamelayout>
diff --git a/src/emu/layout/vertical.lay b/src/emu/layout/vertical.lay
deleted file mode 100644
index 2d66df317f8..00000000000
--- a/src/emu/layout/vertical.lay
+++ /dev/null
@@ -1,37 +0,0 @@
-<?xml version="1.0"?>
-<mamelayout version="2">
- <view name="Standard (3:4)">
- <screen index="0">
- <bounds left="0" top="0" right="3" bottom="4" />
- </screen>
- </view>
-
- <view name="Pixel Aspect (~scr0nativeyaspect~:~scr0nativexaspect~)">
- <screen index="0">
- <bounds left="0" top="0" right="~scr0height~" bottom="~scr0width~" />
- </screen>
- </view>
-
- <view name="Cocktail">
- <screen index="0">
- <bounds x="-3.03" y="0" width="3" height="4" />
- <orientation rotate="180" />
- </screen>
- <screen index="0">
- <bounds x="0" y="0" width="3" height="4" />
- </screen>
- </view>
-
- <element name="dbgdis">
- </element>
-
- <view name="Debug">
- <screen index="0">
- <bounds left="0" top="0" right="3" bottom="4" />
- </screen>
- <bezel element="dbgdis">
- <bounds x="-2.5" y="0" width="8" height="6" />
- </bezel>
- </view>
-
-</mamelayout>
diff --git a/src/emu/render.cpp b/src/emu/render.cpp
index 9ec8445fa49..a65a47e2cf6 100644
--- a/src/emu/render.cpp
+++ b/src/emu/render.cpp
@@ -46,8 +46,12 @@
#include "drivenum.h"
#include "xmlfile.h"
#include "ui/uimain.h"
+
#include <zlib.h>
+#include <algorithm>
+#include <functional>
+
//**************************************************************************
@@ -562,20 +566,20 @@ const rgb_t *render_texture::get_adjusted_palette(render_container &container)
//-------------------------------------------------
render_container::render_container(render_manager &manager, screen_device *screen)
- : m_next(nullptr),
- m_manager(manager),
- m_screen(screen),
- m_overlaybitmap(nullptr),
- m_overlaytexture(nullptr)
+ : m_next(nullptr)
+ , m_manager(manager)
+ , m_screen(screen)
+ , m_overlaybitmap(nullptr)
+ , m_overlaytexture(nullptr)
{
// make sure it is empty
empty();
// if we have a screen, read and apply the options
- if (m_screen != nullptr)
+ if (m_screen)
{
// set the initial orientation and brightness/contrast/gamma
- m_user.m_orientation = manager.machine().system().flags & machine_flags::MASK_ORIENTATION;
+ m_user.m_orientation = m_screen->orientation();
m_user.m_brightness = manager.machine().options().brightness();
m_user.m_contrast = manager.machine().options().contrast();
m_user.m_gamma = manager.machine().options().gamma();
@@ -884,14 +888,14 @@ void render_container::update_palette()
//-------------------------------------------------
render_container::user_settings::user_settings()
- : m_orientation(0),
- m_brightness(1.0f),
- m_contrast(1.0f),
- m_gamma(1.0f),
- m_xscale(1.0f),
- m_yscale(1.0f),
- m_xoffset(0.0f),
- m_yoffset(0.0f)
+ : m_orientation(0)
+ , m_brightness(1.0f)
+ , m_contrast(1.0f)
+ , m_gamma(1.0f)
+ , m_xscale(1.0f)
+ , m_yscale(1.0f)
+ , m_xoffset(0.0f)
+ , m_yoffset(0.0f)
{
}
@@ -1676,23 +1680,53 @@ void render_target::load_additional_layout_files(const char *basename, bool have
}
- screen_device_iterator iter(m_manager.machine().root_device());
- unsigned const screens = iter.count();
-
- // now do the built-in layouts for single-screen games
- if (screens == 1)
+ // local screen info to avoid repeated code
+ class screen_info
{
- if (system.flags & ORIENTATION_SWAP_XY)
- load_layout_file(nullptr, layout_vertical);
- else
- load_layout_file(nullptr, layout_horizont);
- if (m_filelist.empty())
- throw emu_fatalerror("Couldn't parse default layout??");
- }
+ public:
+ screen_info(screen_device const &screen)
+ : m_device(screen)
+ , m_rotated(screen.orientation() & ORIENTATION_SWAP_XY)
+ , m_physical(screen.physical_aspect())
+ , m_native(screen.visible_area().width(), screen.visible_area().height())
+ {
+ util::reduce_fraction(m_native.first, m_native.second);
+ if (m_rotated)
+ {
+ std::swap(m_physical.first, m_physical.second);
+ std::swap(m_native.first, m_native.second);
+ }
+ }
+
+ screen_device const &device() const { return m_device.get(); }
+ bool rotated() const { return m_rotated; }
+ bool square() const { return m_physical == m_native; }
+ unsigned physical_x() const { return m_physical.first; }
+ unsigned physical_y() const { return m_physical.second; }
+ unsigned native_x() const { return m_native.first; }
+ unsigned native_y() const { return m_native.second; }
+
+ std::pair<float, float> tiled_size() const
+ {
+ if (physical_x() == physical_y())
+ return std::make_pair(1.0F, 1.0F);
+ else if (physical_x() > physical_y())
+ return std::make_pair(1.0F, float(physical_y()) / physical_x());
+ else
+ return std::make_pair(float(physical_x()) / physical_y(), 1.0F);
+ }
+
+ private:
+ std::reference_wrapper<screen_device const> m_device;
+ bool m_rotated;
+ std::pair<unsigned, unsigned> m_physical, m_native;
+ };
+ screen_device_iterator iter(m_manager.machine().root_device());
+ std::vector<screen_info> const screens(std::begin(iter), std::end(iter));
if (!have_default && !have_artwork)
{
- if (screens == 2)
+ if (screens.size() == 2U)
{
load_layout_file(nullptr, layout_dualhsxs);
if (m_filelist.empty())
@@ -1700,7 +1734,7 @@ void render_target::load_additional_layout_files(const char *basename, bool have
}
}
- if (screens == 0) // ensure the fallback view for systems with no screens is loaded if necessary
+ if (screens.empty()) // ensure the fallback view for systems with no screens is loaded if necessary
{
if (!view_by_index(0))
{
@@ -1709,7 +1743,7 @@ void render_target::load_additional_layout_files(const char *basename, bool have
throw emu_fatalerror("Couldn't parse default layout??");
}
}
- else if (screens >= 2) // generate default layouts for larger numbers of screens
+ else // generate default layouts for larger numbers of screens
{
util::xml::file::ptr const root(util::xml::file::create());
if (!root)
@@ -1719,17 +1753,18 @@ void render_target::load_additional_layout_files(const char *basename, bool have
throw emu_fatalerror("Couldn't create XML node??");
layoutnode->set_attribute_int("version", 2);
- // get standard width/height assuming 4:3 screens
- unsigned const stdwidth((system.flags & ORIENTATION_SWAP_XY) ? 3 : 4);
- unsigned const stdheight((system.flags & ORIENTATION_SWAP_XY) ? 4 : 3);
-
- // generate individual 4:3 views
- for (unsigned i = 0; screens > i; ++i)
+ // generate individual physical aspect views
+ for (unsigned i = 0; screens.size() > i; ++i)
{
util::xml::data_node *const viewnode(layoutnode->add_child("view", nullptr));
if (!viewnode)
throw emu_fatalerror("Couldn't create XML node??");
- viewnode->set_attribute("name", util::xml::normalize_string(util::string_format("Screen %1$u Standard (%2$u:%3$u)", i, stdwidth, stdheight).c_str()));
+ viewnode->set_attribute(
+ "name",
+ util::xml::normalize_string(
+ util::string_format(
+ "Screen %1$u Standard (%2$u:%3$u)",
+ i, screens[i].physical_x(), screens[i].physical_y()).c_str()));
util::xml::data_node *const screennode(viewnode->add_child("screen", nullptr));
if (!screennode)
throw emu_fatalerror("Couldn't create XML node??");
@@ -1739,40 +1774,85 @@ void render_target::load_additional_layout_files(const char *basename, bool have
throw emu_fatalerror("Couldn't create XML node??");
boundsnode->set_attribute_int("x", 0);
boundsnode->set_attribute_int("y", 0);
- boundsnode->set_attribute_int("width", stdwidth);
- boundsnode->set_attribute_int("height", stdheight);
+ boundsnode->set_attribute_int("width", screens[i].physical_x());
+ boundsnode->set_attribute_int("height", screens[i].physical_y());
}
// generate individual pixel aspect views
- for (unsigned i = 0; screens > i; ++i)
+ for (unsigned i = 0; screens.size() > i; ++i)
+ {
+ if (!screens[i].square())
+ {
+ util::xml::data_node *const viewnode(layoutnode->add_child("view", nullptr));
+ if (!viewnode)
+ throw emu_fatalerror("Couldn't create XML node??");
+ viewnode->set_attribute(
+ "name",
+ util::xml::normalize_string(
+ util::string_format(
+ "Screen %1$u Pixel Aspect (%2$u:%3$u)",
+ i, screens[i].native_x(), screens[i].native_y()).c_str()));
+ util::xml::data_node *const screennode(viewnode->add_child("screen", nullptr));
+ if (!screennode)
+ throw emu_fatalerror("Couldn't create XML node??");
+ screennode->set_attribute_int("index", i);
+ util::xml::data_node *const boundsnode(screennode->add_child("bounds", nullptr));
+ if (!boundsnode)
+ throw emu_fatalerror("Couldn't create XML node??");
+ boundsnode->set_attribute_int("x", 0);
+ boundsnode->set_attribute_int("y", 0);
+ boundsnode->set_attribute_int("width", screens[i].native_x());
+ boundsnode->set_attribute_int("height", screens[i].native_y());
+ }
+ }
+
+ // generate the fake cocktail view for single-screen systems
+ if (screens.size() == 1U)
{
util::xml::data_node *const viewnode(layoutnode->add_child("view", nullptr));
if (!viewnode)
throw emu_fatalerror("Couldn't create XML node??");
- viewnode->set_attribute("name", util::xml::normalize_string(util::string_format("Screen %1$u Pixel Aspect (~scr%1$unativexaspect~:~scr%1$unativeyaspect~)", i).c_str()));
+ viewnode->set_attribute("name", "Cocktail");
+
+ util::xml::data_node *const mirrornode(viewnode->add_child("screen", nullptr));
+ if (!mirrornode)
+ throw emu_fatalerror("Couldn't create XML node??");
+ mirrornode->set_attribute_int("index", 0);
+ util::xml::data_node *const mirrorbounds(mirrornode->add_child("bounds", nullptr));
+ if (!mirrorbounds)
+ throw emu_fatalerror("Couldn't create XML node??");
+ mirrorbounds->set_attribute_int("x", 0);
+ mirrorbounds->set_attribute_float("y", (-0.01 * (std::min)(screens[0].physical_x(), screens[0].physical_y())) - screens[0].physical_y());
+ mirrorbounds->set_attribute_int("width", screens[0].physical_x());
+ mirrorbounds->set_attribute_int("height", screens[0].physical_y());
+ util::xml::data_node *const flipper(mirrornode->add_child("orientation", nullptr));
+ if (!flipper)
+ throw emu_fatalerror("Couldn't create XML node??");
+ flipper->set_attribute_int("rotate", 180);
+
util::xml::data_node *const screennode(viewnode->add_child("screen", nullptr));
if (!screennode)
throw emu_fatalerror("Couldn't create XML node??");
- screennode->set_attribute_int("index", i);
- util::xml::data_node *const boundsnode(screennode->add_child("bounds", nullptr));
- if (!boundsnode)
+ screennode->set_attribute_int("index", 0);
+ util::xml::data_node *const screenbounds(screennode->add_child("bounds", nullptr));
+ if (!screenbounds)
throw emu_fatalerror("Couldn't create XML node??");
- boundsnode->set_attribute_int("x", 0);
- boundsnode->set_attribute_int("y", 0);
- boundsnode->set_attribute("width", util::xml::normalize_string(util::string_format("~scr%1$uwidth~", i).c_str()));
- boundsnode->set_attribute("height", util::xml::normalize_string(util::string_format("~scr%1$uheight~", i).c_str()));
+ screenbounds->set_attribute_int("x", 0);
+ screenbounds->set_attribute_int("y", 0);
+ screenbounds->set_attribute_int("width", screens[0].physical_x());
+ screenbounds->set_attribute_int("height", screens[0].physical_y());
}
// generate tiled views if the supplied artwork doesn't provide a view of all screens
- bool need_tiles(screens >= 3);
- if (!need_tiles)
+ bool need_tiles(screens.size() >= 3);
+ if (!need_tiles && (screens.size() >= 2))
{
need_tiles = true;
int viewindex(0);
for (layout_view *view = view_by_index(viewindex); need_tiles && view; view = view_by_index(++viewindex))
{
render_screen_list const &viewscreens(view->screens());
- if (viewscreens.count() >= screens)
+ if (viewscreens.count() >= screens.size())
{
bool screen_missing(false);
for (screen_device &screen : iter)
@@ -1790,93 +1870,119 @@ void render_target::load_additional_layout_files(const char *basename, bool have
}
if (need_tiles)
{
- // helper for generating a view since we do this a lot
+ // helpers for generating a view since we do this a lot
+ std::vector<float> widths(screens.size()), heights(screens.size());
+ std::vector<std::pair<float, float> > sizes(screens.size());
+ std::transform(screens.begin(), screens.end(), sizes.begin(), [] (screen_info const &s) { return s.tiled_size(); });
auto const generate_view =
- [&layoutnode, screens, stdwidth, stdheight] (char const *title, auto &&bounds_callback)
+ [&layoutnode, &screens, &widths, &heights, &sizes] (char const *title, unsigned columns, bool gapless, auto &&mapper)
{
+ // calculate necessary widths/heights of rows/columns restricting screens to unit square
+ assert(0U < columns);
+ assert(screens.size() >= columns);
+ unsigned const rows((screens.size() + columns - 1) / columns);
+ std::fill_n(widths.begin(), columns, 0.0F);
+ std::fill_n(heights.begin(), rows, 0.0F);
+ for (unsigned y = 0U; rows > y; ++y)
+ {
+ for (unsigned x = 0U; columns > x; ++x)
+ {
+ int const i(mapper(x, y));
+ if (0 <= i)
+ {
+ widths[x] = (std::max)(widths[x], sizes[i].first);
+ heights[y] = (std::max)(heights[y], sizes[i].second);
+ }
+ }
+ }
+
+ // spacing is 1% of minor dimension
+ float spacing(0.0F);
+ if (!gapless)
+ {
+ spacing = 0.01F * (std::min)(
+ *std::max_element(widths.begin(), widths.begin() + columns),
+ *std::max_element(heights.begin(), heights.begin() + rows));
+ }
+
+ // actually generate elements
util::xml::data_node *viewnode = layoutnode->add_child("view", nullptr);
if (!viewnode)
throw emu_fatalerror("Couldn't create XML node??");
viewnode->set_attribute("name", util::xml::normalize_string(title));
- for (unsigned i = 0; screens > i; ++i)
+ float ypos(0.0F);
+ for (unsigned y = 0U; rows > y; ypos += heights[y] + spacing, ++y)
{
- util::xml::data_node *const screennode(viewnode->add_child("screen", nullptr));
- if (!screennode)
- throw emu_fatalerror("Couldn't create XML node??");
- screennode->set_attribute_int("index", i);
- util::xml::data_node *const boundsnode(screennode->add_child("bounds", nullptr));
- if (!boundsnode)
- throw emu_fatalerror("Couldn't create XML node??");
- bounds_callback(*boundsnode, i);
- boundsnode->set_attribute_int("width", stdwidth);
- boundsnode->set_attribute_int("height", stdheight);
+ float xpos(0.0F);
+ for (unsigned x = 0U; columns > x; xpos += widths[x] + spacing, ++x)
+ {
+ int const i(mapper(x, y));
+ if (0 <= i)
+ {
+ util::xml::data_node *const screennode(viewnode->add_child("screen", nullptr));
+ if (!screennode)
+ throw emu_fatalerror("Couldn't create XML node??");
+ screennode->set_attribute_int("index", i);
+ util::xml::data_node *const boundsnode(screennode->add_child("bounds", nullptr));
+ if (!boundsnode)
+ throw emu_fatalerror("Couldn't create XML node??");
+ boundsnode->set_attribute_float("x", xpos + ((widths[x] - sizes[i].first) / 2));
+ boundsnode->set_attribute_float("y", ypos + ((heights[y] - sizes[i].second) / 2));
+ boundsnode->set_attribute_float("width", sizes[i].first);
+ boundsnode->set_attribute_float("height", sizes[i].second);
+ }
+ }
}
};
// generate linear views
- generate_view(
- "Left-to-Right",
- [stdwidth] (util::xml::data_node &boundsnode, unsigned i)
- {
- boundsnode.set_attribute_float("x", i * (stdwidth + 0.03f));
- boundsnode.set_attribute_int("y", 0);
- });
- generate_view(
- "Left-to-Right (Gapless)",
- [stdwidth] (util::xml::data_node &boundsnode, unsigned i)
- {
- boundsnode.set_attribute_int("x", i * stdwidth);
- boundsnode.set_attribute_int("y", 0);
- });
- generate_view(
- "Top-to-Bottom",
- [stdheight] (util::xml::data_node &boundsnode, unsigned i)
- {
- boundsnode.set_attribute_int("x", 0);
- boundsnode.set_attribute_float("y", i * (stdheight + 0.03f));
- });
- generate_view(
- "Top-to-Bottom (Gapless)",
- [stdheight] (util::xml::data_node &boundsnode, unsigned i)
- {
- boundsnode.set_attribute_int("x", 0);
- boundsnode.set_attribute_int("y", i * stdheight);
- });
+ generate_view("Left-to-Right", screens.size(), false, [] (unsigned x, unsigned y) { return x; });
+ generate_view("Left-to-Right (Gapless)", screens.size(), true, [] (unsigned x, unsigned y) { return x; });
+ generate_view("Top-to-Bottom", 1U, false, [] (unsigned x, unsigned y) { return y; });
+ generate_view("Top-to-Bottom (Gapless)", 1U, true, [] (unsigned x, unsigned y) { return y; });
// generate tiled views
- for (unsigned mindim = 2; ((screens + mindim - 1) / mindim) >= mindim; ++mindim)
+ for (unsigned mindim = 2; ((screens.size() + mindim - 1) / mindim) >= mindim; ++mindim)
{
- unsigned const majdim((screens + mindim - 1) / mindim);
- unsigned const remainder(screens % majdim);
+ unsigned const majdim((screens.size() + mindim - 1) / mindim);
+ unsigned const remainder(screens.size() % majdim);
if (!remainder || (((majdim + 1) / 2) <= remainder))
{
generate_view(
util::string_format("%1$u\xC3\x97%2$u Left-to-Right, Top-to-Bottom", majdim, mindim).c_str(),
- [majdim, stdwidth, stdheight] (util::xml::data_node &boundsnode, unsigned i)
+ majdim,
+ false,
+ [&screens, majdim] (unsigned x, unsigned y)
{
- boundsnode.set_attribute_float("x", (i % majdim) * (stdwidth + 0.03f));
- boundsnode.set_attribute_float("y", (i / majdim) * (stdheight + 0.03f));
+ unsigned const i(x + (y * majdim));
+ return (screens.size() > i) ? int(i) : -1;
});
generate_view(
util::string_format("%1$u\xC3\x97%2$u Left-to-Right, Top-to-Bottom (Gapless)", majdim, mindim).c_str(),
- [majdim, stdwidth, stdheight] (util::xml::data_node &boundsnode, unsigned i)
+ majdim,
+ true,
+ [&screens, majdim] (unsigned x, unsigned y)
{
- boundsnode.set_attribute_int("x", (i % majdim) * stdwidth);
- boundsnode.set_attribute_int("y", (i / majdim) * stdheight);
+ unsigned const i(x + (y * majdim));
+ return (screens.size() > i) ? int(i) : -1;
});
generate_view(
util::string_format("%1$u\xC3\x97%2$u Top-to-Bottom, Left-to-Right", mindim, majdim).c_str(),
- [majdim, stdwidth, stdheight] (util::xml::data_node &boundsnode, unsigned i)
+ mindim,
+ false,
+ [&screens, majdim] (unsigned x, unsigned y)
{
- boundsnode.set_attribute_float("x", (i / majdim) * (stdwidth + 0.03f));
- boundsnode.set_attribute_float("y", (i % majdim) * (stdheight + 0.03f));
+ unsigned const i((x * majdim) + y);
+ return (screens.size() > i) ? int(i) : -1;
});
generate_view(
util::string_format("%1$u\xC3\x97%2$u Top-to-Bottom, Left-to-Right (Gapless)", mindim, majdim).c_str(),
- [majdim, stdwidth, stdheight] (util::xml::data_node &boundsnode, unsigned i)
+ mindim,
+ true,
+ [&screens, majdim] (unsigned x, unsigned y)
{
- boundsnode.set_attribute_int("x", (i / majdim) * stdwidth);
- boundsnode.set_attribute_int("y", (i % majdim) * stdheight);
+ unsigned const i((x * majdim) + y);
+ return (screens.size() > i) ? int(i) : -1;
});
}
}
diff --git a/src/emu/rendlay.cpp b/src/emu/rendlay.cpp
index 896391b264e..2c4057501d6 100644
--- a/src/emu/rendlay.cpp
+++ b/src/emu/rendlay.cpp
@@ -40,10 +40,6 @@
// screenless layouts
#include "noscreens.lh"
-// single screen layouts
-#include "horizont.lh"
-#include "vertical.lh"
-
// dual screen layouts
#include "dualhsxs.lh"
#include "dualhovu.lh"
@@ -55,13 +51,6 @@
// quad screen layouts
#include "quadhsxs.lh"
-// LCD screen layouts
-#include "lcd.lh"
-#include "lcd_rot.lh"
-
-// SVG screen layouts
-#include "svg.lh"
-
namespace {
@@ -87,38 +76,6 @@ std::locale const f_portable_locale("C");
//**************************************************************************
//-------------------------------------------------
-// gcd - compute the greatest common divisor (GCD)
-// of two integers using the Euclidean algorithm
-//-------------------------------------------------
-
-template <typename M, typename N>
-constexpr std::common_type_t<M, N> gcd(M a, N b)
-{
- return b ? gcd(b, a % b) : a;
-}
-
-
-//-------------------------------------------------
-// reduce_fraction - reduce a fraction by
-// dividing out common factors
-//-------------------------------------------------
-
-template <typename M, typename N>
-inline void reduce_fraction(M &num, N &den)
-{
- // search the greatest common divisor
- auto const div = gcd(num, den);
-
- // reduce the fraction if a common divisor has been found
- if (div)
- {
- num /= div;
- den /= div;
- }
-}
-
-
-//-------------------------------------------------
// render_bounds_transform - apply translation/
// scaling
//-------------------------------------------------
@@ -430,9 +387,20 @@ private:
unsigned i(0U);
for (screen_device const &screen : screen_device_iterator(machine().root_device()))
{
+ std::pair<u64, u64> const physaspect(screen.physical_aspect());
s64 const w(screen.visible_area().width()), h(screen.visible_area().height());
s64 xaspect(w), yaspect(h);
- reduce_fraction(xaspect, yaspect);
+ util::reduce_fraction(xaspect, yaspect);
+
+ tmp.seekp(0);
+ util::stream_format(tmp, "scr%uphysicalxaspect", i);
+ tmp.put('\0');
+ try_insert(&tmp.vec()[0], s64(physaspect.first));
+
+ tmp.seekp(0);
+ util::stream_format(tmp, "scr%uphysicalyaspect", i);
+ tmp.put('\0');
+ try_insert(&tmp.vec()[0], s64(physaspect.second));
tmp.seekp(0);
util::stream_format(tmp, "scr%unativexaspect", i);
diff --git a/src/emu/rendlay.h b/src/emu/rendlay.h
index e51a783e968..d1de55f73ef 100644
--- a/src/emu/rendlay.h
+++ b/src/emu/rendlay.h
@@ -21,10 +21,6 @@
// no screens layouts
extern const internal_layout layout_noscreens; // for screenless systems
-// single screen layouts
-extern const internal_layout layout_horizont; // horizontal 4:3 screens
-extern const internal_layout layout_vertical; // vertical 4:3 screens
-
// dual screen layouts
extern const internal_layout layout_dualhsxs; // dual 4:3 screens side-by-side
extern const internal_layout layout_dualhovu; // dual 4:3 screens above and below
@@ -36,11 +32,4 @@ extern const internal_layout layout_triphsxs; // triple 4:3 screens side-by-s
// quad screen layouts
extern const internal_layout layout_quadhsxs; // quad 4:3 screens side-by-side
-// LCD screen layouts
-extern const internal_layout layout_lcd; // generic 1:1 lcd screen layout
-extern const internal_layout layout_lcd_rot; // same, for use with ROT90 or ROT270
-
-// SVG screen layouts
-extern const internal_layout layout_svg; // generic 1:1 lcd screen layout
-
#endif // MAME_EMU_RENDLAY_H
diff --git a/src/emu/save.h b/src/emu/save.h
index 4559d230b96..9097c195dec 100644
--- a/src/emu/save.h
+++ b/src/emu/save.h
@@ -17,6 +17,8 @@
#ifndef MAME_EMU_SAVE_H
#define MAME_EMU_SAVE_H
+#include <array>
+
//**************************************************************************
@@ -86,6 +88,29 @@ class rewinder;
class save_manager
{
+ // stuff for working with arrays
+ template <typename T> struct array_unwrap
+ {
+ using underlying_type = T;
+ static constexpr std::size_t COUNT = 1U;
+ static constexpr std::size_t SIZE = sizeof(underlying_type);
+ static underlying_type *ptr(T &value) { return &value; }
+ };
+ template <typename T, std::size_t N> struct array_unwrap<T[N]>
+ {
+ using underlying_type = typename array_unwrap<T>::underlying_type;
+ static constexpr std::size_t COUNT = N * array_unwrap<T>::COUNT;
+ static constexpr std::size_t SIZE = sizeof(underlying_type);
+ static underlying_type *ptr(T (&value)[N]) { return array_unwrap<T>::ptr(value[0]); }
+ };
+ template <typename T, std::size_t N> struct array_unwrap<std::array<T, N> >
+ {
+ using underlying_type = typename array_unwrap<T>::underlying_type;
+ static constexpr std::size_t COUNT = N * array_unwrap<T>::COUNT;
+ static constexpr std::size_t SIZE = sizeof(underlying_type);
+ static underlying_type *ptr(std::array<T, N> &value) { return array_unwrap<T>::ptr(value[0]); }
+ };
+
// type_checker is a set of templates to identify valid save types
template<typename ItemType> struct type_checker { static const bool is_atom = false; static const bool is_pointer = false; };
template<typename ItemType> struct type_checker<ItemType*> { static const bool is_atom = false; static const bool is_pointer = true; };
@@ -118,45 +143,33 @@ public:
// generic memory registration
void save_memory(device_t *device, const char *module, const char *tag, u32 index, const char *name, void *val, u32 valsize, u32 valcount = 1);
- // templatized wrapper for general objects
+ // templatized wrapper for general objects and arrays
template<typename ItemType>
void save_item(device_t *device, const char *module, const char *tag, int index, ItemType &value, const char *valname)
{
- if (type_checker<ItemType>::is_pointer) throw emu_fatalerror("Called save_item on a pointer with no count!");
- if (!type_checker<ItemType>::is_atom) throw emu_fatalerror("Called save_item on a non-fundamental type!");
- save_memory(device, module, tag, index, valname, &value, sizeof(ItemType));
- }
-
- // templatized wrapper for 1-dimensional arrays
- template<typename ItemType, std::size_t N>
- void save_item(device_t *device, const char *module, const char *tag, int index, ItemType (&value)[N], const char *valname)
- {
- if (!type_checker<ItemType>::is_atom) throw emu_fatalerror("Called save_item on a non-fundamental type!");
- save_memory(device, module, tag, index, valname, &value[0], sizeof(ItemType), N);
- }
-
- // templatized wrapper for 2-dimensional arrays
- template<typename ItemType, std::size_t M, std::size_t N>
- void save_item(device_t *device, const char *module, const char *tag, int index, ItemType (&value)[M][N], const char *valname)
- {
- if (!type_checker<ItemType>::is_atom) throw emu_fatalerror("Called save_item on a non-fundamental type!");
- save_memory(device, module, tag, index, valname, &value[0][0], sizeof(ItemType), M * N);
+ if (type_checker<ItemType>::is_pointer)
+ throw emu_fatalerror("Called save_item on a pointer with no count!");
+ if (!type_checker<typename array_unwrap<ItemType>::underlying_type>::is_atom)
+ throw emu_fatalerror("Called save_item on a non-fundamental type!");
+ save_memory(device, module, tag, index, valname, array_unwrap<ItemType>::ptr(value), array_unwrap<ItemType>::SIZE, array_unwrap<ItemType>::COUNT);
}
// templatized wrapper for pointers
template<typename ItemType>
void save_pointer(device_t *device, const char *module, const char *tag, int index, ItemType *value, const char *valname, u32 count)
{
- if (!type_checker<ItemType>::is_atom) throw emu_fatalerror("Called save_item on a non-fundamental type!");
- save_memory(device, module, tag, index, valname, value, sizeof(ItemType), count);
+ if (!type_checker<typename array_unwrap<ItemType>::underlying_type>::is_atom)
+ throw emu_fatalerror("Called save_item on a non-fundamental type!");
+ save_memory(device, module, tag, index, valname, array_unwrap<ItemType>::ptr(value[0]), array_unwrap<ItemType>::SIZE, array_unwrap<ItemType>::COUNT * count);
}
// templatized wrapper for std::unique_ptr
template<typename ItemType>
void save_pointer(device_t *device, const char *module, const char *tag, int index, std::unique_ptr<ItemType[]> &value, const char *valname, u32 count)
{
- if (!type_checker<ItemType>::is_atom) throw emu_fatalerror("Called save_item on a non-fundamental type!");
- save_memory(device, module, tag, index, valname, value.get(), sizeof(ItemType), count);
+ if (!type_checker<typename array_unwrap<ItemType>::underlying_type>::is_atom)
+ throw emu_fatalerror("Called save_item on a non-fundamental type!");
+ save_memory(device, module, tag, index, valname, array_unwrap<ItemType>::ptr(value[0]), array_unwrap<ItemType>::SIZE, array_unwrap<ItemType>::COUNT * count);
}
// global memory registration
diff --git a/src/emu/screen.cpp b/src/emu/screen.cpp
index 00a1a6435e7..26ef04c43ce 100644
--- a/src/emu/screen.cpp
+++ b/src/emu/screen.cpp
@@ -546,43 +546,45 @@ void screen_device::svg_renderer::rebuild_cache()
//-------------------------------------------------
screen_device::screen_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
- : device_t(mconfig, SCREEN, tag, owner, clock),
- m_type(SCREEN_TYPE_RASTER),
- m_oldstyle_vblank_supplied(false),
- m_refresh(0),
- m_vblank(0),
- m_xoffset(0.0f),
- m_yoffset(0.0f),
- m_xscale(1.0f),
- m_yscale(1.0f),
- m_screen_vblank(*this),
- m_palette(*this, finder_base::DUMMY_TAG),
- m_video_attributes(0),
- m_svg_region(nullptr),
- m_container(nullptr),
- m_width(100),
- m_height(100),
- m_visarea(0, 99, 0, 99),
- m_texformat(),
- m_curbitmap(0),
- m_curtexture(0),
- m_changed(true),
- m_last_partial_scan(0),
- m_partial_scan_hpos(0),
- m_color(rgb_t(0xff, 0xff, 0xff, 0xff)),
- m_brightness(0xff),
- m_frame_period(DEFAULT_FRAME_PERIOD.as_attoseconds()),
- m_scantime(1),
- m_pixeltime(1),
- m_vblank_period(0),
- m_vblank_start_time(attotime::zero),
- m_vblank_end_time(attotime::zero),
- m_vblank_begin_timer(nullptr),
- m_vblank_end_timer(nullptr),
- m_scanline0_timer(nullptr),
- m_scanline_timer(nullptr),
- m_frame_number(0),
- m_partial_updates_this_frame(0)
+ : device_t(mconfig, SCREEN, tag, owner, clock)
+ , m_type(SCREEN_TYPE_RASTER)
+ , m_orientation(ROT0)
+ , m_phys_aspect(0U, 0U)
+ , m_oldstyle_vblank_supplied(false)
+ , m_refresh(0)
+ , m_vblank(0)
+ , m_xoffset(0.0f)
+ , m_yoffset(0.0f)
+ , m_xscale(1.0f)
+ , m_yscale(1.0f)
+ , m_screen_vblank(*this)
+ , m_palette(*this, finder_base::DUMMY_TAG)
+ , m_video_attributes(0)
+ , m_svg_region(nullptr)
+ , m_container(nullptr)
+ , m_width(100)
+ , m_height(100)
+ , m_visarea(0, 99, 0, 99)
+ , m_texformat()
+ , m_curbitmap(0)
+ , m_curtexture(0)
+ , m_changed(true)
+ , m_last_partial_scan(0)
+ , m_partial_scan_hpos(0)
+ , m_color(rgb_t(0xff, 0xff, 0xff, 0xff))
+ , m_brightness(0xff)
+ , m_frame_period(DEFAULT_FRAME_PERIOD.as_attoseconds())
+ , m_scantime(1)
+ , m_pixeltime(1)
+ , m_vblank_period(0)
+ , m_vblank_start_time(attotime::zero)
+ , m_vblank_end_time(attotime::zero)
+ , m_vblank_begin_timer(nullptr)
+ , m_vblank_end_timer(nullptr)
+ , m_scanline0_timer(nullptr)
+ , m_scanline_timer(nullptr)
+ , m_frame_number(0)
+ , m_partial_updates_this_frame(0)
{
m_unique_id = m_id_counter;
m_id_counter++;
@@ -646,6 +648,48 @@ void screen_device::device_validity_check(validity_checker &valid) const
//-------------------------------------------------
+// device_config_complete - finalise static
+// configuration
+//-------------------------------------------------
+
+void screen_device::device_config_complete()
+{
+ // combine orientation with machine orientation
+ m_orientation = orientation_add(m_orientation, mconfig().gamedrv().flags & machine_flags::MASK_ORIENTATION);
+
+ // physical aspect ratio unconfigured
+ if (!m_phys_aspect.first || !m_phys_aspect.second)
+ {
+ switch (m_type)
+ {
+ case SCREEN_TYPE_RASTER:
+ case SCREEN_TYPE_VECTOR:
+ m_phys_aspect = std::make_pair(4, 3); // assume standard CRT
+ break;
+ case SCREEN_TYPE_LCD:
+ case SCREEN_TYPE_SVG:
+ m_phys_aspect = std::make_pair(~0U, ~0U); // assume square pixels
+ break;
+ case SCREEN_TYPE_INVALID:
+ default:
+ throw emu_fatalerror("%s: invalid screen type configured\n", tag());
+ }
+ }
+
+ // square pixels?
+ if ((~0U == m_phys_aspect.first) && (~0U == m_phys_aspect.second))
+ {
+ m_phys_aspect.first = visible_area().width();
+ m_phys_aspect.second = visible_area().height();
+ }
+
+ // always keep this in reduced form
+ util::reduce_fraction(m_phys_aspect.first, m_phys_aspect.second);
+}
+
+
+
+//-------------------------------------------------
// device_resolve_objects - resolve objects that
// may be needed for other devices to set
// initial conditions at start time
@@ -674,17 +718,14 @@ void screen_device::device_start()
{
memory_region *reg = owner()->memregion(m_svg_region);
if (!reg)
- fatalerror("SVG region \"%s\" does not exist\n", m_svg_region);
+ fatalerror("%s: SVG region \"%s\" does not exist\n", tag(), m_svg_region);
m_svg = std::make_unique<svg_renderer>(reg);
machine().output().set_notifier(nullptr, svg_renderer::output_notifier, m_svg.get());
- if (0)
- {
- // The osd picks up the size before start is called, so that's useless
- m_width = m_svg->width();
- m_height = m_svg->height();
- m_visarea.set(0, m_width-1, 0, m_height-1);
- }
+ // The OSD picks up the size before start is called, so this only affect the info display if it's called up in-game
+ m_width = m_svg->width();
+ m_height = m_svg->height();
+ m_visarea.set(0, m_width-1, 0, m_height-1);
}
// if we have a palette and it's not started, wait for it
diff --git a/src/emu/screen.h b/src/emu/screen.h
index 27ac6d421be..4d0fddf17ef 100644
--- a/src/emu/screen.h
+++ b/src/emu/screen.h
@@ -173,7 +173,7 @@ public:
screen_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
screen_device(const machine_config &mconfig, const char *tag, device_t *owner, screen_type_enum type)
- : screen_device(mconfig, tag, owner, (u32)0)
+ : screen_device(mconfig, tag, owner, u32(0))
{
set_type(type);
}
@@ -181,6 +181,8 @@ public:
// configuration readers
screen_type_enum screen_type() const { return m_type; }
+ int orientation() const { assert(configured()); return m_orientation; }
+ std::pair<unsigned, unsigned> physical_aspect() const { assert(configured()); return m_phys_aspect; }
int width() const { return m_width; }
int height() const { return m_height; }
const rectangle &visible_area() const { return m_visarea; }
@@ -196,7 +198,10 @@ public:
bool have_screen_update() const { return !m_screen_update_ind16.isnull() && !m_screen_update_rgb32.isnull(); }
// inline configuration helpers
- void set_type(screen_type_enum type) { m_type = type; }
+ void set_type(screen_type_enum type) { assert(!configured()); m_type = type; }
+ void set_orientation(int orientation) { assert(!configured()); m_orientation = orientation; }
+ void set_physical_aspect(unsigned x, unsigned y) { assert(!configured()); m_phys_aspect = std::make_pair(x, y); }
+ void set_native_aspect() { assert(!configured()); m_phys_aspect = std::make_pair(~0U, ~0U); }
void set_raw(u32 pixclock, u16 htotal, u16 hbend, u16 hbstart, u16 vtotal, u16 vbend, u16 vbstart)
{
m_clock = pixclock;
@@ -317,6 +322,7 @@ private:
// device-level overrides
virtual void device_validity_check(validity_checker &valid) const override;
+ virtual void device_config_complete() override;
virtual void device_resolve_objects() override;
virtual void device_start() override;
virtual void device_reset() override;
@@ -334,6 +340,8 @@ private:
// inline configuration data
screen_type_enum m_type; // type of screen
+ int m_orientation; // orientation flags combined with system flags
+ std::pair<unsigned, unsigned> m_phys_aspect; // physical aspect ratio
bool m_oldstyle_vblank_supplied; // MCFG_SCREEN_VBLANK_TIME macro used
attoseconds_t m_refresh; // default refresh period
attoseconds_t m_vblank; // duration of a VBLANK
diff --git a/src/frontend/mame/info.cpp b/src/frontend/mame/info.cpp
index f4e1a01ca68..3e7af8a43c5 100644
--- a/src/frontend/mame/info.cpp
+++ b/src/frontend/mame/info.cpp
@@ -896,35 +896,32 @@ void info_xml_creator::output_display(device_t &device, machine_flags::type cons
}
// output the orientation as a string
- if (flags)
+ switch (screendev.orientation())
{
- switch (*flags & machine_flags::MASK_ORIENTATION)
- {
- case ORIENTATION_FLIP_X:
- fprintf(m_output, " rotate=\"0\" flipx=\"yes\"");
- break;
- case ORIENTATION_FLIP_Y:
- fprintf(m_output, " rotate=\"180\" flipx=\"yes\"");
- break;
- case ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y:
- fprintf(m_output, " rotate=\"180\"");
- break;
- case ORIENTATION_SWAP_XY:
- fprintf(m_output, " rotate=\"90\" flipx=\"yes\"");
- break;
- case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X:
- fprintf(m_output, " rotate=\"90\"");
- break;
- case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_Y:
- fprintf(m_output, " rotate=\"270\"");
- break;
- case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y:
- fprintf(m_output, " rotate=\"270\" flipx=\"yes\"");
- break;
- default:
- fprintf(m_output, " rotate=\"0\"");
- break;
- }
+ case ORIENTATION_FLIP_X:
+ fprintf(m_output, " rotate=\"0\" flipx=\"yes\"");
+ break;
+ case ORIENTATION_FLIP_Y:
+ fprintf(m_output, " rotate=\"180\" flipx=\"yes\"");
+ break;
+ case ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y:
+ fprintf(m_output, " rotate=\"180\"");
+ break;
+ case ORIENTATION_SWAP_XY:
+ fprintf(m_output, " rotate=\"90\" flipx=\"yes\"");
+ break;
+ case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X:
+ fprintf(m_output, " rotate=\"90\"");
+ break;
+ case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_Y:
+ fprintf(m_output, " rotate=\"270\"");
+ break;
+ case ORIENTATION_SWAP_XY|ORIENTATION_FLIP_X|ORIENTATION_FLIP_Y:
+ fprintf(m_output, " rotate=\"270\" flipx=\"yes\"");
+ break;
+ default:
+ fprintf(m_output, " rotate=\"0\"");
+ break;
}
// output width and height only for games that are not vector
diff --git a/src/frontend/mame/luaengine.cpp b/src/frontend/mame/luaengine.cpp
index edc56ee13b9..894767e0838 100644
--- a/src/frontend/mame/luaengine.cpp
+++ b/src/frontend/mame/luaengine.cpp
@@ -1782,7 +1782,7 @@ void lua_engine::initialize()
"height", [](screen_device &sdev) { return sdev.visible_area().height(); },
"width", [](screen_device &sdev) { return sdev.visible_area().width(); },
"orientation", [](screen_device &sdev) {
- uint32_t flags = sdev.machine().system().flags & machine_flags::MASK_ORIENTATION;
+ uint32_t flags = sdev.orientation();
int rotation_angle = 0;
switch (flags)
{
diff --git a/src/frontend/mame/ui/devopt.cpp b/src/frontend/mame/ui/devopt.cpp
index 562bcc26e2c..2c1ddd9aebd 100644
--- a/src/frontend/mame/ui/devopt.cpp
+++ b/src/frontend/mame/ui/devopt.cpp
@@ -32,6 +32,9 @@ void menu_device_config::populate(float &customtop, float &custombottom)
machine_config &mconfig(const_cast<machine_config &>(machine().config()));
machine_config::token const tok(mconfig.begin_configuration(mconfig.root_device()));
device_t *const dev = mconfig.device_add(m_option->name(), m_option->devtype(), 0);
+ for (device_t &d : device_iterator(*dev))
+ if (!d.configured())
+ d.config_complete();
std::ostringstream str;
util::stream_format(
@@ -96,7 +99,7 @@ void menu_device_config::populate(float &customtop, float &custombottom)
util::stream_format(
str,
- (machine().system().flags & ORIENTATION_SWAP_XY)
+ (screen.orientation() & ORIENTATION_SWAP_XY)
? _(" Screen '%1$s': %2$d \xC3\x97 %3$d (V) %4$f\xC2\xA0Hz\n")
: _(" Screen '%1$s': %2$d \xC3\x97 %3$d (H) %4$f\xC2\xA0Hz\n"),
screen.tag(),
diff --git a/src/frontend/mame/ui/info.cpp b/src/frontend/mame/ui/info.cpp
index fde44227ea3..4a39bc050f5 100644
--- a/src/frontend/mame/ui/info.cpp
+++ b/src/frontend/mame/ui/info.cpp
@@ -385,7 +385,7 @@ std::string machine_info::game_info_string() const
const rectangle &visarea = screen.visible_area();
detail = string_format("%d " UTF8_MULTIPLY " %d (%s) %f" UTF8_NBSP "Hz",
visarea.width(), visarea.height(),
- (m_machine.system().flags & ORIENTATION_SWAP_XY) ? "V" : "H",
+ (screen.orientation() & ORIENTATION_SWAP_XY) ? "V" : "H",
ATTOSECONDS_TO_HZ(screen.frame_period().attoseconds()));
}
diff --git a/src/lib/util/avhuff.h b/src/lib/util/avhuff.h
index 9d00ed423e6..90ef43e977f 100644
--- a/src/lib/util/avhuff.h
+++ b/src/lib/util/avhuff.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_AVHUFF_H
+#define MAME_UTIL_AVHUFF_H
-#ifndef __AVHUFF_H__
-#define __AVHUFF_H__
+#pragma once
#include "osdcore.h"
#include "coretmpl.h"
@@ -198,5 +198,4 @@ private:
#endif
};
-
-#endif
+#endif // MAME_UTIL_AVHUFF_H
diff --git a/src/lib/util/bitstream.h b/src/lib/util/bitstream.h
index 0056c4ce38e..3da6ec2c1cf 100644
--- a/src/lib/util/bitstream.h
+++ b/src/lib/util/bitstream.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_BITSTREAM_H
+#define MAME_UTIL_BITSTREAM_H
-#ifndef __BITSTREAM_H__
-#define __BITSTREAM_H__
+#pragma once
#include "osdcore.h"
@@ -238,5 +238,4 @@ inline uint32_t bitstream_out::flush()
return m_doffset;
}
-
-#endif
+#endif // MAME_UTIL_BITSTREAM_H
diff --git a/src/lib/util/cdrom.h b/src/lib/util/cdrom.h
index 8dd841b3459..50b762d5009 100644
--- a/src/lib/util/cdrom.h
+++ b/src/lib/util/cdrom.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_CDROM_H
+#define MAME_UTIL_CDROM_H
-#ifndef __CDROM_H__
-#define __CDROM_H__
+#pragma once
#include "osdcore.h"
#include "chd.h"
@@ -179,7 +179,4 @@ static inline uint32_t lba_to_msf_alt(int lba)
return ret;
}
-
-
-
-#endif // __CDROM_H__
+#endif // MAME_UTIL_CDROM_H
diff --git a/src/lib/util/chd.h b/src/lib/util/chd.h
index a85ae1b9c10..254a99daae1 100644
--- a/src/lib/util/chd.h
+++ b/src/lib/util/chd.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_CHD_H
+#define MAME_UTIL_CHD_H
-#ifndef __CHD_H__
-#define __CHD_H__
+#pragma once
#include "osdcore.h"
#include "coretmpl.h"
@@ -580,5 +580,4 @@ private:
uint32_t m_write_hunk; // next hunk to write
};
-
-#endif // __CHD_H__
+#endif // MAME_UTIL_CHD_H
diff --git a/src/lib/util/chdcd.h b/src/lib/util/chdcd.h
index 3f31bad7e00..65e4b943964 100644
--- a/src/lib/util/chdcd.h
+++ b/src/lib/util/chdcd.h
@@ -6,10 +6,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_CHDCD_H
+#define MAME_UTIL_CHDCD_H
-#ifndef __CHDCD_H__
-#define __CHDCD_H__
+#pragma once
#include "cdrom.h"
@@ -35,4 +35,4 @@ struct chdcd_track_input_info
chd_error chdcd_parse_toc(const char *tocfname, cdrom_toc &outtoc, chdcd_track_input_info &outinfo);
-#endif /* __CHDCD_H__ */
+#endif // MAME_UTIL_CHDCD_H
diff --git a/src/lib/util/chdcodec.h b/src/lib/util/chdcodec.h
index 899b5363592..e688b41a108 100644
--- a/src/lib/util/chdcodec.h
+++ b/src/lib/util/chdcodec.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_CHDCODEC_H
+#define MAME_UTIL_CHDCODEC_H
-#ifndef __CHDCODEC_H__
-#define __CHDCODEC_H__
+#pragma once
#include "osdcore.h"
#include "coretmpl.h"
@@ -190,5 +190,4 @@ enum
AVHUFF_CODEC_DECOMPRESS_CONFIG = 1
};
-
-#endif // __CHDCODEC_H__
+#endif // MAME_UTIL_CHDCODEC_H
diff --git a/src/lib/util/corestr.h b/src/lib/util/corestr.h
index 4df0a5ae812..d7734d50b29 100644
--- a/src/lib/util/corestr.h
+++ b/src/lib/util/corestr.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_CORESTR_H
+#define MAME_UTIL_CORESTR_H
-#ifndef __CORESTR_H__
-#define __CORESTR_H__
+#pragma once
#include "osdcore.h"
#include "strformat.h"
@@ -64,4 +64,4 @@ std::string &strmakeupper(std::string& str);
std::string &strmakelower(std::string& str);
int strreplace(std::string &str, const std::string& search, const std::string& replace);
-#endif /* __CORESTR_H__ */
+#endif // MAME_UTIL_CORESTR_H
diff --git a/src/lib/util/coretmpl.h b/src/lib/util/coretmpl.h
index 08c3a6b8678..4b3b05bf274 100644
--- a/src/lib/util/coretmpl.h
+++ b/src/lib/util/coretmpl.h
@@ -990,6 +990,26 @@ constexpr std::enable_if_t<std::is_signed<T>::value, T> iabs(T v) noexcept
return (v < T(0)) ? -v : v;
}
+
+// returns greatest common divisor of a and b using the Euclidean algorithm
+template <typename M, typename N>
+constexpr std::common_type_t<M, N> euclid_gcd(M a, N b)
+{
+ return b ? euclid_gcd(b, a % b) : a;
+}
+
+// reduce a fraction
+template <typename M, typename N>
+inline void reduce_fraction(M &num, N &den)
+{
+ auto const div(euclid_gcd(num, den));
+ if (div)
+ {
+ num /= div;
+ den /= div;
+ }
+}
+
}; // namespace util
#endif // MAME_UTIL_CORETMPL_H
diff --git a/src/lib/util/coreutil.h b/src/lib/util/coreutil.h
index 0a584c4a39e..cf5106f953d 100644
--- a/src/lib/util/coreutil.h
+++ b/src/lib/util/coreutil.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_COREUTIL_H
+#define MAME_UTIL_COREUTIL_H
-#ifndef __COREUTIL_H__
-#define __COREUTIL_H__
+#pragma once
#include "osdcomm.h"
@@ -81,4 +81,4 @@ void rand_memory(void *memory, size_t length);
uint32_t core_crc32(uint32_t crc, const uint8_t *buf, uint32_t len);
-#endif /* __COREUTIL_H__ */
+#endif // MAME_UTIL_COREUTIL_H
diff --git a/src/lib/util/delegate.h b/src/lib/util/delegate.h
index f8e23faf57d..e4b870ed06d 100644
--- a/src/lib/util/delegate.h
+++ b/src/lib/util/delegate.h
@@ -73,10 +73,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_DELEGATE_H
+#define MAME_UTIL_DELEGATE_H
-#ifndef __DELEGATE_H__
-#define __DELEGATE_H__
+#pragma once
// standard C++ includes
#include <cstring>
@@ -619,5 +619,4 @@ public:
delegate &operator=(const basetype &src) { *static_cast<basetype *>(this) = src; return *this; }
};
-
-#endif /* __DELEGATE_H__ */
+#endif // MAME_UTIL_DELEGATE_H
diff --git a/src/lib/util/flac.h b/src/lib/util/flac.h
index f5951945b07..20e3f1b9378 100644
--- a/src/lib/util/flac.h
+++ b/src/lib/util/flac.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_FLAC_H
+#define MAME_UTIL_FLAC_H
-#ifndef __FLAC_H__
-#define __FLAC_H__
+#pragma once
#include "osdcore.h"
#include "corefile.h"
@@ -126,20 +126,19 @@ private:
// output state
FLAC__StreamDecoder * m_decoder; // actual encoder
util::core_file * m_file; // output file
- uint32_t m_sample_rate; // decoded sample rate
- uint8_t m_channels; // decoded number of channels
- uint8_t m_bits_per_sample; // decoded bits per sample
- uint32_t m_compressed_offset; // current offset in compressed data
+ uint32_t m_sample_rate; // decoded sample rate
+ uint8_t m_channels; // decoded number of channels
+ uint8_t m_bits_per_sample; // decoded bits per sample
+ uint32_t m_compressed_offset; // current offset in compressed data
const FLAC__byte * m_compressed_start; // start of compressed data
- uint32_t m_compressed_length; // length of compressed data
+ uint32_t m_compressed_length; // length of compressed data
const FLAC__byte * m_compressed2_start; // start of compressed data
- uint32_t m_compressed2_length; // length of compressed data
- int16_t * m_uncompressed_start[8];// pointer to start of uncompressed data (up to 8 streams)
- uint32_t m_uncompressed_offset; // current position in uncompressed data
- uint32_t m_uncompressed_length; // length of uncompressed data
+ uint32_t m_compressed2_length; // length of compressed data
+ int16_t * m_uncompressed_start[8];// pointer to start of uncompressed data (up to 8 streams)
+ uint32_t m_uncompressed_offset; // current position in uncompressed data
+ uint32_t m_uncompressed_length; // length of uncompressed data
bool m_uncompressed_swap; // swap uncompressed sample data
- uint8_t m_custom_header[0x2a]; // custom header
+ uint8_t m_custom_header[0x2a]; // custom header
};
-
-#endif // __FLAC_H__
+#endif // MAME_UTIL_FLAC_H
diff --git a/src/lib/util/harddisk.h b/src/lib/util/harddisk.h
index 727f9a3fd07..c0551703ca7 100644
--- a/src/lib/util/harddisk.h
+++ b/src/lib/util/harddisk.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_HARDDISK_H
+#define MAME_UTIL_HARDDISK_H
-#ifndef __HARDDISK_H__
-#define __HARDDISK_H__
+#pragma once
#include "osdcore.h"
#include "chd.h"
@@ -46,4 +46,4 @@ hard_disk_info *hard_disk_get_info(hard_disk_file *file);
uint32_t hard_disk_read(hard_disk_file *file, uint32_t lbasector, void *buffer);
uint32_t hard_disk_write(hard_disk_file *file, uint32_t lbasector, const void *buffer);
-#endif /* __HARDDISK_H__ */
+#endif // MAME_UTIL_HARDDISK_H
diff --git a/src/lib/util/hash.h b/src/lib/util/hash.h
index 23c8702958e..cb87f3f8b3c 100644
--- a/src/lib/util/hash.h
+++ b/src/lib/util/hash.h
@@ -10,10 +10,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_HASH_H
+#define MAME_UTIL_HASH_H
-#ifndef __HASH_H__
-#define __HASH_H__
+#pragma once
#include "hashing.h"
@@ -119,4 +119,4 @@ private:
} // namespace util
-#endif /* __HASH_H__ */
+#endif // MAME_UTIL_HASH_H
diff --git a/src/lib/util/hashing.h b/src/lib/util/hashing.h
index 5e9c9134c97..b1505c654a4 100644
--- a/src/lib/util/hashing.h
+++ b/src/lib/util/hashing.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_HASHING_H
+#define MAME_UTIL_HASHING_H
-#ifndef __HASHING_H__
-#define __HASHING_H__
+#pragma once
#include "osdcore.h"
#include "corestr.h"
@@ -260,4 +260,4 @@ template <> struct hash<::util::crc16_t>
} // namespace std
-#endif // __HASHING_H__
+#endif // MAME_UTIL_HASHING_H
diff --git a/src/lib/util/huffman.h b/src/lib/util/huffman.h
index 2814eb127dd..0eac393f380 100644
--- a/src/lib/util/huffman.h
+++ b/src/lib/util/huffman.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_HUFFMAN_H
+#define MAME_UTIL_HUFFMAN_H
-#ifndef __HUFFMAN_H__
-#define __HUFFMAN_H__
+#pragma once
#include "osdcore.h"
#include "bitstream.h"
@@ -219,5 +219,4 @@ inline uint32_t huffman_decoder<_NumCodes, _MaxBits>::decode_one(bitstream_in &b
return lookup >> 5;
}
-
-#endif
+#endif // MAME_UTIL_HUFFMAN_H
diff --git a/src/lib/util/jedparse.h b/src/lib/util/jedparse.h
index e2eca46b236..f12101ca154 100644
--- a/src/lib/util/jedparse.h
+++ b/src/lib/util/jedparse.h
@@ -8,8 +8,10 @@
***************************************************************************/
-#ifndef __JEDPARSE_H__
-#define __JEDPARSE_H__
+#ifndef MAME_UTIL_JEDPARSE_H
+#define MAME_UTIL_JEDPARSE_H
+
+#pragma once
#include "osdcore.h"
@@ -84,4 +86,4 @@ static inline void jed_set_fuse(jed_data *data, uint32_t fusenum, uint8_t value)
}
}
-#endif /* __JEDPARSE_H__ */
+#endif // MAME_UTIL_JEDPARSE_H
diff --git a/src/lib/util/opresolv.h b/src/lib/util/opresolv.h
index 1b1bc692118..52030dc4336 100644
--- a/src/lib/util/opresolv.h
+++ b/src/lib/util/opresolv.h
@@ -38,8 +38,10 @@
****************************************************************************/
-#ifndef __OPRESOLV_H__
-#define __OPRESOLV_H__
+#ifndef MAME_UTIL_OPRESOLV_H
+#define MAME_UTIL_OPRESOLV_H
+
+#pragma once
#include <stdlib.h>
#include <vector>
@@ -271,4 +273,4 @@ private:
} // namespace util
-#endif /* __OPRESOLV_H__ */
+#endif // MAME_UTIL_OPRESOLV_H
diff --git a/src/lib/util/palette.h b/src/lib/util/palette.h
index 8febfe39764..ff2c7bb80c9 100644
--- a/src/lib/util/palette.h
+++ b/src/lib/util/palette.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_PALETTE_H
+#define MAME_UTIL_PALETTE_H
-#ifndef __PALETTE_H__
-#define __PALETTE_H__
+#pragma once
#include "osdcore.h"
#include "coretmpl.h"
@@ -278,5 +278,4 @@ inline rgb_t pal555(uint32_t data, uint8_t rshift, uint8_t gshift, uint8_t bshif
inline rgb_t pal565(uint32_t data, uint8_t rshift, uint8_t gshift, uint8_t bshift) { return rgbexpand<5,6,5>(data, rshift, gshift, bshift); }
inline rgb_t pal888(uint32_t data, uint8_t rshift, uint8_t gshift, uint8_t bshift) { return rgbexpand<8,8,8>(data, rshift, gshift, bshift); }
-
-#endif // __PALETTE_H__
+#endif // MAME_UTIL_PALETTE_H
diff --git a/src/lib/util/plaparse.h b/src/lib/util/plaparse.h
index e3bfcaf0e2a..b0d3cbbe4e3 100644
--- a/src/lib/util/plaparse.h
+++ b/src/lib/util/plaparse.h
@@ -8,8 +8,10 @@
***************************************************************************/
-#ifndef __PLAPARSE_H__
-#define __PLAPARSE_H__
+#ifndef MAME_UTIL_PLAPARSE_H
+#define MAME_UTIL_PLAPARSE_H
+
+#pragma once
#include "osdcore.h"
#include "jedparse.h"
@@ -22,6 +24,4 @@
/* parse a file (read into memory) into a jed_data structure */
int pla_parse(const void *data, size_t length, jed_data *result);
-
-
-#endif /* __PLAPARSE_H__ */
+#endif // MAME_UTIL_PLAPARSE_H
diff --git a/src/lib/util/pool.h b/src/lib/util/pool.h
index 305fc9c5f51..2d1c5af31a7 100644
--- a/src/lib/util/pool.h
+++ b/src/lib/util/pool.h
@@ -8,8 +8,10 @@
***************************************************************************/
-#ifndef __POOL_H__
-#define __POOL_H__
+#ifndef MAME_UTIL_POOL_H
+#define MAME_UTIL_POOL_H
+
+#pragma once
#include "osdcore.h"
@@ -113,4 +115,4 @@ char *pool_strdup_file_line(object_pool *pool, const char *str, const char *file
bool test_memory_pools(void);
-#endif /* __POOL_H__ */
+#endif // MAME_UTIL_POOL_H
diff --git a/src/lib/util/vbiparse.h b/src/lib/util/vbiparse.h
index 4ccb6a935c4..8113cb5cb32 100644
--- a/src/lib/util/vbiparse.h
+++ b/src/lib/util/vbiparse.h
@@ -8,10 +8,10 @@
***************************************************************************/
-#pragma once
+#ifndef MAME_UTIL_VBIPARSE_H
+#define MAME_UTIL_VBIPARSE_H
-#ifndef __VBIPARSE_H__
-#define __VBIPARSE_H__
+#pragma once
#include "osdcomm.h"
@@ -90,4 +90,4 @@ void vbi_metadata_pack(uint8_t *dest, uint32_t framenum, const vbi_metadata *vbi
void vbi_metadata_unpack(vbi_metadata *vbi, uint32_t *framenum, const uint8_t *source);
-#endif /* __VBIPARSE_H__ */
+#endif // MAME_UTIL_VBIPARSE_H
diff --git a/src/lib/util/wavwrite.h b/src/lib/util/wavwrite.h
index da94a9d3782..8ceb6ad2a0d 100644
--- a/src/lib/util/wavwrite.h
+++ b/src/lib/util/wavwrite.h
@@ -1,9 +1,9 @@
// license:BSD-3-Clause
// copyright-holders:Aaron Giles
-#pragma once
+#ifndef MAME_UTIL_WAVWRITE_H
+#define MAME_UTIL_WAVWRITE_H
-#ifndef __WAVWRITE_H__
-#define __WAVWRITE_H__
+#pragma once
struct wav_file;
@@ -15,4 +15,4 @@ void wav_add_data_32(wav_file *wavptr, int32_t *data, int samples, int shift);
void wav_add_data_16lr(wav_file *wavptr, int16_t *left, int16_t *right, int samples);
void wav_add_data_32lr(wav_file *wavptr, int32_t *left, int32_t *right, int samples, int shift);
-#endif /* __WAVWRITE_H__ */
+#endif // MAME_UTIL_WAVWRITE_H
diff --git a/src/mame/drivers/alesis.cpp b/src/mame/drivers/alesis.cpp
index fb331764ec4..322c9da3f23 100644
--- a/src/mame/drivers/alesis.cpp
+++ b/src/mame/drivers/alesis.cpp
@@ -431,7 +431,6 @@ MACHINE_CONFIG_START(alesis_state::hr16)
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD_MONOCHROME("palette")
MCFG_PALETTE_INIT_OWNER(alesis_state, alesis)
diff --git a/src/mame/drivers/alphasma.cpp b/src/mame/drivers/alphasma.cpp
index 50736a86f61..0b5137f6452 100644
--- a/src/mame/drivers/alphasma.cpp
+++ b/src/mame/drivers/alphasma.cpp
@@ -18,7 +18,6 @@
#include "machine/ram.h"
#include "video/hd44780.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
class alphasmart_state : public driver_device
@@ -458,7 +457,6 @@ MACHINE_CONFIG_START(alphasmart_state::alphasmart)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(alphasmart_state, alphasmart)
- config.set_default_layout(layout_lcd);
MCFG_NVRAM_ADD_0FILL("nvram")
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/alto2.cpp b/src/mame/drivers/alto2.cpp
index 890548e059e..2fcfa30f009 100644
--- a/src/mame/drivers/alto2.cpp
+++ b/src/mame/drivers/alto2.cpp
@@ -290,16 +290,13 @@ MACHINE_CONFIG_START(alto2_state::alto2)
MCFG_DEVICE_IO_MAP(alto2_iomem_map)
// Video hardware
- MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::white())
- MCFG_SCREEN_RAW_PARAMS(XTAL(20'160'000),
- A2_DISP_TOTAL_WIDTH, 0, A2_DISP_WIDTH,
- A2_DISP_TOTAL_HEIGHT, 0, A2_DISP_HEIGHT)
- // Two interlaced fields at 60Hz => 30Hz frame rate
- MCFG_SCREEN_REFRESH_RATE(30)
- MCFG_SCREEN_UPDATE_DEVICE("maincpu", alto2_cpu_device, screen_update)
- MCFG_SCREEN_PALETTE("palette")
-
- config.set_default_layout(layout_vertical);
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_color(rgb_t::white());
+ screen.set_physical_aspect(3, 4); // Portrait CRT
+ screen.set_raw(XTAL(20'160'000), A2_DISP_TOTAL_WIDTH, 0, A2_DISP_WIDTH, A2_DISP_TOTAL_HEIGHT, 0, A2_DISP_HEIGHT);
+ screen.set_refresh_hz(30); // Two interlaced fields at 60Hz => 30Hz frame rate
+ screen.set_screen_update("maincpu", FUNC(alto2_cpu_device::screen_update));
+ screen.set_palette("palette");
MCFG_PALETTE_ADD_MONOCHROME("palette")
diff --git a/src/mame/drivers/bw2.cpp b/src/mame/drivers/bw2.cpp
index 976a5a9131e..1b1a5d2bcc3 100644
--- a/src/mame/drivers/bw2.cpp
+++ b/src/mame/drivers/bw2.cpp
@@ -550,7 +550,6 @@ MACHINE_CONFIG_START(bw2_state::bw2)
MCFG_DEVICE_IO_MAP(bw2_io)
// video hardware
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_ADD(SCREEN_TAG, LCD)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_UPDATE_DEVICE( MSM6255_TAG, msm6255_device, screen_update )
diff --git a/src/mame/drivers/cesclass.cpp b/src/mame/drivers/cesclass.cpp
index 8536ed29e21..98c638a197b 100644
--- a/src/mame/drivers/cesclass.cpp
+++ b/src/mame/drivers/cesclass.cpp
@@ -27,7 +27,6 @@
#include "sound/okim6295.h"
#include "machine/nvram.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -267,7 +266,6 @@ MACHINE_CONFIG_START(cesclassic_state::cesclassic)
MCFG_SCREEN_UPDATE_DRIVER(cesclassic_state, screen_update)
MCFG_SCREEN_SIZE(8*16*2, 8*8+3*8)
MCFG_SCREEN_VISIBLE_AREA(0*8, 8*16*2-1, 0*8, 8*8-1)
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 4)
MCFG_PALETTE_INIT_OWNER(cesclassic_state, cesclassic)
diff --git a/src/mame/drivers/cfx9850.cpp b/src/mame/drivers/cfx9850.cpp
index 8f9007a3740..6aeff5cb610 100644
--- a/src/mame/drivers/cfx9850.cpp
+++ b/src/mame/drivers/cfx9850.cpp
@@ -28,7 +28,6 @@ Debugging information:
#include "emu.h"
#include "cpu/hcd62121/hcd62121.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
class cfx9850_state : public driver_device
@@ -300,8 +299,6 @@ MACHINE_CONFIG_START(cfx9850_state::cfx9850)
MCFG_SCREEN_UPDATE_DRIVER(cfx9850_state, screen_update_cfx9850)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
-
// TODO: Verify amount of colors and palette. Colors can be changed by changing the contrast.
MCFG_PALETTE_ADD("palette", 4)
MCFG_PALETTE_INIT_OWNER(cfx9850_state, cfx9850)
diff --git a/src/mame/drivers/clcd.cpp b/src/mame/drivers/clcd.cpp
index e2e9a1bd457..31cf84c7300 100644
--- a/src/mame/drivers/clcd.cpp
+++ b/src/mame/drivers/clcd.cpp
@@ -24,7 +24,6 @@
#include "machine/nvram.h"
#include "sound/spkrdev.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -815,7 +814,6 @@ MACHINE_CONFIG_START(clcd_state::clcd)
MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 0, 128-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(clcd_state, clcd)
diff --git a/src/mame/drivers/cybiko.cpp b/src/mame/drivers/cybiko.cpp
index c08ec4a387f..e95b97985b0 100644
--- a/src/mame/drivers/cybiko.cpp
+++ b/src/mame/drivers/cybiko.cpp
@@ -22,7 +22,6 @@ ToDo:
#include "includes/cybiko.h"
#include "bus/rs232/rs232.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -401,7 +400,7 @@ MACHINE_CONFIG_START(cybiko_state::cybikov1)
MCFG_H8_SCI_CLK_CALLBACK(WRITELINE("flash1", at45db041_device, sck_w))
// screen
- MCFG_SCREEN_ADD("screen", RASTER)
+ MCFG_SCREEN_ADD("screen", LCD)
MCFG_SCREEN_REFRESH_RATE( 60 )
MCFG_SCREEN_SIZE( hd66421_device::WIDTH, hd66421_device::HEIGHT )
MCFG_SCREEN_VISIBLE_AREA( 0, hd66421_device::WIDTH - 1, 0, hd66421_device::HEIGHT - 1 )
@@ -409,7 +408,6 @@ MACHINE_CONFIG_START(cybiko_state::cybikov1)
MCFG_SCREEN_PALETTE("hd66421:palette")
// video
MCFG_HD66421_ADD("hd66421")
- config.set_default_layout(layout_lcd);
// sound
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("speaker", SPEAKER_SOUND)
diff --git a/src/mame/drivers/deshoros.cpp b/src/mame/drivers/deshoros.cpp
index cbec35e6ab8..99e797a710a 100644
--- a/src/mame/drivers/deshoros.cpp
+++ b/src/mame/drivers/deshoros.cpp
@@ -33,7 +33,6 @@ TODO:
#include "cpu/m6809/m6809.h"
#include "sound/beep.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -280,7 +279,6 @@ MACHINE_CONFIG_START(destiny_state::destiny)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(6*16, 9*2)
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_UPDATE_DRIVER(destiny_state, screen_update_destiny)
MCFG_SCREEN_PALETTE("palette")
diff --git a/src/mame/drivers/fb01.cpp b/src/mame/drivers/fb01.cpp
index 05e77a07e9e..0aa2b148e9a 100644
--- a/src/mame/drivers/fb01.cpp
+++ b/src/mame/drivers/fb01.cpp
@@ -17,7 +17,6 @@
#include "video/hd44780.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -195,7 +194,6 @@ MACHINE_CONFIG_START(fb01_state::fb01)
MCFG_SCREEN_UPDATE_DEVICE("hd44780", hd44780_device, screen_update)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd); // why set layout only to replace?
config.set_default_layout(layout_fb01);
MCFG_PALETTE_ADD("palette", 2)
diff --git a/src/mame/drivers/gamepock.cpp b/src/mame/drivers/gamepock.cpp
index 5c8e8c5fbe5..33c4a697374 100644
--- a/src/mame/drivers/gamepock.cpp
+++ b/src/mame/drivers/gamepock.cpp
@@ -9,7 +9,6 @@
#include "cpu/upd7810/upd7810.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -59,8 +58,6 @@ MACHINE_CONFIG_START(gamepock_state::gamepock)
screen.set_screen_update(FUNC(gamepock_state::screen_update_gamepock));
screen.set_palette("palette");
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD_MONOCHROME("palette")
/* sound hardware */
diff --git a/src/mame/drivers/gb.cpp b/src/mame/drivers/gb.cpp
index eaa2562c7af..49f1a2b4e2a 100644
--- a/src/mame/drivers/gb.cpp
+++ b/src/mame/drivers/gb.cpp
@@ -274,7 +274,6 @@ space. This mapper uses 32KB sized banks.
***************************************************************************/
#include "emu.h"
-#include "rendlay.h"
#include "includes/gb.h"
#include "bus/gameboy/rom.h"
#include "bus/gameboy/mbc.h"
@@ -617,16 +616,14 @@ MACHINE_CONFIG_START(gb_state::gameboy)
MCFG_LR35902_HALT_BUG
/* video hardware */
- MCFG_SCREEN_ADD("screen", LCD)
- MCFG_SCREEN_REFRESH_RATE(DMG_FRAMES_PER_SECOND)
- MCFG_SCREEN_VBLANK_TIME(0)
- MCFG_SCREEN_UPDATE_DEVICE("ppu", dmg_ppu_device, screen_update)
- MCFG_SCREEN_PALETTE("palette")
-
- config.set_default_layout(layout_lcd);
-// MCFG_SCREEN_SIZE(20*8, 18*8)
- MCFG_SCREEN_SIZE( 458, 154 )
- MCFG_SCREEN_VISIBLE_AREA(0*8, 20*8-1, 0*8, 18*8-1)
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD));
+ screen.set_refresh_hz(DMG_FRAMES_PER_SECOND);
+ screen.set_vblank_time(0);
+ screen.set_screen_update("ppu", FUNC(dmg_ppu_device::screen_update));
+ screen.set_palette("palette");
+// screen.set_size(20*8, 18*8);
+ screen.set_size(458, 154);
+ screen.set_visarea(0*8, 20*8-1, 0*8, 18*8-1);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfxdecode_device::empty)
MCFG_PALETTE_ADD("palette", 4)
@@ -660,15 +657,14 @@ MACHINE_CONFIG_START(gb_state::supergb)
MCFG_MACHINE_RESET_OVERRIDE(gb_state, sgb)
/* video hardware */
- MCFG_SCREEN_ADD("screen", LCD)
- MCFG_SCREEN_REFRESH_RATE(SGB_FRAMES_PER_SECOND)
- MCFG_SCREEN_VBLANK_TIME(0)
- MCFG_SCREEN_UPDATE_DEVICE("ppu", dmg_ppu_device, screen_update)
- MCFG_SCREEN_PALETTE("palette")
-
- config.set_default_layout(layout_horizont); /* runs on a TV, not an LCD */
- MCFG_SCREEN_SIZE(32*8, 28*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD));
+ screen.set_physical_aspect(4, 3); // runs on a TV, not an LCD
+ screen.set_refresh_hz(SGB_FRAMES_PER_SECOND);
+ screen.set_vblank_time(0);
+ screen.set_screen_update("ppu", FUNC(dmg_ppu_device::screen_update));
+ screen.set_palette("palette");
+ screen.set_size(32*8, 28*8);
+ screen.set_visarea(0*8, 32*8-1, 0*8, 28*8-1);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfxdecode_device::empty)
MCFG_PALETTE_ADD("palette", 32768)
@@ -701,11 +697,10 @@ MACHINE_CONFIG_START(gb_state::supergb2)
MCFG_MACHINE_RESET_OVERRIDE(gb_state, sgb)
/* video hardware */
- config.set_default_layout(layout_horizont); /* runs on a TV, not an LCD */
-
- MCFG_SCREEN_MODIFY("screen")
- MCFG_SCREEN_SIZE(32*8, 28*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 0*8, 28*8-1)
+ screen_device &screen(*subdevice<screen_device>("screen"));
+ screen.set_physical_aspect(4, 3); // runs on a TV, not an LCD
+ screen.set_size(32*8, 28*8);
+ screen.set_visarea(0*8, 32*8-1, 0*8, 28*8-1);
MCFG_PALETTE_MODIFY("palette")
MCFG_PALETTE_ENTRIES(32768)
@@ -738,16 +733,14 @@ MACHINE_CONFIG_START(gb_state::gbcolor)
MCFG_MACHINE_RESET_OVERRIDE(gb_state,gbc)
/* video hardware */
- MCFG_SCREEN_ADD("screen", LCD)
- MCFG_SCREEN_REFRESH_RATE(DMG_FRAMES_PER_SECOND)
- MCFG_SCREEN_VBLANK_TIME(0)
- MCFG_SCREEN_UPDATE_DEVICE("ppu", dmg_ppu_device, screen_update)
- MCFG_SCREEN_PALETTE("palette")
-
- config.set_default_layout(layout_lcd);
-// MCFG_SCREEN_SIZE(20*8, 18*8)
- MCFG_SCREEN_SIZE( 458, 154 )
- MCFG_SCREEN_VISIBLE_AREA(0*8, 20*8-1, 0*8, 18*8-1)
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD));
+ screen.set_refresh_hz(DMG_FRAMES_PER_SECOND);
+ screen.set_vblank_time(0);
+ screen.set_screen_update("ppu", FUNC(dmg_ppu_device::screen_update));
+ screen.set_palette("palette");
+// screen.set_size(20*8, 18*8);
+ screen.set_size(458, 154);
+ screen.set_visarea(0*8, 20*8-1, 0*8, 18*8-1);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfxdecode_device::empty)
@@ -783,19 +776,17 @@ MACHINE_CONFIG_START(megaduck_state::megaduck)
MCFG_LR35902_HALT_BUG
/* video hardware */
- MCFG_SCREEN_ADD("screen", LCD)
- MCFG_SCREEN_REFRESH_RATE(DMG_FRAMES_PER_SECOND)
- MCFG_SCREEN_VBLANK_TIME(0)
- MCFG_SCREEN_PALETTE("palette")
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_LCD));
+ screen.set_refresh_hz(DMG_FRAMES_PER_SECOND);
+ screen.set_vblank_time(0);
+ screen.set_screen_update("ppu", FUNC(dmg_ppu_device::screen_update));
+ screen.set_palette("palette");
+ screen.set_size(20*8, 18*8);
+ screen.set_visarea(0*8, 20*8-1, 0*8, 18*8-1);
MCFG_MACHINE_START_OVERRIDE(megaduck_state, megaduck)
MCFG_MACHINE_RESET_OVERRIDE(megaduck_state, megaduck)
- MCFG_SCREEN_UPDATE_DEVICE("ppu", dmg_ppu_device, screen_update)
- MCFG_SCREEN_SIZE(20*8, 18*8)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 20*8-1, 0*8, 18*8-1)
-
- config.set_default_layout(layout_lcd);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfxdecode_device::empty)
MCFG_PALETTE_ADD("palette", 4)
diff --git a/src/mame/drivers/gizmondo.cpp b/src/mame/drivers/gizmondo.cpp
index c1fa29da123..b2a215604f7 100644
--- a/src/mame/drivers/gizmondo.cpp
+++ b/src/mame/drivers/gizmondo.cpp
@@ -34,7 +34,6 @@ SYSINTR_GPS = INT_EINT3, INT_EINT8_23 (EINT18)
#include "machine/docg3.h"
#include "machine/s3c2440.h"
#include "video/gf4500.h"
-#include "rendlay.h"
#include "screen.h"
@@ -203,8 +202,6 @@ MACHINE_CONFIG_START(gizmondo_state::gizmondo)
MCFG_SCREEN_VISIBLE_AREA(0, 320 - 1, 0, 240 - 1)
MCFG_SCREEN_UPDATE_DEVICE("gf4500", gf4500_device, screen_update)
- config.set_default_layout(layout_lcd);
-
MCFG_GF4500_ADD("gf4500")
MCFG_DEVICE_ADD("s3c2440", S3C2440, 12000000)
diff --git a/src/mame/drivers/gmaster.cpp b/src/mame/drivers/gmaster.cpp
index 1863f322822..483beef069f 100644
--- a/src/mame/drivers/gmaster.cpp
+++ b/src/mame/drivers/gmaster.cpp
@@ -13,7 +13,6 @@
#include "bus/generic/carts.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -357,7 +356,6 @@ MACHINE_CONFIG_START(gmaster_state::gmaster)
MCFG_PALETTE_ADD("palette", ARRAY_LENGTH(gmaster_palette))
MCFG_PALETTE_INIT_OWNER(gmaster_state, gmaster)
- config.set_default_layout(layout_lcd);
SPEAKER(config, "mono").front_center();
SPEAKER_SOUND(config, m_speaker).add_route(0, "mono", 0.50);
diff --git a/src/mame/drivers/gp32.cpp b/src/mame/drivers/gp32.cpp
index 6235ce7eefd..00fcd718098 100644
--- a/src/mame/drivers/gp32.cpp
+++ b/src/mame/drivers/gp32.cpp
@@ -23,7 +23,6 @@
#include "cpu/arm7/arm7core.h"
#include "sound/volt_reg.h"
-#include "rendlay.h"
#include "softlist.h"
#include "speaker.h"
@@ -1687,9 +1686,6 @@ MACHINE_CONFIG_START(gp32_state::gp32)
MCFG_SCREEN_VISIBLE_AREA(0, 239, 0, 319)
MCFG_SCREEN_UPDATE_DRIVER(gp32_state, screen_update_gp32)
- /* 320x240 is 4:3 but ROT270 causes an aspect ratio of 3:4 by default */
- config.set_default_layout(layout_lcd_rot);
-
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
MCFG_DEVICE_ADD("ldac", DAC_16BIT_R2R_TWOS_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "lspeaker", 1.0) // unknown DAC
diff --git a/src/mame/drivers/gridcomp.cpp b/src/mame/drivers/gridcomp.cpp
index eb6ce77c674..afe2ae7e3b5 100644
--- a/src/mame/drivers/gridcomp.cpp
+++ b/src/mame/drivers/gridcomp.cpp
@@ -77,7 +77,6 @@
#include "sound/spkrdev.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -384,11 +383,10 @@ MACHINE_CONFIG_START(gridcomp_state::grid1101)
MCFG_DEVICE_ADD("speaker", SPEAKER_SOUND)
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "mono", 1.00)
- MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::amber())
+ MCFG_SCREEN_ADD_MONOCHROME("screen", LCD, rgb_t::amber()) // actually a kind of EL display
MCFG_SCREEN_UPDATE_DRIVER(gridcomp_state, screen_update_110x)
MCFG_SCREEN_RAW_PARAMS(XTAL(15'000'000)/2, 424, 0, 320, 262, 0, 240) // XXX 66 Hz refresh
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(I80130_TAG, i80130_device, ir3_w))
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_MONOCHROME("palette")
@@ -628,4 +626,3 @@ COMP( 1984, grid1121, 0, 0, grid1121, gridcomp, gridcomp_state, empt
COMP( 1984, grid1129, grid1121, 0, grid1129, gridcomp, gridcomp_state, empty_init, "GRiD Computers", "Compass II 1129", MACHINE_IS_SKELETON )
COMP( 1984, grid1131, grid1121, 0, grid1131, gridcomp, gridcomp_state, empty_init, "GRiD Computers", "Compass II 1131", MACHINE_IS_SKELETON )
COMP( 1984, grid1139, grid1121, 0, grid1139, gridcomp, gridcomp_state, empty_init, "GRiD Computers", "Compass II 1139", MACHINE_IS_SKELETON )
-
diff --git a/src/mame/drivers/hh_hmcs40.cpp b/src/mame/drivers/hh_hmcs40.cpp
index b2caa7e5aca..3baefb4f54f 100644
--- a/src/mame/drivers/hh_hmcs40.cpp
+++ b/src/mame/drivers/hh_hmcs40.cpp
@@ -95,7 +95,6 @@
#include "machine/gen_latch.h"
#include "machine/timer.h"
#include "sound/spkrdev.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -109,8 +108,8 @@
class hh_hmcs40_state : public driver_device
{
public:
- hh_hmcs40_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ hh_hmcs40_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_audiocpu(*this, "audiocpu"),
m_soundlatch(*this, "soundlatch"),
@@ -445,7 +444,6 @@ MACHINE_CONFIG_START(bambball_state::bambball)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 478)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 478-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -582,7 +580,6 @@ MACHINE_CONFIG_START(bmboxing_state::bmboxing)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 529)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 529-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -706,7 +703,6 @@ MACHINE_CONFIG_START(bfriskyt_state::bfriskyt)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 675)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 675-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -817,7 +813,6 @@ MACHINE_CONFIG_START(packmon_state::packmon)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 766)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 766-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -951,7 +946,6 @@ MACHINE_CONFIG_START(msthawk_state::msthawk)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 696)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 696-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1073,7 +1067,6 @@ MACHINE_CONFIG_START(bzaxxon_state::bzaxxon)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(613, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 613-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1191,7 +1184,6 @@ MACHINE_CONFIG_START(zackman_state::zackman)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(487, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 487-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1319,7 +1311,6 @@ MACHINE_CONFIG_START(bpengo_state::bpengo)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 759)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 759-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1443,7 +1434,6 @@ MACHINE_CONFIG_START(bbtime_state::bbtime)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(379, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 379-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1542,7 +1532,6 @@ MACHINE_CONFIG_START(bdoramon_state::bdoramon)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 668)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 668-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1634,7 +1623,6 @@ MACHINE_CONFIG_START(bultrman_state::bultrman)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 673)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 673-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1724,7 +1712,6 @@ MACHINE_CONFIG_START(machiman_state::machiman)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1534, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1534-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1993,7 +1980,6 @@ MACHINE_CONFIG_START(alnattck_state::alnattck)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 700)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 700-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2123,7 +2109,6 @@ MACHINE_CONFIG_START(cdkong_state::cdkong)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(605, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 605-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2252,7 +2237,6 @@ MACHINE_CONFIG_START(cgalaxn_state::cgalaxn)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(526, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 526-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2374,7 +2358,6 @@ MACHINE_CONFIG_START(cpacman_state::cpacman)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(484, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 484-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2491,7 +2474,6 @@ MACHINE_CONFIG_START(cmspacmn_state::cmspacmn)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(481, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 481-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2753,7 +2735,6 @@ MACHINE_CONFIG_START(egalaxn2_state::egalaxn2)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(505, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 505-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3014,7 +2995,6 @@ MACHINE_CONFIG_START(eturtles_state::eturtles)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(484, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 484-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3123,7 +3103,6 @@ MACHINE_CONFIG_START(estargte_state::estargte)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 854)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 854-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3239,7 +3218,6 @@ MACHINE_CONFIG_START(ghalien_state::ghalien)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 699)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 699-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3366,7 +3344,6 @@ MACHINE_CONFIG_START(gckong_state::gckong)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(506, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 506-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3487,7 +3464,6 @@ MACHINE_CONFIG_START(gdigdug_state::gdigdug)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(476, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 476-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3648,7 +3624,6 @@ MACHINE_CONFIG_START(mwcbaseb_state::mwcbaseb)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 478)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 478-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3738,7 +3713,6 @@ MACHINE_CONFIG_START(pbqbert_state::pbqbert)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(603, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 603-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3859,7 +3833,6 @@ MACHINE_CONFIG_START(kingman_state::kingman)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(374, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 374-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -3980,7 +3953,6 @@ MACHINE_CONFIG_START(tmtron_state::tmtron)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 662)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 662-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -4075,7 +4047,6 @@ MACHINE_CONFIG_START(vinvader_state::vinvader)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(233, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 233-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_hmcs40_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
diff --git a/src/mame/drivers/hh_melps4.cpp b/src/mame/drivers/hh_melps4.cpp
index f600c87b2a8..888d403f791 100644
--- a/src/mame/drivers/hh_melps4.cpp
+++ b/src/mame/drivers/hh_melps4.cpp
@@ -13,7 +13,6 @@
#include "machine/timer.h"
#include "sound/spkrdev.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -23,8 +22,8 @@
class hh_melps4_state : public driver_device
{
public:
- hh_melps4_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ hh_melps4_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_inp_matrix(*this, "IN.%u", 0),
m_out_x(*this, "%u.%u", 0U, 0U),
@@ -311,7 +310,6 @@ MACHINE_CONFIG_START(cfrogger_state::cfrogger)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(500, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 500-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_melps4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -428,7 +426,6 @@ MACHINE_CONFIG_START(gjungler_state::gjungler)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(481, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 481-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_melps4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
diff --git a/src/mame/drivers/hh_sm510.cpp b/src/mame/drivers/hh_sm510.cpp
index 04d5e0fc213..b224001112a 100644
--- a/src/mame/drivers/hh_sm510.cpp
+++ b/src/mame/drivers/hh_sm510.cpp
@@ -297,7 +297,6 @@ MACHINE_CONFIG_START(kdribble_state::kdribble)
MCFG_SCREEN_VISIBLE_AREA(0, 1524-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -370,7 +369,6 @@ MACHINE_CONFIG_START(ktopgun_state::ktopgun)
MCFG_SCREEN_VISIBLE_AREA(0, 1515-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -444,7 +442,6 @@ MACHINE_CONFIG_START(kcontra_state::kcontra)
MCFG_SCREEN_VISIBLE_AREA(0, 1505-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -517,7 +514,6 @@ MACHINE_CONFIG_START(ktmnt_state::ktmnt)
MCFG_SCREEN_VISIBLE_AREA(0, 1505-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -587,7 +583,6 @@ MACHINE_CONFIG_START(kgradius_state::kgradius)
MCFG_SCREEN_VISIBLE_AREA(0, 1420-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -655,7 +650,6 @@ MACHINE_CONFIG_START(kloneran_state::kloneran)
MCFG_SCREEN_VISIBLE_AREA(0, 1497-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -726,7 +720,6 @@ MACHINE_CONFIG_START(kblades_state::kblades)
MCFG_SCREEN_SIZE(1516, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1516-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -799,7 +792,6 @@ MACHINE_CONFIG_START(knfl_state::knfl)
MCFG_SCREEN_SIZE(1449, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1449-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -871,7 +863,6 @@ MACHINE_CONFIG_START(kbilly_state::kbilly)
MCFG_SCREEN_SIZE(1490, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1490-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -937,7 +928,6 @@ MACHINE_CONFIG_START(kbucky_state::kbucky)
MCFG_SCREEN_SIZE(1490, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1490-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1007,7 +997,6 @@ MACHINE_CONFIG_START(kgarfld_state::kgarfld)
MCFG_SCREEN_SIZE(1500, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1500-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1102,7 +1091,6 @@ MACHINE_CONFIG_START(gnw_mmouse_state::gnw_mmouse)
MCFG_SCREEN_VISIBLE_AREA(0, 1711-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1217,7 +1205,6 @@ MACHINE_CONFIG_START(gnw_mickdon_state::gnw_mickdon)
MCFG_SCREEN_VISIBLE_AREA(0, 1920/2-1, 0, 1236/2-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_gnw_dualv);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1301,7 +1288,6 @@ MACHINE_CONFIG_START(gnw_dkong2_state::gnw_dkong2)
MCFG_SCREEN_VISIBLE_AREA(0, 1920/2-1, 0, 1237/2-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_gnw_dualv);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1387,7 +1373,6 @@ MACHINE_CONFIG_START(gnw_mario_state::gnw_mario)
MCFG_SCREEN_VISIBLE_AREA(0, 2261/2-1, 0, 1440/2-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_gnw_dualh);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1474,7 +1459,6 @@ MACHINE_CONFIG_START(gnw_dkjr_state::gnw_dkjr)
MCFG_SCREEN_VISIBLE_AREA(0, 1647-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1556,7 +1540,6 @@ MACHINE_CONFIG_START(gnw_mariocm_state::gnw_mariocm)
MCFG_SCREEN_VISIBLE_AREA(0, 1647-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1639,7 +1622,6 @@ MACHINE_CONFIG_START(gnw_smb_state::gnw_smb)
MCFG_SCREEN_VISIBLE_AREA(0, 1677-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1742,7 +1724,6 @@ MACHINE_CONFIG_START(gnw_boxing_state::gnw_boxing)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 524-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1853,7 +1834,6 @@ MACHINE_CONFIG_START(tgaunt_state::tgaunt)
MCFG_SCREEN_VISIBLE_AREA(0, 1425-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1956,7 +1936,6 @@ MACHINE_CONFIG_START(tddragon_state::tddragon)
MCFG_SCREEN_VISIBLE_AREA(0, 1467-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2051,7 +2030,6 @@ MACHINE_CONFIG_START(tkarnov_state::tkarnov)
MCFG_SCREEN_VISIBLE_AREA(0, 1477-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2145,7 +2123,6 @@ MACHINE_CONFIG_START(tvindictr_state::tvindictr)
MCFG_SCREEN_VISIBLE_AREA(0, 1459-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2262,7 +2239,6 @@ MACHINE_CONFIG_START(tgaiden_state::tgaiden)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2352,7 +2328,6 @@ MACHINE_CONFIG_START(tbatman_state::tbatman)
MCFG_SCREEN_VISIBLE_AREA(0, 1442-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2446,7 +2421,6 @@ MACHINE_CONFIG_START(tsharr2_state::tsharr2)
MCFG_SCREEN_VISIBLE_AREA(0, 1493-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2537,7 +2511,6 @@ MACHINE_CONFIG_START(tstrider_state::tstrider)
MCFG_SCREEN_VISIBLE_AREA(0, 1479-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2632,7 +2605,6 @@ MACHINE_CONFIG_START(tgoldnaxe_state::tgoldnaxe)
MCFG_SCREEN_VISIBLE_AREA(0, 1456-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2744,7 +2716,6 @@ MACHINE_CONFIG_START(trobocop2_state::trobocop2)
MCFG_SCREEN_VISIBLE_AREA(0, 1487-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2852,7 +2823,6 @@ MACHINE_CONFIG_START(taltbeast_state::taltbeast)
MCFG_SCREEN_VISIBLE_AREA(0, 1455-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -2947,7 +2917,6 @@ MACHINE_CONFIG_START(tsf2010_state::tsf2010)
MCFG_SCREEN_VISIBLE_AREA(0, 1465-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3038,7 +3007,6 @@ MACHINE_CONFIG_START(tswampt_state::tswampt)
MCFG_SCREEN_VISIBLE_AREA(0, 1450-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3133,7 +3101,6 @@ MACHINE_CONFIG_START(tspidman_state::tspidman)
MCFG_SCREEN_VISIBLE_AREA(0, 1440-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3228,7 +3195,6 @@ MACHINE_CONFIG_START(txmen_state::txmen)
MCFG_SCREEN_VISIBLE_AREA(0, 1467-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3323,7 +3289,6 @@ MACHINE_CONFIG_START(tddragon3_state::tddragon3)
MCFG_SCREEN_VISIBLE_AREA(0, 1514-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3418,7 +3383,6 @@ MACHINE_CONFIG_START(tflash_state::tflash)
MCFG_SCREEN_VISIBLE_AREA(0, 1444-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3513,7 +3477,6 @@ MACHINE_CONFIG_START(tmchammer_state::tmchammer)
MCFG_SCREEN_VISIBLE_AREA(0, 1471-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3608,7 +3571,6 @@ MACHINE_CONFIG_START(tbtoads_state::tbtoads)
MCFG_SCREEN_VISIBLE_AREA(0, 1454-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3703,7 +3665,6 @@ MACHINE_CONFIG_START(thook_state::thook)
MCFG_SCREEN_VISIBLE_AREA(0, 1489-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3797,7 +3758,6 @@ MACHINE_CONFIG_START(tbttf_state::tbttf)
MCFG_SCREEN_VISIBLE_AREA(0, 1466-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3894,7 +3854,6 @@ MACHINE_CONFIG_START(taddams_state::taddams)
MCFG_SCREEN_VISIBLE_AREA(0, 1464-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -3989,7 +3948,6 @@ MACHINE_CONFIG_START(thalone_state::thalone)
MCFG_SCREEN_VISIBLE_AREA(0, 1448-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4080,7 +4038,6 @@ MACHINE_CONFIG_START(txmenpx_state::txmenpx)
MCFG_SCREEN_VISIBLE_AREA(0, 1464-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4175,7 +4132,6 @@ MACHINE_CONFIG_START(thalone2_state::thalone2)
MCFG_SCREEN_VISIBLE_AREA(0, 1454-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4263,7 +4219,6 @@ MACHINE_CONFIG_START(tsonic_state::tsonic)
MCFG_SCREEN_SIZE(1517, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1517-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4359,7 +4314,6 @@ MACHINE_CONFIG_START(trobocop3_state::trobocop3)
MCFG_SCREEN_VISIBLE_AREA(0, 1464-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4450,7 +4404,6 @@ MACHINE_CONFIG_START(tdummies_state::tdummies)
MCFG_SCREEN_VISIBLE_AREA(0, 1441-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4545,7 +4498,6 @@ MACHINE_CONFIG_START(tsfight2_state::tsfight2)
MCFG_SCREEN_VISIBLE_AREA(0, 1444-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4640,7 +4592,6 @@ MACHINE_CONFIG_START(twworld_state::twworld)
MCFG_SCREEN_VISIBLE_AREA(0, 1429-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4731,7 +4682,6 @@ MACHINE_CONFIG_START(tjpark_state::tjpark)
MCFG_SCREEN_VISIBLE_AREA(0, 1454-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4819,7 +4769,6 @@ MACHINE_CONFIG_START(tsonic2_state::tsonic2)
MCFG_SCREEN_SIZE(1475, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1475-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -4920,7 +4869,6 @@ MACHINE_CONFIG_START(tsddragon_state::tsddragon)
MCFG_SCREEN_VISIBLE_AREA(0, 1503-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5016,7 +4964,6 @@ MACHINE_CONFIG_START(tdennis_state::tdennis)
MCFG_SCREEN_VISIBLE_AREA(0, 1467-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5115,7 +5062,6 @@ MACHINE_CONFIG_START(tnmarebc_state::tnmarebc)
MCFG_SCREEN_VISIBLE_AREA(0, 1456-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5210,7 +5156,6 @@ MACHINE_CONFIG_START(ttransf2_state::ttransf2)
MCFG_SCREEN_VISIBLE_AREA(0, 1476-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5301,7 +5246,6 @@ MACHINE_CONFIG_START(topaliens_state::topaliens)
MCFG_SCREEN_VISIBLE_AREA(0, 1450-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5397,7 +5341,6 @@ MACHINE_CONFIG_START(tmkombat_state::tmkombat)
MCFG_SCREEN_VISIBLE_AREA(0, 1468-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5492,7 +5435,6 @@ MACHINE_CONFIG_START(tshadow_state::tshadow)
MCFG_SCREEN_VISIBLE_AREA(0, 1484-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5587,7 +5529,6 @@ MACHINE_CONFIG_START(tskelwarr_state::tskelwarr)
MCFG_SCREEN_VISIBLE_AREA(0, 1444-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5683,7 +5624,6 @@ MACHINE_CONFIG_START(tbatfor_state::tbatfor)
MCFG_SCREEN_VISIBLE_AREA(0, 1493-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5779,7 +5719,6 @@ MACHINE_CONFIG_START(tjdredd_state::tjdredd)
MCFG_SCREEN_VISIBLE_AREA(0, 1444-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5875,7 +5814,6 @@ MACHINE_CONFIG_START(tapollo13_state::tapollo13)
MCFG_SCREEN_VISIBLE_AREA(0, 1467-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -5971,7 +5909,6 @@ MACHINE_CONFIG_START(tgoldeye_state::tgoldeye)
MCFG_SCREEN_VISIBLE_AREA(0, 1461-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -6062,7 +5999,6 @@ MACHINE_CONFIG_START(tinday_state::tinday)
MCFG_SCREEN_VISIBLE_AREA(0, 1463-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -6153,7 +6089,6 @@ MACHINE_CONFIG_START(tsjam_state::tsjam)
MCFG_SCREEN_VISIBLE_AREA(0, 1421-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -6242,7 +6177,6 @@ MACHINE_CONFIG_START(tbatmana_state::tbatmana)
MCFG_SCREEN_SIZE(1478, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 1478-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -6346,7 +6280,6 @@ MACHINE_CONFIG_START(tigarden_state::tigarden)
MCFG_SCREEN_VISIBLE_AREA(0, 1515-1, 0, 1080-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -6446,7 +6379,6 @@ MACHINE_CONFIG_START(nummunch_state::nummunch)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 875-1)
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_sm510_state, display_decay_tick, attotime::from_msec(1))
- config.set_default_layout(layout_svg);
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/hh_tms1k.cpp b/src/mame/drivers/hh_tms1k.cpp
index 6dc3282b622..410752a3e59 100644
--- a/src/mame/drivers/hh_tms1k.cpp
+++ b/src/mame/drivers/hh_tms1k.cpp
@@ -160,7 +160,6 @@
#include "softlist.h"
#include "screen.h"
#include "speaker.h"
-#include "rendlay.h"
// internal artwork
#include "7in1ss.lh"
@@ -4603,7 +4602,6 @@ MACHINE_CONFIG_START(ginv1000_state::ginv1000)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(226, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 226-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_tms1k_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -4739,7 +4737,6 @@ MACHINE_CONFIG_START(ginv2000_state::ginv2000)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(364, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 364-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_tms1k_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
diff --git a/src/mame/drivers/hh_ucom4.cpp b/src/mame/drivers/hh_ucom4.cpp
index a4d9eeba981..979736b186e 100644
--- a/src/mame/drivers/hh_ucom4.cpp
+++ b/src/mame/drivers/hh_ucom4.cpp
@@ -73,7 +73,6 @@ TODO:
#include "includes/hh_ucom4.h"
#include "video/hlcd0515.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -348,7 +347,6 @@ MACHINE_CONFIG_START(ufombs_state::ufombs)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(243, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 243-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -495,7 +493,6 @@ MACHINE_CONFIG_START(ssfball_state::ssfball)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 482)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 482-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -623,7 +620,6 @@ MACHINE_CONFIG_START(bmsoccer_state::bmsoccer)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(271, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 271-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -730,7 +726,6 @@ MACHINE_CONFIG_START(bmsafari_state::bmsafari)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(248, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 248-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -881,7 +876,6 @@ MACHINE_CONFIG_START(splasfgt_state::splasfgt)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 476)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 476-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -985,7 +979,6 @@ MACHINE_CONFIG_START(bcclimbr_state::bcclimbr)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(310, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 310-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1202,7 +1195,6 @@ MACHINE_CONFIG_START(invspace_state::invspace)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(289, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 289-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1418,7 +1410,6 @@ MACHINE_CONFIG_START(galaxy2_state::galaxy2)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(304, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 304-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1537,7 +1528,6 @@ MACHINE_CONFIG_START(astrocmd_state::astrocmd)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 525)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 525-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -1633,7 +1623,6 @@ MACHINE_CONFIG_START(edracula_state::edracula)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 526)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 526-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2026,7 +2015,6 @@ MACHINE_CONFIG_START(tccombat_state::tccombat)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(300, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 300-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2184,7 +2172,6 @@ MACHINE_CONFIG_START(tmtennis_state::tmtennis)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 417)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 417-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2293,7 +2280,6 @@ MACHINE_CONFIG_START(tmpacman_state::tmpacman)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 508)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 508-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2396,7 +2382,6 @@ MACHINE_CONFIG_START(tmscramb_state::tmscramb)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 556)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 556-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2495,7 +2480,6 @@ MACHINE_CONFIG_START(tcaveman_state::tcaveman)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(1920, 559)
MCFG_SCREEN_VISIBLE_AREA(0, 1920-1, 0, 559-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
@@ -2628,7 +2612,6 @@ MACHINE_CONFIG_START(alnchase_state::alnchase)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_SIZE(365, 1080)
MCFG_SCREEN_VISIBLE_AREA(0, 365-1, 0, 1080-1)
- config.set_default_layout(layout_svg);
MCFG_TIMER_DRIVER_ADD_PERIODIC("display_decay", hh_ucom4_state, display_decay_tick, attotime::from_msec(1))
/* sound hardware */
diff --git a/src/mame/drivers/hp49gp.cpp b/src/mame/drivers/hp49gp.cpp
index d08ad80e98f..53f5f732747 100644
--- a/src/mame/drivers/hp49gp.cpp
+++ b/src/mame/drivers/hp49gp.cpp
@@ -9,7 +9,6 @@
#include "emu.h"
#include "cpu/arm7/arm7.h"
#include "machine/s3c2410.h"
-#include "rendlay.h"
#include "screen.h"
#define VERBOSE_LEVEL ( 0 )
@@ -297,9 +296,6 @@ MACHINE_CONFIG_START(hp49gp_state::hp49gp)
MCFG_SCREEN_VISIBLE_AREA(0, 131 - 1, 0, 80 - 1)
MCFG_SCREEN_UPDATE_DEVICE("s3c2410", s3c2410_device, screen_update)
- config.set_default_layout(layout_lcd);
-
-
MCFG_DEVICE_ADD("s3c2410", S3C2410, 12000000)
MCFG_S3C2410_PALETTE("palette")
MCFG_S3C2410_SCREEN("screen")
diff --git a/src/mame/drivers/hp_ipc.cpp b/src/mame/drivers/hp_ipc.cpp
index 899cc0768f5..fcbe52ff23f 100644
--- a/src/mame/drivers/hp_ipc.cpp
+++ b/src/mame/drivers/hp_ipc.cpp
@@ -374,8 +374,6 @@ Software to look for
#include "machine/tms9914.h"
#include "bus/ieee488/ieee488.h"
-#include "rendlay.h"
-
#include "emupal.h"
#include "screen.h"
@@ -801,11 +799,10 @@ MACHINE_CONFIG_START(hp_ipc_state::hp_ipc)
// horizontal time = 60 us (min)
// ver.refresh period = ~300 us
// ver.period = 16.7ms (~60 hz)
- MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::amber())
+ MCFG_SCREEN_ADD_MONOCHROME("screen", LCD, rgb_t::amber()) // actually a kind of EL display
MCFG_SCREEN_UPDATE_DEVICE("gpu", hp1ll3_device, screen_update)
MCFG_SCREEN_RAW_PARAMS(6_MHz_XTAL * 2, 720, 0, 512, 278, 0, 256)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE("mlc", hp_hil_mlc_device, ap_w)) // XXX actually it's driven by 555 (U59)
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_MONOCHROME("palette")
@@ -821,11 +818,10 @@ MACHINE_CONFIG_START(hp_ipc_state::hp9808a)
MCFG_ADDRESS_MAP_BANK_DATA_WIDTH(16)
MCFG_ADDRESS_MAP_BANK_STRIDE(0x1000000)
- MCFG_SCREEN_ADD_MONOCHROME("screen", RASTER, rgb_t::amber())
+ MCFG_SCREEN_ADD_MONOCHROME("screen", LCD, rgb_t::amber()) // actually a kind of EL display
MCFG_SCREEN_UPDATE_DEVICE("gpu", hp1ll3_device, screen_update)
MCFG_SCREEN_RAW_PARAMS(6_MHz_XTAL * 2, 720, 0, 640, 480, 0, 400)
MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE("mlc", hp_hil_mlc_device, ap_w))
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_PALETTE("palette")
MCFG_PALETTE_ADD_MONOCHROME("palette")
diff --git a/src/mame/drivers/hprot1.cpp b/src/mame/drivers/hprot1.cpp
index c353fb912a5..d81f856498d 100644
--- a/src/mame/drivers/hprot1.cpp
+++ b/src/mame/drivers/hprot1.cpp
@@ -60,7 +60,6 @@ Infinite loop is reached at address 0x7699
#include "sound/spkrdev.h"
#include "video/hd44780.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -262,7 +261,6 @@ MACHINE_CONFIG_START(hprot1_state::hprot1)
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(hprot1_state, hprot1)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_hprot1)
diff --git a/src/mame/drivers/hunter2.cpp b/src/mame/drivers/hunter2.cpp
index 054bffa3533..3960ba36a48 100644
--- a/src/mame/drivers/hunter2.cpp
+++ b/src/mame/drivers/hunter2.cpp
@@ -30,7 +30,6 @@
#include "sound/spkrdev.h"
#include "video/hd61830.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -391,7 +390,6 @@ MACHINE_CONFIG_START(hunter2_state::hunter2)
MCFG_SCREEN_VISIBLE_AREA(0, 239, 0, 63)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(hunter2_state, hunter2)
MCFG_DEVICE_ADD("lcdc", HD61830, XTAL(4'915'200)/2/2) // unknown clock
diff --git a/src/mame/drivers/hx20.cpp b/src/mame/drivers/hx20.cpp
index b203f1193d1..f6e643a6495 100644
--- a/src/mame/drivers/hx20.cpp
+++ b/src/mame/drivers/hx20.cpp
@@ -905,7 +905,6 @@ MACHINE_CONFIG_START(hx20_state::hx20)
MCFG_DEVICE_IO_MAP(hx20_sub_io)
// video hardware
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_ADD(SCREEN_TAG, LCD)
MCFG_SCREEN_REFRESH_RATE(50)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500))
diff --git a/src/mame/drivers/icatel.cpp b/src/mame/drivers/icatel.cpp
index 65591006ec5..0b4828950e8 100644
--- a/src/mame/drivers/icatel.cpp
+++ b/src/mame/drivers/icatel.cpp
@@ -25,7 +25,6 @@
#include "debugger.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
@@ -273,7 +272,6 @@ MACHINE_CONFIG_START(icatel_state::icatel)
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(icatel_state, icatel)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_icatel)
diff --git a/src/mame/drivers/juicebox.cpp b/src/mame/drivers/juicebox.cpp
index 387537611ce..04fc84667df 100644
--- a/src/mame/drivers/juicebox.cpp
+++ b/src/mame/drivers/juicebox.cpp
@@ -15,7 +15,6 @@
#include "sound/dac.h"
#include "sound/volt_reg.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -320,7 +319,6 @@ MACHINE_CONFIG_START(juicebox_state::juicebox)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(240, 160)
MCFG_SCREEN_VISIBLE_AREA(0, 240 - 1, 0, 160 - 1)
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_UPDATE_DEVICE("s3c44b0", s3c44b0_device, video_update)
diff --git a/src/mame/drivers/lcmate2.cpp b/src/mame/drivers/lcmate2.cpp
index 96c9247d130..d15a9a4a57e 100644
--- a/src/mame/drivers/lcmate2.cpp
+++ b/src/mame/drivers/lcmate2.cpp
@@ -36,7 +36,6 @@
#include "sound/spkrdev.h"
#include "video/hd44780.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -248,7 +247,6 @@ MACHINE_CONFIG_START(lcmate2_state::lcmate2)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(lcmate2_state, lcmate2)
- config.set_default_layout(layout_lcd);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_lcmate2)
MCFG_HD44780_ADD("hd44780")
diff --git a/src/mame/drivers/micronic.cpp b/src/mame/drivers/micronic.cpp
index 08414f85a7a..beec4e9a037 100644
--- a/src/mame/drivers/micronic.cpp
+++ b/src/mame/drivers/micronic.cpp
@@ -114,7 +114,6 @@
#include "emu.h"
#include "includes/micronic.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -364,8 +363,6 @@ MACHINE_CONFIG_START(micronic_state::micronic)
MCFG_SCREEN_VISIBLE_AREA(0, 120-1, 0, 64-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(micronic_state, micronic)
diff --git a/src/mame/drivers/microvsn.cpp b/src/mame/drivers/microvsn.cpp
index b0c30de9616..38e8d8f4ec6 100644
--- a/src/mame/drivers/microvsn.cpp
+++ b/src/mame/drivers/microvsn.cpp
@@ -23,7 +23,6 @@ of the games were clocked at around 500KHz, 550KHz, or 300KHz.
#include "sound/dac.h"
#include "sound/volt_reg.h"
#include "emupal.h"
-#include "rendlay.h"
#include "softlist.h"
#include "screen.h"
#include "speaker.h"
@@ -667,8 +666,6 @@ MACHINE_CONFIG_START(microvision_state::microvision)
MCFG_PALETTE_ADD("palette", 16)
MCFG_PALETTE_INIT_OWNER(microvision_state,microvision)
- config.set_default_layout(layout_lcd);
-
/* sound hardware */
SPEAKER(config, "speaker").front_center();
MCFG_DEVICE_ADD("dac", DAC_2BIT_BINARY_WEIGHTED_ONES_COMPLEMENT, 0) MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 0.25) // unknown DAC
diff --git a/src/mame/drivers/mini2440.cpp b/src/mame/drivers/mini2440.cpp
index 2fd5b759f81..f8699c28d60 100644
--- a/src/mame/drivers/mini2440.cpp
+++ b/src/mame/drivers/mini2440.cpp
@@ -12,7 +12,6 @@
#include "machine/smartmed.h"
#include "sound/dac.h"
#include "sound/volt_reg.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -22,8 +21,8 @@
class mini2440_state : public driver_device
{
public:
- mini2440_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ mini2440_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_s3c2440(*this, "s3c2440"),
m_nand(*this, "nand"),
@@ -237,7 +236,6 @@ MACHINE_CONFIG_START(mini2440_state::mini2440)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(1024, 768)
MCFG_SCREEN_VISIBLE_AREA(0, 239, 0, 319)
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_UPDATE_DEVICE("s3c2440", s3c2440_device, screen_update)
diff --git a/src/mame/drivers/mstation.cpp b/src/mame/drivers/mstation.cpp
index 1bd1734bfbb..14fd5ad2c22 100644
--- a/src/mame/drivers/mstation.cpp
+++ b/src/mame/drivers/mstation.cpp
@@ -34,7 +34,6 @@
#include "machine/rp5c01.h"
#include "machine/timer.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
@@ -463,7 +462,6 @@ MACHINE_CONFIG_START(mstation_state::mstation)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(mstation_state, mstation)
- config.set_default_layout(layout_lcd);
MCFG_AMD_29F080_ADD("flash0")
MCFG_SST_28SF040_ADD("flash1")
diff --git a/src/mame/drivers/nakajies.cpp b/src/mame/drivers/nakajies.cpp
index 44ea42721c6..16015369b1f 100644
--- a/src/mame/drivers/nakajies.cpp
+++ b/src/mame/drivers/nakajies.cpp
@@ -277,7 +277,6 @@ disabled). Perhaps power on/off related??
#include "machine/timer.h"
#include "sound/spkrdev.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -289,9 +288,10 @@ class nakajies_state : public driver_device
{
public:
nakajies_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
- m_maincpu(*this, "v20hl")
- {}
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "v20hl")
+ {
+ }
void nakajies210(machine_config &config);
void nakajies220(machine_config &config);
@@ -763,7 +763,6 @@ MACHINE_CONFIG_START(nakajies_state::nakajies210)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_wales210)
MCFG_PALETTE_ADD( "palette", 2 )
MCFG_PALETTE_INIT_OWNER(nakajies_state, nakajies)
- config.set_default_layout(layout_lcd);
/* sound */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/nbmj8688.cpp b/src/mame/drivers/nbmj8688.cpp
index 95e7fd95c28..e76db1c9774 100644
--- a/src/mame/drivers/nbmj8688.cpp
+++ b/src/mame/drivers/nbmj8688.cpp
@@ -2647,23 +2647,27 @@ MACHINE_CONFIG_START(nbmj8688_state::mbmj_p16bit_LCD)
MCFG_PALETTE_ADD("palette_lcd", 2)
MCFG_PALETTE_INIT_OWNER(nbmj8688_state,mbmj8688_lcd)
- MCFG_SCREEN_ADD("lcd0", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(480, 64)
- MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 0, 64-1)
- MCFG_SCREEN_UPDATE_DEVICE("lcdc0", hd61830_device, screen_update)
- MCFG_SCREEN_PALETTE("palette_lcd")
+ screen_device &lcd0(SCREEN(config, "lcd0", SCREEN_TYPE_LCD));
+ lcd0.set_physical_aspect(15, 3);
+ lcd0.set_orientation(ROT180);
+ lcd0.set_refresh_hz(60);
+ lcd0.set_vblank_time(ATTOSECONDS_IN_USEC(0));
+ lcd0.set_size(480, 64);
+ lcd0.set_visarea(0, 480-1, 0, 64-1);
+ lcd0.set_screen_update("lcdc0", FUNC(hd61830_device::screen_update));
+ lcd0.set_palette("palette_lcd");
MCFG_DEVICE_ADD("lcdc0", HD61830B, 5000000/2) // ???
MCFG_VIDEO_SET_SCREEN("lcd0")
- MCFG_SCREEN_ADD("lcd1", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(480, 64)
- MCFG_SCREEN_VISIBLE_AREA(0, 480-1, 0, 64-1)
- MCFG_SCREEN_UPDATE_DEVICE("lcdc1", hd61830_device, screen_update)
- MCFG_SCREEN_PALETTE("palette_lcd")
+ screen_device &lcd1(SCREEN(config, "lcd1", SCREEN_TYPE_LCD));
+ lcd1.set_physical_aspect(15, 3);
+ lcd1.set_orientation(ROT180);
+ lcd1.set_refresh_hz(60);
+ lcd1.set_vblank_time(ATTOSECONDS_IN_USEC(0));
+ lcd1.set_size(480, 64);
+ lcd1.set_visarea(0, 480-1, 0, 64-1);
+ lcd1.set_screen_update("lcdc1", FUNC(hd61830_device::screen_update));
+ lcd1.set_palette("palette_lcd");
MCFG_DEVICE_ADD("lcdc1", HD61830B, 5000000/2) // ???
MCFG_VIDEO_SET_SCREEN("lcd1")
diff --git a/src/mame/drivers/nc.cpp b/src/mame/drivers/nc.cpp
index e4bdc34ca76..2e9c9ee223c 100644
--- a/src/mame/drivers/nc.cpp
+++ b/src/mame/drivers/nc.cpp
@@ -102,7 +102,6 @@
#include "machine/mc146818.h" // for NC200 real time clock
#include "machine/rp5c01.h" // for NC100 real time clock
#include "formats/pc_dsk.h" // for NC200 disk image
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -1393,8 +1392,6 @@ MACHINE_CONFIG_START(nc_state::nc_base)
MCFG_PALETTE_ADD("palette", NC_NUM_COLOURS)
MCFG_PALETTE_INIT_OWNER(nc_state, nc)
- config.set_default_layout(layout_lcd);
-
/* sound hardware */
SPEAKER(config, "mono").front_center();
MCFG_DEVICE_ADD("beep.1", BEEP, 0)
diff --git a/src/mame/drivers/ngp.cpp b/src/mame/drivers/ngp.cpp
index b926a156ff0..e2be1d57e41 100644
--- a/src/mame/drivers/ngp.cpp
+++ b/src/mame/drivers/ngp.cpp
@@ -106,7 +106,6 @@ the Neogeo Pocket.
#include "sound/dac.h"
#include "sound/volt_reg.h"
#include "video/k1ge.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -842,8 +841,6 @@ MACHINE_CONFIG_START(ngp_state::ngp_common)
MCFG_SCREEN_RAW_PARAMS( 6.144_MHz_XTAL, 515, 0, 160 /*480*/, 199, 0, 152 )
MCFG_SCREEN_UPDATE_DRIVER(ngp_state, screen_update_ngp)
- config.set_default_layout(layout_lcd);
-
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
diff --git a/src/mame/drivers/palm.cpp b/src/mame/drivers/palm.cpp
index fcb6fe5c4ce..27bb29208b3 100644
--- a/src/mame/drivers/palm.cpp
+++ b/src/mame/drivers/palm.cpp
@@ -18,7 +18,6 @@
#include "sound/dac.h"
#include "sound/volt_reg.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -27,15 +26,16 @@
class palm_state : public driver_device
{
public:
- palm_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ palm_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_lsi(*this, MC68328_TAG),
m_ram(*this, RAM_TAG),
m_io_penx(*this, "PENX"),
m_io_peny(*this, "PENY"),
m_io_penb(*this, "PENB"),
- m_io_portd(*this, "PORTD") { }
+ m_io_portd(*this, "PORTD")
+ { }
void palmiii(machine_config &config);
void pilot1k(machine_config &config);
@@ -188,7 +188,7 @@ MACHINE_CONFIG_START(palm_state::palm)
MCFG_QUANTUM_TIME( attotime::from_hz(60) )
- MCFG_SCREEN_ADD( "screen", RASTER )
+ MCFG_SCREEN_ADD( "screen", LCD )
MCFG_SCREEN_REFRESH_RATE( 60 )
MCFG_SCREEN_VBLANK_TIME( ATTOSECONDS_IN_USEC(1260) )
/* video hardware */
@@ -200,7 +200,6 @@ MACHINE_CONFIG_START(palm_state::palm)
MCFG_PALETTE_ADD( "palette", 2 )
MCFG_PALETTE_INIT_OWNER(palm_state, palm)
- config.set_default_layout(layout_lcd);
/* audio hardware */
SPEAKER(config, "speaker").front_center();
diff --git a/src/mame/drivers/palmz22.cpp b/src/mame/drivers/palmz22.cpp
index f6ed4ef927c..7701c59352a 100644
--- a/src/mame/drivers/palmz22.cpp
+++ b/src/mame/drivers/palmz22.cpp
@@ -67,7 +67,6 @@ end
#include "cpu/arm7/arm7.h"
#include "machine/s3c2410.h"
#include "machine/smartmed.h"
-#include "rendlay.h"
#include "screen.h"
#define PALM_Z22_BATTERY_LEVEL 75
@@ -78,10 +77,10 @@ class palmz22_state : public driver_device
{
public:
palmz22_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
- m_maincpu(*this, "maincpu"),
- m_s3c2410(*this, "s3c2410"),
- m_nand(*this, "nand")
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ , m_s3c2410(*this, "s3c2410")
+ , m_nand(*this, "nand")
{ }
DECLARE_INPUT_CHANGED_MEMBER(input_changed);
@@ -300,7 +299,6 @@ MACHINE_CONFIG_START(palmz22_state::palmz22)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) /* not accurate */
MCFG_SCREEN_SIZE(160, 160)
MCFG_SCREEN_VISIBLE_AREA(0, 160 - 1, 0, 160 - 1)
- config.set_default_layout(layout_lcd);
MCFG_SCREEN_UPDATE_DEVICE("s3c2410", s3c2410_device, screen_update)
diff --git a/src/mame/drivers/pasopia7.cpp b/src/mame/drivers/pasopia7.cpp
index 57fce524b9a..f356aa8ee58 100644
--- a/src/mame/drivers/pasopia7.cpp
+++ b/src/mame/drivers/pasopia7.cpp
@@ -33,7 +33,6 @@
#include "video/mc6845.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -1011,8 +1010,6 @@ MACHINE_CONFIG_START(pasopia7_state::p7_lcd)
MCFG_MC6845_ADD("crtc", H46505, "screen", LCD_CLOCK) /* unknown clock, hand tuned to get ~60 fps */
MCFG_MC6845_SHOW_BORDER_AREA(false)
MCFG_MC6845_CHAR_WIDTH(8)
-
- config.set_default_layout(layout_lcd);
MACHINE_CONFIG_END
/* ROM definition */
diff --git a/src/mame/drivers/pb1000.cpp b/src/mame/drivers/pb1000.cpp
index 09f50dee1bd..f55fbf99772 100644
--- a/src/mame/drivers/pb1000.cpp
+++ b/src/mame/drivers/pb1000.cpp
@@ -26,7 +26,6 @@
#include "video/hd44352.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -504,7 +503,6 @@ MACHINE_CONFIG_START(pb1000_state::pb1000)
MCFG_SCREEN_VISIBLE_AREA(0, 192-1, 0, 32-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pb1000_state, pb1000)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_pb1000)
diff --git a/src/mame/drivers/pc2000.cpp b/src/mame/drivers/pc2000.cpp
index 159cd07f4fb..b55ea95f587 100644
--- a/src/mame/drivers/pc2000.cpp
+++ b/src/mame/drivers/pc2000.cpp
@@ -25,7 +25,6 @@
#include "bus/generic/carts.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -898,7 +897,6 @@ MACHINE_CONFIG_START(pc2000_state::pc2000)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pc2000_state, pc2000)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_pc2000)
- config.set_default_layout(layout_lcd);
MCFG_HD44780_ADD("hd44780")
MCFG_HD44780_LCD_SIZE(2, 20)
diff --git a/src/mame/drivers/pc4.cpp b/src/mame/drivers/pc4.cpp
index e0a29cbd5ba..97bdfd88b83 100644
--- a/src/mame/drivers/pc4.cpp
+++ b/src/mame/drivers/pc4.cpp
@@ -30,7 +30,6 @@
#include "cpu/z80/z80.h"
#include "machine/rp5c01.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -232,7 +231,6 @@ MACHINE_CONFIG_START(pc4_state::pc4)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 36-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pc4_state, pc4)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_pc4)
diff --git a/src/mame/drivers/pce220.cpp b/src/mame/drivers/pce220.cpp
index 2880970573a..bc907429e15 100644
--- a/src/mame/drivers/pce220.cpp
+++ b/src/mame/drivers/pce220.cpp
@@ -34,7 +34,6 @@
#include "machine/timer.h"
#include "sound/beep.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -962,7 +961,6 @@ MACHINE_CONFIG_START(pce220_state::pce220)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pce220_state,pce220)
- config.set_default_layout(layout_lcd);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -998,7 +996,6 @@ MACHINE_CONFIG_START(pcg850v_state::pcg815)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pce220_state,pce220)
- config.set_default_layout(layout_lcd);
/* sound hardware */
SPEAKER(config, "mono").front_center();
@@ -1034,7 +1031,6 @@ MACHINE_CONFIG_START(pcg850v_state::pcg850v)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pce220_state,pce220)
- config.set_default_layout(layout_lcd);
/* sound hardware */
SPEAKER(config, "mono").front_center();
diff --git a/src/mame/drivers/pda600.cpp b/src/mame/drivers/pda600.cpp
index 374eb596379..687cae1a2a7 100644
--- a/src/mame/drivers/pda600.cpp
+++ b/src/mame/drivers/pda600.cpp
@@ -60,7 +60,6 @@
#include "machine/nvram.h"
#include "machine/hd64610.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
@@ -68,9 +67,10 @@ class pda600_state : public driver_device
{
public:
pda600_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
- m_maincpu(*this, "maincpu")
- {}
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ {
+ }
void pda600(machine_config &config);
@@ -220,7 +220,6 @@ MACHINE_CONFIG_START(pda600_state::pda600)
MCFG_SCREEN_PALETTE("palette")
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_pda600)
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD_MONOCHROME("palette")
// NVRAM needs to be filled with random data to fail the checksum and be initialized correctly
diff --git a/src/mame/drivers/pitagjr.cpp b/src/mame/drivers/pitagjr.cpp
index 29177c5665b..4f8b4cd7a3b 100644
--- a/src/mame/drivers/pitagjr.cpp
+++ b/src/mame/drivers/pitagjr.cpp
@@ -154,7 +154,6 @@
#include "cpu/m6805/m6805.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
@@ -222,8 +221,6 @@ MACHINE_CONFIG_START(pitagjr_state::pitajr)
MCFG_SCREEN_VISIBLE_AREA( 0, 200-1, 0, 100-1 )
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(pitagjr_state, pitagjr)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/pofo.cpp b/src/mame/drivers/pofo.cpp
index 166207bce87..8e91648b6e8 100644
--- a/src/mame/drivers/pofo.cpp
+++ b/src/mame/drivers/pofo.cpp
@@ -44,7 +44,6 @@
#include "video/hd61830.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -1031,8 +1030,6 @@ MACHINE_CONFIG_START(portfolio_state::portfolio)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 64-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(portfolio_state, portfolio)
diff --git a/src/mame/drivers/pokemini.cpp b/src/mame/drivers/pokemini.cpp
index 2699933d568..f5f6d2ba509 100644
--- a/src/mame/drivers/pokemini.cpp
+++ b/src/mame/drivers/pokemini.cpp
@@ -16,7 +16,6 @@ The LCD is likely to be a SSD1828 LCD.
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -1779,8 +1778,6 @@ MACHINE_CONFIG_START(pokemini_state::pokemini)
MCFG_SCREEN_REFRESH_RATE( 72 )
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD("palette", 4)
MCFG_PALETTE_INIT_OWNER(pokemini_state, pokemini)
diff --git a/src/mame/drivers/prestige.cpp b/src/mame/drivers/prestige.cpp
index 39838a468d9..9430deca54a 100644
--- a/src/mame/drivers/prestige.cpp
+++ b/src/mame/drivers/prestige.cpp
@@ -87,7 +87,6 @@ Notes:
#include "bus/generic/carts.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
@@ -760,8 +759,6 @@ MACHINE_CONFIG_START(prestige_state::prestige_base)
MCFG_SCREEN_VISIBLE_AREA( 0, 240-1, 0, 100-1 )
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(prestige_state, prestige)
diff --git a/src/mame/drivers/psion.cpp b/src/mame/drivers/psion.cpp
index 41ebbdc07e7..638d993a902 100644
--- a/src/mame/drivers/psion.cpp
+++ b/src/mame/drivers/psion.cpp
@@ -23,7 +23,6 @@
#include "emu.h"
#include "includes/psion.h"
-#include "rendlay.h"
#include "screen.h"
#include "softlist.h"
#include "speaker.h"
@@ -583,7 +582,6 @@ MACHINE_CONFIG_START(psion_state::psion_2lines)
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(psion_state, psion)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_psion)
diff --git a/src/mame/drivers/replicator.cpp b/src/mame/drivers/replicator.cpp
index 7d18085be66..c54cef2f7ea 100644
--- a/src/mame/drivers/replicator.cpp
+++ b/src/mame/drivers/replicator.cpp
@@ -30,7 +30,6 @@
#include "sound/volt_reg.h"
#include "video/hd44780.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -637,7 +636,6 @@ MACHINE_CONFIG_START(replicator_state::replicator)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(replicator_state, replicator)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_replicator)
- config.set_default_layout(layout_lcd);
MCFG_HD44780_ADD("hd44780")
MCFG_HD44780_LCD_SIZE(4, 20)
diff --git a/src/mame/drivers/rex6000.cpp b/src/mame/drivers/rex6000.cpp
index c8999baed30..d084eb4f95b 100644
--- a/src/mame/drivers/rex6000.cpp
+++ b/src/mame/drivers/rex6000.cpp
@@ -38,7 +38,6 @@
#include "imagedev/snapquik.h"
#include "sound/beep.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -915,7 +914,6 @@ MACHINE_CONFIG_START(rex6000_state::rex6000)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 120-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(rex6000_state, rex6000)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_rex6000)
@@ -1005,7 +1003,6 @@ MACHINE_CONFIG_START(oz750_state::oz750)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 80-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(rex6000_state, rex6000)
diff --git a/src/mame/drivers/tetrisp2.cpp b/src/mame/drivers/tetrisp2.cpp
index 9363b3af5aa..d6cb166b29f 100644
--- a/src/mame/drivers/tetrisp2.cpp
+++ b/src/mame/drivers/tetrisp2.cpp
@@ -1856,19 +1856,21 @@ MACHINE_CONFIG_START(tetrisp2_state::rocknms)
config.set_default_layout(layout_rocknms);
- MCFG_SCREEN_ADD("lscreen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(0x140, 0xe0)
- MCFG_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xe0-1)
- MCFG_SCREEN_UPDATE_DRIVER(tetrisp2_state, screen_update_rocknms_left)
-
- MCFG_SCREEN_ADD("rscreen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(0x140, 0xe0)
- MCFG_SCREEN_VISIBLE_AREA(0, 0x140-1, 0, 0xe0-1)
- MCFG_SCREEN_UPDATE_DRIVER(tetrisp2_state, screen_update_rocknms_right)
+ screen_device &lscreen(SCREEN(config, "lscreen", SCREEN_TYPE_RASTER));
+ lscreen.set_orientation(ROT0);
+ lscreen.set_refresh_hz(60);
+ lscreen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
+ lscreen.set_size(0x140, 0xe0);
+ lscreen.set_visarea(0, 0x140-1, 0, 0xe0-1);
+ lscreen.set_screen_update(FUNC(tetrisp2_state::screen_update_rocknms_left));
+
+ screen_device &rscreen(SCREEN(config, "rscreen", SCREEN_TYPE_RASTER));
+ rscreen.set_orientation(ROT270);
+ rscreen.set_refresh_hz(60);
+ rscreen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
+ rscreen.set_size(0x140, 0xe0);
+ rscreen.set_visarea(0, 0x140-1, 0, 0xe0-1);
+ rscreen.set_screen_update(FUNC(tetrisp2_state::screen_update_rocknms_right));
MCFG_VIDEO_START_OVERRIDE(tetrisp2_state,rocknms)
@@ -1896,30 +1898,33 @@ MACHINE_CONFIG_START(stepstag_state::stepstag)
MCFG_WATCHDOG_ADD("watchdog")
// video hardware
- MCFG_SCREEN_ADD("lscreen", RASTER)
-// MCFG_SCREEN_RAW_PARAMS(12288000*2, 768, 0, 496, 264*2,0,480)
- MCFG_SCREEN_REFRESH_RATE(30)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(0x160, 0xf0)
- MCFG_SCREEN_VISIBLE_AREA(0, 0x160-1, 0, 0xf0-1)
- MCFG_SCREEN_UPDATE_DRIVER(stepstag_state, screen_update_stepstag_left)
-// MCFG_SCREEN_PALETTE("lpalette")
-
- MCFG_SCREEN_ADD("mscreen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(0x160, 0xf0)
- MCFG_SCREEN_VISIBLE_AREA(0, 0x160-1, 0, 0xf0-1)
- MCFG_SCREEN_UPDATE_DRIVER(stepstag_state, screen_update_stepstag_mid)
-// MCFG_SCREEN_PALETTE("mpalette")
-
- MCFG_SCREEN_ADD("rscreen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(30)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(0x160, 0xf0)
- MCFG_SCREEN_VISIBLE_AREA(0, 0x160-1, 0, 0xf0-1)
- MCFG_SCREEN_UPDATE_DRIVER(stepstag_state, screen_update_stepstag_right)
- MCFG_SCREEN_PALETTE("rpalette")
+ screen_device &lscreen(SCREEN(config, "lscreen", SCREEN_TYPE_RASTER));
+ lscreen.set_orientation(ROT270);
+// lscreen.set_raw(12288000*2, 768, 0, 496, 264*2,0,480);
+ lscreen.set_refresh_hz(30);
+ lscreen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
+ lscreen.set_size(0x160, 0xf0);
+ lscreen.set_visarea(0, 0x160-1, 0, 0xf0-1);
+ lscreen.set_screen_update(FUNC(stepstag_state::screen_update_stepstag_left));
+// lscreen.set_palette("lpalette"));
+
+ screen_device &mscreen(SCREEN(config, "mscreen", SCREEN_TYPE_RASTER));
+ mscreen.set_orientation(ROT0);
+ mscreen.set_refresh_hz(60);
+ mscreen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
+ mscreen.set_size(0x160, 0xf0);
+ mscreen.set_visarea(0, 0x160-1, 0, 0xf0-1);
+ mscreen.set_screen_update(FUNC(stepstag_state::screen_update_stepstag_mid));
+// mscreen.set_palette("mpalette"));
+
+ screen_device &rscreen(SCREEN(config, "rscreen", SCREEN_TYPE_RASTER));
+ rscreen.set_orientation(ROT270);;
+ rscreen.set_refresh_hz(30);
+ rscreen.set_vblank_time(ATTOSECONDS_IN_USEC(0));
+ rscreen.set_size(0x160, 0xf0);
+ rscreen.set_visarea(0, 0x160-1, 0, 0xf0-1);
+ rscreen.set_screen_update(FUNC(stepstag_state::screen_update_stepstag_right));
+ rscreen.set_palette("rpalette");
MCFG_VIDEO_START_OVERRIDE(stepstag_state, stepstag )
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_tetrisp2)
diff --git a/src/mame/drivers/ti630.cpp b/src/mame/drivers/ti630.cpp
index 768aa9f228b..185ce0c11a2 100644
--- a/src/mame/drivers/ti630.cpp
+++ b/src/mame/drivers/ti630.cpp
@@ -38,7 +38,6 @@ It means we probably would have to emulate a modem device for it to treat commun
#include "cpu/mcs51/mcs51.h"
#include "video/hd44780.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
@@ -156,7 +155,6 @@ MACHINE_CONFIG_START(ti630_state::ti630)
MCFG_SCREEN_VISIBLE_AREA(0, 6*16-1, 0, 9*2-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(ti630_state, ti630)
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_ti630)
diff --git a/src/mame/drivers/ti89.cpp b/src/mame/drivers/ti89.cpp
index 57261b448b0..e410df8fd64 100644
--- a/src/mame/drivers/ti89.cpp
+++ b/src/mame/drivers/ti89.cpp
@@ -23,7 +23,6 @@
#include "cpu/m68000/m68000.h"
#include "machine/intelfsh.h"
#include "machine/nvram.h"
-#include "rendlay.h"
#include "screen.h"
@@ -538,7 +537,6 @@ MACHINE_CONFIG_START(ti68k_state::ti89)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(ti68k_state, ti68k)
- config.set_default_layout(layout_lcd);
MCFG_SHARP_UNK128MBIT_ADD("flash") //should be LH28F320 for ti89t and v200 and LH28F160S3T for other models
diff --git a/src/mame/drivers/tmmjprd.cpp b/src/mame/drivers/tmmjprd.cpp
index 904787851b9..3c7124b731a 100644
--- a/src/mame/drivers/tmmjprd.cpp
+++ b/src/mame/drivers/tmmjprd.cpp
@@ -42,8 +42,8 @@
class tmmjprd_state : public driver_device
{
public:
- tmmjprd_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ tmmjprd_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
m_maincpu(*this, "maincpu"),
m_eeprom(*this, "eeprom"),
m_gfxdecode(*this, "gfxdecode"),
@@ -57,7 +57,8 @@ public:
m_gfxroms(*this, "gfx2"),
m_pl1(*this, "PL1.%u", 1),
m_pl2(*this, "PL2.%u", 1),
- m_system(*this, "SYSTEM") { }
+ m_system(*this, "SYSTEM")
+ { }
void tmmjprd(machine_config &config);
void tmpdoki(machine_config &config);
@@ -738,7 +739,7 @@ TIMER_DEVICE_CALLBACK_MEMBER(tmmjprd_state::scanline)
}
-MACHINE_CONFIG_START(tmmjprd_state::tmmjprd)
+MACHINE_CONFIG_START(tmmjprd_state::tmpdoki)
MCFG_DEVICE_ADD(m_maincpu,M68EC020,24000000) /* 24 MHz */
MCFG_DEVICE_PROGRAM_MAP(main_map)
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", tmmjprd_state, scanline, "lscreen", 0, 1)
@@ -756,9 +757,6 @@ MACHINE_CONFIG_START(tmmjprd_state::tmmjprd)
MCFG_PALETTE_ADD(m_palette, 0x1000)
MCFG_PALETTE_FORMAT(XGRB)
-
- config.set_default_layout(layout_dualhsxs);
-
MCFG_SCREEN_ADD("lscreen", RASTER)
MCFG_SCREEN_REFRESH_RATE(60)
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
@@ -768,15 +766,6 @@ MACHINE_CONFIG_START(tmmjprd_state::tmmjprd)
MCFG_SCREEN_UPDATE_DRIVER(tmmjprd_state, screen_update_left)
MCFG_SCREEN_PALETTE(m_palette)
- MCFG_SCREEN_ADD("rscreen", RASTER)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- MCFG_SCREEN_SIZE(64*16, 64*16)
- MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
- //MCFG_SCREEN_VISIBLE_AREA(0*8, 64*16-1, 0*8, 64*16-1)
- MCFG_SCREEN_UPDATE_DRIVER(tmmjprd_state, screen_update_right)
- MCFG_SCREEN_PALETTE(m_palette)
-
/* sound hardware */
SPEAKER(config, "lspeaker").front_left();
@@ -787,11 +776,19 @@ MACHINE_CONFIG_START(tmmjprd_state::tmmjprd)
MCFG_SOUND_ROUTE(1, "lspeaker", 1.00)
MACHINE_CONFIG_END
-MACHINE_CONFIG_START(tmmjprd_state::tmpdoki)
- tmmjprd(config);
- config.set_default_layout(layout_horizont);
+MACHINE_CONFIG_START(tmmjprd_state::tmmjprd)
+ tmpdoki(config);
- MCFG_DEVICE_REMOVE("rscreen")
+ config.set_default_layout(layout_dualhsxs);
+
+ MCFG_SCREEN_ADD("rscreen", RASTER)
+ MCFG_SCREEN_REFRESH_RATE(60)
+ MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
+ MCFG_SCREEN_SIZE(64*16, 64*16)
+ MCFG_SCREEN_VISIBLE_AREA(0*8, 40*8-1, 0*8, 28*8-1)
+ //MCFG_SCREEN_VISIBLE_AREA(0*8, 64*16-1, 0*8, 64*16-1)
+ MCFG_SCREEN_UPDATE_DRIVER(tmmjprd_state, screen_update_right)
+ MCFG_SCREEN_PALETTE(m_palette)
MACHINE_CONFIG_END
diff --git a/src/mame/drivers/wpc_dot.cpp b/src/mame/drivers/wpc_dot.cpp
index 60835081bcf..b1fe1de42a0 100644
--- a/src/mame/drivers/wpc_dot.cpp
+++ b/src/mame/drivers/wpc_dot.cpp
@@ -170,18 +170,18 @@ void wpc_dot_state::init_wpc_dot()
m_cpubank->set_entry(0);
m_fixedbank->configure_entries(0, 1, &fixed[codeoff],0x8000);
m_fixedbank->set_entry(0);
- m_dmdbank1->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
- m_dmdbank1->set_entry(0);
- m_dmdbank2->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
- m_dmdbank2->set_entry(1);
- m_dmdbank3->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
- m_dmdbank3->set_entry(2);
- m_dmdbank4->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
- m_dmdbank4->set_entry(3);
- m_dmdbank5->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
- m_dmdbank5->set_entry(4);
- m_dmdbank6->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
- m_dmdbank6->set_entry(5);
+ m_dmdbanks[0]->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
+ m_dmdbanks[0]->set_entry(0);
+ m_dmdbanks[1]->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
+ m_dmdbanks[1]->set_entry(1);
+ m_dmdbanks[2]->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
+ m_dmdbanks[2]->set_entry(2);
+ m_dmdbanks[3]->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
+ m_dmdbanks[3]->set_entry(3);
+ m_dmdbanks[4]->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
+ m_dmdbanks[4]->set_entry(4);
+ m_dmdbanks[5]->configure_entries(0, 16, &m_dmdram[0x0000],0x200);
+ m_dmdbanks[5]->set_entry(5);
m_vblank_timer = timer_alloc(TIMER_VBLANK);
m_vblank_timer->adjust(attotime::from_hz(60),0,attotime::from_hz(60*4));
m_irq_timer = timer_alloc(TIMER_IRQ);
@@ -213,28 +213,18 @@ WRITE8_MEMBER(wpc_dot_state::wpc_rombank_w)
WRITE8_MEMBER(wpc_dot_state::wpc_dmdbank_w)
{
- uint8_t page = offset >> 4;
+ uint8_t const bank(offset & 0x07);
+ uint8_t const page(offset >> 4);
- switch(offset & 0x07)
+ switch (bank)
{
case 0:
- m_dmdbank1->set_entry(data + (page*16));
- break;
case 1:
- m_dmdbank2->set_entry(data + (page*16));
- break;
case 2:
- m_dmdbank3->set_entry(data + (page*16));
- break;
case 3:
- m_dmdbank4->set_entry(data + (page*16));
- break;
case 4:
- m_dmdbank5->set_entry(data + (page*16));
- break;
case 5:
- m_dmdbank6->set_entry(data + (page*16));
- break;
+ m_dmdbanks[bank]->set_entry(data + (page << 4));
}
}
@@ -321,13 +311,12 @@ MACHINE_CONFIG_START(wpc_dot_state::wpc_dot)
MCFG_WPC_SOUND_REPLY_CALLBACK(WRITELINE(*this, wpc_dot_state,wpcsnd_reply_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
- config.set_default_layout(layout_lcd);
-
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_SIZE(128, 32)
- MCFG_SCREEN_VISIBLE_AREA(0, 128-1, 0, 32-1)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_UPDATE_DRIVER(wpc_dot_state, screen_update)
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_native_aspect();
+ screen.set_size(128, 32);
+ screen.set_visarea(0, 128-1, 0, 32-1);
+ screen.set_refresh_hz(60);
+ screen.set_screen_update(FUNC(wpc_dot_state::screen_update));
MACHINE_CONFIG_END
/*-----------------
diff --git a/src/mame/drivers/wpc_flip1.cpp b/src/mame/drivers/wpc_flip1.cpp
index f8c801e824b..3a524f5e925 100644
--- a/src/mame/drivers/wpc_flip1.cpp
+++ b/src/mame/drivers/wpc_flip1.cpp
@@ -164,26 +164,25 @@ MACHINE_CONFIG_START(wpc_flip1_state::wpc_flip1)
MCFG_DEVICE_PROGRAM_MAP(wpc_flip1_map)
MCFG_WMS_WPC_ADD("wpc")
- MCFG_WPC_IRQ_ACKNOWLEDGE(WRITELINE(*this, wpc_dot_state,wpc_irq_w))
- MCFG_WPC_FIRQ_ACKNOWLEDGE(WRITELINE(*this, wpc_dot_state,wpc_firq_w))
- MCFG_WPC_ROMBANK(WRITE8(*this, wpc_dot_state,wpc_rombank_w))
- MCFG_WPC_SOUND_CTRL(READ8(*this, wpc_dot_state,wpc_sound_ctrl_r),WRITE8(*this, wpc_dot_state,wpc_sound_ctrl_w))
- MCFG_WPC_SOUND_DATA(READ8(*this, wpc_dot_state,wpc_sound_data_r),WRITE8(*this, wpc_dot_state,wpc_sound_data_w))
- MCFG_WPC_DMDBANK(WRITE8(*this, wpc_dot_state,wpc_dmdbank_w))
+ MCFG_WPC_IRQ_ACKNOWLEDGE(WRITELINE(*this, wpc_flip1_state,wpc_irq_w))
+ MCFG_WPC_FIRQ_ACKNOWLEDGE(WRITELINE(*this, wpc_flip1_state,wpc_firq_w))
+ MCFG_WPC_ROMBANK(WRITE8(*this, wpc_flip1_state,wpc_rombank_w))
+ MCFG_WPC_SOUND_CTRL(READ8(*this, wpc_flip1_state,wpc_sound_ctrl_r),WRITE8(*this, wpc_flip1_state,wpc_sound_ctrl_w))
+ MCFG_WPC_SOUND_DATA(READ8(*this, wpc_flip1_state,wpc_sound_data_r),WRITE8(*this, wpc_flip1_state,wpc_sound_data_w))
+ MCFG_WPC_DMDBANK(WRITE8(*this, wpc_flip1_state,wpc_dmdbank_w))
SPEAKER(config, "speaker").front_center();
MCFG_DEVICE_ADD("wpcsnd", WPCSND)
MCFG_WPC_ROM_REGION("sound1")
- MCFG_WPC_SOUND_REPLY_CALLBACK(WRITELINE(*this, wpc_dot_state,wpcsnd_reply_w))
+ MCFG_WPC_SOUND_REPLY_CALLBACK(WRITELINE(*this, wpc_flip1_state,wpcsnd_reply_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
- config.set_default_layout(layout_lcd);
-
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_SIZE(128, 32)
- MCFG_SCREEN_VISIBLE_AREA(0, 128-1, 0, 32-1)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_UPDATE_DRIVER(wpc_dot_state, screen_update)
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_native_aspect();
+ screen.set_size(128, 32);
+ screen.set_visarea(0, 128-1, 0, 32-1);
+ screen.set_refresh_hz(60);
+ screen.set_screen_update(FUNC(wpc_flip1_state::screen_update));
MACHINE_CONFIG_END
/*-----------------
diff --git a/src/mame/drivers/wpc_flip2.cpp b/src/mame/drivers/wpc_flip2.cpp
index e9e421b6e40..bd4a7e2eb62 100644
--- a/src/mame/drivers/wpc_flip2.cpp
+++ b/src/mame/drivers/wpc_flip2.cpp
@@ -193,26 +193,25 @@ MACHINE_CONFIG_START(wpc_flip2_state::wpc_flip2)
MCFG_DEVICE_PROGRAM_MAP(wpc_flip2_map)
MCFG_WMS_WPC_ADD("wpc")
- MCFG_WPC_IRQ_ACKNOWLEDGE(WRITELINE(*this, wpc_dot_state,wpc_irq_w))
- MCFG_WPC_FIRQ_ACKNOWLEDGE(WRITELINE(*this, wpc_dot_state,wpc_firq_w))
- MCFG_WPC_ROMBANK(WRITE8(*this, wpc_dot_state,wpc_rombank_w))
- MCFG_WPC_SOUND_CTRL(READ8(*this, wpc_dot_state,wpc_sound_ctrl_r),WRITE8(*this, wpc_dot_state,wpc_sound_ctrl_w))
- MCFG_WPC_SOUND_DATA(READ8(*this, wpc_dot_state,wpc_sound_data_r),WRITE8(*this, wpc_dot_state,wpc_sound_data_w))
- MCFG_WPC_DMDBANK(WRITE8(*this, wpc_dot_state,wpc_dmdbank_w))
+ MCFG_WPC_IRQ_ACKNOWLEDGE(WRITELINE(*this, wpc_flip2_state,wpc_irq_w))
+ MCFG_WPC_FIRQ_ACKNOWLEDGE(WRITELINE(*this, wpc_flip2_state,wpc_firq_w))
+ MCFG_WPC_ROMBANK(WRITE8(*this, wpc_flip2_state,wpc_rombank_w))
+ MCFG_WPC_SOUND_CTRL(READ8(*this, wpc_flip2_state,wpc_sound_ctrl_r),WRITE8(*this, wpc_flip2_state,wpc_sound_ctrl_w))
+ MCFG_WPC_SOUND_DATA(READ8(*this, wpc_flip2_state,wpc_sound_data_r),WRITE8(*this, wpc_flip2_state,wpc_sound_data_w))
+ MCFG_WPC_DMDBANK(WRITE8(*this, wpc_flip2_state,wpc_dmdbank_w))
SPEAKER(config, "speaker").front_center();
MCFG_DEVICE_ADD("wpcsnd", WPCSND)
MCFG_WPC_ROM_REGION("sound1")
- MCFG_WPC_SOUND_REPLY_CALLBACK(WRITELINE(*this, wpc_dot_state,wpcsnd_reply_w))
+ MCFG_WPC_SOUND_REPLY_CALLBACK(WRITELINE(*this, wpc_flip2_state,wpcsnd_reply_w))
MCFG_SOUND_ROUTE(ALL_OUTPUTS, "speaker", 1.0)
- config.set_default_layout(layout_lcd);
-
- MCFG_SCREEN_ADD("screen", RASTER)
- MCFG_SCREEN_SIZE(128, 32)
- MCFG_SCREEN_VISIBLE_AREA(0, 128-1, 0, 32-1)
- MCFG_SCREEN_REFRESH_RATE(60)
- MCFG_SCREEN_UPDATE_DRIVER(wpc_dot_state, screen_update)
+ screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
+ screen.set_native_aspect();
+ screen.set_size(128, 32);
+ screen.set_visarea(0, 128-1, 0, 32-1);
+ screen.set_refresh_hz(60);
+ screen.set_screen_update(FUNC(wpc_flip2_state::screen_update));
MACHINE_CONFIG_END
/*-----------------
diff --git a/src/mame/drivers/x07.cpp b/src/mame/drivers/x07.cpp
index 2e0074aab21..ad8bf59eeaa 100644
--- a/src/mame/drivers/x07.cpp
+++ b/src/mame/drivers/x07.cpp
@@ -1497,7 +1497,6 @@ MACHINE_CONFIG_START(x07_state::x07)
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(x07_state, x07)
- config.set_default_layout(layout_lcd);
MCFG_DEVICE_ADD("gfxdecode", GFXDECODE, "palette", gfx_x07)
/* sound hardware */
diff --git a/src/mame/drivers/ymmu100.cpp b/src/mame/drivers/ymmu100.cpp
index 4eccfd7bf81..e810f5f9e0c 100644
--- a/src/mame/drivers/ymmu100.cpp
+++ b/src/mame/drivers/ymmu100.cpp
@@ -122,7 +122,6 @@
#include "video/hd44780.h"
#include "debugger.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
@@ -455,7 +454,6 @@ MACHINE_CONFIG_START(mu100_state::mu100)
MCFG_SCREEN_UPDATE_DRIVER(mu100_state, screen_update)
MCFG_SCREEN_SIZE(900, 241)
MCFG_SCREEN_VISIBLE_AREA(0, 899, 0, 240)
- config.set_default_layout(layout_lcd);
SPEAKER(config, "lspeaker").front_left();
SPEAKER(config, "rspeaker").front_right();
diff --git a/src/mame/drivers/z88.cpp b/src/mame/drivers/z88.cpp
index 35e9dccb673..f6293830018 100644
--- a/src/mame/drivers/z88.cpp
+++ b/src/mame/drivers/z88.cpp
@@ -614,8 +614,6 @@ MACHINE_CONFIG_START(z88_state::z88)
device = &PALETTE(config, m_palette, Z88_NUM_COLOURS);
MCFG_PALETTE_INIT_OWNER(z88_state, z88)
- config.set_default_layout(layout_lcd);
-
device = &UPD65031(config, m_blink, XTAL(9'830'400));
m_blink->kb_rd_callback().set(FUNC(z88_state::kb_r));
m_blink->int_wr_callback().set_inputline(m_maincpu, INPUT_LINE_IRQ0);
diff --git a/src/mame/includes/alesis.h b/src/mame/includes/alesis.h
index a9fa9a1f33b..93ceda86a4b 100644
--- a/src/mame/includes/alesis.h
+++ b/src/mame/includes/alesis.h
@@ -17,7 +17,6 @@
#include "video/hd44780.h"
#include "imagedev/cassette.h"
#include "emupal.h"
-#include "rendlay.h"
#define MCFG_ALESIS_DM3AG_ADD(_tag,_clock) \
MCFG_DEVICE_ADD( _tag, ALESIS_DM3AG, _clock )
diff --git a/src/mame/includes/gb.h b/src/mame/includes/gb.h
index ac037d4ad47..09a585e9aff 100644
--- a/src/mame/includes/gb.h
+++ b/src/mame/includes/gb.h
@@ -9,6 +9,8 @@
#ifndef MAME_INCLUDES_GB_H
#define MAME_INCLUDES_GB_H
+#pragma once
+
#include "sound/gb.h"
#include "cpu/lr35902/lr35902.h"
#include "bus/gameboy/gb_slot.h"
@@ -20,8 +22,8 @@
class gb_state : public driver_device
{
public:
- gb_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
+ gb_state(const machine_config &mconfig, device_type type, const char *tag) :
+ driver_device(mconfig, type, tag),
m_cartslot(*this, "gbslot"),
m_maincpu(*this, "maincpu"),
m_apu(*this, "apu"),
@@ -30,7 +32,8 @@ public:
m_inputs(*this, "INPUTS"),
m_bios_hack(*this, "SKIP_CHECK"),
m_ram(*this, RAM_TAG),
- m_ppu(*this, "ppu") { }
+ m_ppu(*this, "ppu")
+ { }
uint8_t m_gb_io[0x10];
diff --git a/src/mame/includes/hx20.h b/src/mame/includes/hx20.h
index c21acf72619..cf049c155a5 100644
--- a/src/mame/includes/hx20.h
+++ b/src/mame/includes/hx20.h
@@ -18,7 +18,6 @@
#include "bus/rs232/rs232.h"
#include "emupal.h"
-#include "rendlay.h"
#define HD6301V1_MAIN_TAG "8g"
#define HD6301V1_SLAVE_TAG "6d"
diff --git a/src/mame/includes/nbmj8688.h b/src/mame/includes/nbmj8688.h
index f6e7a01c8ce..396c5920950 100644
--- a/src/mame/includes/nbmj8688.h
+++ b/src/mame/includes/nbmj8688.h
@@ -1,5 +1,10 @@
// license:BSD-3-Clause
// copyright-holders:Takahiro Nogi
+#ifndef MAME_INCLUDES_NBMJ8688_H
+#define MAME_INCLUDES_NBMJ8688_H
+
+#pragma once
+
#include "video/hd61830.h"
#include "machine/nb1413m3.h"
#include "emupal.h"
@@ -156,3 +161,5 @@ private:
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
};
+
+#endif // MAME_INCLUDES_NBMJ8688_H
diff --git a/src/mame/includes/wpc_dot.h b/src/mame/includes/wpc_dot.h
index 073cadd2cd9..29a8ffa44a1 100644
--- a/src/mame/includes/wpc_dot.h
+++ b/src/mame/includes/wpc_dot.h
@@ -10,33 +10,31 @@
#ifndef MAME_INCLUDES_WPC_DOT_H
#define MAME_INCLUDES_WPC_DOT_H
+#pragma once
+
#include "cpu/m6809/m6809.h"
#include "audio/wpcsnd.h"
#include "audio/dcs.h"
#include "machine/wpc.h"
-#include "rendlay.h"
class wpc_dot_state : public driver_device
{
public:
wpc_dot_state(const machine_config &mconfig, device_type type, const char *tag)
- : driver_device(mconfig, type, tag),
- m_maincpu(*this, "maincpu"),
- m_wpcsnd(*this,"wpcsnd"),
- m_wpc(*this,"wpc"),
- m_cpubank(*this, "cpubank"),
- m_fixedbank(*this, "fixedbank"),
- m_dmdbank1(*this, "dmdbank1"),
- m_dmdbank2(*this, "dmdbank2"),
- m_dmdbank3(*this, "dmdbank3"),
- m_dmdbank4(*this, "dmdbank4"),
- m_dmdbank5(*this, "dmdbank5"),
- m_dmdbank6(*this, "dmdbank6")
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ , m_wpcsnd(*this,"wpcsnd")
+ , m_wpc(*this,"wpc")
+ , m_cpubank(*this, "cpubank")
+ , m_fixedbank(*this, "fixedbank")
+ , m_dmdbanks(*this, "dmdbank%u", 1U)
{ }
+ void init_wpc_dot();
void wpc_dot(machine_config &config);
- void wpc_dot_map(address_map &map);
+
protected:
+ void wpc_dot_map(address_map &map);
// devices
required_device<cpu_device> m_maincpu;
@@ -44,20 +42,14 @@ protected:
required_device<wpc_device> m_wpc;
required_memory_bank m_cpubank;
required_memory_bank m_fixedbank;
- required_memory_bank m_dmdbank1;
- required_memory_bank m_dmdbank2;
- required_memory_bank m_dmdbank3;
- required_memory_bank m_dmdbank4;
- required_memory_bank m_dmdbank5;
- required_memory_bank m_dmdbank6;
+ required_memory_bank_array<6> m_dmdbanks;
// driver_device overrides
virtual void machine_reset() override;
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr) override;
static const device_timer_id TIMER_VBLANK = 0;
static const device_timer_id TIMER_IRQ = 1;
-public:
- void init_wpc_dot();
+
DECLARE_READ8_MEMBER(ram_r);
DECLARE_WRITE8_MEMBER(ram_w);
DECLARE_WRITE_LINE_MEMBER(wpcsnd_reply_w);
diff --git a/src/mame/includes/wpc_flip1.h b/src/mame/includes/wpc_flip1.h
index dd53bb41d08..8f26f9ebd75 100644
--- a/src/mame/includes/wpc_flip1.h
+++ b/src/mame/includes/wpc_flip1.h
@@ -8,6 +8,8 @@
#ifndef MAME_INCLUDES_WPC_FLIP1_H
#define MAME_INCLUDES_WPC_FLIP1_H
+#pragma once
+
#include "includes/wpc_dot.h"
class wpc_flip1_state : public wpc_dot_state
@@ -16,9 +18,11 @@ public:
wpc_flip1_state(const machine_config &mconfig, device_type type, const char *tag)
: wpc_dot_state(mconfig, type, tag)
{ }
-public:
+
void init_wpc_flip1();
void wpc_flip1(machine_config &config);
+
+protected:
void wpc_flip1_map(address_map &map);
};
diff --git a/src/mame/includes/wpc_flip2.h b/src/mame/includes/wpc_flip2.h
index 9709abedcb6..7c07907af1f 100644
--- a/src/mame/includes/wpc_flip2.h
+++ b/src/mame/includes/wpc_flip2.h
@@ -8,6 +8,8 @@
#ifndef MAME_INCLUDES_WPC_FLIP2_H
#define MAME_INCLUDES_WPC_FLIP2_H
+#pragma once
+
#include "includes/wpc_flip1.h"
class wpc_flip2_state : public wpc_flip1_state
@@ -16,9 +18,11 @@ public:
wpc_flip2_state(const machine_config &mconfig, device_type type, const char *tag)
: wpc_flip1_state(mconfig, type, tag)
{ }
-public:
+
void init_wpc_flip2();
void wpc_flip2(machine_config &config);
+
+protected:
void wpc_flip2_map(address_map &map);
};
diff --git a/src/mame/includes/x07.h b/src/mame/includes/x07.h
index 1d1c770b042..b3da10b3134 100644
--- a/src/mame/includes/x07.h
+++ b/src/mame/includes/x07.h
@@ -5,6 +5,10 @@
includes/x07.h
*********************************************************************/
+#ifndef MAME_INCLUDES_X07_H
+#define MAME_INCLUDES_X07_H
+
+#pragma once
#include "cpu/z80/z80.h"
#include "sound/beep.h"
@@ -18,7 +22,6 @@
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
#include "emupal.h"
-#include "rendlay.h"
//default value for user defined keys, taken for official documentation
static const char *const udk_ini[12] = {
@@ -291,3 +294,5 @@ private:
void x07_io(address_map &map);
void x07_mem(address_map &map);
};
+
+#endif // MAME_INCLUDES_X07_H
diff --git a/src/mame/includes/z88.h b/src/mame/includes/z88.h
index cfe59c28a84..6d55aaae74a 100644
--- a/src/mame/includes/z88.h
+++ b/src/mame/includes/z88.h
@@ -9,6 +9,8 @@
#ifndef MAME_INCLUDES_Z88_H
#define MAME_INCLUDES_Z88_H
+#pragma once
+
#include "cpu/z80/z80.h"
#include "machine/ram.h"
#include "machine/upd65031.h"
@@ -20,7 +22,6 @@
#include "bus/z88/z88.h"
#include "emupal.h"
-#include "rendlay.h"
#include "screen.h"
#include "speaker.h"
diff --git a/src/mame/layout/nbmj8688.lay b/src/mame/layout/nbmj8688.lay
index 9dc702d198a..d6e2037d4d4 100644
--- a/src/mame/layout/nbmj8688.lay
+++ b/src/mame/layout/nbmj8688.lay
@@ -1,51 +1,15 @@
<?xml version="1.0"?>
<mamelayout version="2">
- <view name="Main Screen Standard (4:3)">
- <screen tag="screen">
- <bounds left="0" top="0" right="4" bottom="3" />
- </screen>
- </view>
-
- <view name="LCD0 Standard (15:3)">
- <screen tag="lcd0">
- <bounds left="0" top="0" right="15" bottom="3" />
- </screen>
- </view>
-
- <view name="LCD1 Standard (15:3)">
- <screen tag="lcd1">
- <bounds left="0" top="0" right="15" bottom="3" />
- </screen>
- </view>
-
- <view name="Main Screen Pixel Aspect (~scr0nativexaspect~:~scr0nativeyaspect~)">
- <screen tag="screen">
- <bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" />
- </screen>
- </view>
-
- <view name="LCD0 Pixel Aspect (~scr1nativexaspect~:~scr1nativeyaspect~)">
- <screen tag="lcd0">
- <bounds left="0" top="0" right="~scr1width~" bottom="~scr1height~" />
- </screen>
- </view>
-
- <view name="LCD1 Pixel Aspect (~scr2nativexaspect~:~scr2nativeyaspect~)">
- <screen tag="lcd1">
- <bounds left="0" top="0" right="~scr2width~" bottom="~scr2height~" />
- </screen>
- </view>
-
<view name="Triple">
<screen tag="screen">
<bounds x="0" y="3" width="15" height="11.25" />
</screen>
<screen tag="lcd0">
<bounds x="0" y="14.25" width="15" height="3" />
- <orientation rotate="180" />
</screen>
<screen tag="lcd1">
<bounds x="0" y="0" width="15" height="3" />
+ <orientation rotate="180" />
</screen>
</view>
@@ -55,7 +19,6 @@
</screen>
<screen tag="lcd0">
<bounds x="0" y="14.25" width="15" height="3" />
- <orientation rotate="180" />
</screen>
</view>
@@ -66,7 +29,6 @@
</screen>
<screen tag="lcd1">
<bounds x="0" y="14.25" width="15" height="3" />
- <orientation rotate="180" />
</screen>
</view>
</mamelayout>
diff --git a/src/mame/layout/rocknms.lay b/src/mame/layout/rocknms.lay
index d01706707f3..a8d892f3cb4 100644
--- a/src/mame/layout/rocknms.lay
+++ b/src/mame/layout/rocknms.lay
@@ -1,30 +1,5 @@
<?xml version="1.0"?>
<mamelayout version="2">
- <view name="Screen 0 Standard (4:3)">
- <screen index="0">
- <bounds left="0" top="0" right="4" bottom="3" />
- </screen>
- </view>
-
- <view name="Screen 1 Standard (3:4)">
- <screen index="1">
- <bounds left="0" top="0" right="3" bottom="4" />
- <orientation rotate="270" />
- </screen>
- </view>
-
- <view name="Screen 0 Pixel Aspect (~scr0nativexaspect~:~scr0nativeyaspect~)">
- <screen index="0">
- <bounds left="0" top="0" right="~scr0width~" bottom="~scr0height~" />
- </screen>
- </view>
-
- <view name="Screen 1 Pixel Aspect (~scr1nativeyaspect~:~scr1nativexaspect~)">
- <screen index="1">
- <bounds left="0" top="0" right="~scr1height~" bottom="~scr1width~" />
- <orientation rotate="270" />
- </screen>
- </view>
<view name="Rockn Megasession Custom">
<screen index="0">
@@ -32,7 +7,6 @@
</screen>
<screen index="1">
<bounds x="0" y="9" width="12" height="16" />
- <orientation rotate="270" />
</screen>
</view>
diff --git a/src/mame/layout/stepstag.lay b/src/mame/layout/stepstag.lay
index 1c7dce7c093..f51becc014f 100644
--- a/src/mame/layout/stepstag.lay
+++ b/src/mame/layout/stepstag.lay
@@ -1,56 +1,15 @@
<?xml version="1.0"?>
<mamelayout version="2">
- <view name="Screen 0 Standard (3:4)">
- <screen index="0">
- <bounds left="0" top="0" right="3" bottom="4" />
- <orientation rotate="270" />
- </screen>
- </view>
-
- <view name="Screen 1 Standard (4:3)">
- <screen index="1">
- <bounds left="0" top="0" right="4" bottom="3" />
- </screen>
- </view>
-
- <view name="Screen 2 Standard (3:4)">
- <screen index="2">
- <bounds left="0" top="0" right="3" bottom="4" />
- <orientation rotate="270" />
- </screen>
- </view>
-
- <view name="Screen 0 Pixel Aspect (~scr0nativeyaspect~:~scr0nativexaspect~)">
- <screen index="0">
- <bounds left="0" top="0" right="~scr0height~" bottom="~scr0width~" />
- <orientation rotate="270" />
- </screen>
- </view>
-
- <view name="Screen 1 Pixel Aspect (~scr1nativexaspect~:~scr1nativeyaspect~)">
- <screen index="1">
- <bounds left="0" top="0" right="~scr1width~" bottom="~scr1height~" />
- </screen>
- </view>
-
- <view name="Screen 2 Pixel Aspect (~scr2nativeyaspect~:~scr2nativexaspect~)">
- <screen index="2">
- <bounds left="0" top="0" right="~scr2height~" bottom="~scr2width~" />
- <orientation rotate="270" />
- </screen>
- </view>
<view name="Stepping Stage Custom">
<screen index="0">
<bounds x="0" y="0" width="9" height="13.2" />
- <orientation rotate="270" />
</screen>
<screen index="1">
<bounds x="9.1" y="0" width="16" height="13.2" />
</screen>
<screen index="2">
<bounds x="25.2" y="0" width="9" height="13.2" />
- <orientation rotate="270" />
</screen>
</view>
diff --git a/src/mame/video/decodmd1.cpp b/src/mame/video/decodmd1.cpp
index d3af92b81e2..17a6bdefcf7 100644
--- a/src/mame/video/decodmd1.cpp
+++ b/src/mame/video/decodmd1.cpp
@@ -9,7 +9,6 @@
#include "emu.h"
#include "decodmd1.h"
-#include "rendlay.h"
#include "screen.h"
DEFINE_DEVICE_TYPE(DECODMD1, decodmd_type1_device, "decodmd1", "Data East Pinball Dot Matrix Display Type 1")
@@ -206,9 +205,7 @@ MACHINE_CONFIG_START(decodmd_type1_device::device_add_mconfig)
MCFG_TIMER_DRIVER_ADD_PERIODIC("nmi_timer", decodmd_type1_device, dmd_nmi, attotime::from_hz(2000)) // seems a lot
- config.set_default_layout(layout_lcd);
-
- MCFG_SCREEN_ADD("dmd",LCD)
+ MCFG_SCREEN_ADD("dmd", LCD)
MCFG_SCREEN_SIZE(128, 16)
MCFG_SCREEN_VISIBLE_AREA(0, 128-1, 0, 16-1)
MCFG_SCREEN_UPDATE_DRIVER(decodmd_type1_device, screen_update)
diff --git a/src/mame/video/decodmd2.cpp b/src/mame/video/decodmd2.cpp
index 752ef6c522f..00622e504e6 100644
--- a/src/mame/video/decodmd2.cpp
+++ b/src/mame/video/decodmd2.cpp
@@ -10,7 +10,6 @@
#include "emu.h"
#include "decodmd2.h"
-#include "rendlay.h"
#include "screen.h"
DEFINE_DEVICE_TYPE(DECODMD2, decodmd_type2_device, "decodmd2", "Data East Pinball Dot Matrix Display Type 2")
@@ -143,29 +142,28 @@ MACHINE_CONFIG_START(decodmd_type2_device::device_add_mconfig)
MCFG_MC6845_CHAR_WIDTH(8)
MCFG_MC6845_UPDATE_ROW_CB(decodmd_type2_device, crtc_update_row)
- config.set_default_layout(layout_lcd);
-
- MCFG_SCREEN_ADD("dmd",RASTER)
- MCFG_SCREEN_SIZE(128, 32)
- MCFG_SCREEN_VISIBLE_AREA(0, 128-1, 0, 32-1)
- MCFG_SCREEN_UPDATE_DEVICE("dmd6845", mc6845_device, screen_update)
- MCFG_SCREEN_REFRESH_RATE(60)
+ screen_device &screen(SCREEN(config, "dmd", SCREEN_TYPE_RASTER));
+ screen.set_native_aspect();
+ screen.set_size(128, 32);
+ screen.set_visarea(0, 128-1, 0, 32-1);
+ screen.set_screen_update("dmd6845", FUNC(mc6845_device::screen_update));
+ screen.set_refresh_hz(60);
MCFG_RAM_ADD(RAM_TAG)
MCFG_RAM_DEFAULT_SIZE("12K")
-
MACHINE_CONFIG_END
decodmd_type2_device::decodmd_type2_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : device_t(mconfig, DECODMD2, tag, owner, clock),
- m_cpu(*this,"dmdcpu"),
- m_mc6845(*this,"dmd6845"),
- m_rombank1(*this,"dmdbank1"),
- m_rombank2(*this,"dmdbank2"),
- m_rambank(*this,"dmdram"),
- m_ram(*this,RAM_TAG)
-{}
+ : device_t(mconfig, DECODMD2, tag, owner, clock)
+ , m_cpu(*this, "dmdcpu")
+ , m_mc6845(*this, "dmd6845")
+ , m_rombank1(*this, "dmdbank1")
+ , m_rombank2(*this, "dmdbank2")
+ , m_rambank(*this, "dmdram")
+ , m_ram(*this, RAM_TAG)
+{
+}
void decodmd_type2_device::device_start()
{
diff --git a/src/mame/video/decodmd3.cpp b/src/mame/video/decodmd3.cpp
index 414ab2c1a5e..2148973db2b 100644
--- a/src/mame/video/decodmd3.cpp
+++ b/src/mame/video/decodmd3.cpp
@@ -10,7 +10,6 @@
#include "emu.h"
#include "decodmd3.h"
-#include "rendlay.h"
#include "screen.h"
DEFINE_DEVICE_TYPE(DECODMD3, decodmd_type3_device, "decodmd3", "Data East Pinball Dot Matrix Display Type 3")
@@ -145,13 +144,12 @@ MACHINE_CONFIG_START(decodmd_type3_device::device_add_mconfig)
MCFG_MC6845_CHAR_WIDTH(16)
MCFG_MC6845_UPDATE_ROW_CB(decodmd_type3_device, crtc_update_row)
- config.set_default_layout(layout_lcd);
-
- MCFG_SCREEN_ADD("dmd",RASTER)
- MCFG_SCREEN_SIZE(192, 64)
- MCFG_SCREEN_VISIBLE_AREA(0, 192-1, 0, 64-1)
- MCFG_SCREEN_UPDATE_DEVICE("dmd6845", mc6845_device, screen_update)
- MCFG_SCREEN_REFRESH_RATE(60)
+ screen_device &screen(SCREEN(config, "dmd", SCREEN_TYPE_RASTER));
+ screen.set_native_aspect();
+ screen.set_size(192, 64);
+ screen.set_visarea(0, 192-1, 0, 64-1);
+ screen.set_screen_update("dmd6845", FUNC(mc6845_device::screen_update));
+ screen.set_refresh_hz(60);
MCFG_RAM_ADD(RAM_TAG)
MCFG_RAM_DEFAULT_SIZE("64K")
@@ -159,13 +157,14 @@ MACHINE_CONFIG_END
decodmd_type3_device::decodmd_type3_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
- : device_t(mconfig, DECODMD3, tag, owner, clock),
- m_cpu(*this,"dmdcpu"),
- m_mc6845(*this,"dmd6845"),
- m_ram(*this,RAM_TAG),
- m_rambank(*this,"dmdram"),
- m_rombank(*this,"dmdrom")
-{}
+ : device_t(mconfig, DECODMD3, tag, owner, clock)
+ , m_cpu(*this,"dmdcpu")
+ , m_mc6845(*this,"dmd6845")
+ , m_ram(*this,RAM_TAG)
+ , m_rambank(*this,"dmdram")
+ , m_rombank(*this,"dmdrom")
+{
+}
void decodmd_type3_device::device_start()
{
diff --git a/src/mame/video/gamate.cpp b/src/mame/video/gamate.cpp
index 39f62d0884f..6d678a625e0 100644
--- a/src/mame/video/gamate.cpp
+++ b/src/mame/video/gamate.cpp
@@ -26,7 +26,6 @@
#include "emu.h"
#include "video/gamate.h"
-#include "rendlay.h"
#include "screen.h"
DEFINE_DEVICE_TYPE(GAMATE_VIDEO, gamate_video_device, "gamate_vid", "Gamate Video Hardware")
@@ -316,8 +315,6 @@ MACHINE_CONFIG_START(gamate_video_device::device_add_mconfig)
MCFG_SCREEN_VIDEO_ATTRIBUTES(VIDEO_UPDATE_SCANLINE) // close approximate until we use timers to emulate exact video update
MCFG_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(0))
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD("palette", 4)
MCFG_PALETTE_INIT_OWNER(gamate_video_device,gamate)
MACHINE_CONFIG_END
diff --git a/src/mame/video/kyocera.cpp b/src/mame/video/kyocera.cpp
index 78e96a6833c..ba34a0a5e84 100644
--- a/src/mame/video/kyocera.cpp
+++ b/src/mame/video/kyocera.cpp
@@ -3,7 +3,6 @@
#include "emu.h"
#include "includes/kyocera.h"
-#include "rendlay.h"
#include "screen.h"
@@ -56,8 +55,6 @@ MACHINE_CONFIG_START(kc85_state::kc85_video)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 64-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(kc85_state,kc85)
@@ -84,8 +81,6 @@ MACHINE_CONFIG_START(tandy200_state::tandy200_video)
MCFG_SCREEN_VISIBLE_AREA(0, 240-1, 0, 128-1)
MCFG_SCREEN_PALETTE("palette")
- config.set_default_layout(layout_lcd);
-
MCFG_PALETTE_ADD("palette", 2)
MCFG_PALETTE_INIT_OWNER(tandy200_state,tandy200)
diff --git a/src/mame/video/wpc_dmd.cpp b/src/mame/video/wpc_dmd.cpp
index 98675d0561d..683ee65e407 100644
--- a/src/mame/video/wpc_dmd.cpp
+++ b/src/mame/video/wpc_dmd.cpp
@@ -2,7 +2,6 @@
// copyright-holders:Olivier Galibert
#include "emu.h"
#include "wpc_dmd.h"
-#include "rendlay.h"
#include "screen.h"
DEFINE_DEVICE_TYPE(WPC_DMD, wpc_dmd_device, "wpc_dmd", "Williams Pinball Controller Dot Matrix Display")
@@ -43,7 +42,6 @@ MACHINE_CONFIG_START(wpc_dmd_device::device_add_mconfig)
MCFG_SCREEN_UPDATE_DEVICE(DEVICE_SELF, wpc_dmd_device, screen_update)
MCFG_SCREEN_SIZE(128*4, 32*4)
MCFG_SCREEN_VISIBLE_AREA(0, 128*4-1, 0, 32*4-1)
- config.set_default_layout(layout_lcd);
MCFG_TIMER_DRIVER_ADD_PERIODIC("scanline", wpc_dmd_device, scanline_timer, attotime::from_hz(60*4*32))
MACHINE_CONFIG_END
diff --git a/src/osd/eigccppc.h b/src/osd/eigccppc.h
index 7f932eb1e88..56a4c65d5b1 100644
--- a/src/osd/eigccppc.h
+++ b/src/osd/eigccppc.h
@@ -9,8 +9,8 @@
***************************************************************************/
-#ifndef __EIGCCPPC__
-#define __EIGCCPPC__
+#ifndef MAME_OSD_EIGCCPPC_H
+#define MAME_OSD_EIGCCPPC_H
/***************************************************************************
@@ -283,4 +283,4 @@ _count_leading_ones(uint32_t value)
return result;
}
-#endif /* __EIGCCPPC__ */
+#endif // MAME_OSD_EIGCCPPC_H
diff --git a/src/osd/osdnet.h b/src/osd/osdnet.h
index 908a8f33242..87a1b56b9f0 100644
--- a/src/osd/osdnet.h
+++ b/src/osd/osdnet.h
@@ -1,8 +1,9 @@
// license:BSD-3-Clause
// copyright-holders:Carl
-#ifndef __OSDNET_H__
-#define __OSDNET_H__
+#ifndef MAME_OSD_OSDNET_H
+#define MAME_OSD_OSDNET_H
+#pragma once
class osd_netdev;
@@ -46,4 +47,5 @@ void add_netdev(const char *name, const char *description, create_netdev func);
void clear_netdev();
const std::vector<std::unique_ptr<osd_netdev::entry_t>>& get_netdev_list();
int netdev_count();
-#endif
+
+#endif // MAME_OSD_OSDNET_H
diff --git a/src/osd/osdsync.h b/src/osd/osdsync.h
index 71726a830cf..3a286b60afa 100644
--- a/src/osd/osdsync.h
+++ b/src/osd/osdsync.h
@@ -5,9 +5,10 @@
// osdsync.h - Core synchronization functions
//
//============================================================
+#ifndef MAME_OSD_OSDSYNC_H
+#define MAME_OSD_OSDSYNC_H
-#ifndef __OSDSYNC__
-#define __OSDSYNC__
+#pragma once
// C++ headers
#include <mutex>
@@ -163,4 +164,4 @@ private:
};
-#endif /* __OSDSYNC__ */
+#endif // MAME_OSD_OSDSYNC_H