dynablst, bbmanw & clones: Use 4-way joysticks (as service manuals suggest)

This commit is contained in:
AJR 2017-06-07 09:16:46 -04:00
parent b29c4c4323
commit 3dfd0dc737
2 changed files with 34 additions and 10 deletions

View File

@ -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 )

View File

@ -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 \