summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/technos/shadfrce.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/technos/shadfrce.cpp')
-rw-r--r--src/mame/technos/shadfrce.cpp65
1 files changed, 45 insertions, 20 deletions
diff --git a/src/mame/technos/shadfrce.cpp b/src/mame/technos/shadfrce.cpp
index d166e7158b6..579f39bc861 100644
--- a/src/mame/technos/shadfrce.cpp
+++ b/src/mame/technos/shadfrce.cpp
@@ -656,12 +656,12 @@ static INPUT_PORTS_START( shadfrce )
SHADFRCE_PLAYER_INPUT( 2, IPT_START2 )
PORT_START("EXTRA") // Fake IN2 (players 1 & 2 extra inputs
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
- PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
- PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1)
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2)
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2)
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(2)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
@@ -704,21 +704,21 @@ static INPUT_PORTS_START( shadfrce )
PORT_START("DSW2") // not mapped directly
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:1,2")
- PORT_DIPSETTING( 0x01, DEF_STR( Easy ) )
+ PORT_DIPSETTING( 0x02, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x03, DEF_STR( Normal ) )
- PORT_DIPSETTING( 0x02, DEF_STR( Hard ) ) // "Advanced" in manual
+ PORT_DIPSETTING( 0x01, DEF_STR( Hard ) ) // "Advanced" in manual
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) // "Expert" in manual
PORT_DIPNAME( 0x0c, 0x0c, "Stage Clear Energy Regain" ) PORT_DIPLOCATION("SW2:3,4")
- PORT_DIPSETTING( 0x04, "50%" )
- PORT_DIPSETTING( 0x0c, "25%" )
- PORT_DIPSETTING( 0x08, "10%" )
+ PORT_DIPSETTING( 0x0c, "100%" )
+ PORT_DIPSETTING( 0x08, "50%" )
+ PORT_DIPSETTING( 0x04, "25%" )
PORT_DIPSETTING( 0x00, "0%" )
- PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:5")
- PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
- PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:6")
- PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
- PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x10, 0x10, "Player's lives" ) PORT_DIPLOCATION("SW2:5")
+ PORT_DIPSETTING( 0x00, "1" )
+ PORT_DIPSETTING( 0x10, "2" )
+ PORT_DIPNAME( 0x20, 0x20, "Vs. Stage" ) PORT_DIPLOCATION("SW2:6")
+ PORT_DIPSETTING( 0x00, "Yes" )
+ PORT_DIPSETTING( 0x20, "No" )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:7")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@@ -729,6 +729,31 @@ static INPUT_PORTS_START( shadfrce )
// PCB has 3rd DIP switch "SW3" listed in manual as 1:OFF & 2:OFF & 3:OFF (ALL "NOT USED"), 4:ON & 5:ON (ALL "DON'T TOUCH"), 6:OFF, 7:OFF, 8:OFF (ALL "NOT USED")
INPUT_PORTS_END
+static INPUT_PORTS_START( shadfrceu )
+ PORT_INCLUDE(shadfrce)
+
+ PORT_MODIFY("EXTRA") // Fake IN2 (players 1 & 2 extra inputs)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(2)
+
+ PORT_MODIFY("DSW2")
+ PORT_DIPNAME( 0x0c, 0x08, "Stage Clear Energy Regain" ) PORT_DIPLOCATION("SW2:3,4")
+ PORT_DIPSETTING( 0x08, "100%" )
+ PORT_DIPSETTING( 0x04, "50%" )
+ PORT_DIPSETTING( 0x00, "25%" )
+ PORT_DIPSETTING( 0x0c, "0%" )
+ PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:5")
+ PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+ PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:6")
+ PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
+ PORT_DIPSETTING( 0x00, DEF_STR( On ) )
+INPUT_PORTS_END
+
// Graphic Decoding
static const gfx_layout fg8x8x4_layout =
@@ -903,6 +928,6 @@ ROM_END
} // anonymous namespace
-GAME( 1993, shadfrce, 0, shadfrce, shadfrce, shadfrce_state, empty_init, ROT0, "Technos Japan", "Shadow Force (World, Version 3)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
-GAME( 1993, shadfrceu, shadfrce, shadfrce, shadfrce, shadfrce_state, empty_init, ROT0, "Technos Japan", "Shadow Force (US, Version 2)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
-GAME( 1993, shadfrcej, shadfrce, shadfrce, shadfrce, shadfrce_state, empty_init, ROT0, "Technos Japan", "Shadow Force - Henshin Ninja (Japan, Version 2)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
+GAME( 1993, shadfrce, 0, shadfrce, shadfrce, shadfrce_state, empty_init, ROT0, "Technos Japan", "Shadow Force (World, Version 3)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
+GAME( 1993, shadfrceu, shadfrce, shadfrce, shadfrceu, shadfrce_state, empty_init, ROT0, "Technos Japan", "Shadow Force (US, Version 2)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )
+GAME( 1993, shadfrcej, shadfrce, shadfrce, shadfrce, shadfrce_state, empty_init, ROT0, "Technos Japan", "Shadow Force - Henshin Ninja (Japan, Version 2)", MACHINE_NO_COCKTAIL | MACHINE_SUPPORTS_SAVE )