started porting Kale's work on Treasure Island over, cleaning up in the process. Not currently working, work in progress (will add to mamedriv.c when it is)

This commit is contained in:
davidhay 2008-11-24 22:54:05 +00:00
parent 57c9bd0a87
commit 861eb8eab4

View File

@ -1045,23 +1045,25 @@ static INPUT_PORTS_START( sdtennis )
whatever the coinage Dip Switch are (they are not read in this case) */
INPUT_PORTS_END
static const gfx_layout charlayout =
static const gfx_layout tile8layout =
{
8,8, /* 8*8 characters */
1024, /* 1024 characters */
3, /* 3 bits per pixel */
{ 2*1024*8*8, 1024*8*8, 0 }, /* the bitplanes are separated */
RGN_FRAC(1,3),
3,
{ RGN_FRAC(2,3), RGN_FRAC(1,3), RGN_FRAC(0,3) },
{ 0, 1, 2, 3, 4, 5, 6, 7 },
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
8*8 /* every char takes 8 consecutive bytes */
8*8
};
static const gfx_layout spritelayout =
static const gfx_layout tile16layout =
{
16,16, /* 16*16 sprites */
256, /* 256 sprites */
RGN_FRAC(1,3), /* 64 characters */
3, /* 3 bits per pixel */
{ 2*256*16*16, 256*16*16, 0 }, /* the bitplanes are separated */
{ RGN_FRAC(2,3), RGN_FRAC(1,3), RGN_FRAC(0,3) }, /* the bitplanes are separated */
{ 16*8+0, 16*8+1, 16*8+2, 16*8+3, 16*8+4, 16*8+5, 16*8+6, 16*8+7,
0, 1, 2, 3, 4, 5, 6, 7 },
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
@ -1069,88 +1071,53 @@ static const gfx_layout spritelayout =
32*8 /* every sprite takes 32 consecutive bytes */
};
static const gfx_layout zoar_spritelayout =
{
16,16, /* 16*16 sprites */
128, /* 256 sprites */
3, /* 3 bits per pixel */
{ 2*128*16*16, 128*16*16, 0 }, /* the bitplanes are separated */
{ 16*8+0, 16*8+1, 16*8+2, 16*8+3, 16*8+4, 16*8+5, 16*8+6, 16*8+7,
0, 1, 2, 3, 4, 5, 6, 7 },
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8, 15*8 },
32*8 /* every sprite takes 32 consecutive bytes */
};
static const gfx_layout btime_tilelayout =
{
16,16, /* 16*16 characters */
64, /* 64 characters */
3, /* 3 bits per pixel */
{ 2*64*16*16, 64*16*16, 0 }, /* the bitplanes are separated */
{ 16*8+0, 16*8+1, 16*8+2, 16*8+3, 16*8+4, 16*8+5, 16*8+6, 16*8+7,
0, 1, 2, 3, 4, 5, 6, 7 },
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8, 15*8 },
32*8 /* every tile takes 32 consecutive bytes */
};
static const gfx_layout cookrace_tilelayout =
static const gfx_layout bnj_tile16layout =
{
8,8, /* 8*8 characters */
256, /* 256 characters */
3, /* 3 bits per pixel */
{ 2*256*8*8, 256*8*8, 0 }, /* the bitplanes are separated */
{ 0, 1, 2, 3, 4, 5, 6, 7 },
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
8*8 /* every tile takes 8 consecutive bytes */
};
static const gfx_layout bnj_tilelayout =
{
16,16, /* 16*16 characters */
64, /* 64 characters */
3, /* 3 bits per pixel */
{ 2*64*16*16+4, 0, 4 },
16,16,
RGN_FRAC(1,2),
3,
{ RGN_FRAC(1,2)+4, RGN_FRAC(0,2)+0, RGN_FRAC(0,2)+4 },
{ 3*16*8+0, 3*16*8+1, 3*16*8+2, 3*16*8+3, 2*16*8+0, 2*16*8+1, 2*16*8+2, 2*16*8+3,
16*8+0, 16*8+1, 16*8+2, 16*8+3, 0, 1, 2, 3 },
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8,
8*8, 9*8, 10*8, 11*8, 12*8, 13*8, 14*8, 15*8 },
64*8 /* every tile takes 64 consecutive bytes */
64*8
};
static GFXDECODE_START( btime )
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 1 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, spritelayout, 0, 1 ) /* sprites */
GFXDECODE_ENTRY( "gfx2", 0, btime_tilelayout, 8, 1 ) /* background tiles */
GFXDECODE_ENTRY( "gfx1", 0, tile8layout, 0, 1 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, tile16layout, 0, 1 ) /* sprites */
GFXDECODE_ENTRY( "gfx2", 0, tile16layout, 8, 1 ) /* background tiles */
GFXDECODE_END
static GFXDECODE_START( cookrace )
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 1 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, spritelayout, 0, 1 ) /* sprites */
GFXDECODE_ENTRY( "gfx2", 0, cookrace_tilelayout, 8, 1 ) /* background tiles */
GFXDECODE_ENTRY( "gfx1", 0, tile8layout, 0, 1 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, tile16layout, 0, 1 ) /* sprites */
GFXDECODE_ENTRY( "gfx2", 0, tile8layout, 8, 1 ) /* background tiles */
GFXDECODE_END
static GFXDECODE_START( lnc )
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 1 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, spritelayout, 0, 1 ) /* sprites */
GFXDECODE_ENTRY( "gfx1", 0, tile8layout, 0, 1 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, tile16layout, 0, 1 ) /* sprites */
GFXDECODE_END
static GFXDECODE_START( bnj )
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 1 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, spritelayout, 0, 1 ) /* sprites */
GFXDECODE_ENTRY( "gfx2", 0, bnj_tilelayout, 8, 1 ) /* background tiles */
GFXDECODE_ENTRY( "gfx1", 0, tile8layout, 0, 1 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, tile16layout, 0, 1 ) /* sprites */
GFXDECODE_ENTRY( "gfx2", 0, bnj_tile16layout,8, 1 ) /* background tiles */
GFXDECODE_END
static GFXDECODE_START( zoar )
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 8 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx4", 0, zoar_spritelayout, 0, 8 ) /* sprites */
GFXDECODE_ENTRY( "gfx2", 0, btime_tilelayout, 0, 8 ) /* background tiles */
GFXDECODE_ENTRY( "gfx1", 0, tile8layout, 0, 8 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx4", 0, tile16layout, 0, 8 ) /* sprites */
GFXDECODE_ENTRY( "gfx2", 0, tile16layout, 0, 8 ) /* background tiles */
GFXDECODE_END
static GFXDECODE_START( disco )
GFXDECODE_ENTRY( NULL, 0x2000, charlayout, 0, 4 ) /* char set #1 */
GFXDECODE_ENTRY( NULL, 0x2000, spritelayout, 0, 4 ) /* sprites */
GFXDECODE_ENTRY( "gfx1", 0, tile8layout, 0, 4 ) /* char set #1 */
GFXDECODE_ENTRY( "gfx1", 0, tile16layout, 0, 4 ) /* sprites */
GFXDECODE_END
@ -1299,6 +1266,17 @@ static MACHINE_DRIVER_START( disco )
MDRV_VIDEO_UPDATE(disco)
MACHINE_DRIVER_END
static MACHINE_DRIVER_START( tisland )
/* basic machine hardware */
MDRV_IMPORT_FROM(btime)
/* video hardware */
MDRV_GFXDECODE(zoar)
MACHINE_DRIVER_END
/***************************************************************************
Game driver(s)
@ -1332,6 +1310,7 @@ ROM_START( btime )
ROM_LOAD( "ab03.6b", 0x0000, 0x0800, CRC(d26bc1f3) SHA1(737af6e264183a1f151f277a07cf250d6abb3fd8) )
ROM_END
ROM_START( btime2 )
ROM_REGION( 0x10000, "main", 0 )
ROM_LOAD( "aa04.9b2", 0xc000, 0x1000, CRC(a041e25b) SHA1(caaab3ae46619d0a87a8985d316411f23be0b696) )
@ -1415,6 +1394,43 @@ ROM_START( cookrace )
ROM_LOAD( "b7", 0x0020, 0x0020, CRC(e4268fa6) SHA1(93f74e633c3a19755e78e0e2883109cd8ccde9a8) ) /* unknown */
ROM_END
ROM_START( tisland )
ROM_REGION( 0x10000, "main", 0 )
ROM_LOAD( "t-04.b7", 0xa000, 0x1000, CRC(641af7f9) SHA1(50cd8f2372725356bb5a66024084363f5c5a870d) )
ROM_LOAD( "t-07.b11", 0xb000, 0x1000, CRC(6af00c8b) SHA1(e3948ca36642d3c2a1f94b017893d6e2fe178bb0) )
ROM_LOAD( "t-05.b9", 0xc000, 0x1000, CRC(95b1a1d3) SHA1(5636580f26e839d1140838c7efc1cabc2cf06f6f) )
ROM_LOAD( "t-08.b13", 0xd000, 0x1000, CRC(b7bbc008) SHA1(751491eac90f46985c83a6c06088638bcd0c0f20) )
ROM_LOAD( "t-06.b10", 0xe000, 0x1000, CRC(5a6783cf) SHA1(f518290efec0fedb92432b4e3448aea2438b8448) )
ROM_LOAD( "t-09.b14", 0xf000, 0x1000, CRC(5b26771a) SHA1(31d86acba4b6549fc08a3947d6d6d1a470fcb9da) )
ROM_REGION( 0x10000, "audio", 0 )
ROM_LOAD( "t-0a.j11", 0xf000, 0x1000, CRC(807e1652) SHA1(ccfee616dc0e34d10a0e62b9864fd987291bf176) )
ROM_REGION( 0x3000, "gfx1", ROMREGION_DISPOSE )
ROM_LOAD( "t-13.k14", 0x0000, 0x1000, CRC(95bdec2f) SHA1(201b9c53ea53a25535b619231d0d14e08c206ecf) )
ROM_LOAD( "t-10.k10", 0x1000, 0x1000, CRC(3ba416cb) SHA1(90c968f963ba6f52f979f28f62eaccc0e2911508) )
ROM_LOAD( "t-0d.k5", 0x2000, 0x1000, CRC(3d3e40b2) SHA1(90576c82500ce8eddbf4dd02e59ec4ccc3b13000) ) /* 8x8 tiles */
ROM_REGION( 0x1800, "gfx2", ROMREGION_DISPOSE ) /* bg tiles */
// also contains the (incomplete) bg tilemap data for 1 tilemap (0x400-0x7ff of every rom is same as gfx3 region, leftover?) */
ROM_LOAD( "t-00.b1", 0x0000, 0x0800, CRC(05eaf899) SHA1(b03a1b7d985b4d841d6bbb213a32a33e324dff89) ) /* charset #2 */
ROM_LOAD( "t-01.b2", 0x0800, 0x0800, CRC(f692e9e0) SHA1(e07ef20de8e9387f1096412d42d14ed5e52bbbd9) )
ROM_LOAD( "t-02.b4", 0x1000, 0x0800, CRC(88396cae) SHA1(47233d91e9c7b14091a0050524fa49e1bc69311d) )
ROM_REGION( 0x1000, "gfx3", 0 ) /* bg tilemap data */
ROM_LOAD( "t-03.b5", 0x0000, 0x1000, CRC(68df6d50) SHA1(461acc39089faac36bf8a8d279fbb6c046ae0264) )
ROM_REGION( 0x6000, "gfx4", ROMREGION_DISPOSE )
ROM_LOAD( "t-11.k11", 0x0000, 0x1000, CRC(779cc47c) SHA1(8921b81d460232252fd5a3c9bb2ad0befc1421da) ) /* 16x16 tiles*/
ROM_LOAD( "t-12.k13", 0x1000, 0x1000, CRC(c804a8aa) SHA1(f8ce1da88443416b6cd276741a600104d36c3725) )
ROM_LOAD( "t-0e.k6", 0x2000, 0x1000, CRC(63aa2b22) SHA1(765c405b1948191f5bdf1d8c1e7f20acb0894195) )
ROM_LOAD( "t-0f.k8", 0x3000, 0x1000, CRC(3eeca392) SHA1(78deceea3628aed0a57cb4208d260a91a304695a) )
ROM_LOAD( "t-0b.k2", 0x4000, 0x1000, CRC(ec416f20) SHA1(20852ef9753b103c5ec03d5eede778c0e25fc059) )
ROM_LOAD( "t-0c.k4", 0x5000, 0x1000, CRC(428513a7) SHA1(aab97ee938dc743a2941f71f827c22b9dde8aef0) )
ROM_END
/* There is a flyer with a screen shot for Lock'n'Chase at:
http://www.gamearchive.com/flyers/video/taito/locknchase_f.jpg */
@ -1599,7 +1615,8 @@ ROM_START( disco )
ROM_REGION( 0x10000, "audio", 0 )
ROM_LOAD( "disco.w6", 0xf000, 0x1000, CRC(d81e781e) SHA1(bde510bfed06a13bd56bf7ddbf220e7cf82f79b6) )
/* no gfx1 */
ROM_REGION( 0x6000, "gfx1", ROMREGION_ERASE00 )
/* dynamically allocated */
ROM_REGION( 0x0020, "proms", 0 )
ROM_LOAD( "disco.clr", 0x0000, 0x0020, CRC(a393f913) SHA1(42dce159283427064b3f5ce3a6e2189744ecd943) )
@ -1617,7 +1634,8 @@ ROM_START( discof )
ROM_REGION( 0x10000, "audio", 0 )
ROM_LOAD( "disco.w6", 0xf000, 0x1000, CRC(d81e781e) SHA1(bde510bfed06a13bd56bf7ddbf220e7cf82f79b6) )
/* no gfx1 */
ROM_REGION( 0x6000, "gfx1", ROMREGION_ERASE00 )
/* dynamically allocated */
ROM_REGION( 0x0020, "proms", 0 )
ROM_LOAD( "disco.clr", 0x0000, 0x0020, CRC(a393f913) SHA1(42dce159283427064b3f5ce3a6e2189744ecd943) )
@ -1733,6 +1751,7 @@ GAME( 1982, btime, 0, btime, btime, btime, ROT270, "Data East C
GAME( 1982, btime2, btime, btime, btime, btime, ROT270, "Data East Corporation", "Burger Time (Data East set 2)", 0 )
GAME( 1982, btimem, btime, btime, btime, btime, ROT270, "Data East (Bally Midway license)", "Burger Time (Midway)", 0 )
GAME( 1982, cookrace, btime, cookrace, cookrace, cookrace,ROT270, "bootleg", "Cook Race", 0 )
GAME( 1981, tisland, 0, tisland, btime, btime, ROT270, "Data East Corporation", "Treasure Island", GAME_NOT_WORKING )
GAME( 1981, lnc, 0, lnc, lnc, lnc, ROT270, "Data East Corporation", "Lock'n'Chase", 0 )
GAME( 1982, wtennis, 0, wtennis, wtennis, wtennis, ROT270, "bootleg", "World Tennis", 0 )
GAME( 1982, mmonkey, 0, mmonkey, mmonkey, lnc, ROT270, "Technos + Roller Tron", "Minky Monkey", 0 )