summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Luca Elia <lucaelia@mamedev.org>2015-08-02 18:06:44 +0200
committer Luca Elia <lucaelia@mamedev.org>2015-08-02 19:08:42 +0200
commitd7c09f3f016f261a1465968cd92ab8c959ada96b (patch)
treef8a5f28c11ed21f1b9ef15b877cc9db076d16470
parentfd28d6777f651ab24b83cd508e5ac123640533bb (diff)
New clones added
---------------- Saint Dragon (bootleg) [Yves Marchand]
-rw-r--r--src/mame/arcade.lst1
-rw-r--r--src/mame/drivers/megasys1.c78
-rw-r--r--src/mame/includes/megasys1.h1
3 files changed, 80 insertions, 0 deletions
diff --git a/src/mame/arcade.lst b/src/mame/arcade.lst
index 7f322c5c159..344c1882c23 100644
--- a/src/mame/arcade.lst
+++ b/src/mame/arcade.lst
@@ -8719,6 +8719,7 @@ jitsupro // (c) 1989 (Japan)
plusalph // (c) 1989
stdragon // (c) 1989
stdragona // (c) 1989
+stdragonb // bootleg
rodland // (c) 1990
rodlandj // (c) 1990 (Japan)
rittam // Prototype or hack of Rod-Land
diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c
index 1ff447a3069..0510acc4e25 100644
--- a/src/mame/drivers/megasys1.c
+++ b/src/mame/drivers/megasys1.c
@@ -3544,6 +3544,77 @@ ROM_START( stdragona )
ROM_LOAD( "prom.14m", 0x0000, 0x0200, CRC(1d877538) SHA1(a5be0dc65dcfc36fbba10d1fddbe155e24b6122f) )
ROM_END
+/***************************************************************************
+
+Bootleg version of Saint Dragon. Two PCBs connected by two flat cables.
+Sound section can host two oki chips (and roms) but only one is populated.
+No ASICs just logic chips.
+
+- ROMs A-19 and A-20 are fitted 'piggy backed' with one pin
+ from A-20 bent out and wired to a nearby TTL.
+
+- Stage 5 has some of its background graphics corrupted.
+ Don't know if it is a PCB issue or designed like that.
+
+***************************************************************************/
+
+ROM_START( stdragonb )
+ ROM_REGION( 0x60000, "maincpu", 0 ) /* Main CPU Code */
+ ROM_LOAD16_BYTE( "a-4.bin", 0x00000, 0x10000, CRC(c58fe5c2) SHA1(221767e995e05b076e256b1818c4b5d85f58e7e6) )
+ ROM_LOAD16_BYTE( "a-2.bin", 0x00001, 0x10000, CRC(46a7cdbb) SHA1(b90a0c10a5e7584e565f61b7bb143fb5800ae039) )
+ ROM_LOAD16_BYTE( "a-3.bin", 0x20000, 0x10000, CRC(f6a268c4) SHA1(106184fb18ad8018e9a4aad383c7243c254bfab1) )
+ ROM_LOAD16_BYTE( "a-1.bin", 0x20001, 0x10000, CRC(0fb439bd) SHA1(ab596cee4d14f9d805c065d826f36298c6486975) )
+
+ ROM_REGION( 0x20000, "audiocpu", 0 ) /* Sound CPU Code */
+ ROM_LOAD16_BYTE( "b-20.bin", 0x00000, 0x10000, CRC(8c04feaa) SHA1(57e86fd88dc72d123a41f0dee80a16be38ac2e81) ) // = jsd-05
+ ROM_LOAD16_BYTE( "b-19.bin", 0x00001, 0x10000, CRC(0bb62f3a) SHA1(68d9f161ba2568f8e046b1a40127bbb973d7a884) ) // = jsd-06
+
+ ROM_REGION( 0x080000, "gfx1", 0 ) /* Scroll 0 */
+ ROM_LOAD( "a-15.bin", 0x00000, 0x10000, CRC(42f7d2cd) SHA1(7518b2d1d92a1c48e6d8ae0723cfa76ac67fa2b9) ) // ~= jsd-11 [1/2]
+ ROM_LOAD( "a-16.bin", 0x10000, 0x10000, CRC(4f519a97) SHA1(fc7c9f6756f9b6c8fa96c2eea61066859120ad3a) ) // ~= jsd-11 [2/2]
+ ROM_LOAD( "a-14.bin", 0x20000, 0x10000, CRC(d8ba8d4c) SHA1(47c179e46f329c32f09ba539c742633f390fc449) ) // ~= jsd-12 [1/2]
+
+ ROM_LOAD( "a-18.bin", 0x40000, 0x10000, CRC(5e35f269) SHA1(54b3108f819056582c3e85432faa6c31dd706cbe) ) // ~= jsd-13 [1/2]
+ ROM_LOAD( "a-19.bin", 0x50000, 0x10000, CRC(b818db20) SHA1(f60b041a7934fb3d1ebf8fcdf12121e33734c6ae) ) // ~= jsd-13 [2/2]
+ ROM_LOAD( "a-17.bin", 0x60000, 0x10000, CRC(0f6094f9) SHA1(952976c7e019536b8d718ce7c6ed5e6a643b4070) ) // ~= jsd-14 [1/2]
+ ROM_LOAD( "a-20.bin", 0x70000, 0x10000, CRC(e8849b15) SHA1(2c18f56da4d26ca7112d9bd720f26e9cce078eb7) ) // ~= jsd-14 [2/2]
+
+ ROM_REGION( 0x080000, "gfx2", 0 ) /* Scroll 1 */
+ ROM_LOAD( "a-9.bin", 0x00000, 0x10000, CRC(135c2e0e) SHA1(052b29c7060117c7e3e6c7c7826c129775564f87) ) // = jsd-15 [1/2]
+ ROM_LOAD( "a-10.bin", 0x10000, 0x10000, CRC(19cec47a) SHA1(b90600b39e4c54e1405be27740e8c55b18681632) ) // = jsd-15 [2/2]
+ ROM_LOAD( "a-5.bin", 0x20000, 0x10000, CRC(da4ca7bf) SHA1(f472ce7f474a56779dd3bbd729d908494e94c91c) ) // = jsd-16 [1/2]
+ ROM_LOAD( "a-6.bin", 0x30000, 0x10000, CRC(9d9b6470) SHA1(a6433687b1b13517e249138dac1b088ff0bcd2ff) ) // = jsd-16 [2/2]
+ ROM_LOAD( "a-12.bin", 0x40000, 0x10000, CRC(22382b5f) SHA1(e177368bf1e02a57d4284362804e1ba5a39cfb35) ) // = jsd-17 [1/2]
+ ROM_LOAD( "a-11.bin", 0x50000, 0x10000, CRC(26c2494d) SHA1(224aabd2e431f490bc9e06682ee279e7ca3a7df7) ) // = jsd-17 [2/2]
+ ROM_LOAD( "a-7.bin", 0x60000, 0x10000, CRC(cee3a6f7) SHA1(3829591a6724b080435e9d008ff51faf69ebcd71) ) // = jsd-18 [1/2]
+ ROM_LOAD( "a-8.bin", 0x70000, 0x10000, CRC(883b99bb) SHA1(820afda20ba2b66ac89a5982178aa5b5f6e2bd74) ) // = jsd-18 [2/2]
+
+ ROM_REGION( 0x020000, "gfx3", 0 ) /* Scroll 2 */
+ ROM_LOAD( "a-13.bin", 0x000000, 0x08000, CRC(9e487aa1) SHA1(6d418467bc865a7069b5a9eb0707d23ce821ad28) ) // = jsd-19 [1/2]
+
+ ROM_REGION( 0x080000, "gfx4", 0 ) /* Sprites */
+ ROM_LOAD( "a-22.bin", 0x00000, 0x10000, CRC(c7ee6d89) SHA1(45bba446dc5821222c09957380d74993310cb3a1) ) // ~= jsd-20 [1/2]
+ ROM_LOAD( "a-23.bin", 0x10000, 0x10000, CRC(79552709) SHA1(2e5120efcc0afc46642561b269f410498f6f5bef) ) // ~= jsd-20 [2/2]
+ ROM_LOAD( "a-25.bin", 0x20000, 0x10000, CRC(d8926711) SHA1(56c2f25e21eacd4fb779fa04ffd06de937c557ef) ) // ~= jsd-21 [1/2]
+ ROM_LOAD( "a-26.bin", 0x30000, 0x10000, CRC(41d76447) SHA1(cfced91518859b93b77c9097f0b44adef66c8683) ) // ~= jsd-21 [2/2]
+ ROM_LOAD( "a-21.bin", 0x40000, 0x10000, CRC(5af84bd5) SHA1(a0b4dd69c8e0e2f38f67d42dcadb1254299ab649) ) // ~= jsd-22 [1/2]
+ ROM_LOAD( "a-24.bin", 0x50000, 0x10000, CRC(09ae3173) SHA1(6c5c49297319decf530f3c0930d5146836d425b1) ) // ~= jsd-22 [2/2]
+ ROM_LOAD( "a-27.bin", 0x60000, 0x10000, CRC(c9049e98) SHA1(d24775704a4898293522ea5c2a901c6f457dce75) ) // ~= jsd-23 [1/2]
+ ROM_LOAD( "a-28.bin", 0x70000, 0x10000, CRC(b4d12106) SHA1(08018251d10c0f5410779fa68cf95c87ba89ea56) ) // ~= jsd-23 [2/2]
+
+ ROM_REGION( 0x040000, "oki1", ROMREGION_ERASE00 ) /* Samples */
+ // unpopulated
+
+ ROM_REGION( 0x040000, "oki2", 0 ) /* Samples */
+ ROM_LOAD( "a-29.bin", 0x00000, 0x10000, CRC(0049aa65) SHA1(29efff074e0fd23eb3cc9ccd3a0eae0acc812e39) ) // = jsd-07 [1/2]
+ ROM_LOAD( "a-30.bin", 0x10000, 0x10000, CRC(05bce2c7) SHA1(4aaf5156bafb3451492c5053d7d75994a72f8738) ) // = jsd-07 [2/2]
+ ROM_LOAD( "b-17.bin", 0x20000, 0x10000, CRC(3e4e34d3) SHA1(3cda83d8f9e9108acbace717f167cccb8adc5b90) ) // = jsd-08 [1/2]
+ ROM_LOAD( "b-18.bin", 0x30000, 0x10000, CRC(738a6643) SHA1(d41a0eaf076847d63a9a23db16a99627ec118f97) ) // = jsd-08 [2/2]
+
+ ROM_REGION( 0x0200, "proms", 0 ) /* Priority PROM */
+ ROM_LOAD( "prom.14m", 0x0000, 0x0200, CRC(1d877538) SHA1(a5be0dc65dcfc36fbba10d1fddbe155e24b6122f) ) // from parent
+ROM_END
+
/***************************************************************************
@@ -4138,6 +4209,12 @@ DRIVER_INIT_MEMBER(megasys1_state,stdragona)
m_maincpu->space(AS_PROGRAM).install_write_handler(0x23ff0, 0x23ff9, write16_delegate(FUNC(megasys1_state::stdragon_mcu_hs_w),this));
}
+DRIVER_INIT_MEMBER(megasys1_state,stdragonb)
+{
+ stdragona_gfx_unmangle("gfx1");
+ stdragona_gfx_unmangle("gfx4");
+}
+
READ16_MEMBER(megasys1_state::monkelf_input_r)
{
ioport_port *in_names[] = { m_io_p1, m_io_p2, m_io_dsw1, m_io_dsw2, m_io_system };
@@ -4202,6 +4279,7 @@ GAME( 1989, jitsupro, 0, system_A, jitsupro, megasys1_state, jit
GAME( 1989, plusalph, 0, system_A, plusalph, megasys1_state, astyanax, ROT270, "Jaleco", "Plus Alpha", 0 )
GAME( 1989, stdragon, 0, system_A, stdragon, megasys1_state, stdragon, ROT0, "Jaleco", "Saint Dragon (set 1)", 0 )
GAME( 1989, stdragona,stdragon, system_A, stdragon, megasys1_state, stdragona,ROT0, "Jaleco", "Saint Dragon (set 2)", 0 )
+GAME( 1989, stdragonb,stdragon, system_A, stdragon, megasys1_state, stdragonb,ROT0, "bootleg","Saint Dragon (bootleg)", 0 )
GAME( 1990, rodland, 0, system_A, rodland, megasys1_state, rodland, ROT0, "Jaleco", "Rod-Land (World)", 0 )
GAME( 1990, rodlandj, rodland, system_A, rodland, megasys1_state, rodlandj, ROT0, "Jaleco", "Rod-Land (Japan)", 0 )
GAME( 1990, rittam, rodland, system_A, rodland, megasys1_state, rittam, ROT0, "Jaleco", "R&T (Rod-Land prototype?)", 0 )
diff --git a/src/mame/includes/megasys1.h b/src/mame/includes/megasys1.h
index 869ff11f182..073541652c7 100644
--- a/src/mame/includes/megasys1.h
+++ b/src/mame/includes/megasys1.h
@@ -135,6 +135,7 @@ public:
DECLARE_DRIVER_INIT(rodland);
DECLARE_DRIVER_INIT(edfbl);
DECLARE_DRIVER_INIT(stdragona);
+ DECLARE_DRIVER_INIT(stdragonb);
TILEMAP_MAPPER_MEMBER(megasys1_scan_8x8);
TILEMAP_MAPPER_MEMBER(megasys1_scan_16x16);
TILE_GET_INFO_MEMBER(megasys1_get_scroll_tile_info_8x8);