From 0e8da3561ebf5459a52636cc603fc0b0bd1184bd Mon Sep 17 00:00:00 2001 From: "Westley M. Martinez" Date: Mon, 30 May 2016 15:52:34 -0700 Subject: [PATCH 1/3] Correct bonus life DIP switch descriptions for Mario Bros. revision F. --- src/mame/drivers/mario.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/mame/drivers/mario.cpp b/src/mame/drivers/mario.cpp index a837eca523b..68141c82022 100644 --- a/src/mame/drivers/mario.cpp +++ b/src/mame/drivers/mario.cpp @@ -243,9 +243,9 @@ static INPUT_PORTS_START( mario ) PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x0c, DEF_STR( 1C_3C ) ) PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:!5,!6") - PORT_DIPSETTING( 0x00, "20k only" ) - PORT_DIPSETTING( 0x10, "30k only" ) - PORT_DIPSETTING( 0x20, "40k only" ) + PORT_DIPSETTING( 0x00, "20k 40k 20k+" ) + PORT_DIPSETTING( 0x10, "30k 50k 20k+" ) + PORT_DIPSETTING( 0x20, "40k 60k 20k+" ) PORT_DIPSETTING( 0x30, DEF_STR( None ) ) PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:!7,!8") PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) From f6d120ab2a761abe397ce98fecb2c707a25a9f1b Mon Sep 17 00:00:00 2001 From: "Westley M. Martinez" Date: Tue, 31 May 2016 00:27:49 -0700 Subject: [PATCH 2/3] Fix DIP switch bonus life descriptions for marioe & marioo. --- src/mame/drivers/mario.cpp | 46 +++++++++++++++++++++----------------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/src/mame/drivers/mario.cpp b/src/mame/drivers/mario.cpp index 68141c82022..23ad7696749 100644 --- a/src/mame/drivers/mario.cpp +++ b/src/mame/drivers/mario.cpp @@ -227,8 +227,8 @@ static INPUT_PORTS_START( mario ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) /* doesn't work in game, but does in service mode */ + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 ) + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_START("DSW") @@ -260,16 +260,33 @@ static INPUT_PORTS_START( mario ) INPUT_PORTS_END +static INPUT_PORTS_START( marioe ) + PORT_INCLUDE( mario ) + + PORT_MODIFY ( "IN1" ) + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) /* doesn't work in game, but does in service mode */ + PORT_MODIFY( "DSW" ) + PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:!5,!6") + PORT_DIPSETTING( 0x00, "20k only" ) + PORT_DIPSETTING( 0x10, "30k only" ) + PORT_DIPSETTING( 0x20, "40k only" ) + PORT_DIPSETTING( 0x30, DEF_STR( None ) ) +INPUT_PORTS_END + static INPUT_PORTS_START( marioo ) PORT_INCLUDE( mario ) - PORT_MODIFY( "IN1" ) - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN2 ) - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN1 ) + PORT_MODIFY( "DSW" ) + PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:!5,!6") + PORT_DIPSETTING( 0x00, "20k only" ) + PORT_DIPSETTING( 0x10, "30k only" ) + PORT_DIPSETTING( 0x20, "40k only" ) + PORT_DIPSETTING( 0x30, DEF_STR( None ) ) INPUT_PORTS_END static INPUT_PORTS_START( marioj ) - PORT_INCLUDE( mario ) + PORT_INCLUDE( marioe ) PORT_MODIFY( "DSW" ) PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:!1,!2") @@ -296,17 +313,6 @@ static INPUT_PORTS_START( marioj ) PORT_DIPSETTING( 0xc0, DEF_STR( None ) ) INPUT_PORTS_END -static INPUT_PORTS_START( masao ) - PORT_INCLUDE( marioo ) - - PORT_MODIFY( "DSW" ) - PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:!5,!6") - PORT_DIPSETTING( 0x00, "20k 40k 20k+" ) - PORT_DIPSETTING( 0x10, "30k 50k 20k+" ) - PORT_DIPSETTING( 0x20, "40k 60k 20k+" ) - PORT_DIPSETTING( 0x30, DEF_STR( None ) ) -INPUT_PORTS_END - static INPUT_PORTS_START( mariobl ) @@ -831,11 +837,11 @@ ROM_END * *************************************/ -GAME( 1983, mario, 0, mario, marioo, driver_device, 0, ROT0, "Nintendo of America", "Mario Bros. (US, Revision F)", MACHINE_SUPPORTS_SAVE ) -GAME( 1983, marioe, mario, mario, mario, driver_device, 0, ROT0, "Nintendo of America", "Mario Bros. (US, Revision E)", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, mario, 0, mario, mario, driver_device, 0, ROT0, "Nintendo of America", "Mario Bros. (US, Revision F)", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, marioe, mario, mario, marioe, driver_device, 0, ROT0, "Nintendo of America", "Mario Bros. (US, Revision E)", MACHINE_SUPPORTS_SAVE ) GAME( 1983, marioo, mario, mario, marioo, driver_device, 0, ROT0, "Nintendo of America", "Mario Bros. (US, Unknown Rev)", MACHINE_SUPPORTS_SAVE ) GAME( 1983, marioj, mario, mario, marioj, driver_device, 0, ROT0, "Nintendo", "Mario Bros. (Japan)", MACHINE_SUPPORTS_SAVE ) -GAME( 1983, masao, mario, masao, masao, driver_device, 0, ROT0, "bootleg", "Masao", MACHINE_SUPPORTS_SAVE ) +GAME( 1983, masao, mario, masao, mario, driver_device, 0, ROT0, "bootleg", "Masao", MACHINE_SUPPORTS_SAVE ) // todo, these might have a better home than in here GAME( 1983, mariobl, mario, mariobl, mariobl,driver_device, 0, ROT180, "bootleg", "Mario Bros. (Japan, bootleg)", MACHINE_SUPPORTS_SAVE ) // was listed as 'on extended Ambush hardware' but doesn't seem similar apart from the sound system? From 2eff47a12976e580a04475f3ec9a73f3d4c7aa31 Mon Sep 17 00:00:00 2001 From: "Westley M. Martinez" Date: Tue, 31 May 2016 00:36:50 -0700 Subject: [PATCH 3/3] Reorder port definitions in mario to make more sense. --- src/mame/drivers/mario.cpp | 23 +++++++++-------------- 1 file changed, 9 insertions(+), 14 deletions(-) diff --git a/src/mame/drivers/mario.cpp b/src/mame/drivers/mario.cpp index 23ad7696749..b4d736fbfdc 100644 --- a/src/mame/drivers/mario.cpp +++ b/src/mame/drivers/mario.cpp @@ -260,20 +260,6 @@ static INPUT_PORTS_START( mario ) INPUT_PORTS_END -static INPUT_PORTS_START( marioe ) - PORT_INCLUDE( mario ) - - PORT_MODIFY ( "IN1" ) - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) /* doesn't work in game, but does in service mode */ - PORT_MODIFY( "DSW" ) - PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW1:!5,!6") - PORT_DIPSETTING( 0x00, "20k only" ) - PORT_DIPSETTING( 0x10, "30k only" ) - PORT_DIPSETTING( 0x20, "40k only" ) - PORT_DIPSETTING( 0x30, DEF_STR( None ) ) -INPUT_PORTS_END - static INPUT_PORTS_START( marioo ) PORT_INCLUDE( mario ) @@ -285,6 +271,15 @@ static INPUT_PORTS_START( marioo ) PORT_DIPSETTING( 0x30, DEF_STR( None ) ) INPUT_PORTS_END + +static INPUT_PORTS_START( marioe ) + PORT_INCLUDE( marioo ) + + PORT_MODIFY ( "IN1" ) + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_COIN1 ) + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) /* doesn't work in game, but does in service mode */ +INPUT_PORTS_END + static INPUT_PORTS_START( marioj ) PORT_INCLUDE( marioe )