diff options
author | David Haywood <mamehaze@users.noreply.github.com> | 2015-09-28 23:43:29 +0100 |
---|---|---|
committer | David Haywood <mamehaze@users.noreply.github.com> | 2015-09-28 23:43:29 +0100 |
commit | 036c40ee0c6c8a17ba57569cf5c5e635f56b63d2 (patch) | |
tree | 44e40eb3d369426ee5976e4e444b2804097efa02 | |
parent | c400248728c831b2bcdca3382780a07422d025e5 (diff) |
process MASH / siftware submisisons, attempted to make a little less hacky (nw)
-rw-r--r-- | src/mame/arcade.lst | 5 | ||||
-rw-r--r-- | src/mame/drivers/route16.c | 65 | ||||
-rw-r--r-- | src/mame/drivers/scramble.c | 28 | ||||
-rw-r--r-- | src/mame/drivers/trackfld.c | 84 | ||||
-rw-r--r-- | src/mame/drivers/zaccaria.c | 6 | ||||
-rw-r--r-- | src/mame/includes/route16.h | 1 | ||||
-rw-r--r-- | src/mame/includes/scramble.h | 1 | ||||
-rw-r--r-- | src/mame/machine/scramble.c | 12 |
8 files changed, 176 insertions, 26 deletions
diff --git a/src/mame/arcade.lst b/src/mame/arcade.lst index 6e21dffdb03..9a4cb98d936 100644 --- a/src/mame/arcade.lst +++ b/src/mame/arcade.lst @@ -318,6 +318,7 @@ mariner // (c) 1981 Amenip mars // (c) 1981 Artic devilfsh // (c) 1982 Artic newsin7 // (c) 1983 ATW USA, Inc. +newsin7a // (c) 1982 ATW USA, Inc. mrkougar // (c) 1984 ATW mrkougar2 // (c) 1984 ATW mrkougb // bootleg @@ -6346,6 +6347,7 @@ trackfldc // GX361 (c) 1983 + Centuri license trackfldnz // (c) 1982 Goldberg Enterprizes Inc. hyprolym // GX361 (c) 1983 hyprolymb // bootleg +hyprolymba // bootleg atlantol // bootleg wizzquiz // (c) 1985 Konami wizzquiza // (c) 1985 Zilec-Zenitone @@ -9323,7 +9325,8 @@ spacecho // bootleg spacecho2 // bootleg route16 // (c) 1981 Tehkan/Sun + Centuri license route16a // (c) 1981 Tehkan/Sun + Centuri license -route16b // bootleg +route16c // (c) 1981 Tehkan/Sun + Centuri license +route16bl // bootleg routex // bootleg ttmahjng // Taito fnkyfish // (c) 1981 Sun Electronics diff --git a/src/mame/drivers/route16.c b/src/mame/drivers/route16.c index 93546a5fcda..0eb21c1a92e 100644 --- a/src/mame/drivers/route16.c +++ b/src/mame/drivers/route16.c @@ -669,7 +669,28 @@ MACHINE_CONFIG_END * *************************************/ -ROM_START( route16 ) + ROM_START( route16 ) + ROM_REGION( 0x10000, "cpu1", 0 ) + ROM_LOAD( "tvg54.a0", 0x0000, 0x0800, CRC(aef9ffc1) SHA1(178d23e4963336ded93c13cb17940a4ae98270c5) ) + ROM_LOAD( "tvg55.a1", 0x0800, 0x0800, CRC(389bc077) SHA1(b0606f6e647e81ceae7148bda96bd4673a51e823) ) + ROM_LOAD( "tvg56.a2", 0x1000, 0x0800, CRC(1065a468) SHA1(4a707a42fb5a718043c173cb98ff3523eb274ccc) ) + ROM_LOAD( "tvg57.a3", 0x1800, 0x0800, CRC(0b1987f3) SHA1(9b8abd6ec1ae15ca0d5e4de6b8a7ebf6c929d767) ) + ROM_LOAD( "tvg58.a4", 0x2000, 0x0800, CRC(f67d853a) SHA1(7479e84082e78f8670cc50858ce6a006d3063413) ) + ROM_LOAD( "tvg59.a5", 0x2800, 0x0800, CRC(d85cf758) SHA1(5af21250ee44ab1a43b844ede5a777a3d33b78b5) ) + + ROM_REGION( 0x10000, "cpu2", 0 ) + ROM_LOAD( "tvg60.b0", 0x0000, 0x0800, CRC(0f9588a7) SHA1(dfaffec4dbabd98cdc21a416bd2966d9d3ae6ad1) ) + ROM_LOAD( "tvg61.b1", 0x0800, 0x0800, CRC(2b326cf9) SHA1(c6602a9440a982c39f5836c6ab72283b6f9241be) ) + ROM_LOAD( "tvg62.b2", 0x1000, 0x0800, CRC(529cad13) SHA1(b533d20df1f2580e237c3d60bfe3483486ad9a48) ) + ROM_LOAD( "tvg63.b3", 0x1800, 0x0800, CRC(3bd8b899) SHA1(bc0c7909dbf5ea85eba5a1bb815fdd98c3aa794e) ) + + ROM_REGION( 0x0200, "proms", 0 ) + /* The upper 128 bytes are 0's, used by the hardware to blank the display */ + ROM_LOAD( "mb7052.59", 0x0000, 0x0100, CRC(08793ef7) SHA1(bfc27aaf25d642cd57c0fbe73ab575853bd5f3ca) ) /* top bitmap */ + ROM_LOAD( "mb7052.61", 0x0100, 0x0100, CRC(08793ef7) SHA1(bfc27aaf25d642cd57c0fbe73ab575853bd5f3ca) ) /* bottom bitmap */ +ROM_END + +ROM_START( route16c ) ROM_REGION( 0x10000, "cpu1", 0 ) ROM_LOAD( "route16.a0", 0x0000, 0x0800, CRC(8f9101bd) SHA1(b2c0156d41e295282387fb85fc272b031a6d1b64) ) ROM_LOAD( "route16.a1", 0x0800, 0x0800, CRC(389bc077) SHA1(b0606f6e647e81ceae7148bda96bd4673a51e823) ) @@ -711,7 +732,7 @@ ROM_START( route16a ) ROM_LOAD( "im5623.f12", 0x0100, 0x0100, CRC(08793ef7) SHA1(bfc27aaf25d642cd57c0fbe73ab575853bd5f3ca) ) /* bottom bitmap */ ROM_END -ROM_START( route16b ) +ROM_START( route16bl ) ROM_REGION( 0x10000, "cpu1", 0 ) ROM_LOAD( "rt16.0", 0x0000, 0x0800, CRC(b1f0f636) SHA1(f21915ed40ebdf64970fb7e3cd8071ebfc4aa0b5) ) ROM_LOAD( "rt16.1", 0x0800, 0x0800, CRC(3ec52fe5) SHA1(451969b5caedd665231ef78cf262679d6d4c8507) ) @@ -732,6 +753,8 @@ ROM_START( route16b ) ROM_LOAD( "im5623.f12", 0x0100, 0x0100, CRC(08793ef7) SHA1(bfc27aaf25d642cd57c0fbe73ab575853bd5f3ca) ) /* bottom bitmap */ ROM_END + + ROM_START( routex ) ROM_REGION( 0x10000, "cpu1", 0 ) ROM_LOAD( "routex01.a0", 0x0000, 0x0800, CRC(99b500e7) SHA1(2561c04a1425d7ac3309faf29fcfde63a0cda4da) ) @@ -938,6 +961,23 @@ READ8_MEMBER(route16_state::routex_prot_read) DRIVER_INIT_MEMBER(route16_state,route16) { UINT8 *ROM = memregion("cpu1")->base(); + /* TO DO : Replace these patches with simulation of the protection device */ + + /* patch the protection */ + ROM[0x0105] = 0x00; /* jp nz,$4109 (nirvana) - NOP's in route16c */ + ROM[0x0106] = 0x00; + ROM[0x0107] = 0x00; + + ROM[0x072a] = 0x00; /* jp nz,$4238 (nirvana) */ + ROM[0x072b] = 0x00; + ROM[0x072c] = 0x00; + + DRIVER_INIT_CALL(route16c); +} + +DRIVER_INIT_MEMBER(route16_state,route16c) +{ + UINT8 *ROM = memregion("cpu1")->base(); /* Is this actually a bootleg? some of the protection has been removed */ @@ -958,7 +998,7 @@ DRIVER_INIT_MEMBER(route16_state,route16a) /* patch the protection */ ROM[0x00e9] = 0x3a; - ROM[0x0105] = 0x00; /* jp nz,$4109 (nirvana) - NOP's in route16 */ + ROM[0x0105] = 0x00; /* jp nz,$4109 (nirvana) - NOP's in route16c */ ROM[0x0106] = 0x00; ROM[0x0107] = 0x00; @@ -973,6 +1013,8 @@ DRIVER_INIT_MEMBER(route16_state,route16a) + + /************************************* * * Game drivers @@ -981,12 +1023,15 @@ DRIVER_INIT_MEMBER(route16_state,route16a) GAME( 1981, route16, 0, route16, route16, route16_state, route16, ROT270, "Tehkan / Sun Electronics (Centuri license)", "Route 16 (set 1)", MACHINE_SUPPORTS_SAVE ) GAME( 1981, route16a, route16, route16, route16, route16_state, route16a, ROT270, "Tehkan / Sun Electronics (Centuri license)", "Route 16 (set 2)", MACHINE_SUPPORTS_SAVE ) -GAME( 1981, route16b, route16, route16, route16, driver_device, 0, ROT270, "bootleg", "Route 16 (bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1981, routex, route16, routex, route16, driver_device, 0, ROT270, "bootleg", "Route X (bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1980, speakres, 0, speakres, speakres, driver_device, 0, ROT270, "Sun Electronics", "Speak & Rescue", MACHINE_SUPPORTS_SAVE ) -GAME( 1980, speakresb,speakres, speakres, speakres, driver_device, 0, ROT270, "bootleg", "Speak & Rescue (bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1981, route16c, route16, route16, route16, route16_state, route16c, ROT270, "Tehkan / Sun Electronics (Centuri license)", "Route 16 (set 3, bootleg?)", MACHINE_SUPPORTS_SAVE ) // similar to set 1 but with some protection removed? +GAME( 1981, route16bl,route16, route16, route16, driver_device, 0, ROT270, "bootleg (Leisure and Allied)", "Route 16 (bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1981, routex, route16, routex, route16, driver_device, 0, ROT270, "bootleg", "Route X (bootleg)", MACHINE_SUPPORTS_SAVE ) + +GAME( 1980, speakres, 0, speakres, speakres, driver_device, 0, ROT270, "Sun Electronics", "Speak & Rescue", MACHINE_SUPPORTS_SAVE ) +GAME( 1980, speakresb,speakres, speakres, speakres, driver_device, 0, ROT270, "bootleg", "Speak & Rescue (bootleg)", MACHINE_SUPPORTS_SAVE ) GAME( 1980, stratvox, speakres, stratvox, stratvox, driver_device, 0, ROT270, "Sun Electronics (Taito license)", "Stratovox", MACHINE_SUPPORTS_SAVE ) -GAME( 1980, stratvoxb,speakres, stratvox, stratvox, driver_device, 0, ROT270, "bootleg", "Stratovox (bootleg)", MACHINE_SUPPORTS_SAVE ) -GAME( 1980, spacecho, speakres, spacecho, spacecho, driver_device, 0, ROT270, "bootleg (Gayton Games)", "Space Echo (set 1)", MACHINE_SUPPORTS_SAVE ) -GAME( 1980, spacecho2,speakres, spacecho, spacecho, driver_device, 0, ROT270, "bootleg (Gayton Games)", "Space Echo (set 2)", MACHINE_SUPPORTS_SAVE ) +GAME( 1980, stratvoxb,speakres, stratvox, stratvox, driver_device, 0, ROT270, "bootleg", "Stratovox (bootleg)", MACHINE_SUPPORTS_SAVE ) +GAME( 1980, spacecho, speakres, spacecho, spacecho, driver_device, 0, ROT270, "bootleg (Gayton Games)", "Space Echo (set 1)", MACHINE_SUPPORTS_SAVE ) +GAME( 1980, spacecho2,speakres, spacecho, spacecho, driver_device, 0, ROT270, "bootleg (Gayton Games)", "Space Echo (set 2)", MACHINE_SUPPORTS_SAVE ) + GAME( 1981, ttmahjng, 0, ttmahjng, ttmahjng, driver_device, 0, ROT0, "Taito", "T.T Mahjong", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/drivers/scramble.c b/src/mame/drivers/scramble.c index fd3730d2aff..1e6f43f4a14 100644 --- a/src/mame/drivers/scramble.c +++ b/src/mame/drivers/scramble.c @@ -191,7 +191,7 @@ static ADDRESS_MAP_START( newsin7_map, AS_PROGRAM, 8, scramble_state ) AM_RANGE(0x5080, 0x50ff) AM_RAM AM_RANGE(0x6800, 0x6800) AM_WRITE(galaxold_coin_counter_1_w) AM_RANGE(0x6801, 0x6801) AM_WRITE(galaxold_stars_enable_w) - AM_RANGE(0x6802, 0x6802) AM_WRITE(galaxold_nmi_enable_w) + //AM_RANGE(0x6802, 0x6802) AM_WRITE(galaxold_nmi_enable_w) AM_RANGE(0x6808, 0x6808) AM_WRITE(galaxold_coin_counter_0_w) AM_RANGE(0x6809, 0x6809) AM_WRITE(galaxold_flip_screen_x_w) AM_RANGE(0x680b, 0x680b) AM_WRITE(galaxold_flip_screen_y_w) @@ -1451,6 +1451,7 @@ static MACHINE_CONFIG_DERIVED( newsin7, scramble ) /* basic machine hardware */ MCFG_CPU_MODIFY("maincpu") MCFG_CPU_PROGRAM_MAP(newsin7_map) + MCFG_CPU_VBLANK_INT_DRIVER("screen", scramble_state, irq0_line_hold) // newsin7a has a corrupt opcode at 0x67, the irq routine instead of NMI avoids it by jumping to 0x68 after doing some other things, probably intentional. newsin7 has this fixed, maybe a bootleg? /* video hardware */ MCFG_GFXDECODE_MODIFY("gfxdecode", newsin7) @@ -1902,6 +1903,28 @@ ROM_START( newsin7 ) ROM_LOAD( "newsin.6", 0x0000, 0x0020, CRC(5cf2cd8d) SHA1(0c85737add75545ab11aaf64fe37c7bd078308c9) ) ROM_END +ROM_START( newsin7a ) + ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_LOAD( "epr2732-1.u26", 0x0000, 0x1000, CRC(67bd4b05) SHA1(a3e397fe0b9baba48fa876c9cf53319f5c7c73f6) ) + ROM_LOAD( "epr2732-2.u56", 0x1000, 0x1000, CRC(93ac59de) SHA1(8eed2bab741ca3d0deeeaede22547ebe90b46a46) ) + ROM_LOAD( "epr2732-3.u69", 0x2000, 0x1000, CRC(6a778d95) SHA1(bf94017f06e7029a8a70e7b7ae741f7eac9d3e07) ) + ROM_LOAD( "epr2732-4.u98", 0x3000, 0x1000, CRC(7f351640) SHA1(5db70661c75f125eb531e84df66d0127c29cb821) ) + ROM_LOAD( "epr2732-5.u114", 0xa000, 0x1000, CRC(06275d59) SHA1(a5a5436c0b014af06181eeb044d8c4e3188414ea) ) + + ROM_REGION( 0x10000, "audiocpu", 0 ) + ROM_LOAD( "epr2716.u39", 0x0000, 0x0800, CRC(d88489a2) SHA1(ab10fd4862129824301a0a847de298f1826aa03e) ) + ROM_LOAD( "epr2716.u51", 0x0800, 0x0800, CRC(b154a7af) SHA1(91ca28b2530f22786ff581e5710b40f0cf99f516) ) + ROM_LOAD( "epr2716.u78", 0x1000, 0x0800, CRC(7ade709b) SHA1(bda1401172139cd6e3e03424c56e4f59e5afebd5) ) /* u78 socket was empty, using the newsin7 one */ + + ROM_REGION( 0x3000, "gfx1", 0 ) + ROM_LOAD( "epr2732-7.db", 0x2000, 0x1000, CRC(6bc5d64f) SHA1(4f52224a4d5294a7487a1fc55eba13cf0b5fb6af) ) + ROM_LOAD( "epr2732-6.u133", 0x1000, 0x1000, CRC(0c5b895a) SHA1(994ad7f051b30a3045ffc08ac8d9d7092fbadef3) ) + ROM_LOAD( "epr2732-8.db", 0x0000, 0x1000, CRC(6b87adff) SHA1(c0943832e498ab04978b11b163ba951d4a7e2e60) ) + + ROM_REGION( 0x0020, "proms", 0 ) + ROM_LOAD( "prom.u59", 0x0000, 0x0020, CRC(16cb5f4e) SHA1(36753611808d245d4f3ee55f71394297dd2afc09) ) /* Slightly different color prom */ +ROM_END + ROM_START( mrkougar ) ROM_REGION( 0x10000, "maincpu", 0 ) ROM_LOAD( "2732-7.bin", 0x0000, 0x1000, CRC(fd060ffb) SHA1(b3bee6fe879f13f3178bef3b2dff3041e698f061) ) @@ -2272,7 +2295,8 @@ GAME( 1981, mars, 0, mars, mars, scramble_state, mars, GAME( 1982, devilfsh, 0, devilfsh, devilfsh, scramble_state, devilfsh, ROT90, "Artic", "Devil Fish", MACHINE_SUPPORTS_SAVE ) -GAME( 1983, newsin7, 0, newsin7, newsin7, scramble_state, mars, ROT90, "ATW USA, Inc.", "New Sinbad 7", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, newsin7, 0, newsin7, newsin7, scramble_state, mars, ROT90, "ATW USA, Inc.", "New Sinbad 7 (set 1)", MACHINE_SUPPORTS_SAVE ) +GAME( 1982, newsin7a, newsin7, newsin7, newsin7, scramble_state, newsin7a, ROT90, "ATW USA, Inc", "New Sinbad 7 (set 2)", MACHINE_SUPPORTS_SAVE ) GAME( 1984, mrkougar, 0, mrkougar, mrkougar, scramble_state, mrkougar, ROT90, "ATW", "Mr. Kougar", MACHINE_SUPPORTS_SAVE ) GAME( 1983, mrkougar2,mrkougar, mrkougar, mrkougar, scramble_state, mrkougar, ROT90, "ATW", "Mr. Kougar (earlier)", MACHINE_SUPPORTS_SAVE ) diff --git a/src/mame/drivers/trackfld.c b/src/mame/drivers/trackfld.c index 37514468087..86199b663c3 100644 --- a/src/mame/drivers/trackfld.c +++ b/src/mame/drivers/trackfld.c @@ -1168,9 +1168,62 @@ ROM_START( hyprolym ) /* GX361 */ ROM_LOAD( "c9_d15.bin", 0x0000, 0x2000, CRC(f546a56b) SHA1(caee3d8546eb7a75ce2a578c6a1a630246aec6b8) ) /* 361-d15.c09 */ ROM_END +// main program code on this set is IDENTICAL to the original hyprolym +// audio hardware is changed significantly ROM_START( hyprolymb ) /* These ROM's are located on the CPU/Video Board */ ROM_REGION( 0x10000, "maincpu", 0 ) /* 64k for code + 64k for decrypted opcodes */ + ROM_LOAD( "blue.a1", 0x6000, 0x2000, CRC(82257fb7) SHA1(4a5038292e582d5c3b5f2d82b01c57ccb24f3095) ) + ROM_LOAD( "2.a2", 0x8000, 0x2000, CRC(15b83099) SHA1(79827590d74f20c9a95723e06b05af2b15c34f5f) ) + ROM_LOAD( "3.a4", 0xa000, 0x2000, CRC(2d6fc308) SHA1(1ff95384670e40d560703f2238998a8e154aa4cf) ) + ROM_LOAD( "4.a5", 0xc000, 0x2000, CRC(d099b1e8) SHA1(0472991ad6caef41ec6b8ec8bf3d9d07584a57cc) ) + ROM_LOAD( "5.a7", 0xe000, 0x2000, CRC(974ff815) SHA1(11512df2008a79ba44bbb84bd70885f187113211) ) + + /* These ROM's are located on the Sound Board */ + ROM_REGION( 0x10000, "audiocpu", 0 ) + ROM_LOAD( "c2_d13.bin", 0x0000, 0x2000, CRC(95bf79b6) SHA1(ea9135acd7ad162c19c5cdde356e69792d61b675) ) + + /* These ROM's are located on the Sound Board */ + ROM_REGION( 0x10000, "adpcm", 0 ) /* 64k for the 6802 which plays ADPCM samples */ + ROM_LOAD( "2764.1", 0x8000, 0x2000, CRC(a4cddeb8) SHA1(057981ad3b04239662bb19342e9ec14b0dab2351) ) + ROM_LOAD( "2764.2", 0xa000, 0x2000, CRC(e9919365) SHA1(bd11d6e3ee2c6e698159c2768e315389d666107f) ) + ROM_LOAD( "2764.3", 0xc000, 0x2000, CRC(c3ec42e1) SHA1(048a95726c4f031552e629c3788952c1bc5e7251) ) + ROM_LOAD( "2764.4", 0xe000, 0x2000, CRC(76998389) SHA1(499189b0e20296af88712199b93b958655083608) ) + + /* These ROM's are located on the CPU/Video Board */ + ROM_REGION( 0x8000, "gfx1", 0 ) + ROM_LOAD( "6.a18", 0x0000, 0x2000, CRC(82e2185a) SHA1(1da9ea20e7af0b49c62fb39834a7ec686491af04) ) + ROM_LOAD( "7.a19", 0x2000, 0x2000, CRC(800ff1f1) SHA1(33d73b18903e3e6bfb30f1a06db4b8105d4040d8) ) + ROM_LOAD( "8.a21", 0x4000, 0x2000, CRC(d9faf183) SHA1(4448b6242790783d37acf50704d597af5878c2ab) ) + ROM_LOAD( "9.a22", 0x6000, 0x2000, CRC(5886c802) SHA1(884a12a8f63600da4f23b29be6dbaacef37add20) ) + + /* These ROM's are located on the CPU/Video Board */ + ROM_REGION( 0x6000, "gfx2", 0 ) + ROM_LOAD( "12.h22", 0x0000, 0x2000, CRC(768bb63d) SHA1(effc46615c389245e5a4aac18292e1d764ff0e46) ) + ROM_LOAD( "11.h21", 0x2000, 0x2000, CRC(3af0e2a8) SHA1(450f35fd7e45ecc88ee80bf57499b2e9f06f6487) ) + ROM_LOAD( "10.h19", 0x4000, 0x2000, CRC(c2166a5c) SHA1(5ba25900e653ce4edcf35f1fbce758a327a715ce) ) + + /* These PROM's are located on the CPU/Video Board */ + ROM_REGION( 0x0220, "proms", 0 ) + ROM_LOAD( "361b16.e1", 0x0000, 0x0020, CRC(d55f30b5) SHA1(4d6a851f4886778307f75771645078b97ad55f5f) ) /* palette */ + ROM_LOAD( "361b17.b15", 0x0020, 0x0100, CRC(d2ba4d32) SHA1(894b5cedf01ba9225a0d6215291857e455b84903) ) /* sprite lookup table */ + ROM_LOAD( "361b18.f22", 0x0120, 0x0100, CRC(053e5861) SHA1(6740a62cf7b6938a4f936a2fed429704612060a5) ) /* char lookup table */ + + /* These PAL's are located on the CPU/Video Board */ + ROM_REGION( 0x0400, "plds", 0 ) + ROM_LOAD( "pal16l8.e4", 0x0000, 0x0104, CRC(641efc84) SHA1(d031b033d23d50a5f708f630945602e61d52d1e4) ) + ROM_LOAD( "pal16l8.e6", 0x0200, 0x0104, CRC(122f23e6) SHA1(d178510843a46f043ecafaa44d95bb590ad67fb0) ) +ROM_END + +/* +this set (which has been supported for longer than the above) has +67F8: $F8 instead of $E8 +6D19: $F4 instead of $E4 +which differs from all other sets, is it an intentional change or a bad dump? (I can't find any reports of issues with this set) +*/ +ROM_START( hyprolymba ) + /* These ROM's are located on the CPU/Video Board */ + ROM_REGION( 0x10000, "maincpu", 0 ) /* 64k for code + 64k for decrypted opcodes */ ROM_LOAD( "1.a1", 0x6000, 0x2000, CRC(9aee2d5a) SHA1(81f151459f1113b5f2f76ddc140bf86676f778e4) ) ROM_LOAD( "2.a2", 0x8000, 0x2000, CRC(15b83099) SHA1(79827590d74f20c9a95723e06b05af2b15c34f5f) ) ROM_LOAD( "3.a4", 0xa000, 0x2000, CRC(2d6fc308) SHA1(1ff95384670e40d560703f2238998a8e154aa4cf) ) @@ -1208,9 +1261,9 @@ ROM_START( hyprolymb ) ROM_LOAD( "361b18.f22", 0x0120, 0x0100, CRC(053e5861) SHA1(6740a62cf7b6938a4f936a2fed429704612060a5) ) /* char lookup table */ /* These PAL's are located on the CPU/Video Board */ - ROM_REGION( 0x0002, "plds", 0 ) - ROM_LOAD( "pal16l8.bin", 0x0000, 0x0001, NO_DUMP ) /* Located at 4E. */ - ROM_LOAD( "pal16l8.bin", 0x0000, 0x0001, NO_DUMP ) /* Located at 6E. */ + ROM_REGION( 0x0400, "plds", 0 ) + ROM_LOAD( "pal16l8.e4", 0x0000, 0x0104, CRC(641efc84) SHA1(d031b033d23d50a5f708f630945602e61d52d1e4) ) + ROM_LOAD( "pal16l8.e6", 0x0200, 0x0104, CRC(122f23e6) SHA1(d178510843a46f043ecafaa44d95bb590ad67fb0) ) ROM_END ROM_START( atlantol ) @@ -1488,14 +1541,19 @@ DRIVER_INIT_MEMBER(trackfld_state,wizzquiz) } -GAME( 1983, trackfld, 0, trackfld, trackfld, trackfld_state, trackfld, ROT0, "Konami", "Track & Field", MACHINE_SUPPORTS_SAVE ) -GAME( 1983, trackfldc, trackfld, trackfld, trackfld, trackfld_state, trackfld, ROT0, "Konami (Centuri license)", "Track & Field (Centuri)", MACHINE_SUPPORTS_SAVE ) -GAME( 1983, hyprolym, trackfld, trackfld, trackfld, trackfld_state, trackfld, ROT0, "Konami", "Hyper Olympic", MACHINE_SUPPORTS_SAVE ) -GAME( 1983, hyprolymb, trackfld, hyprolyb, trackfld, trackfld_state, trackfld, ROT0, "bootleg", "Hyper Olympic (bootleg)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) -GAME( 1996, atlantol, trackfld, atlantol, atlantol, trackfld_state, atlantol, ROT0, "bootleg", "Atlant Olimpic", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, trackfld, 0, trackfld, trackfld, trackfld_state, trackfld, ROT0, "Konami", "Track & Field", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, trackfldc, trackfld, trackfld, trackfld, trackfld_state, trackfld, ROT0, "Konami (Centuri license)", "Track & Field (Centuri)", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, hyprolym, trackfld, trackfld, trackfld, trackfld_state, trackfld, ROT0, "Konami", "Hyper Olympic", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, hyprolymb, trackfld, hyprolyb, trackfld, trackfld_state, trackfld, ROT0, "bootleg", "Hyper Olympic (bootleg, set 1)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 1983, hyprolymba,trackfld, hyprolyb, trackfld, trackfld_state, trackfld, ROT0, "bootleg", "Hyper Olympic (bootleg, set 2)", MACHINE_IMPERFECT_SOUND | MACHINE_SUPPORTS_SAVE ) +GAME( 1996, atlantol, trackfld, atlantol, atlantol, trackfld_state, atlantol, ROT0, "bootleg", "Atlant Olimpic", MACHINE_SUPPORTS_SAVE ) GAME( 1982, trackfldnz,trackfld, trackfld, trackfld, trackfld_state, trackfld, ROT0, "bootleg? (Goldberg Enterprizes Inc.)", "Track & Field (NZ bootleg?)", MACHINE_NOT_WORKING) -GAME( 1988, mastkin, 0, mastkin, mastkin, trackfld_state, mastkin, ROT0, "Du Tech", "The Masters of Kin", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) -GAME( 1985, wizzquiz, 0, wizzquiz, wizzquiz, trackfld_state, wizzquiz, ROT0, "Zilec-Zenitone (Konami license)", "Wizz Quiz (Konami version)", MACHINE_SUPPORTS_SAVE ) -GAME( 1985, wizzquiza, wizzquiz, wizzquiz, wizzquiz, trackfld_state, wizzquiz, ROT0, "Zilec-Zenitone", "Wizz Quiz (version 4)", MACHINE_SUPPORTS_SAVE ) -GAME( 1987, reaktor, 0, reaktor, reaktor, driver_device, 0, ROT90, "Zilec", "Reaktor (Track & Field conversion)", MACHINE_SUPPORTS_SAVE ) -GAME( 1985, yieartf, yiear, yieartf, yieartf, driver_device, 0, ROT0, "Konami", "Yie Ar Kung-Fu (GX361 conversion)", MACHINE_SUPPORTS_SAVE ) // the conversion looks of bootleg quality, but the code is clearly a very different revision to either original hardware set... + +GAME( 1988, mastkin, 0, mastkin, mastkin, trackfld_state, mastkin, ROT0, "Du Tech", "The Masters of Kin", MACHINE_WRONG_COLORS | MACHINE_SUPPORTS_SAVE ) + +GAME( 1985, wizzquiz, 0, wizzquiz, wizzquiz, trackfld_state, wizzquiz, ROT0, "Zilec-Zenitone (Konami license)", "Wizz Quiz (Konami version)", MACHINE_SUPPORTS_SAVE ) +GAME( 1985, wizzquiza, wizzquiz, wizzquiz, wizzquiz, trackfld_state, wizzquiz, ROT0, "Zilec-Zenitone", "Wizz Quiz (version 4)", MACHINE_SUPPORTS_SAVE ) + +GAME( 1987, reaktor, 0, reaktor, reaktor, driver_device, 0, ROT90, "Zilec", "Reaktor (Track & Field conversion)", MACHINE_SUPPORTS_SAVE ) + +GAME( 1985, yieartf, yiear, yieartf, yieartf, driver_device, 0, ROT0, "Konami", "Yie Ar Kung-Fu (GX361 conversion)", MACHINE_SUPPORTS_SAVE ) // the conversion looks of bootleg quality, but the code is clearly a very different revision to either original hardware set... diff --git a/src/mame/drivers/zaccaria.c b/src/mame/drivers/zaccaria.c index 0c147fd489b..e7074ea928b 100644 --- a/src/mame/drivers/zaccaria.c +++ b/src/mame/drivers/zaccaria.c @@ -686,6 +686,12 @@ ROM_START( jackrabt2 ) ROM_REGION( 0x0400, "proms", 0 ) ROM_LOAD( "jr-ic9g", 0x0000, 0x0200, CRC(85577107) SHA1(76575fa68b66130b18dfe7374d1a03740963cc73) ) ROM_LOAD( "jr-ic9f", 0x0200, 0x0200, CRC(085914d1) SHA1(3d6f9318f5a9f08ce89e4184e3efb9881f671fa7) ) + + ROM_REGION( 0x0600, "plds", 0 ) + ROM_LOAD( "pal16l8.6j", 0x0000, 0x0104, CRC(a88e52d6) SHA1(32efecb91843d5d1bdace86cbcc94ebacf1b9389) ) + ROM_LOAD( "pal16l8.6k", 0x0200, 0x0104, NO_DUMP ) + ROM_LOAD( "82s100.8c", 0x0400, 0x00f5, CRC(70ddfa6d) SHA1(904347cc63e88413c393f14b5f1260a57ab72677) ) + ROM_LOAD( "82s100.8n", 0x0500, 0x00f5, CRC(e00625ee) SHA1(88bbd020be67355dc0eb58b79f7deb77cbe505bb) ) ROM_END ROM_START( jackrabts ) diff --git a/src/mame/includes/route16.h b/src/mame/includes/route16.h index 74d87db9bda..acc2c7ea9db 100644 --- a/src/mame/includes/route16.h +++ b/src/mame/includes/route16.h @@ -38,6 +38,7 @@ public: DECLARE_DRIVER_INIT(route16); DECLARE_DRIVER_INIT(route16a); + DECLARE_DRIVER_INIT(route16c); DECLARE_MACHINE_START(speakres); DECLARE_MACHINE_START(ttmahjng); virtual void video_start(); diff --git a/src/mame/includes/scramble.h b/src/mame/includes/scramble.h index de9742241d6..b5d65e4b258 100644 --- a/src/mame/includes/scramble.h +++ b/src/mame/includes/scramble.h @@ -72,6 +72,7 @@ public: DECLARE_DRIVER_INIT(devilfsh); DECLARE_DRIVER_INIT(mrkougar); DECLARE_DRIVER_INIT(harem); + DECLARE_DRIVER_INIT(newsin7a); DECLARE_DRIVER_INIT(scobra); DECLARE_DRIVER_INIT(stratgyx); diff --git a/src/mame/machine/scramble.c b/src/mame/machine/scramble.c index 618f23f5ae1..b516c8adbd0 100644 --- a/src/mame/machine/scramble.c +++ b/src/mame/machine/scramble.c @@ -681,3 +681,15 @@ DRIVER_INIT_MEMBER(scramble_state,harem) save_item(NAME(m_harem_decrypt_clk)); save_item(NAME(m_harem_decrypt_count)); } + +DRIVER_INIT_MEMBER(scramble_state,newsin7a) +{ + DRIVER_INIT_CALL(devilfsh); // decrypt + +// UINT8 *ROM = memregion("maincpu")->base(); +// ROM[0x0067] ^= 0x22; /* rst $00 - should be push hl - the NMI routine is corrupt in this set, but the IRQ routine bypasses it? intentional? */ + + // attempts to access port at c20x instead of 820x in one location, mirror or bitrot? + m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0xc200, 0xc20f, read8_delegate(FUNC(scramble_state::mars_ppi8255_1_r),this), write8_delegate(FUNC(scramble_state::mars_ppi8255_1_w),this)); + +} |