mirror of
https://github.com/holub/mame
synced 2025-05-05 05:53:05 +03:00
Reverted changes to decbac06 device flipscreen support, now that this can be done properly.
Also reverted the decmxc06 changes. This breaks again the flipped sprites in some games, but fixes the actfanct regression. (nw)
This commit is contained in:
parent
8acaf0366b
commit
f059fb9013
@ -269,12 +269,7 @@ void deco_bac06_device::custom_tilemap_draw(bitmap_ind16 &bitmap,
|
||||
*/
|
||||
|
||||
if (machine().driver_data()->flip_screen())
|
||||
{
|
||||
if (cliprect.max_y <= 31*8-1) // workaround till all drivers using this device are updated to raw params
|
||||
src_y = (src_bitmap.height() - 256) - scrolly; //actfancr.c, madmotor.c, pcktgal.c and stadhero.c
|
||||
else
|
||||
src_y = (src_bitmap.height() - 256 - 8) - scrolly; // dec0.c and dec8.c have been updated to raw params
|
||||
}
|
||||
src_y = (src_bitmap.height() - 256) - scrolly;
|
||||
else
|
||||
src_y = scrolly;
|
||||
|
||||
@ -285,12 +280,7 @@ void deco_bac06_device::custom_tilemap_draw(bitmap_ind16 &bitmap,
|
||||
src_x=scrollx;
|
||||
|
||||
if (machine().driver_data()->flip_screen())
|
||||
{
|
||||
if (cliprect.max_x == 32*8-1) // workaround till all drivers using this device are updated to raw params
|
||||
src_x=(src_bitmap.width() - 256) - src_x; //actfancr.c, madmotor.c, pcktgal.c and stadhero.c
|
||||
else
|
||||
src_x=(src_bitmap.width() - 256 - 74) - src_x; // dec0.c and dec8.c have been updated to raw params
|
||||
}
|
||||
src_x=(src_bitmap.width() - 256) - src_x;
|
||||
|
||||
for (x=0; x<=cliprect.max_x; x++) {
|
||||
if (col_scroll_enabled)
|
||||
|
@ -83,20 +83,8 @@ void deco_karnovsprites_device::draw_sprites( running_machine &machine, bitmap_i
|
||||
y = 256 - y;
|
||||
if (machine.driver_data()->flip_screen())
|
||||
{
|
||||
// workaround till all drivers using this device are updated to raw params
|
||||
|
||||
if (cliprect.max_x == 32*8-1) //karnov.c
|
||||
{
|
||||
y = 240 - y;
|
||||
x = 240 - x;
|
||||
}
|
||||
|
||||
else //dec8.c has been updated to raw params
|
||||
{
|
||||
y = 240 + 8 - y;
|
||||
x = 240 + 74 - x;
|
||||
}
|
||||
|
||||
y = 240 - y;
|
||||
x = 240 - x;
|
||||
if (fx) fx = 0; else fx = 1;
|
||||
if (fy) fy = 0; else fy = 1;
|
||||
if (extra) y = y - 16;
|
||||
|
@ -97,22 +97,10 @@ void deco_mxc06_device::draw_sprites( running_machine &machine, bitmap_ind16 &bi
|
||||
sx = 240 - sx;
|
||||
sy = 240 - sy;
|
||||
|
||||
if (flipy)
|
||||
incy = -1;
|
||||
|
||||
if (machine.driver_data()->flip_screen())
|
||||
{
|
||||
// workaround till all drivers using this device are updated to raw params
|
||||
if (cliprect.max_x == 32*8-1) //actfancr.c, madmotor.c, stadhero.c and vaportra.c
|
||||
{
|
||||
sy = 240 - sy;
|
||||
sx = 240 - sx;
|
||||
}
|
||||
else // dec0.c and dec8.c have been updated to raw params
|
||||
{
|
||||
sy = 240 + 8 - sy;
|
||||
sx = 240 + 74 - sx;
|
||||
}
|
||||
sy = 240 - sy;
|
||||
sx = 240 - sx;
|
||||
if (flipx) flipx = 0; else flipx = 1;
|
||||
if (flipy) flipy = 0; else flipy = 1;
|
||||
mult = 16;
|
||||
@ -126,9 +114,14 @@ void deco_mxc06_device::draw_sprites( running_machine &machine, bitmap_ind16 &bi
|
||||
code = spriteram[offs + 1] & 0x1fff;
|
||||
|
||||
code &= ~(h-1);
|
||||
|
||||
code += h-1;
|
||||
incy = 1;
|
||||
|
||||
if (flipy)
|
||||
incy = -1;
|
||||
else
|
||||
{
|
||||
code += h-1;
|
||||
incy = 1;
|
||||
}
|
||||
|
||||
for (y = 0; y < h; y++)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user