mirror of
https://github.com/holub/mame
synced 2025-05-30 09:33:05 +03:00
cps2: Replaced mvsc bad ROM with hand-repaired one (no whatsnew)
This commit is contained in:
parent
0aacf2ad77
commit
744cf19119
@ -597,7 +597,7 @@ Stephh's inputs notes (based on some tests on the "parent" set) :
|
||||
#include "machine/eeprom.h"
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "sound/qsound.h"
|
||||
#include "sound/okim6295.h" // gigaman2 bootleg
|
||||
#include "sound/okim6295.h" // gigamn2 bootleg
|
||||
|
||||
#include "includes/cps1.h" /* External CPS1 definitions */
|
||||
|
||||
@ -1208,7 +1208,7 @@ static MACHINE_START( cps2 )
|
||||
|
||||
state->save_item(NAME(state->m_scancount));
|
||||
|
||||
if (state->m_audiocpu != NULL) // gigaman2 has no audiocpu
|
||||
if (state->m_audiocpu != NULL) // gigamn2 has no audiocpu
|
||||
memory_configure_bank(machine, "bank1", 0, (QSOUND_SIZE - 0x10000) / 0x4000, machine.region("audiocpu")->base() + 0x10000, 0x4000);
|
||||
}
|
||||
|
||||
@ -1267,7 +1267,7 @@ static MACHINE_CONFIG_DERIVED( dead_cps2, cps2 )
|
||||
MCFG_CPU_PROGRAM_MAP(dead_cps2_map)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( gigaman2, cps2 )
|
||||
static MACHINE_CONFIG_DERIVED( gigamn2, cps2 )
|
||||
|
||||
MCFG_DEVICE_REMOVE("audiocpu")
|
||||
|
||||
@ -3605,26 +3605,26 @@ Sound : Atmel AT89C4051-24PI + M6295 (noted AD-65)
|
||||
|
||||
*/
|
||||
|
||||
ROM_START( gigaman2 )
|
||||
ROM_START( gigamn2 )
|
||||
ROM_REGION(CODE_SIZE, "maincpu", 0 ) /* 68000 code */
|
||||
ROM_LOAD16_WORD_SWAP( "sys_rom1.bin", 0x000000, 0x400000, CRC(2eaa5e10) SHA1(79f9a137bf5b3317579c548f346c1dc1cccdb771) )
|
||||
ROM_LOAD16_WORD_SWAP( "prog.bin", 0x000000, 0x400000, CRC(2eaa5e10) SHA1(79f9a137bf5b3317579c548f346c1dc1cccdb771) )
|
||||
|
||||
ROM_REGION(0x10000, "mcu", 0 ) /* sound MCU code */
|
||||
ROM_LOAD( "89c4051.bin", 0x000000, 0x10000, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x1000000, "gfx", 0 )
|
||||
ROM_FILL( 0x000000, 0x800000, 0 )
|
||||
/* you can use the original CPS2 gfx roms, but the 'GIGA part of GIGAMAN2 is missing, on real HW it isn't, roms are different */
|
||||
// ROMX_LOAD( "rm2.14m", 0x800000, 0x200000, CRC(9b1f00b4) SHA1(c1c5c2d9d00121425ae6598444d704f420ef4eef) , ROM_GROUPWORD | ROM_SKIP(6) )
|
||||
// ROMX_LOAD( "rm2.16m", 0x800002, 0x200000, CRC(c2bb0c24) SHA1(38724c49d9db49765a4ed9bc2dc8f57cec45ec7c) , ROM_GROUPWORD | ROM_SKIP(6) )
|
||||
// ROMX_LOAD( "rm2.18m", 0x800004, 0x200000, CRC(12257251) SHA1(20cb58afda0e6200991277817485340a6a41ae2b) , ROM_GROUPWORD | ROM_SKIP(6) )
|
||||
// ROMX_LOAD( "rm2.20m", 0x800006, 0x200000, CRC(f9b6e786) SHA1(aeb4acff7208e66a35198143fd2478039fdaa3a6) , ROM_GROUPWORD | ROM_SKIP(6) )
|
||||
/* TODO: understand the proper ROM loading and gfxdecoding */
|
||||
ROM_LOAD32_WORD( "cg_rom1.bin", 0x0000000, 0x800000, CRC(ed55a641) SHA1(fa798779a3787317937a646047620b1c0dbe102a) )
|
||||
ROM_LOAD32_WORD( "cg_rom2.bin", 0x0000002, 0x800000, CRC(63918c05) SHA1(3a7fdf88e87bdbc622504276287740c08df38f6f) )
|
||||
ROM_LOAD( "gfx1.bin", 0x800000, 0x400000, NO_DUMP )
|
||||
ROM_LOAD( "gfx2.bin", 0xc00000, 0x400000, NO_DUMP )
|
||||
|
||||
ROM_REGION( 0x800000, "oki", 0 ) /* QSound samples */
|
||||
ROM_REGION( 0x400000, "oki", 0 ) /* QSound samples */
|
||||
/* No Qsound, OKI instead.. */
|
||||
ROM_LOAD( "pcm_rom1.bin", 0x000000, 0x800000, CRC(41a854ab) SHA1(206448c3e27d260d0650c28a9cd524854ce0b64d) )
|
||||
ROM_LOAD( "oki.bin", 0x000000, 0x400000, NO_DUMP )
|
||||
ROM_END
|
||||
|
||||
ROM_START( mmatrix )
|
||||
@ -4235,10 +4235,21 @@ ROM_START( mshvsfb1 )
|
||||
ROM_LOAD16_WORD_SWAP( "mvs.12m", 0x400000, 0x400000, CRC(f2fd7f68) SHA1(28a30d55d3eaf963006c7cbe7c288099cd3ba536) )
|
||||
ROM_END
|
||||
|
||||
/*
|
||||
Marvel Vs. Capcom: Clash of Super Heroes (Euro 980123):
|
||||
The originally dumped ROM4 contains garbage instructions that cause the game to crash during the ending staff roll.
|
||||
The ROM has been repaired so that the code matches the other sets after decryption:
|
||||
|
||||
offset dumped repaired decrypted
|
||||
0x40/2 001a 189a EB11 -> 4EF9
|
||||
0x60/2 800b c00b 0843 -> 227C
|
||||
*/
|
||||
|
||||
ROM_START( mvsc )
|
||||
ROM_REGION( CODE_SIZE, "maincpu", 0 ) /* 68000 code */
|
||||
ROM_LOAD16_WORD_SWAP( "mvce.03a", 0x000000, 0x80000, CRC(824e4a90) SHA1(5c79c166d988d8a75d9941f4ee6fa4d6476e55e1) )
|
||||
ROM_LOAD16_WORD_SWAP( "mvce.04a", 0x080000, 0x80000, BAD_DUMP CRC(cac02153) SHA1(ee9f9da6fda53f21ba7b74367612c90281269690) )
|
||||
// ROM_LOAD16_WORD_SWAP( "mvce.04a", 0x080000, 0x80000, BAD_DUMP CRC(cac02153) SHA1(ee9f9da6fda53f21ba7b74367612c90281269690) )
|
||||
ROM_LOAD16_WORD_SWAP( "mvce.04a", 0x080000, 0x80000, CRC(436c5a4e) SHA1(82f4586e888f2550c53bfdc93a53791a595e05bd) )
|
||||
ROM_LOAD16_WORD_SWAP( "mvc.05a", 0x100000, 0x80000, CRC(2d8c8e86) SHA1(b07d640a734c5d336054ed05195786224c9a6cd4) )
|
||||
ROM_LOAD16_WORD_SWAP( "mvc.06a", 0x180000, 0x80000, CRC(8528e1f5) SHA1(cd065c05268ab581b05676da544baf6af642acac) )
|
||||
ROM_LOAD16_WORD_SWAP( "mvc.07", 0x200000, 0x80000, CRC(c3baa32b) SHA1(d35589847e0753e869ffcd7c3abed925bfdb0fa2) )
|
||||
@ -8015,19 +8026,19 @@ static DRIVER_INIT ( pzloop2 )
|
||||
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_read_handler(0x804000, 0x804001, FUNC(joy_or_paddle_r));
|
||||
}
|
||||
|
||||
static READ16_HANDLER( gigaman2_dummyqsound_r )
|
||||
static READ16_HANDLER( gigamn2_dummyqsound_r )
|
||||
{
|
||||
cps_state *state = space->machine().driver_data<cps_state>();
|
||||
return state->m_gigaman2_dummyqsound_ram[offset];
|
||||
return state->m_gigamn2_dummyqsound_ram[offset];
|
||||
};
|
||||
|
||||
static WRITE16_HANDLER( gigaman2_dummyqsound_w )
|
||||
static WRITE16_HANDLER( gigamn2_dummyqsound_w )
|
||||
{
|
||||
cps_state *state = space->machine().driver_data<cps_state>();
|
||||
state->m_gigaman2_dummyqsound_ram[offset] = data;
|
||||
state->m_gigamn2_dummyqsound_ram[offset] = data;
|
||||
};
|
||||
|
||||
static DRIVER_INIT( gigaman2 )
|
||||
static DRIVER_INIT( gigamn2 )
|
||||
{
|
||||
cps_state *state = machine.driver_data<cps_state>();
|
||||
address_space *space = machine.device("maincpu")->memory().space(AS_PROGRAM);
|
||||
@ -8036,10 +8047,10 @@ static DRIVER_INIT( gigaman2 )
|
||||
|
||||
DRIVER_INIT_CALL(cps2);
|
||||
|
||||
state->m_gigaman2_dummyqsound_ram = auto_alloc_array(machine, UINT16, 0x20000 / 2);
|
||||
state->save_pointer(NAME(state->m_gigaman2_dummyqsound_ram), 0x20000 / 2);
|
||||
state->m_gigamn2_dummyqsound_ram = auto_alloc_array(machine, UINT16, 0x20000 / 2);
|
||||
state->save_pointer(NAME(state->m_gigamn2_dummyqsound_ram), 0x20000 / 2);
|
||||
|
||||
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x618000, 0x619fff, FUNC(gigaman2_dummyqsound_r), FUNC(gigaman2_dummyqsound_w)); // no qsound..
|
||||
machine.device("maincpu")->memory().space(AS_PROGRAM)->install_legacy_readwrite_handler(0x618000, 0x619fff, FUNC(gigamn2_dummyqsound_r), FUNC(gigamn2_dummyqsound_w)); // no qsound..
|
||||
space->set_decrypted_region(0x000000, (length) - 1, &rom[length/4]);
|
||||
m68k_set_encrypted_opcode_range(machine.device("maincpu"), 0, length);
|
||||
}
|
||||
@ -9620,7 +9631,7 @@ GAME( 1996, sfz2jd, sfa2, dead_cps2, cps2_2p6b, cps2, ROT0, "bootleg"
|
||||
GAME( 1996, spf2td, spf2t, dead_cps2, cps2_2p2b, cps2, ROT0, "bootleg", "Super Puzzle Fighter II Turbo (USA 960620 Phoenix Edition) (bootleg)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1996, spf2xjd, spf2t, dead_cps2, cps2_2p2b, cps2, ROT0, "bootleg", "Super Puzzle Fighter II X (Japan 960531 Phoenix Edition) (bootleg)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1996, ddsomud, ddsom, dead_cps2, cps2_4p4b, cps2, ROT0, "bootleg", "Dungeons & Dragons: Shadow over Mystara (USA 960619 Phoenix Edition) (bootleg)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1996, gigaman2, megaman2, gigaman2, cps2_2p3b, gigaman2,ROT0, "bootleg", "Giga Man 2: The Power Fighters (bootleg of Mega Man 2: The Power Fighters)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) // flash roms aren't dumped, layer offsets different, different sound system
|
||||
GAME( 1996, gigamn2, megaman2, gigamn2, cps2_2p3b, gigamn2, ROT0, "bootleg", "Giga Man 2: The Power Fighters (bootleg of Mega Man 2: The Power Fighters)", GAME_NOT_WORKING | GAME_SUPPORTS_SAVE ) // flash roms aren't dumped, layer offsets different, different sound system
|
||||
GAME( 1996, megamn2d, megaman2, dead_cps2, cps2_2p3b, cps2, ROT0, "bootleg", "Mega Man 2: The Power Fighters (USA 960708 Phoenix Edition) (bootleg)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1996, sfz2ald, sfz2al, dead_cps2, cps2_2p6b, cps2, ROT0, "bootleg", "Street Fighter Zero 2 Alpha (Asia 960826 Phoenix Edition) (bootleg)", GAME_SUPPORTS_SAVE )
|
||||
GAME( 1996, xmvsfu1d, xmvsf, dead_cps2, cps2_2p6b, cps2, ROT0, "bootleg", "X-Men Vs. Street Fighter (USA 961004 Phoenix Edition) (bootleg)", GAME_SUPPORTS_SAVE )
|
||||
|
Loading…
Reference in New Issue
Block a user