summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author David Haywood <mamehaze@users.noreply.github.com>2015-11-24 13:42:42 +0000
committer David Haywood <mamehaze@users.noreply.github.com>2015-11-24 13:42:42 +0000
commit62c78f106c7c4b9bffdd7e0c60d8f81dba9278a4 (patch)
treea6fdc1fe953d8ab199801fbea451e44f05d002b0 /src
parent39a7a3cb04eacac85996d4a3d0f86ffba3ab4c1b (diff)
these outrun mods are being used in arcades, mainly because they fix the Free Play mode and many current arcades use the 'pay once on the door, all machines set to freeplay' busines model.
will add the older versions later.
Diffstat (limited to 'src')
-rw-r--r--src/mame/arcade.lst2
-rw-r--r--src/mame/drivers/segaorun.cpp138
2 files changed, 140 insertions, 0 deletions
diff --git a/src/mame/arcade.lst b/src/mame/arcade.lst
index 19a78dd69c7..f6b526ccbb8 100644
--- a/src/mame/arcade.lst
+++ b/src/mame/arcade.lst
@@ -4895,6 +4895,8 @@ toutrun3d // bootleg
toutrunj1d // bootleg
toutrun2d // bootleg
shangon3d // bootleg
+outrundxeh // hack
+outruneh // hack
// X Board
aburner // 1987.07 After Burner (Japan)
diff --git a/src/mame/drivers/segaorun.cpp b/src/mame/drivers/segaorun.cpp
index efd92584ce8..6f33389a665 100644
--- a/src/mame/drivers/segaorun.cpp
+++ b/src/mame/drivers/segaorun.cpp
@@ -1344,6 +1344,61 @@ ROM_START( outrun )
ROM_RELOAD( 0x58000, 0x08000 )
ROM_END
+ROM_START( outruneh )
+ ROM_REGION( 0x60000, "maincpu", 0 ) // 68000 code
+ ROM_LOAD16_BYTE( "enhanced_110_epr-10380b.133", 0x000000, 0x10000, CRC(30d6ab84) SHA1(2ab4baee7bcf160fb9b47e50d20618537c1b1b45) )
+ ROM_LOAD16_BYTE( "enhanced_110_epr-10382b.118", 0x000001, 0x10000, CRC(62041a21) SHA1(c3245c7b6ed0268c5baa2cd542f27bc88f5ad315) )
+ ROM_LOAD16_BYTE( "enhanced_110_epr-10381b.132", 0x020000, 0x10000, CRC(a3cc8db5) SHA1(f48d2a66c622b34a24705da5719f5adecaff9916) )
+ ROM_LOAD16_BYTE( "enhanced_110_epr-10383b.117", 0x020001, 0x10000, CRC(21ab78a0) SHA1(7eb12851f3e10e8d9bf1e72e8b88e84b53f12b6b) )
+
+ ROM_REGION( 0x60000, "subcpu", 0 ) // second 68000 CPU
+ ROM_LOAD16_BYTE( "epr-10327a.76", 0x00000, 0x10000, CRC(e28a5baf) SHA1(f715bde96c73ed47035acf5a41630fdeb41bb2f9) )
+ ROM_LOAD16_BYTE( "epr-10329a.58", 0x00001, 0x10000, CRC(da131c81) SHA1(57d5219bd0e2fd886217e37e8773fd76be9b40eb) )
+ ROM_LOAD16_BYTE( "epr-10328a.75", 0x20000, 0x10000, CRC(d5ec5e5d) SHA1(a4e3cfca4d803e72bc4fcf91ab00e21bf3f8959f) )
+ ROM_LOAD16_BYTE( "epr-10330a.57", 0x20001, 0x10000, CRC(ba9ec82a) SHA1(2136c9572e26b7ae6de402c0cd53174407cc6018) )
+
+ ROM_REGION( 0x30000, "gfx1", 0 ) // tiles
+ ROM_LOAD( "opr-10268.99", 0x00000, 0x08000, CRC(95344b04) SHA1(b3480714b11fc49b449660431f85d4ba92f799ba) )
+ ROM_LOAD( "opr-10232.102", 0x08000, 0x08000, CRC(776ba1eb) SHA1(e3477961d19e694c97643066534a1f720e0c4327) )
+ ROM_LOAD( "opr-10267.100", 0x10000, 0x08000, CRC(a85bb823) SHA1(a7e0143dee5a47e679fd5155e58e717813912692) )
+ ROM_LOAD( "opr-10231.103", 0x18000, 0x08000, CRC(8908bcbf) SHA1(8e1237b640a6f26bdcbfd5e201dadb2687c4febb) )
+ ROM_LOAD( "opr-10266.101", 0x20000, 0x08000, CRC(9f6f1a74) SHA1(09164e858ebeedcff4d389524ddf89e7c216dcae) )
+ ROM_LOAD( "opr-10230.104", 0x28000, 0x08000, CRC(686f5e50) SHA1(03697b892f911177968aa40de6c5f464eb0258e7) )
+
+ ROM_REGION32_LE( 0x100000, "sprites", 0 ) // sprites
+ // VIDEO BD 837-6064-02 uses mask roms four times the size of those used on VIDEO BD 837-6064-01, same data
+ ROM_LOAD32_BYTE( "mpr-10371.9", 0x00000, 0x20000, CRC(7cc86208) SHA1(21320f945f7c8e990c97c9b1232a0f4b6bd00f8f) )
+ ROM_LOAD32_BYTE( "mpr-10373.10", 0x00001, 0x20000, CRC(b0d26ac9) SHA1(3a9ce8547cd43b7b04abddf9a9ab5634e0bbfaba) )
+ ROM_LOAD32_BYTE( "mpr-10375.11", 0x00002, 0x20000, CRC(59b60bd7) SHA1(e5d8c67e020608edd24ba87b7687b2ac2483ee7f) )
+ ROM_LOAD32_BYTE( "mpr-10377.12", 0x00003, 0x20000, CRC(17a1b04a) SHA1(9f7210cb4153ac9029a785dcd4b45f4513a4b008) )
+ ROM_LOAD32_BYTE( "mpr-10372.13", 0x80000, 0x20000, CRC(b557078c) SHA1(a3746a2da077a8df4932348f650a061f413e8430) )
+ ROM_LOAD32_BYTE( "mpr-10374.14", 0x80001, 0x20000, CRC(8051e517) SHA1(9c8509fbed170b4ac74c169da573393e54774f49) )
+ ROM_LOAD32_BYTE( "mpr-10376.15", 0x80002, 0x20000, CRC(f3b8f318) SHA1(a5f2532613f33a64441e0f75443c10ba78dccc6e) )
+ ROM_LOAD32_BYTE( "mpr-10378.16", 0x80003, 0x20000, CRC(a1062984) SHA1(4399030a155caf71f2dec7f75c4b65531ab53576) )
+
+ ROM_REGION( 0x10000, "gfx3", 0 ) // road gfx (2 identical roms, 1 for each road)
+ ROM_LOAD( "opr-10186.47", 0x0000, 0x8000, CRC(22794426) SHA1(a554d4b68e71861a0d0da4d031b3b811b246f082) )
+ ROM_LOAD( "opr-10185.11", 0x8000, 0x8000, CRC(22794426) SHA1(a554d4b68e71861a0d0da4d031b3b811b246f082) )
+
+ ROM_REGION( 0x10000, "soundcpu", 0 ) // sound CPU
+ ROM_LOAD( "epr-10187.88", 0x00000, 0x8000, CRC(a10abaa9) SHA1(01c8a819587a66d2ee4d255656e36fa0904377b0) )
+
+ ROM_REGION( 0x80000, "pcm", ROMREGION_ERASEFF ) // sound PCM data
+ ROM_LOAD( "opr-10193.66", 0x00000, 0x08000, CRC(bcd10dde) SHA1(417ce1d7242884640c5b14f4db8ee57cde7d085d) )
+ ROM_RELOAD( 0x08000, 0x08000 )
+ ROM_LOAD( "opr-10192.67", 0x10000, 0x08000, CRC(770f1270) SHA1(686bdf44d45c1d6002622f6658f037735382f3e0) )
+ ROM_RELOAD( 0x18000, 0x08000 )
+ ROM_LOAD( "opr-10191.68", 0x20000, 0x08000, CRC(20a284ab) SHA1(7c9027416d4122791ba53782fe2230cf02b7d506) )
+ ROM_RELOAD( 0x28000, 0x08000 )
+ ROM_LOAD( "opr-10190.69", 0x30000, 0x08000, CRC(7cab70e2) SHA1(a3c581d2b438630d0d4c39481dcfd85681c9f889) )
+ ROM_RELOAD( 0x38000, 0x08000 )
+ ROM_LOAD( "opr-10189.70", 0x40000, 0x08000, CRC(01366b54) SHA1(f467a6b807694d5832a985f5381c170d24aaee4e) )
+ ROM_RELOAD( 0x48000, 0x08000 )
+ ROM_LOAD( "enhanced_103_opr-10188.71", 0x50000, 0x08000, CRC(37598616) SHA1(e7c8ae6c59742e1de7ec5a95c5aebfab5716d959) ) // unofficial replacement for factory defective opr-10188
+ ROM_RELOAD( 0x58000, 0x08000 )
+ROM_END
+
+
//*************************************************************************************************************************
// Outrun
// CPU: 68000
@@ -1499,6 +1554,84 @@ ROM_START( outrundx )
ROM_RELOAD( 0x58000, 0x08000 )
ROM_END
+ROM_START( outrundxeh )
+ ROM_REGION( 0x60000, "maincpu", 0 ) // 68000 code
+ ROM_LOAD16_BYTE( "enhanced_103_epr-10380.133", 0x000000, 0x10000, CRC(0e7db21f) SHA1(f6c3fc26708da518989fffe3faf6c6d46a44c670) )
+ ROM_LOAD16_BYTE( "enhanced_103_epr-10382.118", 0x000001, 0x10000, CRC(4e1ded90) SHA1(a86b756b4aa152359db86b424314100beecb9594) )
+ ROM_LOAD16_BYTE( "enhanced_103_epr-10381.132", 0x020000, 0x10000, CRC(5f8ef718) SHA1(a1360f5199da6e2d869f848eeae7a24e65f1c7ff) )
+ ROM_LOAD16_BYTE( "enhanced_103_epr-10383.117", 0x020001, 0x10000, CRC(9794985b) SHA1(b9a1e48b6e5f874141dd62c0672a1c0b191b9708) )
+
+ ROM_REGION( 0x60000, "subcpu", 0 ) // second 68000 CPU
+ ROM_LOAD16_BYTE( "epr-10327.76", 0x00000, 0x10000, CRC(da99d855) SHA1(77d18092e3c10a400e62eeba562f161398fe37a7) )
+ ROM_LOAD16_BYTE( "epr-10329.58", 0x00001, 0x10000, CRC(fe0fa5e2) SHA1(e63fe5f7950af35131539836f18fa056767c2c80) )
+ ROM_LOAD16_BYTE( "epr-10328.75", 0x20000, 0x10000, CRC(3c0e9a7f) SHA1(0e182fdac70423a85dc2b996c70bcb3954e75e10) )
+ ROM_LOAD16_BYTE( "epr-10330.57", 0x20001, 0x10000, CRC(59786e99) SHA1(834bf361ca67cee3793c324bb26cf0ec82a72068) )
+
+ ROM_REGION( 0x30000, "gfx1", 0 ) // tiles
+ ROM_LOAD( "opr-10268.99", 0x00000, 0x08000, CRC(95344b04) SHA1(b3480714b11fc49b449660431f85d4ba92f799ba) )
+ ROM_LOAD( "opr-10232.102", 0x08000, 0x08000, CRC(776ba1eb) SHA1(e3477961d19e694c97643066534a1f720e0c4327) )
+ ROM_LOAD( "opr-10267.100", 0x10000, 0x08000, CRC(a85bb823) SHA1(a7e0143dee5a47e679fd5155e58e717813912692) )
+ ROM_LOAD( "opr-10231.103", 0x18000, 0x08000, CRC(8908bcbf) SHA1(8e1237b640a6f26bdcbfd5e201dadb2687c4febb) )
+ ROM_LOAD( "opr-10266.101", 0x20000, 0x08000, CRC(9f6f1a74) SHA1(09164e858ebeedcff4d389524ddf89e7c216dcae) )
+ ROM_LOAD( "opr-10230.104", 0x28000, 0x08000, CRC(686f5e50) SHA1(03697b892f911177968aa40de6c5f464eb0258e7) )
+
+ ROM_REGION32_LE( 0x100000, "sprites", 0 ) // sprites
+ // VIDEO BD 837-6064-01 uses eproms a fourth of the size of those used on VIDEO BD 837-6064-02, same data
+ ROM_LOAD32_BYTE( "epr-10194.26", 0x00000, 0x08000, CRC(f0eda3bd) SHA1(173e10a10372d42da81e6eb48c3e23a117638c0c) )
+ ROM_LOAD32_BYTE( "epr-10203.38", 0x00001, 0x08000, CRC(8445a622) SHA1(1187dee7db09a42446fc75872d49936310141eb8) )
+ ROM_LOAD32_BYTE( "epr-10212.52", 0x00002, 0x08000, CRC(dee7e731) SHA1(f09d18f8d8405025b87dd01488ad2098e28410b0) )
+ ROM_LOAD32_BYTE( "epr-10221.66", 0x00003, 0x08000, CRC(43431387) SHA1(a28896e888bc4d4f67babd49003d663c1ceabb71) )
+ ROM_LOAD32_BYTE( "epr-10195.27", 0x20000, 0x08000, CRC(0de75cdd) SHA1(a97faea76aca663ccbbde327f3d1d8ae256649d3) )
+ ROM_LOAD32_BYTE( "epr-10204.39", 0x20001, 0x08000, CRC(5f4b5abb) SHA1(f81637b2eb6a4bde76c43eedfad7e5375594c7bd) )
+ ROM_LOAD32_BYTE( "epr-10213.53", 0x20002, 0x08000, CRC(1d1b22f0) SHA1(d3b1c36d08c4b7b08f9969a521e62eebd5b2238d) )
+ ROM_LOAD32_BYTE( "epr-10222.67", 0x20003, 0x08000, CRC(a254c706) SHA1(e2801a0a7fd5546a48cd53ad7e4743d821d985ff) )
+ ROM_LOAD32_BYTE( "epr-10196.28", 0x40000, 0x08000, CRC(8688bb59) SHA1(0aaa90c5101aa1db00db776a15a0a525587dfc43) )
+ ROM_LOAD32_BYTE( "epr-10205.40", 0x40001, 0x08000, CRC(74bd93ca) SHA1(6a02ea3b977e56cfd61302afa2abf6c2dc766ba7) )
+ ROM_LOAD32_BYTE( "epr-10214.54", 0x40002, 0x08000, CRC(57527e18) SHA1(4cc95c4b741f495e5b9c3b9d4d9ab9a6fded9aeb) )
+ ROM_LOAD32_BYTE( "epr-10223.68", 0x40003, 0x08000, CRC(3850690e) SHA1(0f92743f848edc8deaeeef3afca5f662ceba61e7) )
+ ROM_LOAD32_BYTE( "epr-10197.29", 0x60000, 0x08000, CRC(009165a6) SHA1(987b91e8c5c54bb7c4520b13a72f1f47c34278f4) )
+ ROM_LOAD32_BYTE( "epr-10206.41", 0x60001, 0x08000, CRC(954542c5) SHA1(3c67e3568c04ba083f4aacad2e8857cdd16b3b2f) )
+ ROM_LOAD32_BYTE( "epr-10215.55", 0x60002, 0x08000, CRC(69be5a6c) SHA1(2daac5877a71de04878f231f03361f697552431f) )
+ ROM_LOAD32_BYTE( "epr-10224.69", 0x60003, 0x08000, CRC(5cffc346) SHA1(0481f864bb584c96cd92c260a62c0c1d4030bde8) )
+ ROM_LOAD32_BYTE( "epr-10198.30", 0x80000, 0x08000, CRC(d894992e) SHA1(451469f743a0019b8797d16ba7b26a267d13fe06) )
+ ROM_LOAD32_BYTE( "epr-10207.42", 0x80001, 0x08000, CRC(ca61cea4) SHA1(7c39e2863f5c7be290522acdaf046b1dab7a3542) )
+ ROM_LOAD32_BYTE( "epr-10216.56", 0x80002, 0x08000, CRC(d394134d) SHA1(42f768a9c9eb9f556d197548c35b3a0cd5414734) )
+ ROM_LOAD32_BYTE( "epr-10225.70", 0x80003, 0x08000, CRC(0a5d1f2b) SHA1(43d9c7539b6cebbac3395a4ba71a702300c9e644) )
+ ROM_LOAD32_BYTE( "epr-10199.31", 0xa0000, 0x08000, CRC(86376af6) SHA1(971f4b0d9a01ca7ffb50cefbe1ab41b703a4a41a) )
+ ROM_LOAD32_BYTE( "epr-10208.43", 0xa0001, 0x08000, CRC(6830b7fa) SHA1(3ece1971a4f025104ebd026da6751caea9aa8a64) )
+ ROM_LOAD32_BYTE( "epr-10217.57", 0xa0002, 0x08000, CRC(bf2c9b76) SHA1(248e273255968115a60855b1fffcce1dbeacc3d4) )
+ ROM_LOAD32_BYTE( "epr-10226.71", 0xa0003, 0x08000, CRC(5a452474) SHA1(6789a33b55a1693ec9cc196b3ebd220b14169e08) )
+ ROM_LOAD32_BYTE( "epr-10200.32", 0xc0000, 0x08000, CRC(1e5d4f73) SHA1(79deddf4461dad5784441c2839894207b7d2ecac) )
+ ROM_LOAD32_BYTE( "epr-10209.44", 0xc0001, 0x08000, CRC(5c15419e) SHA1(7b4e9c0cb430afae7f927c0224021add0a627251) )
+ ROM_LOAD32_BYTE( "epr-10218.58", 0xc0002, 0x08000, CRC(db4bdb39) SHA1(b4661611b28e7ff1c721565175038cfd1e99d383) )
+ ROM_LOAD32_BYTE( "epr-10227.72", 0xc0003, 0x08000, CRC(c7def392) SHA1(fa7d1245eefdc3abb9520118bbb0d025ca62901e) )
+ ROM_LOAD32_BYTE( "epr-10201.33", 0xe0000, 0x08000, CRC(1d9d4b9c) SHA1(3264b66c87aa7de4c140450b96adbe3071231d4a) )
+ ROM_LOAD32_BYTE( "epr-10210.45", 0xe0001, 0x08000, CRC(39422931) SHA1(8d8a3f4597945c92aebd20c0784180696b6c9c1c) )
+ ROM_LOAD32_BYTE( "epr-10219.59", 0xe0002, 0x08000, CRC(e73b9224) SHA1(1904a71a0c18ab2a3a5929e72b1c215dbb0fa213) )
+ ROM_LOAD32_BYTE( "epr-10228.73", 0xe0003, 0x08000, CRC(25803978) SHA1(1a18922aeb516e8deb026d52e3cdcc4e69385af5) )
+
+ ROM_REGION( 0x10000, "gfx3", 0 ) // road gfx (2 identical roms, 1 for each road)
+ ROM_LOAD( "opr-10186.47", 0x0000, 0x8000, CRC(22794426) SHA1(a554d4b68e71861a0d0da4d031b3b811b246f082) )
+ ROM_LOAD( "opr-10185.11", 0x8000, 0x8000, CRC(22794426) SHA1(a554d4b68e71861a0d0da4d031b3b811b246f082) )
+
+ ROM_REGION( 0x10000, "soundcpu", 0 ) // sound CPU
+ ROM_LOAD( "epr-10187.88", 0x00000, 0x8000, CRC(a10abaa9) SHA1(01c8a819587a66d2ee4d255656e36fa0904377b0) )
+
+ ROM_REGION( 0x80000, "pcm", ROMREGION_ERASEFF ) // sound PCM data
+ ROM_LOAD( "opr-10193.66", 0x00000, 0x08000, CRC(bcd10dde) SHA1(417ce1d7242884640c5b14f4db8ee57cde7d085d) )
+ ROM_RELOAD( 0x08000, 0x08000 )
+ ROM_LOAD( "opr-10192.67", 0x10000, 0x08000, CRC(770f1270) SHA1(686bdf44d45c1d6002622f6658f037735382f3e0) )
+ ROM_RELOAD( 0x18000, 0x08000 )
+ ROM_LOAD( "opr-10191.68", 0x20000, 0x08000, CRC(20a284ab) SHA1(7c9027416d4122791ba53782fe2230cf02b7d506) )
+ ROM_RELOAD( 0x28000, 0x08000 )
+ ROM_LOAD( "opr-10190.69", 0x30000, 0x08000, CRC(7cab70e2) SHA1(a3c581d2b438630d0d4c39481dcfd85681c9f889) )
+ ROM_RELOAD( 0x38000, 0x08000 )
+ ROM_LOAD( "opr-10189.70", 0x40000, 0x08000, CRC(01366b54) SHA1(f467a6b807694d5832a985f5381c170d24aaee4e) )
+ ROM_RELOAD( 0x48000, 0x08000 )
+ ROM_LOAD( "enhanced_103_opr-10188.71", 0x50000, 0x08000, CRC(37598616) SHA1(e7c8ae6c59742e1de7ec5a95c5aebfab5716d959) ) // unofficial replacement for factory defective opr-10188
+ ROM_RELOAD( 0x58000, 0x08000 )
+ROM_END
+
//*************************************************************************************************************************
// Outrun Deluxe (Japan)
// CPU: FD1089A
@@ -2867,3 +3000,8 @@ GAMEL(1989, toutrun2d, toutrun, outrun, toutrunct,segaorun_state,outrun, ROT0
GAME( 1987, shangon3d, shangon, shangon, shangon, segaorun_state,shangon, ROT0, "bootleg", "Super Hang-On (sitdown/upright) (bootleg of FD1089B 317-0034 set)", 0 )
+
+// aftermarket modifications, these fix various issues in the game, including making the attract mode work correctly when set to Free Play.
+// see http://reassembler.blogspot.co.uk/2011/08/outrun-enhanced-edition.html
+GAMEL(2013, outrundxeh, outrun, outrun, outrundx, segaorun_state,outrun, ROT0, "hack (Chris White)", "Out Run (deluxe sitdown) (Enhanced Edition v1.0.3)", 0, layout_outrun ) // Jan 2013
+GAMEL(2014, outruneh, outrun, outrun, outrun, segaorun_state,outrun, ROT0, "hack (Chris White)", "Out Run (sitdown/upright, Rev B) (Enhanced Edition v1.1.0)", 0, layout_outrun ) // Upright/Sitdown determined by dipswitch settings - July 2014