From 3dfd0dc7376b890bd5fc833d994d8088f624f608 Mon Sep 17 00:00:00 2001 From: AJR Date: Wed, 7 Jun 2017 09:16:46 -0400 Subject: dynablst, bbmanw & clones: Use 4-way joysticks (as service manuals suggest) --- src/mame/drivers/m90.cpp | 20 ++++++++++---------- src/mame/includes/iremipt.h | 24 ++++++++++++++++++++++++ 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 \ -- cgit v1.2.3