diff --git a/src/mame/drivers/gyruss.c b/src/mame/drivers/gyruss.c index 002a5b12eff..d8aa77a6772 100644 --- a/src/mame/drivers/gyruss.c +++ b/src/mame/drivers/gyruss.c @@ -62,6 +62,7 @@ and 1 SFX channel controlled by an 8039: #include "cpu/mcs48/mcs48.h" #include "sound/ay8910.h" #include "sound/discrete.h" +#include "includes/konamipt.h" #include "includes/gyruss.h" @@ -251,54 +252,21 @@ static INPUT_PORTS_START( gyruss ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("DSW1") - PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2,3,4") - PORT_DIPSETTING( 0x02, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x08, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x04, DEF_STR( 3C_2C ) ) - PORT_DIPSETTING( 0x01, DEF_STR( 4C_3C ) ) - PORT_DIPSETTING( 0x0f, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x03, DEF_STR( 3C_4C ) ) - PORT_DIPSETTING( 0x07, DEF_STR( 2C_3C ) ) - PORT_DIPSETTING( 0x0e, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x06, DEF_STR( 2C_5C ) ) - PORT_DIPSETTING( 0x0d, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x0c, DEF_STR( 1C_4C ) ) - PORT_DIPSETTING( 0x0b, DEF_STR( 1C_5C ) ) - PORT_DIPSETTING( 0x0a, DEF_STR( 1C_6C ) ) - PORT_DIPSETTING( 0x09, DEF_STR( 1C_7C ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) - PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:5,6,7,8") - PORT_DIPSETTING( 0x20, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x50, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x40, DEF_STR( 3C_2C ) ) - PORT_DIPSETTING( 0x10, DEF_STR( 4C_3C ) ) - PORT_DIPSETTING( 0xf0, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x30, DEF_STR( 3C_4C ) ) - PORT_DIPSETTING( 0x70, DEF_STR( 2C_3C ) ) - PORT_DIPSETTING( 0xe0, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x60, DEF_STR( 2C_5C ) ) - PORT_DIPSETTING( 0xd0, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( 1C_4C ) ) - PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) ) - PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) ) - PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) + KONAMI_COINAGE_LOC(DEF_STR( Free_Play ), DEF_STR( Free_Play ), SW1) PORT_START("DSW2") - PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2") + PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2") PORT_DIPSETTING( 0x03, "3" ) PORT_DIPSETTING( 0x02, "4" ) PORT_DIPSETTING( 0x01, "5" ) PORT_DIPSETTING( 0x00, "255 (Cheat)") - PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW2:3") + PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW2:3") PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4") /* tables at 0x1653 (15 bytes) or 0x4bf3 (13 bytes) */ - PORT_DIPSETTING( 0x08, "30k 90k 60k+" ) /* last bonus life at 810k : max. 14 bonus lives */ - PORT_DIPSETTING( 0x00, "40k 110k 70k+" ) /* last bonus life at 810k : max. 12 bonus lives */ - PORT_DIPNAME( 0x70, 0x30, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5,6,7") + PORT_DIPNAME( 0x08, 0x08, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4") /* tables at 0x1653 (15 bytes) or 0x4bf3 (13 bytes) */ + PORT_DIPSETTING( 0x08, "30k 90k 60k+" ) /* last bonus life at 810k : max. 14 bonus lives */ + PORT_DIPSETTING( 0x00, "40k 110k 70k+" ) /* last bonus life at 810k : max. 12 bonus lives */ + PORT_DIPNAME( 0x70, 0x30, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5,6,7") PORT_DIPSETTING( 0x70, "1 (Easiest)" ) PORT_DIPSETTING( 0x60, "2" ) PORT_DIPSETTING( 0x50, "3" ) @@ -307,24 +275,25 @@ static INPUT_PORTS_START( gyruss ) PORT_DIPSETTING( 0x20, "6" ) PORT_DIPSETTING( 0x10, "7" ) PORT_DIPSETTING( 0x00, "8 (Hardest)" ) - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8") PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_START("DSW3") - PORT_DIPNAME( 0x01, 0x00, "Demo Music" ) PORT_DIPLOCATION("SW3:1") + 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 ) 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_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 */ + PORT_DIPNAME( 0x08, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:3") /* 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 */ PORT_DIPSETTING( 0x70, "1 (Easiest)" ) PORT_DIPSETTING( 0x60, "2" ) PORT_DIPSETTING( 0x50, "3" ) diff --git a/src/mame/drivers/hexion.c b/src/mame/drivers/hexion.c index 65b806a382c..6af3b22b3ba 100644 --- a/src/mame/drivers/hexion.c +++ b/src/mame/drivers/hexion.c @@ -141,46 +141,29 @@ ADDRESS_MAP_END static INPUT_PORTS_START( hexion ) PORT_START("DSW1") - KONAMI_COINAGE(DEF_STR( Free_Play ), DEF_STR( Free_Play )) + KONAMI_COINAGE_LOC(DEF_STR( Free_Play ), DEF_STR( Free_Play ), SW1) PORT_START("DSW2") - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x70, 0x70, DEF_STR( Difficulty ) ) - PORT_DIPSETTING( 0x70, DEF_STR( Easiest ) ) - PORT_DIPSETTING( 0x60, DEF_STR( Very_Easy) ) - PORT_DIPSETTING( 0x50, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Medium ) ) - PORT_DIPSETTING( 0x30, DEF_STR( Medium_Hard ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x10, DEF_STR( Very_Hard ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_BIT( 0x0f, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_DIPNAME( 0x70, 0x40, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5,6,7") + PORT_DIPSETTING( 0x70, DEF_STR( Easiest ) ) // "1" + PORT_DIPSETTING( 0x60, DEF_STR( Very_Easy) ) // "2" + PORT_DIPSETTING( 0x50, DEF_STR( Easy ) ) // "3" + PORT_DIPSETTING( 0x40, DEF_STR( Medium ) ) // "4" + PORT_DIPSETTING( 0x30, DEF_STR( Medium_Hard ) ) // "5" + PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) // "6" + PORT_DIPSETTING( 0x10, DEF_STR( Very_Hard ) ) // "7" + PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) // "8" + PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_START("DSW3") - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) + PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW3:1") PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_SERVICE( 0x04, IP_ACTIVE_LOW ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xfa, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_SERVICE_DIPLOC( 0x04, IP_ACTIVE_LOW, "SW3:3" ) PORT_START("P1") KONAMI8_B12_START(1) diff --git a/src/mame/drivers/ironhors.c b/src/mame/drivers/ironhors.c index 5d956502231..f1478975953 100644 --- a/src/mame/drivers/ironhors.c +++ b/src/mame/drivers/ironhors.c @@ -67,8 +67,8 @@ static ADDRESS_MAP_START( master_map, AS_PROGRAM, 8 ) AM_RANGE(0x0060, 0x00df) AM_RAM AM_RANGE(0x0800, 0x0800) AM_WRITE(soundlatch_w) AM_RANGE(0x0900, 0x0900) AM_READ_PORT("DSW3") AM_WRITE(ironhors_sh_irqtrigger_w) - AM_RANGE(0x0a00, 0x0a00) AM_READ_PORT("DSW1") AM_WRITE(ironhors_palettebank_w) - AM_RANGE(0x0b00, 0x0b00) AM_READ_PORT("DSW2") AM_WRITE(ironhors_flipscreen_w) + AM_RANGE(0x0a00, 0x0a00) AM_READ_PORT("DSW2") AM_WRITE(ironhors_palettebank_w) + AM_RANGE(0x0b00, 0x0b00) AM_READ_PORT("DSW1") AM_WRITE(ironhors_flipscreen_w) AM_RANGE(0x0b01, 0x0b01) AM_READ_PORT("P2") AM_RANGE(0x0b02, 0x0b02) AM_READ_PORT("P1") AM_RANGE(0x0b03, 0x0b03) AM_READ_PORT("SYSTEM") @@ -106,9 +106,9 @@ static ADDRESS_MAP_START( farwest_master_map, AS_PROGRAM, 8 ) AM_RANGE(0x0060, 0x00ff) AM_RAM AM_RANGE(0x0800, 0x0800) AM_WRITE(soundlatch_w) AM_RANGE(0x0900, 0x0900) /*AM_READ_PORT("DSW3") */AM_WRITE(ironhors_sh_irqtrigger_w) - AM_RANGE(0x0a00, 0x0a00) AM_READ_PORT("DSW1") //AM_WRITE(ironhors_palettebank_w) - AM_RANGE(0x0b00, 0x0b00) AM_READ_PORT("DSW2") AM_WRITE(ironhors_flipscreen_w) - AM_RANGE(0x0b01, 0x0b01) AM_READ_PORT("DSW1") //AM_WRITE(ironhors_palettebank_w) + AM_RANGE(0x0a00, 0x0a00) AM_READ_PORT("DSW2") //AM_WRITE(ironhors_palettebank_w) + AM_RANGE(0x0b00, 0x0b00) AM_READ_PORT("DSW1") AM_WRITE(ironhors_flipscreen_w) + AM_RANGE(0x0b01, 0x0b01) AM_READ_PORT("DSW2") //AM_WRITE(ironhors_palettebank_w) AM_RANGE(0x0b02, 0x0b02) AM_READ_PORT("P1") AM_RANGE(0x0b03, 0x0b03) AM_READ_PORT("SYSTEM") @@ -154,40 +154,40 @@ static INPUT_PORTS_START( dairesya ) KONAMI8_COCKTAIL_4WAY_B123_UNK PORT_START("DSW1") - PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) + KONAMI_COINAGE_LOC(DEF_STR( Free_Play ), "No Coin B", SW1) + /* "No Coin B" = coins produce sound, but no effect on coin counter */ + + PORT_START("DSW2") + PORT_DIPNAME( 0x03, 0x02, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2") PORT_DIPSETTING( 0x03, "2" ) PORT_DIPSETTING( 0x02, "3" ) PORT_DIPSETTING( 0x01, "5" ) PORT_DIPSETTING( 0x00, "7" ) - PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) + PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW2:3") PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) ) - PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) + PORT_DIPNAME( 0x18, 0x18, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:4,5") PORT_DIPSETTING( 0x18, "30K 70K+" ) PORT_DIPSETTING( 0x10, "40K 80K+" ) PORT_DIPSETTING( 0x08, "40K" ) PORT_DIPSETTING( 0x00, "50K" ) - PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) + PORT_DIPNAME( 0x60, 0x40, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:6,7") PORT_DIPSETTING( 0x60, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x40, DEF_STR( Normal ) ) // factory default (JP) + PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) // factory default (US) PORT_DIPSETTING( 0x00, DEF_STR( Very_Hard ) ) - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) + PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8") PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") - KONAMI_COINAGE(DEF_STR( Free_Play ), "No Coin B") - /* "No Coin B" = coins produce sound, but no effect on coin counter */ - PORT_START("DSW3") - PORT_DIPNAME( 0x01, 0x00, DEF_STR( Flip_Screen ) ) + PORT_DIPNAME( 0x01, 0x00, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW3:1") PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, "Upright Controls" ) + PORT_DIPNAME( 0x02, 0x02, "Upright Controls" ) PORT_DIPLOCATION("SW3:2") PORT_DIPSETTING( 0x02, DEF_STR( Single ) ) PORT_DIPSETTING( 0x00, DEF_STR( Dual ) ) - PORT_DIPNAME( 0x04, 0x04, "Button Layout" ) + PORT_DIPNAME( 0x04, 0x04, "Button Layout" ) PORT_DIPLOCATION("SW3:3") // though US manual says unused PORT_DIPSETTING( 0x04, "Power Attack Squat" ) PORT_DIPSETTING( 0x00, "Squat Attack Power" ) PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNUSED ) diff --git a/src/mame/drivers/junofrst.c b/src/mame/drivers/junofrst.c index e8d18934d3d..5022c187b84 100644 --- a/src/mame/drivers/junofrst.c +++ b/src/mame/drivers/junofrst.c @@ -334,22 +334,20 @@ static INPUT_PORTS_START( junofrst ) KONAMI8_COCKTAIL_B213_UNK PORT_START("DSW1") - KONAMI_COINAGE(DEF_STR( Free_Play ), "No Coin B") + KONAMI_COINAGE_LOC(DEF_STR( Free_Play ), "No Coin B", SW1) /* "No Coin B" = coins produce sound, but no effect on coin counter */ PORT_START("DSW2") - PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) + PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:1,2") PORT_DIPSETTING( 0x03, "3" ) PORT_DIPSETTING( 0x02, "4" ) PORT_DIPSETTING( 0x01, "5" ) PORT_DIPSETTING( 0x00, "256 (Cheat)") - PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) + PORT_DIPNAME( 0x04, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW2:3") PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x04, DEF_STR( Cocktail ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x70, 0x70, DEF_STR( Difficulty ) ) + PORT_DIPUNUSED_DIPLOC( 0x08, IP_ACTIVE_LOW, "SW2:4" ) + PORT_DIPNAME( 0x70, 0x70, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:5,6,7") PORT_DIPSETTING( 0x70, "1 (Easiest)" ) PORT_DIPSETTING( 0x60, "2" ) PORT_DIPSETTING( 0x50, "3" ) @@ -358,7 +356,7 @@ static INPUT_PORTS_START( junofrst ) PORT_DIPSETTING( 0x20, "6" ) PORT_DIPSETTING( 0x10, "7" ) PORT_DIPSETTING( 0x00, "8 (Hardest)" ) - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) + PORT_DIPNAME( 0x80, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:8") PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) INPUT_PORTS_END