From 350260f0556eb001a5ca1736db5c7051a9621f6a Mon Sep 17 00:00:00 2001 From: Angelo Salese Date: Mon, 9 Nov 2009 22:17:32 +0000 Subject: [PATCH] =?UTF-8?q?-----Messaggio=20originale-----=20Da:=20David?= =?UTF-8?q?=20Haywood=20[mailto:neohaze@nildram.co.uk]=20Inviato:=20luned?= =?UTF-8?q?=C3=AC=209=20novembre=202009=2022.59=20A:=20Angelo=20Salese=20O?= =?UTF-8?q?ggetto:=20Change=20order=20in=20which=20KonamiGX=20sprite=20off?= =?UTF-8?q?sets=20are=20applied?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit this allows the soccerss sprites to not clip at the edges due to offset we apply (there is still 8 pixel clipping, but this is part of the game and should be hidden by a missing part of the text layer) note, I haven't tested other GX games, if it breaks you get to keep the pieces because the achocode in machine/konamigx.c (which really should be video/konamigx.c ...) is impossible to follow* * it contains actual operations in if statements, extensive reuse of 'temp' variables for 200 different meanings to save creating a new variable, pseudo asm code, and arbitary sized buffers to do sorting, and code which generally makes no sense at all. 99^ of it iv video related reimplemnetations of konamigx.c with no safety checking and hacks for gx system. --- src/mame/machine/konamigx.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mame/machine/konamigx.c b/src/mame/machine/konamigx.c index 975e6e2e50b..e1dcad32f0c 100644 --- a/src/mame/machine/konamigx.c +++ b/src/mame/machine/konamigx.c @@ -1591,12 +1591,13 @@ void konamigx_mixer(running_machine *machine, bitmap_t *bitmap, const rectangle // apply wrapping and global offsets temp = wrapsize-1; + + ox += K053247_dx; + oy -= K053247_dy; ox = ( ox - offx) & temp; oy = (-oy - offy) & temp; if (ox >= xwraplim) ox -= wrapsize; if (oy >= ywraplim) oy -= wrapsize; - ox += K053247_dx; - oy += K053247_dy; temp = temp4>>8 & 0x0f;