From 44ddd1deae84ba965f5e88d5dc816d880792d328 Mon Sep 17 00:00:00 2001 From: iq_132 <1191709+iq132@users.noreply.github.com> Date: Mon, 29 Sep 2014 01:36:27 +0000 Subject: [PATCH] Fix k053247 sprite flipping. (Fixes sprites at end of Xexex) Fix line scrolling in k056832 (optimizations were a bit too optimistic :( ) --- src/burn/drv/konami/k053247.cpp | 8 ++++---- src/burn/drv/konami/k056832.cpp | 32 -------------------------------- 2 files changed, 4 insertions(+), 36 deletions(-) diff --git a/src/burn/drv/konami/k053247.cpp b/src/burn/drv/konami/k053247.cpp index 095b25025..b283f7a0a 100644 --- a/src/burn/drv/konami/k053247.cpp +++ b/src/burn/drv/konami/k053247.cpp @@ -477,23 +477,23 @@ void K053247SpritesRender() if (shadow || wtable == stable) { if (mirrory && h == 1) - konami_render_zoom_shadow_tile(gfxbase, c, nBpp, color, sx, sy, flipx, !flipy, 16, 16, zw << 12, zh << 12, primask, highlight); + konami_render_zoom_shadow_tile(gfxbase, c, nBpp, color, sx, sy, fx, !fy, 16, 16, zw << 12, zh << 12, primask, highlight); - konami_render_zoom_shadow_tile(gfxbase, c, nBpp, color, sx, sy, flipx, flipy, 16, 16, zw << 12, zh << 12, primask, highlight); + konami_render_zoom_shadow_tile(gfxbase, c, nBpp, color, sx, sy, fx, fy, 16, 16, zw << 12, zh << 12, primask, highlight); continue; } if (mirrory && h == 1) { if (nozoom) { - konami_draw_16x16_prio_tile(gfxbase, c, nBpp, color, sx, sy, flipx, !flipy, primask); + konami_draw_16x16_prio_tile(gfxbase, c, nBpp, color, sx, sy, fx, !fy, primask); } else { konami_draw_16x16_priozoom_tile(gfxbase, c, nBpp, color, 0, sx, sy, fx, !fy, 16, 16, zw<<12, zh<<12, primask); } } if (nozoom) { - konami_draw_16x16_prio_tile(gfxbase, c, nBpp, color, sx, sy, flipx, flipy, primask); + konami_draw_16x16_prio_tile(gfxbase, c, nBpp, color, sx, sy, fx, fy, primask); } else { konami_draw_16x16_priozoom_tile(gfxbase, c, nBpp, color, 0, sx, sy, fx, fy, 16, 16, zw<<12, zh<<12, primask); } diff --git a/src/burn/drv/konami/k056832.cpp b/src/burn/drv/konami/k056832.cpp index 799b7304f..e9a48fac8 100644 --- a/src/burn/drv/konami/k056832.cpp +++ b/src/burn/drv/konami/k056832.cpp @@ -516,38 +516,6 @@ static void draw_layer_internal(INT32 layer, INT32 pageIndex, INT32 *clip, INT32 UINT8 *pri = konami_priority_bitmap + ((sy - CLIP_MINY) * nScreenWidth) - CLIP_MINX; UINT32 *dst = konami_bitmap32 + ((sy - CLIP_MINY) * nScreenWidth) - CLIP_MINX; - // not clipped - if (sy >= CLIP_MINY && sy < ((nScreenHeight - 7) + CLIP_MINY) && sx >= CLIP_MINX && sx < ((nScreenWidth - 7) + CLIP_MINX)) - { - if (alpha_enable) { - for (INT32 iy = 0; iy < 8; iy++, dst += nScreenWidth, pri += nScreenWidth) { - for (INT32 ix = 0; ix < 8; ix++) { - INT32 xx = sx+ix; - - INT32 pxl = rom[((iy*8)+ix)^flip_tile]; - - if (pxl || opaque) { - dst[xx] = alpha_blend(dst[xx], pal[pxl], alpha); - pri[xx] = priority; - } - } - } - } else { - for (INT32 iy = 0; iy < 8; iy++, dst += nScreenWidth, pri += nScreenWidth) { - for (INT32 ix = 0; ix < 8; ix++) { - INT32 xx = sx+ix; - - INT32 pxl = rom[((iy*8)+ix)^flip_tile]; - - if (pxl || opaque) { - dst[xx] = pal[pxl]; - pri[xx] = priority; - } - } - } - } - } - else // clipped { if (alpha_enable) { for (INT32 iy = 0; iy < 8; iy++, dst += nScreenWidth, pri += nScreenWidth) {