summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author hap <happppp@users.noreply.github.com>2021-02-19 16:39:59 +0100
committer hap <happppp@users.noreply.github.com>2021-02-19 16:40:13 +0100
commit03b9c51a756c5b4085d8751b8df223c24bba3798 (patch)
tree14700b57b762e6a0263c9af5921e3ce7d02a1107
parent3122c29d223519de6af66fa437eb6924a283ee07 (diff)
looping: offset/truncate the COP420 rom instead of loading it the hard way
-rw-r--r--src/mame/drivers/looping.cpp71
1 files changed, 14 insertions, 57 deletions
diff --git a/src/mame/drivers/looping.cpp b/src/mame/drivers/looping.cpp
index 0c0bc5f8091..d48ce7b3ced 100644
--- a/src/mame/drivers/looping.cpp
+++ b/src/mame/drivers/looping.cpp
@@ -1,11 +1,15 @@
// license:BSD-3-Clause
// copyright-holders:Phil Stroffolino
/*
-To Do:
-- redump COP420 internal ROM
+
+Looping / Sky Bumper
+
+TODO:
- get sound working
- map and test any remaining input ports
+---------------------------------------------------------------
+
Looping
(C)1981 Venture Line
@@ -770,21 +774,8 @@ ROM_START( loopingv )
ROM_LOAD( "i-o.13a", 0x0800, 0x1000, CRC(1de29f25) SHA1(535acb132266d6137b0610ee9a9b946459ae44af) )
ROM_LOAD( "i-o.11a", 0x2800, 0x1000, CRC(61c74c79) SHA1(9f34d18a919446dd76857b851cea23fc1526f3c2) ) // speech
- ROM_REGION( 0x1000, "mcu", 0 ) // COP420 microcontroller code
-/*
- ROM_LOAD( "cop.bin", 0x0000, 0x0400, BAD_DUMP CRC(bbfd26d5) SHA1(5f78b32b6e7c003841ef5b635084db2cdfebf0e1) ) // overdumped 4 times, and starting PC is not 0
- ROM_CONTINUE( 0x0000, 0x0400)
- ROM_CONTINUE( 0x0000, 0x0400)
- ROM_CONTINUE( 0x0000, 0x0400)
-*/
- ROM_LOAD( "cop.bin", 0x00c2, 0x033e, CRC(bbfd26d5) SHA1(5f78b32b6e7c003841ef5b635084db2cdfebf0e1) ) // overdumped 4 times and shifted
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
+ ROM_REGION( 0x0400, "mcu", 0 ) // COP420 microcontroller code
+ ROM_LOAD( "cop.bin", 0x0000, 0x0400, CRC(d47fecec) SHA1(7eeedcb40f4cd50e1e259c6b01744a3fc97b60aa) )
ROM_REGION( 0x1000, "gfx1", 0 )
ROM_LOAD( "log2.8a", 0x0000, 0x800, CRC(ef3284ac) SHA1(8719c9df8c972a56c306b3c707aaa53092ffa2d6) )
@@ -807,21 +798,8 @@ ROM_START( loopingva )
ROM_LOAD( "i-o.13a", 0x0800, 0x1000, CRC(1de29f25) SHA1(535acb132266d6137b0610ee9a9b946459ae44af) ) // speech
ROM_LOAD( "i-o.11a", 0x2800, 0x1000, CRC(61c74c79) SHA1(9f34d18a919446dd76857b851cea23fc1526f3c2) )
- ROM_REGION( 0x1000, "mcu", 0 ) // COP420 microcontroller code
-/*
- ROM_LOAD( "cop.bin", 0x0000, 0x0400, BAD_DUMP CRC(bbfd26d5) SHA1(5f78b32b6e7c003841ef5b635084db2cdfebf0e1) ) // overdumped 4 times, and starting PC is not 0
- ROM_CONTINUE( 0x0000, 0x0400)
- ROM_CONTINUE( 0x0000, 0x0400)
- ROM_CONTINUE( 0x0000, 0x0400)
-*/
- ROM_LOAD( "cop.bin", 0x00c2, 0x033e, CRC(bbfd26d5) SHA1(5f78b32b6e7c003841ef5b635084db2cdfebf0e1) ) // overdumped 4 times and shifted
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
+ ROM_REGION( 0x0400, "mcu", 0 ) // COP420 microcontroller code
+ ROM_LOAD( "cop.bin", 0x0000, 0x0400, CRC(d47fecec) SHA1(7eeedcb40f4cd50e1e259c6b01744a3fc97b60aa) )
ROM_REGION( 0x1000, "gfx1", 0 )
ROM_LOAD( "log2.8a", 0x0000, 0x800, CRC(ef3284ac) SHA1(8719c9df8c972a56c306b3c707aaa53092ffa2d6) )
@@ -846,16 +824,8 @@ ROM_START( looping )
ROM_LOAD( "loopa13.bin", 0x0800, 0x1000, CRC(1de29f25) SHA1(535acb132266d6137b0610ee9a9b946459ae44af) )
ROM_LOAD( "loopa11.bin", 0x2800, 0x1000, CRC(61c74c79) SHA1(9f34d18a919446dd76857b851cea23fc1526f3c2) ) // speech
- ROM_REGION( 0x1000, "mcu", 0 ) // COP420 microcontroller code
- // taken from the other sets
- ROM_LOAD( "cop.bin", 0x00c2, 0x033e, CRC(bbfd26d5) SHA1(5f78b32b6e7c003841ef5b635084db2cdfebf0e1) ) // overdumped 4 times and shifted
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
+ ROM_REGION( 0x0400, "mcu", 0 ) // COP420 microcontroller code
+ ROM_LOAD( "cop.bin", 0x0000, 0x0400, CRC(d47fecec) SHA1(7eeedcb40f4cd50e1e259c6b01744a3fc97b60aa) ) // taken from the other sets
ROM_REGION( 0x1000, "gfx1", 0 )
ROM_LOAD( "loopaa8.bin", 0x0000, 0x800, CRC(ef3284ac) SHA1(8719c9df8c972a56c306b3c707aaa53092ffa2d6) )
@@ -877,21 +847,8 @@ ROM_START( skybump )
ROM_LOAD( "snd.13a", 0x0800, 0x1000, CRC(1de29f25) SHA1(535acb132266d6137b0610ee9a9b946459ae44af) )
ROM_LOAD( "snd.11a", 0x2800, 0x1000, CRC(61c74c79) SHA1(9f34d18a919446dd76857b851cea23fc1526f3c2) )
- ROM_REGION( 0x1000, "mcu", 0 ) // COP420 microcontroller code
-/*
- ROM_LOAD( "cop.bin", 0x0000, 0x0400, BAD_DUMP CRC(bbfd26d5) SHA1(5f78b32b6e7c003841ef5b635084db2cdfebf0e1) ) // overdumped 4 times, and starting PC is not 0
- ROM_CONTINUE( 0x0000, 0x0400)
- ROM_CONTINUE( 0x0000, 0x0400)
- ROM_CONTINUE( 0x0000, 0x0400)
-*/
- ROM_LOAD( "cop.bin", 0x00c2, 0x033e, CRC(bbfd26d5) SHA1(5f78b32b6e7c003841ef5b635084db2cdfebf0e1) ) // overdumped 4 times and shifted
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
- ROM_CONTINUE( 0x00c2, 0x033e)
- ROM_CONTINUE( 0x0000, 0x00c2)
+ ROM_REGION( 0x0400, "mcu", 0 ) // COP420 microcontroller code
+ ROM_LOAD( "cop.bin", 0x0000, 0x0400, CRC(d47fecec) SHA1(7eeedcb40f4cd50e1e259c6b01744a3fc97b60aa) )
ROM_REGION( 0x1000, "gfx1", 0 )
ROM_LOAD( "vid.8a", 0x0000, 0x800, CRC(459ccc55) SHA1(747f6789605b48be9e22f779f9e3f6c98ad4e594) )