summaryrefslogtreecommitdiffstatshomepage
path: root/src/devices/machine/laserdsc.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/devices/machine/laserdsc.cpp')
-rw-r--r--src/devices/machine/laserdsc.cpp26
1 files changed, 4 insertions, 22 deletions
diff --git a/src/devices/machine/laserdsc.cpp b/src/devices/machine/laserdsc.cpp
index 7794ebb026e..436a238fe88 100644
--- a/src/devices/machine/laserdsc.cpp
+++ b/src/devices/machine/laserdsc.cpp
@@ -92,8 +92,7 @@ laserdisc_device::laserdisc_device(const machine_config &mconfig, device_type ty
m_videopalette(nullptr),
m_overenable(false),
m_overindex(0),
- m_overtex(nullptr),
- m_overlay_palette(*this, finder_base::DUMMY_TAG)
+ m_overtex(nullptr)
{
// initialize overlay_config
m_orig_config.m_overposx = m_orig_config.m_overposy = 0.0f;
@@ -157,7 +156,7 @@ uint32_t laserdisc_device::screen_update(screen_device &screen, bitmap_rgb32 &bi
{
// handle the overlay if present
screen_bitmap &overbitmap = m_overbitmap[m_overindex];
- if (overbitmap.valid() && (!m_overupdate_ind16.isnull() || !m_overupdate_rgb32.isnull()))
+ if (overbitmap.valid() && !m_overupdate_rgb32.isnull())
{
// scale the cliprect to the overlay size
rectangle clip(m_overclip);
@@ -167,10 +166,7 @@ uint32_t laserdisc_device::screen_update(screen_device &screen, bitmap_rgb32 &bi
clip.max_y = (cliprect.max_y + 1) * overbitmap.height() / bitmap.height() - 1;
// call the update callback
- if (!m_overupdate_ind16.isnull())
- m_overupdate_ind16(screen, overbitmap.as_ind16(), clip);
- else
- m_overupdate_rgb32(screen, overbitmap.as_rgb32(), clip);
+ m_overupdate_rgb32(screen, overbitmap.as_rgb32(), clip);
}
// if this is the last update, do the rendering
@@ -218,10 +214,6 @@ uint32_t laserdisc_device::screen_update(screen_device &screen, bitmap_rgb32 &bi
void laserdisc_device::device_start()
{
- // if we have a palette and it's not started, wait for it
- if (m_overlay_palette != nullptr && !m_overlay_palette->started())
- throw device_missing_dependencies();
-
// initialize the various pieces
init_disc();
init_video();
@@ -278,9 +270,6 @@ void laserdisc_device::device_reset()
void laserdisc_device::device_validity_check(validity_checker &valid) const
{
- texture_format texformat = !m_overupdate_ind16.isnull() ? TEXFORMAT_PALETTE16 : TEXFORMAT_RGB32;
- if (m_overlay_palette == nullptr && texformat == TEXFORMAT_PALETTE16)
- osd_printf_error("Overlay screen does not have palette defined\n");
}
//-------------------------------------------------
@@ -741,19 +730,12 @@ void laserdisc_device::init_video()
if (m_overenable)
{
// bind our handlers
- m_overupdate_ind16.bind_relative_to(*owner());
m_overupdate_rgb32.bind_relative_to(*owner());
- // configure bitmap formats
- bitmap_format format = !m_overupdate_ind16.isnull() ? BITMAP_FORMAT_IND16 : BITMAP_FORMAT_RGB32;
- texture_format texformat = !m_overupdate_ind16.isnull() ? TEXFORMAT_PALETTEA16 : TEXFORMAT_ARGB32;
-
// allocate overlay bitmaps
for (auto & elem : m_overbitmap)
{
- elem.set_format(format, texformat);
- if (format==BITMAP_FORMAT_IND16)
- elem.set_palette(m_overlay_palette->palette());
+ elem.set_format(BITMAP_FORMAT_RGB32, TEXFORMAT_ARGB32);
elem.resize(m_overwidth, m_overheight);
}