summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/model3.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/drivers/model3.cpp')
-rw-r--r--src/mame/drivers/model3.cpp452
1 files changed, 289 insertions, 163 deletions
diff --git a/src/mame/drivers/model3.cpp b/src/mame/drivers/model3.cpp
index 59ba40536ec..5a7c816c57e 100644
--- a/src/mame/drivers/model3.cpp
+++ b/src/mame/drivers/model3.cpp
@@ -16,12 +16,11 @@
Game status:
vf3/vf3a/vf3tb - crashes
- bass - works
- getbass - I/O board error (?)
+ getbassur - works
+ basssdx/getbass/getbassdx - I/O board error (?)
- scud/scuda - works (scuda says "for sale and use only in Japan" but is marked Export?)
- scudj - works
- scudplus - works
+ * scud/scuddx/scudau - works
+ * scudplus/scudplusa - works
lostwsga - works
vs215 - works
lemans24 - works
@@ -30,23 +29,27 @@
vs2 - works
harley - works
skichamp - boots after skipping the drive board errors, massive slowdowns
- srally2/sraly2dx - works
- von2/von254g - works
+ srally2 - works
+ srally2p/srally2pa/sraly2dx - needs specific JTAG patch / bypass
+ von2/von2a/von2o/von254g - works
fvipers2 - crashes after player selection
vs298 - works, hangs with an onscreen error code
vs299/vs2v991 - works
oceanhun - same as daytona2
lamachin - works
- dayto2pe - bug in DRC MMU page-fault handling, causes infinite loop at PC:0x2270 (or debug assert)
- daytona2 - As above.
+ * dayto2pe - bug in DRC MMU page-fault handling, causes infinite loop at PC:0x2270 (or debug assert)
+ * daytona2 - As above
spikeout/spikeofe - As above.
- dirtdvls/dirtdvla - works
- swtrilgy -
- swtrilga -
+ ** dirtdvls/dirtdvlau/dirtdvlj/dirtdvlu - works
+ swtrilgy - works
+ swtrilga - doesn't pass "Wait Setup the Feedback Leaver"
+ swtrilgyp - works if you wait past "Wait Setup the Feedback Leaver"
magtruck - works, broken FPU values in matrices during 2nd part of attract mode (cpu core bug?)
eca/ecax - cabinet network error
+ * Twin/DX sets: Set Link ID to Single & Cabinet to Deluxe in Game Assignments
+** Set Communication Mode to No Link in Game Assignments
===================================================================================
Tilemap generator notes:
@@ -124,7 +127,7 @@ Sega ID# for Model 3 PCBs:
This document is for MODEL3 (the first version).
The games that exist on this hardware include....
Boat Race GP
-Get Bass / Sega Bass Fishing
+Sega Bass Fishing / Get Bass
Virtua Fighter 3
Virtua Fighter 3 Team Battle
Le Mans 24
@@ -2093,14 +2096,13 @@ ROM_START( lemans24 ) /* step 1.5, Sega game ID# is 833-13159, ROM board ID# 8
ROM_FILL( 0x000000, 0x800000, 0x0000 )
ROM_END
-ROM_START( scud ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 834-13072 SPG COMM AUS */
- /* There is known to be a ROM board ID# 834-13034 SPG DX AUS with program ROMs EPR-19634 to EPR-19637 */
+ROM_START( scud ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 834-13042 SPG FOR COMMUNICATION */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
- ROM_LOAD64_WORD_SWAP( "epr-19731.17", 0x0600006, 0x80000, CRC(3ee6447e) SHA1(124697791d90c1b352dd6e33bd3b45535aa92bb5) )
- ROM_LOAD64_WORD_SWAP( "epr-19732.18", 0x0600004, 0x80000, CRC(23e864bb) SHA1(0f34d963ee681ca1006f3dec12b593d961e3e442) )
- ROM_LOAD64_WORD_SWAP( "epr-19733.19", 0x0600002, 0x80000, CRC(6565e29a) SHA1(4fb4f3e77fa46a825900a63095307714e71c08f3) )
- ROM_LOAD64_WORD_SWAP( "epr-19734.20", 0x0600000, 0x80000, CRC(be897336) SHA1(690e17f2f9a5fbe63686d197552a298efcc8c8c5) )
+ ROM_LOAD64_WORD_SWAP( "epr-19688.17", 0x0600006, 0x80000, CRC(a4c85103) SHA1(b2e57f86d0a49e3e88fa7d6a77bbd99039c034bb) ) // Region: Export (cannot change in Game Assignment) - No specific region warning
+ ROM_LOAD64_WORD_SWAP( "epr-19689.18", 0x0600004, 0x80000, CRC(cbce6d62) SHA1(b6051af013ee80406cfadb0c8acf24b8825ccaf2) ) // Game Assignments supports:
+ ROM_LOAD64_WORD_SWAP( "epr-19690.19", 0x0600002, 0x80000, CRC(25f007fe) SHA1(d3814637f6278c30ea277e30e66ad06e37d37e15) ) // Cabinet: Twin, Deluxe
+ ROM_LOAD64_WORD_SWAP( "epr-19691.20", 0x0600000, 0x80000, CRC(83523b89) SHA1(c881c71c961948c8ff3fab33e1db23cff4db0ed8) ) // Link ID: Master, Slave, Single
// CROM0
ROM_LOAD64_WORD_SWAP( "mpr-19658.01", 0x0800006, 0x400000, CRC(d523235c) SHA1(0dbfe746b2bdc185768d82c50a329c4c58ad4a29) )
@@ -2124,27 +2126,27 @@ ROM_START( scud ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 834-1
ROM_LOAD64_WORD_SWAP( "mpr-19669.12", 0x2800000, 0x400000, CRC(cdc43c61) SHA1(b096d0eb302a9285a8ee396fdbd7b8c546049fd4) )
ROM_REGION( 0x1000000, "user3", 0 ) /* Video ROMs Part 1 */
- ROM_LOAD_VROM( "mpr-19672.26", 0x0000002, 0x200000, CRC(588c29fd) SHA1(5f58c885b506592106aa15208fc1db9d55ab4481) )
- ROM_LOAD_VROM( "mpr-19673.27", 0x0000000, 0x200000, CRC(156abaa9) SHA1(6ef9c042e9ee34090192c1c99c98d19f18efcfba) )
- ROM_LOAD_VROM( "mpr-19674.28", 0x0000006, 0x200000, CRC(c7b0f98c) SHA1(632dbc4cb225d91c82f6a1874517ed0b03b7a0c5) )
- ROM_LOAD_VROM( "mpr-19675.29", 0x0000004, 0x200000, CRC(ff113396) SHA1(af90bb696a3c1585318150cb83ea2ed85cdb67a1) )
- ROM_LOAD_VROM( "mpr-19676.30", 0x000000a, 0x200000, CRC(fd852ead) SHA1(854204c33aec8fb9c014db06e4106be37ecdaf0d) )
- ROM_LOAD_VROM( "mpr-19677.31", 0x0000008, 0x200000, CRC(c6ac0347) SHA1(c792da72af8bf9d011305c9ab7a6230b9e2c5316) )
- ROM_LOAD_VROM( "mpr-19678.32", 0x000000e, 0x200000, CRC(b8819cfe) SHA1(b99f8d0626bc38c75058e94d2461dbec6029589d) )
- ROM_LOAD_VROM( "mpr-19679.33", 0x000000c, 0x200000, CRC(e126c3e3) SHA1(5440540c2432a9ff5bd8e36467af46c456d16844) )
+ ROM_LOAD_VROM( "mpr-19672.26", 0x02, 0x200000, CRC(588c29fd) SHA1(5f58c885b506592106aa15208fc1db9d55ab4481) )
+ ROM_LOAD_VROM( "mpr-19673.27", 0x00, 0x200000, CRC(156abaa9) SHA1(6ef9c042e9ee34090192c1c99c98d19f18efcfba) )
+ ROM_LOAD_VROM( "mpr-19674.28", 0x06, 0x200000, CRC(c7b0f98c) SHA1(632dbc4cb225d91c82f6a1874517ed0b03b7a0c5) )
+ ROM_LOAD_VROM( "mpr-19675.29", 0x04, 0x200000, CRC(ff113396) SHA1(af90bb696a3c1585318150cb83ea2ed85cdb67a1) )
+ ROM_LOAD_VROM( "mpr-19676.30", 0x0a, 0x200000, CRC(fd852ead) SHA1(854204c33aec8fb9c014db06e4106be37ecdaf0d) )
+ ROM_LOAD_VROM( "mpr-19677.31", 0x08, 0x200000, CRC(c6ac0347) SHA1(c792da72af8bf9d011305c9ab7a6230b9e2c5316) )
+ ROM_LOAD_VROM( "mpr-19678.32", 0x0e, 0x200000, CRC(b8819cfe) SHA1(b99f8d0626bc38c75058e94d2461dbec6029589d) )
+ ROM_LOAD_VROM( "mpr-19679.33", 0x0c, 0x200000, CRC(e126c3e3) SHA1(5440540c2432a9ff5bd8e36467af46c456d16844) )
ROM_REGION( 0x1000000, "user4", 0 ) /* Video ROMs Part 2 */
- ROM_LOAD_VROM( "mpr-19680.34", 0x0000002, 0x200000, CRC(00ea5cef) SHA1(3aed46182c0e99c0b72b26c718e2fa20fa7d2e44) )
- ROM_LOAD_VROM( "mpr-19681.35", 0x0000000, 0x200000, CRC(c949325f) SHA1(146de7abf764adc1840b84294cbd473f191cbcb8) )
- ROM_LOAD_VROM( "mpr-19682.36", 0x0000006, 0x200000, CRC(ce5ca065) SHA1(2f518186b29e7cf5fa1c6b036427b8015cfb681e) )
- ROM_LOAD_VROM( "mpr-19683.37", 0x0000004, 0x200000, CRC(e5856419) SHA1(3f8f5b8b36d417090955d34553dcf6d8d9f34558) )
- ROM_LOAD_VROM( "mpr-19684.38", 0x000000a, 0x200000, CRC(56f6ec97) SHA1(dfd251dba77b39342457036fcbe4683d24029600) )
- ROM_LOAD_VROM( "mpr-19685.39", 0x0000008, 0x200000, CRC(42b49304) SHA1(4e185d0f97de44a25b5f982a46f0c3d1dab406c2) )
- ROM_LOAD_VROM( "mpr-19686.40", 0x000000e, 0x200000, CRC(84eed592) SHA1(cc03094770945096d81bc981bff77b540452b045) )
- ROM_LOAD_VROM( "mpr-19687.41", 0x000000c, 0x200000, CRC(776ce694) SHA1(d1e56ebd0011aa3a54a5829c6bd0f5343b283fa0) )
+ ROM_LOAD_VROM( "mpr-19680.34", 0x02, 0x200000, CRC(00ea5cef) SHA1(3aed46182c0e99c0b72b26c718e2fa20fa7d2e44) )
+ ROM_LOAD_VROM( "mpr-19681.35", 0x00, 0x200000, CRC(c949325f) SHA1(146de7abf764adc1840b84294cbd473f191cbcb8) )
+ ROM_LOAD_VROM( "mpr-19682.36", 0x06, 0x200000, CRC(ce5ca065) SHA1(2f518186b29e7cf5fa1c6b036427b8015cfb681e) )
+ ROM_LOAD_VROM( "mpr-19683.37", 0x04, 0x200000, CRC(e5856419) SHA1(3f8f5b8b36d417090955d34553dcf6d8d9f34558) )
+ ROM_LOAD_VROM( "mpr-19684.38", 0x0a, 0x200000, CRC(56f6ec97) SHA1(dfd251dba77b39342457036fcbe4683d24029600) )
+ ROM_LOAD_VROM( "mpr-19685.39", 0x08, 0x200000, CRC(42b49304) SHA1(4e185d0f97de44a25b5f982a46f0c3d1dab406c2) )
+ ROM_LOAD_VROM( "mpr-19686.40", 0x0e, 0x200000, CRC(84eed592) SHA1(cc03094770945096d81bc981bff77b540452b045) )
+ ROM_LOAD_VROM( "mpr-19687.41", 0x0c, 0x200000, CRC(776ce694) SHA1(d1e56ebd0011aa3a54a5829c6bd0f5343b283fa0) )
ROM_REGION( 0x080000, "audiocpu", 0 ) /* 68000 code */
- ROM_LOAD16_WORD_SWAP( "epr-19692.21", 0x000000, 0x080000, CRC(a94f5521) SHA1(22b6a17d44fec8bf796e1790bcabc41f34c89baf) )
+ ROM_LOAD16_WORD_SWAP( "epr-19692.21", 0x000000, 0x080000, CRC(a94f5521) SHA1(22b6a17d44fec8bf796e1790bcabc41f34c89baf) )
ROM_REGION16_BE( 0x800000, "samples", 0 ) /* SCSP samples */
ROM_LOAD16_WORD_SWAP( "mpr-19670.22", 0x000000, 0x400000, CRC(bd31cc06) SHA1(d1c85d0cf79b92de5bcbe20dfb8b626ad72de019) )
@@ -2163,12 +2165,12 @@ ROM_START( scud ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 834-1
ROM_LOAD( "epr-19338a.bin", 0x000000, 0x010000, CRC(c9fac464) SHA1(47b9ab7921a685c01629afb592d597faa11d2bd6) )
ROM_END
-ROM_START( scudj ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 12934 SPG DX, Digital Audio board ID# 837-12941 */
+ROM_START( scuddx ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 12934 SPG DX, Digital Audio board ID# 837-12941 */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
- ROM_LOAD64_WORD_SWAP( "epr-19610a.17", 0x0600006, 0x80000, CRC(53f5cd94) SHA1(e27609165087ef7000b61ce628883561ffe64b22) )
- ROM_LOAD64_WORD_SWAP( "epr-19609a.18", 0x0600004, 0x80000, CRC(ec418b68) SHA1(8455db7e174ea00db30b7e61681ac7b7fcd9ba1c) )
- ROM_LOAD64_WORD_SWAP( "epr-19608a.19", 0x0600002, 0x80000, CRC(1426160e) SHA1(75cb61a94c7400df71bf38ba5fc9c2c972af7eaf) )
+ ROM_LOAD64_WORD_SWAP( "epr-19610a.17", 0x0600006, 0x80000, CRC(53f5cd94) SHA1(e27609165087ef7000b61ce628883561ffe64b22) ) // Single DX cabinet only
+ ROM_LOAD64_WORD_SWAP( "epr-19609a.18", 0x0600004, 0x80000, CRC(ec418b68) SHA1(8455db7e174ea00db30b7e61681ac7b7fcd9ba1c) ) // Game Assignments supports:
+ ROM_LOAD64_WORD_SWAP( "epr-19608a.19", 0x0600002, 0x80000, CRC(1426160e) SHA1(75cb61a94c7400df71bf38ba5fc9c2c972af7eaf) ) // Regions: Japan, USA, Export
ROM_LOAD64_WORD_SWAP( "epr-19607a.20", 0x0600000, 0x80000, CRC(24301a12) SHA1(5ef7bf9e72f3110b88e42c8fa42eb82008221e0e) )
// CROM0
@@ -2232,13 +2234,15 @@ ROM_START( scudj ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 12934
ROM_LOAD( "epr-19338a.bin", 0x000000, 0x010000, CRC(c9fac464) SHA1(47b9ab7921a685c01629afb592d597faa11d2bd6) )
ROM_END
-ROM_START( scuda ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 834-13042 SPG FOR COMMUNICATION */
+// There is known to be an Australian ROM board ID# 834-13034 SPG DX AUS with program ROMs EPR-19634 to EPR-19637
+
+ROM_START( scudau ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 834-13072 SPG COMM AUS */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
- ROM_LOAD64_WORD_SWAP( "epr-19688.17", 0x0600006, 0x80000, CRC(a4c85103) SHA1(b2e57f86d0a49e3e88fa7d6a77bbd99039c034bb) )
- ROM_LOAD64_WORD_SWAP( "epr-19689.18", 0x0600004, 0x80000, CRC(cbce6d62) SHA1(b6051af013ee80406cfadb0c8acf24b8825ccaf2) )
- ROM_LOAD64_WORD_SWAP( "epr-19690.19", 0x0600002, 0x80000, CRC(25f007fe) SHA1(d3814637f6278c30ea277e30e66ad06e37d37e15) )
- ROM_LOAD64_WORD_SWAP( "epr-19691.20", 0x0600000, 0x80000, CRC(83523b89) SHA1(c881c71c961948c8ff3fab33e1db23cff4db0ed8) )
+ ROM_LOAD64_WORD_SWAP( "epr-19731.17", 0x0600006, 0x80000, CRC(3ee6447e) SHA1(124697791d90c1b352dd6e33bd3b45535aa92bb5) ) // Region: Australia (cannot change in Game Assignment) - Shows "Australian Version" on Title Screen
+ ROM_LOAD64_WORD_SWAP( "epr-19732.18", 0x0600004, 0x80000, CRC(23e864bb) SHA1(0f34d963ee681ca1006f3dec12b593d961e3e442) ) // Game Assignments supports:
+ ROM_LOAD64_WORD_SWAP( "epr-19733.19", 0x0600002, 0x80000, CRC(6565e29a) SHA1(4fb4f3e77fa46a825900a63095307714e71c08f3) ) // Cabinet: Twin, Deluxe
+ ROM_LOAD64_WORD_SWAP( "epr-19734.20", 0x0600000, 0x80000, CRC(be897336) SHA1(690e17f2f9a5fbe63686d197552a298efcc8c8c5) ) // Link ID: Master, Slave, Single
// CROM0
ROM_LOAD64_WORD_SWAP( "mpr-19658.01", 0x0800006, 0x400000, CRC(d523235c) SHA1(0dbfe746b2bdc185768d82c50a329c4c58ad4a29) )
@@ -2262,27 +2266,27 @@ ROM_START( scuda ) /* step 1.5, Sega game ID# is 833-13041, ROM board ID# 834-1
ROM_LOAD64_WORD_SWAP( "mpr-19669.12", 0x2800000, 0x400000, CRC(cdc43c61) SHA1(b096d0eb302a9285a8ee396fdbd7b8c546049fd4) )
ROM_REGION( 0x1000000, "user3", 0 ) /* Video ROMs Part 1 */
- ROM_LOAD_VROM( "mpr-19672.26", 0x02, 0x200000, CRC(588c29fd) SHA1(5f58c885b506592106aa15208fc1db9d55ab4481) )
- ROM_LOAD_VROM( "mpr-19673.27", 0x00, 0x200000, CRC(156abaa9) SHA1(6ef9c042e9ee34090192c1c99c98d19f18efcfba) )
- ROM_LOAD_VROM( "mpr-19674.28", 0x06, 0x200000, CRC(c7b0f98c) SHA1(632dbc4cb225d91c82f6a1874517ed0b03b7a0c5) )
- ROM_LOAD_VROM( "mpr-19675.29", 0x04, 0x200000, CRC(ff113396) SHA1(af90bb696a3c1585318150cb83ea2ed85cdb67a1) )
- ROM_LOAD_VROM( "mpr-19676.30", 0x0a, 0x200000, CRC(fd852ead) SHA1(854204c33aec8fb9c014db06e4106be37ecdaf0d) )
- ROM_LOAD_VROM( "mpr-19677.31", 0x08, 0x200000, CRC(c6ac0347) SHA1(c792da72af8bf9d011305c9ab7a6230b9e2c5316) )
- ROM_LOAD_VROM( "mpr-19678.32", 0x0e, 0x200000, CRC(b8819cfe) SHA1(b99f8d0626bc38c75058e94d2461dbec6029589d) )
- ROM_LOAD_VROM( "mpr-19679.33", 0x0c, 0x200000, CRC(e126c3e3) SHA1(5440540c2432a9ff5bd8e36467af46c456d16844) )
+ ROM_LOAD_VROM( "mpr-19672.26", 0x0000002, 0x200000, CRC(588c29fd) SHA1(5f58c885b506592106aa15208fc1db9d55ab4481) )
+ ROM_LOAD_VROM( "mpr-19673.27", 0x0000000, 0x200000, CRC(156abaa9) SHA1(6ef9c042e9ee34090192c1c99c98d19f18efcfba) )
+ ROM_LOAD_VROM( "mpr-19674.28", 0x0000006, 0x200000, CRC(c7b0f98c) SHA1(632dbc4cb225d91c82f6a1874517ed0b03b7a0c5) )
+ ROM_LOAD_VROM( "mpr-19675.29", 0x0000004, 0x200000, CRC(ff113396) SHA1(af90bb696a3c1585318150cb83ea2ed85cdb67a1) )
+ ROM_LOAD_VROM( "mpr-19676.30", 0x000000a, 0x200000, CRC(fd852ead) SHA1(854204c33aec8fb9c014db06e4106be37ecdaf0d) )
+ ROM_LOAD_VROM( "mpr-19677.31", 0x0000008, 0x200000, CRC(c6ac0347) SHA1(c792da72af8bf9d011305c9ab7a6230b9e2c5316) )
+ ROM_LOAD_VROM( "mpr-19678.32", 0x000000e, 0x200000, CRC(b8819cfe) SHA1(b99f8d0626bc38c75058e94d2461dbec6029589d) )
+ ROM_LOAD_VROM( "mpr-19679.33", 0x000000c, 0x200000, CRC(e126c3e3) SHA1(5440540c2432a9ff5bd8e36467af46c456d16844) )
ROM_REGION( 0x1000000, "user4", 0 ) /* Video ROMs Part 2 */
- ROM_LOAD_VROM( "mpr-19680.34", 0x02, 0x200000, CRC(00ea5cef) SHA1(3aed46182c0e99c0b72b26c718e2fa20fa7d2e44) )
- ROM_LOAD_VROM( "mpr-19681.35", 0x00, 0x200000, CRC(c949325f) SHA1(146de7abf764adc1840b84294cbd473f191cbcb8) )
- ROM_LOAD_VROM( "mpr-19682.36", 0x06, 0x200000, CRC(ce5ca065) SHA1(2f518186b29e7cf5fa1c6b036427b8015cfb681e) )
- ROM_LOAD_VROM( "mpr-19683.37", 0x04, 0x200000, CRC(e5856419) SHA1(3f8f5b8b36d417090955d34553dcf6d8d9f34558) )
- ROM_LOAD_VROM( "mpr-19684.38", 0x0a, 0x200000, CRC(56f6ec97) SHA1(dfd251dba77b39342457036fcbe4683d24029600) )
- ROM_LOAD_VROM( "mpr-19685.39", 0x08, 0x200000, CRC(42b49304) SHA1(4e185d0f97de44a25b5f982a46f0c3d1dab406c2) )
- ROM_LOAD_VROM( "mpr-19686.40", 0x0e, 0x200000, CRC(84eed592) SHA1(cc03094770945096d81bc981bff77b540452b045) )
- ROM_LOAD_VROM( "mpr-19687.41", 0x0c, 0x200000, CRC(776ce694) SHA1(d1e56ebd0011aa3a54a5829c6bd0f5343b283fa0) )
+ ROM_LOAD_VROM( "mpr-19680.34", 0x0000002, 0x200000, CRC(00ea5cef) SHA1(3aed46182c0e99c0b72b26c718e2fa20fa7d2e44) )
+ ROM_LOAD_VROM( "mpr-19681.35", 0x0000000, 0x200000, CRC(c949325f) SHA1(146de7abf764adc1840b84294cbd473f191cbcb8) )
+ ROM_LOAD_VROM( "mpr-19682.36", 0x0000006, 0x200000, CRC(ce5ca065) SHA1(2f518186b29e7cf5fa1c6b036427b8015cfb681e) )
+ ROM_LOAD_VROM( "mpr-19683.37", 0x0000004, 0x200000, CRC(e5856419) SHA1(3f8f5b8b36d417090955d34553dcf6d8d9f34558) )
+ ROM_LOAD_VROM( "mpr-19684.38", 0x000000a, 0x200000, CRC(56f6ec97) SHA1(dfd251dba77b39342457036fcbe4683d24029600) )
+ ROM_LOAD_VROM( "mpr-19685.39", 0x0000008, 0x200000, CRC(42b49304) SHA1(4e185d0f97de44a25b5f982a46f0c3d1dab406c2) )
+ ROM_LOAD_VROM( "mpr-19686.40", 0x000000e, 0x200000, CRC(84eed592) SHA1(cc03094770945096d81bc981bff77b540452b045) )
+ ROM_LOAD_VROM( "mpr-19687.41", 0x000000c, 0x200000, CRC(776ce694) SHA1(d1e56ebd0011aa3a54a5829c6bd0f5343b283fa0) )
ROM_REGION( 0x080000, "audiocpu", 0 ) /* 68000 code */
- ROM_LOAD16_WORD_SWAP( "epr-19692.21", 0x000000, 0x080000, CRC(a94f5521) SHA1(22b6a17d44fec8bf796e1790bcabc41f34c89baf) )
+ ROM_LOAD16_WORD_SWAP( "epr-19692.21", 0x000000, 0x080000, CRC(a94f5521) SHA1(22b6a17d44fec8bf796e1790bcabc41f34c89baf) )
ROM_REGION16_BE( 0x800000, "samples", 0 ) /* SCSP samples */
ROM_LOAD16_WORD_SWAP( "mpr-19670.22", 0x000000, 0x400000, CRC(bd31cc06) SHA1(d1c85d0cf79b92de5bcbe20dfb8b626ad72de019) )
@@ -2304,10 +2308,10 @@ ROM_END
ROM_START( scudplus ) /* step 1.5, Sega game ID# is 833-13260 SCUD PLUS, ROM board ID# 834-13261 SCUD PLUS */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
- ROM_LOAD64_WORD_SWAP( "epr-20092a.17", 0x0600006, 0x80000, CRC(a94ec57e) SHA1(bda1d9cb38e10a25f7cdde38f30ae13541fdbc5e) )
- ROM_LOAD64_WORD_SWAP( "epr-20093a.18", 0x0600004, 0x80000, CRC(4ed2e35d) SHA1(ac149b369db9fc80e63e1ed943d42ccd056dab1b) )
- ROM_LOAD64_WORD_SWAP( "epr-20094a.19", 0x0600002, 0x80000, CRC(dbf17a43) SHA1(fd719515c8ed78dea80fef20f3af9b72461f81d7) )
- ROM_LOAD64_WORD_SWAP( "epr-20095a.20", 0x0600000, 0x80000, CRC(58c7e393) SHA1(7e25101f72daa271f680a39042341d06249fd104) )
+ ROM_LOAD64_WORD_SWAP( "epr-20092a.17", 0x0600006, 0x80000, CRC(a94ec57e) SHA1(bda1d9cb38e10a25f7cdde38f30ae13541fdbc5e) ) // Game Assignments supports:
+ ROM_LOAD64_WORD_SWAP( "epr-20093a.18", 0x0600004, 0x80000, CRC(4ed2e35d) SHA1(ac149b369db9fc80e63e1ed943d42ccd056dab1b) ) // Regions: Japan, USA, Export
+ ROM_LOAD64_WORD_SWAP( "epr-20094a.19", 0x0600002, 0x80000, CRC(dbf17a43) SHA1(fd719515c8ed78dea80fef20f3af9b72461f81d7) ) // Cabinet: Twin, Deluxe
+ ROM_LOAD64_WORD_SWAP( "epr-20095a.20", 0x0600000, 0x80000, CRC(58c7e393) SHA1(7e25101f72daa271f680a39042341d06249fd104) ) // Link ID: Master, Slave, Single
// CROM0
ROM_LOAD64_WORD_SWAP( "mpr-19658.01", 0x0800006, 0x400000, CRC(d523235c) SHA1(0dbfe746b2bdc185768d82c50a329c4c58ad4a29) )
@@ -2379,10 +2383,10 @@ ROM_END
ROM_START( scudplusa ) /* step 1.5, Sega game ID# is 833-13260 SCUD PLUS, ROM board ID# 834-13261 SCUD PLUS */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
- ROM_LOAD64_WORD_SWAP( "epr-20092.17", 0x0600006, 0x80000, CRC(6f9161c1) SHA1(b1c66eeb1bb67664aafa78ad62515204f231f09b) )
- ROM_LOAD64_WORD_SWAP( "epr-20093.18", 0x0600004, 0x80000, CRC(9a85c611) SHA1(fb21c29584b205ec14f82318110ecf5821a95c23) )
- ROM_LOAD64_WORD_SWAP( "epr-20094.19", 0x0600002, 0x80000, CRC(299b6257) SHA1(70438507a76ed96190ac11dac3d4c531610ff1fe) )
- ROM_LOAD64_WORD_SWAP( "epr-20095.20", 0x0600000, 0x80000, CRC(44467bc1) SHA1(a69b1fc4ab3c4012ffc9f3f055b6221a8fc5eac8) )
+ ROM_LOAD64_WORD_SWAP( "epr-20092.17", 0x0600006, 0x80000, CRC(6f9161c1) SHA1(b1c66eeb1bb67664aafa78ad62515204f231f09b) ) // Game Assignments supports:
+ ROM_LOAD64_WORD_SWAP( "epr-20093.18", 0x0600004, 0x80000, CRC(9a85c611) SHA1(fb21c29584b205ec14f82318110ecf5821a95c23) ) // Regions: Japan, USA, Export
+ ROM_LOAD64_WORD_SWAP( "epr-20094.19", 0x0600002, 0x80000, CRC(299b6257) SHA1(70438507a76ed96190ac11dac3d4c531610ff1fe) ) // Cabinet: Twin, Deluxe
+ ROM_LOAD64_WORD_SWAP( "epr-20095.20", 0x0600000, 0x80000, CRC(44467bc1) SHA1(a69b1fc4ab3c4012ffc9f3f055b6221a8fc5eac8) ) // Link ID: Master, Slave, Single
// CROM0
ROM_LOAD64_WORD_SWAP( "mpr-19658.01", 0x0800006, 0x400000, CRC(d523235c) SHA1(0dbfe746b2bdc185768d82c50a329c4c58ad4a29) )
@@ -2727,13 +2731,13 @@ ROM_START( vf3tb ) /* step 1.0?, Sega game ID# is 833-13279 VIRTUA FIGHTER 3TB
ROM_FILL( 0x000000, 0x800000, 0x0000 )
ROM_END
-ROM_START( bass ) /* step 1.0, Sega game ID# is 833-13317, ROM board ID# 834-13318 BSS */
+ROM_START( bassdx ) /* step 1.0, Sega game ID# is 833-13452 BSS DX, ROM board ID# 834-13453 BSS DX */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
- ROM_LOAD64_WORD_SWAP( "epr-20643.17", 0x600006, 0x080000, CRC(daf02716) SHA1(b968f8ca602c78b9ca49969ff01f9440f175049a) )
- ROM_LOAD64_WORD_SWAP( "epr-20644.18", 0x600004, 0x080000, CRC(c28db2b6) SHA1(0b12fe9e5189714b1aca79c4bba4be57a9e0d5fd) )
- ROM_LOAD64_WORD_SWAP( "epr-20645.19", 0x600002, 0x080000, CRC(8eefa2b0) SHA1(130ce2a58daa2eba6e56e1f49488017ab871bb7d) )
- ROM_LOAD64_WORD_SWAP( "epr-20646.20", 0x600000, 0x080000, CRC(d740ae06) SHA1(f6c00b9f3f8cf67c8bd8fff73c64bc0c14d364c4) )
+ ROM_LOAD64_WORD_SWAP( "epr-20783.17", 0x600006, 0x080000, CRC(3ad976f9) SHA1(1d615cb35e8807526e50b25a0228f44d8ad3cdb5) )
+ ROM_LOAD64_WORD_SWAP( "epr-20784.18", 0x600004, 0x080000, CRC(be8047d9) SHA1(d7a88bc3f24491a119a85228075807831008cb48) )
+ ROM_LOAD64_WORD_SWAP( "epr-20785.19", 0x600002, 0x080000, CRC(f390076d) SHA1(83e84fc66ef7e19aaca6fec081cf8bd6ed1a7342) )
+ ROM_LOAD64_WORD_SWAP( "epr-20786.20", 0x600000, 0x080000, CRC(b7c7cffb) SHA1(3b82ec7fb28b2343decb0b311998b4190a54d680) )
// CROM0
ROM_LOAD64_WORD_SWAP( "mpr-20256.1", 0x800006, 0x400000, CRC(115302ac) SHA1(45f60aa9f91c9a5821a14647e5ac4d53caf71d5f) )
@@ -2790,7 +2794,7 @@ ROM_START( bass ) /* step 1.0, Sega game ID# is 833-13317, ROM board ID# 834-1
ROM_FILL( 0x000000, 0x800000, 0x0000 )
ROM_END
-ROM_START( bassdx ) /* step 1.0, Sega game ID# is 833-13476 BSS DX JPN, ROM board ID# 834-13477 BSS DX JPN */
+ROM_START( getbassdx ) /* step 1.0, Sega game ID# is 833-13476 BSS DX JPN, ROM board ID# 834-13477 BSS DX JPN */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
ROM_LOAD64_WORD_SWAP( "epr-20834.17", 0x600006, 0x080000, CRC(17f466a6) SHA1(2abdc432891cc79733fc29903df87af9eba11b32) )
@@ -2853,6 +2857,69 @@ ROM_START( bassdx ) /* step 1.0, Sega game ID# is 833-13476 BSS DX JPN, ROM boar
ROM_FILL( 0x000000, 0x800000, 0x0000 )
ROM_END
+ROM_START( getbassur ) /* step 1.0, Sega game ID# is 833-13317, ROM board ID# 834-13318 BSS */
+ ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
+ // CROM
+ ROM_LOAD64_WORD_SWAP( "epr-20643.17", 0x600006, 0x080000, CRC(daf02716) SHA1(b968f8ca602c78b9ca49969ff01f9440f175049a) )
+ ROM_LOAD64_WORD_SWAP( "epr-20644.18", 0x600004, 0x080000, CRC(c28db2b6) SHA1(0b12fe9e5189714b1aca79c4bba4be57a9e0d5fd) )
+ ROM_LOAD64_WORD_SWAP( "epr-20645.19", 0x600002, 0x080000, CRC(8eefa2b0) SHA1(130ce2a58daa2eba6e56e1f49488017ab871bb7d) )
+ ROM_LOAD64_WORD_SWAP( "epr-20646.20", 0x600000, 0x080000, CRC(d740ae06) SHA1(f6c00b9f3f8cf67c8bd8fff73c64bc0c14d364c4) )
+
+ // CROM0
+ ROM_LOAD64_WORD_SWAP( "mpr-20256.1", 0x800006, 0x400000, CRC(115302ac) SHA1(45f60aa9f91c9a5821a14647e5ac4d53caf71d5f) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20257.2", 0x800004, 0x400000, CRC(025bc06d) SHA1(e774021d8d884871e840100ba6f4c16299233a51) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20258.3", 0x800002, 0x400000, CRC(7b78b071) SHA1(f2b29a1238c9eae0a7a68c91a9728ac31f05ef7d) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20259.4", 0x800000, 0x400000, CRC(40052562) SHA1(2361fd299b76b1c0d112f1fed85bde16e1564382) )
+
+ // CROM1
+ ROM_LOAD64_WORD_SWAP( "mpr-20260.5", 0x1800006, 0x400000, CRC(c56b4c10) SHA1(a0a81d4f05df5b8584c2dca53993c01a35d38812) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20261.6", 0x1800004, 0x400000, CRC(b1e9d44a) SHA1(dfe8c5ed848afd48040775bb5a440c590188272c) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20262.7", 0x1800002, 0x400000, CRC(52b0674d) SHA1(c9f817b46dc7fcd04dfc2bbc4b1d82b1f41fe258) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20263.8", 0x1800000, 0x400000, CRC(1cf4cba9) SHA1(2884bb00990ab4bdad0d524937123c2936523cbb) )
+
+ // CROM2
+ ROM_LOAD64_WORD_SWAP( "mpr-20264.9", 0x2800006, 0x400000, CRC(8d995196) SHA1(ff410d80353956ee8e770d7b9e9dabac87ee76cc) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20265.10", 0x2800004, 0x400000, CRC(28f76e3e) SHA1(5446e0a0df60d77112bd71c726291fdbba7df284) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20266.11", 0x2800002, 0x400000, CRC(abd2db85) SHA1(ebe752071562c532e6ad494f285ff4d0b5050611) )
+ ROM_LOAD64_WORD_SWAP( "mpr-20267.12", 0x2800000, 0x400000, CRC(48989191) SHA1(ddbf787ec5dae298ab29847f117eae2ce1ff935e) )
+
+ // mirror CROM0 to CROM
+ ROM_COPY("user1", 0x800000, 0x000000, 0x600000)
+
+ ROM_REGION( 0x1000000, "user3", 0 ) /* Video ROMs Part 1 */
+ ROM_LOAD_VROM( "mpr-20270.26", 0x000002, 0x200000, CRC(df68a7a7) SHA1(5d610962dd87c010a094fe2ce8d13408595b4ae4) )
+ ROM_LOAD_VROM( "mpr-20271.27", 0x000000, 0x200000, CRC(4b01c3a4) SHA1(8d47109e7f410c9d34d57b22adfe1c3092e70074) )
+ ROM_LOAD_VROM( "mpr-20272.28", 0x000006, 0x200000, CRC(a658da23) SHA1(b96270c64cf75625960fa7c03411af595880353f) )
+ ROM_LOAD_VROM( "mpr-20273.29", 0x000004, 0x200000, CRC(577e9ffa) SHA1(b004fa10a073e6f4715b417da817051752db5636) )
+ ROM_LOAD_VROM( "mpr-20274.30", 0x00000a, 0x200000, CRC(7c7056ae) SHA1(79f6e0ac65f9e80875946b2e73cf9437ecf73407) )
+ ROM_LOAD_VROM( "mpr-20275.31", 0x000008, 0x200000, CRC(e739f77a) SHA1(6547c4bc0925af6e07beab54377a174a9c17e9fa) )
+ ROM_LOAD_VROM( "mpr-20276.32", 0x00000e, 0x200000, CRC(cbf966c0) SHA1(7c63506d01b52c8ab86fe0dc9ac774e2d540f7c5) )
+ ROM_LOAD_VROM( "mpr-20277.33", 0x00000c, 0x200000, CRC(9c75200b) SHA1(b39f571eeab11a619ab964d78a2ba0aa7b1dd24f) )
+
+ ROM_REGION( 0x1000000, "user4", 0 ) /* Video ROMs Part 2 */
+ ROM_LOAD_VROM( "mpr-20278.34", 0x000002, 0x200000, CRC(db3991ba) SHA1(7854a047741042f087a146882e27f2624f1f9e98) )
+ ROM_LOAD_VROM( "mpr-20279.35", 0x000000, 0x200000, CRC(995a11b8) SHA1(eddd32fc3688d12458c5ffb3b3e70459947889a2) )
+ ROM_LOAD_VROM( "mpr-20280.36", 0x000006, 0x200000, CRC(c2c8f9f5) SHA1(dd30c1fbece0a3dc8dad2d9d87e58a9f3798f4a2) )
+ ROM_LOAD_VROM( "mpr-20281.37", 0x000004, 0x200000, CRC(da84b967) SHA1(dfc13942adc9cf438e70470cb17f4d1f846c4c1a) )
+ ROM_LOAD_VROM( "mpr-20282.38", 0x00000a, 0x200000, CRC(1869ff49) SHA1(1368123edfd9c93d1ee591bf40ea110deeac88cf) )
+ ROM_LOAD_VROM( "mpr-20283.39", 0x000008, 0x200000, CRC(7d8fb469) SHA1(ad95fec786e9181d91a6ea18808bbf2772e9be6a) )
+ ROM_LOAD_VROM( "mpr-20284.40", 0x00000e, 0x200000, CRC(5c7f3a6f) SHA1(d242bc7ad213a79203cd6a060229c356ec0867e7) )
+ ROM_LOAD_VROM( "mpr-20285.41", 0x00000c, 0x200000, CRC(4aadc573) SHA1(65aef06c8c48196a0c1f630529ae2248323c5747) )
+
+ ROM_REGION( 0x080000, "audiocpu", 0 ) /* 68000 code */
+ ROM_LOAD16_WORD_SWAP( "epr-20313.21", 0x000000, 0x080000, CRC(863a7857) SHA1(72384dc6d7613806ab6bb84d935a3b0497e9e9d2) )
+
+ ROM_REGION16_BE( 0x800000, "samples", 0 ) /* SCSP samples */
+ ROM_LOAD16_WORD_SWAP( "mpr-20268.22", 0x000000, 0x400000, CRC(3631e93e) SHA1(3991d6cf03e4f39733d467c483857eac874505d1) )
+ ROM_LOAD16_WORD_SWAP( "mpr-20269.24", 0x400000, 0x400000, CRC(105a3181) SHA1(022cbce1d01366461a584ff6225ded40bcb9000b) )
+
+ ROM_REGION( 0x20000, "cpu2", 0 ) /* Z80 code */
+ ROM_FILL( 0x000000, 0x20000, 0x0000 )
+
+ ROM_REGION( 0x800000, "dsb", 0 ) /* DSB samples */
+ ROM_FILL( 0x000000, 0x800000, 0x0000 )
+ROM_END
+
/*
In Mame getbass is marked as GET BASS STD, while my pcb came from a DLX cab.
ROM board 833-13317
@@ -4331,7 +4398,8 @@ ROM_START( swtrilgyp ) // Step 2.1, Sega game ID# is 833-13586-T, ROM board ID#
ROM_LOAD( "mpr-21378.24", 0xc00000, 0x400000, CRC(1fcf715e) SHA1(9706f36e7a61d885d34a6974311a2410fe3d6760) )
ROM_END
-ROM_START( dirtdvls ) /* Step 2.1 - Export version, Sega game ID# is 833-13427, ROM board ID# 834-13528 DRT, Security board ID# 837-13499-COM */
+// For all Rev A sets of Dirt Devils, identical code/data except for Region info, MPH default for the USA set & checksum values
+ROM_START( dirtdvls ) /* Step 2.1 - Export version, Sega game ID# is 833-13427-03, ROM board ID# 834-13528-03 ROM BD DRT EXP, Security board ID# 837-13499-COM */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
ROM_LOAD64_WORD_SWAP( "epr-21062a.17", 0x000006, 0x200000, CRC(64b55254) SHA1(0e5de3786edad77dde08652ac837dc9125e7851c) )
@@ -4389,19 +4457,65 @@ ROM_START( dirtdvls ) /* Step 2.1 - Export version, Sega game ID# is 833-13427
ROM_PARAMETER( ":315_5881:key", "29290f17" )
ROM_END
- /*
- Dirt Devils (USA)
+ROM_START( dirtdvlsu ) /* Step 2.1 - USA version, Sega game ID# is 833-13528-01 DRT USA, ROM board ID# 834-13527-01 GAME BD DRT USA, Security board ID# 837-13499-COM, 837-11861-91 MODEL3 COMMUNICATION BOARD */
+ ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
+ // CROM
+ ROM_LOAD64_WORD_SWAP( "epr-21054a.17", 0x000006, 0x200000, CRC(e9717fc6) SHA1(fb9837e64583ca949620c0a9084d14b9ecfe946c) )
+ ROM_LOAD64_WORD_SWAP( "epr-21055a.18", 0x000004, 0x200000, CRC(539b3d7f) SHA1(fa8591564880f627e543f8966a799684aecc77d3) )
+ ROM_LOAD64_WORD_SWAP( "epr-21056a.19", 0x000002, 0x200000, CRC(b7c18b60) SHA1(8b2061ad952b84ae0ab1bdca962e9f41435d50dc) )
+ ROM_LOAD64_WORD_SWAP( "epr-21057a.20", 0x000000, 0x200000, CRC(36065989) SHA1(12c8c7a034f70ab42d681ba30083b45169d25d0c) )
+
+ // CROM0
+ ROM_LOAD64_WORD_SWAP( "mpr-21023.1", 0x800006, 0x400000, CRC(932a3724) SHA1(146dfe897caa8a4385c527bc7c649e9dbd2ce0c0) )
+ ROM_LOAD64_WORD_SWAP( "mpr-21024.2", 0x800004, 0x400000, CRC(ede859b0) SHA1(cecd595a6ba60e248b7bf47778ba4da7658dcf93) )
+ ROM_LOAD64_WORD_SWAP( "mpr-21025.3", 0x800002, 0x400000, CRC(6591c66e) SHA1(feaae431692a3bab867b79d52bc3934f77c4022b) )
+ ROM_LOAD64_WORD_SWAP( "mpr-21026.4", 0x800000, 0x400000, CRC(f4937e3f) SHA1(21559ef991789ede4b4e7297e2a71f33f7cc7090) )
+
+ // CROM1
+ ROM_LOAD64_WORD_SWAP( "mpr-21027.5", 0x1800006, 0x400000, CRC(74e1496a) SHA1(0988058a109216e8b97045dde9d1099688193a13) )
+ ROM_LOAD64_WORD_SWAP( "mpr-21028.6", 0x1800004, 0x400000, CRC(db11f50a) SHA1(78bf2418bcea1ed30da9af936e9f95e9c76ce919) )
+ ROM_LOAD64_WORD_SWAP( "mpr-21029.7", 0x1800002, 0x400000, CRC(89867d8a) SHA1(89ebd5bc5d98fbd63d4cad407033419a39b1d60a) )
+ ROM_LOAD64_WORD_SWAP( "mpr-21030.8", 0x1800000, 0x400000, CRC(f8e51bec) SHA1(fe8a06ef21dd646e3ad6fa382e3f3d30db4cbd91) )
+
+ ROM_REGION( 0x2000000, "user3", 0 ) /* Video ROMs Part 1 */
+ ROM_LOAD_VROM( "mpr-21034.26", 0x000002, 0x400000, CRC(acba5ca6) SHA1(be213ca40d17f18e725349585f95d677e53c1bfc) )
+ ROM_LOAD_VROM( "mpr-21035.27", 0x000000, 0x400000, CRC(618b7d6a) SHA1(0968b72c8d7fc4b2635062647da5d36a58e69b08) )
+ ROM_LOAD_VROM( "mpr-21036.28", 0x000006, 0x400000, CRC(0e665bb2) SHA1(3b18ea93ed1d71873ff635358c3143e4f515bab9) )
+ ROM_LOAD_VROM( "mpr-21037.29", 0x000004, 0x400000, CRC(90b98493) SHA1(3f98855caec5895c8651ed88e07f2dcec5a6c66a) )
+ ROM_LOAD_VROM( "mpr-21038.30", 0x00000a, 0x400000, CRC(9b59d2c2) SHA1(3f14cfc905a018e0aa2b2ad4918cd4ee2ef65c7b) )
+ ROM_LOAD_VROM( "mpr-21039.31", 0x000008, 0x400000, CRC(61407b07) SHA1(d7676a03110ca694cc53c1d3a6c781d2f8cee98b) )
+ ROM_LOAD_VROM( "mpr-21040.32", 0x00000e, 0x400000, CRC(b550c229) SHA1(b13ea462914bb13388e11bed9a9b2e696a8eb759) )
+ ROM_LOAD_VROM( "mpr-21041.33", 0x00000c, 0x400000, CRC(8f1ac988) SHA1(11b628c85533a307298765641eb87c305bde64d1) )
+
+ ROM_REGION( 0x2000000, "user4", 0 ) /* Video ROMs Part 2 */
+ ROM_LOAD_VROM( "mpr-21042.34", 0x000002, 0x400000, CRC(1dab621d) SHA1(cf0e59be7b5a12146f5562e208009054074151cd) )
+ ROM_LOAD_VROM( "mpr-21043.35", 0x000000, 0x400000, CRC(707015c8) SHA1(125ff08cc555a4c8d9863e7433fad7949230630d) )
+ ROM_LOAD_VROM( "mpr-21044.36", 0x000006, 0x400000, CRC(776f9580) SHA1(0529532975d74da851a2fd1ce9810e218d751d5f) )
+ ROM_LOAD_VROM( "mpr-21045.37", 0x000004, 0x400000, CRC(a28ad02f) SHA1(8734568153dbf304193491e746b19a423a547f0d) )
+ ROM_LOAD_VROM( "mpr-21046.38", 0x00000a, 0x400000, CRC(05c995ae) SHA1(d96391360692d30c456324dcd51511bf095a58cb) )
+ ROM_LOAD_VROM( "mpr-21047.39", 0x000008, 0x400000, CRC(06b7826f) SHA1(cfdeb56964bd31196fde01b1f5cc294c8b49c215) )
+ ROM_LOAD_VROM( "mpr-21048.40", 0x00000e, 0x400000, CRC(96849974) SHA1(347e2216ea1225eda92693dcd80eb97df88caabf) )
+ ROM_LOAD_VROM( "mpr-21049.41", 0x00000c, 0x400000, CRC(91e8161a) SHA1(1edc0bc856e5d72f714bd0544814727f4ff12e7a) )
+
+ ROM_REGION( 0x080000, "audiocpu", 0 ) /* 68000 code */
+ ROM_LOAD16_WORD_SWAP( "epr-21066.21", 0x000000, 0x080000, CRC(f7ed2582) SHA1(a4f80d5f82c86f0bdb74bcda5dc69b83b475c542) )
- Program ROMs: EPR-21054A, EPR-21055A, EPR-21056A & EPR-21057A
+ ROM_REGION16_BE( 0x1000000, "samples", 0 ) /* SCSP samples */
+ ROM_LOAD16_WORD_SWAP( "mpr-21031.22", 0x000000, 0x400000, CRC(32f6b23a) SHA1(8cd092733b85aecf607c2f4b683c42e388a70906) )
+ ROM_LOAD16_WORD_SWAP( "mpr-21033.24", 0x400000, 0x400000, CRC(253d3c70) SHA1(bfbc42d08cf46d89c87505f53e31b8a53e8a729a) )
+ ROM_LOAD16_WORD_SWAP( "mpr-21032.23", 0x800000, 0x400000, CRC(3d3ff407) SHA1(5e298e24cb3050f8683658cef41ce59948e79166) )
+
+ ROM_REGION( 0x20000, "cpu2", 0 ) /* Z80 code */
+ ROM_FILL( 0x000000, 0x20000, 0x0000 )
+
+ ROM_REGION( 0x800000, "dsb", 0 ) /* DSB samples */
+ ROM_FILL( 0x000000, 0x800000, 0x0000 )
- 837-13022-01 MODEL3 STEP2 ROM
- 834-13527-01 GAME BD DRT USA
- 833-13528-01 DRT USA
- 837-13499-COM
- 837-11861-91 MODEL3 COMMUNICATION BOARD
- */
+ // ???? 317-0238-COM Model 3
+ ROM_PARAMETER( ":315_5881:key", "29290f17" )
+ROM_END
-ROM_START( dirtdvlsa ) /* Step 2.1 - Australia version */
+ROM_START( dirtdvlsau ) /* Step 2.1 - Australia version */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
ROM_LOAD64_WORD_SWAP( "epr-21058a.17", 0x000006, 0x200000, CRC(4d7fdc8d) SHA1(c45031b4e3ea65519de671e0e11f87e0965e3c93) )
@@ -4517,10 +4631,10 @@ ROM_START( dirtdvlsj ) /* Step 2.1 - Japan version, Sega game ID# is 833-13527
ROM_PARAMETER( ":315_5881:key", "29290f17" )
ROM_END
-ROM_START( dirtdvlsg ) /* Step 2.1 presumable German version, might be original revision */
+ROM_START( dirtdvlsg ) /* Step 2.1 - Game Assignment shows "EXPORT" like parent, hack or "G" revision? */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
- ROM_LOAD64_WORD_SWAP( "ic17.17", 0x000006, 0x200000, CRC(ec16bcdf) SHA1(503b69a3308d4e68c8b865e2445c1f3c77e1fe5a) )
+ ROM_LOAD64_WORD_SWAP( "ic17.17", 0x000006, 0x200000, CRC(ec16bcdf) SHA1(503b69a3308d4e68c8b865e2445c1f3c77e1fe5a) ) // Shows "Ver. G" on title screen
ROM_LOAD64_WORD_SWAP( "ic18.18", 0x000004, 0x200000, CRC(ee859e65) SHA1(86bbc19db97e9a495fe4f13f78a32ea6825d3b1b) )
ROM_LOAD64_WORD_SWAP( "ic19.19", 0x000002, 0x200000, CRC(01b2a2dc) SHA1(7fdc82aebf50df1d2634d0470de71e514fc33bcc) )
ROM_LOAD64_WORD_SWAP( "ic20.20", 0x000000, 0x200000, CRC(345829b5) SHA1(e172506028031c6cd6ebaddb70e98bc741c672bb) )
@@ -4927,7 +5041,7 @@ ROM_START( srally2pa ) // prototype 1997/12/08
ROM_LOAD( "epr-20512.bin", 0x000000, 0x010000, CRC(cf64350d) SHA1(f30c8c7b65fb38f7dd63845f12b81388ff3b946d) )
ROM_END
-ROM_START( srally2x ) /* Step 2.0, Sega game ID# is 833-13371, ROM board ID# 834-13372 SRT DX */
+ROM_START( srally2dx ) /* Step 2.0, Sega game ID# is 833-13371, ROM board ID# 834-13372 SRT DX */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
ROM_LOAD64_WORD_SWAP( "epr-20502.17", 0x000006, 0x200000, CRC(af16846d) SHA1(a0babc4dc3809ca1e71eaad4dc2f8c1597575e8b) )
@@ -5722,6 +5836,7 @@ ROM_START( magtruck ) /* Step 2.1, Sega game ID# is 833-13601-01 (Export), ROM
ROM_PARAMETER( ":315_5881:key", "29266e45" )
ROM_END
+// The Ocean Hunter revision A known to exist.
ROM_START( oceanhun ) /* Step 2.0, Sega game ID# is 833-13571, ROM board ID# 834-13572 THE OCEAN HUNTER, 317-0242-COM security chip (837-13576-COM security board) */
ROM_REGION64_BE( 0x8800000, "user1", 0 ) /* program + data ROMs */
// CROM
@@ -6296,18 +6411,6 @@ void model3_state::init_bass()
m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xf8fff000, 0xf8fff0ff, read64sm_delegate(*this, FUNC(model3_state::mpc106_reg_r)), write64sm_delegate(*this, FUNC(model3_state::mpc106_reg_w)));
}
-void model3_state::init_getbass()
-{
- interleave_vroms();
- m_maincpu->space(AS_PROGRAM).install_read_bank(0xff000000, 0xff7fffff, m_bank_crom );
-
- m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xf9000000, 0xf90000ff, read64s_delegate(*this, FUNC(model3_state::scsi_r)), write64s_delegate(*this, FUNC(model3_state::scsi_w)));
-
- m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xf0800cf8, 0xf0800cff, read64s_delegate(*this, FUNC(model3_state::mpc105_addr_r)), write64s_delegate(*this, FUNC(model3_state::mpc105_addr_w)));
- m_maincpu->space(AS_PROGRAM).install_read_handler(0xf0c00cf8, 0xf0c00cff, read64smo_delegate(*this, FUNC(model3_state::mpc105_data_r)));
- m_maincpu->space(AS_PROGRAM).install_write_handler(0xf0c00cf8, 0xf0c00cff, write64s_delegate(*this, FUNC(model3_state::mpc105_data_w)));
- m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xf8fff000, 0xf8fff0ff, read64sm_delegate(*this, FUNC(model3_state::mpc105_reg_r)), write64sm_delegate(*this, FUNC(model3_state::mpc105_reg_w)));
-}
void model3_state::init_vs2()
{
@@ -6348,25 +6451,41 @@ void model3_state::init_srally2()
// Writes command 000023FFFFFFFFFE, expects result 0x01000000000 (?? bits)
}
+/*
+void model3_state::init_srally2pa()
+{
+ init_model3_20();
+
+ uint32_t *rom = (uint32_t*)memregion("user1")->base();
+ rom[(0x3ba44^4)/4] = 0x60000000; // Unemulated JTAG stuff, see srally2
+ rom[(0x3ba48^4)/4] = 0x60000000;
+ rom[(0x3ba4c^4)/4] = 0x60000000;
+}
+*/
+
void model3_state::init_swtrilgy()
{
uint32_t *rom = (uint32_t*)memregion("user1")->base();
init_model3_20();
- // Unemulated JTAG stuff, see srally2
- rom[(0xf776c^4)/4] = 0x60000000;
+
+ rom[(0xf776c^4)/4] = 0x60000000; // Unemulated JTAG stuff, see srally2
rom[(0xf7770^4)/4] = 0x60000000;
rom[(0xf7774^4)/4] = 0x60000000;
- rom[(0x043dc^4)/4] = 0x48000090; // skip force feedback setup
+ rom[(0x043dc^4)/4] = 0x48000090; // skip force feedback setup
rom[(0xf6e44^4)/4] = 0x60000000;
}
void model3_state::init_swtrilga()
{
- //uint32_t *rom = (uint32_t*)memregion("user1")->base();
+ uint32_t *rom = (uint32_t*)memregion("user1")->base();
init_model3_20();
+ rom[(0xf76f8^4)/4] = 0x60000000; // Unemulated JTAG stuff, see srally2
+ rom[(0xf76fc^4)/4] = 0x60000000;
+ rom[(0xf7700^4)/4] = 0x60000000;
+
//rom[(0xf6dd0^4)/4] = 0x60000000; // skip force feedback check
}
@@ -6375,7 +6494,12 @@ void model3_state::init_swtrilgp()
uint32_t *rom = (uint32_t*)memregion("user1")->base();
init_model3_20();
- rom[(0x87db8^4)/4] = 0x60000000; // skip force feedback check
+ rom[(0x886e0^4)/4] = 0x60000000; // Unemulated JTAG stuff, see srally2
+ rom[(0x886e4^4)/4] = 0x60000000;
+ rom[(0x886e8^4)/4] = 0x60000000;
+
+ rom[(0x0292c^4)/4] = 0x60000000; // skip force feedback setup
+ rom[(0x02998^4)/4] = 0x60000000;
}
void model3_state::init_von2()
@@ -6491,65 +6615,67 @@ void model3_state::init_lamachin()
/* Model 3 Step 1.0 */
-GAME( 1996, vf3, 0, model3_10, model3, model3_state, init_vf3, ROT0, "Sega", "Virtua Fighter 3 (Revision D)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1996, vf3c, vf3, model3_10, model3, model3_state, init_vf3, ROT0, "Sega", "Virtua Fighter 3 (Revision C)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1996, vf3a, vf3, model3_10, model3, model3_state, init_vf3, ROT0, "Sega", "Virtua Fighter 3 (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1996, vf3tb, vf3, model3_10, model3, model3_state, init_model3_10, ROT0, "Sega", "Virtua Fighter 3 Team Battle", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, bass, 0, model3_10, bass, model3_state, init_bass, ROT0, "Sega", "Sega Bass Fishing", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, bassdx, bass, model3_10, bass, model3_state, init_getbass, ROT0, "Sega", "Sega Bass Fishing Deluxe", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, getbass, bass, getbass, bass, model3_state, init_getbass, ROT0, "Sega", "Get Bass", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1996, vf3, 0, model3_10, model3, model3_state, init_vf3, ROT0, "Sega", "Virtua Fighter 3 (Revision D)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, U.S.A., Export, Asia
+GAME( 1996, vf3c, vf3, model3_10, model3, model3_state, init_vf3, ROT0, "Sega", "Virtua Fighter 3 (Revision C)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, U.S.A., Export, Asia
+GAME( 1996, vf3a, vf3, model3_10, model3, model3_state, init_vf3, ROT0, "Sega", "Virtua Fighter 3 (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, U.S.A., Export
+GAME( 1996, vf3tb, vf3, model3_10, model3, model3_state,init_model3_10, ROT0, "Sega", "Virtua Fighter 3 Team Battle", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, U.S.A., Export, Asia
+GAME( 1997, bassdx, 0, model3_10, bass, model3_state, init_bass, ROT0, "Sega", "Sega Bass Fishing Deluxe (USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, getbassdx, bassdx, model3_10, bass, model3_state, init_bass, ROT0, "Sega", "Get Bass: Sega Bass Fishing Deluxe (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, getbassur, bassdx, model3_10, bass, model3_state, init_bass, ROT0, "Sega", "Get Bass: Sega Bass Fishing Upright (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, getbass, bassdx, getbass, bass, model3_state, init_bass, ROT0, "Sega", "Get Bass: Sega Bass Fishing (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
/* Model 3 Step 1.5 */
-GAME( 1996, scud, 0, scud, scud, model3_state, init_scud, ROT0, "Sega", "Scud Race Twin (Australia)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1996, scudj, scud, scud, scud, model3_state, init_scud, ROT0, "Sega", "Scud Race Deluxe", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1996, scuda, scud, scud, scud, model3_state, init_scud, ROT0, "Sega", "Scud Race Twin", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, scudplus, scud, scud, scud, model3_state, init_scudplus, ROT0, "Sega", "Scud Race Plus (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, scudplusa, scud, scud, scud, model3_state,init_scudplusa, ROT0, "Sega", "Scud Race Plus", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, lostwsga, 0, lostwsga, lostwsga, model3_state, init_lostwsga, ROT0, "Sega", "The Lost World (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, lostwsgp,lostwsga, lostwsga, lostwsga, model3_state, init_lostwsga, ROT0, "Sega", "The Lost World (location test)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, vs215, vs2, model3_15, model3, model3_state, init_vs215, ROT0, "Sega", "Virtua Striker 2 (Step 1.5, Export, USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, vs215o, vs2, model3_15, model3, model3_state, init_vs215, ROT0, "Sega", "Virtua Striker 2 (Step 1.5, Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, lemans24, 0, model3_15, scud, model3_state, init_lemans24, ROT0, "Sega", "Le Mans 24 (Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, vs29815, vs298, model3_15, model3, model3_state, init_vs29815, ROT0, "Sega", "Virtua Striker 2 '98 (Step 1.5)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, vs29915, vs2v991, model3_15, model3, model3_state, init_vs215, ROT0, "Sega", "Virtua Striker 2 '99 (Step 1.5, Export, USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1996, scud, 0, scud, scud, model3_state, init_scud, ROT0, "Sega", "Scud Race Twin/DX (Export)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // No region specified or selectable
+GAME( 1996, scuddx, scud, scud, scud, model3_state, init_scud, ROT0, "Sega", "Scud Race Deluxe (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, USA, Export
+GAME( 1996, scudau, scud, scud, scud, model3_state, init_scud, ROT0, "Sega", "Scud Race Twin/DX (Australia)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, scudplus, scud, scud, scud, model3_state, init_scudplus, ROT0, "Sega", "Scud Race Plus Twin/DX (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, USA, Export
+GAME( 1997, scudplusa, scud, scud, scud, model3_state,init_scudplusa, ROT0, "Sega", "Scud Race Plus Twin/DX", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, USA, Export
+GAME( 1997, lostwsga, 0, lostwsga, lostwsga, model3_state, init_lostwsga, ROT0, "Sega", "The Lost World (Japan, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, lostwsgp, lostwsga, lostwsga, lostwsga, model3_state, init_lostwsga, ROT0, "Sega", "The Lost World (location test)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, USA, Export, Koala
+GAME( 1997, vs215, vs2, model3_15, model3, model3_state, init_vs215, ROT0, "Sega", "Virtua Striker 2 (Step 1.5, Export, USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, vs215o, vs2, model3_15, model3, model3_state, init_vs215, ROT0, "Sega", "Virtua Striker 2 (Step 1.5, Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, lemans24, 0, model3_15, scud, model3_state, init_lemans24, ROT0, "Sega", "Le Mans 24 (Japan, Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, vs29815, vs298, model3_15, model3, model3_state, init_vs29815, ROT0, "Sega", "Virtua Striker 2 '98 (Step 1.5)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, vs29915, vs2v991, model3_15, model3, model3_state, init_vs215, ROT0, "Sega", "Virtua Striker 2 '99 (Step 1.5, Export, USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
/* Model 3 Step 2.0 */
-GAME( 1997, vs2, 0, model3_20, model3, model3_state, init_vs2, ROT0, "Sega", "Virtua Striker 2 (Step 2.0, Export, USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, harley, 0, model3_20, harley, model3_state, init_harley, ROT0, "Sega", "Harley-Davidson and L.A. Riders (Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1997, harleya, harley, model3_20, harley, model3_state, init_harleya, ROT0, "Sega", "Harley-Davidson and L.A. Riders (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, lamachin, 0, model3_20_5881, model3, model3_state, init_lamachin, ROT0, "Sega", "L.A. Machineguns", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, oceanhun, 0, model3_20_5881, model3, model3_state, init_oceanhun, ROT0, "Sega", "The Ocean Hunter", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, skichamp, 0, model3_20, skichamp, model3_state, init_skichamp, ROT0, "Sega", "Ski Champ", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, srally2, 0, model3_20, scud, model3_state, init_srally2, ROT0, "Sega", "Sega Rally 2", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, srally2p, srally2, model3_20, scud, model3_state, init_srally2, ROT0, "Sega", "Sega Rally 2 (prototype, 29 Dec 1997)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, srally2pa,srally2, model3_20, scud, model3_state, init_srally2, ROT0, "Sega", "Sega Rally 2 (prototype, 8 Dec 1997)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, srally2x, 0, model3_20, scud, model3_state, init_srally2, ROT0, "Sega", "Sega Rally 2 DX", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, von2, 0, model3_20_5881, von2, model3_state, init_von2, ROT0, "Sega", "Virtual On 2: Oratorio Tangram (Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, von2a, von2, model3_20_5881, von2, model3_state, init_von2, ROT0, "Sega", "Virtual On 2: Oratorio Tangram (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, von2o, von2, model3_20_5881, von2, model3_state, init_von2, ROT0, "Sega", "Virtual On 2: Oratorio Tangram", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, von254g, von2, model3_20_5881, von2, model3_state, init_von2, ROT0, "Sega", "Virtual On 2: Oratorio Tangram (ver 5.4g)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, fvipers2, 0, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Fighting Vipers 2 (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, fvipers2o,fvipers2,model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Fighting Vipers 2", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, vs298, 0, model3_20_5881, model3, model3_state, init_vs298, ROT0, "Sega", "Virtua Striker 2 '98 (Step 2.0)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, vs2v991, 0, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Virtua Striker 2 '99.1 (Export, USA, Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, vs299b, vs2v991, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Virtua Striker 2 '99 (Japan, Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, vs299a, vs2v991, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Virtua Striker 2 '99 (Export, USA, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, vs299, vs2v991, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Virtua Striker 2 '99 (Export, USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, vs2, 0, model3_20, model3, model3_state, init_vs2, ROT0, "Sega", "Virtua Striker 2 (Step 2.0, Export, USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, harley, 0, model3_20, harley, model3_state, init_harley, ROT0, "Sega", "Harley-Davidson and L.A. Riders (Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1997, harleya, harley, model3_20, harley, model3_state, init_harleya, ROT0, "Sega", "Harley-Davidson and L.A. Riders (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, lamachin, 0, model3_20_5881, model3, model3_state, init_lamachin, ROT0, "Sega", "L.A. Machineguns (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, oceanhun, 0, model3_20_5881, model3, model3_state, init_oceanhun, ROT0, "Sega", "The Ocean Hunter (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, skichamp, 0, model3_20, skichamp, model3_state, init_skichamp, ROT0, "Sega", "Ski Champ (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, srally2, 0, model3_20, scud, model3_state, init_srally2, ROT0, "Sega", "Sega Rally 2 (Export)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // No region specified or selectable
+GAME( 1998, srally2p, srally2, model3_20, scud, model3_state,init_model3_20, ROT0, "Sega", "Sega Rally 2 (prototype, 29 Dec 1997)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // need specific JTAG access patches
+GAME( 1998, srally2pa, srally2, model3_20, scud, model3_state,init_model3_20, ROT0, "Sega", "Sega Rally 2 (prototype, 8 Dec 1997)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // need specific JTAG access patches
+GAME( 1998, srally2dx, srally2, model3_20, scud, model3_state,init_model3_20, ROT0, "Sega", "Sega Rally 2 Deluxe (Export)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // need specific JTAG access patches
+GAME( 1998, von2, 0, model3_20_5881, von2, model3_state, init_von2, ROT0, "Sega", "Virtual On 2: Oratorio Tangram (Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // No region specified or selectable
+GAME( 1998, von2a, von2, model3_20_5881, von2, model3_state, init_von2, ROT0, "Sega", "Virtual On 2: Oratorio Tangram (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // No region specified or selectable
+GAME( 1998, von2o, von2, model3_20_5881, von2, model3_state, init_von2, ROT0, "Sega", "Virtual On 2: Oratorio Tangram", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // No region specified or selectable
+GAME( 1998, von254g, von2, model3_20_5881, von2, model3_state, init_von2, ROT0, "Sega", "Virtual On 2: Oratorio Tangram (ver 5.4g)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // No region specified or selectable
+GAME( 1998, fvipers2, 0, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Fighting Vipers 2 (Japan, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, fvipers2o, fvipers2, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Fighting Vipers 2 (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, vs298, 0, model3_20_5881, model3, model3_state, init_vs298, ROT0, "Sega", "Virtua Striker 2 '98 (Step 2.0)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, vs2v991, 0, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Virtua Striker 2 '99.1 (Export, USA, Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, vs299b, vs2v991, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Virtua Striker 2 '99 (Japan, Revision B)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, vs299a, vs2v991, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Virtua Striker 2 '99 (Export, USA, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, vs299, vs2v991, model3_20_5881, model3, model3_state, init_vs299, ROT0, "Sega", "Virtua Striker 2 '99 (Export, USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
/* Model 3 Step 2.1 */
-GAME( 1998, daytona2, 0, model3_21_5881, daytona2, model3_state, init_daytona2, ROT0, "Sega", "Daytona USA 2 (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, dayto2pe, 0, model3_21_5881, daytona2, model3_state, init_dayto2pe, ROT0, "Sega", "Daytona USA 2 Power Edition", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, dirtdvls, 0, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (Export, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, dirtdvlsa, dirtdvls, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (Australia, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, dirtdvlsj, dirtdvls, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (Japan, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, dirtdvlsg, dirtdvls, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (Germany?)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, swtrilgy, 0, model3_21_5881, swtrilgy, model3_state, init_swtrilgy, ROT0, "Sega / LucasArts", "Star Wars Trilogy Arcade (Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, swtrilgya, swtrilgy, model3_21_5881, swtrilgy, model3_state, init_swtrilga, ROT0, "Sega / LucasArts", "Star Wars Trilogy Arcade", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, swtrilgyp, swtrilgy, model3_21, swtrilgy, model3_state, init_swtrilgp, ROT0, "Sega / LucasArts", "Star Wars Trilogy Arcade (location test, 16.09.98)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, spikeout, 0, model3_21_5881, model3, model3_state, init_spikeout, ROT0, "Sega", "Spikeout (Revision C)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1999, spikeofe, 0, model3_21_5881, model3, model3_state, init_spikeofe, ROT0, "Sega", "Spikeout Final Edition", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1998, magtruck, 0, model3_21_5881, eca, model3_state, init_magtruck, ROT0, "Sega", "Magical Truck Adventure (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1999, eca, 0, model3_21_5881, eca, model3_state, init_eca, ROT0, "Sega", "Emergency Call Ambulance (Export)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1999, ecaj, eca, model3_21_5881, eca, model3_state, init_eca, ROT0, "Sega", "Emergency Call Ambulance (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1999, ecau, eca, model3_21_5881, eca, model3_state, init_eca, ROT0, "Sega", "Emergency Call Ambulance (USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
-GAME( 1999, ecap, eca, model3_21_5881, eca, model3_state, init_eca, ROT0, "Sega", "Emergency Call Ambulance (US location test?)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, daytona2, 0, model3_21_5881, daytona2, model3_state, init_daytona2, ROT0, "Sega", "Daytona USA 2 (Japan, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, dayto2pe, 0, model3_21_5881, daytona2, model3_state, init_dayto2pe, ROT0, "Sega", "Daytona USA 2 Power Edition (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, dirtdvls, 0, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (Export, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, dirtdvlsu, dirtdvls, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (USA, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, dirtdvlsau, dirtdvls, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (Australia, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, dirtdvlsj, dirtdvls, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (Japan, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, dirtdvlsg, dirtdvls, model3_21_5881, scud, model3_state, init_dirtdvls, ROT0, "Sega", "Dirt Devils (Export, Ver. G?)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Game Assignments shows EXPORT
+GAME( 1998, swtrilgy, 0, model3_21_5881, swtrilgy, model3_state, init_swtrilgy, ROT0, "Sega / LucasArts", "Star Wars Trilogy Arcade (Export, Revision A)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, swtrilgya, swtrilgy, model3_21_5881, swtrilgy, model3_state, init_swtrilga, ROT0, "Sega / LucasArts", "Star Wars Trilogy Arcade (Export)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, swtrilgyp, swtrilgy, model3_21, swtrilgy, model3_state, init_swtrilgp, ROT0, "Sega / LucasArts", "Star Wars Trilogy Arcade (location test, 16.09.98)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND ) // Japan, USA, Australia, Korea, Export
+GAME( 1998, spikeout, 0, model3_21_5881, model3, model3_state, init_spikeout, ROT0, "Sega", "Spikeout (Export, Revision C)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1999, spikeofe, 0, model3_21_5881, model3, model3_state, init_spikeofe, ROT0, "Sega", "Spikeout Final Edition (Export)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1998, magtruck, 0, model3_21_5881, eca, model3_state, init_magtruck, ROT0, "Sega", "Magical Truck Adventure (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1999, eca, 0, model3_21_5881, eca, model3_state, init_eca, ROT0, "Sega", "Emergency Call Ambulance (Export)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1999, ecaj, eca, model3_21_5881, eca, model3_state, init_eca, ROT0, "Sega", "Emergency Call Ambulance (Japan)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1999, ecau, eca, model3_21_5881, eca, model3_state, init_eca, ROT0, "Sega", "Emergency Call Ambulance (USA)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )
+GAME( 1999, ecap, eca, model3_21_5881, eca, model3_state, init_eca, ROT0, "Sega", "Emergency Call Ambulance (US location test?)", MACHINE_NOT_WORKING | MACHINE_IMPERFECT_GRAPHICS | MACHINE_IMPERFECT_SOUND )