From b74ce41ef2f6abb93a6dcac92fa4f636b914e43c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C3=ABl=20Banaan=20Ananas?= Date: Mon, 5 Nov 2012 17:00:55 +0000 Subject: [PATCH] one of the lock/unlock checks was at another address anyway --- src/mame/drivers/gticlub.c | 25 +++++++++++++++++++++---- 1 file changed, 21 insertions(+), 4 deletions(-) diff --git a/src/mame/drivers/gticlub.c b/src/mame/drivers/gticlub.c index e14caa92cd7..9ba9072d24a 100644 --- a/src/mame/drivers/gticlub.c +++ b/src/mame/drivers/gticlub.c @@ -259,7 +259,9 @@ public: DECLARE_WRITE32_MEMBER(dsp_dataram0_w); DECLARE_READ32_MEMBER(dsp_dataram1_r); DECLARE_WRITE32_MEMBER(dsp_dataram1_w); + void init_hangplt_common(); DECLARE_DRIVER_INIT(hangplt); + DECLARE_DRIVER_INIT(hangpltu); DECLARE_DRIVER_INIT(gticlub); DECLARE_MACHINE_START(gticlub); DECLARE_MACHINE_RESET(gticlub); @@ -1229,8 +1231,8 @@ ROM_START( hangpltu ) /* USA version UAA */ ROM_LOAD32_WORD( "685a13.4w", 0x000002, 0x400000, CRC(06329af4) SHA1(76cad9db604751ce48bb67bfd29e57bac0ee9a16) ) ROM_LOAD32_WORD( "685a14.12w", 0x000000, 0x400000, CRC(87437739) SHA1(0d45637af40938a54d5efd29c125b0fafd55f9a4) ) -// ROM_REGION16_BE( 0x200, "eeprom", 0 ) -// ROM_LOAD( "hangpltu.nv", 0x0000, 0x0200, CRC(x) SHA1(x) ) + ROM_REGION16_BE( 0x200, "eeprom", 0 ) + ROM_LOAD( "hangpltu.nv", 0x0000, 0x0200, CRC(8d74baf0) SHA1(297c0a064c6f8f8281d566629d896b49c6e85096) ) ROM_END @@ -1243,7 +1245,7 @@ DRIVER_INIT_MEMBER(gticlub_state,gticlub) K001005_preprocess_texture_data(memregion("gfx1")->base(), memregion("gfx1")->bytes(), 1); } -DRIVER_INIT_MEMBER(gticlub_state,hangplt) +void gticlub_state::init_hangplt_common() { init_konami_cgboard(machine(), 2, CGBOARD_TYPE_HANGPLT); set_cgboard_texture_bank(machine(), 0, "bank5", memregion("user5")->base()); @@ -1251,6 +1253,11 @@ DRIVER_INIT_MEMBER(gticlub_state,hangplt) m_sharc_dataram_0 = auto_alloc_array(machine(), UINT32, 0x100000/4); m_sharc_dataram_1 = auto_alloc_array(machine(), UINT32, 0x100000/4); +} + +DRIVER_INIT_MEMBER(gticlub_state,hangplt) +{ + init_hangplt_common(); // workaround for lock/unlock errors UINT32 *rom = (UINT32*)machine().root_device().memregion("user1")->base(); @@ -1258,6 +1265,16 @@ DRIVER_INIT_MEMBER(gticlub_state,hangplt) rom[(0x15428^4) / 4] = 0x4e800020; } +DRIVER_INIT_MEMBER(gticlub_state,hangpltu) +{ + init_hangplt_common(); + + // workaround for lock/unlock errors + UINT32 *rom = (UINT32*)machine().root_device().memregion("user1")->base(); + rom[(0x153d0^4) / 4] = 0x4e800020; + rom[(0x15428^4) / 4] = 0x4e800020; +} + /*************************************************************************/ GAME( 1996, gticlub, 0, gticlub, gticlub, gticlub_state, gticlub, ROT0, "Konami", "GTI Club (ver EAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) @@ -1268,4 +1285,4 @@ GAME( 1996, thunderh, 0, thunderh, thunderh, gticlub_state, gticlub, ROT GAME( 1996, thunderhu,thunderh, thunderh, thunderh, gticlub_state, gticlub, ROT0, "Konami", "Operation Thunder Hurricane (ver UAA)", GAME_NOT_WORKING | GAME_IMPERFECT_SOUND ) GAME( 1997, slrasslt, 0, slrasslt, slrasslt, gticlub_state, gticlub, ROT0, "Konami", "Solar Assault (ver UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) GAMEL(1997, hangplt, 0, hangplt, hangplt, gticlub_state, hangplt, ROT0, "Konami", "Hang Pilot (ver JAB)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND, layout_dualhovu ) -GAMEL(1997, hangpltu, hangplt, hangplt, hangplt, gticlub_state, hangplt, ROT0, "Konami", "Hang Pilot (ver UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND, layout_dualhovu ) +GAMEL(1997, hangpltu, hangplt, hangplt, hangplt, gticlub_state, hangpltu, ROT0, "Konami", "Hang Pilot (ver UAA)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND, layout_dualhovu )