From 167cfae0177d0ae0abab0a26766247cf740a6c67 Mon Sep 17 00:00:00 2001 From: David Haywood Date: Sat, 15 Aug 2015 22:50:46 +0100 Subject: [PATCH] new clones Fighter's History (US ver 42-09, DE-0396-0 PCB) [Brian Troha, The Dumping Union] seems to be the newest revision, uses a Z80 as a sound CPU instead of the HuC6280, like several games seems to miss sound commands sometimes (I tried using the more complex assert_line hookup in here that nslashers uses and it made it worse) --- src/mame/arcade.lst | 5 ++- src/mame/drivers/deco32.c | 89 ++++++++++++++++++++++++++++++++++++--- 2 files changed, 85 insertions(+), 9 deletions(-) diff --git a/src/mame/arcade.lst b/src/mame/arcade.lst index 7715720bb3f..ae1f0edc5b3 100644 --- a/src/mame/arcade.lst +++ b/src/mame/arcade.lst @@ -6144,10 +6144,11 @@ ragtimea // MBD (c) 1992 (Japan, v1.3) dblewing // MBE (c) 1993 Mitchell fghthist // MBF (c) 1993 Data East Corporation (World) DE-0380-2 PCB fghthista // MBF (c) 1993 Data East Corporation (World) DE-0380-2 PCB -fghthistu // MBF (c) 1993 Data East Corporation (US) DE-0395-1 PCB +fghthistu // MBF (c) 1993 Data East Corporation (US) DE-0396-0 PCB fghthistua // MBF (c) 1993 Data East Corporation (US) DE-0395-1 PCB +fghthistub // MBF (c) 1993 Data East Corporation (US) DE-0395-1 PCB +fghthistuc // MBF (c) 1993 Data East Corporation (US) DE-0380-2 PCB fghthistj // MBF (c) 1993 Data East Corporation (Japan) DE-0395-1 PCB -fghthistub // MBF (c) 1993 Data East Corporation (US) DE-0380-2 PCB fghthistja // MBF (c) 1993 Data East Corporation (Japan) DE-0380-2 PCB fghthistjb // MBF (c) 1993 Data East Corporation (Japan) DE-0380-1 PCB hvysmsh // MBG (c) 1993 Data East Corporation (World) diff --git a/src/mame/drivers/deco32.c b/src/mame/drivers/deco32.c index a069152efc8..34d9102f847 100644 --- a/src/mame/drivers/deco32.c +++ b/src/mame/drivers/deco32.c @@ -309,6 +309,8 @@ WRITE32_MEMBER(deco32_state::sound_w) m_audiocpu->set_input_line(0, HOLD_LINE); } + + void deco32_state::deco32_sound_cb( address_space &space, UINT16 data, UINT16 mem_mask ) { soundlatch_byte_w(space,0,data & 0xff); @@ -1949,6 +1951,31 @@ static MACHINE_CONFIG_START( fghthsta, deco32_state ) /* DE-0395-1 PCB */ MCFG_SOUND_ROUTE(ALL_OUTPUTS, "rspeaker", 0.35) MACHINE_CONFIG_END +static MACHINE_CONFIG_DERIVED( fghthistz, fghthsta ) + MCFG_DEVICE_REMOVE("audiocpu") + + MCFG_CPU_ADD("audiocpu", Z80, 32220000/9) + MCFG_CPU_PROGRAM_MAP(nslasher_sound) + MCFG_CPU_IO_MAP(nslasher_io_sound) + + MCFG_SOUND_MODIFY("ymsnd") + //MCFG_YM2151_IRQ_HANDLER(WRITELINE(deco32_state,sound_irq_nslasher)) + MCFG_YM2151_IRQ_HANDLER(INPUTLINE("audiocpu",0)) + + MCFG_YM2151_PORT_WRITE_HANDLER(WRITE8(deco32_state,sound_bankswitch_w)) + MCFG_SOUND_ROUTE(0, "lspeaker", 0.40) + MCFG_SOUND_ROUTE(1, "rspeaker", 0.40) + /* + MCFG_DEVICE_REMOVE("ioprot") + MCFG_DECO146_ADD("ioprot") + MCFG_DECO146_SET_PORTA_CALLBACK( deco32_state, port_a_fghthist ) + MCFG_DECO146_SET_PORTB_CALLBACK( deco32_state, port_b_fghthist ) + MCFG_DECO146_SET_PORTC_CALLBACK( deco32_state, port_c_fghthist ) + MCFG_DECO146_SET_INTERFACE_SCRAMBLE_INTERLEAVE + MCFG_DECO146_SET_USE_MAGIC_ADDRESS_XOR + MCFG_DECO146_SET_SOUNDLATCH_CALLBACK(deco32_state, nslasher_sound_cb) + */ +MACHINE_CONFIG_END DECO16IC_BANK_CB_MEMBER(dragngun_state::bank_1_callback) { @@ -2359,6 +2386,12 @@ static MACHINE_CONFIG_DERIVED( nslasheru, nslasher ) MACHINE_CONFIG_END + + + + + + /**********************************************************************************/ ROM_START( captaven ) @@ -2949,7 +2982,7 @@ ROM_START( fghthista ) /* DE-0380-2 PCB */ ROM_LOAD( "ve-01.4d", 0x0200, 0x0104, NO_DUMP ) /* PAL16L8 is read protected */ ROM_END -ROM_START( fghthistu ) /* DE-0395-1 PCB */ +ROM_START( fghthistua ) /* DE-0395-1 PCB */ ROM_REGION(0x100000, "maincpu", 0 ) /* ARM 32 bit code */ ROM_LOAD32_WORD( "le00-1.1f", 0x000000, 0x80000, CRC(fccacafb) SHA1(b7236a90a09dbd5870a16aa4e4eac5ab5c098418) ) /* Version 42-06, US */ ROM_LOAD32_WORD( "le01-1.2f", 0x000002, 0x80000, CRC(06a3c326) SHA1(3d8842fb69def93fc544e89fd0e56ada416157dc) ) @@ -2983,7 +3016,7 @@ ROM_START( fghthistu ) /* DE-0395-1 PCB */ ROM_LOAD( "ve-01a.4d", 0x0200, 0x0104, NO_DUMP ) /* PAL16L8 is read protected */ ROM_END -ROM_START( fghthistua ) /* DE-0395-1 PCB */ +ROM_START( fghthistub ) /* DE-0395-1 PCB */ ROM_REGION(0x100000, "maincpu", 0 ) /* ARM 32 bit code */ ROM_LOAD32_WORD( "le00.1f", 0x000000, 0x80000, CRC(a5c410eb) SHA1(e2b0cb2351782e1155ecc4029010beb7326fd874) ) /* Version 42-05, US */ ROM_LOAD32_WORD( "le01.2f", 0x000002, 0x80000, CRC(7e148aa2) SHA1(b21e16604c4d29611f91d629deb9f041eaf41e9b) ) @@ -3017,7 +3050,7 @@ ROM_START( fghthistua ) /* DE-0395-1 PCB */ ROM_LOAD( "ve-01a.4d", 0x0200, 0x0104, NO_DUMP ) /* PAL16L8 is read protected */ ROM_END -ROM_START( fghthistub ) /* DE-0380-2 PCB */ +ROM_START( fghthistuc ) /* DE-0380-2 PCB */ ROM_REGION(0x100000, "maincpu", 0 ) /* ARM 32 bit code */ ROM_LOAD32_WORD( "kz00-1.1f", 0x000000, 0x80000, CRC(3a3dd15c) SHA1(689b51adf73402b12191a75061b8e709468c91bc) ) /* Version 42-03, US */ ROM_LOAD32_WORD( "kz01-1.2f", 0x000002, 0x80000, CRC(86796cd6) SHA1(c397c07d7a1d03ba96ccb2fe7a0ad25b8331e945) ) @@ -3153,6 +3186,40 @@ ROM_START( fghthistjb ) /* DE-0380-1 PCB */ ROM_LOAD( "ve-01.4d", 0x0200, 0x0104, NO_DUMP ) /* PAL16L8 is read protected */ ROM_END +ROM_START( fghthistu ) /* DE-0396-0 PCB */ + ROM_REGION(0x100000, "maincpu", 0 ) /* ARM 32 bit code */ + ROM_LOAD32_WORD( "lj00-3.1f", 0x000000, 0x80000, CRC(17543d60) SHA1(ff206e8552587b41d075b3c99f9ad733f1c2b5e0) ) + ROM_LOAD32_WORD( "lj01-3.2f", 0x000002, 0x80000, CRC(e255d48f) SHA1(30444832cfed7eeb6082010eb219362adbafb826) ) + + ROM_REGION(0x10000, "audiocpu", 0 ) /* Sound CPU */ + ROM_LOAD( "lj02-.k17", 0x00000, 0x10000, CRC(146a1063) SHA1(d16734c2443bf38add54040b9dd2628ba523638d) ) + + ROM_REGION( 0x100000, "gfx1", 0 ) + ROM_LOAD( "mbf00-8.8a", 0x000000, 0x100000, CRC(d3e9b580) SHA1(fc4676e0ecc6c32441ff66fa1f990cc3158237db) ) /* Encrypted tiles */ + + ROM_REGION( 0x100000, "gfx2", 0 ) + ROM_LOAD( "mbf01-8.9a", 0x000000, 0x100000, CRC(0c6ed2eb) SHA1(8e37ef4b1f0b6d3370a08758bfd602cb5f221282) ) /* Encrypted tiles */ + + ROM_REGION( 0x800000, "gfx3", 0 ) /* Sprites */ + ROM_LOAD16_BYTE( "mbf02-16.16d", 0x000001, 0x200000, CRC(c19c5953) SHA1(e6ed26f932c6c86bbd1fc4c000aa2f510c268009) ) + ROM_LOAD16_BYTE( "mbf04-16.18d", 0x000000, 0x200000, CRC(f6a23fd7) SHA1(74e5559f17cd591aa25d2ed6c34ac9ed89e2e9ba) ) + ROM_LOAD16_BYTE( "mbf03-16.17d", 0x400001, 0x200000, CRC(37d25c75) SHA1(8219d31091b4317190618edd8acc49f97cba6a1e) ) + ROM_LOAD16_BYTE( "mbf05-16.19d", 0x400000, 0x200000, CRC(137be66d) SHA1(3fde345183ce04a7a65b4cedfd050d771df7d026) ) + + ROM_REGION(0x80000, "oki1", 0 ) + ROM_LOAD( "mbf06.15k", 0x000000, 0x80000, CRC(fb513903) SHA1(7727a49ff7977f159ed36d097020edef3b5b36ba) ) + + ROM_REGION(0x80000, "oki2", 0 ) + ROM_LOAD( "mbf07.16k", 0x000000, 0x80000, CRC(51d4adc7) SHA1(22106ed7a05db94adc5a783ce34529e29d24d41a) ) + + ROM_REGION(512, "proms", 0 ) + ROM_LOAD( "kt-00.8j", 0, 512, CRC(7294354b) SHA1(14fe42ad5d26d022c0fe9a46a4a9017af2296f40) ) /* MB7124H type prom */ + + ROM_REGION( 0x0400, "plds", 0 ) + ROM_LOAD( "ve-00.3d", 0x0000, 0x0104, NO_DUMP ) /* PAL16L8 is read protected */ + ROM_LOAD( "ve-01.4d", 0x0200, 0x0104, NO_DUMP ) /* PAL16L8 is read protected */ +ROM_END + ROM_START( lockload ) /* Board No. DE-0420-1 + Bottom board DE-0421-0 slightly different hardware, a unique PCB and not a Dragongun conversion */ ROM_REGION(0x400000, "maincpu", 0 ) /* ARM 32 bit code */ ROM_LOAD32_BYTE( "nl-00-1.a6", 0x000002, 0x80000, CRC(7a39bf8d) SHA1(8b1a6407bab74b3960a243a6c04c0005a82126f1) ) @@ -3748,6 +3815,9 @@ DRIVER_INIT_MEMBER(deco32_state,fghthist) deco74_decrypt_gfx(machine(), "gfx2"); } + + + DRIVER_INIT_MEMBER(dragngun_state,lockload) { UINT8 *RAM = memregion("maincpu")->base(); @@ -3834,13 +3904,18 @@ GAME( 1991, captavenuu, captaven, captaven, captaven, deco32_state, captaven, GAME( 1991, captavenua, captaven, captaven, captaven, deco32_state, captaven, ROT0, "Data East Corporation", "Captain America and The Avengers (US Rev 1.4)", MACHINE_SUPPORTS_SAVE ) GAME( 1991, captavenj, captaven, captaven, captaven, deco32_state, captaven, ROT0, "Data East Corporation", "Captain America and The Avengers (Japan Rev 0.2)", MACHINE_SUPPORTS_SAVE ) +// DE-0396-0 PCB sets (uses a Z80) +GAME( 1993, fghthistu, fghthist, fghthistz,fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (US ver 42-09, DE-0396-0 PCB)", MACHINE_SUPPORTS_SAVE ) +// DE-0395-1 PCB sets +GAME( 1993, fghthistua, fghthist, fghthsta, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (US ver 42-06, DE-0395-1 PCB)", MACHINE_SUPPORTS_SAVE ) +GAME( 1993, fghthistub, fghthist, fghthsta, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (US ver 42-05, DE-0395-1 PCB)", MACHINE_SUPPORTS_SAVE ) +GAME( 1993, fghthistj, fghthist, fghthsta, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (Japan ver 41-07, DE-0395-1 PCB)", MACHINE_SUPPORTS_SAVE ) +// DE-0380-2 PCB sets GAME( 1993, fghthist, 0, fghthist, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (World ver 43-07, DE-0380-2 PCB)", MACHINE_SUPPORTS_SAVE ) GAME( 1993, fghthista, fghthist, fghthist, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (World ver 43-05, DE-0380-2 PCB)", MACHINE_SUPPORTS_SAVE ) -GAME( 1993, fghthistu, fghthist, fghthsta, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (US ver 42-06, DE-0395-1 PCB)", MACHINE_SUPPORTS_SAVE ) -GAME( 1993, fghthistua, fghthist, fghthsta, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (US ver 42-05, DE-0395-1 PCB)", MACHINE_SUPPORTS_SAVE ) -GAME( 1993, fghthistub, fghthist, fghthist, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (US ver 42-03, DE-0380-2 PCB)", MACHINE_SUPPORTS_SAVE ) -GAME( 1993, fghthistj, fghthist, fghthsta, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (Japan ver 41-07, DE-0395-1 PCB)", MACHINE_SUPPORTS_SAVE ) +GAME( 1993, fghthistuc, fghthist, fghthist, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (US ver 42-03, DE-0380-2 PCB)", MACHINE_SUPPORTS_SAVE ) GAME( 1993, fghthistja, fghthist, fghthist, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (Japan ver 41-05, DE-0380-2 PCB)", MACHINE_SUPPORTS_SAVE ) +// DE-0380-1 PCB sets GAME( 1993, fghthistjb, fghthist, fghthist, fghthist, deco32_state, fghthist, ROT0, "Data East Corporation", "Fighter's History (Japan ver 41-04, DE-0380-1 PCB)", MACHINE_SUPPORTS_SAVE ) GAME( 1994, nslasher, 0, nslasher, nslasher, deco32_state, nslasher, ROT0, "Data East Corporation", "Night Slashers (Korea Rev 1.3)", MACHINE_IMPERFECT_GRAPHICS | MACHINE_SUPPORTS_SAVE )