diff --git a/src/mame/drivers/bwidow.c b/src/mame/drivers/bwidow.c index 6d0b9b224bb..6d760f2d5c1 100644 --- a/src/mame/drivers/bwidow.c +++ b/src/mame/drivers/bwidow.c @@ -221,7 +221,6 @@ #include "video/avgdvg.h" #include "machine/atari_vg.h" #include "sound/pokey.h" -#include "bzone.h" #define MASTER_CLOCK (12096000) #define CLOCK_3KHZ (MASTER_CLOCK / 4096) @@ -295,6 +294,10 @@ static READ8_HANDLER( spacduel_IN3_r ) return res; } +static CUSTOM_INPUT( clock_r ) +{ + return (cpunum_gettotalcycles(0) & 0x100) ? 1 : 0; +} /************************************* @@ -346,7 +349,7 @@ static ADDRESS_MAP_START( bwidow_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x6000, 0x67ff) AM_READWRITE(pokey1_r, pokey1_w) AM_RANGE(0x6800, 0x6fff) AM_READWRITE(pokey2_r, pokey2_w) AM_RANGE(0x7000, 0x7000) AM_READ(atari_vg_earom_r) - AM_RANGE(0x7800, 0x7800) AM_READ(bzone_IN0_r) /* IN0 */ + AM_RANGE(0x7800, 0x7800) AM_READ_PORT("IN0") AM_RANGE(0x8000, 0x8000) AM_READ_PORT("IN3") AM_RANGE(0x8800, 0x8800) AM_READ_PORT("IN4") AM_RANGE(0x8800, 0x8800) AM_WRITE(bwidow_misc_w) /* coin counters, leds */ @@ -362,7 +365,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( spacduel_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x03ff) AM_RAM - AM_RANGE(0x0800, 0x0800) AM_READ(bzone_IN0_r) /* IN0 */ + AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0") AM_RANGE(0x0900, 0x0907) AM_READ(spacduel_IN3_r) /* IN1 */ AM_RANGE(0x0905, 0x0906) AM_WRITE(SMH_NOP) /* ignore? */ AM_RANGE(0x0a00, 0x0a00) AM_READ(atari_vg_earom_r) @@ -395,11 +398,11 @@ static INPUT_PORTS_START( bwidow ) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_SERVICE( 0x10, IP_ACTIVE_LOW ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1) - /* bit 6 is the VG HALT bit. We set it to "low" */ + /* bit 6 is the VG HALT bit. We set it to "low" */ /* per default (busy vector processor). */ - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL) /* bit 7 is tied to a 3kHz clock */ - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL) PORT_START("DSW0") PORT_DIPNAME(0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("D4:!7,!8") @@ -474,14 +477,14 @@ static INPUT_PORTS_START( gravitar ) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_SERVICE( 0x10, IP_ACTIVE_LOW ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1) - /* bit 6 is the VG HALT bit. We set it to "low" */ + /* bit 6 is the VG HALT bit. We set it to "low" */ /* per default (busy vector processor). */ - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL) /* bit 7 is tied to a 3kHz clock */ - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL) PORT_START("DSW0") - PORT_BIT( 0x03, IP_ACTIVE_HIGH, IPT_UNUSED ) // D4:!7,!8 + PORT_DIPUNUSED_DIPLOC( 0x03, IP_ACTIVE_HIGH, "D4:!7,!8" ) PORT_DIPNAME(0x0c, 0x04, DEF_STR( Lives ) ) PORT_DIPLOCATION("D4:!5,!6") PORT_DIPSETTING ( 0x00, "3" ) PORT_DIPSETTING ( 0x04, "4" ) @@ -490,7 +493,7 @@ static INPUT_PORTS_START( gravitar ) PORT_DIPNAME(0x10, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("D4:!4") PORT_DIPSETTING ( 0x00, DEF_STR( Easy ) ) PORT_DIPSETTING ( 0x10, DEF_STR( Hard ) ) - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED ) // D4:!3 + PORT_DIPUNUSED_DIPLOC( 0x20, IP_ACTIVE_HIGH, "D4:!3" ) PORT_DIPNAME(0xc0, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("D4:!1,!2") PORT_DIPSETTING ( 0x00, "10000" ) PORT_DIPSETTING ( 0x40, "20000" ) @@ -548,11 +551,11 @@ static INPUT_PORTS_START( lunarbat ) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_SERVICE( 0x10, IP_ACTIVE_LOW ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - /* bit 6 is the VG HALT bit. We set it to "low" */ + /* bit 6 is the VG HALT bit. We set it to "low" */ /* per default (busy vector processor). */ - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL) /* bit 7 is tied to a 3kHz clock */ - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL) PORT_START("DSW0") /* DSW0 - Not read */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) @@ -582,11 +585,11 @@ static INPUT_PORTS_START( spacduel ) PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_SERVICE( 0x10, IP_ACTIVE_LOW ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1) - /* bit 6 is the VG HALT bit. We set it to "low" */ + /* bit 6 is the VG HALT bit. We set it to "low" */ /* per default (busy vector processor). */ - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL) /* bit 7 is tied to a 3kHz clock */ - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL) PORT_START("DSW0") PORT_DIPNAME(0x03, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("D4:!7,!8") diff --git a/src/mame/drivers/bzone.c b/src/mame/drivers/bzone.c index a01cc14066b..d950e992598 100644 --- a/src/mame/drivers/bzone.c +++ b/src/mame/drivers/bzone.c @@ -212,9 +212,6 @@ #include "bzone.lh" -#define IN0_3KHZ (1<<7) -#define IN0_VG_HALT (1<<6) - #define MASTER_CLOCK (12096000) #define CLOCK_3KHZ (MASTER_CLOCK / 4096) @@ -269,23 +266,9 @@ static INTERRUPT_GEN( bzone_interrupt ) * *************************************/ -READ8_HANDLER( bzone_IN0_r ) +static CUSTOM_INPUT( clock_r ) { - int res; - - res = input_port_read(machine, "IN0"); - - if (activecpu_gettotalcycles() & 0x100) - res |= IN0_3KHZ; - else - res &= ~IN0_3KHZ; - - if (avgdvg_done()) - res |= IN0_VG_HALT; - else - res &= ~IN0_VG_HALT; - - return res; + return (cpunum_gettotalcycles(0) & 0x100) ? 1 : 0; } @@ -318,7 +301,7 @@ static READ8_HANDLER( redbaron_joy_r ) static ADDRESS_MAP_START( bzone_map, ADDRESS_SPACE_PROGRAM, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_RAM - AM_RANGE(0x0800, 0x0800) AM_READ(bzone_IN0_r) /* IN0 */ + AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0") AM_RANGE(0x0a00, 0x0a00) AM_READ_PORT("DSW0") AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("DSW1") AM_RANGE(0x1000, 0x1000) AM_WRITE(bzone_coin_counter_w) @@ -338,7 +321,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( redbaron_map, ADDRESS_SPACE_PROGRAM, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7fff) AM_RANGE(0x0000, 0x03ff) AM_RAM - AM_RANGE(0x0800, 0x0800) AM_READ(bzone_IN0_r) /* IN0 */ + AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0") AM_RANGE(0x0a00, 0x0a00) AM_READ_PORT("DSW0") AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("DSW1") AM_RANGE(0x1000, 0x1000) AM_WRITE(SMH_NOP) /* coin out */ @@ -369,18 +352,16 @@ ADDRESS_MAP_END #define BZONEIN0\ PORT_START("IN0")\ - PORT_BIT ( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )\ - PORT_BIT ( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )\ - PORT_BIT ( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )\ + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )\ + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )\ + PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )\ PORT_SERVICE( 0x10, IP_ACTIVE_LOW )\ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1)\ /* bit 6 is the VG HALT bit. We set it to "low" */\ /* per default (busy vector processor). */\ - /* handled by bzone_IN0_r() */\ - PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL )\ + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL)\ /* bit 7 is tied to a 3kHz clock */\ - /* handled by bzone_IN0_r() */\ - PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL) #define BZONEDSW0\ diff --git a/src/mame/drivers/meadows.c b/src/mame/drivers/meadows.c index 23716764a83..49fed6fae88 100644 --- a/src/mame/drivers/meadows.c +++ b/src/mame/drivers/meadows.c @@ -345,10 +345,10 @@ static PALETTE_INIT( meadows ) static ADDRESS_MAP_START( meadows_main_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x0bff) AM_ROM - AM_RANGE(0x0c00, 0x0c00) AM_READ(input_port_0_r) - AM_RANGE(0x0c01, 0x0c01) AM_READ(input_port_1_r) + AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("INPUTS") + AM_RANGE(0x0c01, 0x0c01) AM_READ_PORT("STICK") AM_RANGE(0x0c02, 0x0c02) AM_READ(hsync_chain_r) - AM_RANGE(0x0c03, 0x0c03) AM_READ(input_port_2_r) + AM_RANGE(0x0c03, 0x0c03) AM_READ_PORT("DSW") AM_RANGE(0x0c00, 0x0c03) AM_WRITE(meadows_audio_w) AM_RANGE(0x0d00, 0x0d0f) AM_WRITE(meadows_spriteram_w) AM_BASE(&spriteram) AM_RANGE(0x0e00, 0x0eff) AM_RAM @@ -360,10 +360,10 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( minferno_main_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x0bff) AM_ROM AM_RANGE(0x1c00, 0x1eff) AM_RAM_WRITE(meadows_videoram_w) AM_BASE(&videoram) AM_SIZE(&videoram_size) - AM_RANGE(0x1f00, 0x1f00) AM_READ(input_port_0_r) - AM_RANGE(0x1f01, 0x1f01) AM_READ(input_port_1_r) - AM_RANGE(0x1f02, 0x1f02) AM_READ(input_port_2_r) - AM_RANGE(0x1f03, 0x1f03) AM_READ(input_port_3_r) + AM_RANGE(0x1f00, 0x1f00) AM_READ_PORT("JOY1") + AM_RANGE(0x1f01, 0x1f01) AM_READ_PORT("JOY2") + AM_RANGE(0x1f02, 0x1f02) AM_READ_PORT("BUTTONS") + AM_RANGE(0x1f03, 0x1f03) AM_READ_PORT("DSW1") AM_RANGE(0x1f00, 0x1f03) AM_WRITE(meadows_audio_w) AM_RANGE(0x1f04, 0x1f04) AM_READ(vsync_chain_hi_r) AM_RANGE(0x1f05, 0x1f05) AM_READ(vsync_chain_lo_r) @@ -371,7 +371,7 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( minferno_io_map, ADDRESS_SPACE_IO, 8 ) - AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(input_port_4_r) + AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ_PORT("DSW2") ADDRESS_MAP_END @@ -398,7 +398,7 @@ ADDRESS_MAP_END *************************************/ static INPUT_PORTS_START( meadows ) - PORT_START("INPUTS") /* IN0 buttons */ + PORT_START("INPUTS") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) @@ -408,10 +408,10 @@ static INPUT_PORTS_START( meadows ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("STICK") /* IN1 control 1 */ + PORT_START("STICK") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_MINMAX(0x10,0xf0) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) - PORT_START("DSW") /* IN2 dip switch */ + PORT_START("DSW") PORT_DIPNAME( 0x07, 0x01, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x00, "2" ) PORT_DIPSETTING( 0x01, "3" ) @@ -435,32 +435,32 @@ static INPUT_PORTS_START( meadows ) PORT_DIPSETTING( 0xc0, "35000") PORT_DIPSETTING( 0x00, DEF_STR( None )) - PORT_START("FAKE") /* FAKE coinage */ + PORT_START("FAKE") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0) PORT_BIT( 0x8e, IP_ACTIVE_LOW, IPT_UNUSED ) INPUT_PORTS_END static INPUT_PORTS_START( minferno ) - PORT_START("JOY1") /* IN0 left joystick */ + PORT_START("JOY1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) - PORT_START("JOY2") /* IN1 right joystick */ + PORT_START("JOY2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) - PORT_START("BUTTONS") /* IN2 buttons */ + PORT_START("BUTTONS") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("DSW1") /* IN3 coinage */ + PORT_START("DSW1") PORT_DIPNAME( 0x01, 0x01, "Coin Option" ) PORT_DIPSETTING( 0x00, "1 Game/Coin" ) PORT_DIPSETTING( 0x01, "1 Player/Coin" ) @@ -470,7 +470,7 @@ static INPUT_PORTS_START( minferno ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_START("DSW2") /* IN4 dip switch */ + PORT_START("DSW2") PORT_DIPNAME( 0x03, 0x00, DEF_STR( Game_Time ) ) PORT_DIPSETTING( 0x00, "60s" ) PORT_DIPSETTING( 0x01, "90s" ) diff --git a/src/mame/drivers/megasys1.c b/src/mame/drivers/megasys1.c index f56f4d31e1e..60d0ff716a7 100644 --- a/src/mame/drivers/megasys1.c +++ b/src/mame/drivers/megasys1.c @@ -157,10 +157,6 @@ static MACHINE_RESET( megasys1_hachoo ) [ Main CPU - System A / Z ] ***************************************************************************/ -static READ16_HANDLER( coins_r ) {return input_port_read(machine, "IN0");} // < 00 | Coins > -static READ16_HANDLER( player1_r ) {return input_port_read(machine, "IN1");} // < 00 | Player 1 > -static READ16_HANDLER( player2_r ) {return input_port_read(machine, "IN2") * 256 + - input_port_read(machine, "IN3");} // < Reserve | Player 2 > static READ16_HANDLER( dsw1_r ) {return input_port_read(machine, "DSW1");} // DSW 1 static READ16_HANDLER( dsw2_r ) {return input_port_read(machine, "DSW2");} // DSW 2 static READ16_HANDLER( dsw_r ) {return input_port_read(machine, "DSW1") * 256 + @@ -182,9 +178,9 @@ static INTERRUPT_GEN( interrupt_A ) static ADDRESS_MAP_START( readmem_A, ADDRESS_SPACE_PROGRAM, 16 ) ADDRESS_MAP_GLOBAL_MASK(0xfffff) AM_RANGE(0x000000, 0x05ffff) AM_READ(SMH_ROM) - AM_RANGE(0x080000, 0x080001) AM_READ(coins_r) - AM_RANGE(0x080002, 0x080003) AM_READ(player1_r) - AM_RANGE(0x080004, 0x080005) AM_READ(player2_r) + AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM") + AM_RANGE(0x080002, 0x080003) AM_READ_PORT("P1") + AM_RANGE(0x080004, 0x080005) AM_READ_PORT("P2") AM_RANGE(0x080006, 0x080007) AM_READ(dsw_r) AM_RANGE(0x080008, 0x080009) AM_READ(soundlatch2_word_r) /* from sound cpu */ AM_RANGE(0x084000, 0x084fff) AM_READ(SMH_RAM) @@ -256,9 +252,9 @@ static READ16_HANDLER( ip_select_r ) switch (i) { - case 0 : return coins_r(machine,0,0xffff); break; - case 1 : return player1_r(machine,0,0xffff); break; - case 2 : return player2_r(machine,0,0xffff); break; + case 0 : return input_port_read(machine, "SYSTEM"); break; + case 1 : return input_port_read(machine, "P1"); break; + case 2 : return input_port_read(machine, "P2"); break; case 3 : return dsw1_r(machine,0,0xffff); break; case 4 : return dsw2_r(machine,0,0xffff); break; default : return 0x0006; @@ -357,7 +353,7 @@ static ADDRESS_MAP_START( readmem_D, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x0d8000, 0x0d87ff) AM_MIRROR(0x3000) AM_READ(SMH_RAM) AM_RANGE(0x0e0000, 0x0e0001) AM_READ(dsw_r) AM_RANGE(0x0e8000, 0x0ebfff) AM_READ(SMH_RAM) - AM_RANGE(0x0f0000, 0x0f0001) AM_READ(coins_r) /* Coins + P1&P2 Buttons */ + AM_RANGE(0x0f0000, 0x0f0001) AM_READ_PORT("SYSTEM") AM_RANGE(0x0f8000, 0x0f8001) AM_READ(okim6295_status_0_lsb_r) // { 0x100000, 0x100001 protection AM_RANGE(0x1f0000, 0x1fffff) AM_READ(SMH_RAM) @@ -941,14 +937,15 @@ ROM_END static INPUT_PORTS_START( 64street ) + PORT_START("SYSTEM") COINS -// fire jump - PORT_START("IN1") - JOY_2BUTTONS(1) - PORT_START("IN2") - RESERVE // Unused - PORT_START("IN3") + + PORT_START("P1") + JOY_2BUTTONS(1) // fire jump + + PORT_START("P2") JOY_2BUTTONS(2) + RESERVE // Unused PORT_START("DSW1") COINAGE_8BITS @@ -974,7 +971,6 @@ static INPUT_PORTS_START( 64street ) PORT_DIPSETTING( 0x20, "3" ) PORT_DIPSETTING( 0x00, "5" ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) - INPUT_PORTS_END @@ -1077,14 +1073,15 @@ ROM_END static INPUT_PORTS_START( astyanax ) - COINS /* IN0 0x80001.b */ -// fire jump magic - PORT_START("IN1") - JOY_3BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_3BUTTONS(2) /* 0x80005.b */ + PORT_START("SYSTEM") /* 0x80001.b */ + COINS + + PORT_START("P1") /* 0x80003.b */ + JOY_3BUTTONS(1) // fire jump magic + + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_3BUTTONS(2) + RESERVE PORT_START("DSW1") /* 0x80006.b */ PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) ) @@ -1092,19 +1089,19 @@ static INPUT_PORTS_START( astyanax ) PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) ) -// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode -// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) ) // 1_3 -// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) ) // 1_4 -// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) ) // 1_5 +// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode +// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) ) // 1_3 +// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) ) // 1_4 +// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) ) // 1_5 PORT_DIPNAME( 0x38, 0x38, DEF_STR( Coin_B ) ) PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x20, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x38, DEF_STR( 1C_1C ) ) -// PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode -// PORT_DIPSETTING( 0x28, DEF_STR( 1C_1C ) ) // 1_3 -// PORT_DIPSETTING( 0x08, DEF_STR( 1C_1C ) ) // 1_4 -// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) ) // 1_5 +// PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode +// PORT_DIPSETTING( 0x28, DEF_STR( 1C_1C ) ) // 1_3 +// PORT_DIPSETTING( 0x08, DEF_STR( 1C_1C ) ) // 1_4 +// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) ) // 1_5 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -1328,13 +1325,15 @@ ROM_END static INPUT_PORTS_START( avspirit ) + PORT_START("SYSTEM") COINS - PORT_START("IN1") + + PORT_START("P1") JOY_2BUTTONS(1) - PORT_START("IN2") - RESERVE - PORT_START("IN3") + + PORT_START("P2") JOY_2BUTTONS(2) + RESERVE PORT_START("DSW1") COINAGE_8BITS @@ -1427,14 +1426,15 @@ ROM_END static INPUT_PORTS_START( bigstrik ) + PORT_START("SYSTEM") COINS -// pass shoot feint - PORT_START("IN1") - JOY_3BUTTONS(1) - PORT_START("IN2") - RESERVE - PORT_START("IN3") + + PORT_START("P1") + JOY_3BUTTONS(1) // pass shoot feint + + PORT_START("P2") JOY_3BUTTONS(2) + RESERVE PORT_START("DSW1") PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) @@ -1443,11 +1443,11 @@ static INPUT_PORTS_START( bigstrik ) PORT_DIPSETTING( 0x09, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x0f, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x05, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x04, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x02, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x01, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x04, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x02, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x01, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) ) PORT_DIPSETTING( 0x0e, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x0d, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0x0c, DEF_STR( 1C_4C ) ) @@ -1460,11 +1460,11 @@ static INPUT_PORTS_START( bigstrik ) PORT_DIPSETTING( 0x90, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0xf0, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x50, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x40, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x30, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x20, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x10, DEF_STR( 2C_3C ) ) -// PORT_DIPSETTING( 0x60, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x40, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x30, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x20, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x10, DEF_STR( 2C_3C ) ) +// PORT_DIPSETTING( 0x60, DEF_STR( 2C_3C ) ) PORT_DIPSETTING( 0xe0, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0xd0, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0xc0, DEF_STR( 1C_4C ) ) @@ -1545,15 +1545,15 @@ ROM_START( chimerab ) ROM_END static INPUT_PORTS_START( chimerab ) - + PORT_START("SYSTEM") COINS -// fire jump unused?(shown in service mode, but not in instructions) - PORT_START("IN1") - JOY_2BUTTONS(1) - PORT_START("IN2") - RESERVE // Unused - PORT_START("IN3") + + PORT_START("P1") + JOY_2BUTTONS(1) // fire jump unused?(shown in service mode, but not in instructions) + + PORT_START("P2") JOY_2BUTTONS(2) + RESERVE // Unused PORT_START("DSW1") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) @@ -1579,7 +1579,6 @@ static INPUT_PORTS_START( chimerab ) PORT_START("DSW2") COINAGE_8BITS - INPUT_PORTS_END @@ -1671,17 +1670,17 @@ ROM_START( cybattlr ) ROM_END static INPUT_PORTS_START( cybattlr ) - + PORT_START("SYSTEM") COINS -// fire sword - PORT_START("IN1") - JOY_2BUTTONS(1) - PORT_START("IN2") - RESERVE // Unused - PORT_START("IN3") - JOY_2BUTTONS(2) - PORT_START("DSW1") /*1fd2d9.b, !1fd009.b */ + PORT_START("P1") + JOY_2BUTTONS(1) // fire sword + + PORT_START("P2") + JOY_2BUTTONS(2) + RESERVE // Unused + + PORT_START("DSW1") /*1fd2d9.b, !1fd009.b */ PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) ) PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) ) @@ -1705,7 +1704,7 @@ static INPUT_PORTS_START( cybattlr ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) - PORT_START("DSW2") /* 1fd2d7.b, !1fd007.b */ + PORT_START("DSW2") /* 1fd2d7.b, !1fd007.b */ PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPSETTING( 0x02, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x03, DEF_STR( Normal ) ) @@ -1830,14 +1829,15 @@ ROM_START( edfu ) ROM_END static INPUT_PORTS_START( edf ) + PORT_START("SYSTEM") COINS -// fire unfold_weapons - PORT_START("IN1") - JOY_2BUTTONS(1) - PORT_START("IN2") - RESERVE - PORT_START("IN3") + + PORT_START("P1") + JOY_2BUTTONS(1) // fire unfold_weapons + + PORT_START("P2") JOY_2BUTTONS(2) + RESERVE PORT_START("DSW1") COINAGE_6BITS @@ -1870,7 +1870,6 @@ static INPUT_PORTS_START( edf ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -1930,16 +1929,17 @@ ROM_END static INPUT_PORTS_START( hachoo ) - COINS /* 0x80001.b */ -// fire jump - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_2BUTTONS(1) // fire jump + + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) @@ -1948,7 +1948,7 @@ static INPUT_PORTS_START( hachoo ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) /* Manual states dips 1-4 & 6 are "Unused" */ PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -1972,7 +1972,6 @@ static INPUT_PORTS_START( hachoo ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -2051,39 +2050,39 @@ ROM_START( hayaosi1 ) ROM_END static INPUT_PORTS_START( hayaosi1 ) - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_SERVICE_NO_TOGGLE( 0x08, IP_ACTIVE_LOW ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START3 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_START("SYSTEM") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_START2 ) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_SERVICE_NO_TOGGLE( 0x0008, IP_ACTIVE_LOW ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START3 ) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(3) + PORT_START("P1") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(3) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("IN2") + PORT_START("P2") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) RESERVE - PORT_START("IN3") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("DSW1") COINAGE_8BITS @@ -2208,17 +2207,17 @@ ROM_END static INPUT_PORTS_START( kazan ) + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - COINS /* IN0 0x80001.b */ -// fire jump - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_2BUTTONS(1) // fire jump - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) @@ -2227,7 +2226,7 @@ static INPUT_PORTS_START( kazan ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x03, "2" ) PORT_DIPSETTING( 0x01, "3" ) @@ -2250,7 +2249,6 @@ static INPUT_PORTS_START( kazan ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -2313,17 +2311,17 @@ ROM_END static INPUT_PORTS_START( jitsupro ) + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - COINS /* 0x80001.b */ - // shoot change view change bat - PORT_START("IN1") - JOY_3BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_3BUTTONS(2) /* 0x80005.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_3BUTTONS(1) // shoot change view change bat - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_3BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) @@ -2332,7 +2330,7 @@ static INPUT_PORTS_START( jitsupro ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x01, 0x01, "2 Player Innings per Credit" ) PORT_DIPSETTING( 0x01, "2" ) PORT_DIPSETTING( 0x00, "3" ) @@ -2353,9 +2351,9 @@ static INPUT_PORTS_START( jitsupro ) PORT_DIPSETTING( 0x14, "H" ) PORT_DIPSETTING( 0x10, "O (M)" ) PORT_DIPSETTING( 0x0c, "Bu" ) -// PORT_DIPSETTING( 0x08, "13" ) -// PORT_DIPSETTING( 0x04, "14" ) -// PORT_DIPSETTING( 0x00, "15" ) +// PORT_DIPSETTING( 0x08, "13" ) +// PORT_DIPSETTING( 0x04, "14" ) +// PORT_DIPSETTING( 0x00, "15" ) PORT_DIPNAME( 0x40, 0x40, "Scroll Is Based On" ) PORT_DIPSETTING( 0x40, "Shadow of Baseball" ) PORT_DIPSETTING( 0x00, "The Baseball Itself" ) @@ -2438,16 +2436,17 @@ ROM_START( kickoff ) ROM_END static INPUT_PORTS_START( kickoff ) - COINS /* 0x80001.b -> !f0008/a.w */ -// shoot pass - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b -> !f000c/e.w */ - PORT_START("IN2") - RESERVE /* 0x80004.b --> !f0010/11.w */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("SYSTEM") /* 0x80001.b -> !f0008/a.w */ + COINS - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P1") /* 0x80003.b -> !f000c/e.w */ + JOY_2BUTTONS(1) // shoot pass + + PORT_START("P2") /* 0x80004.b --> !f0010/11.w */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) ) PORT_DIPSETTING( 0x01, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 3C_1C ) ) @@ -2473,7 +2472,7 @@ static INPUT_PORTS_START( kickoff ) PORT_DIPSETTING( 0x80, DEF_STR( Japanese ) ) PORT_DIPSETTING( 0x00, DEF_STR( English ) ) // show "Japan Only" warning - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x03, 0x03, "Time" ) // -> !f0082.w PORT_DIPSETTING( 0x03, "3'" ) PORT_DIPSETTING( 0x02, "4'" ) @@ -2496,7 +2495,6 @@ static INPUT_PORTS_START( kickoff ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -2557,16 +2555,17 @@ ROM_START( makaiden ) ROM_END static INPUT_PORTS_START( lomakai ) - COINS /* 0x80001.b */ -// fire jump - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_2BUTTONS(1) // fire jump + + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS_2 PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) @@ -2575,7 +2574,7 @@ static INPUT_PORTS_START( lomakai ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x00, "2" ) PORT_DIPSETTING( 0x03, "3" ) @@ -2598,7 +2597,6 @@ static INPUT_PORTS_START( lomakai ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -2739,17 +2737,17 @@ ROM_START( p47j ) ROM_END static INPUT_PORTS_START( p47 ) + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - COINS /* 0x80001.b */ -// fire bomb - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_2BUTTONS(1) // fire bomb - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS_2 PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) @@ -2758,7 +2756,7 @@ static INPUT_PORTS_START( p47 ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x02, "2" ) PORT_DIPSETTING( 0x03, "3" ) @@ -2781,7 +2779,6 @@ static INPUT_PORTS_START( p47 ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -2906,38 +2903,36 @@ ROM_START( peekaboo ) ROM_LOAD( "priority.69", 0x000000, 0x200, CRC(b40bff56) SHA1(39c95eed79328ef2df754988db83e07909e848f8) ) ROM_END -static INPUT_PORTS_START( peekaboo ) - - PORT_START("IN0") /* COINS + P1&P2 Buttons - .b */ - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN3 ) // called "service" - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN4 ) // called "test" - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_BUTTON1 ) - PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_BUTTON2 ) - PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON3 ) // called "stage clear" - PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON4 ) // called "option" - PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN ) - #define PEEKABOO_PADDLE(_FLAG_) \ PORT_BIT( 0x00ff, 0x0080, IPT_PADDLE ) PORT_PLAYER(_FLAG_) PORT_MINMAX(0x0018,0x00e0) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_CENTERDELTA(0) - PORT_START("IN1") /* paddle p1 */ +static INPUT_PORTS_START( peekaboo ) + PORT_START("SYSTEM") + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN3 ) // called "service" + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN4 ) // called "test" + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_BUTTON1 ) + PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_BUTTON2 ) + PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON3 ) // called "stage clear" + PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON4 ) // called "option" + PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + + PORT_START("P1") PEEKABOO_PADDLE(1) - PORT_START("IN2") - RESERVE /* fake port */ - PORT_START("IN3") /* paddle p2 */ + PORT_START("P2") PEEKABOO_PADDLE(2) PORT_COCKTAIL + RESERVE - PORT_START("DSW1") /* 1f003a.b<-e0000.b */ + PORT_START("DSW1") /* 1f003a.b<-e0000.b */ COINAGE_6BITS_2 PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) ) // 1f0354<- PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) @@ -2946,7 +2941,7 @@ static INPUT_PORTS_START( peekaboo ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* 1f003b.b<-e0001.b */ + PORT_START("DSW2") /* 1f003b.b<-e0001.b */ PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) // 1f0358<-! PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x03, DEF_STR( Normal ) ) @@ -2967,7 +2962,6 @@ static INPUT_PORTS_START( peekaboo ) PORT_DIPNAME( 0x80, 0x80, "Number of controllers" ) // 1f0074<-! PORT_DIPSETTING( 0x80, "1" ) PORT_DIPSETTING( 0x00, "2" ) - INPUT_PORTS_END @@ -2980,8 +2974,8 @@ static READ16_HANDLER( protection_peekaboo_r ) switch (protection_val) { case 0x02: return 0x03; - case 0x51: return player1_r(machine,0,0xffff); - case 0x52: return player2_r(machine,0,0xffff); + case 0x51: return input_port_read(machine, "P1"); + case 0x52: return input_port_read(machine, "P2"); default: return protection_val; } } @@ -3064,16 +3058,17 @@ ROM_START( plusalph ) ROM_END static INPUT_PORTS_START( plusalph ) - COINS /* IN0 0x80001.b */ -// fire bomb - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_2BUTTONS(1) // fire bomb + + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) @@ -3082,7 +3077,7 @@ static INPUT_PORTS_START( plusalph ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x03, "3" ) PORT_DIPSETTING( 0x02, "4" ) @@ -3105,7 +3100,6 @@ static INPUT_PORTS_START( plusalph ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -3256,24 +3250,24 @@ ROM_END static INPUT_PORTS_START( rodland ) + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - COINS /* 0x80001.b */ -// fire ladder - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_2BUTTONS(1) // fire ladder - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) /* according to manual */ PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -3296,7 +3290,6 @@ static INPUT_PORTS_START( rodland ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -3353,16 +3346,17 @@ ROM_START( stdragon ) ROM_END static INPUT_PORTS_START( stdragon ) - COINS /* 0x80001.b */ -// fire fire - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_2BUTTONS(1) // fire fire + + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS_2 PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) @@ -3371,7 +3365,7 @@ static INPUT_PORTS_START( stdragon ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x02, "2" ) PORT_DIPSETTING( 0x03, "3" ) @@ -3394,7 +3388,6 @@ static INPUT_PORTS_START( stdragon ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END @@ -3445,23 +3438,24 @@ ROM_START( soldamj ) ROM_END static INPUT_PORTS_START( soldamj ) - COINS /* 0x80001.b */ - // turn turn (3rd button is shown in service mode, but seems unused) - PORT_START("IN1") - JOY_2BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_2BUTTONS(2) /* 0x80005.b */ + PORT_START("SYSTEM") /* 0x80001.b */ + COINS + + PORT_START("P1") /* 0x80003.b */ + JOY_2BUTTONS(1) // turn turn (3rd button is shown in service mode, but seems unused) - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_2BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS_2 PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x40, DEF_STR( On ) ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x03, DEF_STR( Normal ) ) @@ -3484,7 +3478,6 @@ static INPUT_PORTS_START( soldamj ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END static READ16_HANDLER( soldamj_spriteram16_r ) @@ -3583,16 +3576,17 @@ ROM_START( tshingna ) ROM_END static INPUT_PORTS_START( tshingen ) - COINS /* 0x80001.b */ - // sword_left sword_right jump - PORT_START("IN1") - JOY_3BUTTONS(1) /* 0x80003.b */ - PORT_START("IN2") - RESERVE /* 0x80004.b */ - PORT_START("IN3") - JOY_3BUTTONS(2) /* 0x80005.b */ + PORT_START("SYSTEM") /* 0x80001.b */ + COINS - PORT_START("DSW1") /* 0x80006.b */ + PORT_START("P1") /* 0x80003.b */ + JOY_3BUTTONS(1) // sword_left sword_right jump + + PORT_START("P2") /* 0x80004.b - 0x80005.b */ + JOY_3BUTTONS(2) + RESERVE + + PORT_START("DSW1") /* 0x80006.b */ COINAGE_6BITS PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) @@ -3601,7 +3595,7 @@ static INPUT_PORTS_START( tshingen ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( On ) ) - PORT_START("DSW2") /* 0x80007.b */ + PORT_START("DSW2") /* 0x80007.b */ PORT_DIPNAME( 0x03, 0x01, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x03, "2" ) PORT_DIPSETTING( 0x01, "3" ) @@ -3612,18 +3606,17 @@ static INPUT_PORTS_START( tshingen ) PORT_DIPSETTING( 0x04, "30k" ) PORT_DIPSETTING( 0x08, "40k" ) PORT_DIPSETTING( 0x00, "50k" ) - PORT_DIPNAME( 0x30, 0x10, DEF_STR( Difficulty ) ) // damage when hit - PORT_DIPSETTING( 0x30, DEF_STR( Easy ) ) // 0 - PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) // 1 - PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) // 2 - PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) // 3 + PORT_DIPNAME( 0x30, 0x10, DEF_STR( Difficulty ) ) // damage when hit + PORT_DIPSETTING( 0x30, DEF_STR( Easy ) ) // 0 + PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) // 1 + PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) // 2 + PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) // 3 PORT_DIPNAME( 0x40, 0x40, DEF_STR( Allow_Continue ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x40, DEF_STR( On ) ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - INPUT_PORTS_END diff --git a/src/mame/drivers/meijinsn.c b/src/mame/drivers/meijinsn.c index 83825bc23c4..d8817074336 100644 --- a/src/mame/drivers/meijinsn.c +++ b/src/mame/drivers/meijinsn.c @@ -84,7 +84,7 @@ static READ16_HANDLER( alpha_mcu_r ) switch (offset) { case 0: /* Dipswitch 2 */ - shared_ram[0] = (source&0xff00)|input_port_read(machine, "IN2"); + shared_ram[0] = (source&0xff00)|input_port_read(machine, "DSW"); return 0; case 0x22: /* Coin value */ @@ -95,15 +95,15 @@ static READ16_HANDLER( alpha_mcu_r ) credits=0; - if ((input_port_read(machine, "IN3")&0x3)==3) latch=0; + if ((input_port_read(machine, "COINS")&0x3)==3) latch=0; - if ((input_port_read(machine, "IN3")&0x1)==0 && !latch) + if ((input_port_read(machine, "COINS")&0x1)==0 && !latch) { shared_ram[0x29] = (source&0xff00)|(0x22); // coinA shared_ram[0x22] = (source&0xff00)|0x0; latch=1; - coinvalue = (~input_port_read(machine, "IN2")>>3) & 1; + coinvalue = (~input_port_read(machine, "DSW")>>3) & 1; deposits1++; if (deposits1 == coinage1[coinvalue][0]) @@ -114,13 +114,13 @@ static READ16_HANDLER( alpha_mcu_r ) else credits = 0; } - else if ((input_port_read(machine, "IN3")&0x2)==0 && !latch) + else if ((input_port_read(machine, "COINS")&0x2)==0 && !latch) { shared_ram[0x29] = (source&0xff00)|(0x22); // coinA shared_ram[0x22] = (source&0xff00)|0x0; latch=1; - coinvalue = (~input_port_read(machine, "IN2")>>3) & 1; + coinvalue = (~input_port_read(machine, "DSW")>>3) & 1; deposits2++; if (deposits2 == coinage2[coinvalue][0]) @@ -149,8 +149,8 @@ static ADDRESS_MAP_START( meijinsn_map, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x180000, 0x180dff) AM_RAM AM_RANGE(0x180e00, 0x180fff) AM_RAM AM_BASE(&shared_ram) AM_RANGE(0x181000, 0x181fff) AM_RAM - AM_RANGE(0x1c0000, 0x1c0001) AM_READ(input_port_1_word_r) - AM_RANGE(0x1a0000, 0x1a0001) AM_WRITE(sound_w) AM_READ(input_port_0_word_r) + AM_RANGE(0x1c0000, 0x1c0001) AM_READ_PORT("P2") + AM_RANGE(0x1a0000, 0x1a0001) AM_READ_PORT("P1") AM_WRITE(sound_w) ADDRESS_MAP_END static ADDRESS_MAP_START( meijinsn_sound_map, ADDRESS_SPACE_PROGRAM, 8 ) @@ -167,28 +167,28 @@ static ADDRESS_MAP_START( meijinsn_sound_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_END static INPUT_PORTS_START( meijinsn ) -PORT_START("IN0") - PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(1) - PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) + PORT_START("P1") + PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(1) + PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) - PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) - PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x7cc0, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_START1 ) - PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_START2 ) + PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) + PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x7cc0, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_START1 ) + PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_SERVICE ) - PORT_START("IN1") - PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2) - PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) - PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) - PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) - PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0xc0ff, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + PORT_START("P2") + PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2) + PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) + PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT) PORT_PLAYER(2) + PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) + PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0xc0ff, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_START("IN2") + PORT_START("DSW") PORT_DIPNAME( 0x07, 0x00, "Game time (actual game)" ) PORT_DIPSETTING( 0x07, "1:00" ) PORT_DIPSETTING( 0x06, "2:00" ) @@ -208,7 +208,7 @@ PORT_START("IN0") PORT_DIPSETTING( 0x20, "1:00" ) PORT_DIPSETTING( 0x00, "2:00" ) - PORT_START("IN3") /* Coin input to microcontroller */ + PORT_START("COINS") /* Coin input to microcontroller */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) INPUT_PORTS_END diff --git a/src/mame/drivers/merit.c b/src/mame/drivers/merit.c index cc9f8867f23..d51bf9ade20 100644 --- a/src/mame/drivers/merit.c +++ b/src/mame/drivers/merit.c @@ -177,8 +177,8 @@ static WRITE8_HANDLER( misc_w ) static ADDRESS_MAP_START( pitboss_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x5fff) AM_ROM AM_RANGE(0x6000, 0x67ff) AM_RAM AM_BASE(&generic_nvram) AM_SIZE(&generic_nvram_size) - AM_RANGE(0xa000, 0xa000) AM_READ(input_port_1_r) - AM_RANGE(0xa001, 0xa001) AM_READ(input_port_0_r) + AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN1") + AM_RANGE(0xa001, 0xa001) AM_READ_PORT("IN0") AM_RANGE(0xa002, 0xa002) AM_NOP //dips ? // AM_RANGE(0xc000, 0xc002) AM_NOP AM_RANGE(0xe000, 0xe001) AM_WRITENOP // 6845 crt @@ -280,7 +280,7 @@ ADDRESS_MAP_END // keep it pressed for 10 seconds to clear all the memory. // to enter hidden test mode enable "Enable Test Mode", enable "Reset High Scores" static INPUT_PORTS_START( phrcraze ) - PORT_START("IN0") /* IN0 */ + PORT_START("IN0") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) @@ -292,7 +292,7 @@ static INPUT_PORTS_START( phrcraze ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("IN1") /* IN1 */ + PORT_START("IN1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW ) @@ -490,7 +490,7 @@ static INPUT_PORTS_START( tictac ) INPUT_PORTS_END static INPUT_PORTS_START( trivia ) - PORT_START("IN0") /* IN0 */ + PORT_START("IN0") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) @@ -500,7 +500,7 @@ static INPUT_PORTS_START( trivia ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("IN1") /* IN1 */ + PORT_START("IN1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW ) @@ -520,7 +520,7 @@ static INPUT_PORTS_START( trivia ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("IN2") /* IN2 */ + PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL diff --git a/src/mame/drivers/mermaid.c b/src/mame/drivers/mermaid.c index 6ca11bb4ddf..1846f178236 100644 --- a/src/mame/drivers/mermaid.c +++ b/src/mame/drivers/mermaid.c @@ -107,18 +107,18 @@ VIDEO_EOF( mermaid ); /* Read/Write Handlers */ -static UINT8 *mermaid_AY8910_enable; +static UINT8 *mermaid_ay8910_enable; -static WRITE8_HANDLER( mermaid_AY8910_write_port_w ) +static WRITE8_HANDLER( mermaid_ay8910_write_port_w ) { - if (mermaid_AY8910_enable[0]) ay8910_write_port_0_w(machine, offset, data); - if (mermaid_AY8910_enable[1]) ay8910_write_port_1_w(machine, offset, data); + if (mermaid_ay8910_enable[0]) ay8910_write_port_0_w(machine, offset, data); + if (mermaid_ay8910_enable[1]) ay8910_write_port_1_w(machine, offset, data); } -static WRITE8_HANDLER( mermaid_AY8910_control_port_w ) +static WRITE8_HANDLER( mermaid_ay8910_control_port_w ) { - if (mermaid_AY8910_enable[0]) ay8910_control_port_0_w(machine, offset, data); - if (mermaid_AY8910_enable[1]) ay8910_control_port_1_w(machine, offset, data); + if (mermaid_ay8910_enable[0]) ay8910_control_port_0_w(machine, offset, data); + if (mermaid_ay8910_enable[1]) ay8910_control_port_1_w(machine, offset, data); } /* Memory Map */ @@ -132,26 +132,26 @@ static ADDRESS_MAP_START( mermaid_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xd840, 0xd85f) AM_RAM_WRITE(mermaid_fg_scroll_w) AM_BASE(&mermaid_fg_scrollram) AM_RANGE(0xd880, 0xd8bf) AM_RAM AM_BASE(&spriteram) AM_SIZE(&spriteram_size) AM_RANGE(0xdc00, 0xdfff) AM_RAM_WRITE(mermaid_colorram_w) AM_BASE(&colorram) - AM_RANGE(0xe000, 0xe000) AM_READ(input_port_0_r) - AM_RANGE(0xe000, 0xe001) AM_RAM AM_BASE(&mermaid_AY8910_enable) + AM_RANGE(0xe000, 0xe000) AM_READ_PORT("DSW") + AM_RANGE(0xe000, 0xe001) AM_RAM AM_BASE(&mermaid_ay8910_enable) AM_RANGE(0xe002, 0xe002) AM_WRITENOP // ??? AM_RANGE(0xe003, 0xe003) AM_WRITENOP // ??? AM_RANGE(0xe004, 0xe004) AM_WRITENOP // ??? AM_RANGE(0xe005, 0xe005) AM_WRITE(mermaid_flip_screen_x_w) AM_RANGE(0xe006, 0xe006) AM_WRITE(mermaid_flip_screen_y_w) AM_RANGE(0xe007, 0xe007) AM_WRITE(interrupt_enable_w) - AM_RANGE(0xe800, 0xe800) AM_READ(input_port_1_r) AM_WRITENOP // ??? + AM_RANGE(0xe800, 0xe800) AM_READ_PORT("P1") AM_WRITENOP // ??? AM_RANGE(0xe801, 0xe801) AM_WRITENOP // ??? AM_RANGE(0xe802, 0xe802) AM_WRITENOP // ??? AM_RANGE(0xe803, 0xe803) AM_WRITENOP // ??? AM_RANGE(0xe804, 0xe804) AM_WRITE(rougien_gfxbankswitch1_w) AM_RANGE(0xe805, 0xe805) AM_WRITE(rougien_gfxbankswitch2_w) AM_RANGE(0xe807, 0xe807) AM_WRITENOP // ??? - AM_RANGE(0xf000, 0xf000) AM_READ(input_port_2_r) + AM_RANGE(0xf000, 0xf000) AM_READ_PORT("P2") AM_RANGE(0xf800, 0xf800) AM_READ(mermaid_collision_r) AM_RANGE(0xf802, 0xf802) AM_WRITENOP // ??? - AM_RANGE(0xf806, 0xf806) AM_WRITE(mermaid_AY8910_write_port_w) - AM_RANGE(0xf807, 0xf807) AM_WRITE(mermaid_AY8910_control_port_w) + AM_RANGE(0xf806, 0xf806) AM_WRITE(mermaid_ay8910_write_port_w) + AM_RANGE(0xf807, 0xf807) AM_WRITE(mermaid_ay8910_control_port_w) ADDRESS_MAP_END /* Input Ports */ @@ -178,24 +178,24 @@ static INPUT_PORTS_START( mermaid ) PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coinage ) ) PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C )) + PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x80, DEF_STR( 1C_3C ) ) - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY + PORT_START("P1") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL + PORT_START("P2") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) 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_LEFT ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN1 ) diff --git a/src/mame/drivers/metro.c b/src/mame/drivers/metro.c index 0362961484d..6a52b54f71f 100644 --- a/src/mame/drivers/metro.c +++ b/src/mame/drivers/metro.c @@ -370,9 +370,9 @@ static READ16_HANDLER( metro_soundstatus_r ) return (busy_sndcpu ? 0x00 : 0x01); } -static READ16_HANDLER( daitorid_soundstatus_r ) +static CUSTOM_INPUT( custom_soundstatus_r ) { - return input_port_read(machine, "IN0") | (busy_sndcpu ? 0x80 : 0x00); + return (busy_sndcpu ? 0x01 : 0x00); } static WRITE16_HANDLER( metro_soundstatus_w ) @@ -1083,10 +1083,10 @@ static ADDRESS_MAP_START( daitorid_readmem, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x474000, 0x474fff) AM_READ(SMH_RAM ) // Sprites AM_RANGE(0x478000, 0x4787ff) AM_READ(SMH_RAM ) // Tiles Set AM_RANGE(0x4788a2, 0x4788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause - AM_RANGE(0xc00000, 0xc00001) AM_READ(daitorid_soundstatus_r) // Inputs - AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1") // - AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") // - AM_RANGE(0xc00006, 0xc00007) AM_READ_PORT("IN2") // + AM_RANGE(0xc00000, 0xc00001) AM_READ_PORT("IN0") + AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1") + AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") + AM_RANGE(0xc00006, 0xc00007) AM_READ_PORT("IN2") ADDRESS_MAP_END static ADDRESS_MAP_START( daitorid_writemem, ADDRESS_SPACE_PROGRAM, 16 ) @@ -1129,10 +1129,10 @@ static ADDRESS_MAP_START( dharma_readmem, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x874000, 0x874fff) AM_READ(SMH_RAM ) // Sprites AM_RANGE(0x878000, 0x8787ff) AM_READ(SMH_RAM ) // Tiles Set AM_RANGE(0x8788a2, 0x8788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause - AM_RANGE(0xc00000, 0xc00001) AM_READ(daitorid_soundstatus_r) // Inputs - AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1") // - AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") // - AM_RANGE(0xc00006, 0xc00007) AM_READ_PORT("IN2") // + AM_RANGE(0xc00000, 0xc00001) AM_READ_PORT("IN0") + AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1") + AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") + AM_RANGE(0xc00006, 0xc00007) AM_READ_PORT("IN2") ADDRESS_MAP_END static ADDRESS_MAP_START( dharma_writemem, ADDRESS_SPACE_PROGRAM, 16 ) @@ -1245,9 +1245,9 @@ static ADDRESS_MAP_START( kokushi_readmem, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x877000, 0x877fff) AM_READ(karatour_vram_2_r ) // Layer 2 (Part of) AM_RANGE(0x878000, 0x8787ff) AM_READ(SMH_RAM ) // Tiles Set AM_RANGE(0x8788a2, 0x8788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause - AM_RANGE(0xc00000, 0xc00001) AM_READ(daitorid_soundstatus_r) // From Sound CPU + AM_RANGE(0xc00000, 0xc00001) AM_READ_PORT("IN0") // From Sound CPU AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1") // Inputs - AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") // + AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") ADDRESS_MAP_END static ADDRESS_MAP_START( kokushi_writemem, ADDRESS_SPACE_PROGRAM, 16 ) @@ -1742,10 +1742,10 @@ static ADDRESS_MAP_START( poitto_readmem, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0xc74000, 0xc74fff) AM_READ(SMH_RAM ) // Sprites AM_RANGE(0xc78000, 0xc787ff) AM_READ(SMH_RAM ) // Tiles Set AM_RANGE(0xc788a2, 0xc788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause - AM_RANGE(0x800000, 0x800001) AM_READ(daitorid_soundstatus_r) // Inputs - AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN1") // - AM_RANGE(0x800004, 0x800005) AM_READ_PORT("DSW0") // - AM_RANGE(0x800006, 0x800007) AM_READ_PORT("IN2") // + AM_RANGE(0x800000, 0x800001) AM_READ_PORT("IN0") + AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN1") + AM_RANGE(0x800004, 0x800005) AM_READ_PORT("DSW0") + AM_RANGE(0x800006, 0x800007) AM_READ_PORT("IN2") ADDRESS_MAP_END static ADDRESS_MAP_START( poitto_writemem, ADDRESS_SPACE_PROGRAM, 16 ) @@ -1838,10 +1838,10 @@ static ADDRESS_MAP_START( pururun_readmem, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0xc74000, 0xc74fff) AM_READ(SMH_RAM ) // Sprites AM_RANGE(0xc78000, 0xc787ff) AM_READ(SMH_RAM ) // Tiles Set AM_RANGE(0xc788a2, 0xc788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause - AM_RANGE(0x400000, 0x400001) AM_READ(daitorid_soundstatus_r) // Inputs - AM_RANGE(0x400002, 0x400003) AM_READ_PORT("IN1") // - AM_RANGE(0x400004, 0x400005) AM_READ_PORT("DSW0") // - AM_RANGE(0x400006, 0x400007) AM_READ_PORT("IN2") // + AM_RANGE(0x400000, 0x400001) AM_READ_PORT("IN0") + AM_RANGE(0x400002, 0x400003) AM_READ_PORT("IN1") + AM_RANGE(0x400004, 0x400005) AM_READ_PORT("DSW0") + AM_RANGE(0x400006, 0x400007) AM_READ_PORT("IN2") ADDRESS_MAP_END static ADDRESS_MAP_START( pururun_writemem, ADDRESS_SPACE_PROGRAM, 16 ) @@ -1884,10 +1884,10 @@ static ADDRESS_MAP_START( toride2g_readmem, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0xc74000, 0xc74fff) AM_READ(SMH_RAM ) // Sprites AM_RANGE(0xc78000, 0xc787ff) AM_READ(SMH_RAM ) // Tiles Set AM_RANGE(0xc788a2, 0xc788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause - AM_RANGE(0x800000, 0x800001) AM_READ(daitorid_soundstatus_r) // Inputs - AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN1") // - AM_RANGE(0x800004, 0x800005) AM_READ_PORT("DSW0") // - AM_RANGE(0x800006, 0x800007) AM_READ_PORT("IN2") // + AM_RANGE(0x800000, 0x800001) AM_READ_PORT("IN0") + AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN1") + AM_RANGE(0x800004, 0x800005) AM_READ_PORT("DSW0") + AM_RANGE(0x800006, 0x800007) AM_READ_PORT("IN2") ADDRESS_MAP_END static ADDRESS_MAP_START( toride2g_writemem, ADDRESS_SPACE_PROGRAM, 16 ) @@ -2086,11 +2086,6 @@ ADDRESS_MAP_END Puzzlet ***************************************************************************/ -static READ16_HANDLER( puzzlet_dsw_r ) -{ - return input_port_read(machine, "DSW0"); -} - static WRITE16_HANDLER( puzzlet_irq_enable_w ) { if (ACCESSING_BITS_0_7) @@ -2134,21 +2129,12 @@ static ADDRESS_MAP_START( puzzlet_map, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE( 0x7f2000, 0x7f3fff ) AM_RAM AM_RANGE( 0x7f8880, 0x7f8881 ) AM_READ_PORT("IN1") - AM_RANGE( 0x7f8884, 0x7f8885 ) AM_READ( puzzlet_dsw_r ) - AM_RANGE( 0x7f8886, 0x7f8887 ) AM_READ( puzzlet_dsw_r ) + AM_RANGE( 0x7f8884, 0x7f8885 ) AM_READ_PORT("DSW0") + AM_RANGE( 0x7f8886, 0x7f8887 ) AM_READ_PORT("DSW0") AM_RANGE( 0x7f88a2, 0x7f88a3 ) AM_READ( metro_irq_cause_r ) // IRQ Cause ADDRESS_MAP_END -static READ8_HANDLER( puzzlet_port7_r ) -{ - return input_port_read(machine, "IN2"); -} - -static READ8_HANDLER( puzzlet_serB_r ) -{ - return input_port_read(machine, "IN0"); // coin -} static WRITE8_HANDLER( puzzlet_portb_w ) { @@ -2156,8 +2142,8 @@ static WRITE8_HANDLER( puzzlet_portb_w ) } static ADDRESS_MAP_START( puzzlet_io_map, ADDRESS_SPACE_IO, 8 ) - AM_RANGE( H8_PORT7, H8_PORT7 ) AM_READ( puzzlet_port7_r ) - AM_RANGE( H8_SERIAL_B, H8_SERIAL_B ) AM_READ( puzzlet_serB_r ) + AM_RANGE( H8_PORT7, H8_PORT7 ) AM_READ_PORT("IN2") + AM_RANGE( H8_SERIAL_B, H8_SERIAL_B ) AM_READ_PORT("IN0") // coin AM_RANGE( H8_PORTB, H8_PORTB ) AM_READ_PORT("DSW0") AM_WRITE( puzzlet_portb_w ) ADDRESS_MAP_END @@ -2201,7 +2187,17 @@ ADDRESS_MAP_END PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) \ PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) \ PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \ - PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* From Sound CPU in some games */ + PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + +#define COINS_SOUND \ + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 ) \ + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_TILT ) \ + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) \ + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) \ + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) \ + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) \ + PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \ + PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_soundstatus_r, NULL) /* From Sound CPU */ #define COINAGE_DSW \ @@ -2693,7 +2689,7 @@ INPUT_PORTS_END */ static INPUT_PORTS_START( daitorid ) PORT_START("IN0") // $c00000 - COINS + COINS_SOUND PORT_START("IN1") // $c00002 JOY_LSB(1, BUTTON1, UNKNOWN, UNKNOWN, UNKNOWN) // BUTTON2 and BUTTON3 in "test mode" only @@ -2744,7 +2740,7 @@ INPUT_PORTS_END contains the same values for the timer. */ static INPUT_PORTS_START( dharma ) PORT_START("IN0") //$c00000 - COINS + COINS_SOUND PORT_START("IN1") //$c00002 JOY_LSB(1, BUTTON1, UNKNOWN, UNKNOWN, UNKNOWN) // BUTTON2 and BUTTON3 in "test mode" only @@ -2786,7 +2782,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( gunmast ) PORT_START("IN0") //$400000 - COINS + COINS_SOUND PORT_START("IN1") //$400002 JOY_LSB(1, BUTTON1, BUTTON2, BUTTON3, UNKNOWN) @@ -3302,7 +3298,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( poitto ) PORT_START("IN0") //$800000 - COINS + COINS_SOUND PORT_START("IN1") //$800002 JOY_LSB(1, BUTTON1, UNKNOWN, UNKNOWN, UNKNOWN) // BUTTON2 and BUTTON3 in "test mode" only @@ -3346,14 +3342,14 @@ INPUT_PORTS_END static INPUT_PORTS_START( puzzlet ) PORT_START("IN0") // IN0 - ser B - PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN1") // IN1 - 7f8880.w PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) @@ -3411,7 +3407,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( puzzli ) PORT_START("IN0") //$c00000 - COINS + COINS_SOUND PORT_START("IN1") //$c00002 JOY_LSB(1, BUTTON1, BUTTON2, UNKNOWN, UNKNOWN) // BUTTON3 in "test mode" only @@ -3455,7 +3451,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( 3kokushi ) PORT_START("IN0") //$c00000 - COINS + COINS_SOUND PORT_START("IN1") //$c00002 JOY_LSB(1, BUTTON1, BUTTON2, UNKNOWN, UNKNOWN) @@ -3517,7 +3513,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( pururun ) PORT_START("IN0") //$400000 - COINS + COINS_SOUND PORT_START("IN1") //$400002 JOY_LSB(1, BUTTON1, BUTTON2, UNKNOWN, UNKNOWN) // BUTTON3 in "test mode" only @@ -3625,7 +3621,7 @@ INPUT_PORTS_END than another. */ static INPUT_PORTS_START( toride2g ) PORT_START("IN0") //$800000 - COINS + COINS_SOUND PORT_START("IN1") //$800002 JOY_LSB(1, BUTTON1, UNKNOWN, UNKNOWN, UNKNOWN) // BUTTON2 and BUTTON3 in "test mode" only diff --git a/src/mame/drivers/midas.c b/src/mame/drivers/midas.c index 01242996474..4b06a280e25 100644 --- a/src/mame/drivers/midas.c +++ b/src/mame/drivers/midas.c @@ -178,11 +178,6 @@ static VIDEO_UPDATE( livequiz ) return 0; } -static READ16_HANDLER( livequiz_eeprom_r ) -{ - return input_port_read(machine, "IN2") | (eeprom_read_bit() << 3); -} - static WRITE16_HANDLER( livequiz_eeprom_w ) { if (ACCESSING_BITS_0_7) @@ -226,7 +221,7 @@ static ADDRESS_MAP_START( mem_map, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x000000, 0x1fffff) AM_ROM AM_RANGE(0x900000, 0x900001) AM_READ_PORT("IN5") - AM_RANGE(0x920000, 0x920001) AM_READ( livequiz_eeprom_r ) + AM_RANGE(0x920000, 0x920001) AM_READ_PORT("IN2") AM_RANGE(0x940000, 0x940001) AM_READ_PORT("IN0") AM_RANGE(0x980000, 0x980001) AM_READ_PORT("IN1") @@ -335,7 +330,7 @@ static INPUT_PORTS_START( livequiz ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_SPECIAL ) // EEPROM + PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(eeprom_bit_r, NULL) // EEPROM PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_SERVICE_NO_TOGGLE( 0x0040, IP_ACTIVE_LOW ) diff --git a/src/mame/drivers/mikie.c b/src/mame/drivers/mikie.c index 1328368c1a6..05006e17026 100644 --- a/src/mame/drivers/mikie.c +++ b/src/mame/drivers/mikie.c @@ -71,12 +71,12 @@ static ADDRESS_MAP_START( mikie_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x2100, 0x2100) AM_WRITE(watchdog_reset_w) AM_RANGE(0x2200, 0x2200) AM_WRITE(mikie_palettebank_w) AM_RANGE(0x2300, 0x2300) AM_WRITENOP // ??? - AM_RANGE(0x2400, 0x2400) AM_READWRITE(input_port_0_r, soundlatch_w) - AM_RANGE(0x2401, 0x2401) AM_READ(input_port_1_r) - AM_RANGE(0x2402, 0x2402) AM_READ(input_port_2_r) - AM_RANGE(0x2403, 0x2403) AM_READ(input_port_3_r) - AM_RANGE(0x2500, 0x2500) AM_READ(input_port_4_r) - AM_RANGE(0x2501, 0x2501) AM_READ(input_port_5_r) + AM_RANGE(0x2400, 0x2400) AM_READ_PORT("SYSTEM") AM_WRITE(soundlatch_w) + AM_RANGE(0x2401, 0x2401) AM_READ_PORT("P1") + AM_RANGE(0x2402, 0x2402) AM_READ_PORT("P2") + AM_RANGE(0x2403, 0x2403) AM_READ_PORT("DSW2") + AM_RANGE(0x2500, 0x2500) AM_READ_PORT("DSW0") + AM_RANGE(0x2501, 0x2501) AM_READ_PORT("DSW1") AM_RANGE(0x2800, 0x288f) AM_RAM AM_BASE(&spriteram) AM_SIZE(&spriteram_size) AM_RANGE(0x2890, 0x37ff) AM_RAM AM_RANGE(0x3800, 0x3bff) AM_RAM_WRITE(mikie_colorram_w) AM_BASE(&colorram) @@ -101,7 +101,7 @@ ADDRESS_MAP_END /* Input Ports */ static INPUT_PORTS_START( mikie ) - PORT_START("IN0") + PORT_START("SYSTEM") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) @@ -111,21 +111,21 @@ static INPUT_PORTS_START( mikie ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY + PORT_START("P1") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("IN2") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL + PORT_START("P2") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) diff --git a/src/mame/drivers/minivadr.c b/src/mame/drivers/minivadr.c index c49f3749212..c3fd089ce34 100644 --- a/src/mame/drivers/minivadr.c +++ b/src/mame/drivers/minivadr.c @@ -50,7 +50,7 @@ static VIDEO_UPDATE( minivadr ) static ADDRESS_MAP_START( minivadr_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x1fff) AM_ROM AM_RANGE(0xa000, 0xbfff) AM_RAM AM_BASE(&videoram) AM_SIZE(&videoram_size) - AM_RANGE(0xe008, 0xe008) AM_READWRITE(input_port_0_r, SMH_NOP) // W - ??? + AM_RANGE(0xe008, 0xe008) AM_READ_PORT("INPUTS") AM_WRITENOP // W - ??? ADDRESS_MAP_END diff --git a/src/mame/drivers/missb2.c b/src/mame/drivers/missb2.c index 32707c0d11e..348949c0d16 100644 --- a/src/mame/drivers/missb2.c +++ b/src/mame/drivers/missb2.c @@ -156,10 +156,10 @@ static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xfd00, 0xfdff) AM_RAM // ??? AM_RANGE(0xfe00, 0xfe03) AM_RAM // ??? AM_RANGE(0xfe80, 0xfe83) AM_RAM // ??? - AM_RANGE(0xff00, 0xff00) AM_READ(input_port_0_r) - AM_RANGE(0xff01, 0xff01) AM_READ(input_port_1_r) - AM_RANGE(0xff02, 0xff02) AM_READ(input_port_2_r) - AM_RANGE(0xff03, 0xff03) AM_READ(input_port_3_r) + AM_RANGE(0xff00, 0xff00) AM_READ_PORT("DSW1") + AM_RANGE(0xff01, 0xff01) AM_READ_PORT("DSW2") + AM_RANGE(0xff02, 0xff02) AM_READ_PORT("P1") + AM_RANGE(0xff03, 0xff03) AM_READ_PORT("P2") AM_RANGE(0xff94, 0xff94) AM_WRITENOP // ??? AM_RANGE(0xff98, 0xff98) AM_WRITENOP // ??? ADDRESS_MAP_END @@ -193,7 +193,7 @@ ADDRESS_MAP_END /* Input Ports */ static INPUT_PORTS_START( missb2 ) - PORT_START("DSW0") + PORT_START("DSW1") PORT_DIPNAME( 0x01, 0x00, DEF_STR( Language ) ) PORT_DIPSETTING( 0x00, DEF_STR( English ) ) PORT_DIPSETTING( 0x01, DEF_STR( Japanese ) ) @@ -215,7 +215,7 @@ static INPUT_PORTS_START( missb2 ) PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) ) PORT_DIPSETTING( 0x80, DEF_STR( 1C_2C ) ) - PORT_START("DSW1") + PORT_START("DSW2") PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPSETTING( 0x02, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x03, DEF_STR( Medium ) ) @@ -237,8 +237,8 @@ static INPUT_PORTS_START( missb2 ) PORT_DIPSETTING( 0x80, DEF_STR( High ) ) PORT_DIPSETTING( 0xc0, DEF_STR( Very_High ) ) - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY + PORT_START("P1") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) @@ -247,8 +247,8 @@ static INPUT_PORTS_START( missb2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_PLAYER(2) + PORT_START("P2") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT ) // ??? PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) diff --git a/src/mame/drivers/missile.c b/src/mame/drivers/missile.c index a506044dcda..ccc2b381c4c 100644 --- a/src/mame/drivers/missile.c +++ b/src/mame/drivers/missile.c @@ -806,7 +806,7 @@ static INPUT_PORTS_START( missile ) PORT_BIT( 0x18, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_SERVICE( 0x40, IP_ACTIVE_LOW ) - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(get_vblank, 0) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(get_vblank, NULL) PORT_START("R10") /* IN2 */ PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("R10:1,2") @@ -888,7 +888,7 @@ static INPUT_PORTS_START( suprmatk ) PORT_BIT( 0x18, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_SERVICE( 0x40, IP_ACTIVE_LOW ) - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(get_vblank, 0) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(get_vblank, NULL) PORT_START("R10") /* IN2 */ PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("R10:1,2") diff --git a/src/mame/drivers/mlanding.c b/src/mame/drivers/mlanding.c index c356409cc2e..cfe79b2a3c4 100644 --- a/src/mame/drivers/mlanding.c +++ b/src/mame/drivers/mlanding.c @@ -141,18 +141,18 @@ static ADDRESS_MAP_START( mlanding_mem, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE(&ml_unk)//AM_SHARE(2) AM_RANGE(0x280000, 0x2807ff) AM_RAM // is it shared with mecha ? tested around $940 - AM_RANGE(0x290000, 0x290001) AM_READ(input_port_1_word_r) - AM_RANGE(0x290002, 0x290003) AM_READ(input_port_0_word_r) + AM_RANGE(0x290000, 0x290001) AM_READ_PORT("IN1") + AM_RANGE(0x290002, 0x290003) AM_READ_PORT("IN0") AM_RANGE(0x240004, 0x240005) AM_NOP //watchdog ?? AM_RANGE(0x240006, 0x240007) AM_READ(io1_r) // vblank ? AM_RANGE(0x2a0000, 0x2a0001) AM_WRITE(ml_subreset_w) - AM_RANGE(0x2b0000, 0x2b0001) AM_READ(input_port_4_word_r) //-40 .. 40 analog controls ? - AM_RANGE(0x2b0004, 0x2b0005) AM_READ(input_port_5_word_r) //-40 .. 40 analog controls ? - AM_RANGE(0x2c0000, 0x2c0001) AM_READ(input_port_6_word_r) //-60 .. 60 analog controls ? - AM_RANGE(0x2c0002, 0x2c0003) AM_READ(input_port_2_word_r) - AM_RANGE(0x2b0002, 0x2b0003) AM_READ(input_port_2_word_r) + AM_RANGE(0x2b0000, 0x2b0001) AM_READ_PORT("STICKX") //-40 .. 40 analog controls ? + AM_RANGE(0x2b0004, 0x2b0005) AM_READ_PORT("STICKY") //-40 .. 40 analog controls ? + AM_RANGE(0x2c0000, 0x2c0001) AM_READ_PORT("STICKZ") //-60 .. 60 analog controls ? + AM_RANGE(0x2c0002, 0x2c0003) AM_READ_PORT("IN3") + AM_RANGE(0x2b0002, 0x2b0003) AM_READ_PORT("IN2") // IN2/IN3 could be switched ADDRESS_MAP_END @@ -311,24 +311,23 @@ static INPUT_PORTS_START( mlanding ) PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_COIN3 ) - PORT_DIPNAME( 0x020, 0x020, DEF_STR( Demo_Sounds ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x020, DEF_STR( On ) ) + PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Demo_Sounds ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0020, DEF_STR( On ) ) + PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) ) + PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0040, DEF_STR( On ) ) + PORT_DIPNAME( 0x0080, 0x0080, "test 1" ) + PORT_DIPSETTING( 0x0000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x0080, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x40, DEF_STR( On ) ) - PORT_DIPNAME( 0x80, 0x80, "test 1" ) - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x80, DEF_STR( On ) ) - - PORT_START("STICX") /* Stick 1 (3) */ + PORT_START("STICX") /* Stick 1 (3) */ PORT_BIT( 0xffff, 0x0000, IPT_AD_STICK_X ) PORT_MINMAX(0xffd8,0x28) PORT_SENSITIVITY(30) PORT_KEYDELTA(1) PORT_PLAYER(1) - PORT_START("STICKY") /* Stick 2 (4) */ + PORT_START("STICKY") /* Stick 2 (4) */ PORT_BIT( 0xffff, 0x0000, IPT_AD_STICK_Y ) PORT_MINMAX(0xffd8,0x28) PORT_SENSITIVITY(30) PORT_KEYDELTA(1) PORT_PLAYER(1) - PORT_START("STICKZ") /* Stick 3 (5) */ + PORT_START("STICKZ") /* Stick 3 (5) */ PORT_BIT( 0xffff, 0x0000, IPT_AD_STICK_Z ) PORT_MINMAX(0xffc4,0x3c) PORT_SENSITIVITY(30) PORT_KEYDELTA(1) PORT_PLAYER(1) INPUT_PORTS_END @@ -438,4 +437,3 @@ static DRIVER_INIT(mlanding) } GAME( 1990, mlanding, 0, mlanding, mlanding, mlanding, ROT0, "Taito Corporation", "Midnight Landing", GAME_NOT_WORKING|GAME_NO_SOUND ) - diff --git a/src/mame/drivers/model1.c b/src/mame/drivers/model1.c index 492208c8b7c..1169a4dc7ee 100644 --- a/src/mame/drivers/model1.c +++ b/src/mame/drivers/model1.c @@ -646,13 +646,13 @@ static READ16_HANDLER( io_r ) static const char *inputnames[] = { "IN0", "IN1", "IN2" }; if(offset < 0x8) - return input_port_read(machine, analognames[offset]); + return input_port_read_safe(machine, analognames[offset], 0x00); if(offset < 0x10) { offset -= 0x8; if(offset < 3) - return input_port_read(machine, inputnames[offset]) | 0xff00; + return input_port_read(machine, inputnames[offset]); return 0xff; } @@ -1054,44 +1054,38 @@ ADDRESS_MAP_END static INPUT_PORTS_START( vf ) - PORT_START("AN0") /* Unused analog port 0 */ - PORT_START("AN1") /* Unused analog port 1 */ - PORT_START("AN2") /* Unused analog port 2 */ - PORT_START("AN3") /* Unused analog port 3 */ - PORT_START("AN4") /* Unused analog port 4 */ - PORT_START("AN5") /* Unused analog port 5 */ - PORT_START("AN6") /* Unused analog port 6 */ - PORT_START("AN7") /* Unused analog port 7 */ - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_SERVICE_NO_TOGGLE(0x0004, IP_ACTIVE_LOW) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN2") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END static INPUT_PORTS_START( vr ) @@ -1104,34 +1098,31 @@ static INPUT_PORTS_START( vr ) PORT_START("AN2") /* Brake */ PORT_BIT( 0xff, 0x30, IPT_PEDAL ) PORT_MINMAX(1,0xff) PORT_SENSITIVITY(100) PORT_KEYDELTA(16) PORT_PLAYER(2) - PORT_START("AN3") /* Unused analog port 3 */ - PORT_START("AN4") /* Unused analog port 4 */ - PORT_START("AN5") /* Unused analog port 5 */ - PORT_START("AN6") /* Unused analog port 6 */ - PORT_START("AN7") /* Unused analog port 7 */ - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_SERVICE_NO_TOGGLE(0x0004, IP_ACTIVE_LOW) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - 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_BUTTON5 ) PORT_PLAYER(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN2") - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END static INPUT_PORTS_START( wingwar ) @@ -1144,34 +1135,31 @@ static INPUT_PORTS_START( wingwar ) PORT_START("AN2") /* Throttle */ PORT_BIT( 0xff, 0x01, IPT_PEDAL ) PORT_MINMAX(1,0xff) PORT_SENSITIVITY(100) PORT_KEYDELTA(16) - PORT_START("AN3") /* Unused analog port 3 */ - PORT_START("AN4") /* Unused analog port 4 */ - PORT_START("AN5") /* Unused analog port 5 */ - PORT_START("AN6") /* Unused analog port 6 */ - PORT_START("AN7") /* Unused analog port 7 */ - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_SERVICE_NO_TOGGLE(0x0004, IP_ACTIVE_LOW) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - 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_BUTTON5 ) PORT_PLAYER(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1) + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN2") - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END static INPUT_PORTS_START( swa ) @@ -1184,36 +1172,34 @@ static INPUT_PORTS_START( swa ) PORT_START("AN2") /* Throttle */ PORT_BIT( 0xff, 228, IPT_PEDAL ) PORT_MINMAX(28,228) PORT_SENSITIVITY(100) PORT_KEYDELTA(16) PORT_REVERSE - PORT_START("AN3") /* Unused analog port 3 */ - PORT_START("AN4") /* X */ PORT_BIT( 0xff, 127, IPT_AD_STICK_X ) PORT_MINMAX(27,227) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_REVERSE PORT_PLAYER(2) PORT_START("AN5") /* Y */ PORT_BIT( 0xff, 127, IPT_AD_STICK_Y ) PORT_MINMAX(27,227) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_PLAYER(2) - PORT_START("AN6") /* Unused analog port 6 */ - PORT_START("AN7") /* Unused analog port 7 */ - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_SERVICE_NO_TOGGLE(0x0004, IP_ACTIVE_LOW) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) + PORT_BIT( 0x00c0, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x00e0, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN2") - PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END #define MODEL1_CPU_BOARD \ diff --git a/src/mame/drivers/model3.c b/src/mame/drivers/model3.c index ce8ce35a2aa..651b24227a8 100644 --- a/src/mame/drivers/model3.c +++ b/src/mame/drivers/model3.c @@ -1045,8 +1045,6 @@ static MACHINE_RESET(model3_15) { model3_init(machine, 0x15); } static MACHINE_RESET(model3_20) { model3_init(machine, 0x20); } static MACHINE_RESET(model3_21) { model3_init(machine, 0x21); } -static UINT32 eeprom_bit = 0; - static UINT64 controls_2; static UINT64 controls_3; static UINT8 model3_serial_fifo1; @@ -1065,11 +1063,12 @@ static READ64_HANDLER( model3_ctrl_r ) } else if (ACCESSING_BITS_24_31) { - if(model3_controls_bank & 0x1) { - eeprom_bit = eeprom_read_bit() << 5; - return ((input_port_read(machine, "IN1") & ~0x20) | eeprom_bit) << 24; + if(model3_controls_bank & 0x1) + { + return (input_port_read(machine, "IN1")) << 24; } - else { + else + { return (input_port_read(machine, "IN0")) << 24; } } @@ -1532,26 +1531,27 @@ static ADDRESS_MAP_START( model3_mem, ADDRESS_SPACE_PROGRAM, 64) AM_RANGE(0xff800000, 0xffffffff) AM_ROM AM_REGION("user1", 0) ADDRESS_MAP_END -#define MODEL3_SYSTEM_CONTROLS_1 \ -PORT_START("IN0") \ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) \ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) \ - PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW ) /* Test Button A */ \ - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* Service Button A */ \ - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) \ - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) \ + +static INPUT_PORTS_START( common ) + PORT_START("IN0") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW ) /* Test Button A */ + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* Service Button A */ + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) -#define MODEL3_SYSTEM_CONTROLS_2 \ -PORT_START("IN1") \ - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button B") PORT_CODE(KEYCODE_8) \ - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Test Button B") PORT_CODE(KEYCODE_7) \ - PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_START("IN1") + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(eeprom_bit_r, NULL) + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button B") PORT_CODE(KEYCODE_8) + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Test Button B") PORT_CODE(KEYCODE_7) + PORT_BIT( 0x1f, IP_ACTIVE_LOW, IPT_UNUSED ) +INPUT_PORTS_END static INPUT_PORTS_START( model3 ) - MODEL3_SYSTEM_CONTROLS_1 - MODEL3_SYSTEM_CONTROLS_2 + PORT_INCLUDE( common ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) @@ -1571,8 +1571,7 @@ static INPUT_PORTS_START( model3 ) INPUT_PORTS_END static INPUT_PORTS_START( lostwsga ) - MODEL3_SYSTEM_CONTROLS_1 - MODEL3_SYSTEM_CONTROLS_2 + PORT_INCLUDE( common ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) @@ -1601,8 +1600,7 @@ static INPUT_PORTS_START( lostwsga ) INPUT_PORTS_END static INPUT_PORTS_START( scud ) - MODEL3_SYSTEM_CONTROLS_1 - MODEL3_SYSTEM_CONTROLS_2 + PORT_INCLUDE( common ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* View Button 1 */ @@ -1631,8 +1629,7 @@ static INPUT_PORTS_START( scud ) INPUT_PORTS_END static INPUT_PORTS_START( bass ) - MODEL3_SYSTEM_CONTROLS_1 - MODEL3_SYSTEM_CONTROLS_2 + PORT_INCLUDE( common ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) /* Cast */ @@ -1665,8 +1662,7 @@ static INPUT_PORTS_START( bass ) INPUT_PORTS_END static INPUT_PORTS_START( harley ) - MODEL3_SYSTEM_CONTROLS_1 - MODEL3_SYSTEM_CONTROLS_2 + PORT_INCLUDE( common ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* View Button 1 */ @@ -1695,8 +1691,7 @@ static INPUT_PORTS_START( harley ) INPUT_PORTS_END static INPUT_PORTS_START( daytona2 ) - MODEL3_SYSTEM_CONTROLS_1 - MODEL3_SYSTEM_CONTROLS_2 + PORT_INCLUDE( common ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* View Button 1 */ @@ -1725,8 +1720,7 @@ static INPUT_PORTS_START( daytona2 ) INPUT_PORTS_END static INPUT_PORTS_START( swtrilgy ) - MODEL3_SYSTEM_CONTROLS_1 - MODEL3_SYSTEM_CONTROLS_2 + PORT_INCLUDE( common ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) @@ -1748,8 +1742,7 @@ static INPUT_PORTS_START( swtrilgy ) INPUT_PORTS_END static INPUT_PORTS_START( eca ) - MODEL3_SYSTEM_CONTROLS_1 - MODEL3_SYSTEM_CONTROLS_2 + PORT_INCLUDE( common ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* View Change */ @@ -1785,9 +1778,10 @@ static INPUT_PORTS_START( skichamp ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) /* Select 2 */ PORT_START("IN1") + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(eeprom_bit_r, NULL) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button B") PORT_CODE(KEYCODE_8) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Test Button B") PORT_CODE(KEYCODE_7) - PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x1f, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* Pole Right */ diff --git a/src/mame/drivers/mogura.c b/src/mame/drivers/mogura.c index adfe0357a19..beedf1096c3 100644 --- a/src/mame/drivers/mogura.c +++ b/src/mame/drivers/mogura.c @@ -89,12 +89,12 @@ static WRITE8_HANDLER( mogura_tileram_w ) static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x08, 0x08) AM_READ(input_port_0_r) - AM_RANGE(0x0c, 0x0c) AM_READ(input_port_1_r) - AM_RANGE(0x0d, 0x0d) AM_READ(input_port_2_r) - AM_RANGE(0x0e, 0x0e) AM_READ(input_port_3_r) - AM_RANGE(0x0f, 0x0f) AM_READ(input_port_4_r) - AM_RANGE(0x10, 0x10) AM_READ(input_port_5_r) + AM_RANGE(0x08, 0x08) AM_READ_PORT("SYSTEM") + AM_RANGE(0x0c, 0x0c) AM_READ_PORT("P1") + AM_RANGE(0x0d, 0x0d) AM_READ_PORT("P2") + AM_RANGE(0x0e, 0x0e) AM_READ_PORT("P3") + AM_RANGE(0x0f, 0x0f) AM_READ_PORT("P4") + AM_RANGE(0x10, 0x10) AM_READ_PORT("SERVICE") ADDRESS_MAP_END @@ -138,7 +138,7 @@ ADDRESS_MAP_END static INPUT_PORTS_START( mogura ) - PORT_START("IN0") + PORT_START("SYSTEM") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) @@ -148,7 +148,7 @@ static INPUT_PORTS_START( mogura ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE3 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE4 ) - PORT_START("IN1") + PORT_START("P1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) @@ -158,7 +158,7 @@ static INPUT_PORTS_START( mogura ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(1) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) - PORT_START("IN2") + PORT_START("P2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) @@ -168,7 +168,7 @@ static INPUT_PORTS_START( mogura ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) - PORT_START("IN3") + PORT_START("P3") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3) @@ -178,7 +178,7 @@ static INPUT_PORTS_START( mogura ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(3) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 ) - PORT_START("IN4") + PORT_START("P4") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4) @@ -188,9 +188,9 @@ static INPUT_PORTS_START( mogura ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 ) - PORT_START("IN5") + PORT_START("SERVICE") PORT_SERVICE_NO_TOGGLE( 0x01, IP_ACTIVE_LOW) - PORT_BIT ( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED ) INPUT_PORTS_END diff --git a/src/mame/drivers/mole.c b/src/mame/drivers/mole.c index f639ce836a5..2847807ca83 100644 --- a/src/mame/drivers/mole.c +++ b/src/mame/drivers/mole.c @@ -115,15 +115,15 @@ static ADDRESS_MAP_START( mole_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x8c40, 0x8c40) AM_WRITENOP // ??? AM_RANGE(0x8c80, 0x8c80) AM_WRITENOP // ??? AM_RANGE(0x8c81, 0x8c81) AM_WRITENOP // ??? - AM_RANGE(0x8d00, 0x8d00) AM_READWRITE(input_port_0_r, watchdog_reset_w) - AM_RANGE(0x8d40, 0x8d40) AM_READ(input_port_1_r) - AM_RANGE(0x8d80, 0x8d80) AM_READ(input_port_2_r) - AM_RANGE(0x8dc0, 0x8dc0) AM_READWRITE(input_port_3_r, mole_flipscreen_w) + AM_RANGE(0x8d00, 0x8d00) AM_READ_PORT("DSW") AM_WRITE(watchdog_reset_w) + AM_RANGE(0x8d40, 0x8d40) AM_READ_PORT("IN0") + AM_RANGE(0x8d80, 0x8d80) AM_READ_PORT("IN1") + AM_RANGE(0x8dc0, 0x8dc0) AM_READ_PORT("IN2") AM_WRITE(mole_flipscreen_w) ADDRESS_MAP_END static INPUT_PORTS_START( mole ) - PORT_START("DSW") // 0x8d00 + PORT_START("DSW") /* 0x8d00 */ PORT_DIPNAME( 0x01, 0x00, "Round Points" ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( On ) ) @@ -142,7 +142,7 @@ static INPUT_PORTS_START( mole ) PORT_DIPSETTING( 0x30, "D" ) PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_START("IN0") // 0x8d40 + PORT_START("IN0") /* 0x8d40 */ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 ) @@ -152,7 +152,7 @@ static INPUT_PORTS_START( mole ) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON8 ) - PORT_START("IN1") // 0x8d80 + PORT_START("IN1") /* 0x8d80 */ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON9 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL @@ -164,7 +164,7 @@ static INPUT_PORTS_START( mole ) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_START("IN2") // 0x8dc0 + PORT_START("IN2") /* 0x8dc0 */ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON8 ) PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_COCKTAIL diff --git a/src/mame/drivers/mosaic.c b/src/mame/drivers/mosaic.c index 8f19b73fb43..42ae442c6df 100644 --- a/src/mame/drivers/mosaic.c +++ b/src/mame/drivers/mosaic.c @@ -132,8 +132,8 @@ static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) AM_RANGE(0x70, 0x70) AM_READ(ym2203_status_port_0_r) AM_RANGE(0x71, 0x71) AM_READ(ym2203_read_port_0_r) AM_RANGE(0x72, 0x72) AM_READ(protection_r) - AM_RANGE(0x74, 0x74) AM_READ(input_port_0_r) - AM_RANGE(0x76, 0x76) AM_READ(input_port_1_r) + AM_RANGE(0x74, 0x74) AM_READ_PORT("P1") + AM_RANGE(0x76, 0x76) AM_READ_PORT("P2") ADDRESS_MAP_END static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 ) @@ -150,8 +150,8 @@ static ADDRESS_MAP_START( gfire2_readport, ADDRESS_SPACE_IO, 8 ) AM_RANGE(0x70, 0x70) AM_READ(ym2203_status_port_0_r) AM_RANGE(0x71, 0x71) AM_READ(ym2203_read_port_0_r) AM_RANGE(0x72, 0x72) AM_READ(gfire2_protection_r) - AM_RANGE(0x74, 0x74) AM_READ(input_port_0_r) - AM_RANGE(0x76, 0x76) AM_READ(input_port_1_r) + AM_RANGE(0x74, 0x74) AM_READ_PORT("P1") + AM_RANGE(0x76, 0x76) AM_READ_PORT("P2") ADDRESS_MAP_END static ADDRESS_MAP_START( gfire2_writeport, ADDRESS_SPACE_IO, 8 ) @@ -165,7 +165,7 @@ ADDRESS_MAP_END static INPUT_PORTS_START( mosaic ) - PORT_START("P1") /* IN0 */ + PORT_START("P1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY @@ -175,7 +175,7 @@ static INPUT_PORTS_START( mosaic ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_START("P2") /* IN1 */ + PORT_START("P2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) @@ -185,7 +185,7 @@ static INPUT_PORTS_START( mosaic ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_START("DSW") /* DSW1 */ + PORT_START("DSW") PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_DIPNAME( 0x40, 0x00, "Bombs" ) PORT_DIPSETTING( 0x00, "3" ) @@ -210,7 +210,7 @@ static INPUT_PORTS_START( mosaic ) INPUT_PORTS_END static INPUT_PORTS_START( gfire2 ) - PORT_START("P1") /* IN0 */ + PORT_START("P1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY @@ -220,7 +220,7 @@ static INPUT_PORTS_START( gfire2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_START("P2") /* IN1 */ + PORT_START("P2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) @@ -230,7 +230,7 @@ static INPUT_PORTS_START( gfire2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("DSW") /* DSW1 */ + PORT_START("DSW") PORT_DIPNAME( 0x80, 0x00, DEF_STR( Language ) ) PORT_DIPSETTING( 0x00, DEF_STR( English ) ) PORT_DIPSETTING( 0x80, "Korean" ) @@ -246,7 +246,7 @@ static INPUT_PORTS_START( gfire2 ) PORT_DIPSETTING( 0x0c, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x08, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x04, DEF_STR( Hard ) ) -// PORT_DIPSETTING( 0x00, DEF_STR( Hard ) ) +// PORT_DIPSETTING( 0x00, DEF_STR( Hard ) ) PORT_DIPNAME( 0x02, 0x02, "Bonus Time" ) PORT_DIPSETTING( 0x00, "*2 +30" ) PORT_DIPSETTING( 0x02, "*2 +50" ) diff --git a/src/mame/drivers/mouser.c b/src/mame/drivers/mouser.c index 4ee28a4caa8..2a37d6dd792 100644 --- a/src/mame/drivers/mouser.c +++ b/src/mame/drivers/mouser.c @@ -58,10 +58,10 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x5fff) AM_READ(SMH_ROM) AM_RANGE(0x6000, 0x6bff) AM_READ(SMH_RAM) AM_RANGE(0x9000, 0x93ff) AM_READ(SMH_RAM) - AM_RANGE(0xa000, 0xa000) AM_READ(input_port_0_r) - AM_RANGE(0xa800, 0xa800) AM_READ(input_port_1_r) - AM_RANGE(0xb000, 0xb000) AM_READ(input_port_2_r) - AM_RANGE(0xb800, 0xb800) AM_READ(input_port_3_r) + AM_RANGE(0xa000, 0xa000) AM_READ_PORT("P1") + AM_RANGE(0xa800, 0xa800) AM_READ_PORT("SYSTEM") + AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW") + AM_RANGE(0xb800, 0xb800) AM_READ_PORT("P2") ADDRESS_MAP_END @@ -105,61 +105,61 @@ static ADDRESS_MAP_START( writeport2, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_END static INPUT_PORTS_START( mouser ) - PORT_START("P1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) - PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY + PORT_START("SYSTEM") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_DIPNAME( 0x20, 0x00, DEF_STR( Difficulty ) ) /* guess ! - check code at 0x29a1 */ + PORT_DIPSETTING( 0x00, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("SYSTEM") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_DIPNAME( 0x20, 0x00, DEF_STR( Difficulty ) ) /* guess ! - check code at 0x29a1 */ - PORT_DIPSETTING( 0x00, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_START("P1") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) + PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY - PORT_START("DSW") - PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) ) - PORT_DIPSETTING( 0x00, "3" ) - PORT_DIPSETTING( 0x01, "4" ) - PORT_DIPSETTING( 0x02, "5" ) - PORT_DIPSETTING( 0x03, "6" ) - PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) ) - PORT_DIPSETTING( 0x00, "20000" ) - PORT_DIPSETTING( 0x04, "40000" ) - PORT_DIPSETTING( 0x08, "60000" ) - PORT_DIPSETTING( 0x0c, "80000" ) - PORT_DIPNAME( 0x70, 0x00, DEF_STR( Coinage ) ) - PORT_DIPSETTING( 0x70, DEF_STR( 5C_1C ) ) - PORT_DIPSETTING( 0x50, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x30, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x20, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x40, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x60, DEF_STR( 1C_4C ) ) - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Upright ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) ) + PORT_START("P2") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL + PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL - PORT_START("P2") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL - PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL + PORT_START("DSW") + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) ) + PORT_DIPSETTING( 0x00, "3" ) + PORT_DIPSETTING( 0x01, "4" ) + PORT_DIPSETTING( 0x02, "5" ) + PORT_DIPSETTING( 0x03, "6" ) + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) ) + PORT_DIPSETTING( 0x00, "20000" ) + PORT_DIPSETTING( 0x04, "40000" ) + PORT_DIPSETTING( 0x08, "60000" ) + PORT_DIPSETTING( 0x0c, "80000" ) + PORT_DIPNAME( 0x70, 0x00, DEF_STR( Coinage ) ) + PORT_DIPSETTING( 0x70, DEF_STR( 5C_1C ) ) + PORT_DIPSETTING( 0x50, DEF_STR( 4C_1C ) ) + PORT_DIPSETTING( 0x30, DEF_STR( 3C_1C ) ) + PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x20, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x40, DEF_STR( 1C_3C ) ) + PORT_DIPSETTING( 0x60, DEF_STR( 1C_4C ) ) + PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) ) + PORT_DIPSETTING( 0x80, DEF_STR( Upright ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) ) INPUT_PORTS_END diff --git a/src/mame/drivers/mrdo.c b/src/mame/drivers/mrdo.c index ce17064be5f..ae0d1fdefb9 100644 --- a/src/mame/drivers/mrdo.c +++ b/src/mame/drivers/mrdo.c @@ -43,10 +43,10 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM) AM_RANGE(0x8000, 0x8fff) AM_READ(SMH_RAM) /* video and color RAM */ AM_RANGE(0x9803, 0x9803) AM_READ(mrdo_SECRE_r) - AM_RANGE(0xa000, 0xa000) AM_READ(input_port_0_r) /* IN0 */ - AM_RANGE(0xa001, 0xa001) AM_READ(input_port_1_r) /* IN1 */ - AM_RANGE(0xa002, 0xa002) AM_READ(input_port_2_r) /* DSW1 */ - AM_RANGE(0xa003, 0xa003) AM_READ(input_port_3_r) /* DSW2 */ + AM_RANGE(0xa000, 0xa000) AM_READ_PORT("P1") + AM_RANGE(0xa001, 0xa001) AM_READ_PORT("P2") + AM_RANGE(0xa002, 0xa002) AM_READ_PORT("DSW1") + AM_RANGE(0xa003, 0xa003) AM_READ_PORT("DSW2") AM_RANGE(0xe000, 0xefff) AM_READ(SMH_RAM) ADDRESS_MAP_END @@ -65,7 +65,7 @@ ADDRESS_MAP_END static INPUT_PORTS_START( mrdo ) - PORT_START("IN0") + PORT_START("P1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY @@ -75,7 +75,7 @@ static INPUT_PORTS_START( mrdo ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_TILT ) - PORT_START("IN1") + PORT_START("P2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL @@ -85,32 +85,32 @@ static INPUT_PORTS_START( mrdo ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_START("DSW0") - PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:8,7") + PORT_START("DSW1") + PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:8,7") PORT_DIPSETTING( 0x03, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x02, DEF_STR( Medium ) ) PORT_DIPSETTING( 0x01, DEF_STR( Hard ) ) PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x04, 0x04, "Rack Test (Cheat)") PORT_CODE(KEYCODE_F1) PORT_DIPLOCATION("SW1:6") + PORT_DIPNAME( 0x04, 0x04, "Rack Test (Cheat)") PORT_CODE(KEYCODE_F1) PORT_DIPLOCATION("SW1:6") PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, "Special" ) PORT_DIPLOCATION("SW1:5") + PORT_DIPNAME( 0x08, 0x08, "Special" ) PORT_DIPLOCATION("SW1:5") PORT_DIPSETTING( 0x08, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x00, DEF_STR( Hard ) ) - PORT_DIPNAME( 0x10, 0x10, "Extra" ) PORT_DIPLOCATION("SW1:4") + PORT_DIPNAME( 0x10, 0x10, "Extra" ) PORT_DIPLOCATION("SW1:4") PORT_DIPSETTING( 0x10, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x00, DEF_STR( Hard ) ) - PORT_DIPNAME( 0x20, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:3") + PORT_DIPNAME( 0x20, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:3") PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x20, DEF_STR( Cocktail ) ) - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:2,1") + PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:2,1") PORT_DIPSETTING( 0x00, "2" ) PORT_DIPSETTING( 0xc0, "3" ) PORT_DIPSETTING( 0x80, "4" ) PORT_DIPSETTING( 0x40, "5" ) - PORT_START("DSW1") - PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW2:8,7,6,5") + PORT_START("DSW2") + PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW2:8,7,6,5") PORT_DIPSETTING( 0x06, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x08, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x0a, DEF_STR( 2C_1C ) ) @@ -123,7 +123,7 @@ static INPUT_PORTS_START( mrdo ) PORT_DIPSETTING( 0x0b, DEF_STR( 1C_5C ) ) PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) /* settings 0x01 thru 0x05 all give 1 Coin/1 Credit */ - PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW2:4,3,2,1") + PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW2:4,3,2,1") PORT_DIPSETTING( 0x60, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x80, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0xa0, DEF_STR( 2C_1C ) ) diff --git a/src/mame/drivers/mrjong.c b/src/mame/drivers/mrjong.c index 12ab90f8e7c..32ce42d6dd1 100644 --- a/src/mame/drivers/mrjong.c +++ b/src/mame/drivers/mrjong.c @@ -85,9 +85,9 @@ static READ8_HANDLER( io_0x03_r ) static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_READ(input_port_0_r) // Input 1 - AM_RANGE(0x01, 0x01) AM_READ(input_port_1_r) // Input 2 - AM_RANGE(0x02, 0x02) AM_READ(input_port_2_r) // DipSw 1 + AM_RANGE(0x00, 0x00) AM_READ_PORT("P2") + AM_RANGE(0x01, 0x01) AM_READ_PORT("P1") + AM_RANGE(0x02, 0x02) AM_READ_PORT("DSW") AM_RANGE(0x03, 0x03) AM_READ(io_0x03_r) // Unknown ADDRESS_MAP_END @@ -100,7 +100,7 @@ ADDRESS_MAP_END static INPUT_PORTS_START( mrjong ) - PORT_START("P2") /* IN0 */ + PORT_START("P2") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(2) @@ -110,7 +110,7 @@ static INPUT_PORTS_START( mrjong ) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) // ???? - PORT_START("P1") /* IN1 */ + PORT_START("P1") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(1) @@ -120,7 +120,7 @@ static INPUT_PORTS_START( mrjong ) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_START("DSW") /* DSW1 */ + PORT_START("DSW") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x01, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) ) @@ -131,8 +131,8 @@ static INPUT_PORTS_START( mrjong ) PORT_DIPSETTING( 0x00, "30k") PORT_DIPSETTING( 0x04, "50k") PORT_DIPNAME( 0x08, 0x00, DEF_STR( Difficulty ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Normal )) - PORT_DIPSETTING( 0x08, DEF_STR( Hard )) + PORT_DIPSETTING( 0x00, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) ) PORT_DIPSETTING( 0x00, "3") PORT_DIPSETTING( 0x10, "4") diff --git a/src/mame/drivers/ms32.c b/src/mame/drivers/ms32.c index b70a09d7db2..954b319e1b3 100644 --- a/src/mame/drivers/ms32.c +++ b/src/mame/drivers/ms32.c @@ -180,59 +180,36 @@ static UINT32 to_main; /********** READ INPUTS **********/ -static READ32_HANDLER ( ms32_read_inputs1 ) -{ - int a,b,c,d; - a = input_port_read(machine, "IN0"); // unknown - b = input_port_read(machine, "IN1"); // System inputs - c = input_port_read(machine, "IN2"); // Player 1 inputs - d = input_port_read(machine, "IN3"); // Player 2 inputs - return a << 24 | b << 16 | c << 0 | d << 8; -} - - static READ32_HANDLER ( ms32_mahjong_read_inputs1 ) { - int a,b,c,d; - a = input_port_read(machine, "IN0"); // unknown - b = input_port_read(machine, "IN1"); // System inputs + UINT32 mj_input; switch (ms32_mahjong_input_select[0]) { case 0x01: - c = input_port_read(machine, "MJ0"); // Player 1 inputs + mj_input = input_port_read(machine, "MJ0"); // Player 1 inputs break; case 0x02: - c = input_port_read(machine, "MJ1"); // Player 1 inputs + mj_input = input_port_read(machine, "MJ1"); // Player 1 inputs break; case 0x04: - c = input_port_read(machine, "MJ2"); // Player 1 inputs + mj_input = input_port_read(machine, "MJ2"); // Player 1 inputs break; case 0x08: - c = input_port_read(machine, "MJ3"); // Player 1 inputs + mj_input = input_port_read(machine, "MJ3"); // Player 1 inputs break; case 0x10: - c = input_port_read(machine, "MJ4"); // Player 1 inputs + mj_input = input_port_read(machine, "MJ4"); // Player 1 inputs break; default: - c = 0; + mj_input = 0; } - d = input_port_read(machine, "IN3"); // Player 2 inputs - return a << 24 | b << 16 | c << 0 | d << 8; + + return (input_port_read(machine, "INPUTS") & ~0xff) | mj_input; } -static READ32_HANDLER ( ms32_read_inputs2 ) -{ - int a,b,c,d; - a = input_port_read(machine, "DSW1"); // Dip 1 - b = input_port_read(machine, "DSW2"); // Dip 2 - c = input_port_read(machine, "DSW3"); // Dip 3 - d = input_port_read(machine, "UNUSED"); // unused ? - return a << 8 | b << 0 | c << 16 | d << 24; -} - static READ32_HANDLER ( ms32_read_inputs3 ) { int a,b,c,d; @@ -295,8 +272,8 @@ static ADDRESS_MAP_START( ms32_readmem, ADDRESS_SPACE_PROGRAM, 32 ) AM_RANGE(0x00000000, 0x001fffff) AM_READ(SMH_ROM) AM_RANGE(0xfc000000, 0xfc007fff) AM_READ(SMH_RAM) AM_RANGE(0xfc800000, 0xfc800003) AM_READ(SMH_NOP) /* sound? */ - AM_RANGE(0xfcc00004, 0xfcc00007) AM_READ(ms32_read_inputs1) - AM_RANGE(0xfcc00010, 0xfcc00013) AM_READ(ms32_read_inputs2) + AM_RANGE(0xfcc00004, 0xfcc00007) AM_READ_PORT("INPUTS") + AM_RANGE(0xfcc00010, 0xfcc00013) AM_READ_PORT("DSW") /**/AM_RANGE(0xfce00600, 0xfce0065f) AM_READ(SMH_RAM) /* roz control registers */ /**/AM_RANGE(0xfce00a00, 0xfce00a17) AM_READ(SMH_RAM) /* tx scroll registers */ /**/AM_RANGE(0xfce00a20, 0xfce00a37) AM_READ(SMH_RAM) /* bg scroll registers */ @@ -389,132 +366,139 @@ ADDRESS_MAP_END *************************************/ static INPUT_PORTS_START( ms32 ) - PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_START("INPUTS") + PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) + PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) + PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) + PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) + PORT_BIT( 0x00000100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) + PORT_BIT( 0x00000200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) + PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) + PORT_BIT( 0x00000800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) + PORT_BIT( 0x00001000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x00002000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0x00004000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) + PORT_BIT( 0x00008000, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) - PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) + PORT_BIT( 0x00010000, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F1) + PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_START2 ) + PORT_BIT( 0x00400000, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) + PORT_BIT( 0x00800000, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) + PORT_BIT( 0x01000000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x02000000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x04000000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x08000000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x10000000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x20000000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x40000000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x80000000, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("IN2") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) + PORT_START("DSW") + PORT_DIPUNUSED_DIPLOC( 0x00000001, 0x00000001, "SW2:8" ) + PORT_DIPUNUSED_DIPLOC( 0x00000002, 0x00000002, "SW2:7" ) + PORT_DIPUNUSED_DIPLOC( 0x00000004, 0x00000004, "SW2:6" ) + PORT_DIPUNUSED_DIPLOC( 0x00000008, 0x00000008, "SW2:5" ) + PORT_DIPUNUSED_DIPLOC( 0x00000010, 0x00000010, "SW2:4" ) + PORT_DIPUNUSED_DIPLOC( 0x00000020, 0x00000020, "SW2:3" ) + PORT_DIPUNUSED_DIPLOC( 0x00000040, 0x00000040, "SW2:2" ) + PORT_DIPUNUSED_DIPLOC( 0x00000080, 0x00000080, "SW2:1" ) + PORT_SERVICE_DIPLOC( 0x00000100, IP_ACTIVE_LOW, "SW1:8" ) + PORT_DIPNAME( 0x00000200, 0x00000200, DEF_STR( Free_Play ) ) PORT_DIPLOCATION("SW1:7") + PORT_DIPSETTING( 0x00000200, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00001c00, 0x00001c00, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:6,5,4") + PORT_DIPSETTING( 0x00000000, DEF_STR( 5C_1C ) ) + PORT_DIPSETTING( 0x00001000, DEF_STR( 4C_1C ) ) + PORT_DIPSETTING( 0x00000800, DEF_STR( 3C_1C ) ) + PORT_DIPSETTING( 0x00001800, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x00001c00, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x00000c00, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x00001400, DEF_STR( 1C_3C ) ) + PORT_DIPSETTING( 0x00000400, DEF_STR( 1C_4C ) ) + PORT_DIPNAME( 0x0000e000, 0x0000e000, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:3,2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( 5C_1C ) ) + PORT_DIPSETTING( 0x00008000, DEF_STR( 4C_1C ) ) + PORT_DIPSETTING( 0x00004000, DEF_STR( 3C_1C ) ) + PORT_DIPSETTING( 0x0000c000, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x0000e000, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x00006000, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x0000a000, DEF_STR( 1C_3C ) ) + PORT_DIPSETTING( 0x00002000, DEF_STR( 1C_4C ) ) - PORT_START("IN3") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) + PORT_DIPUNUSED_DIPLOC( 0x00010000, 0x00010000, "SW3:8" ) + PORT_DIPUNUSED_DIPLOC( 0x00020000, 0x00020000, "SW3:7" ) + PORT_DIPUNUSED_DIPLOC( 0x00040000, 0x00040000, "SW3:6" ) + PORT_DIPUNUSED_DIPLOC( 0x00080000, 0x00080000, "SW3:5" ) + PORT_DIPUNUSED_DIPLOC( 0x00100000, 0x00100000, "SW3:4" ) + PORT_DIPUNUSED_DIPLOC( 0x00200000, 0x00200000, "SW3:3" ) + PORT_DIPUNUSED_DIPLOC( 0x00400000, 0x00400000, "SW3:2" ) + PORT_DIPUNUSED_DIPLOC( 0x00800000, 0x00800000, "SW3:1" ) + PORT_BIT( 0xff000000, IP_ACTIVE_LOW, IPT_UNUSED ) // Unused? +INPUT_PORTS_END - PORT_START("DSW1") - PORT_DIPNAME( 0xe0, 0xe0, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:3,2,1")\ - PORT_DIPSETTING( 0x00, DEF_STR( 5C_1C ) ) - PORT_DIPSETTING( 0x80, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x40, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0xe0, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x60, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0xa0, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x20, DEF_STR( 1C_4C ) ) - PORT_DIPNAME( 0x1c, 0x1c, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW1:6,5,4") - PORT_DIPSETTING( 0x00, DEF_STR( 5C_1C ) ) - PORT_DIPSETTING( 0x10, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x08, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0x18, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0x1c, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x0c, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0x14, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x04, DEF_STR( 1C_4C ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Free_Play ) ) PORT_DIPLOCATION("SW1:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_SERVICE_DIPLOC( 0x01, IP_ACTIVE_LOW, "SW1:8" ) +static INPUT_PORTS_START( ms32_mahjong ) + PORT_INCLUDE( ms32 ) - PORT_START("DSW2") - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:1") - PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:2") - PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:3") - PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:4") - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:5") - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_MODIFY("INPUTS") + PORT_BIT( 0x000000ff, IP_ACTIVE_LOW, IPT_UNUSED ) // here we read mahjong keys - PORT_START("DSW3") - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:3") - PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:4") - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:5") - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:6") - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW3:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_START("MJ0") + PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_MAHJONG_A ) + PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_MAHJONG_E ) + PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_MAHJONG_M ) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_MAHJONG_I ) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("UNUSED") - 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 ) + PORT_START("MJ1") + PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_MAHJONG_B ) + PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_MAHJONG_F ) + PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_MAHJONG_N ) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_MAHJONG_J ) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_START("MJ2") + PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_MAHJONG_C ) + PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_MAHJONG_G ) + PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_MAHJONG_K ) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_UNKNOWN ) + + PORT_START("MJ3") + PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_MAHJONG_D ) + PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_MAHJONG_H ) + PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_MAHJONG_L ) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_UNKNOWN ) + + PORT_START("MJ4") + PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /************************************* @@ -526,696 +510,532 @@ INPUT_PORTS_END static INPUT_PORTS_START( bbbxing ) PORT_INCLUDE( ms32 ) - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x30, 0x30, "Timer Speed" ) PORT_DIPLOCATION("SW2:4,3") - PORT_DIPSETTING( 0x00, "60/60" ) - PORT_DIPSETTING( 0x20, "50/60" ) - PORT_DIPSETTING( 0x10, "40/60" ) - PORT_DIPSETTING( 0x30, "35/60" ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x04, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x02, DEF_STR( Japanese ) ) - PORT_DIPSETTING( 0x00, DEF_STR( English ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0x80, 0x80, "Jyoji's Attacking Power" ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Harder ) ) - PORT_DIPNAME( 0x40, 0x40, "Kim's Attacking Power" ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Harder ) ) - PORT_DIPNAME( 0x20, 0x20, "Thamalatt's Attacking Power" ) PORT_DIPLOCATION("SW3:3") - PORT_DIPSETTING( 0x20, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Harder ) ) - PORT_DIPNAME( 0x10, 0x10, "Jose's Attacking Power" ) PORT_DIPLOCATION("SW3:4") - PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Harder ) ) - PORT_DIPNAME( 0x08, 0x08, "Carolde's Attacking Power" ) PORT_DIPLOCATION("SW3:5") - PORT_DIPSETTING( 0x08, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Harder ) ) - PORT_DIPNAME( 0x04, 0x04, "Biff's Attacking Power" ) PORT_DIPLOCATION("SW3:6") - PORT_DIPSETTING( 0x04, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Harder ) ) - PORT_DIPNAME( 0x02, 0x02, "Grute's Attacking Power" ) PORT_DIPLOCATION("SW3:7") - PORT_DIPSETTING( 0x02, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Harder ) ) + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000001, 0x00000001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000002, 0x00000000, DEF_STR( Language ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x00000002, DEF_STR( Japanese ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( English ) ) + PORT_DIPNAME( 0x00000004, 0x00000004, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:6") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000004, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000030, 0x00000030, "Timer Speed" ) PORT_DIPLOCATION("SW2:4,3") + PORT_DIPSETTING( 0x00000000, "60/60" ) + PORT_DIPSETTING( 0x00000020, "50/60" ) + PORT_DIPSETTING( 0x00000010, "40/60" ) + PORT_DIPSETTING( 0x00000030, "35/60" ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Hardest ) ) + PORT_DIPNAME( 0x00020000, 0x00020000, "Grute's Attacking Power" ) PORT_DIPLOCATION("SW3:7") + PORT_DIPSETTING( 0x00020000, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Harder ) ) + PORT_DIPNAME( 0x00040000, 0x00040000, "Biff's Attacking Power" ) PORT_DIPLOCATION("SW3:6") + PORT_DIPSETTING( 0x00040000, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Harder ) ) + PORT_DIPNAME( 0x00080000, 0x00080000, "Carolde's Attacking Power" ) PORT_DIPLOCATION("SW3:5") + PORT_DIPSETTING( 0x00080000, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Harder ) ) + PORT_DIPNAME( 0x00100000, 0x00100000, "Jose's Attacking Power" ) PORT_DIPLOCATION("SW3:4") + PORT_DIPSETTING( 0x00100000, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Harder ) ) + PORT_DIPNAME( 0x00200000, 0x00200000, "Thamalatt's Attacking Power" ) PORT_DIPLOCATION("SW3:3") + PORT_DIPSETTING( 0x00200000, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Harder ) ) + PORT_DIPNAME( 0x00400000, 0x00400000, "Kim's Attacking Power" ) PORT_DIPLOCATION("SW3:2") + PORT_DIPSETTING( 0x00400000, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Harder ) ) + PORT_DIPNAME( 0x00800000, 0x00800000, "Jyoji's Attacking Power" ) PORT_DIPLOCATION("SW3:1") + PORT_DIPSETTING( 0x00800000, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Harder ) ) INPUT_PORTS_END static INPUT_PORTS_START( desertwr ) PORT_INCLUDE( ms32 ) - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x30, 0x30, "Armors" ) PORT_DIPLOCATION("SW2:4,3") -// PORT_DIPSETTING( 0x00, "2" ) // duplicate setting ? - PORT_DIPSETTING( 0x10, "2" ) - PORT_DIPSETTING( 0x30, "3" ) - PORT_DIPSETTING( 0x20, "4" ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x02, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Japanese ) ) - PORT_DIPSETTING( 0x00, DEF_STR( English ) ) - PORT_DIPNAME( 0x40, 0x40, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( No ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x10, 0x00, "Title screen" ) PORT_DIPLOCATION("SW3:4") - PORT_DIPSETTING( 0x10, DEF_STR( Japanese ) ) - PORT_DIPSETTING( 0x00, DEF_STR( English ) ) + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000001, 0x00000001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000002, 0x00000002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000002, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000030, 0x00000030, "Armors" ) PORT_DIPLOCATION("SW2:4,3") +// PORT_DIPSETTING( 0x00000000, "2" ) // duplicate setting ? + PORT_DIPSETTING( 0x00000010, "2" ) + PORT_DIPSETTING( 0x00000030, "3" ) + PORT_DIPSETTING( 0x00000020, "4" ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Hardest ) ) + PORT_DIPNAME( 0x00100000, 0x00000000, "Title screen" ) PORT_DIPLOCATION("SW3:4") + PORT_DIPSETTING( 0x00100000, DEF_STR( Japanese ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( English ) ) + PORT_DIPNAME( 0x00400000, 0x00400000, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") + PORT_DIPSETTING( 0x00400000, DEF_STR( No ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00800000, 0x00000000, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") + PORT_DIPSETTING( 0x00800000, DEF_STR( Japanese ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( English ) ) INPUT_PORTS_END static INPUT_PORTS_START( gametngk ) PORT_INCLUDE( ms32 ) - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:4,3") - PORT_DIPSETTING( 0x00, "1" ) - PORT_DIPSETTING( 0x30, "3" ) - PORT_DIPSETTING( 0x10, "4" ) - PORT_DIPSETTING( 0x20, "5" ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x02, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Japanese ) ) - PORT_DIPSETTING( 0x00, DEF_STR( English ) ) - PORT_DIPNAME( 0x40, 0x40, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( No ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x20, 0x20, "Voice" ) PORT_DIPLOCATION("SW3:3") - PORT_DIPSETTING( 0x00, DEF_STR( No ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x02, 0x02, "Invulnerability (Cheat)") PORT_DIPLOCATION("SW3:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, "Freeze" ) PORT_DIPLOCATION("SW3:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000001, 0x00000001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000002, 0x00000002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000002, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000030, 0x00000030, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:4,3") + PORT_DIPSETTING( 0x00000000, "1" ) + PORT_DIPSETTING( 0x00000030, "3" ) + PORT_DIPSETTING( 0x00000010, "4" ) + PORT_DIPSETTING( 0x00000020, "5" ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Hardest ) ) + PORT_DIPNAME( 0x00010000, 0x00010000, "Freeze" ) PORT_DIPLOCATION("SW3:8") + PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00020000, 0x00020000, "Invulnerability (Cheat)") PORT_DIPLOCATION("SW3:7") + PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00200000, 0x00200000, "Voice" ) PORT_DIPLOCATION("SW3:3") + PORT_DIPSETTING( 0x00000000, DEF_STR( No ) ) + PORT_DIPSETTING( 0x00200000, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00400000, 0x00400000, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") + PORT_DIPSETTING( 0x00400000, DEF_STR( No ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00800000, 0x00000000, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") + PORT_DIPSETTING( 0x00800000, DEF_STR( Japanese ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( English ) ) INPUT_PORTS_END static INPUT_PORTS_START( tetrisp ) PORT_INCLUDE( ms32 ) /* There are inputs for players 3 and 4 in the "test mode", - but NO addresses are read to check them ! */ + but NO addresses are read to check them ! */ - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x30, 0x30, "Winning Rounds (Player VS Player)" ) PORT_DIPLOCATION("SW2:4,3") - PORT_DIPSETTING( 0x00, "1/1" ) - PORT_DIPSETTING( 0x30, "2/3" ) - PORT_DIPSETTING( 0x10, "3/5" ) - PORT_DIPSETTING( 0x20, "4/7" ) - PORT_DIPNAME( 0x0c, 0x0c, "Join In" ) PORT_DIPLOCATION("SW2:6,5") - PORT_DIPSETTING( 0x0c, "All Modes" ) - PORT_DIPSETTING( 0x04, "Normal and Puzzle Modes" ) - PORT_DIPSETTING( 0x08, "VS Mode" ) -// PORT_DIPSETTING( 0x00, "Normal and Puzzle Modes" ) // "can't play normal mode" in "test mode" - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x02, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Japanese ) ) - PORT_DIPSETTING( 0x00, DEF_STR( English ) ) - PORT_DIPNAME( 0x40, 0x40, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( No ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x10, 0x10, "Voice" ) PORT_DIPLOCATION("SW3:4") - PORT_DIPSETTING( 0x00, "English Only" ) - PORT_DIPSETTING( 0x10, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x08, 0x08, "After VS Mode" ) PORT_DIPLOCATION("SW3:5") - PORT_DIPSETTING( 0x08, "Game Ends" ) - PORT_DIPSETTING( 0x00, "Winner Continues" ) - PORT_DIPNAME( 0x01, 0x01, "Freeze" ) PORT_DIPLOCATION("SW3:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000001, 0x00000001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000002, 0x00000002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000002, DEF_STR( On ) ) + PORT_DIPNAME( 0x0000000c, 0x0000000c, "Join In" ) PORT_DIPLOCATION("SW2:6,5") + PORT_DIPSETTING( 0x0000000c, "All Modes" ) + PORT_DIPSETTING( 0x00000004, "Normal and Puzzle Modes" ) + PORT_DIPSETTING( 0x00000008, "VS Mode" ) +// PORT_DIPSETTING( 0x00000000, "Normal and Puzzle Modes" ) // "can't play normal mode" in "test mode" + PORT_DIPNAME( 0x00000030, 0x00000030, "Winning Rounds (Player VS Player)" ) PORT_DIPLOCATION("SW2:4,3") + PORT_DIPSETTING( 0x00000000, "1/1" ) + PORT_DIPSETTING( 0x00000030, "2/3" ) + PORT_DIPSETTING( 0x00000010, "3/5" ) + PORT_DIPSETTING( 0x00000020, "4/7" ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Hardest ) ) + PORT_DIPNAME( 0x00010000, 0x00010000, "Freeze" ) PORT_DIPLOCATION("SW3:8") + PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00080000, 0x00080000, "After VS Mode" ) PORT_DIPLOCATION("SW3:5") + PORT_DIPSETTING( 0x00080000, "Game Ends" ) + PORT_DIPSETTING( 0x00000000, "Winner Continues" ) + PORT_DIPNAME( 0x00100000, 0x00100000, "Voice" ) PORT_DIPLOCATION("SW3:4") + PORT_DIPSETTING( 0x00000000, "English Only" ) + PORT_DIPSETTING( 0x00100000, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00400000, 0x00400000, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") + PORT_DIPSETTING( 0x00400000, DEF_STR( No ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00800000, 0x00000000, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") + PORT_DIPSETTING( 0x00800000, DEF_STR( Japanese ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( English ) ) INPUT_PORTS_END static INPUT_PORTS_START( tp2m32 ) PORT_INCLUDE( ms32 ) - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, "Endless Difficulty" ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Very_Hard ) ) - PORT_DIPNAME( 0x30, 0x30, "Puzzle Difficulty" ) PORT_DIPLOCATION("SW2:4,3") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0x30, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x10, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Very_Hard ) ) - PORT_DIPNAME( 0x0c, 0x0c, "VS Match" ) PORT_DIPLOCATION("SW2:6,5") - PORT_DIPSETTING( 0x00, "1" ) - PORT_DIPSETTING( 0x0c, "3" ) - PORT_DIPSETTING( 0x04, "5" ) - PORT_DIPSETTING( 0x08, "7" ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x02, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Japanese ) ) - PORT_DIPSETTING( 0x00, DEF_STR( English ) ) - PORT_DIPNAME( 0x40, 0x40, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( No ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x20, 0x20, "Voice" ) PORT_DIPLOCATION("SW3:3") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x20, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, "Join In" ) PORT_DIPLOCATION("SW3:5") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - PORT_DIPNAME( 0x06, 0x06, "Bomb" ) PORT_DIPLOCATION("SW3:7,6") - PORT_DIPSETTING( 0x04, "0" ) - PORT_DIPSETTING( 0x02, "1" ) - PORT_DIPSETTING( 0x06, "2" ) - PORT_DIPSETTING( 0x00, "3" ) - PORT_DIPNAME( 0x01, 0x01, "Freeze" ) PORT_DIPLOCATION("SW3:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000001, 0x00000001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000002, 0x00000002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000002, DEF_STR( On ) ) + PORT_DIPNAME( 0x0000000c, 0x0000000c, "VS Match" ) PORT_DIPLOCATION("SW2:6,5") + PORT_DIPSETTING( 0x00000000, "1" ) + PORT_DIPSETTING( 0x0000000c, "3" ) + PORT_DIPSETTING( 0x00000004, "5" ) + PORT_DIPSETTING( 0x00000008, "7" ) + PORT_DIPNAME( 0x00000030, 0x00000030, "Puzzle Difficulty" ) PORT_DIPLOCATION("SW2:4,3") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00000030, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000010, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000020, DEF_STR( Very_Hard ) ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, "Endless Difficulty" ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Very_Hard ) ) + PORT_DIPNAME( 0x00010000, 0x00010000, "Freeze" ) PORT_DIPLOCATION("SW3:8") + PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00060000, 0x00060000, "Bomb" ) PORT_DIPLOCATION("SW3:7,6") + PORT_DIPSETTING( 0x00040000, "0" ) + PORT_DIPSETTING( 0x00020000, "1" ) + PORT_DIPSETTING( 0x00060000, "2" ) + PORT_DIPSETTING( 0x00000000, "3" ) + PORT_DIPNAME( 0x00080000, 0x00080000, "Join In" ) PORT_DIPLOCATION("SW3:5") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00080000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00200000, 0x00200000, "Voice" ) PORT_DIPLOCATION("SW3:3") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00200000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00400000, 0x00400000, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") + PORT_DIPSETTING( 0x00400000, DEF_STR( No ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00800000, 0x00000000, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") + PORT_DIPSETTING( 0x00800000, DEF_STR( Japanese ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( English ) ) INPUT_PORTS_END static INPUT_PORTS_START( p47aces ) PORT_INCLUDE( ms32 ) /* The Dip Switches for this game are completely wrong in the "test mode" ! */ + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000001, 0x00000001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000002, 0x00000002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000002, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000004, 0x00000004, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:6") + PORT_DIPSETTING( 0x00000004, "500k" ) + PORT_DIPSETTING( 0x00000000, DEF_STR( None ) ) + PORT_DIPNAME( 0x00000030, 0x00000030, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:4,3") + PORT_DIPSETTING( 0x00000000, "1" ) + PORT_DIPSETTING( 0x00000020, "2" ) + PORT_DIPSETTING( 0x00000030, "3" ) + PORT_DIPSETTING( 0x00000010, "4" ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Hardest ) ) - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:4,3") - PORT_DIPSETTING( 0x00, "1" ) - PORT_DIPSETTING( 0x20, "2" ) - PORT_DIPSETTING( 0x30, "3" ) - PORT_DIPSETTING( 0x10, "4" ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x04, "500k" ) - PORT_DIPSETTING( 0x00, DEF_STR( None ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x02, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Japanese ) ) - PORT_DIPSETTING( 0x00, DEF_STR( English ) ) - PORT_DIPNAME( 0x40, 0x40, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( No ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) - PORT_DIPNAME( 0x03, 0x03, "FG/BG X offset" ) PORT_DIPLOCATION("SW3:8,7") - PORT_DIPSETTING( 0x03, "0/0" ) - PORT_DIPSETTING( 0x02, "5/5" ) -// PORT_DIPSETTING( 0x01, "5/5" ) - PORT_DIPSETTING( 0x00, "2/4" ) - + PORT_DIPNAME( 0x00030000, 0x00030000, "FG/BG X offset" ) PORT_DIPLOCATION("SW3:8,7") + PORT_DIPSETTING( 0x00030000, "0/0" ) + PORT_DIPSETTING( 0x00020000, "5/5" ) +// PORT_DIPSETTING( 0x00010000, "5/5" ) + PORT_DIPSETTING( 0x00000000, "2/4" ) + PORT_DIPNAME( 0x00400000, 0x00400000, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") + PORT_DIPSETTING( 0x00400000, DEF_STR( No ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00800000, 0x00000000, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") + PORT_DIPSETTING( 0x00800000, DEF_STR( Japanese ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( English ) ) INPUT_PORTS_END static INPUT_PORTS_START( gratia ) PORT_INCLUDE( ms32 ) - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x30, 0x30, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:4,3") - PORT_DIPSETTING( 0x00, "1" ) - PORT_DIPSETTING( 0x20, "2" ) - PORT_DIPSETTING( 0x30, "3" ) - PORT_DIPSETTING( 0x10, "4" ) - PORT_DIPNAME( 0x08, 0x08, "Invulnerability (Cheat)") PORT_DIPLOCATION("SW2:5") - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x04, "200k and every 1000k" ) - PORT_DIPSETTING( 0x00, DEF_STR( None ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x02, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000001, 0x00000001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000002, 0x00000002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000002, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000004, 0x00000004, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW2:6") + PORT_DIPSETTING( 0x00000004, "200k and every 1000k" ) + PORT_DIPSETTING( 0x00000000, DEF_STR( None ) ) + PORT_DIPNAME( 0x00000008, 0x00000008, "Invulnerability (Cheat)") PORT_DIPLOCATION("SW2:5") + PORT_DIPSETTING( 0x00000008, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000030, 0x00000030, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW2:4,3") + PORT_DIPSETTING( 0x00000000, "1" ) + PORT_DIPSETTING( 0x00000020, "2" ) + PORT_DIPSETTING( 0x00000030, "3" ) + PORT_DIPSETTING( 0x00000010, "4" ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Hardest ) ) - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Japanese ) ) - PORT_DIPSETTING( 0x00, DEF_STR( English ) ) - PORT_DIPNAME( 0x40, 0x40, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( No ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00400000, 0x00400000, "FBI Logo" ) PORT_DIPLOCATION("SW3:2") + PORT_DIPSETTING( 0x00400000, DEF_STR( No ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Yes ) ) + PORT_DIPNAME( 0x00800000, 0x00000000, DEF_STR( Language ) ) PORT_DIPLOCATION("SW3:1") + PORT_DIPSETTING( 0x00800000, DEF_STR( Japanese ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( English ) ) INPUT_PORTS_END static INPUT_PORTS_START( hayaosi2 ) PORT_INCLUDE( ms32 ) - PORT_MODIFY("IN1") - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_MODIFY("INPUTS") + PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) // "Buzzer" (input 0 in "test mode") + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(3) // "Buzzer" (input 0 in "test mode") + PORT_BIT( 0x00000100, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x00000200, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) + PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0x00000800, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) + PORT_BIT( 0x00001000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) + PORT_BIT( 0x00002000, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3) + PORT_BIT( 0x00004000, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) // "Buzzer" (input 0 in "test mode") + PORT_BIT( 0x00008000, IP_ACTIVE_LOW, IPT_START3 ) - PORT_MODIFY("IN2") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) // "Buzzer" (input 0 in "test mode") - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(3) // "Buzzer" (input 0 in "test mode") + PORT_BIT( 0x00400000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00800000, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("IN3") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) // "Buzzer" (input 0 in "test mode") - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 ) + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000100, 0x00000100, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8") + PORT_DIPSETTING( 0x00000100, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) - PORT_MODIFY("DSW1") - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, "Computer's AI (VS Mode)" ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x40, DEF_STR( Low ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x80, DEF_STR( High ) ) - PORT_DIPSETTING( 0x00, DEF_STR( Highest ) ) - /* Lap Time Questions */ - /* 1 1:00 4 */ - /* 2 1:00 6 */ - /* 3 1:30 8 */ - /* 4 1:30 10 */ - /* 4 2:00 14 */ - /* final 2:00 18 */ - PORT_DIPNAME( 0x30, 0x30, "Time (Race Mode)" ) PORT_DIPLOCATION("SW2:4,3") - PORT_DIPSETTING( 0x00, "Default - 0:15" ) - PORT_DIPSETTING( 0x20, "Default - 0:10" ) - PORT_DIPSETTING( 0x30, "Default" ) - PORT_DIPSETTING( 0x10, "Default + 0:15" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000001, 0x00000001, "SW2:8" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000002, 0x00000002, "SW2:7" ) + PORT_DIPNAME( 0x00000004, 0x00000004, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:6") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000004, DEF_STR( On ) ) /* Round Default More */ - /* 1 10 15 */ - PORT_DIPNAME( 0x08, 0x08, "Questions (VS Mode)" ) PORT_DIPLOCATION("SW2:5") // TO DO : check all rounds - PORT_DIPSETTING( 0x08, "Default" ) - PORT_DIPSETTING( 0x00, "More" ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x04, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - + /* 1 10 15 */ + PORT_DIPNAME( 0x00000008, 0x00000008, "Questions (VS Mode)" ) PORT_DIPLOCATION("SW2:5") // TO DO : check all rounds + PORT_DIPSETTING( 0x00000008, "Default" ) + PORT_DIPSETTING( 0x00000000, "More" ) + /* Lap Time Questions */ + /* 1 1:00 4 */ + /* 2 1:00 6 */ + /* 3 1:30 8 */ + /* 4 1:30 10 */ + /* 4 2:00 14 */ + /* final 2:00 18 */ + PORT_DIPNAME( 0x00000030, 0x00000030, "Time (Race Mode)" ) PORT_DIPLOCATION("SW2:4,3") + PORT_DIPSETTING( 0x00000000, "Default - 0:15" ) + PORT_DIPSETTING( 0x00000020, "Default - 0:10" ) + PORT_DIPSETTING( 0x00000030, "Default" ) + PORT_DIPSETTING( 0x00000010, "Default + 0:15" ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, "Computer's AI (VS Mode)" ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000040, DEF_STR( Low ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( High ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( Highest ) ) INPUT_PORTS_END static INPUT_PORTS_START( hayaosi3 ) PORT_INCLUDE( hayaosi2 ) - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x02, DEF_STR( On ) ) - + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000002, 0x00000002, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:7") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000002, DEF_STR( On ) ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000004, 0x00000004, "SW2:6" ) INPUT_PORTS_END static INPUT_PORTS_START( kirarast ) // player 1 inputs done? others? - PORT_INCLUDE( ms32 ) + PORT_INCLUDE( ms32_mahjong ) - PORT_MODIFY("IN1") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F1) -//PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) /* already mapped in mahjong inputs */ - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) -//PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) /* ms32.c mahjongs don't have P2 inputs */ - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_MODIFY("INPUTS") + PORT_BIT( 0x0000ffff, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("IN2") - 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 ) + PORT_BIT( 0x00010000, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME(DEF_STR( Test )) PORT_CODE(KEYCODE_F1) +// PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_START1 ) /* already mapped in mahjong inputs */ + PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_UNUSED ) +// PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_START2 ) /* ms32.c mahjongs don't have P2 inputs */ + PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00400000, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x00800000, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_MODIFY("IN3") - 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 ) - - PORT_MODIFY("DSW1") - PORT_DIPNAME( 0xe0, 0xe0, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:3,2,1")\ - PORT_DIPSETTING( 0x00, DEF_STR( 5C_1C ) ) - PORT_DIPSETTING( 0x80, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x40, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0xe0, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x60, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0xa0, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x20, DEF_STR( 1C_4C ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:4") - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:5") - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:6") - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xe0, 0xe0, DEF_STR (Difficulty) ) PORT_DIPLOCATION("SW2:3,2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easiest ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Very_Easy) ) - PORT_DIPSETTING( 0x40, DEF_STR( Easier ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xe0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x60, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0xa0, DEF_STR( Harder ) ) - PORT_DIPSETTING( 0x20, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Demo_Sounds) ) PORT_DIPLOCATION("SW2:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x10, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, "Tumo Pinfu" ) PORT_DIPLOCATION("SW2:5") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, "Campaign Mode" ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x04, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_START("MJ0") // Mahjong Inputs 0x01 - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_A ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_E ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_M ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_I ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_KAN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("MJ1") // Mahjong Inputs 0x02 - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_B ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_F ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_N ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_J ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_REACH ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("MJ2") // Mahjong Inputs 0x04 - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_C ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_G ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_CHI ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_K ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_MAHJONG_RON ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("MJ3") // Mahjong Inputs 0x08 - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_MAHJONG_D ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_MAHJONG_H ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_MAHJONG_PON ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_MAHJONG_L ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - - PORT_START("MJ4") // Mahjong Inputs 0x10 unused ? - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_MODIFY("DSW") + PORT_DIPUNUSED_DIPLOC( 0x00000400, 0x00000400, "SW1:6" ) + PORT_DIPUNUSED_DIPLOC( 0x00000800, 0x00000800, "SW1:5" ) + PORT_DIPUNUSED_DIPLOC( 0x00001000, 0x00001000, "SW1:4" ) + PORT_DIPNAME( 0x0000e000, 0x0000e000, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:3,2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( 5C_1C ) ) + PORT_DIPSETTING( 0x00008000, DEF_STR( 4C_1C ) ) + PORT_DIPSETTING( 0x00004000, DEF_STR( 3C_1C ) ) + PORT_DIPSETTING( 0x0000c000, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x0000e000, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x00006000, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x0000a000, DEF_STR( 1C_3C ) ) + PORT_DIPSETTING( 0x00002000, DEF_STR( 1C_4C ) ) + PORT_DIPNAME( 0x00000001, 0x00000001, DEF_STR( Flip_Screen ) ) PORT_DIPLOCATION("SW2:8") + PORT_DIPSETTING( 0x00000001, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000004, 0x00000004, "Campaign Mode" ) PORT_DIPLOCATION("SW2:6") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000004, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000008, 0x00000008, "Tumo Pinfu" ) PORT_DIPLOCATION("SW2:5") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000008, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000010, 0x00000010, DEF_STR( Demo_Sounds) ) PORT_DIPLOCATION("SW2:4") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000010, DEF_STR( On ) ) + PORT_DIPNAME( 0x000000e0, 0x000000e0, DEF_STR (Difficulty) ) PORT_DIPLOCATION("SW2:3,2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easiest ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Very_Easy) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Easier ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000e0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000060, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x000000a0, DEF_STR( Harder ) ) + PORT_DIPSETTING( 0x00000020, DEF_STR( Hardest ) ) INPUT_PORTS_END static INPUT_PORTS_START( 47pie2 ) // player 1 inputs done? others? PORT_INCLUDE( kirarast ) - PORT_MODIFY("IN1") -//PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) /* coin 2 is unused */ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_MODIFY("INPUTS") +// PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_COIN2 ) /* coin 2 is unused */ + PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("DSW1") - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Demo_Sounds) ) PORT_DIPLOCATION("SW1:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x10, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, "Tumo Pinfu" ) PORT_DIPLOCATION("SW1:5") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x08, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, "Campaign Mode" ) PORT_DIPLOCATION("SW1:6") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x04, DEF_STR( On ) ) - - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") - PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( Normal ) ) - PORT_DIPSETTING( 0x40, DEF_STR( Hard ) ) - PORT_DIPSETTING( 0x80, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:3") - PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:4") - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:5") - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_MODIFY("DSW") + PORT_DIPNAME( 0x00000400, 0x00000400, "Campaign Mode" ) PORT_DIPLOCATION("SW1:6") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000400, DEF_STR( On ) ) + PORT_DIPNAME( 0x00000800, 0x00000800, "Tumo Pinfu" ) PORT_DIPLOCATION("SW1:5") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00000800, DEF_STR( On ) ) + PORT_DIPNAME( 0x00001000, 0x00001000, DEF_STR( Demo_Sounds) ) PORT_DIPLOCATION("SW1:4") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00001000, DEF_STR( On ) ) + PORT_DIPUNUSED_DIPLOC( 0x00000001, 0x00000001, "SW2:8" ) + PORT_DIPUNUSED_DIPLOC( 0x00000002, 0x00000002, "SW2:7" ) + PORT_DIPUNUSED_DIPLOC( 0x00000004, 0x00000004, "SW2:6" ) + PORT_DIPUNUSED_DIPLOC( 0x00000008, 0x00000008, "SW2:5" ) + PORT_DIPUNUSED_DIPLOC( 0x00000010, 0x00000010, "SW2:4" ) + PORT_DIPUNUSED_DIPLOC( 0x00000020, 0x00000020, "SW2:3" ) + PORT_DIPNAME( 0x000000c0, 0x000000c0, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:2,1") + PORT_DIPSETTING( 0x00000000, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x000000c0, DEF_STR( Normal ) ) + PORT_DIPSETTING( 0x00000040, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x00000080, DEF_STR( Hardest ) ) INPUT_PORTS_END static INPUT_PORTS_START( wpksocv2 ) PORT_INCLUDE( ms32 ) - PORT_MODIFY("IN1") - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) - - PORT_MODIFY("IN2") + PORT_MODIFY("INPUTS") /* Still missing the correct input for begin the left right movement */ - PORT_BIT( 0x0f, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(7) PORT_PLAYER(1) - 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 ) + PORT_BIT( 0x0000000f, 0x00000000, IPT_PEDAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(7) PORT_PLAYER(1) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00000100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) + PORT_BIT( 0x00000200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) + PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) + PORT_BIT( 0x00000800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) + PORT_BIT( 0x00001000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00002000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00004000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00008000, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("IN3") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) - 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 ) + PORT_BIT( 0x00400000, IP_ACTIVE_LOW, IPT_UNUSED ) + PORT_BIT( 0x00800000, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_MODIFY("DSW1") - PORT_DIPNAME( 0xe0, 0xe0, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:3,2,1") - PORT_DIPSETTING( 0x80, DEF_STR( 4C_1C ) ) - PORT_DIPSETTING( 0x40, DEF_STR( 3C_1C ) ) - PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING( 0xe0, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) ) - PORT_DIPSETTING( 0x60, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING( 0xa0, DEF_STR( 1C_3C ) ) - PORT_DIPSETTING( 0x20, DEF_STR( 1C_4C ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Demo_Sounds) ) PORT_DIPLOCATION("SW1:4") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x10, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:5") - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:6") - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Region ) ) PORT_DIPLOCATION("SW3:2,1") - PORT_DIPSETTING( 0x40, DEF_STR( USA ) ) - PORT_DIPSETTING( 0x00, DEF_STR( World ) ) -// PORT_DIPSETTING( 0x80, "?" ) - PORT_DIPSETTING( 0xc0, DEF_STR( Japan ) ) - PORT_DIPNAME( 0x20, 0x00, "Tickets" ) PORT_DIPLOCATION("SW3:3") - PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x20, DEF_STR( On ) ) + PORT_MODIFY("DSW") + PORT_DIPUNUSED_DIPLOC( 0x00000100, 0x00000100, "SW1:8" ) + PORT_DIPUNUSED_DIPLOC( 0x00000200, 0x00000200, "SW1:7" ) + PORT_DIPUNUSED_DIPLOC( 0x00000400, 0x00000400, "SW1:6" ) + PORT_DIPUNUSED_DIPLOC( 0x00000800, 0x00000800, "SW1:5" ) + PORT_DIPNAME( 0x00001000, 0x00001000, DEF_STR( Demo_Sounds) ) PORT_DIPLOCATION("SW1:4") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00001000, DEF_STR( On ) ) + PORT_DIPNAME( 0x0000e000, 0x0000e000, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:3,2,1") + PORT_DIPSETTING( 0x00008000, DEF_STR( 4C_1C ) ) + PORT_DIPSETTING( 0x00004000, DEF_STR( 3C_1C ) ) + PORT_DIPSETTING( 0x0000c000, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x0000e000, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( 2C_3C ) ) + PORT_DIPSETTING( 0x00006000, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x0000a000, DEF_STR( 1C_3C ) ) + PORT_DIPSETTING( 0x00002000, DEF_STR( 1C_4C ) ) + PORT_DIPNAME( 0x00200000, 0x00000000, "Tickets" ) PORT_DIPLOCATION("SW3:3") + PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00200000, DEF_STR( On ) ) + PORT_DIPNAME( 0x00c00000, 0x00000000, DEF_STR( Region ) ) PORT_DIPLOCATION("SW3:2,1") + PORT_DIPSETTING( 0x00400000, DEF_STR( USA ) ) + PORT_DIPSETTING( 0x00000000, DEF_STR( World ) ) +// PORT_DIPSETTING( 0x00800000, "?" ) + PORT_DIPSETTING( 0x00c00000, DEF_STR( Japan ) ) INPUT_PORTS_END static INPUT_PORTS_START( f1superb ) // Mostly wrong ! PORT_INCLUDE( ms32 ) - PORT_MODIFY("IN2") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) + PORT_MODIFY("INPUTS") + PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) + PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) + PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) + PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) + PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) + PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) + PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) + PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) + PORT_BIT( 0x00000100, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) + PORT_BIT( 0x00000200, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) + PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) + PORT_BIT( 0x00000800, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3) + PORT_BIT( 0x00001000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4) + PORT_BIT( 0x00002000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) + PORT_BIT( 0x00004000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) + PORT_BIT( 0x00008000, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(4) - PORT_MODIFY("IN3") - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(4) + PORT_MODIFY("DSW") + PORT_DIPUNKNOWN_DIPLOC( 0x00000001, 0x00000001, "SW2:8" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000002, 0x00000002, "SW2:7" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000004, 0x00000004, "SW2:6" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000008, 0x00000008, "SW2:5" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000010, 0x00000010, "SW2:4" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000020, 0x00000020, "SW2:3" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000040, 0x00000040, "SW2:2" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00000080, 0x00000080, "SW2:1" ) - PORT_MODIFY("DSW2") - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:1") - PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:2") - PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:3") - PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:4") - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:5") - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:6") - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - - PORT_MODIFY("DSW3") - PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:1") - PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:2") - PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:3") - PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:4") - PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:5") - PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:6") - PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:7") - PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW3:8") - PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) - PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPUNKNOWN_DIPLOC( 0x00010000, 0x00010000, "SW3:8" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00020000, 0x00020000, "SW3:7" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00040000, 0x00040000, "SW3:6" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00080000, 0x00080000, "SW3:5" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00100000, 0x00100000, "SW3:4" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00200000, 0x00200000, "SW3:3" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00400000, 0x00400000, "SW3:2" ) + PORT_DIPUNKNOWN_DIPLOC( 0x00800000, 0x00800000, "SW3:1" ) PORT_START("AN0") // Acceleration (wrong?) PORT_BIT( 0xff, 0x00, IPT_AD_STICK_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(15) PORT_REVERSE PORT_PLAYER(1) diff --git a/src/mame/drivers/munchmo.c b/src/mame/drivers/munchmo.c index bf37d1365ea..e2ac57fbedd 100644 --- a/src/mame/drivers/munchmo.c +++ b/src/mame/drivers/munchmo.c @@ -77,11 +77,11 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xb000, 0xb3ff) AM_READ(SMH_RAM) AM_RANGE(0xb400, 0xb7ff) AM_READ(mnchmobl_sprite_attr_r) /* mirrored */ AM_RANGE(0xb800, 0xb8ff) AM_MIRROR(0x0100) AM_READ(SMH_RAM) - AM_RANGE(0xbe02, 0xbe02) AM_READ(input_port_3_r) /* DSW1 */ - AM_RANGE(0xbe03, 0xbe03) AM_READ(input_port_4_r) /* DSW2 */ - AM_RANGE(0xbf01, 0xbf01) AM_READ(input_port_0_r) /* coin, start */ - AM_RANGE(0xbf02, 0xbf02) AM_READ(input_port_1_r) /* P1 controls */ - AM_RANGE(0xbf03, 0xbf03) AM_READ(input_port_2_r) /* P2 controls */ + AM_RANGE(0xbe02, 0xbe02) AM_READ_PORT("DSW1") + AM_RANGE(0xbe03, 0xbe03) AM_READ_PORT("DSW2") + AM_RANGE(0xbf01, 0xbf01) AM_READ_PORT("SYSTEM") + AM_RANGE(0xbf02, 0xbf02) AM_READ_PORT("P1") + AM_RANGE(0xbf03, 0xbf03) AM_READ_PORT("P2") ADDRESS_MAP_END static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 ) @@ -135,7 +135,7 @@ static INPUT_PORTS_START( mnchmobl ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("P1") /* P1 controls */ + PORT_START("P1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_8WAY @@ -144,7 +144,7 @@ static INPUT_PORTS_START( mnchmobl ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_2WAY PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("P2") /* P2 controls */ + PORT_START("P2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_8WAY PORT_COCKTAIL @@ -153,7 +153,7 @@ static INPUT_PORTS_START( mnchmobl ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_2WAY PORT_COCKTAIL PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("DSW1") /* DSW1 0xbe02 */ + PORT_START("DSW1") PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( On ) ) @@ -184,7 +184,7 @@ static INPUT_PORTS_START( mnchmobl ) PORT_DIPSETTING( 0xc0, "20000" ) PORT_DIPSETTING( 0xe0, "10000" ) - PORT_START("DSW2") /* DSW2 0xbe03 */ + PORT_START("DSW2") PORT_DIPNAME( 0x03, 0x00, "Second Bonus Life" ) PORT_DIPSETTING( 0x00, "No Bonus?" ) PORT_DIPSETTING( 0x01, "100000?" ) diff --git a/src/mame/drivers/murogem.c b/src/mame/drivers/murogem.c index bc4d68823d4..8848f933bed 100644 --- a/src/mame/drivers/murogem.c +++ b/src/mame/drivers/murogem.c @@ -104,8 +104,8 @@ static ADDRESS_MAP_START( murogem_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x007f) AM_RAM AM_RANGE(0x4000, 0x4000) AM_DEVWRITE(MC6845, "crtc", mc6845_address_w) AM_RANGE(0x4001, 0x4001) AM_DEVWRITE(MC6845, "crtc", mc6845_register_w) - AM_RANGE(0x5000, 0x5000) AM_READ(input_port_0_r) - AM_RANGE(0x5800, 0x5800) AM_READ(input_port_1_r) + AM_RANGE(0x5000, 0x5000) AM_READ_PORT("IN0") + AM_RANGE(0x5800, 0x5800) AM_READ_PORT("IN1") AM_RANGE(0x7000, 0x7000) AM_WRITE(SMH_NOP) // sound? payout? AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE(&murogem_videoram) AM_RANGE(0xf000, 0xffff) AM_ROM diff --git a/src/mame/drivers/mustache.c b/src/mame/drivers/mustache.c index 94f8e138a05..eb5fd7f1965 100644 --- a/src/mame/drivers/mustache.c +++ b/src/mame/drivers/mustache.c @@ -68,11 +68,11 @@ static ADDRESS_MAP_START( memmap, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xd002, 0xd002) AM_WRITE(t5182_sharedram_semaphore_main_acquire_w) AM_RANGE(0xd003, 0xd003) AM_WRITE(t5182_sharedram_semaphore_main_release_w) AM_RANGE(0xd400, 0xd4ff) AM_READWRITE(t5182shared_r, t5182shared_w) - AM_RANGE(0xd800, 0xd800) AM_READ(input_port_0_r) /* IN 0 */ - AM_RANGE(0xd801, 0xd801) AM_READ(input_port_1_r) /* IN 1 */ - AM_RANGE(0xd802, 0xd802) AM_READ(input_port_2_r) /* IN 2 */ - AM_RANGE(0xd803, 0xd803) AM_READ(input_port_3_r) /* DSW A */ - AM_RANGE(0xd804, 0xd804) AM_READ(input_port_4_r) /* DSW B */ + AM_RANGE(0xd800, 0xd800) AM_READ_PORT("P1") + AM_RANGE(0xd801, 0xd801) AM_READ_PORT("P2") + AM_RANGE(0xd802, 0xd802) AM_READ_PORT("START") + AM_RANGE(0xd803, 0xd803) AM_READ_PORT("DSWA") + AM_RANGE(0xd804, 0xd804) AM_READ_PORT("DSWB") AM_RANGE(0xd806, 0xd806) AM_WRITE(mustache_scroll_w) AM_RANGE(0xd807, 0xd807) AM_WRITE(mustache_video_control_w) AM_RANGE(0xe800, 0xefff) AM_WRITE(SMH_RAM) AM_BASE(&spriteram) AM_SIZE(&spriteram_size) @@ -82,7 +82,7 @@ ADDRESS_MAP_END /******************************************************************************/ static INPUT_PORTS_START( mustache ) - PORT_START("P1") /* IN 1 */ + PORT_START("P1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) @@ -90,7 +90,7 @@ static INPUT_PORTS_START( mustache ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) - PORT_START("P2") /* IN 2 */ + PORT_START("P2") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL @@ -98,33 +98,30 @@ static INPUT_PORTS_START( mustache ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL - PORT_START("START") /* IN 3 */ + PORT_START("START") PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0xf9, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_START("DSW1") /* DSW A */ + PORT_START("DSWA") PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) ) PORT_DIPSETTING( 0x01, DEF_STR( Upright ) ) PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) ) - PORT_DIPNAME( 0x06, 0x04, DEF_STR( Difficulty ) ) PORT_DIPSETTING( 0x06, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x04, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x02, DEF_STR( Hard ) ) PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) - PORT_DIPNAME( 0x18, 0x18, DEF_STR( Lives ) ) - PORT_DIPSETTING( 0x08, "4" ) PORT_DIPSETTING( 0x10, "1" ) PORT_DIPSETTING( 0x18, "3" ) + PORT_DIPSETTING( 0x08, "4" ) PORT_DIPSETTING( 0x00, "5" ) - PORT_DIPNAME( 0x20, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW2") /* DSW B */ + PORT_START("DSWB") PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) ) PORT_DIPSETTING( 0x00, DEF_STR( 5C_1C ) ) PORT_DIPSETTING( 0x04, DEF_STR( 4C_1C ) ) @@ -134,13 +131,11 @@ static INPUT_PORTS_START( mustache ) PORT_DIPSETTING( 0x03, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x05, DEF_STR( 1C_3C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 1C_5C ) ) - PORT_DIPNAME( 0x18, 0x18, DEF_STR( Coin_B ) ) PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) ) PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) - PORT_SERVICE( 0x20, IP_ACTIVE_LOW ) PORT_DIPNAME( 0x40, 0x40, DEF_STR( Free_Play ) ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) @@ -149,7 +144,6 @@ static INPUT_PORTS_START( mustache ) PORT_START(T5182COINPORT) PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_IMPULSE(2) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 ) PORT_IMPULSE(2) - INPUT_PORTS_END diff --git a/src/mame/drivers/mw8080bw.c b/src/mame/drivers/mw8080bw.c index 91e71f51b65..677009310f7 100644 --- a/src/mame/drivers/mw8080bw.c +++ b/src/mame/drivers/mw8080bw.c @@ -326,8 +326,8 @@ static CUSTOM_INPUT( seawolf_erase_input_r ) static ADDRESS_MAP_START( seawolf_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_1_r) + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN1") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(seawolf_explosion_lamp_w) @@ -356,25 +356,25 @@ static INPUT_PORTS_START( seawolf ) /* The actual commutator pcb (encoder) has 30 positions and works like the table says. */ PORT_BIT( 0x1f, 0x0f, IPT_POSITIONAL ) PORT_POSITIONS(30) PORT_REMAP_TABLE(seawolf_controller_table) PORT_INVERT PORT_SENSITIVITY(20) PORT_KEYDELTA(8) PORT_CENTERDELTA(0) PORT_NAME("Periscope axis") PORT_CROSSHAIR(X, ((float)MW8080BW_HPIXCOUNT - 28) / MW8080BW_HPIXCOUNT, 16.0 / MW8080BW_HPIXCOUNT, 32.0 / MW8080BW_VBSTART) PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_DIPNAME( 0xc0, 0x40, DEF_STR( Game_Time ) ) PORT_CONDITION("IN1",0xe0,PORTCOND_NOTEQUALS,0xe0) PORT_DIPLOCATION("G4:1,2") - PORT_DIPSETTING( 0x00, "60 seconds + 20 extended" ) PORT_CONDITION("IN1",0xe0,PORTCOND_NOTEQUALS,0x00) - PORT_DIPSETTING( 0x40, "70 seconds + 20 extended" ) PORT_CONDITION("IN1",0xe0,PORTCOND_NOTEQUALS,0x00) - PORT_DIPSETTING( 0x80, "80 seconds + 20 extended" ) PORT_CONDITION("IN1",0xe0,PORTCOND_NOTEQUALS,0x00) - PORT_DIPSETTING( 0xc0, "90 seconds + 20 extended" ) PORT_CONDITION("IN1",0xe0,PORTCOND_NOTEQUALS,0x00) - PORT_DIPSETTING( 0x00, "60 seconds" ) PORT_CONDITION("IN1",0xe0,PORTCOND_EQUALS,0x00) - PORT_DIPSETTING( 0x40, "70 seconds" ) PORT_CONDITION("IN1",0xe0,PORTCOND_EQUALS,0x00) - PORT_DIPSETTING( 0x80, "80 seconds" ) PORT_CONDITION("IN1",0xe0,PORTCOND_EQUALS,0x00) - PORT_DIPSETTING( 0xc0, "90 seconds" ) PORT_CONDITION("IN1",0xe0,PORTCOND_EQUALS,0x00) + PORT_DIPNAME( 0xc0, 0x40, DEF_STR( Game_Time ) ) PORT_CONDITION("IN1", 0xe0, PORTCOND_NOTEQUALS, 0xe0) PORT_DIPLOCATION("G4:1,2") + PORT_DIPSETTING( 0x00, "60 seconds + 20 extended" ) PORT_CONDITION("IN1", 0xe0, PORTCOND_NOTEQUALS, 0x00) + PORT_DIPSETTING( 0x40, "70 seconds + 20 extended" ) PORT_CONDITION("IN1", 0xe0, PORTCOND_NOTEQUALS, 0x00) + PORT_DIPSETTING( 0x80, "80 seconds + 20 extended" ) PORT_CONDITION("IN1", 0xe0, PORTCOND_NOTEQUALS, 0x00) + PORT_DIPSETTING( 0xc0, "90 seconds + 20 extended" ) PORT_CONDITION("IN1", 0xe0, PORTCOND_NOTEQUALS, 0x00) + PORT_DIPSETTING( 0x00, "60 seconds" ) PORT_CONDITION("IN1", 0xe0, PORTCOND_EQUALS, 0x00) + PORT_DIPSETTING( 0x40, "70 seconds" ) PORT_CONDITION("IN1", 0xe0, PORTCOND_EQUALS, 0x00) + PORT_DIPSETTING( 0x80, "80 seconds" ) PORT_CONDITION("IN1", 0xe0, PORTCOND_EQUALS, 0x00) + PORT_DIPSETTING( 0xc0, "90 seconds" ) PORT_CONDITION("IN1", 0xe0, PORTCOND_EQUALS, 0x00) PORT_START("IN1") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START1 ) - PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN1",0xe0,PORTCOND_NOTEQUALS,0xe0) PORT_DIPLOCATION("G4:3,4") + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN1", 0xe0, PORTCOND_NOTEQUALS, 0xe0) PORT_DIPLOCATION("G4:3,4") PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x0c, DEF_STR( 2C_3C ) ) PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) ) - PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(seawolf_erase_input_r, 0) + PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(seawolf_erase_input_r, NULL) PORT_DIPNAME( 0xe0, 0x60, "Extended Time At" ) PORT_DIPLOCATION("G4:6,7,8") PORT_DIPSETTING( 0x00, DEF_STR( None ) ) PORT_DIPSETTING( 0x20, "2000" ) @@ -431,9 +431,9 @@ static WRITE8_HANDLER( gunfight_io_w ) static ADDRESS_MAP_START( gunfight_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) /* no decoder, just 3 AND gates */ @@ -620,9 +620,9 @@ static WRITE8_HANDLER( tornbase_io_w ) static ADDRESS_MAP_START( tornbase_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) /* no decoder, just 3 AND gates */ @@ -632,38 +632,38 @@ ADDRESS_MAP_END static INPUT_PORTS_START( tornbase ) PORT_START("IN0") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_hit_left_input_r, 0) - PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_pitch_left_input_r, 0) - PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("B1:7") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_hit_left_input_r, NULL) + PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_pitch_left_input_r, NULL) + PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("B1:7") PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( On ) ) PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_hit_right_input_r, 0) - PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_pitch_right_input_r, 0) + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_hit_right_input_r, NULL) + PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_pitch_right_input_r, NULL) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED) /* not connected */ PORT_START("IN2") PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* schematics shows it as "START", but not used by the software */ - PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_score_input_r, 0) - PORT_DIPNAME ( 0x78, 0x40, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("B1:2,3,4,5") - PORT_DIPSETTING ( 0x18, "4 Coins/1 Inning" ) - PORT_DIPSETTING ( 0x10, "3 Coins/1 Inning" ) - PORT_DIPSETTING ( 0x38, "4 Coins/2 Innings" ) - PORT_DIPSETTING ( 0x08, "2 Coins/1 Inning" ) - PORT_DIPSETTING ( 0x30, "3 Coins/2 Innings" ) - PORT_DIPSETTING ( 0x28, "2 Coins/2 Innings" ) - PORT_DIPSETTING ( 0x00, "1 Coin/1 Inning" ) - PORT_DIPSETTING ( 0x58, "4 Coins/4 Innings" ) - PORT_DIPSETTING ( 0x50, "3 Coins/4 Innings" ) - PORT_DIPSETTING ( 0x48, "2 Coins/4 Innings" ) - PORT_DIPSETTING ( 0x20, "1 Coin/2 Innings" ) - PORT_DIPSETTING ( 0x40, "1 Coin/4 Innings" ) - PORT_DIPSETTING ( 0x78, "4 Coins/9 Innings" ) - PORT_DIPSETTING ( 0x70, "3 Coins/9 Innings" ) - PORT_DIPSETTING ( 0x68, "2 Coins/9 Innings" ) - PORT_DIPSETTING ( 0x60, "1 Coin/9 Innings" ) + PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tornbase_score_input_r, NULL) + PORT_DIPNAME( 0x78, 0x40, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("B1:2,3,4,5") + PORT_DIPSETTING( 0x18, "4 Coins/1 Inning" ) + PORT_DIPSETTING( 0x10, "3 Coins/1 Inning" ) + PORT_DIPSETTING( 0x38, "4 Coins/2 Innings" ) + PORT_DIPSETTING( 0x08, "2 Coins/1 Inning" ) + PORT_DIPSETTING( 0x30, "3 Coins/2 Innings" ) + PORT_DIPSETTING( 0x28, "2 Coins/2 Innings" ) + PORT_DIPSETTING( 0x00, "1 Coin/1 Inning" ) + PORT_DIPSETTING( 0x58, "4 Coins/4 Innings" ) + PORT_DIPSETTING( 0x50, "3 Coins/4 Innings" ) + PORT_DIPSETTING( 0x48, "2 Coins/4 Innings" ) + PORT_DIPSETTING( 0x20, "1 Coin/2 Innings" ) + PORT_DIPSETTING( 0x40, "1 Coin/4 Innings" ) + PORT_DIPSETTING( 0x78, "4 Coins/9 Innings" ) + PORT_DIPSETTING( 0x70, "3 Coins/9 Innings" ) + PORT_DIPSETTING( 0x68, "2 Coins/9 Innings" ) + PORT_DIPSETTING( 0x60, "1 Coin/9 Innings" ) PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_HIGH, "B1:6" ) /* fake ports to handle the various input configurations based on cabinet type */ @@ -738,9 +738,9 @@ MACHINE_DRIVER_END static ADDRESS_MAP_START( zzzap_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x02, 0x02) AM_WRITE(zzzap_audio_1_w) @@ -763,25 +763,25 @@ static INPUT_PORTS_START( zzzap ) PORT_BIT( 0xff, 0x7f, IPT_PADDLE ) PORT_MINMAX(0x01,0xfe) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(1) PORT_START("IN2") - PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x0c,PORTCOND_NOTEQUALS,0x04) PORT_DIPLOCATION("E3:1,2") + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x0c, PORTCOND_NOTEQUALS, 0x04) PORT_DIPLOCATION("E3:1,2") PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) ) PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Game_Time ) ) PORT_DIPLOCATION("E3:3,4") - PORT_DIPSETTING( 0x0c, "60 seconds + 30 extended" ) PORT_CONDITION("IN2",0x30,PORTCOND_NOTEQUALS,0x20) - PORT_DIPSETTING( 0x00, "80 seconds + 40 extended" ) PORT_CONDITION("IN2",0x30,PORTCOND_NOTEQUALS,0x20) - PORT_DIPSETTING( 0x08, "99 seconds + 50 extended" ) PORT_CONDITION("IN2",0x30,PORTCOND_NOTEQUALS,0x20) - PORT_DIPSETTING( 0x0c, "60 seconds" ) PORT_CONDITION("IN2",0x30,PORTCOND_EQUALS,0x20) - PORT_DIPSETTING( 0x00, "80 seconds" ) PORT_CONDITION("IN2",0x30,PORTCOND_EQUALS,0x20) - PORT_DIPSETTING( 0x08, "99 seconds" ) PORT_CONDITION("IN2",0x30,PORTCOND_EQUALS,0x20) + PORT_DIPSETTING( 0x0c, "60 seconds + 30 extended" ) PORT_CONDITION("IN2", 0x30, PORTCOND_NOTEQUALS, 0x20) + PORT_DIPSETTING( 0x00, "80 seconds + 40 extended" ) PORT_CONDITION("IN2", 0x30, PORTCOND_NOTEQUALS, 0x20) + PORT_DIPSETTING( 0x08, "99 seconds + 50 extended" ) PORT_CONDITION("IN2", 0x30, PORTCOND_NOTEQUALS, 0x20) + PORT_DIPSETTING( 0x0c, "60 seconds" ) PORT_CONDITION("IN2", 0x30, PORTCOND_EQUALS, 0x20) + PORT_DIPSETTING( 0x00, "80 seconds" ) PORT_CONDITION("IN2", 0x30, PORTCOND_EQUALS, 0x20) + PORT_DIPSETTING( 0x08, "99 seconds" ) PORT_CONDITION("IN2", 0x30, PORTCOND_EQUALS, 0x20) PORT_DIPSETTING( 0x04, "Test Mode" ) - PORT_DIPNAME( 0x30, 0x00, "Extended Time At" ) PORT_CONDITION("IN2",0x0c,PORTCOND_NOTEQUALS,0x04) PORT_DIPLOCATION("E3:5,6") + PORT_DIPNAME( 0x30, 0x00, "Extended Time At" ) PORT_CONDITION("IN2", 0x0c, PORTCOND_NOTEQUALS, 0x04) PORT_DIPLOCATION("E3:5,6") PORT_DIPSETTING( 0x10, "2.00" ) PORT_DIPSETTING( 0x00, "2.50" ) PORT_DIPSETTING( 0x20, DEF_STR( None ) ) /* PORT_DIPSETTING( 0x30, DEF_STR( None ) ) */ - PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Language )) PORT_CONDITION("IN2",0x0c,PORTCOND_NOTEQUALS,0x04) PORT_DIPLOCATION("E3:7,8") + PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Language )) PORT_CONDITION("IN2", 0x0c, PORTCOND_NOTEQUALS, 0x04) PORT_DIPLOCATION("E3:7,8") PORT_DIPSETTING( 0x00, DEF_STR( English ) ) PORT_DIPSETTING( 0x40, DEF_STR( German ) ) PORT_DIPSETTING( 0x80, DEF_STR( French ) ) @@ -806,16 +806,16 @@ static INPUT_PORTS_START( lagunar ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) ) - PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Game_Time ) ) PORT_CONDITION("IN2",0xc0,PORTCOND_NOTEQUALS,0x04) PORT_DIPLOCATION("E3:3,4") - PORT_DIPSETTING( 0x00, "45 seconds + 22 extended" ) PORT_CONDITION("IN2",0xc0,PORTCOND_NOTEQUALS,0xc0) - PORT_DIPSETTING( 0x04, "60 seconds + 30 extended" ) PORT_CONDITION("IN2",0xc0,PORTCOND_NOTEQUALS,0xc0) - PORT_DIPSETTING( 0x08, "75 seconds + 37 extended" ) PORT_CONDITION("IN2",0xc0,PORTCOND_NOTEQUALS,0xc0) - PORT_DIPSETTING( 0x0c, "90 seconds + 45 extended" ) PORT_CONDITION("IN2",0xc0,PORTCOND_NOTEQUALS,0xc0) - PORT_DIPSETTING( 0x00, "45 seconds" ) PORT_CONDITION("IN2",0xc0,PORTCOND_EQUALS,0xc0) - PORT_DIPSETTING( 0x04, "60 seconds" ) PORT_CONDITION("IN2",0xc0,PORTCOND_EQUALS,0xc0) - PORT_DIPSETTING( 0x08, "75 seconds" ) PORT_CONDITION("IN2",0xc0,PORTCOND_EQUALS,0xc0) - PORT_DIPSETTING( 0x0c, "90 seconds" ) PORT_CONDITION("IN2",0xc0,PORTCOND_EQUALS,0xc0) - PORT_DIPNAME( 0x30, 0x20, "Extended Time At" ) PORT_CONDITION("IN2",0xc0,PORTCOND_NOTEQUALS,0xc0) PORT_DIPLOCATION("E3:5,6") + PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Game_Time ) ) PORT_CONDITION("IN2", 0xc0, PORTCOND_NOTEQUALS, 0x04) PORT_DIPLOCATION("E3:3,4") + PORT_DIPSETTING( 0x00, "45 seconds + 22 extended" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_NOTEQUALS, 0xc0) + PORT_DIPSETTING( 0x04, "60 seconds + 30 extended" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_NOTEQUALS, 0xc0) + PORT_DIPSETTING( 0x08, "75 seconds + 37 extended" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_NOTEQUALS, 0xc0) + PORT_DIPSETTING( 0x0c, "90 seconds + 45 extended" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_NOTEQUALS, 0xc0) + PORT_DIPSETTING( 0x00, "45 seconds" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_EQUALS, 0xc0) + PORT_DIPSETTING( 0x04, "60 seconds" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_EQUALS, 0xc0) + PORT_DIPSETTING( 0x08, "75 seconds" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_EQUALS, 0xc0) + PORT_DIPSETTING( 0x0c, "90 seconds" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_EQUALS, 0xc0) + PORT_DIPNAME( 0x30, 0x20, "Extended Time At" ) PORT_CONDITION("IN2", 0xc0, PORTCOND_NOTEQUALS, 0xc0) PORT_DIPLOCATION("E3:5,6") PORT_DIPSETTING( 0x00, "350" ) PORT_DIPSETTING( 0x10, "400" ) PORT_DIPSETTING( 0x20, "450" ) @@ -903,8 +903,8 @@ static WRITE8_HANDLER( maze_io_w ) static ADDRESS_MAP_START( maze_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x3) - AM_RANGE(0x00, 0x00) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_READ(input_port_1_r) + AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") /* no decoder, just a couple of AND gates */ AM_RANGE(0x00, 0x03) AM_WRITE(maze_io_w) @@ -927,14 +927,14 @@ static INPUT_PORTS_START( maze ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED ) /* labeled 'Not Used' */ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 ) - PORT_DIPNAME ( 0x30, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN1",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:1,2") - PORT_DIPSETTING ( 0x10, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING ( 0x30, DEF_STR( 2C_3C ) ) - PORT_DIPSETTING ( 0x20, DEF_STR( 1C_2C ) ) - PORT_DIPNAME ( 0x40, 0x40, "2 Player Game Time" ) PORT_CONDITION("IN1",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:3") - PORT_DIPSETTING ( 0x40, "4 minutes" ) - PORT_DIPSETTING ( 0x00, "6 minutes" ) + PORT_DIPNAME( 0x30, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN1", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:1,2") + PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x30, DEF_STR( 2C_3C ) ) + PORT_DIPSETTING( 0x20, DEF_STR( 1C_2C ) ) + PORT_DIPNAME( 0x40, 0x40, "2 Player Game Time" ) PORT_CONDITION("IN1", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:3") + PORT_DIPSETTING( 0x40, "4 minutes" ) + PORT_DIPSETTING( 0x00, "6 minutes" ) PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_HIGH, "SW:4" ) INPUT_PORTS_END @@ -972,9 +972,9 @@ static MACHINE_START( boothill ) static ADDRESS_MAP_START( boothill_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mw8080bw_reversable_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mw8080bw_reversable_shift_count_w) @@ -1010,16 +1010,16 @@ static INPUT_PORTS_START( boothill ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_START("IN2") - PORT_DIPNAME ( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x10,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:1,2") - PORT_DIPSETTING ( 0x02, "2 Coins per Player" ) - PORT_DIPSETTING ( 0x03, "2 Coins/1 or 2 Players" ) - PORT_DIPSETTING ( 0x00, "1 Coin per Player" ) - PORT_DIPSETTING ( 0x01, "1 Coin/1 or 2 Players" ) - PORT_DIPNAME ( 0x0c, 0x04, DEF_STR( Game_Time ) ) PORT_CONDITION("IN2",0x10,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:3,4") - PORT_DIPSETTING ( 0x00, "60 seconds" ) - PORT_DIPSETTING ( 0x04, "70 seconds" ) - PORT_DIPSETTING ( 0x08, "80 seconds" ) - PORT_DIPSETTING ( 0x0c, "90 seconds" ) + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x10, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:1,2") + PORT_DIPSETTING( 0x02, "2 Coins per Player" ) + PORT_DIPSETTING( 0x03, "2 Coins/1 or 2 Players" ) + PORT_DIPSETTING( 0x00, "1 Coin per Player" ) + PORT_DIPSETTING( 0x01, "1 Coin/1 or 2 Players" ) + PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Game_Time ) ) PORT_CONDITION("IN2", 0x10, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:3,4") + PORT_DIPSETTING( 0x00, "60 seconds" ) + PORT_DIPSETTING( 0x04, "70 seconds" ) + PORT_DIPSETTING( 0x08, "80 seconds" ) + PORT_DIPSETTING( 0x0c, "90 seconds" ) PORT_SERVICE_DIPLOC (0x10, IP_ACTIVE_HIGH, "SW:5" ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) @@ -1062,10 +1062,10 @@ static WRITE8_HANDLER( checkmat_io_w ) static ADDRESS_MAP_START( checkmat_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x3) - AM_RANGE(0x00, 0x00) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_READ(input_port_2_r) - AM_RANGE(0x03, 0x03) AM_READ(input_port_3_r) + AM_RANGE(0x00, 0x00) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_READ_PORT("IN2") + AM_RANGE(0x03, 0x03) AM_READ_PORT("IN3") /* no decoder, just a couple of AND gates */ AM_RANGE(0x00, 0x03) AM_WRITE(checkmat_io_w) @@ -1094,25 +1094,25 @@ static INPUT_PORTS_START( checkmat ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(4) PORT_START("IN2") - PORT_DIPNAME ( 0x01, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("A4:1") - PORT_DIPSETTING ( 0x00, "1 Coin/1 or 2 Players" ) - PORT_DIPSETTING ( 0x01, "1 Coin/1 or 2 Players, 2 Coins/3 or 4 Players" ) - PORT_DIPNAME ( 0x02, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("A4:2") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x02, DEF_STR( On ) ) - PORT_DIPNAME ( 0x0c, 0x04, "Rounds" ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("A4:3,4") - PORT_DIPSETTING ( 0x00, "2" ) - PORT_DIPSETTING ( 0x04, "3" ) - PORT_DIPSETTING ( 0x08, "4" ) - PORT_DIPSETTING ( 0x0c, "5" ) - PORT_DIPNAME ( 0x10, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("A4:5") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x10, DEF_STR( On ) ) - PORT_DIPNAME ( 0x60, 0x00, DEF_STR( Language ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("A4:6,7") - PORT_DIPSETTING ( 0x00, DEF_STR( English ) ) - PORT_DIPSETTING ( 0x20, "Language 2" ) - PORT_DIPSETTING ( 0x40, "Language 3" ) - PORT_DIPSETTING ( 0x60, "Language 4" ) + PORT_DIPNAME( 0x01, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("A4:1") + PORT_DIPSETTING( 0x00, "1 Coin/1 or 2 Players" ) + PORT_DIPSETTING( 0x01, "1 Coin/1 or 2 Players, 2 Coins/3 or 4 Players" ) + PORT_DIPNAME( 0x02, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("A4:2") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x02, DEF_STR( On ) ) + PORT_DIPNAME( 0x0c, 0x04, "Rounds" ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("A4:3,4") + PORT_DIPSETTING( 0x00, "2" ) + PORT_DIPSETTING( 0x04, "3" ) + PORT_DIPSETTING( 0x08, "4" ) + PORT_DIPSETTING( 0x0c, "5" ) + PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("A4:5") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x10, DEF_STR( On ) ) + PORT_DIPNAME( 0x60, 0x00, DEF_STR( Language ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("A4:6,7") + PORT_DIPSETTING( 0x00, DEF_STR( English ) ) + PORT_DIPSETTING( 0x20, "Language 2" ) + PORT_DIPSETTING( 0x40, "Language 3" ) + PORT_DIPSETTING( 0x60, "Language 4" ) PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_HIGH, "A4:8" ) PORT_START("IN3") @@ -1205,8 +1205,8 @@ static CUSTOM_INPUT( desertgu_dip_sw_0_1_r ) static ADDRESS_MAP_START( desertgu_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_1_r) + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN1") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mb14241_0_shift_count_w) @@ -1221,11 +1221,11 @@ ADDRESS_MAP_END static INPUT_PORTS_START( desertgu ) PORT_START("IN0") - PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(desertgu_gun_input_r, 0) + PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(desertgu_gun_input_r, NULL) PORT_START("IN1") - PORT_BIT( 0x03, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(desertgu_dip_sw_0_1_r, 0) - PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Language ) ) PORT_CONDITION("IN1",0x30,PORTCOND_NOTEQUALS,0x30) PORT_DIPLOCATION("C2:5,6") + PORT_BIT( 0x03, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(desertgu_dip_sw_0_1_r, NULL) + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Language ) ) PORT_CONDITION("IN1", 0x30, PORTCOND_NOTEQUALS, 0x30) PORT_DIPLOCATION("C2:5,6") PORT_DIPSETTING( 0x00, DEF_STR( English ) ) PORT_DIPSETTING( 0x04, DEF_STR( German ) ) PORT_DIPSETTING( 0x08, DEF_STR( French ) ) @@ -1248,7 +1248,7 @@ static INPUT_PORTS_START( desertgu ) /* D0 and D1 in the DIP SW input port can reflect two sets of switches depending on the controller select bit. These two ports are fakes to handle this case */ PORT_START(DESERTGU_DIP_SW_0_1_SET_1_TAG) - PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN1",0x30,PORTCOND_NOTEQUALS,0x30) PORT_DIPLOCATION("C2:1,2") + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN1", 0x30, PORTCOND_NOTEQUALS, 0x30) PORT_DIPLOCATION("C2:1,2") PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) ) @@ -1256,7 +1256,7 @@ static INPUT_PORTS_START( desertgu ) PORT_BIT( 0xfc, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_START(DESERTGU_DIP_SW_0_1_SET_2_TAG) - PORT_DIPNAME( 0x03, 0x01, DEF_STR( Game_Time ) ) PORT_CONDITION("IN1",0x30,PORTCOND_NOTEQUALS,0x30) PORT_DIPLOCATION("C2:3,4") + PORT_DIPNAME( 0x03, 0x01, DEF_STR( Game_Time ) ) PORT_CONDITION("IN1", 0x30, PORTCOND_NOTEQUALS, 0x30) PORT_DIPLOCATION("C2:3,4") PORT_DIPSETTING( 0x00, "40 seconds + 30 extended" ) PORT_DIPSETTING( 0x01, "50 seconds + 30 extended" ) PORT_DIPSETTING( 0x02, "60 seconds + 30 extended" ) @@ -1324,9 +1324,9 @@ static CUSTOM_INPUT( dplay_pitch_right_input_r ) static ADDRESS_MAP_START( dplay_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mb14241_0_shift_count_w) @@ -1341,33 +1341,33 @@ ADDRESS_MAP_END static INPUT_PORTS_START( dplay ) PORT_START("IN0") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("P1 Hit") PORT_PLAYER(1) - PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(dplay_pitch_left_input_r, 0) + PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(dplay_pitch_left_input_r, NULL) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_START("IN1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("P2 Hit") PORT_PLAYER(2) - PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(dplay_pitch_right_input_r, 0) + PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(dplay_pitch_right_input_r, NULL) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) PORT_START("IN2") - PORT_DIPNAME ( 0x07, 0x00, DEF_STR( Coinage )) PORT_CONDITION("IN2",0x40,PORTCOND_EQUALS,0x40) PORT_DIPLOCATION("C1:1,2,3") - PORT_DIPSETTING ( 0x05, "2 Coins/1 Inning/1 Player, 4 Coins/1 Inning/2 Players, 8 Coins/3 Innings/2 Players" ) - PORT_DIPSETTING ( 0x04, "1 Coin/1 Inning/1 Player, 2 Coins/1 Inning/2 Players, 4 Coins/3 Innings/2 Players" ) - PORT_DIPSETTING ( 0x02, "2 Coins per Inning" ) - PORT_DIPSETTING ( 0x03, "2 Coins/1 Inning, 4 Coins/3 Innings" ) - PORT_DIPSETTING ( 0x00, "1 Coin per Inning" ) - /* PORT_DIPSETTING ( 0x06, "1 Coin per Inning" ) */ - /* PORT_DIPSETTING ( 0x07, "1 Coin per Inning" ) */ - PORT_DIPSETTING ( 0x01, "1 Coin/1 Inning, 2 Coins/3 Innings" ) - PORT_DIPNAME ( 0x08, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2",0x40,PORTCOND_EQUALS,0x40) PORT_DIPLOCATION("C1:4") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x08, DEF_STR( On ) ) - PORT_DIPNAME ( 0x10, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2",0x40,PORTCOND_EQUALS,0x40) PORT_DIPLOCATION("C1:5") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x10, DEF_STR( On ) ) - PORT_DIPNAME ( 0x20, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2",0x40,PORTCOND_EQUALS,0x40) PORT_DIPLOCATION("C1:6") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x20, DEF_STR( On ) ) + PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage )) PORT_CONDITION("IN2", 0x40, PORTCOND_EQUALS, 0x40) PORT_DIPLOCATION("C1:1,2,3") + PORT_DIPSETTING( 0x05, "2 Coins/1 Inning/1 Player, 4 Coins/1 Inning/2 Players, 8 Coins/3 Innings/2 Players" ) + PORT_DIPSETTING( 0x04, "1 Coin/1 Inning/1 Player, 2 Coins/1 Inning/2 Players, 4 Coins/3 Innings/2 Players" ) + PORT_DIPSETTING( 0x02, "2 Coins per Inning" ) + PORT_DIPSETTING( 0x03, "2 Coins/1 Inning, 4 Coins/3 Innings" ) + PORT_DIPSETTING( 0x00, "1 Coin per Inning" ) + /* PORT_DIPSETTING( 0x06, "1 Coin per Inning" ) */ + /* PORT_DIPSETTING( 0x07, "1 Coin per Inning" ) */ + PORT_DIPSETTING( 0x01, "1 Coin/1 Inning, 2 Coins/3 Innings" ) + PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2", 0x40, PORTCOND_EQUALS, 0x40) PORT_DIPLOCATION("C1:4") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x08, DEF_STR( On ) ) + PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2", 0x40, PORTCOND_EQUALS, 0x40) PORT_DIPLOCATION("C1:5") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x10, DEF_STR( On ) ) + PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2", 0x40, PORTCOND_EQUALS, 0x40) PORT_DIPLOCATION("C1:6") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x20, DEF_STR( On ) ) PORT_SERVICE_DIPLOC( 0x40, IP_ACTIVE_LOW, "C1:7" ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) @@ -1405,33 +1405,33 @@ INPUT_PORTS_END static INPUT_PORTS_START( einning ) PORT_START("IN0") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("P1 Hit") PORT_PLAYER(1) - PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(dplay_pitch_left_input_r, 0) + PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(dplay_pitch_left_input_r, NULL) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_START("IN1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("P2 Hit") PORT_PLAYER(2) - PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(dplay_pitch_right_input_r, 0) + PORT_BIT( 0x7e, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(dplay_pitch_right_input_r, NULL) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) PORT_START("IN2") - PORT_DIPNAME ( 0x07, 0x00, DEF_STR( Coinage )) PORT_CONDITION("IN2",0x40,PORTCOND_EQUALS,0x40) PORT_DIPLOCATION("C1:1,2,3") - PORT_DIPSETTING ( 0x05, "2 Coins/1 Inning/1 Player, 4 Coins/1 Inning/2 Players, 8 Coins/3 Innings/2 Players" ) - PORT_DIPSETTING ( 0x04, "1 Coin/1 Inning/1 Player, 2 Coins/1 Inning/2 Players, 4 Coins/3 Innings/2 Players" ) - PORT_DIPSETTING ( 0x02, "2 Coins per Inning" ) - PORT_DIPSETTING ( 0x03, "2 Coins/1 Inning, 4 Coins/3 Innings" ) - PORT_DIPSETTING ( 0x00, "1 Coin per Inning" ) - /* PORT_DIPSETTING ( 0x06, "1 Coin per Inning" ) */ - /* PORT_DIPSETTING ( 0x07, "1 Coin per Inning" ) */ - PORT_DIPSETTING ( 0x01, "1 Coin/1 Inning, 2 Coins/3 Innings" ) - PORT_DIPNAME ( 0x08, 0x00, "Wall Knock Out Behavior" ) PORT_CONDITION("IN2",0x40,PORTCOND_EQUALS,0x40) PORT_DIPLOCATION("C1:4") - PORT_DIPSETTING ( 0x00, "Individually" ) - PORT_DIPSETTING ( 0x08, "In Pairs" ) - PORT_DIPNAME ( 0x10, 0x00, "Double Score when Special Lit" ) PORT_CONDITION("IN2",0x40,PORTCOND_EQUALS,0x40) PORT_DIPLOCATION("C1:5") - PORT_DIPSETTING ( 0x00, "Home Run Only" ) - PORT_DIPSETTING ( 0x10, "Any Hit" ) - PORT_DIPNAME ( 0x20, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2",0x40,PORTCOND_EQUALS,0x40) PORT_DIPLOCATION("C1:6") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x20, DEF_STR( On ) ) + PORT_DIPNAME( 0x07, 0x00, DEF_STR( Coinage )) PORT_CONDITION("IN2", 0x40, PORTCOND_EQUALS, 0x40) PORT_DIPLOCATION("C1:1,2,3") + PORT_DIPSETTING( 0x05, "2 Coins/1 Inning/1 Player, 4 Coins/1 Inning/2 Players, 8 Coins/3 Innings/2 Players" ) + PORT_DIPSETTING( 0x04, "1 Coin/1 Inning/1 Player, 2 Coins/1 Inning/2 Players, 4 Coins/3 Innings/2 Players" ) + PORT_DIPSETTING( 0x02, "2 Coins per Inning" ) + PORT_DIPSETTING( 0x03, "2 Coins/1 Inning, 4 Coins/3 Innings" ) + PORT_DIPSETTING( 0x00, "1 Coin per Inning" ) + /* PORT_DIPSETTING( 0x06, "1 Coin per Inning" ) */ + /* PORT_DIPSETTING( 0x07, "1 Coin per Inning" ) */ + PORT_DIPSETTING( 0x01, "1 Coin/1 Inning, 2 Coins/3 Innings" ) + PORT_DIPNAME( 0x08, 0x00, "Wall Knock Out Behavior" ) PORT_CONDITION("IN2", 0x40, PORTCOND_EQUALS, 0x40) PORT_DIPLOCATION("C1:4") + PORT_DIPSETTING( 0x00, "Individually" ) + PORT_DIPSETTING( 0x08, "In Pairs" ) + PORT_DIPNAME( 0x10, 0x00, "Double Score when Special Lit" ) PORT_CONDITION("IN2", 0x40, PORTCOND_EQUALS, 0x40) PORT_DIPLOCATION("C1:5") + PORT_DIPSETTING( 0x00, "Home Run Only" ) + PORT_DIPSETTING( 0x10, "Any Hit" ) + PORT_DIPNAME( 0x20, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2", 0x40, PORTCOND_EQUALS, 0x40) PORT_DIPLOCATION("C1:6") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x20, DEF_STR( On ) ) PORT_SERVICE_DIPLOC( 0x40, IP_ACTIVE_LOW, "C1:7" ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) @@ -1498,9 +1498,9 @@ static MACHINE_START( gmissile ) static ADDRESS_MAP_START( gmissile_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mw8080bw_reversable_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mw8080bw_reversable_shift_count_w) @@ -1535,24 +1535,24 @@ static INPUT_PORTS_START( gmissile ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_START("IN2") - PORT_DIPNAME ( 0x03, 0x03, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("D1:1,2") - PORT_DIPSETTING ( 0x01, "2 Coins per Player" ) - PORT_DIPSETTING ( 0x00, "2 Coins/1 or 2 Players" ) - PORT_DIPSETTING ( 0x03, "1 Coin per Player" ) - PORT_DIPSETTING ( 0x02, "1 Coin/1 or 2 Players" ) - PORT_DIPNAME ( 0x0c, 0x08, DEF_STR( Game_Time ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("D1:3,4") - PORT_DIPSETTING ( 0x00, "60 seconds + 30 extended" ) - PORT_DIPSETTING ( 0x08, "70 seconds + 35 extended" ) - PORT_DIPSETTING ( 0x04, "80 seconds + 40 extended" ) - PORT_DIPSETTING ( 0x0c, "90 seconds + 45 extended" ) - PORT_DIPNAME ( 0x30, 0x10, "Extended Time At" ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("D1:5,6") - PORT_DIPSETTING ( 0x00, "500" ) - PORT_DIPSETTING ( 0x20, "700" ) - PORT_DIPSETTING ( 0x10, "1000" ) - PORT_DIPSETTING ( 0x30, "1300" ) - PORT_DIPNAME ( 0x40, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("D1:7") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x40, DEF_STR( On ) ) + PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("D1:1,2") + PORT_DIPSETTING( 0x01, "2 Coins per Player" ) + PORT_DIPSETTING( 0x00, "2 Coins/1 or 2 Players" ) + PORT_DIPSETTING( 0x03, "1 Coin per Player" ) + PORT_DIPSETTING( 0x02, "1 Coin/1 or 2 Players" ) + PORT_DIPNAME( 0x0c, 0x08, DEF_STR( Game_Time ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("D1:3,4") + PORT_DIPSETTING( 0x00, "60 seconds + 30 extended" ) + PORT_DIPSETTING( 0x08, "70 seconds + 35 extended" ) + PORT_DIPSETTING( 0x04, "80 seconds + 40 extended" ) + PORT_DIPSETTING( 0x0c, "90 seconds + 45 extended" ) + PORT_DIPNAME( 0x30, 0x10, "Extended Time At" ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("D1:5,6") + PORT_DIPSETTING( 0x00, "500" ) + PORT_DIPSETTING( 0x20, "700" ) + PORT_DIPSETTING( 0x10, "1000" ) + PORT_DIPSETTING( 0x30, "1300" ) + PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("D1:7") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x40, DEF_STR( On ) ) PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_LOW, "D1:8" ) INPUT_PORTS_END @@ -1590,9 +1590,9 @@ static MACHINE_START( m4 ) static ADDRESS_MAP_START( m4_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mw8080bw_reversable_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mw8080bw_reversable_shift_count_w) @@ -1625,25 +1625,25 @@ static INPUT_PORTS_START( m4 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) /* not connected */ PORT_START("IN2") - PORT_DIPNAME ( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x10,PORTCOND_EQUALS,0x10) PORT_DIPLOCATION("C1:1,2") - PORT_DIPSETTING ( 0x02, "2 Coins per Player" ) - PORT_DIPSETTING ( 0x03, "2 Coins/1 or 2 Players" ) - PORT_DIPSETTING ( 0x00, "1 Coin per Player" ) - PORT_DIPSETTING ( 0x01, "1 Coin/1 or 2 Players" ) - PORT_DIPNAME ( 0x0c, 0x04, DEF_STR( Game_Time ) ) PORT_CONDITION("IN2",0x10,PORTCOND_EQUALS,0x10) PORT_DIPLOCATION("C1:3,4") - PORT_DIPSETTING ( 0x00, "60 seconds" ) - PORT_DIPSETTING ( 0x04, "70 seconds" ) - PORT_DIPSETTING ( 0x08, "80 seconds" ) - PORT_DIPSETTING ( 0x0c, "90 seconds" ) + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x10, PORTCOND_EQUALS, 0x10) PORT_DIPLOCATION("C1:1,2") + PORT_DIPSETTING( 0x02, "2 Coins per Player" ) + PORT_DIPSETTING( 0x03, "2 Coins/1 or 2 Players" ) + PORT_DIPSETTING( 0x00, "1 Coin per Player" ) + PORT_DIPSETTING( 0x01, "1 Coin/1 or 2 Players" ) + PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Game_Time ) ) PORT_CONDITION("IN2", 0x10, PORTCOND_EQUALS, 0x10) PORT_DIPLOCATION("C1:3,4") + PORT_DIPSETTING( 0x00, "60 seconds" ) + PORT_DIPSETTING( 0x04, "70 seconds" ) + PORT_DIPSETTING( 0x08, "80 seconds" ) + PORT_DIPSETTING( 0x0c, "90 seconds" ) PORT_SERVICE_DIPLOC( 0x10, IP_ACTIVE_LOW, "C1:5" ) - PORT_DIPNAME ( 0x20, 0x00, "Extended Play" ) PORT_DIPLOCATION("C1:6") - PORT_DIPSETTING ( 0x20, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( On ) ) - PORT_DIPNAME ( 0xc0, 0x00, "Extended Play At" ) PORT_DIPLOCATION("C1:8,7") - PORT_DIPSETTING ( 0xc0, "70" ) - PORT_DIPSETTING ( 0x40, "80" ) - PORT_DIPSETTING ( 0x80, "100" ) - PORT_DIPSETTING ( 0x00, "110" ) + PORT_DIPNAME( 0x20, 0x00, "Extended Play" ) PORT_DIPLOCATION("C1:6") + PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0xc0, 0x00, "Extended Play At" ) PORT_DIPLOCATION("C1:8,7") + PORT_DIPSETTING( 0xc0, "70" ) + PORT_DIPSETTING( 0x40, "80" ) + PORT_DIPSETTING( 0x80, "100" ) + PORT_DIPSETTING( 0x00, "110" ) INPUT_PORTS_END @@ -1710,9 +1710,9 @@ static CUSTOM_INPUT( clowns_controller_r ) static ADDRESS_MAP_START( clowns_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mb14241_0_shift_count_w) @@ -1727,7 +1727,7 @@ ADDRESS_MAP_END static INPUT_PORTS_START( clowns ) PORT_START("IN0") - PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clowns_controller_r, 0) + PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clowns_controller_r, NULL) PORT_START("IN1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) /* not connected */ @@ -1740,25 +1740,25 @@ static INPUT_PORTS_START( clowns ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) /* not connected */ PORT_START("IN2") - PORT_DIPNAME ( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:1,2") - PORT_DIPSETTING ( 0x03, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING ( 0x02, DEF_STR( 2C_2C ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING ( 0x01, DEF_STR( 1C_2C ) ) - PORT_DIPNAME ( 0x0c, 0x00, "Bonus Game" ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:3,4") - PORT_DIPSETTING ( 0x00, "No Bonus" ) - PORT_DIPSETTING ( 0x04, "9000" ) - PORT_DIPSETTING ( 0x08, "11000" ) - PORT_DIPSETTING ( 0x0c, "13000" ) - PORT_DIPNAME ( 0x10, 0x00, "Balloon Resets" ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:5") - PORT_DIPSETTING ( 0x00, "Each Row" ) - PORT_DIPSETTING ( 0x10, "All Rows" ) - PORT_DIPNAME ( 0x20, 0x00, DEF_STR( Bonus_Life ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:6") - PORT_DIPSETTING ( 0x00, "3000" ) - PORT_DIPSETTING ( 0x20, "4000" ) - PORT_DIPNAME ( 0x40, 0x00, DEF_STR( Lives ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:7") - PORT_DIPSETTING ( 0x00, "3" ) - PORT_DIPSETTING ( 0x40, "4" ) + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:1,2") + PORT_DIPSETTING( 0x03, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x02, DEF_STR( 2C_2C ) ) + PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) ) + PORT_DIPNAME( 0x0c, 0x00, "Bonus Game" ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:3,4") + PORT_DIPSETTING( 0x00, "No Bonus" ) + PORT_DIPSETTING( 0x04, "9000" ) + PORT_DIPSETTING( 0x08, "11000" ) + PORT_DIPSETTING( 0x0c, "13000" ) + PORT_DIPNAME( 0x10, 0x00, "Balloon Resets" ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:5") + PORT_DIPSETTING( 0x00, "Each Row" ) + PORT_DIPSETTING( 0x10, "All Rows" ) + PORT_DIPNAME( 0x20, 0x00, DEF_STR( Bonus_Life ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:6") + PORT_DIPSETTING( 0x00, "3000" ) + PORT_DIPSETTING( 0x20, "4000" ) + PORT_DIPNAME( 0x40, 0x00, DEF_STR( Lives ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:7") + PORT_DIPSETTING( 0x00, "3" ) + PORT_DIPSETTING( 0x40, "4" ) /* test mode - press coin button for input test */ PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_HIGH, "SW:8" ) @@ -1776,7 +1776,7 @@ INPUT_PORTS_END static INPUT_PORTS_START( clowns1 ) PORT_START("IN0") - PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clowns_controller_r, 0) + PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clowns_controller_r, NULL) PORT_START("IN1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) @@ -1789,25 +1789,25 @@ static INPUT_PORTS_START( clowns1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_START("IN2") - PORT_DIPNAME ( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:1,2") - PORT_DIPSETTING ( 0x03, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING ( 0x02, DEF_STR( 2C_2C ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING ( 0x01, DEF_STR( 1C_2C ) ) - PORT_DIPNAME ( 0x0c, 0x04, DEF_STR( Lives ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:3,4") - PORT_DIPSETTING ( 0x00, "2" ) - PORT_DIPSETTING ( 0x04, "3" ) - PORT_DIPSETTING ( 0x08, "4" ) - PORT_DIPSETTING ( 0x0c, "5" ) - PORT_DIPNAME ( 0x10, 0x00, "Balloon Resets" ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:5") - PORT_DIPSETTING ( 0x00, "Each Row" ) - PORT_DIPSETTING ( 0x10, "All Rows" ) - PORT_DIPNAME ( 0x20, 0x00, DEF_STR( Bonus_Life ) ) PORT_CONDITION("IN2",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("SW:6") - PORT_DIPSETTING ( 0x00, "3000" ) - PORT_DIPSETTING ( 0x20, "4000" ) - PORT_DIPNAME ( 0x40, 0x00, "Input Test" ) PORT_DIPLOCATION("SW:7") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x40, DEF_STR( On ) ) + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:1,2") + PORT_DIPSETTING( 0x03, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x02, DEF_STR( 2C_2C ) ) + PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) ) + PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Lives ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:3,4") + PORT_DIPSETTING( 0x00, "2" ) + PORT_DIPSETTING( 0x04, "3" ) + PORT_DIPSETTING( 0x08, "4" ) + PORT_DIPSETTING( 0x0c, "5" ) + PORT_DIPNAME( 0x10, 0x00, "Balloon Resets" ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:5") + PORT_DIPSETTING( 0x00, "Each Row" ) + PORT_DIPSETTING( 0x10, "All Rows" ) + PORT_DIPNAME( 0x20, 0x00, DEF_STR( Bonus_Life ) ) PORT_CONDITION("IN2", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("SW:6") + PORT_DIPSETTING( 0x00, "3000" ) + PORT_DIPSETTING( 0x20, "4000" ) + PORT_DIPNAME( 0x40, 0x00, "Input Test" ) PORT_DIPLOCATION("SW:7") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x40, DEF_STR( On ) ) PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_HIGH, "SW:8" ) PORT_START(CLOWNS_CONTROLLER_P1_TAG) @@ -1846,11 +1846,11 @@ MACHINE_DRIVER_END static ADDRESS_MAP_START( shuffle_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* yes, 4, and no mirroring on the read handlers */ AM_RANGE(0x01, 0x01) AM_READ(mb14241_0_shift_result_r) - AM_RANGE(0x02, 0x02) AM_READ(input_port_0_r) + AM_RANGE(0x02, 0x02) AM_READ_PORT("IN0") AM_RANGE(0x03, 0x03) AM_READ(mw8080bw_shift_result_rev_r) - AM_RANGE(0x04, 0x04) AM_READ(input_port_1_r) - AM_RANGE(0x05, 0x05) AM_READ(input_port_2_r) - AM_RANGE(0x06, 0x06) AM_READ(input_port_3_r) + AM_RANGE(0x04, 0x04) AM_READ_PORT("IN1") + AM_RANGE(0x05, 0x05) AM_READ_PORT("IN2") + AM_RANGE(0x06, 0x06) AM_READ_PORT("IN3") AM_RANGE(0x01, 0x01) AM_MIRROR(0x08) AM_WRITE(mb14241_0_shift_count_w) AM_RANGE(0x02, 0x02) AM_MIRROR(0x08) AM_WRITE(mb14241_0_shift_data_w) @@ -1862,24 +1862,24 @@ ADDRESS_MAP_END static INPUT_PORTS_START( shuffle ) PORT_START("IN0") - PORT_DIPNAME ( 0x03, 0x00, DEF_STR( Language ) ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("B3:1,2") - PORT_DIPSETTING ( 0x00, DEF_STR( English ) ) - PORT_DIPSETTING ( 0x01, DEF_STR( French ) ) - PORT_DIPSETTING ( 0x02, DEF_STR( German ) ) - /* PORT_DIPSETTING ( 0x03, DEF_STR( German ) ) */ - PORT_DIPNAME ( 0x0c, 0x04, "Points to Win" ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("B3:3,4") - PORT_DIPSETTING ( 0x00, "Game 1 = 25, Game 2 = 11" ) - PORT_DIPSETTING ( 0x04, "Game 1 = 35, Game 2 = 15" ) - PORT_DIPSETTING ( 0x08, "Game 1 = 40, Game 2 = 18" ) - PORT_DIPSETTING ( 0x0c, "Game 1 = 50, Game 2 = 21" ) - PORT_DIPNAME ( 0x30, 0x10, DEF_STR( Coinage ) ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("B3:5,6") - PORT_DIPSETTING ( 0x30, "2 Coins per Player" ) - PORT_DIPSETTING ( 0x20, "2 Coins/1 or 2 Players" ) - PORT_DIPSETTING ( 0x10, "1 Coin per Player" ) - PORT_DIPSETTING ( 0x00, "1 Coin/1 or 2 Players" ) - PORT_DIPNAME ( 0x40, 0x40, "Time Limit" ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("B3:7") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x40, DEF_STR( On ) ) + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Language ) ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("B3:1,2") + PORT_DIPSETTING( 0x00, DEF_STR( English ) ) + PORT_DIPSETTING( 0x01, DEF_STR( French ) ) + PORT_DIPSETTING( 0x02, DEF_STR( German ) ) + /* PORT_DIPSETTING( 0x03, DEF_STR( German ) ) */ + PORT_DIPNAME( 0x0c, 0x04, "Points to Win" ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("B3:3,4") + PORT_DIPSETTING( 0x00, "Game 1 = 25, Game 2 = 11" ) + PORT_DIPSETTING( 0x04, "Game 1 = 35, Game 2 = 15" ) + PORT_DIPSETTING( 0x08, "Game 1 = 40, Game 2 = 18" ) + PORT_DIPSETTING( 0x0c, "Game 1 = 50, Game 2 = 21" ) + PORT_DIPNAME( 0x30, 0x10, DEF_STR( Coinage ) ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("B3:5,6") + PORT_DIPSETTING( 0x30, "2 Coins per Player" ) + PORT_DIPSETTING( 0x20, "2 Coins/1 or 2 Players" ) + PORT_DIPSETTING( 0x10, "1 Coin per Player" ) + PORT_DIPSETTING( 0x00, "1 Coin/1 or 2 Players" ) + PORT_DIPNAME( 0x40, 0x40, "Time Limit" ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("B3:7") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x40, DEF_STR( On ) ) PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_LOW, "B3:8" ) PORT_START("IN1") @@ -1923,9 +1923,9 @@ MACHINE_DRIVER_END static ADDRESS_MAP_START( dogpatch_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mb14241_0_shift_count_w) @@ -1961,25 +1961,25 @@ static INPUT_PORTS_START( dogpatch ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_START("IN2") - PORT_DIPNAME ( 0x03, 0x02, "Number of Cans" ) PORT_CONDITION("IN2",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:1,2") - PORT_DIPSETTING ( 0x03, "10" ) - PORT_DIPSETTING ( 0x02, "15" ) - PORT_DIPSETTING ( 0x01, "20" ) - PORT_DIPSETTING ( 0x00, "25" ) - PORT_DIPNAME ( 0x0c, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:3,4") - PORT_DIPSETTING ( 0x08, "2 Coins per Player" ) - PORT_DIPSETTING ( 0x0c, "2 Coins/1 or 2 Players" ) - PORT_DIPSETTING ( 0x00, "1 Coin per Player" ) - PORT_DIPSETTING ( 0x04, "1 Coin/1 or 2 Players" ) - PORT_DIPNAME ( 0x10, 0x10, "Extended Time Reward" ) PORT_CONDITION("IN2",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:5") - PORT_DIPSETTING ( 0x10, "3 extra cans" ) - PORT_DIPSETTING ( 0x00, "5 extra cans" ) + PORT_DIPNAME( 0x03, 0x02, "Number of Cans" ) PORT_CONDITION("IN2", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:1,2") + PORT_DIPSETTING( 0x03, "10" ) + PORT_DIPSETTING( 0x02, "15" ) + PORT_DIPSETTING( 0x01, "20" ) + PORT_DIPSETTING( 0x00, "25" ) + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:3,4") + PORT_DIPSETTING( 0x08, "2 Coins per Player" ) + PORT_DIPSETTING( 0x0c, "2 Coins/1 or 2 Players" ) + PORT_DIPSETTING( 0x00, "1 Coin per Player" ) + PORT_DIPSETTING( 0x04, "1 Coin/1 or 2 Players" ) + PORT_DIPNAME( 0x10, 0x10, "Extended Time Reward" ) PORT_CONDITION("IN2", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:5") + PORT_DIPSETTING( 0x10, "3 extra cans" ) + PORT_DIPSETTING( 0x00, "5 extra cans" ) PORT_SERVICE_DIPLOC( 0x20, IP_ACTIVE_LOW, "SW:6" ) - PORT_DIPNAME ( 0xc0, 0x40, "Extended Time At" ) PORT_CONDITION("IN2",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:7,8") - PORT_DIPSETTING ( 0xc0, "150" ) - PORT_DIPSETTING ( 0x80, "175" ) - PORT_DIPSETTING ( 0x40, "225" ) - PORT_DIPSETTING ( 0x00, "275" ) + PORT_DIPNAME( 0xc0, 0x40, "Extended Time At" ) PORT_CONDITION("IN2", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:7,8") + PORT_DIPSETTING( 0xc0, "150" ) + PORT_DIPSETTING( 0x80, "175" ) + PORT_DIPSETTING( 0x40, "225" ) + PORT_DIPSETTING( 0x00, "275" ) INPUT_PORTS_END @@ -2090,9 +2090,9 @@ static WRITE8_HANDLER( spcenctr_io_w ) static ADDRESS_MAP_START( spcenctr_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xff) - AM_RANGE(0x00, 0x00) AM_MIRROR(0xfc) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0xfc) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0xfc) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0xfc) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0xfc) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0xfc) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0xfc) AM_READNOP /* complicated addressing logic */ @@ -2127,12 +2127,12 @@ static INPUT_PORTS_START( spcenctr ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) /* marked as COIN #2, but the software never reads it */ PORT_START("IN2") - PORT_DIPNAME( 0x03, 0x02, DEF_STR( Bonus_Life ) ) PORT_CONDITION("IN2",0x30,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("F3:1,2") + PORT_DIPNAME( 0x03, 0x02, DEF_STR( Bonus_Life ) ) PORT_CONDITION("IN2", 0x30, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("F3:1,2") PORT_DIPSETTING( 0x00, "2000 4000 8000" ) PORT_DIPSETTING( 0x01, "3000 6000 12000" ) PORT_DIPSETTING( 0x02, "4000 8000 16000" ) PORT_DIPSETTING( 0x03, "5000 10000 20000" ) - PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2",0x30,PORTCOND_NOTEQUALS,0x10) PORT_DIPLOCATION("F3:3,4") + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN2", 0x30, PORTCOND_NOTEQUALS, 0x10) PORT_DIPLOCATION("F3:3,4") PORT_DIPSETTING( 0x04, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x0c, DEF_STR( 2C_3C ) ) @@ -2142,7 +2142,7 @@ static INPUT_PORTS_START( spcenctr ) PORT_DIPSETTING( 0x30, "Bonus Off" ) PORT_DIPSETTING( 0x20, "Cross Hatch" ) PORT_DIPSETTING( 0x10, "Test Mode" ) - PORT_DIPNAME( 0xc0, 0x40, "Time" ) PORT_CONDITION("IN2",0x30,PORTCOND_NOTEQUALS,0x10) PORT_DIPLOCATION("F3:7,8") + PORT_DIPNAME( 0xc0, 0x40, "Time" ) PORT_CONDITION("IN2", 0x30, PORTCOND_NOTEQUALS, 0x10) PORT_DIPLOCATION("F3:7,8") PORT_DIPSETTING( 0x00, "45" ) PORT_DIPSETTING( 0x40, "60" ) PORT_DIPSETTING( 0x80, "75" ) @@ -2210,8 +2210,8 @@ void phantom2_set_cloud_counter(UINT16 data) static ADDRESS_MAP_START( phantom2_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_1_r) + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN1") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mb14241_0_shift_count_w) @@ -2234,27 +2234,27 @@ static INPUT_PORTS_START( phantom2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) /* not connected */ PORT_START("IN1") - PORT_DIPNAME ( 0x01, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN1",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:1") - PORT_DIPSETTING ( 0x01, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( 1C_1C ) ) - PORT_DIPNAME ( 0x06, 0x06, DEF_STR( Game_Time ) ) PORT_CONDITION("IN1",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:2,3") - PORT_DIPSETTING ( 0x00, "45 seconds + 20 extended (at 20 points)" ) - PORT_DIPSETTING ( 0x02, "60 seconds + 25 extended (at 25 points)" ) - PORT_DIPSETTING ( 0x04, "75 seconds + 30 extended (at 30 points)" ) - PORT_DIPSETTING ( 0x06, "90 seconds + 35 extended (at 35 points)" ) - PORT_DIPNAME ( 0x08, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN1",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:4") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x08, DEF_STR( On ) ) - PORT_DIPNAME ( 0x10, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN1",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:5") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x10, DEF_STR( On ) ) + PORT_DIPNAME( 0x01, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN1", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:1") + PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) + PORT_DIPNAME( 0x06, 0x06, DEF_STR( Game_Time ) ) PORT_CONDITION("IN1", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:2,3") + PORT_DIPSETTING( 0x00, "45 seconds + 20 extended (at 20 points)" ) + PORT_DIPSETTING( 0x02, "60 seconds + 25 extended (at 25 points)" ) + PORT_DIPSETTING( 0x04, "75 seconds + 30 extended (at 30 points)" ) + PORT_DIPSETTING( 0x06, "90 seconds + 35 extended (at 35 points)" ) + PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN1", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:4") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x08, DEF_STR( On ) ) + PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN1", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:5") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x10, DEF_STR( On ) ) PORT_SERVICE_DIPLOC( 0x20, IP_ACTIVE_LOW, "SW:6" ) - PORT_DIPNAME ( 0x40, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN1",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:7") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x40, DEF_STR( On ) ) - PORT_DIPNAME ( 0x80, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN1",0x20,PORTCOND_EQUALS,0x20) PORT_DIPLOCATION("SW:8") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x80, DEF_STR( On ) ) + PORT_DIPNAME( 0x40, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN1", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:7") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x40, DEF_STR( On ) ) + PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unused ) ) PORT_CONDITION("IN1", 0x20, PORTCOND_EQUALS, 0x20) PORT_DIPLOCATION("SW:8") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x80, DEF_STR( On ) ) INPUT_PORTS_END @@ -2333,11 +2333,11 @@ static WRITE8_HANDLER( bowler_lights_2_w ) static ADDRESS_MAP_START( bowler_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0xf) /* no masking on the reads, all 4 bits are decoded */ AM_RANGE(0x01, 0x01) AM_READ(bowler_shift_result_r) - AM_RANGE(0x02, 0x02) AM_READ(input_port_0_r) + AM_RANGE(0x02, 0x02) AM_READ_PORT("IN0") AM_RANGE(0x03, 0x03) AM_READ(mw8080bw_shift_result_rev_r) - AM_RANGE(0x04, 0x04) AM_READ(input_port_1_r) - AM_RANGE(0x05, 0x05) AM_READ(input_port_2_r) - AM_RANGE(0x06, 0x06) AM_READ(input_port_3_r) + AM_RANGE(0x04, 0x04) AM_READ_PORT("IN1") + AM_RANGE(0x05, 0x05) AM_READ_PORT("IN2") + AM_RANGE(0x06, 0x06) AM_READ_PORT("IN3") AM_RANGE(0x01, 0x01) AM_WRITE(mb14241_0_shift_count_w) AM_RANGE(0x02, 0x02) AM_WRITE(mb14241_0_shift_data_w) @@ -2355,26 +2355,26 @@ ADDRESS_MAP_END static INPUT_PORTS_START( bowler ) PORT_START("IN0") - PORT_DIPNAME ( 0x03, 0x00, DEF_STR( Language ) ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("B3:1,2") - PORT_DIPSETTING ( 0x00, DEF_STR( English ) ) - PORT_DIPSETTING ( 0x01, DEF_STR( French ) ) - PORT_DIPSETTING ( 0x02, DEF_STR( German ) ) - /*PORT_DIPSETTING ( 0x03, DEF_STR( German ) ) */ - PORT_DIPNAME ( 0x04, 0x04, DEF_STR( Demo_Sounds ) ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("B3:3") - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x04, DEF_STR( On ) ) /* every 17 minutes */ - PORT_DIPNAME ( 0x08, 0x08, DEF_STR( Game_Time ) ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("B3:4") - PORT_DIPSETTING ( 0x00, "No Limit" ) - PORT_DIPSETTING ( 0x08, "5 Minutes" ) - PORT_DIPNAME ( 0x10, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("B3:5") - PORT_DIPSETTING ( 0x10, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( 1C_1C ) ) - PORT_DIPNAME ( 0x20, 0x20, DEF_STR( Difficulty ) ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("B3:6") - PORT_DIPSETTING ( 0x20, DEF_STR( Easy ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( Hard ) ) - PORT_DIPNAME ( 0x40, 0x00, DEF_STR( Cabinet ) ) PORT_CONDITION("IN0",0x80,PORTCOND_EQUALS,0x00) PORT_DIPLOCATION("B3:7") - PORT_DIPSETTING ( 0x00, DEF_STR( Upright ) ) - PORT_DIPSETTING ( 0x40, "Cocktail (not functional)" ) + PORT_DIPNAME( 0x03, 0x00, DEF_STR( Language ) ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("B3:1,2") + PORT_DIPSETTING( 0x00, DEF_STR( English ) ) + PORT_DIPSETTING( 0x01, DEF_STR( French ) ) + PORT_DIPSETTING( 0x02, DEF_STR( German ) ) + /*PORT_DIPSETTING( 0x03, DEF_STR( German ) ) */ + PORT_DIPNAME( 0x04, 0x04, DEF_STR( Demo_Sounds ) ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("B3:3") + PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x04, DEF_STR( On ) ) /* every 17 minutes */ + PORT_DIPNAME( 0x08, 0x08, DEF_STR( Game_Time ) ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("B3:4") + PORT_DIPSETTING( 0x00, "No Limit" ) + PORT_DIPSETTING( 0x08, "5 Minutes" ) + PORT_DIPNAME( 0x10, 0x00, DEF_STR( Coinage ) ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("B3:5") + PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) + PORT_DIPNAME( 0x20, 0x20, DEF_STR( Difficulty ) ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("B3:6") + PORT_DIPSETTING( 0x20, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Hard ) ) + PORT_DIPNAME( 0x40, 0x00, DEF_STR( Cabinet ) ) PORT_CONDITION("IN0", 0x80, PORTCOND_EQUALS, 0x00) PORT_DIPLOCATION("B3:7") + PORT_DIPSETTING( 0x00, DEF_STR( Upright ) ) + PORT_DIPSETTING( 0x40, "Cocktail (not functional)" ) PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_HIGH, "B3:8" ) PORT_START("IN1") @@ -2532,9 +2532,9 @@ int invaders_is_cabinet_cocktail(running_machine *machine) static ADDRESS_MAP_START( invaders_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x02, 0x02) AM_WRITE(mb14241_0_shift_count_w) @@ -2550,17 +2550,17 @@ static INPUT_PORTS_START( invaders ) PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW:8") PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( On ) ) - PORT_BIT( 0x06, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_sw6_sw7_r, 0) + PORT_BIT( 0x06, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_sw6_sw7_r, NULL) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x70, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_in0_control_r, 0) - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_sw5_r, 0) + PORT_BIT( 0x70, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_in0_control_r, NULL) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_sw5_r, NULL) PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_coin_input_r, 0) + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_coin_input_r, NULL) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) - PORT_BIT( 0x70, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_in1_control_r, 0) + PORT_BIT( 0x70, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_in1_control_r, NULL) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_START("IN2") @@ -2573,7 +2573,7 @@ static INPUT_PORTS_START( invaders ) PORT_DIPNAME( 0x08, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("SW:2") PORT_DIPSETTING( 0x08, "1000" ) PORT_DIPSETTING( 0x00, "1500" ) - PORT_BIT( 0x70, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_in2_control_r, 0) + PORT_BIT( 0x70, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_in2_control_r, NULL) PORT_DIPNAME( 0x80, 0x00, "Display Coinage" ) PORT_DIPLOCATION("SW:1") PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) ) @@ -2661,8 +2661,8 @@ static CUSTOM_INPUT( blueshrk_coin_input_r ) static ADDRESS_MAP_START( blueshrk_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(mw8080bw_shift_result_rev_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_1_r) + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN1") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(mb14241_0_shift_count_w) @@ -2678,19 +2678,19 @@ static INPUT_PORTS_START( blueshrk ) PORT_START("IN1") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) - PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(blueshrk_coin_input_r, 0) - PORT_DIPNAME ( 0x04, 0x04, DEF_STR( Unused ) ) PORT_CONDITION("IN1",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("SW:3") - PORT_DIPSETTING ( 0x04, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( On ) ) + PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(blueshrk_coin_input_r, NULL) + PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unused ) ) PORT_CONDITION("IN1", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("SW:3") + PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_TILT ) /* not shown on the schematics, instead DIP SW4 is connected here */ - PORT_DIPNAME ( 0x10, 0x10, DEF_STR( Unused ) ) PORT_CONDITION("IN1",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("SW:5") - PORT_DIPSETTING ( 0x10, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( On ) ) - PORT_DIPNAME ( 0x60, 0x40, "Replay" ) PORT_CONDITION("IN1",0x80,PORTCOND_EQUALS,0x80) PORT_DIPLOCATION("SW:6,7") - PORT_DIPSETTING ( 0x20, "14000" ) - PORT_DIPSETTING ( 0x40, "18000" ) - PORT_DIPSETTING ( 0x60, "22000" ) - PORT_DIPSETTING ( 0x00, DEF_STR( None ) ) + PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unused ) ) PORT_CONDITION("IN1", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("SW:5") + PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x60, 0x40, "Replay" ) PORT_CONDITION("IN1", 0x80, PORTCOND_EQUALS, 0x80) PORT_DIPLOCATION("SW:6,7") + PORT_DIPSETTING( 0x20, "14000" ) + PORT_DIPSETTING( 0x40, "18000" ) + PORT_DIPSETTING( 0x60, "22000" ) + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) PORT_SERVICE_DIPLOC( 0x80, IP_ACTIVE_LOW, "SW:8" ) /* fake port for reading the coin input */ @@ -2738,9 +2738,9 @@ static UINT32 invad2ct_coin_input_r(void *param) static ADDRESS_MAP_START( invad2ct_io_map, ADDRESS_SPACE_IO, 8 ) ADDRESS_MAP_GLOBAL_MASK(0x7) - AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ(input_port_0_r) - AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ(input_port_1_r) - AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ(input_port_2_r) + AM_RANGE(0x00, 0x00) AM_MIRROR(0x04) AM_READ_PORT("IN0") + AM_RANGE(0x01, 0x01) AM_MIRROR(0x04) AM_READ_PORT("IN1") + AM_RANGE(0x02, 0x02) AM_MIRROR(0x04) AM_READ_PORT("IN2") AM_RANGE(0x03, 0x03) AM_MIRROR(0x04) AM_READ(mb14241_0_shift_result_r) AM_RANGE(0x01, 0x01) AM_WRITE(invad2ct_audio_3_w) @@ -2765,7 +2765,7 @@ static INPUT_PORTS_START( invad2ct ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_START("IN1") - PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_coin_input_r, 0) + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(invaders_coin_input_r, NULL) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) diff --git a/src/mame/drivers/mwarr.c b/src/mame/drivers/mwarr.c index 7940eb3aff6..67bd4cb573c 100644 --- a/src/mame/drivers/mwarr.c +++ b/src/mame/drivers/mwarr.c @@ -140,9 +140,9 @@ static ADDRESS_MAP_START( mwarr_map, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x103c00, 0x103fff) AM_RAM AM_BASE(&vidattrram) AM_RANGE(0x104000, 0x104fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE(&paletteram16) AM_RANGE(0x108000, 0x108fff) AM_RAM AM_BASE(&spriteram16) - AM_RANGE(0x110000, 0x110001) AM_READ(input_port_0_word_r) - AM_RANGE(0x110002, 0x110003) AM_READ(input_port_1_word_r) - AM_RANGE(0x110004, 0x110005) AM_READ(input_port_2_word_r) + AM_RANGE(0x110000, 0x110001) AM_READ_PORT("P1_P2") + AM_RANGE(0x110002, 0x110003) AM_READ_PORT("SYSTEM") + AM_RANGE(0x110004, 0x110005) AM_READ_PORT("DSW") AM_RANGE(0x110010, 0x110011) AM_WRITE(oki1_bank_w) AM_RANGE(0x110014, 0x110015) AM_WRITE(mwarr_brightness_w) AM_RANGE(0x110016, 0x110017) AM_WRITE(sprites_commands_w) diff --git a/src/mame/drivers/quantum.c b/src/mame/drivers/quantum.c index 4b95346d88b..00f2e902037 100644 --- a/src/mame/drivers/quantum.c +++ b/src/mame/drivers/quantum.c @@ -58,12 +58,6 @@ * *************************************/ -static READ16_HANDLER( switches_r ) -{ - return (input_port_read(machine, "IN0") | (avgdvg_done() ? 1 : 0)); -} - - static READ16_HANDLER( trackball_r ) { return (input_port_read(machine, "TRACKY") << 4) | input_port_read(machine, "TRACKX"); @@ -148,7 +142,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 ) AM_RANGE(0x840000, 0x84003f) AM_READWRITE(pokey_word_r, pokey_word_w) AM_RANGE(0x900000, 0x9001ff) AM_RAM AM_BASE(&generic_nvram16) AM_SIZE(&generic_nvram_size) AM_RANGE(0x940000, 0x940001) AM_READ(trackball_r) /* trackball */ - AM_RANGE(0x948000, 0x948001) AM_READ(switches_r) + AM_RANGE(0x948000, 0x948001) AM_READ_PORT("SYSTEM") AM_RANGE(0x950000, 0x95001f) AM_WRITE(SMH_RAM) AM_BASE(&quantum_colorram) AM_RANGE(0x958000, 0x958001) AM_WRITE(led_w) AM_RANGE(0x960000, 0x960001) AM_WRITE(SMH_NOP) @@ -165,19 +159,20 @@ ADDRESS_MAP_END *************************************/ static INPUT_PORTS_START( quantum ) - PORT_START("IN0") /* IN0 */ + PORT_START("SYSTEM") /* YHALT here MUST BE ALWAYS 0 */ - PORT_BIT( 0x01, IP_ACTIVE_HIGH,IPT_SPECIAL ) /* vg YHALT */ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN3 ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 ) - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) + PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL) /* vg YHALT */ + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN3 ) + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_START1 ) + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_START2 ) + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_SERVICE( 0x0080, IP_ACTIVE_LOW ) + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) -/* first POKEY is SW2, second is SW1 -- more confusion! */ - PORT_START("DSW0") /* DSW0 */ + /* first POKEY is SW2, second is SW1 -- more confusion! */ + PORT_START("DSW0") PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coinage ) ) PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) @@ -198,13 +193,13 @@ static INPUT_PORTS_START( quantum ) PORT_DIPSETTING( 0x05, "1 each 3" ) PORT_DIPSETTING( 0x06, "2 each 4" ) - PORT_START("DSW1") /* DSW1 */ + PORT_START("DSW1") PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN ) - PORT_START("TRACKX") /* IN2 */ + PORT_START("TRACKX") PORT_BIT( 0x0f, 0, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(10) PORT_KEYDELTA(10) PORT_REVERSE - PORT_START("TRACKY") /* IN3 */ + PORT_START("TRACKY") PORT_BIT( 0x0f, 0, IPT_TRACKBALL_X ) PORT_SENSITIVITY(10) PORT_KEYDELTA(10) INPUT_PORTS_END diff --git a/src/mame/drivers/starwars.c b/src/mame/drivers/starwars.c index bfda9c074a5..020e47809fc 100644 --- a/src/mame/drivers/starwars.c +++ b/src/mame/drivers/starwars.c @@ -158,10 +158,10 @@ static OPBASE_HANDLER( esb_setopbase ) static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x2fff) AM_RAM AM_BASE(&vectorram) AM_SIZE(&vectorram_size) AM_REGION("main", 0) AM_RANGE(0x3000, 0x3fff) AM_ROM /* vector_rom */ - AM_RANGE(0x4300, 0x431f) AM_READ_PORT("IN0") /* Memory mapped input port 0 */ - AM_RANGE(0x4320, 0x433f) AM_READ(starwars_input_1_r) /* Memory mapped input port 1 */ - AM_RANGE(0x4340, 0x435f) AM_READ_PORT("DSW0") /* DIP switches bank 0 */ - AM_RANGE(0x4360, 0x437f) AM_READ_PORT("DSW1") /* DIP switches bank 1 */ + AM_RANGE(0x4300, 0x431f) AM_READ_PORT("IN0") + AM_RANGE(0x4320, 0x433f) AM_READ_PORT("IN1") + AM_RANGE(0x4340, 0x435f) AM_READ_PORT("DSW0") + AM_RANGE(0x4360, 0x437f) AM_READ_PORT("DSW1") AM_RANGE(0x4380, 0x439f) AM_READ(starwars_adc_r) /* a-d control result */ AM_RANGE(0x4400, 0x4400) AM_READWRITE(starwars_main_read_r, starwars_main_wr_w) AM_RANGE(0x4401, 0x4401) AM_READ(starwars_main_ready_flag_r) @@ -212,156 +212,96 @@ ADDRESS_MAP_END *************************************/ static INPUT_PORTS_START( starwars ) - PORT_START("IN0") /* IN0 */ - PORT_BIT ( 0x01, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT ( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT ( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_TILT ) + PORT_START("IN0") + PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) + PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) + PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_TILT ) PORT_SERVICE( 0x10, IP_ACTIVE_LOW ) - PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT ( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 ) - PORT_BIT ( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) + PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 ) + PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) - PORT_START("IN1") /* IN1 */ - PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_START("IN1") + PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1) - PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT ( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) - PORT_BIT ( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) - /* Bit 6 is MATH_RUN - see machine/starwars.c */ - PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) - /* Bit 7 is VG_HALT - see machine/starwars.c */ - PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) + PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) + PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) + /* Bit 6 is VG_HALT */ + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL) + /* Bit 7 is MATH_RUN - see machine/starwars.c */ + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(matrix_flag_r, NULL) - PORT_START("DSW0") /* DSW0 */ - PORT_DIPNAME(0x03, 0x00, "Starting Shields" ) - PORT_DIPSETTING ( 0x00, "6" ) - PORT_DIPSETTING ( 0x01, "7" ) - PORT_DIPSETTING ( 0x02, "8" ) - PORT_DIPSETTING ( 0x03, "9" ) - PORT_DIPNAME(0x0c, 0x00, DEF_STR( Difficulty ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( Easy ) ) - PORT_DIPSETTING ( 0x04, "Moderate" ) - PORT_DIPSETTING ( 0x08, DEF_STR( Hard ) ) - PORT_DIPSETTING ( 0x0c, DEF_STR( Hardest ) ) - PORT_DIPNAME(0x30, 0x00, "Bonus Shields" ) - PORT_DIPSETTING ( 0x00, "0" ) - PORT_DIPSETTING ( 0x10, "1" ) - PORT_DIPSETTING ( 0x20, "2" ) - PORT_DIPSETTING ( 0x30, "3" ) - PORT_DIPNAME(0x40, 0x00, DEF_STR( Demo_Sounds ) ) - PORT_DIPSETTING ( 0x40, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( On ) ) - PORT_DIPNAME(0x80, 0x80, "Freeze" ) - PORT_DIPSETTING ( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( On ) ) + PORT_START("DSW0") + PORT_DIPNAME( 0x03, 0x00, "Starting Shields" ) + PORT_DIPSETTING( 0x00, "6" ) + PORT_DIPSETTING( 0x01, "7" ) + PORT_DIPSETTING( 0x02, "8" ) + PORT_DIPSETTING( 0x03, "9" ) + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Difficulty ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Easy ) ) + PORT_DIPSETTING( 0x04, "Moderate" ) + PORT_DIPSETTING( 0x08, DEF_STR( Hard ) ) + PORT_DIPSETTING( 0x0c, DEF_STR( Hardest ) ) + PORT_DIPNAME( 0x30, 0x00, "Bonus Shields" ) + PORT_DIPSETTING( 0x00, "0" ) + PORT_DIPSETTING( 0x10, "1" ) + PORT_DIPSETTING( 0x20, "2" ) + PORT_DIPSETTING( 0x30, "3" ) + PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) ) + PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) + PORT_DIPNAME( 0x80, 0x80, "Freeze" ) + PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) + PORT_DIPSETTING( 0x00, DEF_STR( On ) ) - PORT_START("DSW1") /* DSW1 */ - PORT_DIPNAME(0x03, 0x02, DEF_STR( Coinage ) ) - PORT_DIPSETTING ( 0x03, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING ( 0x02, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING ( 0x01, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( Free_Play ) ) - PORT_DIPNAME(0x0c, 0x00, DEF_STR( Coin_B ) ) - PORT_DIPSETTING ( 0x00, "*1" ) - PORT_DIPSETTING ( 0x04, "*4" ) - PORT_DIPSETTING ( 0x08, "*5" ) - PORT_DIPSETTING ( 0x0c, "*6" ) - PORT_DIPNAME(0x10, 0x00, DEF_STR( Coin_A ) ) - PORT_DIPSETTING ( 0x00, "*1" ) - PORT_DIPSETTING ( 0x10, "*2" ) - PORT_DIPNAME(0xe0, 0x00, "Bonus Coinage" ) - PORT_DIPSETTING ( 0x20, "2 gives 1" ) - PORT_DIPSETTING ( 0x60, "4 gives 2" ) - PORT_DIPSETTING ( 0xa0, "3 gives 1" ) - PORT_DIPSETTING ( 0x40, "4 gives 1" ) - PORT_DIPSETTING ( 0x80, "5 gives 1" ) - PORT_DIPSETTING ( 0x00, DEF_STR( None ) ) -/* 0xc0 and 0xe0 None */ + PORT_START("DSW1") + PORT_DIPNAME( 0x03, 0x02, DEF_STR( Coinage ) ) + PORT_DIPSETTING( 0x03, DEF_STR( 2C_1C ) ) + PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) ) + PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) ) + PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) + PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coin_B ) ) + PORT_DIPSETTING( 0x00, "*1" ) + PORT_DIPSETTING( 0x04, "*4" ) + PORT_DIPSETTING( 0x08, "*5" ) + PORT_DIPSETTING( 0x0c, "*6" ) + PORT_DIPNAME( 0x10, 0x00, DEF_STR( Coin_A ) ) + PORT_DIPSETTING( 0x00, "*1" ) + PORT_DIPSETTING( 0x10, "*2" ) + PORT_DIPNAME( 0xe0, 0x00, "Bonus Coinage" ) + PORT_DIPSETTING( 0x20, "2 gives 1" ) + PORT_DIPSETTING( 0x60, "4 gives 2" ) + PORT_DIPSETTING( 0xa0, "3 gives 1" ) + PORT_DIPSETTING( 0x40, "4 gives 1" ) + PORT_DIPSETTING( 0x80, "5 gives 1" ) + PORT_DIPSETTING( 0x00, DEF_STR( None ) ) + /* 0xc0 and 0xe0 None */ - PORT_START("STICKY") /* IN4 */ + PORT_START("STICKY") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(70) PORT_KEYDELTA(30) - PORT_START("STICKX") /* IN5 */ + PORT_START("STICKX") PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(30) INPUT_PORTS_END static INPUT_PORTS_START( esb ) - PORT_START("IN0") /* IN0 */ - PORT_BIT ( 0x01, IP_ACTIVE_LOW, IPT_COIN2 ) - PORT_BIT ( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) - PORT_BIT ( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) - PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_TILT ) - PORT_SERVICE( 0x10, IP_ACTIVE_LOW ) - PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT ( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 ) - PORT_BIT ( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) + PORT_INCLUDE( starwars ) - PORT_START("IN1") /* IN1 */ - PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1) - PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED ) - PORT_BIT ( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) - PORT_BIT ( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) - /* Bit 6 is MATH_RUN - see machine/starwars.c */ - PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED ) - /* Bit 7 is VG_HALT - see machine/starwars.c */ - PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) - - PORT_START("DSW0") /* DSW0 */ - PORT_DIPNAME(0x03, 0x03, "Starting Shields" ) - PORT_DIPSETTING ( 0x01, "2" ) - PORT_DIPSETTING ( 0x00, "3" ) - PORT_DIPSETTING ( 0x03, "4" ) - PORT_DIPSETTING ( 0x02, "5" ) - PORT_DIPNAME(0x0c, 0x0c, DEF_STR( Difficulty ) ) - PORT_DIPSETTING ( 0x08, DEF_STR( Easy ) ) - PORT_DIPSETTING ( 0x0c, "Moderate" ) - PORT_DIPSETTING ( 0x00, DEF_STR( Hard ) ) - PORT_DIPSETTING ( 0x04, DEF_STR( Hardest ) ) - PORT_DIPNAME(0x30, 0x30, "Jedi-Letter Mode" ) - PORT_DIPSETTING ( 0x00, "Level Only" ) - PORT_DIPSETTING ( 0x10, "Level" ) - PORT_DIPSETTING ( 0x20, "Increment Only" ) - PORT_DIPSETTING ( 0x30, "Increment" ) - PORT_DIPNAME(0x40, 0x40, DEF_STR( Demo_Sounds ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x40, DEF_STR( On ) ) - PORT_DIPNAME(0x80, 0x80, "Freeze" ) - PORT_DIPSETTING ( 0x80, DEF_STR( Off ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( On ) ) - - PORT_START("DSW1") /* DSW1 */ - PORT_DIPNAME(0x03, 0x02, DEF_STR( Coinage ) ) - PORT_DIPSETTING ( 0x03, DEF_STR( 2C_1C ) ) - PORT_DIPSETTING ( 0x02, DEF_STR( 1C_1C ) ) - PORT_DIPSETTING ( 0x01, DEF_STR( 1C_2C ) ) - PORT_DIPSETTING ( 0x00, DEF_STR( Free_Play ) ) - PORT_DIPNAME(0x0c, 0x00, DEF_STR( Coin_B ) ) - PORT_DIPSETTING ( 0x00, "*1" ) - PORT_DIPSETTING ( 0x04, "*4" ) - PORT_DIPSETTING ( 0x08, "*5" ) - PORT_DIPSETTING ( 0x0c, "*6" ) - PORT_DIPNAME(0x10, 0x00, DEF_STR( Coin_A ) ) - PORT_DIPSETTING ( 0x00, "*1" ) - PORT_DIPSETTING ( 0x10, "*2" ) - PORT_DIPNAME(0xe0, 0xe0, "Bonus Coinage" ) - PORT_DIPSETTING ( 0x20, "2 gives 1" ) - PORT_DIPSETTING ( 0x60, "4 gives 2" ) - PORT_DIPSETTING ( 0xa0, "3 gives 1" ) - PORT_DIPSETTING ( 0x40, "4 gives 1" ) - PORT_DIPSETTING ( 0x80, "5 gives 1" ) - PORT_DIPSETTING ( 0xe0, DEF_STR( None ) ) -/* 0xc0 and 0x00 None */ - - PORT_START("STICKY") /* IN4 */ - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(70) PORT_KEYDELTA(30) - - PORT_START("STICKX") /* IN5 */ - PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(30) + PORT_MODIFY("DSW0") + PORT_DIPNAME( 0x03, 0x03, "Starting Shields" ) + PORT_DIPSETTING( 0x01, "2" ) + PORT_DIPSETTING( 0x00, "3" ) + PORT_DIPSETTING( 0x03, "4" ) + PORT_DIPSETTING( 0x02, "5" ) + PORT_DIPNAME( 0x30, 0x30, "Jedi-Letter Mode" ) + PORT_DIPSETTING( 0x00, "Level Only" ) + PORT_DIPSETTING( 0x10, "Level" ) + PORT_DIPSETTING( 0x20, "Increment Only" ) + PORT_DIPSETTING( 0x30, "Increment" ) INPUT_PORTS_END diff --git a/src/mame/drivers/tempest.c b/src/mame/drivers/tempest.c index 82ea0b272d0..828eac28da0 100644 --- a/src/mame/drivers/tempest.c +++ b/src/mame/drivers/tempest.c @@ -315,49 +315,21 @@ static WRITE8_HANDLER( wdclr_w ) static CUSTOM_INPUT( tempest_knob_r ) { - UINT32 ret; - - if (tempest_player_select) - { - ret = input_port_read(field->port->machine, TEMPEST_KNOB_P2_TAG); - } - else - { - ret = input_port_read(field->port->machine, TEMPEST_KNOB_P1_TAG); - } - - return ret; + return input_port_read(field->port->machine, (tempest_player_select == 0) ? + TEMPEST_KNOB_P1_TAG : TEMPEST_KNOB_P2_TAG); } static CUSTOM_INPUT( tempest_buttons_r ) { - UINT32 ret; - - if (tempest_player_select) - { - ret = input_port_read(field->port->machine, TEMPEST_BUTTONS_P2_TAG); - } - else - { - ret = input_port_read(field->port->machine, TEMPEST_BUTTONS_P1_TAG); - } - - return ret; + return input_port_read(field->port->machine, (tempest_player_select == 0) ? + TEMPEST_BUTTONS_P1_TAG : TEMPEST_BUTTONS_P2_TAG); } -static READ8_HANDLER( tempest_IN0_r ) +static CUSTOM_INPUT( clock_r ) { - int res = input_port_read(machine, "IN0"); - - if (avgdvg_done()) - res |= 0x40; - /* Emulate the 3kHz source on bit 7 (divide 1.5MHz by 512) */ - if (activecpu_gettotalcycles() & 0x100) - res |= 0x80; - - return res; + return (cpunum_gettotalcycles(0) & 0x100) ? 1 : 0; } @@ -409,9 +381,9 @@ static WRITE8_HANDLER( tempest_coin_w ) static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x0000, 0x07ff) AM_RAM AM_RANGE(0x0800, 0x080f) AM_WRITE(SMH_RAM) AM_BASE(&tempest_colorram) - AM_RANGE(0x0c00, 0x0c00) AM_READ(tempest_IN0_r) /* IN0 */ - AM_RANGE(0x0d00, 0x0d00) AM_READ_PORT("DSW1") /* DSW1 */ - AM_RANGE(0x0e00, 0x0e00) AM_READ_PORT("DSW2") /* DSW2 */ + AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("IN0") + AM_RANGE(0x0d00, 0x0d00) AM_READ_PORT("DSW1") + AM_RANGE(0x0e00, 0x0e00) AM_READ_PORT("DSW2") AM_RANGE(0x2000, 0x2fff) AM_RAM AM_BASE(&vectorram) AM_SIZE(&vectorram_size) AM_REGION("main", 0x2000) AM_RANGE(0x3000, 0x3fff) AM_READ(SMH_ROM) AM_RANGE(0x4000, 0x4000) AM_WRITE(tempest_coin_w) @@ -439,7 +411,7 @@ ADDRESS_MAP_END *************************************/ static INPUT_PORTS_START( tempest ) - PORT_START("IN0") /* IN0 */ + PORT_START("IN0") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 ) @@ -448,14 +420,12 @@ static INPUT_PORTS_START( tempest ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1) /* bit 6 is the VG HALT bit. We set it to "low" */ /* per default (busy vector processor). */ - /* handled by tempest_IN0_r() */ - PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL) /* bit 7 is tied to a 3kHz (?) clock */ - /* handled by tempest_IN0_r() */ - PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) + PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL) - PORT_START("IN1/DSW0") /* IN1/DSW0 */ - PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tempest_knob_r, 0) + PORT_START("IN1/DSW0") + PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tempest_knob_r, NULL) /* The next one is reponsible for cocktail mode. * According to the documentation, this is not a switch, although * it may have been planned to put it on the Math Box PCB, D/E2 ) @@ -467,7 +437,7 @@ static INPUT_PORTS_START( tempest ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("IN2") /* IN2 */ + PORT_START("IN2") PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPSETTING( 0x02, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x03, "Medium1" ) @@ -476,12 +446,12 @@ static INPUT_PORTS_START( tempest ) PORT_DIPNAME( 0x04, 0x04, "Rating" ) PORT_DIPSETTING( 0x04, "1, 3, 5, 7, 9" ) PORT_DIPSETTING( 0x00, "tied to high score" ) - PORT_BIT(0x18, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tempest_buttons_r, 0) + PORT_BIT(0x18, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tempest_buttons_r, NULL) PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) - PORT_START("DSW1") /* DSW1 - (N13 on analog vector generator PCB */ + PORT_START("DSW1") /* N13 on analog vector generator PCB */ PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) @@ -505,7 +475,7 @@ static INPUT_PORTS_START( tempest ) PORT_DIPSETTING( 0xc0, "Freeze Mode" ) PORT_DIPSETTING( 0xe0, "Freeze Mode" ) - PORT_START("DSW2") /* DSW2 - (L12 on analog vector generator PCB */ + PORT_START("DSW2") /* L12 on analog vector generator PCB */ PORT_DIPNAME( 0x01, 0x00, "Minimum" ) PORT_DIPSETTING( 0x00, "1 Credit" ) PORT_DIPSETTING( 0x01, "2 Credit" ) diff --git a/src/mame/includes/megasys1.h b/src/mame/includes/megasys1.h index 760e41cedc3..451936ed402 100644 --- a/src/mame/includes/megasys1.h +++ b/src/mame/includes/megasys1.h @@ -22,61 +22,58 @@ ***************************************************************************/ -/* IN0 - COINS */ #define COINS \ - PORT_START("IN0")\ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )\ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )\ - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )\ - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )\ - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )\ - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE1 )\ - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )\ - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )\ + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_START2 )\ + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )\ + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )\ + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )\ + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_SERVICE1 )\ + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_COIN1 )\ + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN2 )\ + PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN ) -/* IN1/3 - PLAYER 1/2 */ #define JOY_4BUTTONS(_flag_) \ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\ - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\ - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(_flag_)\ - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4) PORT_PLAYER(_flag_) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON4) PORT_PLAYER(_flag_) #define JOY_3BUTTONS(_flag_) \ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\ - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\ - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(_flag_)\ - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN) #define JOY_2BUTTONS(_flag_) \ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\ - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\ - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\ - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN) \ - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN) + PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\ + PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN) \ + PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN) -/* IN2 - RESERVE */ #define RESERVE \ - PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Reserve 1P */\ - PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )\ - PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )\ - PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )\ - PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Reserve 2P */\ - PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )\ - PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )\ - PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) + PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Reserve 1P */\ + PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_UNKNOWN )\ + PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_UNKNOWN )\ + PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_UNKNOWN )\ + PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Reserve 2P */\ + PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_UNKNOWN )\ + PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN )\ + PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN ) -/* IN4 - Coinage DSWs */ +/* Coinage DSWs */ // 1] 01-41 02-31 03-21 07-11 06-12 05-13 04-14 00-FC * 2 // 2] 04-31 02-21 07-11 03-12 05-13 01-14 06-15 00-FC // 00-41 20-31 10-21 38-11 18-12 28-13 08-14 30-15 diff --git a/src/mame/includes/starwars.h b/src/mame/includes/starwars.h index f90e61e2d7a..d854ecba370 100644 --- a/src/mame/includes/starwars.h +++ b/src/mame/includes/starwars.h @@ -20,7 +20,7 @@ extern UINT8 *starwars_ram_overlay; WRITE8_HANDLER( starwars_nstore_w ); WRITE8_HANDLER( starwars_out_w ); -READ8_HANDLER( starwars_input_1_r ); +CUSTOM_INPUT( matrix_flag_r ); READ8_HANDLER( starwars_adc_r ); WRITE8_HANDLER( starwars_adc_select_w ); diff --git a/src/mame/machine/starwars.c b/src/mame/machine/starwars.c index d75ef8f0ca8..4bb0e01f81f 100644 --- a/src/mame/machine/starwars.c +++ b/src/mame/machine/starwars.c @@ -126,23 +126,10 @@ WRITE8_HANDLER( starwars_out_w ) * *************************************/ -READ8_HANDLER( starwars_input_1_r ) +CUSTOM_INPUT( matrix_flag_r ) { - int x = input_port_read(machine, "IN1"); - /* set the matrix processor flag */ - if (math_run) - x |= 0x80; - else - x &= ~0x80; - - /* set the AVG done flag */ - if (avgdvg_done()) - x |= 0x40; - else - x &= ~0x40; - - return x; + return math_run ? 1 : 0; } diff --git a/src/mame/video/avgdvg.c b/src/mame/video/avgdvg.c index 281e2ea8b5b..ccbb44d9876 100644 --- a/src/mame/video/avgdvg.c +++ b/src/mame/video/avgdvg.c @@ -1222,6 +1222,11 @@ int avgdvg_done(void) return vg->sync_halt; } +CUSTOM_INPUT( avgdvg_done_r ) +{ + return vg->sync_halt ? 0x01 : 0x00; +} + WRITE8_HANDLER( avgdvg_go_w ) { if (vg->sync_halt && (nvect > 10)) diff --git a/src/mame/video/avgdvg.h b/src/mame/video/avgdvg.h index 065c0cd28d1..5f860087a8c 100644 --- a/src/mame/video/avgdvg.h +++ b/src/mame/video/avgdvg.h @@ -7,6 +7,7 @@ extern UINT16 *quantum_colorram; extern UINT16 *quantum_vectorram; int avgdvg_done(void); +CUSTOM_INPUT( avgdvg_done_r ); WRITE8_HANDLER( avgdvg_go_w ); WRITE8_HANDLER( avgdvg_reset_w ); WRITE16_HANDLER( avgdvg_go_word_w );