From 2724ef2b37bb0c5352b138a2ecf2b802e1e2ba00 Mon Sep 17 00:00:00 2001 From: system11b Date: Tue, 30 Jun 2015 23:59:56 +0100 Subject: [PATCH 1/2] Added R&T clone of Rod-Land --- src/mame/arcade.lst | 1 + src/mame/drivers/megasys1.c | 98 ++++++++++++++++++++++++++++-------- src/mame/includes/megasys1.h | 1 + 3 files changed, 80 insertions(+), 20 deletions(-) diff --git a/src/mame/arcade.lst b/src/mame/arcade.lst index b7678cdcc8d..59e91a66623 100644 --- a/src/mame/arcade.lst +++ b/src/mame/arcade.lst @@ -8694,6 +8694,7 @@ stdragon // (c) 1989 stdragona // (c) 1989 rodland // (c) 1990 rodlandj // (c) 1990 (Japan) +rittam // (c) 1990 (Prototype) rodlandjb // bootleg avspirit // (c) 1991 phantasm // (c) 1991 (Japan) diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c index 0b183331047..5f386fb63c2 100644 --- a/src/mame/drivers/megasys1.c +++ b/src/mame/drivers/megasys1.c @@ -29,6 +29,7 @@ Year + Game System Protection Saint Dragon A Yes + Encryption (key 1) 90 RodLand (World) / A Encryption (key 3) RodLand (Japan) A Encryption (key 2) + R&T (Prototype?) A Encryption (key 2) Phantasm (Japan) / A Encryption (key 1) 91 Avenging Spirit (World) B Inputs Earth Defense Force B Inputs @@ -116,6 +117,12 @@ RAM RW 0f0000-0f3fff 0e0000-0effff? < - Understand a handful of unknown bits in video regs +- R&T really does have scrambled sound effects on the PCB, those two ROMs being + ones which even still had their original labels. Possibly a prototype, only + one known to exist. ROM17 is missing on the board, not sure if this is + intentional, is the data for the 'secondary' set of levels stored in 17/18? + This game has no alternate levels mode either. Socketed encryption chip is + unusual. ***************************************************************************/ @@ -3280,9 +3287,9 @@ ROM_START( rodland ) ROM_LOAD16_BYTE( "JALECO_ROD_LAND_3.ROM3", 0x040000, 0x010000, CRC(62fdf6d7) SHA1(ffde7e7f5b3b548bc980b9dee767f693046ecab2) ) ROM_LOAD16_BYTE( "JALECO_ROD_LAND_4.ROM4", 0x040001, 0x010000, CRC(44163c86) SHA1(1c56d79531af0312e7cd3dc66cf61b55dd1a6e51) ) - ROM_REGION( 0x20000, "audiocpu", 0 ) /* Sound CPU Code */ - ROM_LOAD16_BYTE( "JALECO_ROD_LAND_5.ROM5", 0x000000, 0x010000, CRC(c1617c28) SHA1(1b3440055c083b74270fe06b5f42e7d1337efeca) ) - ROM_LOAD16_BYTE( "JALECO_ROD_LAND_6.ROM6", 0x000001, 0x010000, CRC(663392b2) SHA1(99052639e934d1ca18888c9c7fa061c1d3508fd4) ) + ROM_REGION( 0x20000, "audiocpu", 0 ) /* Sound CPU Code */ + ROM_LOAD16_BYTE( "JALECO_ROD_LAND_5.ROM5", 0x000000, 0x010000, CRC(c1617c28) SHA1(1b3440055c083b74270fe06b5f42e7d1337efeca) ) + ROM_LOAD16_BYTE( "JALECO_ROD_LAND_6.ROM6", 0x000001, 0x010000, CRC(663392b2) SHA1(99052639e934d1ca18888c9c7fa061c1d3508fd4) ) ROM_REGION( 0x080000, "gfx1", 0 ) /* Scroll 0 */ ROM_LOAD( "LH534H31.ROM14", 0x000000, 0x080000, CRC(8201e1bb) SHA1(3304100dcab7b67cee021869a50f4295c8635814) ) @@ -3319,7 +3326,7 @@ ROM_START( rodlandj ) ROM_LOAD16_BYTE( "JALECO_ROD_LAND_6.ROM6", 0x000001, 0x010000, CRC(663392b2) SHA1(99052639e934d1ca18888c9c7fa061c1d3508fd4) ) ROM_REGION( 0x080000, "gfx1", 0 ) /* Scroll 0 */ - ROM_LOAD( "LH534H31.ROM14", 0x000000, 0x080000, CRC(8201e1bb) SHA1(3304100dcab7b67cee021869a50f4295c8635814) ) + ROM_LOAD( "LH534H31.ROM14", 0x000000, 0x080000, CRC(8201e1bb) SHA1(3304100dcab7b67cee021869a50f4295c8635814) ) ROM_REGION( 0x080000, "gfx2", 0 ) /* Scroll 1 */ ROM_LOAD( "LH534H32.ROM18", 0x000000, 0x080000, CRC(f3b30ca6) SHA1(f2f88c24a009b6695f7548aebd37b25d1fd19892) ) @@ -3327,8 +3334,8 @@ ROM_START( rodlandj ) ROM_REGION( 0x020000, "gfx3", 0 ) /* Scroll 2 */ ROM_LOAD( "LH2311J0.ROM19", 0x000000, 0x020000, CRC(124d7e8f) SHA1(d7885a10085cc3389bd0e26e9d54adb8929218c0) ) - ROM_REGION( 0x080000, "gfx4", 0 ) /* Sprites */ - ROM_LOAD( "LH534H33.ROM23", 0x000000, 0x080000, CRC(936db174) SHA1(4dfb2c31bc4bbf659184fe18e320d19f326b3ec5) ) + ROM_REGION( 0x080000, "gfx4", 0 ) /* Sprites */ + ROM_LOAD( "LH534H33.ROM23", 0x000000, 0x080000, CRC(936db174) SHA1(4dfb2c31bc4bbf659184fe18e320d19f326b3ec5) ) ROM_REGION( 0x040000, "oki1", 0 ) /* Samples */ ROM_LOAD( "LH5321T5.ROM10", 0x000000, 0x040000, CRC(e1d1cd99) SHA1(6604111d37455c1bd59c1469d9ee7841e7dec913) ) @@ -3340,6 +3347,51 @@ ROM_START( rodlandj ) ROM_LOAD( "PS89013A.M14", 0x0000, 0x0200, CRC(8914e72d) SHA1(80a664471f14c8ed8544a5e226fdca425ab3c657) ) ROM_END +/* probably a prototype, original JP key and unscrambled ROMs, incorrect + audio matches PCB */ +ROM_START( rittam ) + ROM_REGION( 0x60000, "maincpu", 0 ) /* Main CPU Code */ + ROM_LOAD16_BYTE( "2.ROM2", 0x000000, 0x020000, CRC(93085af2) SHA1(e49dc1e62c1cec75f192ac4608f69c4361ad739a) ) + ROM_LOAD16_BYTE( "R+T_1.ROM1", 0x000001, 0x020000, CRC(20446c34) SHA1(10753b8c3826468f42c5b1da8cfa60658db60401) ) + + ROM_REGION( 0x20000, "audiocpu", 0 ) /* Sound CPU Code */ + ROM_LOAD16_BYTE( "JALECO_5.ROM5", 0x000000, 0x010000, CRC(ea6600ec) SHA1(392e782a266c5997331df75b15211bced8efb47c) ) + ROM_LOAD16_BYTE( "JALECO_6.ROM6", 0x000001, 0x010000, CRC(51c3c0bc) SHA1(97d6b49d1816cd02ea50ae5f7909a84e9ca8b06f) ) + + ROM_REGION( 0x080000, "gfx1", 0 ) /* Scroll 0 */ + ROM_LOAD( "11.ROM11", 0x000000, 0x020000, CRC(ad2bf897) SHA1(3c449bef7f82aa1d111932361c83ae6661f3bee7) ) + ROM_LOAD( "12.ROM12", 0x020000, 0x020000, CRC(d0224ed6) SHA1(aa1701b248e9be120a001032052c693bf29c386a) ) + ROM_LOAD( "13.ROM13", 0x040000, 0x020000, CRC(b1d5d423) SHA1(df0e34797826f4458a26992a84bdd1e790a942d9) ) + ROM_LOAD( "14.ROM14", 0x060000, 0x020000, CRC(20f8c361) SHA1(9e644041de89b279ed4e2420ac938849c42242f6) ) + + ROM_REGION( 0x080000, "gfx2", 0 ) /* Scroll 1 */ + ROM_LOAD( "15.ROM15", 0x000000, 0x020000, CRC(90bc97ac) SHA1(bdd3ce2214e99ce6c66982cf21ce0641fbcfeb6d) ) + ROM_LOAD( "16.ROM16", 0x020000, 0x020000, CRC(e38750aa) SHA1(b231835c204d33c05a854d8450cfd334102a45be) ) + // ROM17 not populated - not sure why, missing? + ROM_LOAD( "18.ROM18", 0x060000, 0x020000, CRC(57ccf24f) SHA1(8d480093359ebea8e053810ad834b5b1f893bb77) ) + + ROM_REGION( 0x020000, "gfx3", 0 ) /* Scroll 2 */ + ROM_LOAD( "19.ROM19", 0x000000, 0x020000, CRC(6daa1081) SHA1(400cfa302b7d7238b966462c4d9272e8b8dad6f1) ) + + ROM_REGION( 0x080000, "gfx4", 0 ) /* Sprites */ + ROM_LOAD( "R+T_20.ROM20", 0x000000, 0x020000, CRC(23bc2b0b) SHA1(2aa85b0aa56de367ba8f9c79494b242d1d0db11c) ) + ROM_LOAD( "21.ROM21", 0x020000, 0x020000, CRC(9d2b0ec4) SHA1(b589697948ba400da061bfa7ac199b35245f6426) ) + ROM_LOAD( "22.ROM22", 0x040000, 0x020000, CRC(bba2e2cf) SHA1(d718ecf65ad974a981e7f851781c2a83943a4e6e) ) + ROM_LOAD( "23.ROM23", 0x060000, 0x020000, CRC(05536a18) SHA1(6cc1417d91985bf92dbd0db822dde005a7dc001d) ) + + ROM_REGION( 0x040000, "oki1", 0 ) /* Samples */ + ROM_LOAD( "JALECO_9.ROM9", 0x000000, 0x020000, CRC(065364bd) SHA1(bacb268b1c76c286e89eb823d8c3477ec5f2516c) ) + ROM_LOAD( "JALECO_10.ROM10", 0x020000, 0x020000, CRC(395df3b2) SHA1(6f69b573e997ba4bb5aabf745843921f0866d209) ) + + ROM_REGION( 0x040000, "oki2", 0 ) /* Samples */ + ROM_LOAD( "JALECO_7.ROM7", 0x000000, 0x020000, CRC(76fd879f) SHA1(a2169e2efa0c8e804f7d2fac32c655f1379d95e1) ) + ROM_LOAD( "JALECO_8.ROM8", 0x020000, 0x020000, CRC(a771ab00) SHA1(be547b296ee3fcc0ab7339f2c99d1039ceb3b5bb) ) + + ROM_REGION( 0x0200, "proms", 0 ) /* Priority PROM */ + ROM_LOAD( "PS89013A.M14", 0x0000, 0x0200, CRC(8914e72d) SHA1(80a664471f14c8ed8544a5e226fdca425ab3c657) ) +ROM_END + + /* 100% identical to rodlandj, but not encrypted */ ROM_START( rodlandjb ) ROM_REGION( 0x60000, "maincpu", 0 ) /* Main CPU Code */ @@ -3354,23 +3406,23 @@ ROM_START( rodlandjb ) ROM_LOAD16_BYTE( "rl02.bin", 0x000000, 0x010000, CRC(d26eae8f) SHA1(1c6d514e6d006f78fa7b24d18a3eb4c5a4c5cbce) ) ROM_LOAD16_BYTE( "rl01.bin", 0x000001, 0x010000, CRC(04cf24bc) SHA1(e754cce3c83a7088daf90e753fbb0df9ef7fc9be) ) - ROM_REGION( 0x080000, "gfx1", 0 ) /* Scroll 0 */ - ROM_LOAD( "LH534H31.ROM14", 0x000000, 0x080000, CRC(8201e1bb) SHA1(3304100dcab7b67cee021869a50f4295c8635814) ) + ROM_REGION( 0x080000, "gfx1", 0 ) /* Scroll 0 */ + ROM_LOAD( "LH534H31.ROM14", 0x000000, 0x080000, CRC(8201e1bb) SHA1(3304100dcab7b67cee021869a50f4295c8635814) ) - ROM_REGION( 0x080000, "gfx2", 0 ) /* Scroll 1 */ - ROM_LOAD( "LH534H32.ROM18", 0x000000, 0x080000, CRC(f3b30ca6) SHA1(f2f88c24a009b6695f7548aebd37b25d1fd19892) ) + ROM_REGION( 0x080000, "gfx2", 0 ) /* Scroll 1 */ + ROM_LOAD( "LH534H32.ROM18", 0x000000, 0x080000, CRC(f3b30ca6) SHA1(f2f88c24a009b6695f7548aebd37b25d1fd19892) ) - ROM_REGION( 0x020000, "gfx3", 0 ) /* Scroll 2 */ - ROM_LOAD( "LH2311J0.ROM19", 0x000000, 0x020000, CRC(124d7e8f) SHA1(d7885a10085cc3389bd0e26e9d54adb8929218c0) ) + ROM_REGION( 0x020000, "gfx3", 0 ) /* Scroll 2 */ + ROM_LOAD( "LH2311J0.ROM19", 0x000000, 0x020000, CRC(124d7e8f) SHA1(d7885a10085cc3389bd0e26e9d54adb8929218c0) ) - ROM_REGION( 0x080000, "gfx4", 0 ) /* Sprites */ - ROM_LOAD( "LH534H33.ROM23", 0x000000, 0x080000, CRC(936db174) SHA1(4dfb2c31bc4bbf659184fe18e320d19f326b3ec5) ) + ROM_REGION( 0x080000, "gfx4", 0 ) /* Sprites */ + ROM_LOAD( "LH534H33.ROM23", 0x000000, 0x080000, CRC(936db174) SHA1(4dfb2c31bc4bbf659184fe18e320d19f326b3ec5) ) - ROM_REGION( 0x040000, "oki1", 0 ) /* Samples */ - ROM_LOAD( "LH5321T5.ROM10", 0x000000, 0x040000, CRC(e1d1cd99) SHA1(6604111d37455c1bd59c1469d9ee7841e7dec913) ) + ROM_REGION( 0x040000, "oki1", 0 ) /* Samples */ + ROM_LOAD( "LH5321T5.ROM10", 0x000000, 0x040000, CRC(e1d1cd99) SHA1(6604111d37455c1bd59c1469d9ee7841e7dec913) ) - ROM_REGION( 0x040000, "oki2", 0 ) /* Samples */ - ROM_LOAD( "S202000DR.ROM8", 0x000000, 0x040000, CRC(8a49d3a7) SHA1(68cb8cf2753b39c253d0edaa8ef2c54fd1f6ebe5) ) + ROM_REGION( 0x040000, "oki2", 0 ) /* Samples */ + ROM_LOAD( "S202000DR.ROM8", 0x000000, 0x040000, CRC(8a49d3a7) SHA1(68cb8cf2753b39c253d0edaa8ef2c54fd1f6ebe5) ) ROM_REGION( 0x0200, "proms", 0 ) /* Priority PROM */ ROM_LOAD( "PS89013A.M14", 0x0000, 0x0200, CRC(8914e72d) SHA1(80a664471f14c8ed8544a5e226fdca425ab3c657) ) @@ -3991,8 +4043,8 @@ DRIVER_INIT_MEMBER(megasys1_state,phantasm) DRIVER_INIT_MEMBER(megasys1_state,rodland) { - rodland_gfx_unmangle("gfx1"); - rodland_gfx_unmangle("gfx4"); + rodland_gfx_unmangle("gfx1"); + rodland_gfx_unmangle("gfx4"); rodland_rom_decode(machine(), "maincpu"); } @@ -4011,6 +4063,11 @@ DRIVER_INIT_MEMBER(megasys1_state,rodlandjb) rodland_gfx_unmangle("gfx4"); } +DRIVER_INIT_MEMBER(megasys1_state,rittam) +{ + astyanax_rom_decode(machine(), "maincpu"); +} + READ16_MEMBER(megasys1_state::soldamj_spriteram16_r) { return m_spriteram[offset]; @@ -4147,6 +4204,7 @@ GAME( 1989, stdragon, 0, system_A, stdragon, megasys1_state, std GAME( 1989, stdragona,stdragon, system_A, stdragon, megasys1_state, stdragona,ROT0, "Jaleco", "Saint Dragon (set 2)", 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 ) GAME( 1990, rodlandjb,rodland, system_A, rodland, megasys1_state, rodlandjb, ROT0, "bootleg","Rod-Land (Japan bootleg)", 0 ) GAME( 1991, avspirit, 0, system_B, avspirit, megasys1_state, avspirit, ROT0, "Jaleco", "Avenging Spirit", 0 ) GAME( 1990, phantasm, avspirit, system_A, phantasm, megasys1_state, phantasm, ROT0, "Jaleco", "Phantasm (Japan)", 0 ) diff --git a/src/mame/includes/megasys1.h b/src/mame/includes/megasys1.h index 23ab6ca7f56..869ff11f182 100644 --- a/src/mame/includes/megasys1.h +++ b/src/mame/includes/megasys1.h @@ -126,6 +126,7 @@ public: DECLARE_DRIVER_INIT(iganinju); DECLARE_DRIVER_INIT(cybattlr); DECLARE_DRIVER_INIT(rodlandj); + DECLARE_DRIVER_INIT(rittam); DECLARE_DRIVER_INIT(rodlandjb); DECLARE_DRIVER_INIT(avspirit); DECLARE_DRIVER_INIT(monkelf); From 5f367e3be842e3b3ea49701765b4661ab783a4fe Mon Sep 17 00:00:00 2001 From: system11b Date: Wed, 1 Jul 2015 00:02:06 +0100 Subject: [PATCH 2/2] Corrected arcade.lst entry --- src/mame/arcade.lst | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/mame/arcade.lst b/src/mame/arcade.lst index 59e91a66623..6abd96d7e1e 100644 --- a/src/mame/arcade.lst +++ b/src/mame/arcade.lst @@ -8694,7 +8694,7 @@ stdragon // (c) 1989 stdragona // (c) 1989 rodland // (c) 1990 rodlandj // (c) 1990 (Japan) -rittam // (c) 1990 (Prototype) +rittam // Prototype or hack of Rod-Land rodlandjb // bootleg avspirit // (c) 1991 phantasm // (c) 1991 (Japan)