mirror of
https://github.com/holub/mame
synced 2025-05-25 23:35:26 +03:00
Fixed resolution, offset and shadowing in Rushing Heroes [David Haywood]
This commit is contained in:
parent
cd9b2b713f
commit
3fbd30fc8d
@ -1557,12 +1557,22 @@ static MACHINE_DRIVER_START( gxtype4 )
|
|||||||
MDRV_SCREEN_MODIFY("screen")
|
MDRV_SCREEN_MODIFY("screen")
|
||||||
MDRV_SCREEN_SIZE(128*8, 32*8)
|
MDRV_SCREEN_SIZE(128*8, 32*8)
|
||||||
// MDRV_SCREEN_VISIBLE_AREA(0, 128*8-1, 0, 32*8-1)
|
// MDRV_SCREEN_VISIBLE_AREA(0, 128*8-1, 0, 32*8-1)
|
||||||
MDRV_SCREEN_VISIBLE_AREA(0, 576-1, 16, 32*8-1-16)
|
// MDRV_SCREEN_VISIBLE_AREA(0, 576-1, 16, 32*8-1-16)
|
||||||
|
MDRV_SCREEN_VISIBLE_AREA(0, 384-1, 16, 32*8-1-16)
|
||||||
|
|
||||||
MDRV_PALETTE_LENGTH(8192)
|
MDRV_PALETTE_LENGTH(8192)
|
||||||
MDRV_GFXDECODE(type4)
|
MDRV_GFXDECODE(type4)
|
||||||
MDRV_VIDEO_START(konamigx_type4)
|
MDRV_VIDEO_START(konamigx_type4)
|
||||||
MACHINE_DRIVER_END
|
MACHINE_DRIVER_END
|
||||||
|
|
||||||
|
static MACHINE_DRIVER_START( gxtype4vsnet )
|
||||||
|
MDRV_IMPORT_FROM(gxtype4)
|
||||||
|
|
||||||
|
MDRV_SCREEN_MODIFY("screen")
|
||||||
|
MDRV_SCREEN_SIZE(128*8, 32*8)
|
||||||
|
MDRV_SCREEN_VISIBLE_AREA(0, 576-1, 16, 32*8-1-16)
|
||||||
|
MACHINE_DRIVER_END
|
||||||
|
|
||||||
static MACHINE_DRIVER_START( winspike )
|
static MACHINE_DRIVER_START( winspike )
|
||||||
MDRV_IMPORT_FROM(konamigx)
|
MDRV_IMPORT_FROM(konamigx)
|
||||||
|
|
||||||
@ -3704,11 +3714,11 @@ GAME( 1994, soccerssja,soccerss, gxtype3, type3, konamigx, ROT0, "Konami", "Soc
|
|||||||
GAME( 1994, soccerssa,soccerss, gxtype3, type3, konamigx, ROT0, "Konami", "Soccer Superstars (ver AAA)", GAME_IMPERFECT_GRAPHICS )
|
GAME( 1994, soccerssa,soccerss, gxtype3, type3, konamigx, ROT0, "Konami", "Soccer Superstars (ver AAA)", GAME_IMPERFECT_GRAPHICS )
|
||||||
|
|
||||||
/* Type 4: dual monitor output and 53936 on the ROM board, external palette RAM, DMA protection */
|
/* Type 4: dual monitor output and 53936 on the ROM board, external palette RAM, DMA protection */
|
||||||
GAME( 1996, vsnetscr, konamigx, gxtype4, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver EAD)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
GAME( 1996, vsnetscr, konamigx, gxtype4vsnet, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver EAD)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
||||||
GAME( 1996, vsnetscreb,vsnetscr, gxtype4, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver EAB)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
GAME( 1996, vsnetscreb,vsnetscr, gxtype4vsnet, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver EAB)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
||||||
GAME( 1996, vsnetscru, vsnetscr, gxtype4, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver UAB)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
GAME( 1996, vsnetscru, vsnetscr, gxtype4vsnet, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver UAB)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
||||||
GAME( 1996, vsnetscra, vsnetscr, gxtype4, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver AAA)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
GAME( 1996, vsnetscra, vsnetscr, gxtype4vsnet, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver AAA)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
||||||
GAME( 1996, vsnetscrj, vsnetscr, gxtype4, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver JAB)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
GAME( 1996, vsnetscrj, vsnetscr, gxtype4vsnet, type3, konamigx, ROT0, "Konami", "Versus Net Soccer (ver JAB)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
||||||
GAME( 1996, rungun2, konamigx, gxtype4, type3, konamigx, ROT0, "Konami", "Run and Gun 2 (ver UAA)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
GAME( 1996, rungun2, konamigx, gxtype4, type3, konamigx, ROT0, "Konami", "Run and Gun 2 (ver UAA)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
||||||
GAME( 1996, slamdnk2, rungun2, gxtype4, type3, konamigx, ROT0, "Konami", "Slam Dunk 2 (ver JAA)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
GAME( 1996, slamdnk2, rungun2, gxtype4, type3, konamigx, ROT0, "Konami", "Slam Dunk 2 (ver JAA)", GAME_NOT_WORKING|GAME_UNEMULATED_PROTECTION )
|
||||||
GAME( 1996, rushhero, konamigx, gxtype4, type3, konamigx, ROT0, "Konami", "Rushing Heroes (ver UAB)", GAME_UNEMULATED_PROTECTION | GAME_NOT_WORKING )
|
GAME( 1996, rushhero, konamigx, gxtype4, type3, konamigx, ROT0, "Konami", "Rushing Heroes (ver UAB)", GAME_UNEMULATED_PROTECTION | GAME_NOT_WORKING )
|
||||||
|
@ -342,7 +342,7 @@ INLINE void zdrawgfxzoom32GP(
|
|||||||
UINT8 *ozbuf_ptr;
|
UINT8 *ozbuf_ptr;
|
||||||
UINT8 *szbuf_ptr;
|
UINT8 *szbuf_ptr;
|
||||||
const pen_t *pal_base;
|
const pen_t *pal_base;
|
||||||
const pen_t *shd_base;
|
//const pen_t *shd_base;
|
||||||
UINT32 *dst_ptr;
|
UINT32 *dst_ptr;
|
||||||
|
|
||||||
// outter loop
|
// outter loop
|
||||||
@ -389,7 +389,7 @@ INLINE void zdrawgfxzoom32GP(
|
|||||||
src_base = gfx_element_get_data(gfx, code % gfx->total_elements);
|
src_base = gfx_element_get_data(gfx, code % gfx->total_elements);
|
||||||
|
|
||||||
pal_base = gfx->machine->pens + gfx->color_base + (color % gfx->total_colors) * granularity;
|
pal_base = gfx->machine->pens + gfx->color_base + (color % gfx->total_colors) * granularity;
|
||||||
shd_base = gfx->machine->shadow_table;
|
//shd_base = gfx->machine->pens;
|
||||||
|
|
||||||
dst_ptr = (UINT32 *)bitmap->base;
|
dst_ptr = (UINT32 *)bitmap->base;
|
||||||
dst_pitch = bitmap->rowpixels;
|
dst_pitch = bitmap->rowpixels;
|
||||||
@ -606,8 +606,8 @@ INLINE void zdrawgfxzoom32GP(
|
|||||||
eax = dst_ptr[ecx];
|
eax = dst_ptr[ecx];
|
||||||
szbuf_ptr[ecx*2] = z8;
|
szbuf_ptr[ecx*2] = z8;
|
||||||
szbuf_ptr[ecx*2+1] = p8;
|
szbuf_ptr[ecx*2+1] = p8;
|
||||||
eax = (eax>>9&0x7c00) | (eax>>6&0x03e0) | (eax>>3&0x001f);
|
//eax = (eax>>9&0x7c00) | (eax>>6&0x03e0) | (eax>>3&0x001f);
|
||||||
dst_ptr[ecx] = shd_base[eax];
|
dst_ptr[ecx] = alpha_blend_r32( eax, 0x00000000, 128);
|
||||||
}
|
}
|
||||||
while (++ecx);
|
while (++ecx);
|
||||||
|
|
||||||
@ -741,8 +741,8 @@ INLINE void zdrawgfxzoom32GP(
|
|||||||
eax = dst_ptr[ecx];
|
eax = dst_ptr[ecx];
|
||||||
szbuf_ptr[ecx*2] = z8;
|
szbuf_ptr[ecx*2] = z8;
|
||||||
szbuf_ptr[ecx*2+1] = p8;
|
szbuf_ptr[ecx*2+1] = p8;
|
||||||
eax = (eax>>9&0x7c00) | (eax>>6&0x03e0) | (eax>>3&0x001f);
|
//eax = (eax>>9&0x7c00) | (eax>>6&0x03e0) | (eax>>3&0x001f);
|
||||||
dst_ptr[ecx] = shd_base[eax];
|
dst_ptr[ecx] = alpha_blend_r32( eax, 0x00000000, 128);
|
||||||
}
|
}
|
||||||
while (++ecx);
|
while (++ecx);
|
||||||
|
|
||||||
|
@ -296,7 +296,7 @@ VIDEO_START(konamigx_5bpp)
|
|||||||
|
|
||||||
VIDEO_START(winspike)
|
VIDEO_START(winspike)
|
||||||
{
|
{
|
||||||
K056832_vh_start(machine, "gfx1", K056832_BPP_8, 0, NULL, konamigx_alpha_tile_callback, 0);
|
K056832_vh_start(machine, "gfx1", K056832_BPP_8, 0, NULL, konamigx_alpha_tile_callback, 2);
|
||||||
K055673_vh_start(machine, "gfx2", K055673_LAYOUT_LE2, -53, -23, konamigx_type2_sprite_callback);
|
K055673_vh_start(machine, "gfx2", K055673_LAYOUT_LE2, -53, -23, konamigx_type2_sprite_callback);
|
||||||
|
|
||||||
_gxcommoninitnosprites(machine);
|
_gxcommoninitnosprites(machine);
|
||||||
@ -371,7 +371,7 @@ VIDEO_START(konamigx_type3)
|
|||||||
VIDEO_START(konamigx_type4)
|
VIDEO_START(konamigx_type4)
|
||||||
{
|
{
|
||||||
K056832_vh_start(machine, "gfx1", K056832_BPP_8, 0, NULL, konamigx_type2_tile_callback, 0);
|
K056832_vh_start(machine, "gfx1", K056832_BPP_8, 0, NULL, konamigx_type2_tile_callback, 0);
|
||||||
K055673_vh_start(machine, "gfx2", K055673_LAYOUT_GX6, -132, -24, konamigx_type2_sprite_callback);
|
K055673_vh_start(machine, "gfx2", K055673_LAYOUT_GX6, -78, -24, konamigx_type2_sprite_callback);
|
||||||
|
|
||||||
_gxcommoninitnosprites(machine);
|
_gxcommoninitnosprites(machine);
|
||||||
|
|
||||||
@ -379,8 +379,15 @@ VIDEO_START(konamigx_type4)
|
|||||||
gx_rozenable = 0;
|
gx_rozenable = 0;
|
||||||
gx_specialrozenable = 3;
|
gx_specialrozenable = 3;
|
||||||
|
|
||||||
|
|
||||||
|
K056832_set_LayerOffset(0, -22, 0);
|
||||||
|
K056832_set_LayerOffset(1, -22, 0);
|
||||||
|
K056832_set_LayerOffset(2, -22, 0);
|
||||||
|
K056832_set_LayerOffset(3, -22, 0);
|
||||||
|
|
||||||
|
|
||||||
K053936_wraparound_enable(0, 0);
|
K053936_wraparound_enable(0, 0);
|
||||||
K053936GP_set_offset(0, 0, 0);
|
K053936GP_set_offset(1, -36, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
VIDEO_START(konamigx_6bpp_2)
|
VIDEO_START(konamigx_6bpp_2)
|
||||||
|
@ -5439,12 +5439,18 @@ static void K056832_UpdatePageLayout(void)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// winning spike doesn't like layer association..
|
||||||
|
if (K056832_djmain_hack==2)
|
||||||
|
K056832_LayerAssociation = 0;
|
||||||
|
|
||||||
|
|
||||||
// disable all tilemaps
|
// disable all tilemaps
|
||||||
for (pageIndex=0; pageIndex<K056832_PAGE_COUNT; pageIndex++)
|
for (pageIndex=0; pageIndex<K056832_PAGE_COUNT; pageIndex++)
|
||||||
{
|
{
|
||||||
K056832_LayerAssociatedWithPage[pageIndex] = -1;
|
K056832_LayerAssociatedWithPage[pageIndex] = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// enable associated tilemaps
|
// enable associated tilemaps
|
||||||
for (layer=0; layer<4; layer++)
|
for (layer=0; layer<4; layer++)
|
||||||
{
|
{
|
||||||
@ -5460,7 +5466,7 @@ static void K056832_UpdatePageLayout(void)
|
|||||||
for (c=0; c<colspan; c++)
|
for (c=0; c<colspan; c++)
|
||||||
{
|
{
|
||||||
pageIndex = (((rowstart + r) & 3) << 2) + ((colstart + c) & 3);
|
pageIndex = (((rowstart + r) & 3) << 2) + ((colstart + c) & 3);
|
||||||
if (!K056832_djmain_hack || K056832_LayerAssociatedWithPage[pageIndex] == -1) //*
|
if (!(K056832_djmain_hack==1) || K056832_LayerAssociatedWithPage[pageIndex] == -1) //*
|
||||||
K056832_LayerAssociatedWithPage[pageIndex] = setlayer;
|
K056832_LayerAssociatedWithPage[pageIndex] = setlayer;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user