summaryrefslogtreecommitdiffstats
path: root/src/emu
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu')
-rw-r--r--src/emu/render.cpp6
-rw-r--r--src/emu/rendersw.hxx100
-rw-r--r--src/emu/screen.h3
3 files changed, 3 insertions, 106 deletions
diff --git a/src/emu/render.cpp b/src/emu/render.cpp
index 34d29285162..e896c3748f1 100644
--- a/src/emu/render.cpp
+++ b/src/emu/render.cpp
@@ -361,7 +361,7 @@ void render_texture::set_bitmap(bitmap_t &bitmap, const rectangle &sbounds, text
assert(bitmap.cliprect().contains(sbounds));
// ensure we have a valid palette for palettized modes
- if (format == TEXFORMAT_PALETTE16 || format == TEXFORMAT_PALETTEA16)
+ if (format == TEXFORMAT_PALETTE16)
assert(bitmap.palette() != nullptr);
// invalidate references to the old bitmap
@@ -501,7 +501,6 @@ const rgb_t *render_texture::get_adjusted_palette(render_container &container)
switch (m_format)
{
case TEXFORMAT_PALETTE16:
- case TEXFORMAT_PALETTEA16:
assert(m_bitmap->palette() != nullptr);
@@ -684,7 +683,6 @@ const rgb_t *render_container::bcg_lookup_table(int texformat, palette_t *palett
switch (texformat)
{
case TEXFORMAT_PALETTE16:
- case TEXFORMAT_PALETTEA16:
if (m_palclient == nullptr) // if adjusted palette hasn't been created yet, create it
{
m_palclient = std::make_unique<palette_client>(*palette);
@@ -2866,7 +2864,7 @@ void render_target::add_clear_and_optimize_primitive_list(render_primitive_list
case render_primitive::QUAD:
{
// stop when we hit an alpha texture
- if (PRIMFLAG_GET_TEXFORMAT(prim.flags) == TEXFORMAT_ARGB32 || PRIMFLAG_GET_TEXFORMAT(prim.flags) == TEXFORMAT_PALETTEA16)
+ if (PRIMFLAG_GET_TEXFORMAT(prim.flags) == TEXFORMAT_ARGB32)
goto done;
// if this quad can't be cleanly removed from the extents list, we're done
diff --git a/src/emu/rendersw.hxx b/src/emu/rendersw.hxx
index 32df8b833ff..8dbf28b35b3 100644
--- a/src/emu/rendersw.hxx
+++ b/src/emu/rendersw.hxx
@@ -796,102 +796,6 @@ private:
//**************************************************************************
- // 16-BIT ALPHA PALETTE RASTERIZERS
- //**************************************************************************
-
- //-------------------------------------------------
- // draw_quad_palettea16_alpha - perform
- // rasterization using standard alpha blending
- //-------------------------------------------------
-
- static void draw_quad_palettea16_alpha(const render_primitive &prim, _PixelType *dstdata, u32 pitch, quad_setup_data &setup)
- {
- s32 dudx = setup.dudx;
- s32 dvdx = setup.dvdx;
- s32 endx = setup.endx;
-
- // ensure all parameters are valid
- assert(prim.texture.palette != nullptr);
-
- // fast case: no coloring, no alpha
- if (prim.color.r >= 1.0f && prim.color.g >= 1.0f && prim.color.b >= 1.0f && is_opaque(prim.color.a))
- {
- // loop over rows
- for (s32 y = setup.starty; y < setup.endy; y++)
- {
- _PixelType *dest = dstdata + y * pitch + setup.startx;
- s32 curu = setup.startu + (y - setup.starty) * setup.dudy;
- s32 curv = setup.startv + (y - setup.starty) * setup.dvdy;
-
- // loop over cols
- for (s32 x = setup.startx; x < endx; x++)
- {
- u32 pix = get_texel_palette16a(prim.texture, curu, curv);
- u32 ta = pix >> 24;
- if (ta != 0)
- {
- u32 dpix = _NoDestRead ? 0 : *dest;
- u32 invta = 0x100 - ta;
- u32 r = (source32_r(pix) * ta + dest_r(dpix) * invta) >> 8;
- u32 g = (source32_g(pix) * ta + dest_g(dpix) * invta) >> 8;
- u32 b = (source32_b(pix) * ta + dest_b(dpix) * invta) >> 8;
-
- *dest = dest_assemble_rgb(r, g, b);
- }
- dest++;
- curu += dudx;
- curv += dvdx;
- }
- }
- }
-
- // alpha and/or coloring case
- else
- {
- u32 sr = u32(256.0f * prim.color.r);
- u32 sg = u32(256.0f * prim.color.g);
- u32 sb = u32(256.0f * prim.color.b);
- u32 sa = u32(256.0f * prim.color.a);
-
- // clamp R,G,B and inverse A to 0-256 range
- if (sr > 0x100) { if (s32(sr) < 0) sr = 0; else sr = 0x100; }
- if (sg > 0x100) { if (s32(sg) < 0) sg = 0; else sg = 0x100; }
- if (sb > 0x100) { if (s32(sb) < 0) sb = 0; else sb = 0x100; }
- if (sa > 0x100) { if (s32(sa) < 0) sa = 0; else sa = 0x100; }
-
- // loop over rows
- for (s32 y = setup.starty; y < setup.endy; y++)
- {
- _PixelType *dest = dstdata + y * pitch + setup.startx;
- s32 curu = setup.startu + (y - setup.starty) * setup.dudy;
- s32 curv = setup.startv + (y - setup.starty) * setup.dvdy;
-
- // loop over cols
- for (s32 x = setup.startx; x < endx; x++)
- {
- u32 pix = get_texel_palette16a(prim.texture, curu, curv);
- u32 ta = (pix >> 24) * sa;
- if (ta != 0)
- {
- u32 dpix = _NoDestRead ? 0 : *dest;
- u32 invsta = (0x10000 - ta) << 8;
- u32 r = (source32_r(pix) * sr * ta + dest_r(dpix) * invsta) >> 24;
- u32 g = (source32_g(pix) * sg * ta + dest_g(dpix) * invsta) >> 24;
- u32 b = (source32_b(pix) * sb * ta + dest_b(dpix) * invsta) >> 24;
-
- *dest = dest_assemble_rgb(r, g, b);
- }
- dest++;
- curu += dudx;
- curv += dvdx;
- }
- }
- }
- }
-
-
-
- //**************************************************************************
// 16-BIT YUY RASTERIZERS
//**************************************************************************
@@ -1884,10 +1788,6 @@ private:
draw_quad_palette16_add(prim, dstdata, pitch, setup);
break;
- case PRIMFLAG_TEXFORMAT(TEXFORMAT_PALETTEA16) | PRIMFLAG_BLENDMODE(BLENDMODE_ALPHA):
- draw_quad_palettea16_alpha(prim, dstdata, pitch, setup);
- break;
-
case PRIMFLAG_TEXFORMAT(TEXFORMAT_YUY16) | PRIMFLAG_BLENDMODE(BLENDMODE_NONE):
case PRIMFLAG_TEXFORMAT(TEXFORMAT_YUY16) | PRIMFLAG_BLENDMODE(BLENDMODE_ALPHA):
draw_quad_yuy16_none(prim, dstdata, pitch, setup);
diff --git a/src/emu/screen.h b/src/emu/screen.h
index a2b0b5eb0a4..98d049be8ae 100644
--- a/src/emu/screen.h
+++ b/src/emu/screen.h
@@ -33,8 +33,7 @@ enum screen_type_enum
enum texture_format
{
TEXFORMAT_UNDEFINED = 0, // require a format to be specified
- TEXFORMAT_PALETTE16, // 16bpp palettized, alpha ignored
- TEXFORMAT_PALETTEA16, // 16bpp palettized, alpha respected
+ TEXFORMAT_PALETTE16, // 16bpp palettized, no alpha
TEXFORMAT_RGB32, // 32bpp 8-8-8 RGB
TEXFORMAT_ARGB32, // 32bpp 8-8-8-8 ARGB
TEXFORMAT_YUY16 // 16bpp 8-8 Y/Cb, Y/Cr in sequence