From 7154a0d3a40f044513532d446113059d05d5abe3 Mon Sep 17 00:00:00 2001 From: 0kmg <9137159+0kmg@users.noreply.github.com> Date: Fri, 9 Dec 2022 06:28:31 -0800 Subject: nintendo/vsnes.cpp: Use documented recommended default DIP switch settings. (#10666) * Affects hogalley, smgolf, suprmrio, vsbball, vsgradus, vsgshoe, vssoccera and any clones. * Made separate DIP switch settings for vssoccer and smgolfj, as their starting point values differ from other sets. --- src/mame/nintendo/vsnes.cpp | 66 ++++++++++++++++++++++++++++++--------------- 1 file changed, 44 insertions(+), 22 deletions(-) diff --git a/src/mame/nintendo/vsnes.cpp b/src/mame/nintendo/vsnes.cpp index 8492d6f0336..8e43d93de99 100644 --- a/src/mame/nintendo/vsnes.cpp +++ b/src/mame/nintendo/vsnes.cpp @@ -1296,7 +1296,7 @@ static INPUT_PORTS_START( platoon ) PORT_DIPSETTING( 0x08, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x10, DEF_STR( Medium ) ) PORT_DIPSETTING( 0x18, DEF_STR( Hard ) ) - PORT_DIPNAME( 0xE0, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:!6,!7,!8") + PORT_DIPNAME( 0xe0, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:!6,!7,!8") PORT_DIPSETTING( 0xc0, DEF_STR( 5C_1C ) ) PORT_DIPSETTING( 0xa0, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x80, DEF_STR( 3C_1C ) ) @@ -1341,7 +1341,7 @@ Win Hole +1 +2 Tie 0 0 Lose Hole -1 -2 */ - PORT_DIPNAME( 0x60, 0x00, "Starting Points" ) PORT_DIPLOCATION("SW1:!6,7") + PORT_DIPNAME( 0x60, 0x20, "Starting Points" ) PORT_DIPLOCATION("SW1:!6,7") PORT_DIPSETTING( 0x00, "10" ) PORT_DIPSETTING( 0x40, "13" ) PORT_DIPSETTING( 0x20, "16" ) @@ -1351,6 +1351,17 @@ Lose Hole -1 -2 PORT_DIPSETTING( 0x80, DEF_STR( Hard ) ) INPUT_PORTS_END +static INPUT_PORTS_START( golfj ) + PORT_INCLUDE( golf ) + + PORT_MODIFY("DSW0") + PORT_DIPNAME( 0x60, 0x20, "Starting Points" ) PORT_DIPLOCATION("SW1:!6,7") + PORT_DIPSETTING( 0x00, "300" ) + PORT_DIPSETTING( 0x40, "400" ) + PORT_DIPSETTING( 0x20, "500" ) + PORT_DIPSETTING( 0x60, "600" ) +INPUT_PORTS_END + // Same as 'golf', but 4 start buttons // FIXME: since UniSystems only have P1/P2 start buttons this implies the golf4s versions are for DualSystem only static INPUT_PORTS_START( golf4s ) @@ -1557,12 +1568,12 @@ static INPUT_PORTS_START( vsbball ) PORT_INCLUDE( vsnes_dual_rev ) PORT_START("DSW0") // bit 0 and 1 read from bit 3 and 4 on $4016, rest of the bits read on $4017 - PORT_DIPNAME( 0x03, 0x02, "Player Defense Strength" ) PORT_DIPLOCATION("SW1:!1,!2") + PORT_DIPNAME( 0x03, 0x01, "Player Defense Strength" ) PORT_DIPLOCATION("SW1:!1,!2") PORT_DIPSETTING( 0x00, "Weak" ) PORT_DIPSETTING( 0x02, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x01, DEF_STR( Medium ) ) PORT_DIPSETTING( 0x03, "Strong" ) - PORT_DIPNAME( 0x0c, 0x08, "Player Offense Strength" ) PORT_DIPLOCATION("SW1:!3,!4") + PORT_DIPNAME( 0x0c, 0x04, "Player Offense Strength" ) PORT_DIPLOCATION("SW1:!3,!4") PORT_DIPSETTING( 0x00, "Weak" ) PORT_DIPSETTING( 0x08, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x04, DEF_STR( Medium ) ) @@ -1585,7 +1596,7 @@ static INPUT_PORTS_START( vsbball ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x06, DEF_STR( Free_Play ) ) - PORT_DIPNAME( 0x38, 0x00, "Starting Points" ) PORT_DIPLOCATION("SW2:!4,!5,!6") + PORT_DIPNAME( 0x38, 0x30, "Starting Points" ) PORT_DIPLOCATION("SW2:!4,!5,!6") PORT_DIPSETTING( 0x00, "80 Pts" ) PORT_DIPSETTING( 0x20, "100 Pts" ) PORT_DIPSETTING( 0x10, "150 Pts" ) @@ -1776,7 +1787,7 @@ static INPUT_PORTS_START( cstlevna ) PORT_DIPNAME( 0x40, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!7") // Damage taken PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) // Normal PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) // Double - PORT_DIPUNUSED_DIPLOC( 0x80, 0x00, "SW1:!8" ) // Manual states "Must be Set to "OFF" + PORT_DIPUNUSED_DIPLOC( 0x80, 0x00, "SW1:!8" ) // Manual states Must be Set to "OFF" INPUT_PORTS_END static INPUT_PORTS_START( iceclimb ) @@ -1945,7 +1956,7 @@ static INPUT_PORTS_START( suprmrio ) PORT_DIPNAME( 0x08, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:!4") PORT_DIPSETTING( 0x08, "2" ) PORT_DIPSETTING( 0x00, "3" ) - PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:!5,!6") + PORT_DIPNAME( 0x30, 0x10, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:!5,!6") PORT_DIPSETTING( 0x00, "100 Coins" ) PORT_DIPSETTING( 0x20, "150 Coins" ) PORT_DIPSETTING( 0x10, "200 Coins" ) @@ -1953,7 +1964,7 @@ static INPUT_PORTS_START( suprmrio ) PORT_DIPNAME( 0x40, 0x00, "Timer" ) PORT_DIPLOCATION("SW1:!7") PORT_DIPSETTING( 0x00, "Slow" ) PORT_DIPSETTING( 0x40, "Fast" ) - PORT_DIPNAME( 0x80, 0x80, "Continue Lives" ) PORT_DIPLOCATION("SW1:!8") + PORT_DIPNAME( 0x80, 0x00, "Continue Lives" ) PORT_DIPLOCATION("SW1:!8") PORT_DIPSETTING( 0x80, "3" ) PORT_DIPSETTING( 0x00, "4" ) INPUT_PORTS_END @@ -1999,7 +2010,7 @@ static INPUT_PORTS_START( hogalley ) PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) ) - PORT_DIPNAME( 0x18, 0x08, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!4,!5") + PORT_DIPNAME( 0x18, 0x10, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!4,!5") PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x08, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x10, DEF_STR( Medium ) ) @@ -2027,12 +2038,12 @@ static INPUT_PORTS_START( vsgshoe ) PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) ) - PORT_DIPNAME( 0x18, 0x08, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!4,!5") + PORT_DIPNAME( 0x18, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!4,!5") PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x08, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) PORT_DIPSETTING( 0x18, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:!6") + PORT_DIPNAME( 0x20, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:!6") PORT_DIPSETTING( 0x20, "3" ) PORT_DIPSETTING( 0x00, "5" ) PORT_DIPNAME( 0x40, 0x00, "Bullets per Balloon" ) PORT_DIPLOCATION("SW1:!7") @@ -2203,11 +2214,11 @@ static INPUT_PORTS_START( vssoccer ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0x06, DEF_STR( 1C_4C ) ) PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) ) - PORT_DIPNAME( 0x18, 0x08, "Points Timer" ) PORT_DIPLOCATION("SW1:!4,!5") - PORT_DIPSETTING( 0x00, "600 Pts" ) - PORT_DIPSETTING( 0x10, "800 Pts" ) - PORT_DIPSETTING( 0x08, "1000 Pts" ) - PORT_DIPSETTING( 0x18, "1200 Pts" ) + PORT_DIPNAME( 0x18, 0x00, "Points Timer" ) PORT_DIPLOCATION("SW1:!4,!5") + PORT_DIPSETTING( 0x00, "1000 Pts" ) + PORT_DIPSETTING( 0x10, "1500 Pts" ) + PORT_DIPSETTING( 0x08, "2000 Pts" ) + PORT_DIPSETTING( 0x18, "600 Pts" ) PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!6,!7") PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x40, DEF_STR( Normal ) ) @@ -2216,6 +2227,17 @@ static INPUT_PORTS_START( vssoccer ) PORT_DIPUNUSED_DIPLOC( 0x80, 0x00, "SW1:!8" ) INPUT_PORTS_END +static INPUT_PORTS_START( vssoccera ) + PORT_INCLUDE( vssoccer ) + + PORT_MODIFY("DSW0") + PORT_DIPNAME( 0x18, 0x18, "Points Timer" ) PORT_DIPLOCATION("SW1:!4,!5") + PORT_DIPSETTING( 0x00, "600 Pts" ) + PORT_DIPSETTING( 0x10, "800 Pts" ) + PORT_DIPSETTING( 0x08, "1000 Pts" ) + PORT_DIPSETTING( 0x18, "1200 Pts" ) +INPUT_PORTS_END + static INPUT_PORTS_START( vsgradus ) PORT_INCLUDE( vsnes_rev ) @@ -2229,7 +2251,7 @@ static INPUT_PORTS_START( vsgradus ) PORT_DIPSETTING( 0x04, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0x07, DEF_STR( Free_Play ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:!4") + PORT_DIPNAME( 0x08, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:!4") PORT_DIPSETTING( 0x08, "3" ) PORT_DIPSETTING( 0x00, "4" ) PORT_DIPNAME( 0x30, 0x00, "Bonus" ) PORT_DIPLOCATION("SW1:!5,!6") @@ -2269,7 +2291,7 @@ static INPUT_PORTS_START( vsslalom ) PORT_DIPNAME( 0x40, 0x00, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW1:!7") PORT_DIPSETTING( 0x40, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x80, 0x00, "Inverted input" ) PORT_DIPLOCATION("SW1:!8") + PORT_DIPNAME( 0x80, 0x00, "Inverted input" ) PORT_DIPLOCATION("SW1:!8") // Manual states Not Used - Must be Set to "OFF" PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( On ) ) INPUT_PORTS_END @@ -2307,11 +2329,11 @@ static INPUT_PORTS_START( tkoboxng ) PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) ) - PORT_DIPNAME( 0x0C, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!3,!4") + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!3,!4") PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x04, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x0C, DEF_STR( Very_Hard ) ) + PORT_DIPSETTING( 0x0c, DEF_STR( Very_Hard ) ) PORT_DIPUNUSED_DIPLOC( 0x10, 0x00, "SW1:!5" ) PORT_DIPNAME( 0xe0, 0x00, "PPU Type" ) PORT_DIPLOCATION("SW1:!6,!7,!8") PORT_DIPSETTING( 0x00, "RP2C04-0003" ) @@ -3555,14 +3577,14 @@ GAME( 1985, vsskykid, 0, vsnes, vsskykid, vs_uni_state GAME( 1987, tkoboxng, 0, vsnes, tkoboxng, vs_uni_state, init_tkoboxng, ROT0, "Namco / Data East USA", "Vs. T.K.O. Boxing", 0 ) GAME( 1984, smgolf, 0, vsnes, golf, vs_uni_state, init_vsnormal, ROT0, "Nintendo", "Vs. Stroke & Match Golf (Men Version, set GF4-2 F)", 0 ) GAME( 1984, smgolfb, smgolf, vsnes, golf4s, vs_uni_state, init_vsnormal, ROT0, "Nintendo", "Vs. Stroke & Match Golf (Men Version, set GF4-2 ?)", 0 ) -GAME( 1984, smgolfj, smgolf, vsnes, golf, vs_uni_state, init_vsnormal, ROT0, "Nintendo Co., Ltd.", "Vs. Stroke & Match Golf (Men Version) (Japan, set GF3 B)", 0 ) +GAME( 1984, smgolfj, smgolf, vsnes, golfj, vs_uni_state, init_vsnormal, ROT0, "Nintendo Co., Ltd.", "Vs. Stroke & Match Golf (Men Version) (Japan, set GF3 B)", 0 ) GAME( 1984, ladygolfe, smgolf, vsnes, golf4s, vs_uni_state, init_vsnormal, ROT0, "Nintendo", "Vs. Stroke & Match Golf (Ladies Version, set LG4 E)", 0 ) GAME( 1984, ladygolf, smgolf, vsnes, golf, vs_uni_state, init_vsnormal, ROT0, "Nintendo", "Vs. Stroke & Match Golf (Ladies Version, set LG4 ?)", 0 ) GAME( 1984, vspinbal, 0, vsnes, vspinbal, vs_uni_state, init_vsnormal, ROT0, "Nintendo", "Vs. Pinball (US, set PN4 E-1)", 0 ) GAME( 1984, vspinbalj, vspinbal, vsnes, vspinbal, vs_uni_state, init_vsnormal, ROT0, "Nintendo Co., Ltd.", "Vs. Pinball (Japan, set PN3 B)", 0 ) GAME( 1986, vsslalom, 0, vsnes, vsslalom, vs_uni_state, init_vsnormal, ROT0, "Rare Coin-It Inc.", "Vs. Slalom", MACHINE_IMPERFECT_GRAPHICS ) GAME( 1985, vssoccer, 0, vsnes, vssoccer, vs_uni_state, init_vsnormal, ROT0, "Nintendo", "Vs. Soccer (set SC4-2 A)", 0 ) -GAME( 1985, vssoccera, vssoccer, vsnes, vssoccer, vs_uni_state, init_vsnormal, ROT0, "Nintendo", "Vs. Soccer (set SC4-3 ?)", 0 ) +GAME( 1985, vssoccera, vssoccer, vsnes, vssoccera, vs_uni_state, init_vsnormal, ROT0, "Nintendo", "Vs. Soccer (set SC4-3 ?)", 0 ) GAME( 1986, vsgradus, 0, vsnes, vsgradus, vs_uni_state, init_vskonami, ROT0, "Konami", "Vs. Gradius (US, set GR E)", 0 ) GAME( 1987, nvs_platoon, 0, vsnes, platoon, vs_uni_state, init_platoon, ROT0, "Ocean Software Limited", "Vs. Platoon", 0 ) GAME( 1987, vstetris, 0, vsnes, vstetris, vs_uni_state, init_vsnormal, ROT0, "Academysoft-Elorg", "Vs. Tetris" , 0 ) -- cgit v1.2.3