diff --git a/src/mame/drivers/gyruss.cpp b/src/mame/drivers/gyruss.cpp index 40912651b04..b22dc0cf9c1 100644 --- a/src/mame/drivers/gyruss.cpp +++ b/src/mame/drivers/gyruss.cpp @@ -1,4 +1,4 @@ -// license:BSD-3-Clause + // license:BSD-3-Clause // copyright-holders:Nicola Salmoria, Couriersud /*************************************************************************** @@ -308,14 +308,14 @@ static INPUT_PORTS_START( gyruss ) PORT_DIPNAME( 0x01, 0x00, "Demo Music" ) PORT_DIPLOCATION("SW3:1") PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_DIPUNUSED_DIPLOC(0xfe, IP_ACTIVE_LOW, "SW3:2,3,4,5,6,7,8") INPUT_PORTS_END static INPUT_PORTS_START( gyrussce ) PORT_INCLUDE( gyruss ) PORT_MODIFY("DSW2") - PORT_DIPNAME( 0x08, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:3") /* tables at 0x1653 (15 bytes) or 0x4bf3 (13 bytes) */ + PORT_DIPNAME( 0x08, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4") /* tables at 0x1653 (15 bytes) or 0x4bf3 (13 bytes) */ PORT_DIPSETTING( 0x08, "50k 120k 70k+" ) /* last bonus life at 960k : max. 14 bonus lives */ PORT_DIPSETTING( 0x00, "60k 140k 80k+" ) /* last bonus life at 940k : max. 12 bonus lives */ PORT_DIPNAME( 0x70, 0x20, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5,6,7") /* "Difficult" default setting according to Centuri manual */ @@ -570,19 +570,23 @@ MACHINE_CONFIG_END ***************************************************************************/ ROM_START( gyruss ) - ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_REGION( 0x8000, "maincpu", 0 ) ROM_LOAD( "gyrussk.1", 0x0000, 0x2000, CRC(c673b43d) SHA1(7c464fb154bac35dd6e2f547e157addeb8798194) ) ROM_LOAD( "gyrussk.2", 0x2000, 0x2000, CRC(a4ec03e4) SHA1(08c33ad7fcc2ad5e5787a1050284e3f8164f4618) ) ROM_LOAD( "gyrussk.3", 0x4000, 0x2000, CRC(27454a98) SHA1(030c7df225652ee20d5ef64d005eb011dc89a27d) ) - /* the diagnostics ROM would go here */ + // Diagnostic ROM, not populated. Checksums are from Shoestring's unofficial version. + // The game jumps to this location at startup if the first byte is 0x55. +#if 0 + ROM_LOAD( "gyrussk.4", 0x6000, 0x2000, CRC(6803b04d) SHA1(282fae01999eed919c128add67d940b340d0c78a) ) +#endif ROM_REGION( 0x10000, "sub", 0 ) ROM_LOAD( "gyrussk.9", 0xe000, 0x2000, CRC(822bf27e) SHA1(36d5bea2392a7d3476dd797dc05602705cfa23ef) ) - ROM_REGION( 0x10000, "audiocpu", 0 ) + ROM_REGION( 0x6000, "audiocpu", 0 ) ROM_LOAD( "gyrussk.1a", 0x0000, 0x2000, CRC(f4ae1c17) SHA1(ae568c96a31d910afe30d2b7eeb9ed1ed07290e3) ) ROM_LOAD( "gyrussk.2a", 0x2000, 0x2000, CRC(ba498115) SHA1(9cd1f42898cc590f39ba7cb3c975b0b3d3062eba) ) - /* the diagnostics ROM would go here */ + // 4000-5fff: Empty socket, not populated ROM_REGION( 0x1000, "audio2", 0 ) /* 8039 */ ROM_LOAD( "gyrussk.3a", 0x0000, 0x1000, CRC(3f9b5dea) SHA1(6e807da02c2885b18e8cc2199f12f6be9040bf75) ) @@ -603,31 +607,36 @@ ROM_START( gyruss ) ROM_END ROM_START( gyrussce ) - ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD( "gya-1.bin", 0x0000, 0x2000, CRC(85f8b7c2) SHA1(5dde696b53efedee671d500feae1d314e95b1c96) ) - ROM_LOAD( "gya-2.bin", 0x2000, 0x2000, CRC(1e1a970f) SHA1(5a2e391489608f7571bbb4f85549a79795e2177e) ) - ROM_LOAD( "gya-3.bin", 0x4000, 0x2000, CRC(f6dbb33b) SHA1(19cab8e7f2f2358b6271ab402f132654e8be95d4) ) - /* the diagnostics ROM would go here */ + ROM_REGION( 0x8000, "maincpu", 0 ) + ROM_LOAD( "gya-1.11j", 0x0000, 0x2000, CRC(85f8b7c2) SHA1(5dde696b53efedee671d500feae1d314e95b1c96) ) + ROM_LOAD( "gya-2.12j", 0x2000, 0x2000, CRC(1e1a970f) SHA1(5a2e391489608f7571bbb4f85549a79795e2177e) ) + ROM_LOAD( "gya-3.13j", 0x4000, 0x2000, CRC(f6dbb33b) SHA1(19cab8e7f2f2358b6271ab402f132654e8be95d4) ) + + // Diagnostic ROM, not populated. Checksums are from Shoestring's unofficial version. + // The game jumps to this location at startup if the first byte is 0x55. +#if 0 + ROM_LOAD( "gya-4.14j", 0x6000, 0x2000, CRC(6803b04d) SHA1(282fae01999eed919c128add67d940b340d0c78a) ) +#endif ROM_REGION( 0x10000, "sub", 0 ) - ROM_LOAD( "gyrussk.9", 0xe000, 0x2000, CRC(822bf27e) SHA1(36d5bea2392a7d3476dd797dc05602705cfa23ef) ) + ROM_LOAD( "gy-5.19e", 0xe000, 0x2000, CRC(822bf27e) SHA1(36d5bea2392a7d3476dd797dc05602705cfa23ef) ) - ROM_REGION( 0x10000, "audiocpu", 0 ) - ROM_LOAD( "gyrussk.1a", 0x0000, 0x2000, CRC(f4ae1c17) SHA1(ae568c96a31d910afe30d2b7eeb9ed1ed07290e3) ) - ROM_LOAD( "gyrussk.2a", 0x2000, 0x2000, CRC(ba498115) SHA1(9cd1f42898cc590f39ba7cb3c975b0b3d3062eba) ) - /* the diagnostics ROM would go here */ + ROM_REGION( 0x6000, "audiocpu", 0 ) + ROM_LOAD( "gy-11.7a", 0x0000, 0x2000, CRC(f4ae1c17) SHA1(ae568c96a31d910afe30d2b7eeb9ed1ed07290e3) ) + ROM_LOAD( "gy-12.8a", 0x2000, 0x2000, CRC(ba498115) SHA1(9cd1f42898cc590f39ba7cb3c975b0b3d3062eba) ) + // 4000-5fff: Empty socket, not populated ROM_REGION( 0x1000, "audio2", 0 ) /* 8039 */ - ROM_LOAD( "gyrussk.3a", 0x0000, 0x1000, CRC(3f9b5dea) SHA1(6e807da02c2885b18e8cc2199f12f6be9040bf75) ) + ROM_LOAD( "gy-13.11h", 0x0000, 0x1000, CRC(3f9b5dea) SHA1(6e807da02c2885b18e8cc2199f12f6be9040bf75) ) ROM_REGION( 0x8000, "gfx1", 0 ) - ROM_LOAD( "gyrussk.6", 0x0000, 0x2000, CRC(c949db10) SHA1(fcb8bcbd2bdd751fecb322a33c8a92fb6f07a7ab) ) - ROM_LOAD( "gyrussk.5", 0x2000, 0x2000, CRC(4f22411a) SHA1(763bcd039f8c1838a0d7da7d4dadc14a26e25596) ) - ROM_LOAD( "gyrussk.8", 0x4000, 0x2000, CRC(47cd1fbc) SHA1(8203c4ff0b1cd7b4dbc708e300bfeac1e7366e09) ) - ROM_LOAD( "gyrussk.7", 0x6000, 0x2000, CRC(8e8d388c) SHA1(8f2928d71c02aba977d67575d6e34d69bda2b9d4) ) + ROM_LOAD( "gy-10.9d", 0x0000, 0x2000, CRC(c949db10) SHA1(fcb8bcbd2bdd751fecb322a33c8a92fb6f07a7ab) ) + ROM_LOAD( "gy-9.8d", 0x2000, 0x2000, CRC(4f22411a) SHA1(763bcd039f8c1838a0d7da7d4dadc14a26e25596) ) + ROM_LOAD( "gy-8.7d", 0x4000, 0x2000, CRC(47cd1fbc) SHA1(8203c4ff0b1cd7b4dbc708e300bfeac1e7366e09) ) + ROM_LOAD( "gy-7.6d", 0x6000, 0x2000, CRC(8e8d388c) SHA1(8f2928d71c02aba977d67575d6e34d69bda2b9d4) ) ROM_REGION( 0x2000, "gfx2", 0 ) - ROM_LOAD( "gyrussk.4", 0x0000, 0x2000, CRC(27d8329b) SHA1(564ff945465a23d93a93137ad277298770dfa06a) ) + ROM_LOAD( "gy-6.1g", 0x0000, 0x2000, CRC(27d8329b) SHA1(564ff945465a23d93a93137ad277298770dfa06a) ) ROM_REGION( 0x0220, "proms", 0 ) ROM_LOAD( "gyrussk.pr3", 0x0000, 0x0020, CRC(98782db3) SHA1(b891e43b25187faca8002919ccb44d744daa3594) ) /* palette */ @@ -636,31 +645,31 @@ ROM_START( gyrussce ) ROM_END ROM_START( gyrussb ) /* PCB has stickers stating "TAITO (NEW ZEALAND) LTD" */ - ROM_REGION( 0x10000, "maincpu", 0 ) - ROM_LOAD( "1.bin", 0x0000, 0x2000, CRC(6bc21c10) SHA1(9d44f766398b9994f90edb2ffb272b4f22564854) ) /* Labeled as "1", minor code patch / redirection */ - ROM_LOAD( "gyrussk.2", 0x2000, 0x2000, CRC(a4ec03e4) SHA1(08c33ad7fcc2ad5e5787a1050284e3f8164f4618) ) /* Labeled as "2" */ - ROM_LOAD( "gyrussk.3", 0x4000, 0x2000, CRC(27454a98) SHA1(030c7df225652ee20d5ef64d005eb011dc89a27d) ) /* Labeled as "3" */ - /* the diagnostics ROM would go here */ + ROM_REGION( 0x8000, "maincpu", 0 ) + ROM_LOAD( "1.bin", 0x0000, 0x2000, CRC(6bc21c10) SHA1(9d44f766398b9994f90edb2ffb272b4f22564854) ) // minor code patch / redirection + ROM_LOAD( "2.bin", 0x2000, 0x2000, CRC(a4ec03e4) SHA1(08c33ad7fcc2ad5e5787a1050284e3f8164f4618) ) + ROM_LOAD( "3.bin", 0x4000, 0x2000, CRC(27454a98) SHA1(030c7df225652ee20d5ef64d005eb011dc89a27d) ) + // 6000-7fff: Empty socket, space for diagnostics ROM ROM_REGION( 0x10000, "sub", 0 ) - ROM_LOAD( "gyrussk.9", 0xe000, 0x2000, CRC(822bf27e) SHA1(36d5bea2392a7d3476dd797dc05602705cfa23ef) ) /* Labeled as "9" */ + ROM_LOAD( "9.bin", 0xe000, 0x2000, CRC(822bf27e) SHA1(36d5bea2392a7d3476dd797dc05602705cfa23ef) ) - ROM_REGION( 0x10000, "audiocpu", 0 ) - ROM_LOAD( "gyrussk.1a", 0x0000, 0x2000, CRC(f4ae1c17) SHA1(ae568c96a31d910afe30d2b7eeb9ed1ed07290e3) ) /* Labeled as "11" */ - ROM_LOAD( "gyrussk.2a", 0x2000, 0x2000, CRC(ba498115) SHA1(9cd1f42898cc590f39ba7cb3c975b0b3d3062eba) ) /* Labeled as "12" */ - /* the diagnostics ROM would go here */ + ROM_REGION( 0x6000, "audiocpu", 0 ) + ROM_LOAD( "11.bin", 0x0000, 0x2000, CRC(f4ae1c17) SHA1(ae568c96a31d910afe30d2b7eeb9ed1ed07290e3) ) + ROM_LOAD( "12.bin", 0x2000, 0x2000, CRC(ba498115) SHA1(9cd1f42898cc590f39ba7cb3c975b0b3d3062eba) ) + // 4000-5fff: Empty socket, not populated ROM_REGION( 0x1000, "audio2", 0 ) /* 8039 */ - ROM_LOAD( "gyrussk.3a", 0x0000, 0x1000, CRC(3f9b5dea) SHA1(6e807da02c2885b18e8cc2199f12f6be9040bf75) ) /* Labeled as "13" */ + ROM_LOAD( "13.bin", 0x0000, 0x1000, CRC(3f9b5dea) SHA1(6e807da02c2885b18e8cc2199f12f6be9040bf75) ) ROM_REGION( 0x8000, "gfx1", 0 ) - ROM_LOAD( "gyrussk.6", 0x0000, 0x2000, CRC(c949db10) SHA1(fcb8bcbd2bdd751fecb322a33c8a92fb6f07a7ab) ) /* Labeled as "6" */ - ROM_LOAD( "gyrussk.5", 0x2000, 0x2000, CRC(4f22411a) SHA1(763bcd039f8c1838a0d7da7d4dadc14a26e25596) ) /* Labeled as "5" */ - ROM_LOAD( "gyrussk.8", 0x4000, 0x2000, CRC(47cd1fbc) SHA1(8203c4ff0b1cd7b4dbc708e300bfeac1e7366e09) ) /* Labeled as "8" */ - ROM_LOAD( "gyrussk.7", 0x6000, 0x2000, CRC(8e8d388c) SHA1(8f2928d71c02aba977d67575d6e34d69bda2b9d4) ) /* Labeled as "7" */ + ROM_LOAD( "6.bin", 0x0000, 0x2000, CRC(c949db10) SHA1(fcb8bcbd2bdd751fecb322a33c8a92fb6f07a7ab) ) + ROM_LOAD( "5.bin", 0x2000, 0x2000, CRC(4f22411a) SHA1(763bcd039f8c1838a0d7da7d4dadc14a26e25596) ) + ROM_LOAD( "8.bin", 0x4000, 0x2000, CRC(47cd1fbc) SHA1(8203c4ff0b1cd7b4dbc708e300bfeac1e7366e09) ) + ROM_LOAD( "7.bin", 0x6000, 0x2000, CRC(8e8d388c) SHA1(8f2928d71c02aba977d67575d6e34d69bda2b9d4) ) ROM_REGION( 0x2000, "gfx2", 0 ) - ROM_LOAD( "gyrussk.4", 0x0000, 0x2000, CRC(27d8329b) SHA1(564ff945465a23d93a93137ad277298770dfa06a) ) /* Labeled as "4" */ + ROM_LOAD( "4.bin", 0x0000, 0x2000, CRC(27d8329b) SHA1(564ff945465a23d93a93137ad277298770dfa06a) ) ROM_REGION( 0x0220, "proms", 0 ) ROM_LOAD( "gyrussk.pr3", 0x0000, 0x0020, CRC(98782db3) SHA1(b891e43b25187faca8002919ccb44d744daa3594) ) /* palette */ @@ -669,19 +678,19 @@ ROM_START( gyrussb ) /* PCB has stickers stating "TAITO (NEW ZEALAND) LTD" */ ROM_END ROM_START( venus ) - ROM_REGION( 0x10000, "maincpu", 0 ) + ROM_REGION( 0x8000, "maincpu", 0 ) ROM_LOAD( "r1", 0x0000, 0x2000, CRC(d030abb1) SHA1(14a70e15f5df9ef957779771d8915203d3828532) ) ROM_LOAD( "r2", 0x2000, 0x2000, CRC(dbf65d4d) SHA1(a0ad0dc3420442f06691bda2115fadd961ce86a7) ) ROM_LOAD( "r3", 0x4000, 0x2000, CRC(db246fcd) SHA1(c0228b35591c9e1c778370a2abd3739c441f14aa) ) - /* the diagnostics ROM would go here */ + // 6000-7fff: Empty socket, space for diagnostics ROM ROM_REGION( 0x10000, "sub", 0 ) ROM_LOAD( "gyrussk.9", 0xe000, 0x2000, CRC(822bf27e) SHA1(36d5bea2392a7d3476dd797dc05602705cfa23ef) ) - ROM_REGION( 0x10000, "audiocpu", 0 ) + ROM_REGION( 0x6000, "audiocpu", 0 ) ROM_LOAD( "gyrussk.1a", 0x0000, 0x2000, CRC(f4ae1c17) SHA1(ae568c96a31d910afe30d2b7eeb9ed1ed07290e3) ) ROM_LOAD( "gyrussk.2a", 0x2000, 0x2000, CRC(ba498115) SHA1(9cd1f42898cc590f39ba7cb3c975b0b3d3062eba) ) - /* the diagnostics ROM would go here */ + // 4000-5fff: Empty socket, not populated ROM_REGION( 0x1000, "audio2", 0 ) /* 8039 */ ROM_LOAD( "gyrussk.3a", 0x0000, 0x1000, CRC(3f9b5dea) SHA1(6e807da02c2885b18e8cc2199f12f6be9040bf75) ) @@ -702,12 +711,7 @@ ROM_START( venus ) ROM_END -DRIVER_INIT_MEMBER(gyruss_state,gyruss) -{ -} - - -GAME( 1983, gyruss, 0, gyruss, gyruss, gyruss_state, gyruss, ROT90, "Konami", "Gyruss", MACHINE_SUPPORTS_SAVE ) -GAME( 1983, gyrussce, gyruss, gyruss, gyrussce, gyruss_state, gyruss, ROT90, "Konami (Centuri license)", "Gyruss (Centuri)", MACHINE_SUPPORTS_SAVE ) -GAME( 1983, gyrussb, gyruss, gyruss, gyruss, gyruss_state, gyruss, ROT90, "bootleg?", "Gyruss (bootleg?)", MACHINE_SUPPORTS_SAVE ) /* Supposed Taito NZ license, but (c) Konami */ -GAME( 1983, venus, gyruss, gyruss, gyruss, gyruss_state, gyruss, ROT90, "bootleg", "Venus (bootleg of Gyruss)", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, gyruss, 0, gyruss, gyruss, gyruss_state, 0, ROT90, "Konami", "Gyruss", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, gyrussce, gyruss, gyruss, gyrussce, gyruss_state, 0, ROT90, "Konami (Centuri license)", "Gyruss (Centuri)", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, gyrussb, gyruss, gyruss, gyruss, gyruss_state, 0, ROT90, "bootleg?", "Gyruss (bootleg?)", MACHINE_SUPPORTS_SAVE ) /* Supposed Taito NZ license, but (c) Konami */ +GAME( 1983, venus, gyruss, gyruss, gyruss, gyruss_state, 0, ROT90, "bootleg", "Venus (bootleg of Gyruss)", MACHINE_SUPPORTS_SAVE )