implemented proper shadow handling. Some intial cleanup.

00233: ikari: The current implementation of the shadow in Ikari Warriors and Victory Road is wrong.
This commit is contained in:
Nicola Salmoria 2008-08-13 17:53:31 +00:00
parent a0574bb473
commit ac821a6f88
4 changed files with 240 additions and 377 deletions

View File

@ -62,7 +62,7 @@ static UINT8 *hal21_vreg, *hal21_sndfifo;
static UINT8 *textram;
static UINT8 *aso_scroll_sync;
static int color[2];
static int snk_blink_parity; // FIXME likely wrong
/**************************************************************************/
// Test Handlers

View File

@ -570,110 +570,63 @@ ADDRESS_MAP_END
/*********************************************************************/
static const gfx_layout char512 =
static const gfx_layout charlayout_4bpp =
{
8,8,
512,
RGN_FRAC(1,1),
4,
{ 0, 1, 2, 3 },
{ 4, 0, 12, 8, 20, 16, 28, 24},
{ 4*1, 4*0, 4*3, 4*2, 4*5, 4*4, 4*7, 4*6 },
{ 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32 },
256
32*8
};
static const gfx_layout char1024 =
{
8,8,
1024,
4,
{ 0, 1, 2, 3 },
{ 4, 0, 12, 8, 20, 16, 28, 24},
{ 0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32 },
256
};
static const gfx_layout tile1024 =
{
16,16,
1024,
4,
{ 0, 1, 2, 3 },
{ 4, 0, 12, 8, 20, 16, 28, 24,
32+4, 32+0, 32+12, 32+8, 32+20, 32+16, 32+28, 32+24 },
{ 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64,
8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
128*8
};
static const gfx_layout tile2048 =
{
16,16,
2048,
4,
{ 0, 1, 2, 3 },
{ 4, 0, 12, 8, 20, 16, 28, 24,
32+4, 32+0, 32+12, 32+8, 32+20, 32+16, 32+28, 32+24 },
{ 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64,
8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
128*8
};
static const gfx_layout tdfever_tiles =
static const gfx_layout tilelayout_4bpp =
{
16,16,
RGN_FRAC(1,1),
4,
{ 0, 1, 2, 3 },
{ 4, 0, 12, 8, 20, 16, 28, 24,
32+4, 32+0, 32+12, 32+8, 32+20, 32+16, 32+28, 32+24 },
{ 4*1, 4*0, 4*3, 4*2, 4*5, 4*4, 4*7, 4*6,
32+4*1, 32+4*0, 32+4*3, 32+4*2, 32+4*5, 32+4*4, 32+4*7, 32+4*6 },
{ 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64,
8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
128*8
64*16
};
static const gfx_layout tdfever2_tiles =
static const gfx_layout spritelayout_3bpp =
{
16,16,
512*6,
RGN_FRAC(1,3),
3,
{ RGN_FRAC(2,3), RGN_FRAC(1,3), RGN_FRAC(0,3) },
{ 7,6,5,4,3,2,1,0, 15,14,13,12,11,10,9,8 },
{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
16*16
};
static const gfx_layout spritelayout_4bpp =
{
16,16,
RGN_FRAC(1,4),
4,
{ 0, 1, 2, 3 },
{ 4, 0, 12, 8, 20, 16, 28, 24,
32+4, 32+0, 32+12, 32+8, 32+20, 32+16, 32+28, 32+24 },
{ 0*64, 1*64, 2*64, 3*64, 4*64, 5*64, 6*64, 7*64,
8*64, 9*64, 10*64, 11*64, 12*64, 13*64, 14*64, 15*64 },
128*8
};
static const gfx_layout sprite512 =
{
16,16,
512,
3,
{ 2*1024*256, 1*1024*256, 0*1024*256 },
{ 7,6,5,4,3,2,1,0, 15,14,13,12,11,10,9,8 },
{ RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) },
{
8,9,10,11,12,13,14,15,
0,1,2,3,4,5,6,7
},
{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
256
8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
16*16
};
static const gfx_layout sprite1024 =
{
16,16,
1024,
3,
{ 2*1024*256,1*1024*256,0*1024*256 },
{ 7,6,5,4,3,2,1,0, 15,14,13,12,11,10,9,8 },
{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
256
};
static const gfx_layout big_sprite512 =
static const gfx_layout bigspritelayout_3bpp =
{
32,32,
512,
RGN_FRAC(1,3),
3,
{ 2*2048*256,1*2048*256,0*2048*256 },
{ RGN_FRAC(2,3), RGN_FRAC(1,3), RGN_FRAC(0,3) },
{
7,6,5,4,3,2,1,0,
15,14,13,12,11,10,9,8,
@ -691,39 +644,12 @@ static const gfx_layout big_sprite512 =
16*32*2
};
static const gfx_layout gwar_sprite1024 =
{
16,16,
1024,
4,
{ 3*2048*256,2*2048*256,1*2048*256,0*2048*256 },
{
8,9,10,11,12,13,14,15,
0,1,2,3,4,5,6,7
},
{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
256
};
static const gfx_layout gwar_sprite2048 =
{
16,16,
2048,
4,
{ 3*2048*256,2*2048*256,1*2048*256,0*2048*256 },
{ 8,9,10,11,12,13,14,15, 0,1,2,3,4,5,6,7 },
{ 0*16, 1*16, 2*16, 3*16, 4*16, 5*16, 6*16, 7*16,
8*16, 9*16, 10*16, 11*16, 12*16, 13*16, 14*16, 15*16 },
256
};
static const gfx_layout gwar_big_sprite1024 =
static const gfx_layout bigspritelayout_4bpp =
{
32,32,
1024,
RGN_FRAC(1,4),
4,
{ 3*1024*1024, 2*1024*1024, 1*1024*1024, 0*1024*1024 },
{ RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) },
{
24,25,26,27,28,29,30,31,
16,17,18,19,20,21,22,23,
@ -738,85 +664,38 @@ static const gfx_layout gwar_big_sprite1024 =
16*32+8*32, 16*32+9*32, 16*32+10*32, 16*32+11*32,
16*32+12*32, 16*32+13*32, 16*32+14*32, 16*32+15*32,
},
1024
};
static const gfx_layout tdfever_big_sprite1024 =
{
32,32,
1024,
4,
{ 0*0x100000, 1*0x100000, 2*0x100000, 3*0x100000 },
{
7,6,5,4,3,2,1,0,
15,14,13,12,11,10,9,8,
23,22,21,20,19,18,17,16,
31,30,29,28,27,26,25,24
},
{
0*32, 1*32, 2*32, 3*32, 4*32, 5*32, 6*32, 7*32,
8*32, 9*32, 10*32, 11*32, 12*32, 13*32, 14*32, 15*32,
16*32+0*32, 16*32+1*32, 16*32+2*32, 16*32+3*32,
16*32+4*32, 16*32+5*32, 16*32+6*32, 16*32+7*32,
16*32+8*32, 16*32+9*32, 16*32+10*32, 16*32+11*32,
16*32+12*32, 16*32+13*32, 16*32+14*32, 16*32+15*32,
},
1024
16*32*2
};
/*********************************************************************/
static GFXDECODE_START( tnk3 )
GFXDECODE_ENTRY( "gfx1", 0x0, char512, 128*3, 8 )
GFXDECODE_ENTRY( "gfx2", 0x0, char1024, 128*1, 16 )
GFXDECODE_ENTRY( "gfx3", 0x0, sprite512, 128*0, 16 )
GFXDECODE_END
static GFXDECODE_START( athena )
/* colors 512-1023 are currently unused, I think they are a second bank */
GFXDECODE_ENTRY( "gfx1", 0x0, char512, 128*3, 8 ) /* colors 384..511 */
GFXDECODE_ENTRY( "gfx2", 0x0, char1024, 128*1, 16 ) /* colors 128..383 */
GFXDECODE_ENTRY( "gfx3", 0x0, sprite1024, 0, 16 ) /* colors 0..127 */
GFXDECODE_ENTRY( "gfx1", 0, charlayout_4bpp, 0x180, 0x080>>4 )
GFXDECODE_ENTRY( "gfx2", 0, charlayout_4bpp, 0x080, 0x100>>4 )
GFXDECODE_ENTRY( "gfx3", 0, spritelayout_3bpp, 0x000, 0x080>>3 )
/* colors 0x200-0x3ff contain shadows */
GFXDECODE_END
static GFXDECODE_START( ikari )
GFXDECODE_ENTRY( "gfx1", 0x0, char512, 256, 16 )
GFXDECODE_ENTRY( "gfx2", 0x0, tile1024, 256, 16 )
GFXDECODE_ENTRY( "gfx3", 0x0, sprite1024, 0, 16 )
GFXDECODE_ENTRY( "gfx4", 0x0, big_sprite512, 128, 16 )
GFXDECODE_ENTRY( "gfx1", 0, charlayout_4bpp, 0x100, 0x100>>4 )
GFXDECODE_ENTRY( "gfx2", 0, tilelayout_4bpp, 0x100, 0x100>>4 )
GFXDECODE_ENTRY( "gfx3", 0, spritelayout_3bpp, 0x000, 0x080>>3 )
GFXDECODE_ENTRY( "gfx4", 0, bigspritelayout_3bpp, 0x080, 0x080>>3 )
/* colors 0x200-0x3ff contain shadows */
GFXDECODE_END
static GFXDECODE_START( gwar )
GFXDECODE_ENTRY( "gfx1", 0x0, char1024, 256*0, 16 )
GFXDECODE_ENTRY( "gfx2", 0x0, tile2048, 256*3, 16 )
GFXDECODE_ENTRY( "gfx3", 0x0, gwar_sprite2048, 256*1, 16 )
GFXDECODE_ENTRY( "gfx4", 0x0, gwar_big_sprite1024, 256*2, 16 )
GFXDECODE_END
static GFXDECODE_START( bermudat )
GFXDECODE_ENTRY( "gfx1", 0x0, char1024, 256*0, 16 )
GFXDECODE_ENTRY( "gfx2", 0x0, tile2048, 256*3, 16 )
GFXDECODE_ENTRY( "gfx3", 0x0, gwar_sprite1024, 256*1, 16 )
GFXDECODE_ENTRY( "gfx4", 0x0, gwar_big_sprite1024, 256*2, 16 )
GFXDECODE_END
static GFXDECODE_START( psychos )
GFXDECODE_ENTRY( "gfx1", 0x0, char1024, 256*0, 16 )
GFXDECODE_ENTRY( "gfx2", 0x0, tile2048, 256*3, 16 )
GFXDECODE_ENTRY( "gfx3", 0x0, gwar_sprite1024, 256*1, 16 )
GFXDECODE_ENTRY( "gfx4", 0x0, gwar_big_sprite1024, 256*2, 16 )
GFXDECODE_ENTRY( "gfx1", 0, charlayout_4bpp, 0x000, 0x100>>4 )
GFXDECODE_ENTRY( "gfx2", 0, tilelayout_4bpp, 0x300, 0x100>>4 )
GFXDECODE_ENTRY( "gfx3", 0, spritelayout_4bpp, 0x100, 0x100>>4 )
GFXDECODE_ENTRY( "gfx4", 0, bigspritelayout_4bpp, 0x200, 0x100>>4 )
GFXDECODE_END
static GFXDECODE_START( tdfever )
GFXDECODE_ENTRY( "gfx1", 0x0, char1024, 256*0, 16 )
GFXDECODE_ENTRY( "gfx2", 0x0, tdfever_tiles, 256*2, 16 )
GFXDECODE_ENTRY( "gfx3", 0x0, tdfever_big_sprite1024, 256*1, 16 )
GFXDECODE_END
static GFXDECODE_START( tdfever2 )
GFXDECODE_ENTRY( "gfx1", 0x0, char1024, 256*0, 16 )
GFXDECODE_ENTRY( "gfx2", 0x0, tdfever2_tiles, 256*2, 16 )
GFXDECODE_ENTRY( "gfx3", 0x0, tdfever_big_sprite1024, 256*1, 16 )
GFXDECODE_ENTRY( "gfx1", 0, charlayout_4bpp, 0x000, 0x100>>4 )
GFXDECODE_ENTRY( "gfx2", 0, tilelayout_4bpp, 0x200, 0x100>>4 )
GFXDECODE_ENTRY( "gfx3", 0, bigspritelayout_4bpp, 0x100, 0x100>>4 )
/* colors 0x300-0x3ff contain shadows */
GFXDECODE_END
/**********************************************************************/
@ -849,10 +728,10 @@ static MACHINE_DRIVER_START( tnk3 )
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
MDRV_GFXDECODE(tnk3)
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(aso)
MDRV_VIDEO_START(snk)
MDRV_VIDEO_START(snk_3bpp_shadow)
MDRV_VIDEO_UPDATE(tnk3)
/* sound hardware */
@ -891,11 +770,11 @@ static MACHINE_DRIVER_START( athena )
MDRV_SCREEN_SIZE(36*8, 28*8)
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
MDRV_GFXDECODE(athena)
MDRV_PALETTE_LENGTH(1024)
MDRV_GFXDECODE(tnk3)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(aso)
MDRV_VIDEO_START(snk)
MDRV_VIDEO_START(snk_3bpp_shadow)
MDRV_VIDEO_UPDATE(athena)
/* sound hardware */
@ -939,10 +818,10 @@ static MACHINE_DRIVER_START( ikari )
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
MDRV_GFXDECODE(ikari)
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(snk_3bpp_shadow)
MDRV_VIDEO_START(snk)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk_3bpp_shadow)
MDRV_VIDEO_UPDATE(ikari)
/* sound hardware */
@ -986,10 +865,10 @@ static MACHINE_DRIVER_START( victroad )
MDRV_SCREEN_VISIBLE_AREA(0*8, 36*8-1, 1*8, 28*8-1)
MDRV_GFXDECODE(ikari)
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(snk_3bpp_shadow)
MDRV_VIDEO_START(snk)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk_3bpp_shadow)
MDRV_VIDEO_UPDATE(ikari)
/* sound hardware */
@ -1031,7 +910,7 @@ static MACHINE_DRIVER_START( gwar )
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
MDRV_GFXDECODE(gwar)
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk)
@ -1076,8 +955,8 @@ static MACHINE_DRIVER_START( bermudat )
MDRV_SCREEN_SIZE(400, 224)
MDRV_SCREEN_VISIBLE_AREA(16, 399, 0, 223)
MDRV_GFXDECODE(bermudat)
MDRV_PALETTE_LENGTH(1024)
MDRV_GFXDECODE(gwar)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk)
@ -1121,8 +1000,8 @@ static MACHINE_DRIVER_START( psychos )
MDRV_SCREEN_SIZE(400, 224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
MDRV_GFXDECODE(psychos)
MDRV_PALETTE_LENGTH(1024)
MDRV_GFXDECODE(gwar)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk)
@ -1166,8 +1045,8 @@ static MACHINE_DRIVER_START( chopper1 )
MDRV_SCREEN_SIZE(400, 224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
MDRV_GFXDECODE(psychos)
MDRV_PALETTE_LENGTH(1024)
MDRV_GFXDECODE(gwar)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk)
@ -1204,7 +1083,7 @@ static MACHINE_DRIVER_START( tdfever )
MDRV_INTERLEAVE(300)
/* video hardware */
MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
@ -1214,10 +1093,10 @@ static MACHINE_DRIVER_START( tdfever )
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
MDRV_GFXDECODE(tdfever)
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(snk_4bpp_shadow)
MDRV_VIDEO_START(snk)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk_4bpp_shadow)
MDRV_VIDEO_UPDATE(tdfever)
/* sound hardware */
@ -1251,7 +1130,7 @@ static MACHINE_DRIVER_START( tdfever2 )
MDRV_INTERLEAVE(300)
/* video hardware */
MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
@ -1260,11 +1139,11 @@ static MACHINE_DRIVER_START( tdfever2 )
MDRV_SCREEN_SIZE(400,224)
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
MDRV_GFXDECODE(tdfever2)
MDRV_PALETTE_LENGTH(1024)
MDRV_GFXDECODE(tdfever)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(snk_4bpp_shadow)
MDRV_VIDEO_START(snk)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk_4bpp_shadow)
MDRV_VIDEO_UPDATE(tdfever)
/* sound hardware */
@ -1298,7 +1177,7 @@ static MACHINE_DRIVER_START( fsoccer )
MDRV_INTERLEAVE(100)
/* video hardware */
MDRV_VIDEO_ATTRIBUTES(VIDEO_HAS_SHADOWS | VIDEO_HAS_HIGHLIGHTS | VIDEO_UPDATE_AFTER_VBLANK)
MDRV_VIDEO_ATTRIBUTES(VIDEO_UPDATE_AFTER_VBLANK | VIDEO_HAS_SHADOWS)
MDRV_SCREEN_ADD("main", RASTER)
MDRV_SCREEN_REFRESH_RATE(60)
@ -1308,10 +1187,10 @@ static MACHINE_DRIVER_START( fsoccer )
MDRV_SCREEN_VISIBLE_AREA(8, 399-8, 0, 223)
MDRV_GFXDECODE(tdfever)
MDRV_PALETTE_LENGTH(1024)
MDRV_PALETTE_LENGTH(0x400)
MDRV_PALETTE_INIT(snk_4bpp_shadow)
MDRV_VIDEO_START(snk)
MDRV_PALETTE_INIT(RRRR_GGGG_BBBB)
MDRV_VIDEO_START(snk_4bpp_shadow)
MDRV_VIDEO_UPDATE(tdfever)
/* sound hardware */
@ -1353,10 +1232,10 @@ ROM_START( tnk3 )
ROM_LOAD( "tnk3-p12.bin", 0x0000, 0x4000, CRC(ff495a16) SHA1(e6b97a63efe58018260ff34f0ea4edc81718cb14) )
ROM_LOAD( "tnk3-p13.bin", 0x4000, 0x4000, CRC(f8344843) SHA1(c741dc84b48f830f6d4eaa4476f5c2a391153acc) )
ROM_REGION( 0x18000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x0c000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "tnk3-p7.bin", 0x00000, 0x4000, CRC(06b92c88) SHA1(b39c2cc4a58937d89f9b0c9093b9742509db64a3) )
ROM_LOAD( "tnk3-p8.bin", 0x08000, 0x4000, CRC(63d0e2eb) SHA1(96182639bb620d9692a4c8266130769c44dd29f8) )
ROM_LOAD( "tnk3-p9.bin", 0x10000, 0x4000, CRC(872e3fac) SHA1(98e7e9315fe7ccc51151c67dc60a362a1c2d8372) )
ROM_LOAD( "tnk3-p8.bin", 0x04000, 0x4000, CRC(63d0e2eb) SHA1(96182639bb620d9692a4c8266130769c44dd29f8) )
ROM_LOAD( "tnk3-p9.bin", 0x08000, 0x4000, CRC(872e3fac) SHA1(98e7e9315fe7ccc51151c67dc60a362a1c2d8372) )
ROM_END
ROM_START( tnk3j )
@ -1387,10 +1266,10 @@ ROM_START( tnk3j )
ROM_LOAD( "tnk3-p12.bin", 0x0000, 0x4000, CRC(ff495a16) SHA1(e6b97a63efe58018260ff34f0ea4edc81718cb14) )
ROM_LOAD( "tnk3-p13.bin", 0x4000, 0x4000, CRC(f8344843) SHA1(c741dc84b48f830f6d4eaa4476f5c2a391153acc) )
ROM_REGION( 0x18000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x0c000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "tnk3-p7.bin", 0x00000, 0x4000, CRC(06b92c88) SHA1(b39c2cc4a58937d89f9b0c9093b9742509db64a3) )
ROM_LOAD( "tnk3-p8.bin", 0x08000, 0x4000, CRC(63d0e2eb) SHA1(96182639bb620d9692a4c8266130769c44dd29f8) )
ROM_LOAD( "tnk3-p9.bin", 0x10000, 0x4000, CRC(872e3fac) SHA1(98e7e9315fe7ccc51151c67dc60a362a1c2d8372) )
ROM_LOAD( "tnk3-p8.bin", 0x04000, 0x4000, CRC(63d0e2eb) SHA1(96182639bb620d9692a4c8266130769c44dd29f8) )
ROM_LOAD( "tnk3-p9.bin", 0x08000, 0x4000, CRC(872e3fac) SHA1(98e7e9315fe7ccc51151c67dc60a362a1c2d8372) )
ROM_END
/***********************************************************************/
@ -1738,7 +1617,7 @@ ROM_START( victroad )
ROM_LOAD( "p9", 0x08000, 0x8000, CRC(9897bc05) SHA1(ec181dc64dd78ff2fab193509743376ab192b99e) )
ROM_LOAD( "p10", 0x10000, 0x8000, CRC(ecd3c0ea) SHA1(f398b6a64706fcaa727ff1c150e05888091cb77c) )
ROM_REGION( 0x40000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_REGION( 0x30000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "p11", 0x00000, 0x8000, CRC(668b25a4) SHA1(235423e3b442271581dde0195fdff2a37596a9bc) )
ROM_LOAD( "p14", 0x08000, 0x8000, CRC(a7031d4a) SHA1(9ea184990372909de7d8fe0891bb3e0441b13f90) )
ROM_LOAD( "p12", 0x10000, 0x8000, CRC(f44e95fa) SHA1(6633bd1e9e947cae5ba696f6fd393bf0cd7969b0) )
@ -1822,7 +1701,7 @@ ROM_START( dogosokj ) /* Victory Road Japan (Joystik version) */
ROM_LOAD( "up02_e3.rom", 0x08000, 0x8000, CRC(365ed2d8) SHA1(e0f600c936483e3d0d03709ae709321d072145bd) )
ROM_LOAD( "up02_g3.rom", 0x10000, 0x8000, CRC(92579bf3) SHA1(eb2084bf5c62cbbf08dc25997702f8e8eb3dcc5d) )
ROM_REGION( 0x40000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_REGION( 0x30000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "p11", 0x00000, 0x8000, CRC(668b25a4) SHA1(235423e3b442271581dde0195fdff2a37596a9bc) )
ROM_LOAD( "p14", 0x08000, 0x8000, CRC(a7031d4a) SHA1(9ea184990372909de7d8fe0891bb3e0441b13f90) )
ROM_LOAD( "p12", 0x10000, 0x8000, CRC(f44e95fa) SHA1(6633bd1e9e947cae5ba696f6fd393bf0cd7969b0) )
@ -2286,11 +2165,11 @@ ROM_START( bermudat )
ROM_LOAD( "bt_p20.rom", 0x20000, 0x10000, CRC(ab6217b7) SHA1(fb4b0fcd9ff1f04cf772a46b6727d3de531beb0e) )
ROM_LOAD( "bt_p19.rom", 0x30000, 0x10000, CRC(8ed759a0) SHA1(cd039ed9cb4127729bd29c6232dcbb77b85a4159) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "bt_p6.rom", 0x00000, 0x8000, CRC(8ffdf969) SHA1(68672dc74156ebbf59316dfeae25b155d699d0eb) )
ROM_LOAD( "bt_p7.rom", 0x10000, 0x8000, CRC(268d10df) SHA1(6a297bbd7b4248306d8756a80f4403c45d833eb3) )
ROM_LOAD( "bt_p8.rom", 0x20000, 0x8000, CRC(3e39e9dd) SHA1(394c85841113a1b2bdd744445e3e4e3acc7099c6) )
ROM_LOAD( "bt_p9.rom", 0x30000, 0x8000, CRC(bf56da61) SHA1(855687b6a0a4cef3b8294ca359abe14b11ad5749) )
ROM_LOAD( "bt_p7.rom", 0x08000, 0x8000, CRC(268d10df) SHA1(6a297bbd7b4248306d8756a80f4403c45d833eb3) )
ROM_LOAD( "bt_p8.rom", 0x10000, 0x8000, CRC(3e39e9dd) SHA1(394c85841113a1b2bdd744445e3e4e3acc7099c6) )
ROM_LOAD( "bt_p9.rom", 0x18000, 0x8000, CRC(bf56da61) SHA1(855687b6a0a4cef3b8294ca359abe14b11ad5749) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "bt_p11.rom", 0x00000, 0x10000, CRC(aae7410e) SHA1(19dcd13fc53c05bac05d2242965129ab1e3a4a88) )
@ -2333,11 +2212,11 @@ ROM_START( bermudao )
ROM_LOAD( "bt_p20.rom", 0x20000, 0x10000, CRC(ab6217b7) SHA1(fb4b0fcd9ff1f04cf772a46b6727d3de531beb0e) )
ROM_LOAD( "bt_p19.rom", 0x30000, 0x10000, CRC(8ed759a0) SHA1(cd039ed9cb4127729bd29c6232dcbb77b85a4159) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "bt_p6.rom", 0x00000, 0x8000, CRC(8ffdf969) SHA1(68672dc74156ebbf59316dfeae25b155d699d0eb) )
ROM_LOAD( "bt_p7.rom", 0x10000, 0x8000, CRC(268d10df) SHA1(6a297bbd7b4248306d8756a80f4403c45d833eb3) )
ROM_LOAD( "bt_p8.rom", 0x20000, 0x8000, CRC(3e39e9dd) SHA1(394c85841113a1b2bdd744445e3e4e3acc7099c6) )
ROM_LOAD( "bt_p9.rom", 0x30000, 0x8000, CRC(bf56da61) SHA1(855687b6a0a4cef3b8294ca359abe14b11ad5749) )
ROM_LOAD( "bt_p7.rom", 0x08000, 0x8000, CRC(268d10df) SHA1(6a297bbd7b4248306d8756a80f4403c45d833eb3) )
ROM_LOAD( "bt_p8.rom", 0x10000, 0x8000, CRC(3e39e9dd) SHA1(394c85841113a1b2bdd744445e3e4e3acc7099c6) )
ROM_LOAD( "bt_p9.rom", 0x18000, 0x8000, CRC(bf56da61) SHA1(855687b6a0a4cef3b8294ca359abe14b11ad5749) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "bt_p11.rom", 0x00000, 0x10000, CRC(aae7410e) SHA1(19dcd13fc53c05bac05d2242965129ab1e3a4a88) )
@ -2380,11 +2259,11 @@ ROM_START( worldwar )
ROM_LOAD( "ww13.bin", 0x20000, 0x10000, CRC(83a7ef62) SHA1(692be1db8b0b0ff518ffe6e000fa8eb0ca7d8b06) )
ROM_LOAD( "ww14.bin", 0x30000, 0x10000, CRC(04c784be) SHA1(1a485eeb65dee295c791006d58e4e7305bdcf490) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "ww7.bin", 0x30000, 0x08000, CRC(53c4b24e) SHA1(5f72848f585dcee857715d6ca0020237dd23abc3) )
ROM_LOAD( "ww8.bin", 0x20000, 0x08000, CRC(0ec15086) SHA1(6f5fb4a0f96b3ab745f402c04c2cdc2bacaf4844) )
ROM_LOAD( "ww9.bin", 0x10000, 0x08000, CRC(d9d35911) SHA1(74c23f2967be76ced82522a67291de233528b099) )
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "ww10.bin", 0x00000, 0x08000, CRC(f68a2d51) SHA1(bf3bfcb7fcb77f4605472775025dc69e979155c8) )
ROM_LOAD( "ww9.bin", 0x08000, 0x08000, CRC(d9d35911) SHA1(74c23f2967be76ced82522a67291de233528b099) )
ROM_LOAD( "ww8.bin", 0x10000, 0x08000, CRC(0ec15086) SHA1(6f5fb4a0f96b3ab745f402c04c2cdc2bacaf4844) )
ROM_LOAD( "ww7.bin", 0x18000, 0x08000, CRC(53c4b24e) SHA1(5f72848f585dcee857715d6ca0020237dd23abc3) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "ww15.bin", 0x40000, 0x10000, CRC(d55ce063) SHA1(c0845db7e928e735746822ab94e5f148f38e73cc) )
@ -2427,11 +2306,11 @@ ROM_START( bermudaa )
ROM_LOAD( "ww13.bin", 0x20000, 0x10000, CRC(83a7ef62) SHA1(692be1db8b0b0ff518ffe6e000fa8eb0ca7d8b06) )
ROM_LOAD( "ww14.bin", 0x30000, 0x10000, CRC(04c784be) SHA1(1a485eeb65dee295c791006d58e4e7305bdcf490) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "ww7.bin", 0x30000, 0x08000, CRC(53c4b24e) SHA1(5f72848f585dcee857715d6ca0020237dd23abc3) )
ROM_LOAD( "ww8.bin", 0x20000, 0x08000, CRC(0ec15086) SHA1(6f5fb4a0f96b3ab745f402c04c2cdc2bacaf4844) )
ROM_LOAD( "ww9.bin", 0x10000, 0x08000, CRC(d9d35911) SHA1(74c23f2967be76ced82522a67291de233528b099) )
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "ww10.bin", 0x00000, 0x08000, CRC(f68a2d51) SHA1(bf3bfcb7fcb77f4605472775025dc69e979155c8) )
ROM_LOAD( "ww9.bin", 0x08000, 0x08000, CRC(d9d35911) SHA1(74c23f2967be76ced82522a67291de233528b099) )
ROM_LOAD( "ww8.bin", 0x10000, 0x08000, CRC(0ec15086) SHA1(6f5fb4a0f96b3ab745f402c04c2cdc2bacaf4844) )
ROM_LOAD( "ww7.bin", 0x18000, 0x08000, CRC(53c4b24e) SHA1(5f72848f585dcee857715d6ca0020237dd23abc3) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "ww15.bin", 0x40000, 0x10000, CRC(d55ce063) SHA1(c0845db7e928e735746822ab94e5f148f38e73cc) )
@ -2476,11 +2355,11 @@ ROM_START( psychos )
ROM_LOAD( "up01_c1.rom", 0x20000, 0x10000, CRC(f4361c50) SHA1(59d0915c4c4d07e26d205ffee95d7628f8eefb6d) )
ROM_LOAD( "up01_a1.rom", 0x30000, 0x10000, CRC(e4b0b95e) SHA1(8e35138f9d1fc6c1d787cf09ec17a900710db375) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "up02_f3.rom", 0x00000, 0x8000, CRC(f96f82db) SHA1(8062721431762dfcf7cc499a1f050e4cbe0fc793) )
ROM_LOAD( "up02_e3.rom", 0x10000, 0x8000, CRC(2b007733) SHA1(7b808a134a9aa70aef1cf2a503b7ea786fd05275) )
ROM_LOAD( "up02_c3.rom", 0x20000, 0x8000, CRC(efa830e1) SHA1(0a41a764a751a6566b9bb58086a417cfb7925d50) )
ROM_LOAD( "up02_b3.rom", 0x30000, 0x8000, CRC(24559ee1) SHA1(ca2166558a8dffba9042349db2f85f9111bd8d93) )
ROM_LOAD( "up02_e3.rom", 0x08000, 0x8000, CRC(2b007733) SHA1(7b808a134a9aa70aef1cf2a503b7ea786fd05275) )
ROM_LOAD( "up02_c3.rom", 0x10000, 0x8000, CRC(efa830e1) SHA1(0a41a764a751a6566b9bb58086a417cfb7925d50) )
ROM_LOAD( "up02_b3.rom", 0x18000, 0x8000, CRC(24559ee1) SHA1(ca2166558a8dffba9042349db2f85f9111bd8d93) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "up01_f10.rom", 0x00000, 0x10000, CRC(2bac250e) SHA1(aaf424fb9663e14c19d4063a402fb3c4c5c5b059) )
@ -2525,11 +2404,11 @@ ROM_START( psychosj )
ROM_LOAD( "up01_c1.rom", 0x20000, 0x10000, CRC(f4361c50) SHA1(59d0915c4c4d07e26d205ffee95d7628f8eefb6d) )
ROM_LOAD( "up01_a1.rom", 0x30000, 0x10000, CRC(e4b0b95e) SHA1(8e35138f9d1fc6c1d787cf09ec17a900710db375) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "up02_f3.rom", 0x00000, 0x8000, CRC(f96f82db) SHA1(8062721431762dfcf7cc499a1f050e4cbe0fc793) )
ROM_LOAD( "up02_e3.rom", 0x10000, 0x8000, CRC(2b007733) SHA1(7b808a134a9aa70aef1cf2a503b7ea786fd05275) )
ROM_LOAD( "up02_c3.rom", 0x20000, 0x8000, CRC(efa830e1) SHA1(0a41a764a751a6566b9bb58086a417cfb7925d50) )
ROM_LOAD( "up02_b3.rom", 0x30000, 0x8000, CRC(24559ee1) SHA1(ca2166558a8dffba9042349db2f85f9111bd8d93) )
ROM_LOAD( "up02_e3.rom", 0x08000, 0x8000, CRC(2b007733) SHA1(7b808a134a9aa70aef1cf2a503b7ea786fd05275) )
ROM_LOAD( "up02_c3.rom", 0x10000, 0x8000, CRC(efa830e1) SHA1(0a41a764a751a6566b9bb58086a417cfb7925d50) )
ROM_LOAD( "up02_b3.rom", 0x18000, 0x8000, CRC(24559ee1) SHA1(ca2166558a8dffba9042349db2f85f9111bd8d93) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "up01_f10.rom", 0x00000, 0x10000, CRC(2bac250e) SHA1(aaf424fb9663e14c19d4063a402fb3c4c5c5b059) )
@ -2574,11 +2453,11 @@ ROM_START( chopper )
ROM_LOAD( "kk_12.rom", 0x20000, 0x10000, CRC(02fec778) SHA1(477a3e22f913cc7783d6cbfce86f98fea9eaf3ec) )
ROM_LOAD( "kk_13.rom", 0x30000, 0x10000, CRC(2756817d) SHA1(acde21454ddf843425deff3357c9e3a7e7a2baec) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "kk_09.rom", 0x00000, 0x08000, CRC(653c4342) SHA1(aacb3a7772dcea4c88f0010b3654f4159cfb6a8b) )
ROM_LOAD( "kk_08.rom", 0x10000, 0x08000, CRC(2da45894) SHA1(09f1ac544a119c9d3a9eeb0606f35585d35c2d1d) )
ROM_LOAD( "kk_07.rom", 0x20000, 0x08000, CRC(a0ebebdf) SHA1(83d8a9ba7b7ffd42e50afb017e4d0d40fe3e2739) )
ROM_LOAD( "kk_06.rom", 0x30000, 0x08000, CRC(284fad9e) SHA1(7bb572d7d5983a514e8381954ac89a720b86e9ba) )
ROM_LOAD( "kk_08.rom", 0x08000, 0x08000, CRC(2da45894) SHA1(09f1ac544a119c9d3a9eeb0606f35585d35c2d1d) )
ROM_LOAD( "kk_07.rom", 0x10000, 0x08000, CRC(a0ebebdf) SHA1(83d8a9ba7b7ffd42e50afb017e4d0d40fe3e2739) )
ROM_LOAD( "kk_06.rom", 0x18000, 0x08000, CRC(284fad9e) SHA1(7bb572d7d5983a514e8381954ac89a720b86e9ba) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "kk_18.rom", 0x00000, 0x10000, CRC(6abbff36) SHA1(8dde3163e454876a4b666b25c81c09b0740143b5) )
@ -2621,11 +2500,11 @@ ROM_START( choppera )
ROM_LOAD( "12a.rom", 0x20000, 0x10000, CRC(de96b331) SHA1(725cfe739f7ed0f37eb620d9566bfda1369f4d50) )
ROM_LOAD( "kk_13.rom", 0x30000, 0x10000, CRC(2756817d) SHA1(acde21454ddf843425deff3357c9e3a7e7a2baec) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "9a.rom", 0x00000, 0x08000, CRC(106c2dcc) SHA1(919497757664c92e9955db50f5096ac81cec33c3) )
ROM_LOAD( "8a.rom", 0x10000, 0x08000, CRC(d4f88f62) SHA1(ac89ffa83e0e207acce39711b93d94affc61c1cc) )
ROM_LOAD( "7a.rom", 0x20000, 0x08000, CRC(28ae39f9) SHA1(7d51489b824b76710f6d4434a77f5f2833fcc532) )
ROM_LOAD( "6a.rom", 0x30000, 0x08000, CRC(16774a36) SHA1(d1207513f790a30eef8802e63cfeeb10321d6ff7) )
ROM_LOAD( "8a.rom", 0x08000, 0x08000, CRC(d4f88f62) SHA1(ac89ffa83e0e207acce39711b93d94affc61c1cc) )
ROM_LOAD( "7a.rom", 0x10000, 0x08000, CRC(28ae39f9) SHA1(7d51489b824b76710f6d4434a77f5f2833fcc532) )
ROM_LOAD( "6a.rom", 0x18000, 0x08000, CRC(16774a36) SHA1(d1207513f790a30eef8802e63cfeeb10321d6ff7) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "kk_18.rom", 0x00000, 0x10000, CRC(6abbff36) SHA1(8dde3163e454876a4b666b25c81c09b0740143b5) )
@ -2668,11 +2547,11 @@ ROM_START( chopperb )
ROM_LOAD( "chpri-12.bin", 0x20000, 0x10000, CRC(de96b331) SHA1(725cfe739f7ed0f37eb620d9566bfda1369f4d50) )
ROM_LOAD( "kk_13.rom", 0x30000, 0x10000, CRC(2756817d) SHA1(acde21454ddf843425deff3357c9e3a7e7a2baec) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "chpri-9.bin", 0x00000, 0x08000, CRC(106c2dcc) SHA1(919497757664c92e9955db50f5096ac81cec33c3) )
ROM_LOAD( "chpri-8.bin", 0x10000, 0x08000, CRC(d4f88f62) SHA1(ac89ffa83e0e207acce39711b93d94affc61c1cc) )
ROM_LOAD( "chpri-7.bin", 0x20000, 0x08000, CRC(28ae39f9) SHA1(7d51489b824b76710f6d4434a77f5f2833fcc532) )
ROM_LOAD( "chpri-6.bin", 0x30000, 0x08000, CRC(16774a36) SHA1(d1207513f790a30eef8802e63cfeeb10321d6ff7) )
ROM_LOAD( "chpri-8.bin", 0x08000, 0x08000, CRC(d4f88f62) SHA1(ac89ffa83e0e207acce39711b93d94affc61c1cc) )
ROM_LOAD( "chpri-7.bin", 0x10000, 0x08000, CRC(28ae39f9) SHA1(7d51489b824b76710f6d4434a77f5f2833fcc532) )
ROM_LOAD( "chpri-6.bin", 0x18000, 0x08000, CRC(16774a36) SHA1(d1207513f790a30eef8802e63cfeeb10321d6ff7) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "kk_18.rom", 0x00000, 0x10000, CRC(6abbff36) SHA1(8dde3163e454876a4b666b25c81c09b0740143b5) )
@ -2715,11 +2594,11 @@ ROM_START( legofair ) /* ChopperI (Japan) */
ROM_LOAD( "kk_12.rom", 0x20000, 0x10000, CRC(02fec778) SHA1(477a3e22f913cc7783d6cbfce86f98fea9eaf3ec) )
ROM_LOAD( "kk_13.rom", 0x30000, 0x10000, CRC(2756817d) SHA1(acde21454ddf843425deff3357c9e3a7e7a2baec) )
ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x20000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "kk_09.rom", 0x00000, 0x08000, CRC(653c4342) SHA1(aacb3a7772dcea4c88f0010b3654f4159cfb6a8b) )
ROM_LOAD( "kk_08.rom", 0x10000, 0x08000, CRC(2da45894) SHA1(09f1ac544a119c9d3a9eeb0606f35585d35c2d1d) )
ROM_LOAD( "kk_07.rom", 0x20000, 0x08000, CRC(a0ebebdf) SHA1(83d8a9ba7b7ffd42e50afb017e4d0d40fe3e2739) )
ROM_LOAD( "kk_06.rom", 0x30000, 0x08000, CRC(284fad9e) SHA1(7bb572d7d5983a514e8381954ac89a720b86e9ba) )
ROM_LOAD( "kk_08.rom", 0x08000, 0x08000, CRC(2da45894) SHA1(09f1ac544a119c9d3a9eeb0606f35585d35c2d1d) )
ROM_LOAD( "kk_07.rom", 0x10000, 0x08000, CRC(a0ebebdf) SHA1(83d8a9ba7b7ffd42e50afb017e4d0d40fe3e2739) )
ROM_LOAD( "kk_06.rom", 0x18000, 0x08000, CRC(284fad9e) SHA1(7bb572d7d5983a514e8381954ac89a720b86e9ba) )
ROM_REGION( 0x80000, "gfx4", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "kk_18.rom", 0x00000, 0x10000, CRC(6abbff36) SHA1(8dde3163e454876a4b666b25c81c09b0740143b5) )
@ -2745,34 +2624,29 @@ ROM_START( fsoccer )
ROM_LOAD( "fs1_ver4.bin", 0x00000, 0x10000, CRC(97830108) SHA1(dab241baf8d889c768e1fbe25f1e5059b3cbbab6) )
ROM_REGION( 0x10000, "audio", 0 ) /* 64k for sound code */
ROM_LOAD( "fs2.bin", 0x00000, 0x10000, CRC(9ee54ea1) SHA1(4e3bbacaa0e247eb8c4043f394e763817a4f9a28) )
ROM_LOAD( "fs2.3j", 0x00000, 0x10000, CRC(9ee54ea1) SHA1(4e3bbacaa0e247eb8c4043f394e763817a4f9a28) )
ROM_REGION( 0x0c00, "proms", 0 )
ROM_LOAD( "prom2.bin", 0x000, 0x400, CRC(bf4ac706) SHA1(b5015563d88dbd93ba2838f01b189812958f142b) ) /* red */
ROM_LOAD( "prom1.bin", 0x400, 0x400, CRC(1bac8010) SHA1(16854b1b6f3d1be48a247796d65aeb90547099b6) ) /* green */
ROM_LOAD( "prom3.bin", 0x800, 0x400, CRC(dbeddb14) SHA1(6053b587a3c8272aefe728a7198a15aa7fb9b2fa) ) /* blue */
ROM_LOAD( "2.8e", 0x000, 0x400, CRC(bf4ac706) SHA1(b5015563d88dbd93ba2838f01b189812958f142b) ) /* red */
ROM_LOAD( "1.8d", 0x400, 0x400, CRC(1bac8010) SHA1(16854b1b6f3d1be48a247796d65aeb90547099b6) ) /* green */
ROM_LOAD( "3.9e", 0x800, 0x400, CRC(dbeddb14) SHA1(6053b587a3c8272aefe728a7198a15aa7fb9b2fa) ) /* blue */
ROM_REGION( 0x8000, "gfx1", ROMREGION_DISPOSE ) /* characters */
ROM_LOAD( "fs13.bin", 0x0000, 0x08000, CRC(0de7b7ad) SHA1(4fa54b2acf83f03d09d16fc054ad6623cafe0f4a) )
ROM_LOAD( "fs13.4n", 0x0000, 0x08000, CRC(0de7b7ad) SHA1(4fa54b2acf83f03d09d16fc054ad6623cafe0f4a) )
ROM_REGION( 0x50000, "gfx2", ROMREGION_DISPOSE ) /* background tiles */
ROM_LOAD( "fs14.bin", 0x00000, 0x10000, CRC(38c38b40) SHA1(c4580add0946720441f5ef751d0d4a944cd92ad5) )
ROM_LOAD( "fs15.bin", 0x10000, 0x10000, CRC(a614834f) SHA1(d73930e4bd780915e1b0d7f3fe7cbeaad19c233f) )
// ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "fs14.8d", 0x00000, 0x10000, CRC(38c38b40) SHA1(c4580add0946720441f5ef751d0d4a944cd92ad5) )
ROM_LOAD( "fs15.8e", 0x10000, 0x10000, CRC(a614834f) SHA1(d73930e4bd780915e1b0d7f3fe7cbeaad19c233f) )
ROM_REGION( 0x80000, "gfx3", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "fs5.bin", 0x10000, 0x10000, CRC(def2f1d8) SHA1(b72e4dec3306d8afe461ac812b2de67ee85f9dd9) )
ROM_LOAD( "fs6.bin", 0x00000, 0x10000, CRC(588d14b3) SHA1(c0489b061503677a38e4c5800ea8be17aabf4039) )
ROM_LOAD( "fs7.bin", 0x30000, 0x10000, CRC(d584964b) SHA1(7c806fc40dcce700ed0c268abbd2704938b65ff2) )
ROM_LOAD( "fs8.bin", 0x20000, 0x10000, CRC(11156a7d) SHA1(f298a54fa4c118bf8e7c7cccb6c95a4b97daf4d4) )
ROM_LOAD( "fs9.bin", 0x50000, 0x10000, CRC(d8112aa6) SHA1(575dd6dff2f00901603768f2c121eb0ea5afa444) )
ROM_LOAD( "fs10.bin", 0x40000, 0x10000, CRC(e42864d8) SHA1(fe18f58e5507676780fe181e2fb0e0e9d72e276e) )
ROM_LOAD( "fs11.bin", 0x70000, 0x10000, CRC(022f3e96) SHA1(57aa423b8f62015566bc3021300ac7e9682ed500) )
ROM_LOAD( "fs12.bin", 0x60000, 0x10000, CRC(b2442c30) SHA1(ba9331810659726389494ddc7c94c5a02ba80747) )
ROM_LOAD( "fs12.2t", 0x00000, 0x10000, CRC(b2442c30) SHA1(ba9331810659726389494ddc7c94c5a02ba80747) )
ROM_LOAD( "fs11.2s", 0x10000, 0x10000, CRC(022f3e96) SHA1(57aa423b8f62015566bc3021300ac7e9682ed500) )
ROM_LOAD( "fs10.2r", 0x20000, 0x10000, CRC(e42864d8) SHA1(fe18f58e5507676780fe181e2fb0e0e9d72e276e) )
ROM_LOAD( "fs9.2p", 0x30000, 0x10000, CRC(d8112aa6) SHA1(575dd6dff2f00901603768f2c121eb0ea5afa444) )
ROM_LOAD( "fs8.2n", 0x40000, 0x10000, CRC(11156a7d) SHA1(f298a54fa4c118bf8e7c7cccb6c95a4b97daf4d4) )
ROM_LOAD( "fs7.2l", 0x50000, 0x10000, CRC(d584964b) SHA1(7c806fc40dcce700ed0c268abbd2704938b65ff2) )
ROM_LOAD( "fs6.2k", 0x60000, 0x10000, CRC(588d14b3) SHA1(c0489b061503677a38e4c5800ea8be17aabf4039) )
ROM_LOAD( "fs5.2j", 0x70000, 0x10000, CRC(def2f1d8) SHA1(b72e4dec3306d8afe461ac812b2de67ee85f9dd9) )
ROM_REGION( 0x10000, "ym", 0 )
ROM_LOAD( "fs4.bin", 0x00000, 0x10000, CRC(435c3716) SHA1(42053741f60594e7ae8516b3ba600f5badb3620f) )
@ -2800,20 +2674,15 @@ ROM_START( fsoccerj )
ROM_LOAD( "fs14.8d", 0x00000, 0x10000, CRC(38c38b40) SHA1(c4580add0946720441f5ef751d0d4a944cd92ad5) )
ROM_LOAD( "fs15.8e", 0x10000, 0x10000, CRC(a614834f) SHA1(d73930e4bd780915e1b0d7f3fe7cbeaad19c233f) )
// ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_REGION( 0x80000, "gfx3", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "fs5.2j", 0x10000, 0x10000, CRC(def2f1d8) SHA1(b72e4dec3306d8afe461ac812b2de67ee85f9dd9) )
ROM_LOAD( "fs6.2k", 0x00000, 0x10000, CRC(588d14b3) SHA1(c0489b061503677a38e4c5800ea8be17aabf4039) )
ROM_LOAD( "fs7.2l", 0x30000, 0x10000, CRC(d584964b) SHA1(7c806fc40dcce700ed0c268abbd2704938b65ff2) )
ROM_LOAD( "fs8.2n", 0x20000, 0x10000, CRC(11156a7d) SHA1(f298a54fa4c118bf8e7c7cccb6c95a4b97daf4d4) )
ROM_LOAD( "fs9.2p", 0x50000, 0x10000, CRC(d8112aa6) SHA1(575dd6dff2f00901603768f2c121eb0ea5afa444) )
ROM_LOAD( "fs10.2r", 0x40000, 0x10000, CRC(e42864d8) SHA1(fe18f58e5507676780fe181e2fb0e0e9d72e276e) )
ROM_LOAD( "fs11.2s", 0x70000, 0x10000, CRC(022f3e96) SHA1(57aa423b8f62015566bc3021300ac7e9682ed500) )
ROM_LOAD( "fs12.2t", 0x60000, 0x10000, CRC(b2442c30) SHA1(ba9331810659726389494ddc7c94c5a02ba80747) )
ROM_LOAD( "fs12.2t", 0x00000, 0x10000, CRC(b2442c30) SHA1(ba9331810659726389494ddc7c94c5a02ba80747) )
ROM_LOAD( "fs11.2s", 0x10000, 0x10000, CRC(022f3e96) SHA1(57aa423b8f62015566bc3021300ac7e9682ed500) )
ROM_LOAD( "fs10.2r", 0x20000, 0x10000, CRC(e42864d8) SHA1(fe18f58e5507676780fe181e2fb0e0e9d72e276e) )
ROM_LOAD( "fs9.2p", 0x30000, 0x10000, CRC(d8112aa6) SHA1(575dd6dff2f00901603768f2c121eb0ea5afa444) )
ROM_LOAD( "fs8.2n", 0x40000, 0x10000, CRC(11156a7d) SHA1(f298a54fa4c118bf8e7c7cccb6c95a4b97daf4d4) )
ROM_LOAD( "fs7.2l", 0x50000, 0x10000, CRC(d584964b) SHA1(7c806fc40dcce700ed0c268abbd2704938b65ff2) )
ROM_LOAD( "fs6.2k", 0x60000, 0x10000, CRC(588d14b3) SHA1(c0489b061503677a38e4c5800ea8be17aabf4039) )
ROM_LOAD( "fs5.2j", 0x70000, 0x10000, CRC(def2f1d8) SHA1(b72e4dec3306d8afe461ac812b2de67ee85f9dd9) )
ROM_REGION( 0x10000, "ym", 0 )
ROM_LOAD( "fs4.7p", 0x00000, 0x10000, CRC(435c3716) SHA1(42053741f60594e7ae8516b3ba600f5badb3620f) )
@ -2827,34 +2696,29 @@ ROM_START( fsoccerb )
ROM_LOAD( "ft-001.bin", 0x00000, 0x10000, CRC(2f68e38b) SHA1(0cbf2de24a5a5ae2134eb6f1e1404691554192bc) )
ROM_REGION( 0x10000, "audio", 0 ) /* 64k for sound code */
ROM_LOAD( "fs2.bin", 0x00000, 0x10000, CRC(9ee54ea1) SHA1(4e3bbacaa0e247eb8c4043f394e763817a4f9a28) )
ROM_LOAD( "fs2.3j", 0x00000, 0x10000, CRC(9ee54ea1) SHA1(4e3bbacaa0e247eb8c4043f394e763817a4f9a28) )
ROM_REGION( 0x0c00, "proms", 0 )
ROM_LOAD( "prom2.bin", 0x000, 0x400, CRC(bf4ac706) SHA1(b5015563d88dbd93ba2838f01b189812958f142b) ) /* red */
ROM_LOAD( "prom1.bin", 0x400, 0x400, CRC(1bac8010) SHA1(16854b1b6f3d1be48a247796d65aeb90547099b6) ) /* green */
ROM_LOAD( "prom3.bin", 0x800, 0x400, CRC(dbeddb14) SHA1(6053b587a3c8272aefe728a7198a15aa7fb9b2fa) ) /* blue */
ROM_LOAD( "2.8e", 0x000, 0x400, CRC(bf4ac706) SHA1(b5015563d88dbd93ba2838f01b189812958f142b) ) /* red */
ROM_LOAD( "1.8d", 0x400, 0x400, CRC(1bac8010) SHA1(16854b1b6f3d1be48a247796d65aeb90547099b6) ) /* green */
ROM_LOAD( "3.9e", 0x800, 0x400, CRC(dbeddb14) SHA1(6053b587a3c8272aefe728a7198a15aa7fb9b2fa) ) /* blue */
ROM_REGION( 0x8000, "gfx1", ROMREGION_DISPOSE ) /* characters */
ROM_LOAD( "fs13.bin", 0x0000, 0x08000, CRC(0de7b7ad) SHA1(4fa54b2acf83f03d09d16fc054ad6623cafe0f4a) )
ROM_LOAD( "fs13.4n", 0x0000, 0x08000, CRC(0de7b7ad) SHA1(4fa54b2acf83f03d09d16fc054ad6623cafe0f4a) )
ROM_REGION( 0x50000, "gfx2", ROMREGION_DISPOSE ) /* background tiles */
ROM_LOAD( "fs14.bin", 0x00000, 0x10000, CRC(38c38b40) SHA1(c4580add0946720441f5ef751d0d4a944cd92ad5) )
ROM_LOAD( "fs15.bin", 0x10000, 0x10000, CRC(a614834f) SHA1(d73930e4bd780915e1b0d7f3fe7cbeaad19c233f) )
// ROM_REGION( 0x40000, "gfx3", ROMREGION_DISPOSE ) /* 16x16 sprites */
ROM_LOAD( "fs14.8d", 0x00000, 0x10000, CRC(38c38b40) SHA1(c4580add0946720441f5ef751d0d4a944cd92ad5) )
ROM_LOAD( "fs15.8e", 0x10000, 0x10000, CRC(a614834f) SHA1(d73930e4bd780915e1b0d7f3fe7cbeaad19c233f) )
ROM_REGION( 0x80000, "gfx3", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "fs5.bin", 0x10000, 0x10000, CRC(def2f1d8) SHA1(b72e4dec3306d8afe461ac812b2de67ee85f9dd9) )
ROM_LOAD( "fs6.bin", 0x00000, 0x10000, CRC(588d14b3) SHA1(c0489b061503677a38e4c5800ea8be17aabf4039) )
ROM_LOAD( "fs7.bin", 0x30000, 0x10000, CRC(d584964b) SHA1(7c806fc40dcce700ed0c268abbd2704938b65ff2) )
ROM_LOAD( "fs8.bin", 0x20000, 0x10000, CRC(11156a7d) SHA1(f298a54fa4c118bf8e7c7cccb6c95a4b97daf4d4) )
ROM_LOAD( "fs9.bin", 0x50000, 0x10000, CRC(d8112aa6) SHA1(575dd6dff2f00901603768f2c121eb0ea5afa444) )
ROM_LOAD( "fs10.bin", 0x40000, 0x10000, CRC(e42864d8) SHA1(fe18f58e5507676780fe181e2fb0e0e9d72e276e) )
ROM_LOAD( "fs11.bin", 0x70000, 0x10000, CRC(022f3e96) SHA1(57aa423b8f62015566bc3021300ac7e9682ed500) )
ROM_LOAD( "fs12.bin", 0x60000, 0x10000, CRC(b2442c30) SHA1(ba9331810659726389494ddc7c94c5a02ba80747) )
ROM_LOAD( "fs12.2t", 0x00000, 0x10000, CRC(b2442c30) SHA1(ba9331810659726389494ddc7c94c5a02ba80747) )
ROM_LOAD( "fs11.2s", 0x10000, 0x10000, CRC(022f3e96) SHA1(57aa423b8f62015566bc3021300ac7e9682ed500) )
ROM_LOAD( "fs10.2r", 0x20000, 0x10000, CRC(e42864d8) SHA1(fe18f58e5507676780fe181e2fb0e0e9d72e276e) )
ROM_LOAD( "fs9.2p", 0x30000, 0x10000, CRC(d8112aa6) SHA1(575dd6dff2f00901603768f2c121eb0ea5afa444) )
ROM_LOAD( "fs8.2n", 0x40000, 0x10000, CRC(11156a7d) SHA1(f298a54fa4c118bf8e7c7cccb6c95a4b97daf4d4) )
ROM_LOAD( "fs7.2l", 0x50000, 0x10000, CRC(d584964b) SHA1(7c806fc40dcce700ed0c268abbd2704938b65ff2) )
ROM_LOAD( "fs6.2k", 0x60000, 0x10000, CRC(588d14b3) SHA1(c0489b061503677a38e4c5800ea8be17aabf4039) )
ROM_LOAD( "fs5.2j", 0x70000, 0x10000, CRC(def2f1d8) SHA1(b72e4dec3306d8afe461ac812b2de67ee85f9dd9) )
ROM_REGION( 0x10000, "ym", 0 )
ROM_LOAD( "fs4.bin", 0x00000, 0x10000, CRC(435c3716) SHA1(42053741f60594e7ae8516b3ba600f5badb3620f) )
@ -2888,14 +2752,14 @@ ROM_START( tdfever ) /* USA set */
ROM_LOAD( "up01_j8.rom", 0x40000, 0x10000, CRC(bc17ea7f) SHA1(5c3fe43c7fc204d33b5b2a71f22da00e2ba7fbdf) )
ROM_REGION( 0x80000, "gfx3", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "up01_k2.rom", 0x00000, 0x10000, CRC(72a5590d) SHA1(d8bd664702af9c66a2bda756d8417d1b69b0cab8) )
ROM_LOAD( "up01_j2.rom", 0x10000, 0x10000, CRC(9b6d4053) SHA1(3d91358b08ed648f48369147441d77a7528d3356) )
ROM_LOAD( "up01_n2.rom", 0x20000, 0x10000, CRC(a8979657) SHA1(ec2f61a24b04437a9abd0a306923ae2aeee3eba9) )
ROM_LOAD( "up01_l2.rom", 0x30000, 0x10000, CRC(28f49182) SHA1(3ee06d7d1bac8719d2b05613a7ffc1bc82ddcdae) )
ROM_LOAD( "up01_r2.rom", 0x40000, 0x10000, CRC(a0d53fbd) SHA1(a49f29b3f07ec833651aa0e37b0e87f3f72e0e3a) )
ROM_LOAD( "up01_p2.rom", 0x50000, 0x10000, CRC(c8c71c7b) SHA1(7988e9e86c2dfebb0f1b5a8c42c97993a530e780) )
ROM_LOAD( "up01_t2.rom", 0x60000, 0x10000, CRC(88e2e819) SHA1(6d5529792dbd2ba63a1bc470e9d3ea63b876cfd8) )
ROM_LOAD( "up01_s2.rom", 0x70000, 0x10000, CRC(f6f83d63) SHA1(15780a2c1fc7c8456fe073c372f2f4828125e800) )
ROM_LOAD( "up01_t2.rom", 0x00000, 0x10000, CRC(88e2e819) SHA1(6d5529792dbd2ba63a1bc470e9d3ea63b876cfd8) )
ROM_LOAD( "up01_s2.rom", 0x10000, 0x10000, CRC(f6f83d63) SHA1(15780a2c1fc7c8456fe073c372f2f4828125e800) )
ROM_LOAD( "up01_r2.rom", 0x20000, 0x10000, CRC(a0d53fbd) SHA1(a49f29b3f07ec833651aa0e37b0e87f3f72e0e3a) )
ROM_LOAD( "up01_p2.rom", 0x30000, 0x10000, CRC(c8c71c7b) SHA1(7988e9e86c2dfebb0f1b5a8c42c97993a530e780) )
ROM_LOAD( "up01_n2.rom", 0x40000, 0x10000, CRC(a8979657) SHA1(ec2f61a24b04437a9abd0a306923ae2aeee3eba9) )
ROM_LOAD( "up01_l2.rom", 0x50000, 0x10000, CRC(28f49182) SHA1(3ee06d7d1bac8719d2b05613a7ffc1bc82ddcdae) )
ROM_LOAD( "up01_k2.rom", 0x60000, 0x10000, CRC(72a5590d) SHA1(d8bd664702af9c66a2bda756d8417d1b69b0cab8) )
ROM_LOAD( "up01_j2.rom", 0x70000, 0x10000, CRC(9b6d4053) SHA1(3d91358b08ed648f48369147441d77a7528d3356) )
ROM_REGION( 0x20000, "ym2", 0 )
ROM_LOAD( "up02_p6.rom", 0x00000, 0x10000, CRC(04794557) SHA1(94f476e88b089ad98a133e7356fd271601119fdf) )
@ -2928,14 +2792,14 @@ ROM_START( tdfeverj )
ROM_LOAD( "up01_j8.rom", 0x40000, 0x10000, CRC(bc17ea7f) SHA1(5c3fe43c7fc204d33b5b2a71f22da00e2ba7fbdf) )
ROM_REGION( 0x80000, "gfx3", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "up01_k2.rom", 0x00000, 0x10000, CRC(72a5590d) SHA1(d8bd664702af9c66a2bda756d8417d1b69b0cab8) )
ROM_LOAD( "up01_j2.rom", 0x10000, 0x10000, CRC(9b6d4053) SHA1(3d91358b08ed648f48369147441d77a7528d3356) )
ROM_LOAD( "up01_n2.rom", 0x20000, 0x10000, CRC(a8979657) SHA1(ec2f61a24b04437a9abd0a306923ae2aeee3eba9) )
ROM_LOAD( "up01_l2.rom", 0x30000, 0x10000, CRC(28f49182) SHA1(3ee06d7d1bac8719d2b05613a7ffc1bc82ddcdae) )
ROM_LOAD( "up01_t2.rom", 0x40000, 0x10000, CRC(88e2e819) SHA1(6d5529792dbd2ba63a1bc470e9d3ea63b876cfd8) )
ROM_LOAD( "up01_s2.rom", 0x50000, 0x10000, CRC(f6f83d63) SHA1(15780a2c1fc7c8456fe073c372f2f4828125e800) )
ROM_LOAD( "up01_r2.rom", 0x60000, 0x10000, CRC(a0d53fbd) SHA1(a49f29b3f07ec833651aa0e37b0e87f3f72e0e3a) )
ROM_LOAD( "up01_p2.rom", 0x70000, 0x10000, CRC(c8c71c7b) SHA1(7988e9e86c2dfebb0f1b5a8c42c97993a530e780) )
ROM_LOAD( "up01_t2.rom", 0x00000, 0x10000, CRC(88e2e819) SHA1(6d5529792dbd2ba63a1bc470e9d3ea63b876cfd8) )
ROM_LOAD( "up01_s2.rom", 0x10000, 0x10000, CRC(f6f83d63) SHA1(15780a2c1fc7c8456fe073c372f2f4828125e800) )
ROM_LOAD( "up01_r2.rom", 0x20000, 0x10000, CRC(a0d53fbd) SHA1(a49f29b3f07ec833651aa0e37b0e87f3f72e0e3a) )
ROM_LOAD( "up01_p2.rom", 0x30000, 0x10000, CRC(c8c71c7b) SHA1(7988e9e86c2dfebb0f1b5a8c42c97993a530e780) )
ROM_LOAD( "up01_n2.rom", 0x40000, 0x10000, CRC(a8979657) SHA1(ec2f61a24b04437a9abd0a306923ae2aeee3eba9) )
ROM_LOAD( "up01_l2.rom", 0x50000, 0x10000, CRC(28f49182) SHA1(3ee06d7d1bac8719d2b05613a7ffc1bc82ddcdae) )
ROM_LOAD( "up01_k2.rom", 0x60000, 0x10000, CRC(72a5590d) SHA1(d8bd664702af9c66a2bda756d8417d1b69b0cab8) )
ROM_LOAD( "up01_j2.rom", 0x70000, 0x10000, CRC(9b6d4053) SHA1(3d91358b08ed648f48369147441d77a7528d3356) )
ROM_REGION( 0x20000, "ym2", 0 )
ROM_LOAD( "up02_p6.rom", 0x00000, 0x10000, CRC(04794557) SHA1(94f476e88b089ad98a133e7356fd271601119fdf) )
@ -2964,19 +2828,19 @@ ROM_START( tdfever2 )
ROM_LOAD( "up01_d8.rom", 0x00000, 0x10000, CRC(ad6e0927) SHA1(dd1c346fbf908af7b3e314f416937f48ade6af4c) )
ROM_LOAD( "up01_e8.rom", 0x10000, 0x10000, CRC(181db036) SHA1(2c5ed172950fce1467517490a8ab3b7ac6594121) )
ROM_LOAD( "up01_f8.rom", 0x20000, 0x10000, CRC(c5decca3) SHA1(12aff8adc0ad2bf903122ad065d182692d32fb7a) )
ROM_LOAD( "td18.8g", 0x30000, 0x10000, CRC(1a5a2200) SHA1(178f3850fd23d888a3e7d14f44cba3426a16bc94) )
ROM_LOAD( "td19.8j", 0x40000, 0x10000, CRC(f1081329) SHA1(efcc210d50923a8c9125227c741ba4b71cd9f688) )
ROM_LOAD( "td20.8k", 0x50000, 0x10000, CRC(86cbb2e6) SHA1(77ecd6eefc7bb1933374ecd21a5b46798bdbb94d) )
ROM_LOAD( "td18.8g", 0x30000, 0x10000, CRC(1a5a2200) SHA1(178f3850fd23d888a3e7d14f44cba3426a16bc94) )
ROM_LOAD( "td19.8j", 0x40000, 0x10000, CRC(f1081329) SHA1(efcc210d50923a8c9125227c741ba4b71cd9f688) )
ROM_LOAD( "td20.8k", 0x50000, 0x10000, CRC(86cbb2e6) SHA1(77ecd6eefc7bb1933374ecd21a5b46798bdbb94d) )
ROM_REGION( 0x80000, "gfx3", ROMREGION_DISPOSE ) /* 32x32 sprites */
ROM_LOAD( "up01_k2.rom", 0x00000, 0x10000, CRC(72a5590d) SHA1(d8bd664702af9c66a2bda756d8417d1b69b0cab8) )
ROM_LOAD( "td08.2j", 0x10000, 0x10000, CRC(4845e78b) SHA1(360df759a761f28df93250f3a2e4e9366d627240) )
ROM_LOAD( "up01_n2.rom", 0x20000, 0x10000, CRC(a8979657) SHA1(ec2f61a24b04437a9abd0a306923ae2aeee3eba9) )
ROM_LOAD( "td10.2l", 0x30000, 0x10000, CRC(c93b6cd3) SHA1(e528d62e998f5682b497e864818c1b50ba314944) )
ROM_LOAD( "up01_r2.rom", 0x40000, 0x10000, CRC(a0d53fbd) SHA1(a49f29b3f07ec833651aa0e37b0e87f3f72e0e3a) )
ROM_LOAD( "td12.2p", 0x50000, 0x10000, CRC(d43abc81) SHA1(8d635dfaa7a99863f133cf599b99f2a6afcfc8a6) )
ROM_LOAD( "up01_t2.rom", 0x60000, 0x10000, CRC(88e2e819) SHA1(6d5529792dbd2ba63a1bc470e9d3ea63b876cfd8) )
ROM_LOAD( "td14.2s", 0x70000, 0x10000, CRC(c9bb9138) SHA1(955101e343e643320b29a29116bea556a25d696f) )
ROM_LOAD( "up01_t2.rom", 0x00000, 0x10000, CRC(88e2e819) SHA1(6d5529792dbd2ba63a1bc470e9d3ea63b876cfd8) )
ROM_LOAD( "td14.2s", 0x10000, 0x10000, CRC(c9bb9138) SHA1(955101e343e643320b29a29116bea556a25d696f) )
ROM_LOAD( "up01_r2.rom", 0x20000, 0x10000, CRC(a0d53fbd) SHA1(a49f29b3f07ec833651aa0e37b0e87f3f72e0e3a) )
ROM_LOAD( "td12.2p", 0x30000, 0x10000, CRC(d43abc81) SHA1(8d635dfaa7a99863f133cf599b99f2a6afcfc8a6) )
ROM_LOAD( "up01_n2.rom", 0x40000, 0x10000, CRC(a8979657) SHA1(ec2f61a24b04437a9abd0a306923ae2aeee3eba9) )
ROM_LOAD( "td10.2l", 0x50000, 0x10000, CRC(c93b6cd3) SHA1(e528d62e998f5682b497e864818c1b50ba314944) )
ROM_LOAD( "up01_k2.rom", 0x60000, 0x10000, CRC(72a5590d) SHA1(d8bd664702af9c66a2bda756d8417d1b69b0cab8) )
ROM_LOAD( "td08.2j", 0x70000, 0x10000, CRC(4845e78b) SHA1(360df759a761f28df93250f3a2e4e9366d627240) )
ROM_REGION( 0x40000, "ym2", 0 )
ROM_LOAD( "td05.6p", 0x00000, 0x10000, CRC(e332e41f) SHA1(3fe41e35c5abbd8f8b9cff91bf85815275c62776) )
@ -4640,7 +4504,7 @@ GAME( 1988, choppera, chopper, chopper1, choppera, choppera, ROT270, "SNK", "Ch
GAME( 1988, chopperb, chopper, chopper1, legofair, chopper, ROT270, "SNK", "Chopper I (US set 3)", GAME_NO_COCKTAIL )
GAME( 1988, legofair, chopper, chopper1, legofair, chopper, ROT270, "SNK", "Koukuu Kihei Monogatari - The Legend of Air Cavalry (Japan)", GAME_NO_COCKTAIL )
GAME( 1987, tdfever, 0, tdfever, tdfever, tdfever, ROT270, "SNK", "TouchDown Fever", GAME_NO_COCKTAIL )
GAME( 1987, tdfeverj, tdfever, tdfever, tdfeverj, tdfever, ROT270, "SNK", "TouchDown Fever (Japan)", GAME_NO_COCKTAIL )
GAME( 1987, tdfeverj, tdfever, tdfever, tdfeverj, tdfever, ROT270, "SNK", "TouchDown Fever (Japan)", GAME_NO_COCKTAIL )
GAME( 1988, tdfever2, tdfever, tdfever2, tdfever, tdfever2, ROT270, "SNK", "TouchDown Fever 2", GAME_NO_COCKTAIL ) /* upgrade kit for Touchdown Fever */
GAME( 1988, fsoccer, 0, fsoccer, fsoccer, fsoccer, ROT0, "SNK", "Fighting Soccer (version 4)", GAME_NO_COCKTAIL )
GAME( 1988, fsoccerj, fsoccer, fsoccer, fsoccer, fsoccer, ROT0, "SNK", "Fighting Soccer (Japan)", GAME_NO_COCKTAIL )

View File

@ -24,10 +24,9 @@ extern int snk_irq_delay;
/*----------- defined in video/snk.c -----------*/
extern PALETTE_INIT( snk_3bpp_shadow );
extern PALETTE_INIT( snk_4bpp_shadow );
extern VIDEO_START( snk );
extern VIDEO_START( snk_3bpp_shadow );
extern VIDEO_START( snk_4bpp_shadow );
extern VIDEO_START( sgladiat );
extern VIDEO_UPDATE( tnk3 );
@ -40,9 +39,6 @@ extern VIDEO_UPDATE( sgladiat );
void tnk3_draw_text( running_machine *machine, bitmap_t *bitmap, const rectangle *cliprect, int bank, UINT8 *source );
void tnk3_draw_status( running_machine *machine, bitmap_t *bitmap, const rectangle *cliprect, int bank, UINT8 *source );
// note: compare tdfever which does blinking in software with tdfeverj which does it in hardware
extern int snk_blink_parity;
/*----------- defined in drivers/hal21.c -----------*/

View File

@ -4,15 +4,14 @@
/*******************************************************************************
Shadow Handling Notes
********************************************************************************
previously shadows were handled by toggling them on and off with a
shadows_visible flag.
Shadows are handled by changing palette bank.
Games Not Using Shadows?
Games Not Using Shadows
those using gwar_vh_screenrefresh (gwar, bermudat, psychos, chopper1)
(0-15 , 15 is transparent)
Games Using Shadows?
Games Using Shadows
those using tnk3_vh_screenrefresh (tnk3, athena, fitegolf) sgladiat is similar
(0-7 , 6 is shadow, 7 is transparent) * these are using aso colour prom convert *
@ -26,48 +25,55 @@
*******************************************************************************/
int snk_blink_parity = 0;
#define MAX_VRAM_SIZE (64*64*2) /* 0x2000 */
PALETTE_INIT( snk_3bpp_shadow )
VIDEO_START( snk )
{
tmpbitmap = auto_bitmap_alloc(512, 512, video_screen_get_format(machine->primary_screen));
}
VIDEO_START( snk_3bpp_shadow )
{
int i;
PALETTE_INIT_CALL(RRRR_GGGG_BBBB);
VIDEO_START_CALL(snk);
if(!(machine->config->video_attributes & VIDEO_HAS_SHADOWS))
popmessage("driver should use VIDEO_HAS_SHADOWS");
/* prepare shadow draw table */
for(i = 0; i <= 5; i++) gfx_drawmode_table[i] = DRAWMODE_SOURCE;
gfx_drawmode_table[6] = DRAWMODE_SHADOW;
gfx_drawmode_table[7] = DRAWMODE_NONE;
for (i = 0x000;i < 0x400;i++)
machine->shadow_table[i] = i | 0x200;
}
PALETTE_INIT( snk_4bpp_shadow )
VIDEO_START( snk_4bpp_shadow )
{
int i;
PALETTE_INIT_CALL(RRRR_GGGG_BBBB);
VIDEO_START_CALL(snk);
if(!(machine->config->video_attributes & VIDEO_HAS_SHADOWS))
popmessage("driver should use VIDEO_HAS_SHADOWS");
/* prepare shadow draw table */
for(i = 0; i <= 13; i++) gfx_drawmode_table[i] = DRAWMODE_SOURCE;
gfx_drawmode_table[14] = DRAWMODE_SHADOW;
gfx_drawmode_table[15] = DRAWMODE_NONE;
}
VIDEO_START( snk )
{
snk_blink_parity = 0;
tmpbitmap = auto_bitmap_alloc(512, 512, video_screen_get_format(machine->primary_screen));
/* all palette entries are not affected by shadow sprites... */
for (i = 0x00;i < 0x400;i++)
machine->shadow_table[i] = i;
/* ... except for tilemap colors */
for (i = 0x200;i < 0x300;i++)
machine->shadow_table[i] = i + 0x100;
}
/**************************************************************************************/
@ -210,6 +216,8 @@ VIDEO_UPDATE( tnk3 )
-------X scrollx MSB (sprites)
*/
// TODO attributes & 0x80 is screen flip
/* to be moved to memmap */
spriteram = &ram[0xd000];
@ -284,6 +292,8 @@ VIDEO_UPDATE( athena )
-------X scrollx MSB (sprites)
*/
// TODO attributes & 0x80 is screen flip
/* to be moved to memmap */
spriteram = &ram[0xd000];
@ -488,7 +498,7 @@ byte3: attributes
-xx-x--- (bank number)
x------- (x offset bit8)
*/
static void tdfever_draw_sp(running_machine *machine, bitmap_t *bitmap, const rectangle *cliprect, int xscroll, int yscroll, int mode )
static void tdfever_draw_sp(running_machine *machine, bitmap_t *bitmap, const rectangle *cliprect, int xscroll, int yscroll, int mode, int flipx )
{
const UINT8 *source = snk_rambase + ((mode==2)?0x1800:0x1000);
const gfx_element *gfx = machine->gfx[(mode==1)?3:2];
@ -534,11 +544,9 @@ static void tdfever_draw_sp(running_machine *machine, bitmap_t *bitmap, const re
default:
tile_number |= attributes<<3 & 0x300;
color = attributes & 0x0f;
if (snk_gamegroup == 7) // ftsoccer
palette_set_shadow_mode(machine, ((attributes & 0x6f) == 0x60) ? 1 : 0);
}
drawgfx(bitmap,gfx,tile_number,color,0,0,sx,sy,cliprect,pen_mode,15);
drawgfx(bitmap,gfx,tile_number,color,flipx,0,sx,sy,cliprect,pen_mode,15);
}
}
@ -570,7 +578,6 @@ static void tdfever_draw_tx(running_machine *machine, bitmap_t *bitmap, const re
VIDEO_UPDATE( tdfever )
{
const UINT8 *ram = snk_rambase - 0xd000;
int i;
UINT8 bg_attributes = ram[0xc880];
UINT8 sp_attributes = ram[0xc900];
@ -580,6 +587,8 @@ VIDEO_UPDATE( tdfever )
int sp_scroll_x = -ram[0xc9c0] + ((sp_attributes & 0x40) ? 0:256);
int sp_scroll_y = -ram[0xc980] + ((sp_attributes & 0x80) ? 256:0);
// TODO bg_attribute & 0x10 is screen flip
if(snk_gamegroup == 3 || snk_gamegroup == 5) // tdfever, tdfeverj
{
bg_scroll_x += 143;
@ -596,15 +605,7 @@ VIDEO_UPDATE( tdfever )
}
tdfever_draw_bg(screen->machine, bitmap, cliprect, bg_scroll_x, bg_scroll_y );
if (snk_gamegroup == 5) // tdfeverj
{
gfx_drawmode_table[13] = DRAWMODE_SHADOW;
gfx_drawmode_table[14] = DRAWMODE_SOURCE;
for (i=0x10e; i<0x200; i+=0x10) palette_set_color(screen->machine,i,MAKE_RGB(snk_blink_parity,snk_blink_parity,snk_blink_parity));
snk_blink_parity ^= 0x7f;
}
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp_scroll_x, sp_scroll_y, 0 );
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp_scroll_x, sp_scroll_y, 0, 1 );
tdfever_draw_tx(screen->machine, bitmap, cliprect, tx_attributes, 0, 0, 0xf800 );
return 0;
@ -629,6 +630,8 @@ VIDEO_UPDATE( gwar )
bg_attribute = ram[gwar_sp_baseaddr+0x880];
// TODO bg_attribute & 0x04 is screen flip
{
int bg_scroll_y, bg_scroll_x;
@ -666,13 +669,13 @@ VIDEO_UPDATE( gwar )
if(sp_attribute & 0xf8) // improves priority
{
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp16_x, sp16_y, 2 );
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp32_x, sp32_y, 1 );
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp16_x, sp16_y, 2, 0 );
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp32_x, sp32_y, 1, 0 );
}
else
{
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp32_x, sp32_y, 1 );
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp16_x, sp16_y, 2 );
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp32_x, sp32_y, 1, 0 );
tdfever_draw_sp(screen->machine, bitmap, cliprect, sp16_x, sp16_y, 2, 0 );
}
}