summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2017-06-07 09:16:46 -0400
committer AJR <ajrhacker@users.noreply.github.com>2017-06-07 09:16:46 -0400
commit3dfd0dc7376b890bd5fc833d994d8088f624f608 (patch)
treeaf4f1ec4690985c50cb1cc925396b73068580d39
parentb29c4c43232e97525ecb6e9fc3855ea1ac102303 (diff)
dynablst, bbmanw & clones: Use 4-way joysticks (as service manuals suggest)
-rw-r--r--src/mame/drivers/m90.cpp20
-rw-r--r--src/mame/includes/iremipt.h24
2 files changed, 34 insertions, 10 deletions
diff --git a/src/mame/drivers/m90.cpp b/src/mame/drivers/m90.cpp
index bbc32655550..c6cb376cb45 100644
--- a/src/mame/drivers/m90.cpp
+++ b/src/mame/drivers/m90.cpp
@@ -214,7 +214,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( dynablst )
PORT_START("P1_P2")
- IREM_GENERIC_JOYSTICKS_2_BUTTONS(1, 2)
+ IREM_GENERIC_JOYSTICKS_2_BUTTONS_4WAY(1, 2)
PORT_START("SYSTEM")
IREM_COINS
@@ -258,13 +258,13 @@ static INPUT_PORTS_START( dynablst )
IREM_COIN_MODE_2_HIGH
PORT_START("P3_P4")
- IREM_INPUT_PLAYER_3
- IREM_INPUT_PLAYER_4
+ IREM_INPUT_PLAYER_3_4WAY
+ IREM_INPUT_PLAYER_4_4WAY
INPUT_PORTS_END
static INPUT_PORTS_START( dynablsb )
PORT_START("P1_P2")
- IREM_GENERIC_JOYSTICKS_2_BUTTONS(2, 1)
+ IREM_GENERIC_JOYSTICKS_2_BUTTONS_4WAY(2, 1)
PORT_START("SYSTEM")
IREM_COINS
@@ -308,8 +308,8 @@ static INPUT_PORTS_START( dynablsb )
IREM_COIN_MODE_2_HIGH
PORT_START("P3_P4")
- IREM_INPUT_PLAYER_3
- IREM_INPUT_PLAYER_4
+ IREM_INPUT_PLAYER_3_4WAY
+ IREM_INPUT_PLAYER_4_4WAY
INPUT_PORTS_END
@@ -324,7 +324,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( bombrman ) /* Does not appear to support 4 players or cocktail mode */
PORT_START("P1_P2")
- IREM_GENERIC_JOYSTICKS_2_BUTTONS(1, 2)
+ IREM_GENERIC_JOYSTICKS_2_BUTTONS_4WAY(1, 2)
PORT_START("SYSTEM")
IREM_COINS
@@ -368,7 +368,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( bbmanw )
PORT_START("P1_P2")
- IREM_GENERIC_JOYSTICKS_2_BUTTONS(1, 2)
+ IREM_GENERIC_JOYSTICKS_2_BUTTONS_4WAY(1, 2)
PORT_START("SYSTEM")
IREM_COINS
@@ -412,8 +412,8 @@ static INPUT_PORTS_START( bbmanw )
IREM_COIN_MODE_2_HIGH
PORT_START("P3_P4")
- IREM_INPUT_PLAYER_3
- IREM_INPUT_PLAYER_4
+ IREM_INPUT_PLAYER_3_4WAY
+ IREM_INPUT_PLAYER_4_4WAY
INPUT_PORTS_END
static INPUT_PORTS_START( bbmanwj )
diff --git a/src/mame/includes/iremipt.h b/src/mame/includes/iremipt.h
index 582c13cd039..00c75810502 100644
--- a/src/mame/includes/iremipt.h
+++ b/src/mame/includes/iremipt.h
@@ -41,6 +41,12 @@
IREM_INPUT_JOY_HIGH(PL_H, IP_ACTIVE_LOW, PORT_8WAY, RIGHT, LEFT, DOWN, UP) \
IREM_INPUT_BUTTONS_HIGH(PL_H, IP_ACTIVE_LOW, UNUSED, UNUSED, BUTTON2, BUTTON1)
+#define IREM_GENERIC_JOYSTICKS_2_BUTTONS_4WAY(PL_L, PL_H) \
+ IREM_INPUT_JOY_LOW(PL_L, IP_ACTIVE_LOW, PORT_4WAY, RIGHT, LEFT, DOWN, UP) \
+ IREM_INPUT_BUTTONS_LOW(PL_L, IP_ACTIVE_LOW, UNUSED, UNUSED, BUTTON2, BUTTON1) \
+ IREM_INPUT_JOY_HIGH(PL_H, IP_ACTIVE_LOW, PORT_4WAY, RIGHT, LEFT, DOWN, UP) \
+ IREM_INPUT_BUTTONS_HIGH(PL_H, IP_ACTIVE_LOW, UNUSED, UNUSED, BUTTON2, BUTTON1)
+
#define IREM_GENERIC_JOYSTICKS_3_BUTTONS(PL_L, PL_H) \
IREM_INPUT_JOY_LOW(PL_L, IP_ACTIVE_LOW, PORT_8WAY, RIGHT, LEFT, DOWN, UP) \
IREM_INPUT_BUTTONS_LOW(PL_L, IP_ACTIVE_LOW, UNUSED, BUTTON3, BUTTON2, BUTTON1) \
@@ -68,6 +74,15 @@
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_COIN3 ) \
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) \
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
+#define IREM_INPUT_PLAYER_3_4WAY \
+ PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(3) \
+ PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(3) \
+ PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(3) \
+ PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(3) \
+ PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START3 ) /* If common slots, Coin3 if separate */ \
+ PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_COIN3 ) \
+ PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) \
+ PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
#define IREM_INPUT_PLAYER_4 \
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) \
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) \
@@ -77,6 +92,15 @@
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_COIN4 ) \
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) \
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4)
+#define IREM_INPUT_PLAYER_4_4WAY \
+ PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(4) \
+ PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(4) \
+ PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(4) \
+ PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(4) \
+ PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_START4 ) /* If common slots, Coin3 if separate */ \
+ PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_COIN4 ) \
+ PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) \
+ PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4)
#define IREM_COINS \