Skip to content

Commit

Permalink
New Working Clockwork Aquario (Prototype) (#113)
Browse files Browse the repository at this point in the history
Also fixed the parent set of Alien Storm to make it playable

With a huge thanks to grant2258
  • Loading branch information
arcadez2003 authored Feb 5, 2024
1 parent 14b4dfa commit db5054a
Showing 1 changed file with 86 additions and 8 deletions.
94 changes: 86 additions & 8 deletions src/drivers/segas18.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@
#define ROM_BOARD_171_SHADOW (0) /* 171-???? -- used by shadow dancer */
#define ROM_BOARD_171_5874 (1) /* 171-5874 */
#define ROM_BOARD_171_5987 (2) /* 171-5987 */

#define ROM_BOARD_171_5987_AQUARIO (3) /* Clockwork Aquario */


/*************************************
Expand Down Expand Up @@ -131,11 +131,26 @@ static const struct segaic16_memory_map_entry rom_171_5987_info[] =
{ 0 }
};

static const struct segaic16_memory_map_entry rom_171_5987_aquario_info[] =
{
{ 0x3d/2, 0x00000, 0x04000, 0xffc000, ~0, misc_io_r, misc_io_w, NULL, "I/O space" },
{ 0x39/2, 0x00000, 0x02000, 0xffe000, ~0, MRA16_BANK10, segaic16_paletteram_w, &paletteram16, "color RAM" },
{ 0x35/2, 0x00000, 0x10000, 0xfe0000, ~0, MRA16_BANK11, segaic16_tileram_0_w, &segaic16_tileram_0, "tile RAM" },
{ 0x35/2, 0x10000, 0x01000, 0xfef000, ~0, MRA16_BANK12, segaic16_textram_0_w, &segaic16_textram_0, "text RAM" },
{ 0x31/2, 0x00000, 0x00800, 0xfff800, ~0, MRA16_BANK13, MWA16_BANK13, &segaic16_spriteram_0, "object RAM" },
{ 0x2d/2, 0x00000, 0x04000, 0xffc000, ~0, MRA16_BANK14, MWA16_BANK14, &workram, "work RAM" },
{ 0x29/2, 0x00000, 0x00010, 0xfffff0, ~0, genesis_vdp_r, genesis_vdp_w, NULL, "VDP" },
{ 0x25/2, 0x00000, 0x100000, 0xf00000, 0x100000, MRA16_BANK16, rom_5987_bank_w, NULL, "ROM 1/banking" },
{ 0x21/2, 0x00000, 0x100000,0xf00000, 0x00000, MRA16_BANK17, MWA16_ROM, NULL, "ROM 0" },
{ 0 }
};

static const struct segaic16_memory_map_entry *region_info_list[] =
{
&rom_171_shad_info[0],
&rom_171_5874_info[0],
&rom_171_5987_info[0]
&rom_171_5987_info[0],
&rom_171_5987_aquario_info[0]
};


Expand Down Expand Up @@ -769,6 +784,30 @@ INPUT_PORTS_END
*
*************************************/

static INPUT_PORTS_START( aquario )
PORT_INCLUDE( system18_generic )
PORT_MODIFY("DSW")
PORT_DIPNAME( 0x01, 0x01, "Credits to Start" )
PORT_DIPSETTING( 0x01, "1")
PORT_DIPSETTING( 0x00, "2")
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x0c, 0x00, "Number of Players" )
PORT_DIPSETTING( 0x00, "1" )
PORT_DIPSETTING( 0x04, "2" )
PORT_DIPSETTING( 0x0c, "3" )
PORT_DIPSETTING( 0x08, "4" )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x10, DEF_STR( Normal ) )
PORT_DIPNAME( 0x20, 0x20, "Switch to Start" )
PORT_DIPSETTING( 0x20, "Start" )
PORT_DIPSETTING( 0x00, "Attack" )
//"SW2:7" unused
//"SW2:8" unused
INPUT_PORTS_END

static INPUT_PORTS_START( astorm )
PORT_INCLUDE( system18_generic )

Expand Down Expand Up @@ -1336,17 +1375,17 @@ MACHINE_DRIVER_END
/**************************************************************************************************************************
**************************************************************************************************************************
**************************************************************************************************************************
Alien Storm (2 players version), Sega System 18
CPU: FD1094 (317-????)
ROM Board: 171-5873B
Alien Storm (2 players World version), Sega System 18
CPU: FD1094 (317-0154)
ROM Board: 171-5873B
*/
ROM_START( astorm )
ROM_REGION( 0x080000, REGION_CPU1, 0 ) /* 68000 code */
ROM_LOAD16_BYTE( "epr13182.bin", 0x000000, 0x40000, CRC(e31f2a1c) SHA1(690ee10c36e5bb6175470fb5564527e0e4a94d2c) )
ROM_LOAD16_BYTE( "epr13181.bin", 0x000001, 0x40000, CRC(78cd3b26) SHA1(a81b807c5da625d8e4648ae80c41e4ca3870c0fa) )

ROM_REGION( 0x2000, REGION_USER1, 0 ) /* decryption key */
ROM_LOAD( "317-????.key", 0x0000, 0x2000, NO_DUMP )
ROM_LOAD( "317-0154.key", 0x0000, 0x2000, CRC(b86b6b8f) SHA1(869405383d563a3f3842c89462a7b2e184928532) )

ROM_REGION( 0xc0000, REGION_GFX1, ROMREGION_DISPOSE ) /* tiles */
ROM_LOAD( "epr13073.bin", 0x00000, 0x40000, CRC(df5d0a61) SHA1(79ad71de348f280bad847566c507b7a31f022292) )
Expand Down Expand Up @@ -1504,6 +1543,41 @@ ROM_START( bloxeed )
ROM_LOAD( "epr12888.a4", 0x010000, 0x20000, CRC(6f2fc63c)SHA1(3cce22c8f80013f05b5a2d36c42a61a81e4d6cbd) )
ROM_END

/**************************************************************************************************************************
**************************************************************************************************************************
**************************************************************************************************************************
Clockwork Aquario, Sega / Westone System 18
Unreleased prototype
*/

ROM_START( aquario )
ROM_REGION( 0x300000, REGION_CPU1, 0 ) /* 68000 code */
ROM_LOAD16_BYTE( "a4.bin", 0x000000, 0x80000, CRC(c58ff95f) SHA1(dfeb15d6d605bd80ab289daf1e90e4c1e270892b) )
ROM_LOAD16_BYTE( "a6.bin", 0x000001, 0x80000, CRC(b4a94cd9) SHA1(2059942a26d9e1de63b329d1c8b643535761d2d8) )
ROM_LOAD16_BYTE( "a5.bin", 0x200000, 0x80000, CRC(1cef8145) SHA1(78a1be8ea0cc0d4e56b2cf9a7c1bd3e08352e175) )
ROM_LOAD16_BYTE( "a7.bin", 0x200001, 0x80000, CRC(504e4665) SHA1(9b052b48b7cb2da880d6589fdcd1041eca555f7c) )

ROM_REGION( 0x180000, REGION_GFX1, ROMREGION_DISPOSE ) /* tiles */
ROM_LOAD( "c1.bin", 0x000000, 0x080000, CRC(93ad1357) SHA1(09b35481798035b5f7d7d533e27418a298c6e2c7) )
ROM_LOAD( "c2.bin", 0x080000, 0x080000, CRC(4010d14b) SHA1(f9d2e726a032f49fac69a223107966f2884821b5) )
ROM_LOAD( "c3.bin", 0x100000, 0x080000, CRC(3a3d0285) SHA1(21899b3b2bcb979d53e78b0d48c493a9a15955c7) )

ROM_REGION16_BE( 0x800000, REGION_GFX2, 0 ) /* sprites */
ROM_LOAD16_BYTE( "a10.bin", 0x000000, 0x080000, CRC(b863e533) SHA1(e80fa6a74c43c040fd4b857247aecf03a3de3d87) )
ROM_LOAD16_BYTE( "c10.bin", 0x000001, 0x080000, CRC(c9ce76f9) SHA1(a096583f5e81f02d6a34802688d201d8d986a84a) )
ROM_LOAD16_BYTE( "a11.bin", 0x200000, 0x080000, CRC(8b568940) SHA1(19cd028cd43fa07904deb0250564251ba0128c4b) )
ROM_LOAD16_BYTE( "c11.bin", 0x200001, 0x080000, CRC(06edb7bc) SHA1(e24ec7b52638edaa8debee0aca40ddf902c63334) )
ROM_LOAD16_BYTE( "a12.bin", 0x400000, 0x080000, CRC(0219923f) SHA1(1e52df5ef155f5a4d74eabea22bb431a569e344f) )
ROM_LOAD16_BYTE( "c12.bin", 0x400001, 0x080000, CRC(0bb79c56) SHA1(fdaa6cc9efb3104b78392530547bd82c21cff825) )
ROM_LOAD16_BYTE( "a13.bin", 0x600000, 0x080000, CRC(9ea5c73d) SHA1(e42002cc13548a8aba6ffb0c60470b345b88eaa8) )
ROM_LOAD16_BYTE( "c13.bin", 0x600001, 0x080000, CRC(0beef46e) SHA1(eccba6d4e015e93f5ca25ef6df31a491193d08a4) )

ROM_REGION( 0x210000, REGION_CPU2, ROMREGION_ERASEFF ) /* sound CPU */
ROM_LOAD( "c7.bin", 0x010000, 0x40000, CRC(f1183938) SHA1(9409f0dc02773892803bc6d37f1bdbd894cf1805) )
ROM_LOAD( "c6.bin", 0x090000, 0x80000, CRC(39f11291) SHA1(3b4680bd2e20bd297644dda0a26f958c74826d47) )
ROM_LOAD( "c5.bin", 0x110000, 0x80000, CRC(6a380dca) SHA1(4589efc9e994ef9d07d4033e20c21afca4875005) )
ROM_LOAD( "c4.bin", 0x190000, 0x80000, CRC(1bd081f8) SHA1(e5b0b5d8334486f813d7c430bb7fce3f69605a21) )
ROM_END

/**************************************************************************************************************************
**************************************************************************************************************************
Expand Down Expand Up @@ -2221,7 +2295,10 @@ static DRIVER_INIT( generic_5987 )
system18_generic_init(ROM_BOARD_171_5987);
}


static DRIVER_INIT( aquario )
{
system18_generic_init(ROM_BOARD_171_5987_AQUARIO);
}

/*************************************
*
Expand Down Expand Up @@ -2257,7 +2334,7 @@ static DRIVER_INIT( wwally )
*
*************************************/

GAME( 1990, astorm, 0, system18, astorm2p, generic_5874, ROT0, "Sega", "Alien Storm (set 4, 2 Players, FD1094 317-?)", GAME_NOT_WORKING ) // not decrypted
GAME( 1990, astorm, 0, system18, astorm2p, generic_5874, ROT0, "Sega", "Alien Storm (set 4, World, 2 Players, FD1094 317-0154)", 0 )
GAME( 1990, astorm3, astorm, system18, astorm, generic_5874, ROT0, "Sega", "Alien Storm (set 3, World, 3 Players, FD1094 317-0148)", 0 )
GAME( 1990, astormu, astorm, system18, astorm, generic_5874, ROT0, "Sega", "Alien Storm (set 2, US, 3 Players, FD1094 317-0147)", 0 )
GAME( 1990, astormj, astorm, system18, astorm2p, generic_5874, ROT0, "Sega", "Alien Storm (set 1, Japan, 2 Players, FD1094 317-0146)", 0 )
Expand All @@ -2281,3 +2358,4 @@ GAME( 1989, shdancej, shdancer, system18, shdancer, generic_shad, ROT0, "
GAME( 1989, shdance1, shdancer, system18, shdancer, generic_shad, ROT0, "Sega", "Shadow Dancer (set 1)", 0 )
GAME( 1992, wwallyj, 0, system18, wwally, wwally, ROT0, "Sega", "Wally wo Sagase! (rev B, Japan, FD1094 317-0197B)" , 0) /* the roms do contain an english logo so maybe there is a world / us set too */
GAME( 1992, wwallyja, wwallyj, system18, wwally, wwally, ROT0, "Sega", "Wally wo Sagase! (rev A, Japan, FD1094 317-0197A)", 0 )
GAME( 2021, aquario, 0, system18, aquario, aquario, ROT0, "Sega / Westone", "Clockwork Aquario (prototype)", 0 )

0 comments on commit db5054a

Please sign in to comment.