diff options
Diffstat (limited to 'src/mame/drivers/cps1.cpp')
-rw-r--r-- | src/mame/drivers/cps1.cpp | 88 |
1 files changed, 44 insertions, 44 deletions
diff --git a/src/mame/drivers/cps1.cpp b/src/mame/drivers/cps1.cpp index 0bbbc8dc8b5..b3ff0541096 100644 --- a/src/mame/drivers/cps1.cpp +++ b/src/mame/drivers/cps1.cpp @@ -10391,43 +10391,43 @@ ROM_END /* 05/13/92 MSTREET-6 - - There are quite a few variations of this board. The main differences seem to be the amount and size of roms around the 68k. - Some variations have an additional "patch" rom and palce or gal that patches various chunks of code over the main program roms. - This adds the usual "rainbow edition" style gameplay hacks, such as air fireballs, change character mid-game, etc. - The boards can be run without the patch rom by removing it and the pal/gal and linking pins 1-19, 2-18, 11-16 of the empty gal socket. - (There is also a jumper that can be soldered instead for the third connection.) - - Luckily one of my boards has an unprotected gal so I was able to decode the rom patching: - - patch rom program space - -------------------------------------- - 0x00000-0x07fff -> 0x000000-0x007fff - 0x08000-0x27fff -> 0x030000-0x04ffff - 0x28000-0x37fff -> 0x170000-0x17ffff - - Gfx: - There are six 8Mbit roms which match the official sf2ce set almost exactly (7 bytes diff in one rom). - There are also another two 2Mbit roms which contain very near identical data. - Not sure why the bootleg hardware needs this or how it should be represented in emulation. - There is also a 512Kbit rom that's purpose is unknown (possibly related to priority according to notes in other bootleg sets). - - Sound: - YM2151 is clone marked "KA51". + + There are quite a few variations of this board. The main differences seem to be the amount and size of roms around the 68k. + Some variations have an additional "patch" rom and palce or gal that patches various chunks of code over the main program roms. + This adds the usual "rainbow edition" style gameplay hacks, such as air fireballs, change character mid-game, etc. + The boards can be run without the patch rom by removing it and the pal/gal and linking pins 1-19, 2-18, 11-16 of the empty gal socket. + (There is also a jumper that can be soldered instead for the third connection.) + + Luckily one of my boards has an unprotected gal so I was able to decode the rom patching: + + patch rom program space + -------------------------------------- + 0x00000-0x07fff -> 0x000000-0x007fff + 0x08000-0x27fff -> 0x030000-0x04ffff + 0x28000-0x37fff -> 0x170000-0x17ffff + + Gfx: + There are six 8Mbit roms which match the official sf2ce set almost exactly (7 bytes diff in one rom). + There are also another two 2Mbit roms which contain very near identical data. + Not sure why the bootleg hardware needs this or how it should be represented in emulation. + There is also a 512Kbit rom that's purpose is unknown (possibly related to priority according to notes in other bootleg sets). + + Sound: + YM2151 is clone marked "KA51". YM3012 is clone marked "KA12". - MSM6295 is clone marked "TD735". - - Other: - All roms have nonsense markings such as KM418C256, KM416C256 etc. - Obviously they are not Samsung soj/tsop FPM DRAMs ;) - Main clock is 10MHz, rather than usual 12MHZ for champion edition. - Sets b and c: - Turbo mode on SW(C):1. - Press start to change character mid-game. (bug: screen goes dark when changing character, happens in attract mode as well). + MSM6295 is clone marked "TD735". + + Other: + All roms have nonsense markings such as KM418C256, KM416C256 etc. + Obviously they are not Samsung soj/tsop FPM DRAMs ;) + Main clock is 10MHz, rather than usual 12MHZ for champion edition. + Sets b and c: + Turbo mode on SW(C):1. + Press start to change character mid-game. (bug: screen goes dark when changing character, happens in attract mode as well). */ ROM_START( sf2cems6a ) /* 920313 USA (this set matches "sf2ceuab4" in FBA) */ - ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68k code */ + ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68k code */ ROM_LOAD16_WORD_SWAP( "ms6.u196", 0x000000, 0x100000, CRC(596609d4) SHA1(4d876e6e44554eccbd0c5ea2d2d09e5024af0f9f) ) // == sf2m3: u196chp + u222chp (interleaved) ROM_LOAD16_WORD_SWAP( "ms6.u10", 0x100000, 0x80000, CRC(ed4186bd) SHA1(f3dfe91d8f4384275190b0d86488843c1161d86f) ) // == sf2ce: s92_21a.6f 1st half doubled, also == sf2dkot2: turboii.21 @@ -10450,25 +10450,25 @@ ROM_START( sf2cems6a ) /* 920313 USA (this set matches "sf2ceuab4" in FBA) */ ROM_CONTINUE( 0x400004, 0x20000 ) // 1st half == ms6.u19 0x00000-0x20000, 2nd half == ms6.u19 0x80000-0xa0000 ROMX_LOAD( "ms6.u29", 0x400002, 0x20000, CRC(e4eca601) SHA1(acee4988f12a037a3b50f3923892fdac65f35805), ROM_GROUPWORD | ROM_SKIP(6) ) // == sf2m8: yyc-8.9 + yyc-9.8 (interleaved) ROM_CONTINUE( 0x400006, 0x20000 ) // 1st half != ms6.u18 0x00000-0x20000 (4 bytes diff), 2nd half == ms6.u18 0x80000-0xa0000 - + ROM_REGION( 0x18000, "audiocpu", 0 ) /* z80 code */ ROM_LOAD( "ms6.u191", 0x00000, 0x08000, CRC(08f6b60e) SHA1(8258fcaca4ac419312531eec67079b97f471179c) ) // == sf2ce: s92_09.11a ROM_CONTINUE( 0x10000, 0x08000 ) ROM_REGION( 0x40000, "oki", 0 ) /* samples */ ROM_LOAD( "ms6.u210", 0x00000, 0x40000, CRC(6cfffb11) SHA1(995526183ffd35f92e9096500a3fe6237faaa2dd) ) // == sf2ce: s92_18.11c + s92_19.12c, also == sf2amf2: fun-u210.bin, sf2rules: voice.u210, sf2m8: b-16.6 - + ROM_REGION( 0x10000, "user1", 0 ) /* unknown, priority? */ ROM_LOAD( "ms6.u133", 0x00000, 0x10000, CRC(13ea1c44) SHA1(5b05fe4c3920e33d94fac5f59e09ff14b3e427fe) ) // == loads other bootleg sets ROM_END ROM_START( sf2cems6b ) /* 920322 USA */ - ROM_REGION( 0x40000, "patch", 0 ) /* patch rom */ + ROM_REGION( 0x40000, "patch", 0 ) /* patch rom */ ROM_LOAD16_WORD_SWAP( "ms6b.u0", 0x00000, 0x40000, CRC(b6f3724b) SHA1(aa8eea819fdaf205ca068067a4624715a8cf6c8c) ) - + ROM_REGION( 0x0200, "patchpld", 0 ) /* patch pld gal16v8 */ ROM_LOAD( "ms6b.44", 0x0000, 0x0117, CRC(8ceec769) SHA1(d646ed075182f3724c0c581065665b1c99ce180d) ) - + ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68k code */ ROM_LOAD16_WORD_SWAP( "ms6b.u196", 0x000000, 0x100000, CRC(435153d5) SHA1(3f6f318a9b3def8d62ee576dbaaef623d55c1c64) ) ROM_LOAD16_WORD_SWAP( "ms6b.u10", 0x100000, 0x40000, CRC(c812b7b2) SHA1(23ed0e1bd8b2015b39ad5e452dff0e372df0d5c9) ) @@ -10501,22 +10501,22 @@ ROM_START( sf2cems6b ) /* 920322 USA */ ROM_REGION( 0x40000, "oki", 0 ) /* samples */ ROM_LOAD( "ms6.u210", 0x00000, 0x40000, CRC(6cfffb11) SHA1(995526183ffd35f92e9096500a3fe6237faaa2dd) ) - + ROM_REGION( 0x10000, "user1", 0 ) /* unknown, priority? */ ROM_LOAD( "ms6.u133", 0x00000, 0x10000, CRC(13ea1c44) SHA1(5b05fe4c3920e33d94fac5f59e09ff14b3e427fe) ) ROM_END ROM_START( sf2cems6c ) /* 920322 USA */ - ROM_REGION( 0x40000, "patch", 0 ) /* patch rom */ + ROM_REGION( 0x40000, "patch", 0 ) /* patch rom */ ROM_LOAD16_WORD_SWAP( "ms6c.u0", 0x00000, 0x40000, CRC(04088b61) SHA1(03c361a0c9c70c21ef53351d5f975b06f51ce2e0) ) - + ROM_REGION( 0x0200, "patchpld", 0 ) /* patch pld palce16v8, protected, using gal dump from sf2cems6b */ ROM_LOAD( "ms6b.44", 0x0000, 0x0117, CRC(8ceec769) SHA1(d646ed075182f3724c0c581065665b1c99ce180d) ) - + ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68k code */ ROM_LOAD16_WORD_SWAP( "ms6b.u196", 0x000000, 0x100000, CRC(435153d5) SHA1(3f6f318a9b3def8d62ee576dbaaef623d55c1c64) ) ROM_LOAD16_WORD_SWAP( "ms6b.u10", 0x100000, 0x40000, CRC(c812b7b2) SHA1(23ed0e1bd8b2015b39ad5e452dff0e372df0d5c9) ) - + ROM_COPY( "patch", 0x00000, 0x000000, 0x8000 ) ROM_COPY( "patch", 0x08000, 0x030000, 0x20000 ) ROM_COPY( "patch", 0x28000, 0x170000, 0x10000 ) @@ -10545,7 +10545,7 @@ ROM_START( sf2cems6c ) /* 920322 USA */ ROM_REGION( 0x40000, "oki", 0 ) /* samples */ ROM_LOAD( "ms6.u210", 0x00000, 0x40000, CRC(6cfffb11) SHA1(995526183ffd35f92e9096500a3fe6237faaa2dd) ) - + ROM_REGION( 0x10000, "user1", 0 ) /* unknown, priority? */ ROM_LOAD( "ms6.u133", 0x00000, 0x10000, CRC(13ea1c44) SHA1(5b05fe4c3920e33d94fac5f59e09ff14b3e427fe) ) ROM_END |