summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author mixxmaster <mixmaster@8chan.co>2015-09-25 20:01:28 +0800
committer mixxmaster <mixmaster@8chan.co>2015-09-25 20:01:28 +0800
commit4e3fb779dcfe2dfe34feec7a816d4c9dfd4ee13b (patch)
tree63bd9e02f6903ec532726e4790f39f10240abaca /src
parente96f45034dc6eb346e26aed2b5be57f17701a12b (diff)
Seperate Space Warp into it's own skeleton driver.
Diffstat (limited to 'src')
-rw-r--r--src/mame/arcade.lst4
-rw-r--r--src/mame/drivers/galaxian.c20
-rw-r--r--src/mame/drivers/spcwarp.c102
3 files changed, 105 insertions, 21 deletions
diff --git a/src/mame/arcade.lst b/src/mame/arcade.lst
index 529864f503c..1499d192536 100644
--- a/src/mame/arcade.lst
+++ b/src/mame/arcade.lst
@@ -278,7 +278,6 @@ ckongis //
porter // 1982 bootleg (Arcade TV Game List - P.98, Left, 15 from bottom)
tdpgal // 1983 Design Labs / Thomas Automatics
guttangt
-spcwarp // 1983 Century Electronics UK LTD
// Has some similarities with Moon Cresta but Board is very different
rockclim // (c)1981 Taito
@@ -1624,6 +1623,9 @@ huncholy // (c) 1984 Seatongrove (c) CVS
quasar // (c) 1980 Zelco Games Italy
quasara // (c) 1980 Zelco Games Italy
+// Unknown Century Electronics hardware (CVS?)
+spcwarp // 1983 Century Electronics UK LTD
+
// Midway "Astrocade" games
seawolf2 // (c) 1978
spacezap // (c) 1980
diff --git a/src/mame/drivers/galaxian.c b/src/mame/drivers/galaxian.c
index e47a72c4aca..813674baacc 100644
--- a/src/mame/drivers/galaxian.c
+++ b/src/mame/drivers/galaxian.c
@@ -6750,25 +6750,6 @@ ROM_START( galaxian )
ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
ROM_END
-/* Suspected of being Space Warp - ASCII shows "COPYRIGHT 1983", "CENTURY ELECTRONICS UK LTD" in swarpt7f.bin */
-/* S2650 CPU, not Z80. gfx is like cosmos(cvs.c) */
-ROM_START( spcwarp )
- ROM_REGION( 0x4000, "maincpu", 0 )
- ROM_LOAD( "swarpt7f.bin", 0x0000, 0x1000, CRC(04d744e3) SHA1(db8218510052a05670cb0b722b73d3f10464788c) )
- ROM_LOAD( "swarpt7h.bin", 0x1000, 0x1000, CRC(34a36536) SHA1(bc438515618683b2a7c29637871ee00ed95ad7f8) )
-/* ROMCMP reports "BADADDR xxxxxx-xxxxx". Observed data sequence repeated every 32 bytes */
- ROM_LOAD( "swarpt7m.bin", 0x2000, 0x1000, BAD_DUMP CRC(a2dff6c8) SHA1(d1c72848450dc5ff386dc94a26e4bf704ccc7121) )
-/* Stripped "repaired" rom. Was original rom supposed to be 0x1000 or 0x800? */
-// ROM_LOAD( "swarpt7m-repair.bin", 0x2000, 0x0800, CRC(109f95cf) SHA1(d99171ffd6639fec28966edaf7cce3a4df5e948d) )
-
- ROM_REGION( 0x1000, "gfx1", 0 )
- ROM_LOAD( "swarpb1h.bin", 0x0000, 0x0800, CRC(6ee3b5f7) SHA1(8150f2ecd59d3a165c0541b550664c56d049edd5) )
- ROM_LOAD( "swarpb1k.bin", 0x0800, 0x0800, CRC(da4cee6b) SHA1(28b91381658f598fa62049489beee443232825c6) )
-
- ROM_REGION( 0x0020, "proms", 0 ) /* unknown - using Galaxian's prom for now */
- ROM_LOAD( "6l.bpr", 0x0000, 0x0020, CRC(c3ac9467) SHA1(f382ad5a34d282056c78a5ec00c30ec43772bae2) )
-ROM_END
-
ROM_START( galaxiana )
ROM_REGION( 0x4000, "maincpu", 0 )
ROM_LOAD( "7f.bin", 0x0000, 0x1000, CRC(4335b1de) SHA1(e41e3d90dac738cf71377f3b476ec67b14dee27a) )
@@ -10826,7 +10807,6 @@ GAME( 1980, luctoday, 0, galaxian, luctoday, galaxian_state, galax
GAME( 19??, chewing, luctoday, galaxian, luctoday, galaxian_state, galaxian, ROT90, "<unknown>", "Chewing Gum", MACHINE_SUPPORTS_SAVE )
GAME( 1982, catacomb, 0, galaxian, catacomb, galaxian_state, galaxian, ROT90, "MTM Games", "Catacomb", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE )
GAME( 19??, omega, theend, galaxian, omega, galaxian_state, galaxian, ROT270, "bootleg?", "Omega", MACHINE_SUPPORTS_SAVE )
-GAME( 1983, spcwarp, 0, galaxian, galaxian, galaxian_state, galaxian, ROT90, "Century Electronics", "Space Warp?", MACHINE_NOT_WORKING | MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE )
/* these games require the coin lockout mechanism to be disabled */
GAME( 1981, warofbug, 0, galaxian, warofbug, galaxian_state, nolock, ROT90, "Armenia / Food and Fun Corp", "War of the Bugs or Monsterous Manouvers in a Mushroom Maze", MACHINE_SUPPORTS_SAVE )
diff --git a/src/mame/drivers/spcwarp.c b/src/mame/drivers/spcwarp.c
new file mode 100644
index 00000000000..418799827ae
--- /dev/null
+++ b/src/mame/drivers/spcwarp.c
@@ -0,0 +1,102 @@
+// license:BSD-3-Clause
+// copyright-holders:kazblox
+/*
+Space Warp(?)
+it's completely unknown if this is actually Space Warp but it contains Galaxian-like GFX
+ASCII shows "COPYRIGHT 1983", "CENTURY ELECTRONICS UK LTD" in swarpt7f.bin
+gfx is like cosmos according to hap(cvs.c)
+*/
+
+#include "emu.h"
+#include "cpu/s2650/s2650.h"
+
+class spcwarp_state : public driver_device
+{
+public:
+ spcwarp_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag),
+ m_maincpu(*this, "maincpu")
+ { }
+
+ virtual void machine_start();
+ virtual void machine_reset();
+ required_device<cpu_device> m_maincpu;
+};
+
+//INTERRUPT_GEN_MEMBER(spcwarp_state::spcwarp_main_cpu_interrupt)
+//{
+// device.execute().set_input_line_vector(0, 0x03);
+//}
+
+static ADDRESS_MAP_START( spcwarp_map, AS_PROGRAM, 8, spcwarp_state )
+ AM_RANGE(0x0000, 0x3fff) AM_ROM
+ADDRESS_MAP_END
+
+static INPUT_PORTS_START( spcwarp )
+ PORT_START("IN0")
+ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
+ PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
+void spcwarp_state::machine_start()
+{
+}
+
+void spcwarp_state::machine_reset()
+{
+}
+
+static MACHINE_CONFIG_START( spcwarp, spcwarp_state )
+
+ /* basic machine hardware */
+ MCFG_CPU_ADD("maincpu", S2650, XTAL_14_31818MHz/16) // clock is a complete guess
+ MCFG_CPU_PROGRAM_MAP(spcwarp_map)
+ //MCFG_CPU_VBLANK_INT_DRIVER("screen", spcwarp_state, spcwarp_main_cpu_interrupt) // ???
+ //MCFG_S2650_FLAG_HANDLER(WRITELINE(spcwarp_state, write_s2650_flag)) // ???
+
+ /* video hardware */
+ /* todo: this */
+
+ /* audio hardware */
+ MCFG_SPEAKER_STANDARD_MONO("mono")
+ /* todo: this */
+
+MACHINE_CONFIG_END
+
+ROM_START( spcwarp )
+ ROM_REGION( 0x4000, "maincpu", 0 )
+ ROM_LOAD( "swarpt7f.bin", 0x0000, 0x1000, CRC(04d744e3) SHA1(db8218510052a05670cb0b722b73d3f10464788c) )
+ ROM_LOAD( "swarpt7h.bin", 0x1000, 0x1000, CRC(34a36536) SHA1(bc438515618683b2a7c29637871ee00ed95ad7f8) )
+/* ROMCMP reports "BADADDR xxxxxx-xxxxx". Observed data sequence repeated every 32 bytes */
+ ROM_LOAD( "swarpt7m.bin", 0x2000, 0x1000, BAD_DUMP CRC(a2dff6c8) SHA1(d1c72848450dc5ff386dc94a26e4bf704ccc7121) )
+/* Stripped "repaired" rom. Was original rom supposed to be 0x1000 or 0x800? */
+// ROM_LOAD( "swarpt7m-repair.bin", 0x2000, 0x0800, CRC(109f95cf) SHA1(d99171ffd6639fec28966edaf7cce3a4df5e948d) )
+
+ ROM_REGION( 0x1000, "gfx1", 0 )
+ ROM_LOAD( "swarpb1h.bin", 0x0000, 0x0800, CRC(6ee3b5f7) SHA1(8150f2ecd59d3a165c0541b550664c56d049edd5) )
+ ROM_LOAD( "swarpb1k.bin", 0x0800, 0x0800, CRC(da4cee6b) SHA1(28b91381658f598fa62049489beee443232825c6) )
+ROM_END
+
+GAME( 1983, spcwarp, 0, spcwarp, spcwarp, driver_device, 0, ROT90, "Century Electronics", "Space Warp?", MACHINE_IS_SKELETON ) \ No newline at end of file