diff --git a/src/mame/drivers/tecmo.c b/src/mame/drivers/tecmo.c index b48e1623be0..0ebe7a09247 100644 --- a/src/mame/drivers/tecmo.c +++ b/src/mame/drivers/tecmo.c @@ -242,7 +242,7 @@ ADDRESS_MAP_END -static INPUT_PORTS_START( rygar ) +static INPUT_PORTS_START( tecmo_default ) PORT_START("JOY1") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY @@ -252,7 +252,7 @@ static INPUT_PORTS_START( rygar ) PORT_START("BUTTONS1") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_START("JOY2") @@ -268,104 +268,97 @@ static INPUT_PORTS_START( rygar ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_START("SYS_0") + PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + + PORT_START("SYS_1") + PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + + PORT_START("SYS_2") + PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + + PORT_START("DSWA") + PORT_DIPUNUSED_DIPLOC( 0x01, IP_ACTIVE_HIGH, "SW1:!1" ) + PORT_DIPUNUSED_DIPLOC( 0x02, IP_ACTIVE_HIGH, "SW1:!2" ) + PORT_DIPUNUSED_DIPLOC( 0x04, IP_ACTIVE_HIGH, "SW1:!3" ) + PORT_DIPUNUSED_DIPLOC( 0x08, IP_ACTIVE_HIGH, "SW1:!4" ) + PORT_DIPUNUSED_DIPLOC( 0x10, IP_ACTIVE_HIGH, "SW1:!5" ) + PORT_DIPUNUSED_DIPLOC( 0x20, IP_ACTIVE_HIGH, "SW1:!6" ) + PORT_DIPUNUSED_DIPLOC( 0x40, IP_ACTIVE_HIGH, "SW1:!7" ) + PORT_DIPUNUSED_DIPLOC( 0x80, IP_ACTIVE_HIGH, "SW1:!8" ) + + PORT_START("DSWB") + PORT_DIPUNUSED_DIPLOC( 0x01, IP_ACTIVE_HIGH, "SW2:!1" ) + PORT_DIPUNUSED_DIPLOC( 0x02, IP_ACTIVE_HIGH, "SW2:!2" ) + PORT_DIPUNUSED_DIPLOC( 0x04, IP_ACTIVE_HIGH, "SW2:!3" ) + PORT_DIPUNUSED_DIPLOC( 0x08, IP_ACTIVE_HIGH, "SW2:!4" ) + PORT_DIPUNUSED_DIPLOC( 0x10, IP_ACTIVE_HIGH, "SW2:!5" ) + PORT_DIPUNUSED_DIPLOC( 0x20, IP_ACTIVE_HIGH, "SW2:!6" ) + PORT_DIPUNUSED_DIPLOC( 0x40, IP_ACTIVE_HIGH, "SW2:!7" ) + PORT_DIPUNUSED_DIPLOC( 0x80, IP_ACTIVE_HIGH, "SW2:!8" ) +INPUT_PORTS_END + +static INPUT_PORTS_START( rygar ) + PORT_INCLUDE(tecmo_default) + + PORT_MODIFY("BUTTONS1") + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SERVICE1 ) + + PORT_MODIFY("SYS_0") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN2 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_START("SYS_1") /* unused? */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("SYS_2") /* unused? */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("DSWA") - PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coin_A ) ) + PORT_MODIFY("DSWA") + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:!1,!2") PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x03, DEF_STR( 1C_3C ) ) - PORT_DIPNAME( 0x0C, 0x00, DEF_STR( Coin_B ) ) + PORT_DIPNAME( 0x0C, 0x00, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:!3,!4") PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x0C, DEF_STR( 1C_3C ) ) - PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) ) + PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:!5,!6") PORT_DIPSETTING( 0x30, "2" ) PORT_DIPSETTING( 0x00, "3" ) PORT_DIPSETTING( 0x10, "4" ) PORT_DIPSETTING( 0x20, "5" ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) ) + PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:!7") PORT_DIPSETTING( 0x40, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) ) - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) ) /* Listed as "Unused" in the manual */ - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x80, DEF_STR( On ) ) - PORT_START("DSWB") - PORT_DIPNAME( 0x03, 0x00, DEF_STR( Bonus_Life ) ) + PORT_MODIFY("DSWB") + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:!1,!2") PORT_DIPSETTING( 0x00, "50000 200000 500000" ) PORT_DIPSETTING( 0x01, "100000 300000 600000" ) PORT_DIPSETTING( 0x02, "200000 500000" ) PORT_DIPSETTING( 0x03, "100000" ) - PORT_DIPNAME( 0x04, 0x00, DEF_STR( Unused ) ) /* Listed as "Unused" in the manual */ - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x04, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) ) /* Listed as "Unused" in the manual */ - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - PORT_DIPNAME( 0x30, 0x00, DEF_STR( Difficulty ) ) + PORT_DIPNAME( 0x30, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:!5,!6") PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) PORT_DIPSETTING( 0x30, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x40, 0x00, "2P Can Start Anytime" ) + PORT_DIPNAME( 0x40, 0x00, "2P Can Start Anytime" ) PORT_DIPLOCATION("SW2:!7") PORT_DIPSETTING( 0x00, DEF_STR( No ) ) PORT_DIPSETTING( 0x40, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Allow_Continue ) ) + PORT_DIPNAME( 0x80, 0x80, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW2:!8") PORT_DIPSETTING( 0x00, DEF_STR( No ) ) PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) INPUT_PORTS_END static INPUT_PORTS_START( gemini ) - PORT_START("JOY1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY + PORT_INCLUDE(tecmo_default) - PORT_START("BUTTONS1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("JOY2") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL - - PORT_START("BUTTONS2") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("SYS_0") /* unused? */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("SYS_1") + PORT_MODIFY("SYS_1") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN2 ) - PORT_START("SYS_2") /* unused? */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("DSWA") - PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coin_A ) ) + PORT_MODIFY("DSWA") + PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:!1,!2,!3") PORT_DIPSETTING( 0x06, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x07, DEF_STR( 2C_3C ) ) @@ -374,10 +367,10 @@ static INPUT_PORTS_START( gemini ) PORT_DIPSETTING( 0x03, DEF_STR( 1C_4C ) ) PORT_DIPSETTING( 0x04, DEF_STR( 1C_5C ) ) PORT_DIPSETTING( 0x05, DEF_STR( 1C_6C ) ) - PORT_DIPNAME( 0x08, 0x00, "Final Round Continuation" ) + PORT_DIPNAME( 0x08, 0x00, "Final Round Continuation" ) PORT_DIPLOCATION("SW1:!4") PORT_DIPSETTING( 0x00, "Round 6" ) PORT_DIPSETTING( 0x08, "Round 7" ) - PORT_DIPNAME( 0x70, 0x00, DEF_STR( Coin_B ) ) + PORT_DIPNAME( 0x70, 0x00, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:!5,!6,!7") PORT_DIPSETTING( 0x60, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x70, DEF_STR( 2C_3C ) ) @@ -386,22 +379,22 @@ static INPUT_PORTS_START( gemini ) PORT_DIPSETTING( 0x30, DEF_STR( 1C_4C ) ) PORT_DIPSETTING( 0x40, DEF_STR( 1C_5C ) ) PORT_DIPSETTING( 0x50, DEF_STR( 1C_6C ) ) - PORT_DIPNAME( 0x80, 0x00, "Buy in During Final Round" ) + PORT_DIPNAME( 0x80, 0x00, "Buy in During Final Round" ) PORT_DIPLOCATION("SW1:!8") PORT_DIPSETTING( 0x00, DEF_STR( No ) ) PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) - PORT_START("DSWB") - PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) ) + PORT_MODIFY("DSWB") + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:!1,!2") PORT_DIPSETTING( 0x03, "2" ) PORT_DIPSETTING( 0x00, "3" ) PORT_DIPSETTING( 0x01, "4" ) PORT_DIPSETTING( 0x02, "5" ) - PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Difficulty ) ) + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:!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( Hardest ) ) - PORT_DIPNAME( 0x70, 0x00, DEF_STR( Bonus_Life ) ) + PORT_DIPNAME( 0x70, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:!5,!6,!7") PORT_DIPSETTING( 0x00, "50000 200000" ) PORT_DIPSETTING( 0x10, "50000 300000" ) PORT_DIPSETTING( 0x20, "100000 500000" ) @@ -410,75 +403,55 @@ static INPUT_PORTS_START( gemini ) PORT_DIPSETTING( 0x50, "200000" ) PORT_DIPSETTING( 0x60, "300000" ) PORT_DIPSETTING( 0x70, DEF_STR( None ) ) - 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 static INPUT_PORTS_START( backfirt ) - PORT_START("JOY1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY + PORT_INCLUDE(tecmo_default) - PORT_START("BUTTONS1") + PORT_MODIFY("BUTTONS1") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_START("JOY2") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL - - PORT_START("BUTTONS2") + PORT_MODIFY("BUTTONS2") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_START("SYS_0") /* unused? */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("SYS_1") + PORT_MODIFY("SYS_1") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN2 ) - PORT_START("SYS_2") /* unused? */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("DSWA") - PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coin_A ) ) + PORT_MODIFY("DSWA") + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:!1,!2") PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0x03, DEF_STR( 1C_6C ) ) // limit of 9? - PORT_DIPNAME( 0x0C, 0x00, DEF_STR( Coin_B ) ) + PORT_DIPNAME( 0x0C, 0x00, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:!3,!4") PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x0C, DEF_STR( 1C_3C ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:!5") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x10, DEF_STR( On ) ) + PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:!6") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x20, DEF_STR( On ) ) + PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:!7") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x40, DEF_STR( On ) ) + PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:!8") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x80, DEF_STR( On ) ) - PORT_START("DSWB") - PORT_DIPNAME( 0x07, 0x00, DEF_STR( Bonus_Life ) ) + PORT_MODIFY("DSWB") + PORT_DIPNAME( 0x07, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:!1,!2,!3") PORT_DIPSETTING( 0x00, "50000 200000 500000" ) PORT_DIPSETTING( 0x01, "100000 300000 800000" ) PORT_DIPSETTING( 0x02, "50000 200000" ) @@ -487,7 +460,7 @@ static INPUT_PORTS_START( backfirt ) PORT_DIPSETTING( 0x05, "100000" ) PORT_DIPSETTING( 0x06, "200000" ) PORT_DIPSETTING( 0x07, DEF_STR( None ) ) - PORT_DIPNAME( 0x38, 0x00, DEF_STR( Difficulty ) ) + PORT_DIPNAME( 0x38, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:!4,!5,!6") PORT_DIPSETTING( 0x00, "0" ) PORT_DIPSETTING( 0x08, "1" ) PORT_DIPSETTING( 0x10, "2" ) @@ -496,77 +469,62 @@ static INPUT_PORTS_START( backfirt ) PORT_DIPSETTING( 0x28, "5" ) PORT_DIPSETTING( 0x30, "6" ) PORT_DIPSETTING( 0x38, "7" ) - PORT_DIPNAME( 0x40, 0x40, "Continue" ) - PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x00, "Invulnerability" ) - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x80, DEF_STR( On ) ) + PORT_DIPNAME( 0x40, 0x40, "Continue" ) PORT_DIPLOCATION("SW2:!7") + PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x80, 0x00, "Invulnerability" ) PORT_DIPLOCATION("SW2:!8") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x80, DEF_STR( On ) ) INPUT_PORTS_END static INPUT_PORTS_START( silkworm ) - PORT_START("JOY1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY + PORT_INCLUDE(tecmo_default) - PORT_START("BUTTONS1") + PORT_MODIFY("BUTTONS1") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* unused? */ - PORT_START("JOY2") + PORT_MODIFY("JOY2") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) - PORT_START("BUTTONS2") + PORT_MODIFY("BUTTONS2") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* unused? */ - PORT_START("SYS_0") /* unused? */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("SYS_1") /* unused? */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - - PORT_START("SYS_2") + PORT_MODIFY("SYS_2") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN2 ) - PORT_START("DSWA") - PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coin_A ) ) + PORT_MODIFY("DSWA") + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:!1,!2") PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x03, DEF_STR( 1C_3C ) ) - PORT_DIPNAME( 0x0C, 0x00, DEF_STR( Coin_B ) ) + PORT_DIPNAME( 0x0C, 0x00, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:!3,!4") PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x0C, DEF_STR( 1C_3C ) ) - PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) ) + PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:!5,!6") PORT_DIPSETTING( 0x30, "2" ) PORT_DIPSETTING( 0x00, "3" ) PORT_DIPSETTING( 0x10, "4" ) PORT_DIPSETTING( 0x20, "5" ) - PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unknown ) ) /* unused? */ - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x40, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) ) + PORT_DIPNAME( 0x80, 0x80, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW1:!8") PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( On ) ) - PORT_START("DSWB") - PORT_DIPNAME( 0x07, 0x00, DEF_STR( Bonus_Life ) ) + PORT_MODIFY("DSWB") + PORT_DIPNAME( 0x07, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:!1,!2,!3") PORT_DIPSETTING( 0x00, "50000 200000 500000" ) PORT_DIPSETTING( 0x01, "100000 300000 800000" ) PORT_DIPSETTING( 0x02, "50000 200000" ) @@ -575,19 +533,16 @@ static INPUT_PORTS_START( silkworm ) PORT_DIPSETTING( 0x05, "100000" ) PORT_DIPSETTING( 0x06, "200000" ) PORT_DIPSETTING( 0x07, DEF_STR( None ) ) - PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) ) /* unused? */ - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - PORT_DIPNAME( 0x70, 0x00, DEF_STR( Difficulty ) ) - PORT_DIPSETTING( 0x60, "0" ) - PORT_DIPSETTING( 0x70, "0" ) - PORT_DIPSETTING( 0x00, "0" ) + PORT_DIPNAME( 0x70, 0x30, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:!5,!6,!7") +// PORT_DIPSETTING( 0x60, "0" ) /* Not listed in manual */ +// PORT_DIPSETTING( 0x70, "0" ) /* Not listed in manual */ +// PORT_DIPSETTING( 0x00, "0" ) /* Not listed in manual */ PORT_DIPSETTING( 0x10, "1" ) PORT_DIPSETTING( 0x20, "2" ) PORT_DIPSETTING( 0x30, "3" ) PORT_DIPSETTING( 0x40, "4" ) PORT_DIPSETTING( 0x50, "5" ) - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Allow_Continue ) ) + PORT_DIPNAME( 0x80, 0x00, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW2:!8") /* Listed as "NC" in manual */ PORT_DIPSETTING( 0x80, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) INPUT_PORTS_END @@ -1021,13 +976,13 @@ ROM_START( silkworm ) ROM_LOAD( "silkworm.1", 0x0000, 0x8000, CRC(5b553644) SHA1(5d39d2251094c17f7b732b4861401b3516fce9b1) ) ROM_END -ROM_START( silkworm2 ) +ROM_START( silkwormj ) ROM_REGION( 0x20000, "maincpu", 0 ) - ROM_LOAD( "r4", 0x00000, 0x10000, CRC(6df3df22) SHA1(9d6201c2df014bdb6877dfff936dddde1fe6fbd0) ) /* c000-ffff is not used */ + ROM_LOAD( "silkwormj.4", 0x00000, 0x10000, CRC(6df3df22) SHA1(9d6201c2df014bdb6877dfff936dddde1fe6fbd0) ) /* c000-ffff is not used */ ROM_LOAD( "silkworm.5", 0x10000, 0x10000, CRC(a6c7bb51) SHA1(75f6625459ab65f2d47a282c1295d4db38f5fe51) ) /* banked at f000-f7ff */ ROM_REGION( 0x20000, "soundcpu", 0 ) - ROM_LOAD( "r3", 0x0000, 0x8000, CRC(b79848d0) SHA1(d8162ab847bd0768572454d9775b0e9ed92b9519) ) + ROM_LOAD( "silkwormj.3", 0x0000, 0x8000, CRC(b79848d0) SHA1(d8162ab847bd0768572454d9775b0e9ed92b9519) ) ROM_REGION( 0x08000, "gfx1", 0 ) ROM_LOAD( "silkworm.2", 0x00000, 0x08000, CRC(e80a1cd9) SHA1(ef16feb1113acc7401f8951158b25f6f201196f2) ) /* characters */ @@ -1087,11 +1042,11 @@ RAMs: ROM_START( backfirt ) ROM_REGION( 0x20000, "maincpu", 0 ) - ROM_LOAD( "b5-e3.bin", 0x00000, 0x10000, CRC(0ab3bd4d) SHA1(2653d099c894304d3f9c2b2de9a7fed67be7b6dc) ) /* c000-ffff is not used */ - ROM_LOAD( "b4-f3.bin", 0x10000, 0x10000, CRC(150b6949) SHA1(31870a2f471b71d79a4daa0b5baca0d941de12e4) ) /* banked at f000-f7ff */ + ROM_LOAD( "b5-e3.bin", 0x00000, 0x10000, CRC(0ab3bd4d) SHA1(2653d099c894304d3f9c2b2de9a7fed67be7b6dc) ) /* c000-ffff is not used */ + ROM_LOAD( "b4-f3.bin", 0x10000, 0x10000, CRC(150b6949) SHA1(31870a2f471b71d79a4daa0b5baca0d941de12e4) ) /* banked at f000-f7ff */ ROM_REGION( 0x20000, "soundcpu", 0 ) - ROM_LOAD( "b2-e10.bin", 0x0000, 0x8000, CRC(9b2ac54f) SHA1(7c10e00235dc2668dee5c97ea5c6dc7722f35f03) ) + ROM_LOAD( "b2-e10.bin", 0x00000, 0x08000, CRC(9b2ac54f) SHA1(7c10e00235dc2668dee5c97ea5c6dc7722f35f03) ) ROM_REGION( 0x08000, "gfx1", 0 ) ROM_LOAD( "b3-c10.bin", 0x00000, 0x08000, CRC(08ce729f) SHA1(8e426251b20edfb10f0837b3106b4f333bc114a4) ) /* characters */ @@ -1186,11 +1141,11 @@ static DRIVER_INIT( backfirt ) -GAME( 1986, rygar, 0, rygar, rygar, rygar, ROT0, "Tecmo", "Rygar (US set 1)", 0 ) -GAME( 1986, rygar2, rygar, rygar, rygar, rygar, ROT0, "Tecmo", "Rygar (US set 2)", 0 ) -GAME( 1986, rygar3, rygar, rygar, rygar, rygar, ROT0, "Tecmo", "Rygar (US set 3 Old Version)", 0 ) -GAME( 1986, rygarj, rygar, rygar, rygar, rygar, ROT0, "Tecmo", "Argus no Senshi (Japan)", 0 ) -GAME( 1987, gemini, 0, gemini, gemini, gemini, ROT90, "Tecmo", "Gemini Wing", 0 ) -GAME( 1988, silkworm, 0, silkworm, silkworm, silkworm, ROT0, "Tecmo", "Silk Worm (set 1)", 0 ) -GAME( 1988, silkworm2,silkworm, silkworm, silkworm, silkworm, ROT0, "Tecmo", "Silk Worm (set 2)", 0 ) -GAME( 1988, backfirt, 0, gemini, backfirt, backfirt, ROT0, "Tecmo", "Back Fire (Tecmo, bootleg)", 0 ) +GAME( 1986, rygar, 0, rygar, rygar, rygar, ROT0, "Tecmo", "Rygar (US set 1)", 0 ) +GAME( 1986, rygar2, rygar, rygar, rygar, rygar, ROT0, "Tecmo", "Rygar (US set 2)", 0 ) +GAME( 1986, rygar3, rygar, rygar, rygar, rygar, ROT0, "Tecmo", "Rygar (US set 3 Old Version)", 0 ) +GAME( 1986, rygarj, rygar, rygar, rygar, rygar, ROT0, "Tecmo", "Argus no Senshi (Japan)", 0 ) +GAME( 1987, gemini, 0, gemini, gemini, gemini, ROT90, "Tecmo", "Gemini Wing (Japan)", 0 ) /* Japan regional warning screen */ +GAME( 1988, silkworm, 0, silkworm, silkworm, silkworm, ROT0, "Tecmo", "Silk Worm (World)", 0 ) /* No regional "Warning, if you are playing ..." screen */ +GAME( 1988, silkwormj, silkworm, silkworm, silkworm, silkworm, ROT0, "Tecmo", "Silk Worm (Japan)", 0 ) /* Japan regional warning screen */ +GAME( 1988, backfirt, 0, gemini, backfirt, backfirt, ROT0, "Tecmo", "Back Fire (Tecmo, bootleg)", 0 ) diff --git a/src/mame/mame.lst b/src/mame/mame.lst index d024a36998e..38e5e8e74d5 100644 --- a/src/mame/mame.lst +++ b/src/mame/mame.lst @@ -5525,7 +5525,7 @@ rygar3 // 6002 - (c) 1986 Tecmo rygarj // 6002 - (c) 1986 Tecmo gemini // (c) 1987 Tecmo silkworm // 6217 - (c) 1988 Tecmo -silkworm2 // 6217 - (c) 1988 Tecmo +silkwormj // 6217 - (c) 1988 Tecmo backfirt // bootleg [(c) 1988 Tecmo] tbowl // 6206 - (c) 1987 Tecmo tbowlj // 6206 - (c) 1987 Tecmo