From 805c32201e0a48fdfc8724f437dc0c2d37d63902 Mon Sep 17 00:00:00 2001 From: hap Date: Tue, 2 Jul 2019 18:03:59 +0200 Subject: namco_c355spr: don't add shadow offset to black_pen, it will crash MAME(and black+shadow = black anyway) (nw) --- src/mame/video/namco_c355spr.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/mame/video/namco_c355spr.cpp b/src/mame/video/namco_c355spr.cpp index 6968dd8d697..7a484d86973 100644 --- a/src/mame/video/namco_c355spr.cpp +++ b/src/mame/video/namco_c355spr.cpp @@ -49,7 +49,8 @@ void namco_c355spr_device::zdrawgfxzoom( if (gfx) { device_palette_interface &palette = gfx->palette(); - int shadow_offset = (palette.shadows_enabled()) ? palette.entries() : 0; + const int shadow_offset = (palette.shadows_enabled()) ? palette.entries() : 0; + const pen_t black = palette.black_pen(); const pen_t *pal = &palette.pen(gfx->colorbase() + gfx->granularity() * (color % gfx->colors())); const u8 *source_base = gfx->get_data(code % gfx->elements()); int sprite_screen_height = (scaley * gfx->height() + 0x8000) >> 16; @@ -159,7 +160,8 @@ void namco_c355spr_device::zdrawgfxzoom( { if (color == 0xf && c == 0xfe && shadow_offset) { - dest[x] |= shadow_offset; + if (dest[x] != black) + dest[x] |= shadow_offset; } else { -- cgit v1.2.3