From: Fabio Priuli [mailto:doge.fabio@gmail.com]

Subject: a last bunch of patches
Hi, 

attached please find a last block of diffs which completely removes 
every explicit use of input_port_read_indexed from src/mame/ (it 
remains in the various input_port_N_r, but I'll move to those later 
:) ) and fixes a small input bug

Namely:

nbmj_fix.diff: fixes bug MT 479. livegal turns out to use in a 
slightly different way the nichibutsu mahjong panel and inputs in 
test mode confirms that my change is correct ;)

patch01.diff -> patch03.diff: convert to use tagged inputs and 
handlers the remaining drivers (U to Z and a few others)

taito.diff: converts taitoic.c handlers to use tags (this required 
some more re-tagging in a few taito drivers, which I overlooked previously)

namcos22.diff: converts namcos22 read handlers to use tags. I have 
been very carefully about where each read handler is used (and adopted 
read_safe where necessary), so there shall be no problem with this 
(despite the complexity of the driver)

mediagx.diff: finally, I re-submit this patch about mediagx.c. Much more 
work would be needed to correctly map inputs for this driver, but I fear 
is still a bit beyond my current skills. However, from inspection through 
the debugger and from error.log, you can notice that the variable 
parallel_latched (used to read inputs) takes values 0,...,23 so this diff 
does no harm to the driver and allows to remove also the last occurrence 
of input_port_read_indexed!

As usual, I tested as much as I could the changes and I expect no 
regressions is introduced

Regards,

    Fabio Priuli
This commit is contained in:
Aaron Giles 2008-07-24 04:51:24 +00:00
parent 96a01c9d29
commit ce7838d0b5
57 changed files with 1460 additions and 1951 deletions

View File

@ -315,9 +315,9 @@ static ADDRESS_MAP_START( bonzeadv_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x080000, 0x0fffff) AM_ROM AM_RANGE(0x080000, 0x0fffff) AM_ROM
AM_RANGE(0x10c000, 0x10ffff) AM_RAM AM_RANGE(0x10c000, 0x10ffff) AM_RAM
AM_RANGE(0x200000, 0x200007) AM_READWRITE(TC0110PCR_word_r, TC0110PCR_step1_word_w) AM_RANGE(0x200000, 0x200007) AM_READWRITE(TC0110PCR_word_r, TC0110PCR_step1_word_w)
AM_RANGE(0x390000, 0x390001) AM_READ(input_port_0_word_r) AM_RANGE(0x390000, 0x390001) AM_READ_PORT("DSWA")
AM_RANGE(0x3a0000, 0x3a0001) AM_WRITE(asuka_spritectrl_w) AM_RANGE(0x3a0000, 0x3a0001) AM_WRITE(asuka_spritectrl_w)
AM_RANGE(0x3b0000, 0x3b0001) AM_READ(input_port_1_word_r) AM_RANGE(0x3b0000, 0x3b0001) AM_READ_PORT("DSWB")
AM_RANGE(0x3c0000, 0x3c0001) AM_WRITE(watchdog_reset16_w) AM_RANGE(0x3c0000, 0x3c0001) AM_WRITE(watchdog_reset16_w)
AM_RANGE(0x3d0000, 0x3d0001) AM_READNOP AM_RANGE(0x3d0000, 0x3d0001) AM_READNOP
AM_RANGE(0x3e0000, 0x3e0001) AM_WRITE(taitosound_port16_lsb_w) AM_RANGE(0x3e0000, 0x3e0001) AM_WRITE(taitosound_port16_lsb_w)

View File

@ -351,17 +351,9 @@ static MACHINE_RESET( drivedge )
* *
*************************************/ *************************************/
static READ16_HANDLER( special_port3_r ) static READ16_HANDLER( special_port_r )
{ {
int result = input_port_read_indexed(machine, 3); int result = input_port_read(machine, "DIPS");
if (sound_int_state) result ^= 0x08;
return result;
}
static READ16_HANDLER( special_port4_r )
{
int result = input_port_read_indexed(machine, 4);
if (sound_int_state) result ^= 0x08; if (sound_int_state) result ^= 0x08;
return result; return result;
} }
@ -472,7 +464,7 @@ static READ32_HANDLER( trackball32_4bit_combined_r )
static READ32_HANDLER( drivedge_steering_r ) static READ32_HANDLER( drivedge_steering_r )
{ {
int val = input_port_read_indexed(machine, 5) * 2 - 0x100; int val = input_port_read(machine, "STEER") * 2 - 0x100;
if (val < 0) val = 0x100 | (-val); if (val < 0) val = 0x100 | (-val);
return val << 16; return val << 16;
} }
@ -480,7 +472,7 @@ static READ32_HANDLER( drivedge_steering_r )
static READ32_HANDLER( drivedge_gas_r ) static READ32_HANDLER( drivedge_gas_r )
{ {
int val = input_port_read_indexed(machine, 6); int val = input_port_read(machine, "GAS");
return val << 16; return val << 16;
} }
@ -822,10 +814,10 @@ static NVRAM_HANDLER( tournament )
/*------ Time Killers memory layout ------*/ /*------ Time Killers memory layout ------*/
static ADDRESS_MAP_START( timekill_map, ADDRESS_SPACE_PROGRAM, 16 ) static ADDRESS_MAP_START( timekill_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x003fff) AM_RAM AM_BASE(&main_ram) AM_SIZE(&main_ram_size) AM_RANGE(0x000000, 0x003fff) AM_RAM AM_BASE(&main_ram) AM_SIZE(&main_ram_size)
AM_RANGE(0x040000, 0x040001) AM_READ(input_port_0_word_r) AM_RANGE(0x040000, 0x040001) AM_READ_PORT("P1")
AM_RANGE(0x048000, 0x048001) AM_READ(input_port_1_word_r) AM_RANGE(0x048000, 0x048001) AM_READ_PORT("P2")
AM_RANGE(0x050000, 0x050001) AM_READWRITE(input_port_2_word_r, timekill_intensity_w) AM_RANGE(0x050000, 0x050001) AM_READ_PORT("SYSTEM") AM_WRITE(timekill_intensity_w)
AM_RANGE(0x058000, 0x058001) AM_READWRITE(special_port3_r, watchdog_reset16_w) AM_RANGE(0x058000, 0x058001) AM_READWRITE(special_port_r, watchdog_reset16_w)
AM_RANGE(0x060000, 0x060001) AM_WRITE(timekill_colora_w) AM_RANGE(0x060000, 0x060001) AM_WRITE(timekill_colora_w)
AM_RANGE(0x068000, 0x068001) AM_WRITE(timekill_colorbc_w) AM_RANGE(0x068000, 0x068001) AM_WRITE(timekill_colorbc_w)
AM_RANGE(0x070000, 0x070001) AM_WRITENOP /* noisy */ AM_RANGE(0x070000, 0x070001) AM_WRITENOP /* noisy */
@ -840,11 +832,11 @@ ADDRESS_MAP_END
/*------ BloodStorm and later games memory layout ------*/ /*------ BloodStorm and later games memory layout ------*/
static ADDRESS_MAP_START( bloodstm_map, ADDRESS_SPACE_PROGRAM, 16 ) static ADDRESS_MAP_START( bloodstm_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_BASE(&main_ram) AM_SIZE(&main_ram_size) AM_RANGE(0x000000, 0x00ffff) AM_RAM AM_BASE(&main_ram) AM_SIZE(&main_ram_size)
AM_RANGE(0x080000, 0x080001) AM_READWRITE(input_port_0_word_r, int1_ack_w) AM_RANGE(0x080000, 0x080001) AM_READ_PORT("P1") AM_WRITE(int1_ack_w)
AM_RANGE(0x100000, 0x100001) AM_READ(input_port_1_word_r) AM_RANGE(0x100000, 0x100001) AM_READ_PORT("P2")
AM_RANGE(0x180000, 0x180001) AM_READ(input_port_2_word_r) AM_RANGE(0x180000, 0x180001) AM_READ_PORT("P3")
AM_RANGE(0x200000, 0x200001) AM_READWRITE(input_port_3_word_r, watchdog_reset16_w) AM_RANGE(0x200000, 0x200001) AM_READ_PORT("P4") AM_WRITE(watchdog_reset16_w)
AM_RANGE(0x280000, 0x280001) AM_READ(special_port4_r) AM_RANGE(0x280000, 0x280001) AM_READ(special_port_r)
AM_RANGE(0x300000, 0x300001) AM_WRITE(bloodstm_color1_w) AM_RANGE(0x300000, 0x300001) AM_WRITE(bloodstm_color1_w)
AM_RANGE(0x380000, 0x380001) AM_WRITE(bloodstm_color2_w) AM_RANGE(0x380000, 0x380001) AM_WRITE(bloodstm_color2_w)
AM_RANGE(0x400000, 0x400001) AM_WRITE(watchdog_reset16_w) AM_RANGE(0x400000, 0x400001) AM_WRITE(watchdog_reset16_w)
@ -852,7 +844,7 @@ static ADDRESS_MAP_START( bloodstm_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x500000, 0x5000ff) AM_READWRITE(bloodstm_video_r, bloodstm_video_w) AM_BASE(&itech32_video) AM_RANGE(0x500000, 0x5000ff) AM_READWRITE(bloodstm_video_r, bloodstm_video_w) AM_BASE(&itech32_video)
AM_RANGE(0x580000, 0x59ffff) AM_RAM_WRITE(bloodstm_paletteram_w) AM_BASE(&paletteram16) AM_RANGE(0x580000, 0x59ffff) AM_RAM_WRITE(bloodstm_paletteram_w) AM_BASE(&paletteram16)
AM_RANGE(0x700000, 0x700001) AM_WRITE(bloodstm_plane_w) AM_RANGE(0x700000, 0x700001) AM_WRITE(bloodstm_plane_w)
AM_RANGE(0x780000, 0x780001) AM_READ(input_port_5_word_r) AM_RANGE(0x780000, 0x780001) AM_READ_PORT("EXTRA")
AM_RANGE(0x800000, 0x87ffff) AM_MIRROR(0x780000) AM_ROM AM_REGION(REGION_USER1, 0) AM_BASE(&main_rom) AM_RANGE(0x800000, 0x87ffff) AM_MIRROR(0x780000) AM_ROM AM_REGION(REGION_USER1, 0) AM_BASE(&main_rom)
ADDRESS_MAP_END ADDRESS_MAP_END
@ -906,7 +898,7 @@ AM_RANGE(0x000c00, 0x007fff) AM_MIRROR(0x40000) AM_READWRITE(test2_r, test2_w)
#endif #endif
AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x40000) AM_RAM AM_BASE((UINT32 **)&main_ram) AM_SIZE(&main_ram_size) AM_RANGE(0x000000, 0x03ffff) AM_MIRROR(0x40000) AM_RAM AM_BASE((UINT32 **)&main_ram) AM_SIZE(&main_ram_size)
AM_RANGE(0x080000, 0x080003) AM_READ16(input_port_3_word_r, 0xffff0000) AM_RANGE(0x080000, 0x080003) AM_READ16(input_port_3_word_r, 0xffff0000)
AM_RANGE(0x082000, 0x082003) AM_READ16(special_port4_r, 0xffff0000) AM_RANGE(0x082000, 0x082003) AM_READ16(special_port_r, 0xffff0000)
AM_RANGE(0x084000, 0x084003) AM_READWRITE(sound_data32_r, sound_data32_w) AM_RANGE(0x084000, 0x084003) AM_READWRITE(sound_data32_r, sound_data32_w)
// AM_RANGE(0x086000, 0x08623f) AM_RAM -- networking -- first 0x40 bytes = our data, next 0x40*8 bytes = their data, r/w on IRQ2 // AM_RANGE(0x086000, 0x08623f) AM_RAM -- networking -- first 0x40 bytes = our data, next 0x40*8 bytes = their data, r/w on IRQ2
AM_RANGE(0x088000, 0x088003) AM_READ(drivedge_steering_r) AM_RANGE(0x088000, 0x088003) AM_READ(drivedge_steering_r)
@ -946,7 +938,7 @@ static ADDRESS_MAP_START( itech020_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x100000, 0x100003) AM_READ16(input_port_1_word_r, 0xffff0000) AM_RANGE(0x100000, 0x100003) AM_READ16(input_port_1_word_r, 0xffff0000)
AM_RANGE(0x180000, 0x180003) AM_READ16(input_port_2_word_r, 0xffff0000) AM_RANGE(0x180000, 0x180003) AM_READ16(input_port_2_word_r, 0xffff0000)
AM_RANGE(0x200000, 0x200003) AM_READ16(input_port_3_word_r, 0xffff0000) AM_RANGE(0x200000, 0x200003) AM_READ16(input_port_3_word_r, 0xffff0000)
AM_RANGE(0x280000, 0x280003) AM_READ16(special_port4_r, 0xffff0000) AM_RANGE(0x280000, 0x280003) AM_READ16(special_port_r, 0xffff0000)
AM_RANGE(0x300000, 0x300003) AM_WRITE(itech020_color1_w) AM_RANGE(0x300000, 0x300003) AM_WRITE(itech020_color1_w)
AM_RANGE(0x380000, 0x380003) AM_WRITE(itech020_color2_w) AM_RANGE(0x380000, 0x380003) AM_WRITE(itech020_color2_w)
AM_RANGE(0x400000, 0x400003) AM_WRITE(watchdog_reset32_w) AM_RANGE(0x400000, 0x400003) AM_WRITE(watchdog_reset32_w)
@ -1006,7 +998,7 @@ ADDRESS_MAP_END
*************************************/ *************************************/
static INPUT_PORTS_START( timekill ) static INPUT_PORTS_START( timekill )
PORT_START /* 40000 */ PORT_START_TAG("P1") /* 40000 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) 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( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
@ -1016,7 +1008,7 @@ static INPUT_PORTS_START( timekill )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
PORT_START /* 48000 */ PORT_START_TAG("P2") /* 48000 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) 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( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
@ -1026,7 +1018,7 @@ static INPUT_PORTS_START( timekill )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
PORT_START /* 50000 */ PORT_START_TAG("SYSTEM") /* 50000 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_START1 )
@ -1036,7 +1028,7 @@ static INPUT_PORTS_START( timekill )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START /* 58000 */ PORT_START_TAG("DIPS") /* 58000 */
PORT_SERVICE_NO_TOGGLE( 0x0001, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x0001, IP_ACTIVE_LOW )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_VBLANK ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_VBLANK )
@ -1176,7 +1168,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( drivedge ) static INPUT_PORTS_START( drivedge )
PORT_START /* 8C000 */ PORT_START_TAG("8C000") /* 8C000 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Gear 1") PORT_CODE(KEYCODE_Z) PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_NAME("Gear 1") PORT_CODE(KEYCODE_Z) PORT_PLAYER(1)
@ -1186,7 +1178,7 @@ static INPUT_PORTS_START( drivedge )
PORT_SERVICE_NO_TOGGLE( 0x0040, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x0040, IP_ACTIVE_LOW )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START /* 8E000 */ PORT_START_TAG("8E000") /* 8E000 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Fan") PORT_CODE(KEYCODE_F) PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Fan") PORT_CODE(KEYCODE_F) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Tow Truck") PORT_CODE(KEYCODE_T) PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Tow Truck") PORT_CODE(KEYCODE_T) PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Horn") PORT_CODE(KEYCODE_SPACE) PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Horn") PORT_CODE(KEYCODE_SPACE) PORT_PLAYER(1)
@ -1196,7 +1188,7 @@ static INPUT_PORTS_START( drivedge )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START /* 200000 */ PORT_START_TAG("200000") /* 200000 */
PORT_SERVICE_NO_TOGGLE( 0x0100, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x0100, IP_ACTIVE_LOW )
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_VBLANK ) PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_VBLANK )
@ -1212,16 +1204,17 @@ static INPUT_PORTS_START( drivedge )
PORT_DIPSETTING( 0x7000, "8" ) PORT_DIPSETTING( 0x7000, "8" )
PORT_SERVICE_DIPLOC( 0x8000, IP_ACTIVE_HIGH, "SW1:1" ) PORT_SERVICE_DIPLOC( 0x8000, IP_ACTIVE_HIGH, "SW1:1" )
PORT_START /* 80000 */ PORT_START_TAG("80000") /* 80000 */
PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_MINMAX(0x00,0x06) PORT_SENSITIVITY(2) PORT_KEYDELTA(100) PORT_PLAYER(3) PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_MINMAX(0x00,0x06) PORT_SENSITIVITY(2) PORT_KEYDELTA(100) PORT_PLAYER(3)
PORT_START /* 82000 */ /* here we use "DIPS" to simplify the read handlers */
PORT_START_TAG("DIPS") /* 82000 */
PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_MINMAX(0x00,0x06) PORT_SENSITIVITY(2) PORT_KEYDELTA(40) PORT_PLAYER(2) PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_MINMAX(0x00,0x06) PORT_SENSITIVITY(2) PORT_KEYDELTA(40) PORT_PLAYER(2)
PORT_START /* 88000 */ PORT_START_TAG("STEER") /* 88000 */
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10,0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10,0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5)
PORT_START /* 8A000 */ PORT_START_TAG("GAS") /* 8A000 */
PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_MINMAX(0x00,0x0c) PORT_SENSITIVITY(1) PORT_KEYDELTA(20) PORT_PLAYER(1) PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_MINMAX(0x00,0x0c) PORT_SENSITIVITY(1) PORT_KEYDELTA(20) PORT_PLAYER(1)
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -502,11 +502,11 @@ static WRITE32_HANDLER( io20_w )
static READ32_HANDLER( parallel_port_r ) static READ32_HANDLER( parallel_port_r )
{ {
UINT32 r = 0; UINT32 r = 0;
// static const char *portnames[] = { "IN0", "IN1", "IN2", "IN3", "IN4", "IN5", "IN6", "IN7" }; // static const char *portnames[] = { "IN0", "IN1", "IN2", "IN3", "IN4", "IN5", "IN6", "IN7", "IN8" }; // but parallel_pointer takes values 0 -> 23
if (ACCESSING_BITS_8_15) if (ACCESSING_BITS_8_15)
{ {
UINT8 nibble = parallel_latched;//(input_port_read(machine, portnames[parallel_pointer / 3]) >> (4 * (parallel_pointer % 3))) & 15; UINT8 nibble = parallel_latched;//(input_port_read_safe(machine, portnames[parallel_pointer / 3], 0) >> (4 * (parallel_pointer % 3))) & 15;
r |= ((~nibble & 0x08) << 12) | ((nibble & 0x07) << 11); r |= ((~nibble & 0x08) << 12) | ((nibble & 0x07) << 11);
logerror("%08X:parallel_port_r()\n", activecpu_get_pc()); logerror("%08X:parallel_port_r()\n", activecpu_get_pc());
/* if (controls_data == 0x18) /* if (controls_data == 0x18)
@ -534,6 +534,8 @@ static READ32_HANDLER( parallel_port_r )
static WRITE32_HANDLER( parallel_port_w ) static WRITE32_HANDLER( parallel_port_w )
{ {
static const char *portnames[] = { "IN0", "IN1", "IN2", "IN3", "IN4", "IN5", "IN6", "IN7", "IN8" }; // but parallel_pointer takes values 0 -> 23
COMBINE_DATA( &parport ); COMBINE_DATA( &parport );
if (ACCESSING_BITS_0_7) if (ACCESSING_BITS_0_7)
@ -555,7 +557,7 @@ static WRITE32_HANDLER( parallel_port_w )
logerror("%08X:", activecpu_get_pc()); logerror("%08X:", activecpu_get_pc());
parallel_latched = (input_port_read_indexed(machine, parallel_pointer / 3) >> (4 * (parallel_pointer % 3))) & 15; parallel_latched = (input_port_read_safe(machine, portnames[parallel_pointer / 3], 0) >> (4 * (parallel_pointer % 3))) & 15;
// parallel_pointer++; // parallel_pointer++;
// logerror("[%02X] Advance pointer to %d\n", data, parallel_pointer); // logerror("[%02X] Advance pointer to %d\n", data, parallel_pointer);
switch (data & 0xfc) switch (data & 0xfc)
@ -881,7 +883,7 @@ static GFXDECODE_START( CGA )
GFXDECODE_END GFXDECODE_END
static INPUT_PORTS_START(mediagx) static INPUT_PORTS_START(mediagx)
PORT_START PORT_START_TAG("IN0")
PORT_SERVICE_NO_TOGGLE( 0x001, IP_ACTIVE_HIGH ) PORT_SERVICE_NO_TOGGLE( 0x001, IP_ACTIVE_HIGH )
PORT_BIT( 0x002, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_BIT( 0x002, IP_ACTIVE_HIGH, IPT_SERVICE1 )
PORT_BIT( 0x004, IP_ACTIVE_HIGH, IPT_SERVICE2 ) PORT_BIT( 0x004, IP_ACTIVE_HIGH, IPT_SERVICE2 )
@ -895,42 +897,42 @@ static INPUT_PORTS_START(mediagx)
PORT_BIT( 0x400, IP_ACTIVE_HIGH, IPT_START3 ) PORT_BIT( 0x400, IP_ACTIVE_HIGH, IPT_START3 )
PORT_BIT( 0x800, IP_ACTIVE_HIGH, IPT_START4 ) PORT_BIT( 0x800, IP_ACTIVE_HIGH, IPT_START4 )
PORT_START PORT_START_TAG("IN1")
PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON2 )
PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON3 )
PORT_START PORT_START_TAG("IN2")
PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON4 )
PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON5 ) PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON5 )
PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON6 ) PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON6 )
PORT_START PORT_START_TAG("IN3")
PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON7 )
PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON8 ) PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON8 )
PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON9 ) PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON9 )
PORT_START PORT_START_TAG("IN4")
PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_START PORT_START_TAG("IN5")
PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(3)
PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(3) PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_START PORT_START_TAG("IN6")
PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
PORT_START PORT_START_TAG("IN7")
PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2) PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
PORT_START PORT_START_TAG("IN8")
PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(3) PORT_BIT( 0x00f, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(3)
PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(3) PORT_BIT( 0x0f0, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(3)
PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(3) PORT_BIT( 0xf00, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(3)

View File

@ -1049,29 +1049,29 @@ nthbyte( const UINT32 *pSource, int offs )
/* mask,default,type,sensitivity,delta,min,max */ /* mask,default,type,sensitivity,delta,min,max */
#define DRIVING_ANALOG_PORTS \ #define DRIVING_ANALOG_PORTS \
PORT_START \ PORT_START_TAG("GAS") \
PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) \ PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) \
PORT_START \ PORT_START_TAG("BRAKE") \
PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) \ PORT_BIT( 0xff, 0x00, IPT_PEDAL2 ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) \
PORT_START \ PORT_START_TAG("STEER") \
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10)
/* TODO: REMOVE (THIS IS HANDLED BY "SUBCPU") */ /* TODO: REMOVE (THIS IS HANDLED BY "SUBCPU") */
static void static void
ReadAnalogDrivingPorts( running_machine *machine, UINT16 *gas, UINT16 *brake, UINT16 *steer ) ReadAnalogDrivingPorts( running_machine *machine, UINT16 *gas, UINT16 *brake, UINT16 *steer )
{ {
*gas = input_port_read_indexed(machine, 2); *gas = input_port_read(machine, "GAS");
*brake = input_port_read_indexed(machine, 3); *brake = input_port_read(machine, "BRAKE");
*steer = input_port_read_indexed(machine, 4); *steer = input_port_read(machine, "STEER");
} }
/* TODO: REMOVE (THIS IS HANDLED BY "SUBCPU") */ /* TODO: REMOVE (THIS IS HANDLED BY "SUBCPU") */
static UINT16 static UINT16
AnalogAsDigital( running_machine *machine ) AnalogAsDigital( running_machine *machine )
{ {
UINT16 stick = input_port_read_indexed(machine, 1); UINT16 stick = input_port_read_safe(machine, "INPUTS", 0);
UINT16 gas = input_port_read_indexed(machine, 2); UINT16 gas = input_port_read_safe(machine, "GAS", 0);
UINT16 steer = input_port_read_indexed(machine, 4); UINT16 steer = input_port_read_safe(machine, "STEER", 0);
UINT16 result = 0xffff; UINT16 result = 0xffff;
switch( namcos22_gametype ) switch( namcos22_gametype )
@ -1079,15 +1079,15 @@ AnalogAsDigital( running_machine *machine )
case NAMCOS22_RAVE_RACER: case NAMCOS22_RAVE_RACER:
case NAMCOS22_RIDGE_RACER: case NAMCOS22_RIDGE_RACER:
case NAMCOS22_RIDGE_RACER2: case NAMCOS22_RIDGE_RACER2:
if( gas==0xff ) if( gas == 0xff )
{ {
result ^= 0x0100; /* CHOOSE */ result ^= 0x0100; /* CHOOSE */
} }
if( steer==0x00 ) if( steer == 0x00 )
{ {
result ^= 0x0040; /* PREV */ result ^= 0x0040; /* PREV */
} }
else if( steer==0xff ) else if( steer == 0xff )
{ {
result ^= 0x0080; /* NEXT */ result ^= 0x0080; /* NEXT */
} }
@ -1100,11 +1100,11 @@ AnalogAsDigital( running_machine *machine )
result ^= 0x0001; /* CHOOSE */ result ^= 0x0001; /* CHOOSE */
} }
stick &= 3; stick &= 3;
if( stick==1 ) if( stick == 1 )
{ /* Stick Shift Up */ { /* Stick Shift Up */
result ^= 0x0040; /* PREV */ result ^= 0x0040; /* PREV */
} }
if( stick==2 ) if( stick == 2 )
{ /* Stick Shift Down */ { /* Stick Shift Down */
result ^= 0x0080; /* NEXT */ result ^= 0x0080; /* NEXT */
} }
@ -1123,7 +1123,7 @@ HandleCoinage(running_machine *machine, int slots)
UINT16 *share16 = (UINT16 *)namcos22_shareram; UINT16 *share16 = (UINT16 *)namcos22_shareram;
UINT32 coin_state; UINT32 coin_state;
coin_state = input_port_read_indexed(machine, 1) & 0x1200; coin_state = input_port_read(machine, "INPUTS") & 0x1200;
if (!(coin_state & 0x1000) && (old_coin_state & 0x1000)) if (!(coin_state & 0x1000) && (old_coin_state & 0x1000))
{ {
@ -1149,10 +1149,10 @@ HandleCoinage(running_machine *machine, int slots)
static void static void
HandleDrivingIO( running_machine *machine ) HandleDrivingIO( running_machine *machine )
{ {
if( nthbyte(namcos22_system_controller,0x18)!=0 ) if( nthbyte(namcos22_system_controller, 0x18) != 0 )
{ {
UINT16 flags = input_port_read_indexed(machine, 1); UINT16 flags = input_port_read(machine, "INPUTS");
UINT16 gas,brake,steer; UINT16 gas, brake, steer;
ReadAnalogDrivingPorts( machine, &gas, &brake, &steer ); ReadAnalogDrivingPorts( machine, &gas, &brake, &steer );
HandleCoinage(machine, 2); HandleCoinage(machine, 2);
@ -1205,17 +1205,17 @@ HandleDrivingIO( running_machine *machine )
static void static void
HandleCyberCommandoIO( running_machine *machine ) HandleCyberCommandoIO( running_machine *machine )
{ {
if( nthbyte(namcos22_system_controller,0x18)!=0 ) if( nthbyte(namcos22_system_controller, 0x18) != 0 )
{ {
UINT16 flags = input_port_read_indexed(machine, 1); UINT16 flags = input_port_read(machine, "INPUTS");
UINT16 volume0 = input_port_read_indexed(machine, 2)*0x10; UINT16 volume0 = input_port_read(machine, "STICKY1") * 0x10;
UINT16 volume1 = input_port_read_indexed(machine, 3)*0x10; UINT16 volume1 = input_port_read(machine, "STICKY2") * 0x10;
UINT16 volume2 = input_port_read_indexed(machine, 4)*0x10; UINT16 volume2 = input_port_read(machine, "STICKX1") * 0x10;
UINT16 volume3 = input_port_read_indexed(machine, 5)*0x10; UINT16 volume3 = input_port_read(machine, "STICKX2") * 0x10;
namcos22_shareram[0x030/4] = (flags<<16)|volume0; namcos22_shareram[0x030/4] = (flags<<16) | volume0;
namcos22_shareram[0x034/4] = (volume1<<16)|volume2; namcos22_shareram[0x034/4] = (volume1<<16) | volume2;
namcos22_shareram[0x038/4] = volume3<<16; namcos22_shareram[0x038/4] = volume3<<16;
HandleCoinage(machine, 1); HandleCoinage(machine, 1);
@ -2161,7 +2161,7 @@ static WRITE32_HANDLER( namcos22_portbit_w )
static READ32_HANDLER( namcos22_dipswitch_r ) static READ32_HANDLER( namcos22_dipswitch_r )
{ {
return input_port_read_indexed(machine, 0)<<16; return input_port_read(machine, "DSW0")<<16;
} }
static READ32_HANDLER( namcos22_mcuram_r ) static READ32_HANDLER( namcos22_mcuram_r )
@ -2231,8 +2231,8 @@ static WRITE32_HANDLER( spotram_w )
static READ32_HANDLER( namcos22_gun_r ) static READ32_HANDLER( namcos22_gun_r )
{ {
int xpos = input_port_read_indexed(machine, 1)*640/0xff; int xpos = input_port_read_safe(machine, "LIGHTX", 0) * 640 / 0xff;
int ypos = input_port_read_indexed(machine, 2)*480/0xff; int ypos = input_port_read_safe(machine, "LIGHTY", 0) * 480 / 0xff;
switch( offset ) switch( offset )
{ {
case 0: /* 430000 */ case 0: /* 430000 */
@ -2300,20 +2300,20 @@ static ADDRESS_MAP_START( namcos22s_am, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x460000, 0x463fff) AM_RAM AM_BASE(&namcos22_nvmem) AM_SIZE(&namcos22_nvmem_size) AM_RANGE(0x460000, 0x463fff) AM_RAM AM_BASE(&namcos22_nvmem) AM_SIZE(&namcos22_nvmem_size)
AM_RANGE(0x700000, 0x70001f) AM_READ(namcos22_system_controller_r) AM_WRITE(namcos22_system_controller_w) AM_BASE(&namcos22_system_controller) AM_RANGE(0x700000, 0x70001f) AM_READ(namcos22_system_controller_r) AM_WRITE(namcos22_system_controller_w) AM_BASE(&namcos22_system_controller)
AM_RANGE(0x800000, 0x800003) AM_WRITE(namcos22_port800000_w) /* (C304 C399) 40380000 during SPOT test */ AM_RANGE(0x800000, 0x800003) AM_WRITE(namcos22_port800000_w) /* (C304 C399) 40380000 during SPOT test */
AM_RANGE(0x810000, 0x81000f) AM_RAM AM_BASE(&namcos22_czattr) AM_RANGE(0x810000, 0x81000f) AM_RAM AM_BASE(&namcos22_czattr)
AM_RANGE(0x810200, 0x8103ff) AM_READ(namcos22_czram_r) AM_WRITE(namcos22_czram_w) AM_RANGE(0x810200, 0x8103ff) AM_READ(namcos22_czram_r) AM_WRITE(namcos22_czram_w)
AM_RANGE(0x820000, 0x8202ff) AM_RAM /* unknown (air combat) */ AM_RANGE(0x820000, 0x8202ff) AM_RAM /* unknown (air combat) */
AM_RANGE(0x824000, 0x8243ff) AM_READ(namcos22_gamma_r) AM_WRITE(namcos22_gamma_w) AM_BASE(&namcos22_gamma) AM_RANGE(0x824000, 0x8243ff) AM_READ(namcos22_gamma_r) AM_WRITE(namcos22_gamma_w) AM_BASE(&namcos22_gamma)
AM_RANGE(0x828000, 0x83ffff) AM_READ(namcos22_paletteram_r) AM_WRITE(namcos22_paletteram_w) AM_BASE(&paletteram32) AM_RANGE(0x828000, 0x83ffff) AM_READ(namcos22_paletteram_r) AM_WRITE(namcos22_paletteram_w) AM_BASE(&paletteram32)
AM_RANGE(0x860000, 0x860007) AM_READ(spotram_r) AM_WRITE(spotram_w) AM_RANGE(0x860000, 0x860007) AM_READ(spotram_r) AM_WRITE(spotram_w)
AM_RANGE(0x880000, 0x89dfff) AM_READ(SMH_RAM) AM_WRITE(namcos22_cgram_w) AM_BASE(&namcos22_cgram) AM_RANGE(0x880000, 0x89dfff) AM_READ(SMH_RAM) AM_WRITE(namcos22_cgram_w) AM_BASE(&namcos22_cgram)
AM_RANGE(0x89e000, 0x89ffff) AM_READ(namcos22_textram_r) AM_WRITE(namcos22_textram_w) AM_BASE(&namcos22_textram) AM_RANGE(0x89e000, 0x89ffff) AM_READ(namcos22_textram_r) AM_WRITE(namcos22_textram_w) AM_BASE(&namcos22_textram)
AM_RANGE(0x8a0000, 0x8a000f) AM_RAM AM_BASE(&namcos22_tilemapattr) AM_RANGE(0x8a0000, 0x8a000f) AM_RAM AM_BASE(&namcos22_tilemapattr)
AM_RANGE(0x900000, 0x90ffff) AM_RAM AM_BASE(&namcos22_vics_data) AM_RANGE(0x900000, 0x90ffff) AM_RAM AM_BASE(&namcos22_vics_data)
AM_RANGE(0x940000, 0x94007f) AM_RAM AM_BASE(&namcos22_vics_control) AM_RANGE(0x940000, 0x94007f) AM_RAM AM_BASE(&namcos22_vics_control)
AM_RANGE(0x980000, 0x9affff) AM_RAM AM_BASE(&spriteram32) /* C374 */ AM_RANGE(0x980000, 0x9affff) AM_RAM AM_BASE(&spriteram32) /* C374 */
AM_RANGE(0xa04000, 0xa0bfff) AM_READ(namcos22_mcuram_r) AM_WRITE(namcos22_mcuram_w) AM_BASE(&namcos22_shareram) /* COM RAM */ AM_RANGE(0xa04000, 0xa0bfff) AM_READ(namcos22_mcuram_r) AM_WRITE(namcos22_mcuram_w) AM_BASE(&namcos22_shareram) /* COM RAM */
AM_RANGE(0xc00000, 0xc1ffff) AM_READ(namcos22_dspram_r) AM_WRITE(namcos22_dspram_w) AM_BASE(&namcos22_polygonram) AM_RANGE(0xc00000, 0xc1ffff) AM_READ(namcos22_dspram_r) AM_WRITE(namcos22_dspram_w) AM_BASE(&namcos22_polygonram)
AM_RANGE(0xe00000, 0xe3ffff) AM_RAM /* workram */ AM_RANGE(0xe00000, 0xe3ffff) AM_RAM /* workram */
ADDRESS_MAP_END ADDRESS_MAP_END
@ -2466,8 +2466,8 @@ static READ8_HANDLER( propcycle_mcu_adc_r )
{ {
static UINT16 ddx, ddy; static UINT16 ddx, ddy;
ddx = ((input_port_read_indexed(machine, 2)^0xff)-1)<<2; ddx = ((input_port_read(machine, "STICKX")^0xff) - 1)<<2;
ddy = (input_port_read_indexed(machine, 3)-1)<<2; ddy = (input_port_read(machine, "STICKY") - 1)<<2;
switch (offset) switch (offset)
{ {
@ -2480,7 +2480,7 @@ static READ8_HANDLER( propcycle_mcu_adc_r )
// and timer A3 is configured by the MCU program to cause an interrupt each time // and timer A3 is configured by the MCU program to cause an interrupt each time
// it's clocked. by counting the number of interrupts in a frame, we can determine // it's clocked. by counting the number of interrupts in a frame, we can determine
// how fast the user is pedaling. // how fast the user is pedaling.
if( input_port_read_indexed(machine, 1) & 0x10 ) if( input_port_read(machine, "JOY") & 0x10 )
{ {
int i; int i;
for (i = 0; i < 16; i++) for (i = 0; i < 16; i++)
@ -2509,12 +2509,12 @@ static READ8_HANDLER( propcycle_mcu_adc_r )
// 0 H+L = swing, 1 H+L = edge // 0 H+L = swing, 1 H+L = edge
static READ8_HANDLER( alpineracer_mcu_adc_r ) static READ8_HANDLER( alpineracer_mcu_adc_r )
{ {
UINT16 swing = (0xff-input_port_read_indexed(machine, 2))<<2; UINT16 swing = (0xff - input_port_read(machine, "SWING"))<<2;
UINT16 edge = (0xff-input_port_read_indexed(machine, 3))<<2; UINT16 edge = (0xff - input_port_read(machine, "EDGE"))<<2;
// fake out the centering a bit // fake out the centering a bit
if (input_port_read_indexed(machine, 2) == 0x80) swing = 0x200; if (input_port_read(machine, "SWING") == 0x80) swing = 0x200;
if (input_port_read_indexed(machine, 3) == 0x80) edge = 0x200; if (input_port_read(machine, "EDGE") == 0x80) edge = 0x200;
switch (offset) switch (offset)
{ {
@ -2585,9 +2585,9 @@ static READ8_HANDLER( airco22_mcu_adc_r )
{ {
UINT16 pedal, x, y; UINT16 pedal, x, y;
pedal = input_port_read_indexed(machine, 1)<<2; pedal = input_port_read(machine, "PEDAL")<<2;
x = input_port_read_indexed(machine, 2)<<2; x = input_port_read(machine, "STICKX")<<2;
y = input_port_read_indexed(machine, 3)<<2; y = input_port_read(machine, "STICKY")<<2;
switch (offset) switch (offset)
@ -4280,7 +4280,7 @@ ROM_END
/*******************************************************************/ /*******************************************************************/
static INPUT_PORTS_START( alpiner ) static INPUT_PORTS_START( alpiner )
PORT_START PORT_START_TAG("DSW0")
PORT_DIPNAME( 0x01, 0x01, "DIP4-1" ) PORT_DIPNAME( 0x01, 0x01, "DIP4-1" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -4306,7 +4306,7 @@ static INPUT_PORTS_START( alpiner )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START_TAG( "MCUP5A" ) PORT_START_TAG("MCUP5A")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
@ -4316,13 +4316,13 @@ static INPUT_PORTS_START( alpiner )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) /* R SELECTION */ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) /* R SELECTION */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START /* SWING */ PORT_START_TAG("SWING") /* SWING */
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10)
PORT_START /* EDGE */ PORT_START_TAG("EDGE") /* EDGE */
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(50) PORT_KEYDELTA(10)
PORT_START_TAG( "MCUP5B" ) PORT_START_TAG("MCUP5B")
PORT_DIPNAME( 0x01, 0x01, "DIP5-1" ) PORT_DIPNAME( 0x01, 0x01, "DIP5-1" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -4351,7 +4351,7 @@ INPUT_PORTS_END /* Alpine Racer */
static INPUT_PORTS_START( airco22 ) static INPUT_PORTS_START( airco22 )
PORT_START PORT_START_TAG("DSW0")
PORT_DIPNAME( 0x01, 0x01, "DIP1" ) PORT_DIPNAME( 0x01, 0x01, "DIP1" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -4377,16 +4377,16 @@ static INPUT_PORTS_START( airco22 )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG("PEDAL")
PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_BIT( 0xff, 0x00, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(100) PORT_KEYDELTA(4)
PORT_START PORT_START_TAG("STICKX")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(4)
PORT_START PORT_START_TAG("STICKY")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(4)
PORT_START_TAG( "MCUP5A" ) PORT_START_TAG("MCUP5A")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 )
// PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) // PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
@ -4398,12 +4398,12 @@ static INPUT_PORTS_START( airco22 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 )
// PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) // PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START_TAG( "MCUP5B" ) PORT_START_TAG("MCUP5B")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_BUTTON3 )
INPUT_PORTS_END /* Air Combat22 */ INPUT_PORTS_END /* Air Combat22 */
static INPUT_PORTS_START( cybrcycc ) static INPUT_PORTS_START( cybrcycc )
PORT_START PORT_START_TAG("DSW0")
PORT_DIPNAME( 0x01, 0x01, "DIP4-1 (Test Mode)" ) PORT_DIPNAME( 0x01, 0x01, "DIP4-1 (Test Mode)" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -4429,7 +4429,9 @@ static INPUT_PORTS_START( cybrcycc )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START_TAG( "MCUP5A" ) DRIVING_ANALOG_PORTS
PORT_START_TAG("MCUP5A")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
@ -4439,9 +4441,7 @@ static INPUT_PORTS_START( cybrcycc )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
DRIVING_ANALOG_PORTS PORT_START_TAG("MCUP5B")
PORT_START_TAG( "MCUP5B" )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -4453,7 +4453,7 @@ static INPUT_PORTS_START( cybrcycc )
INPUT_PORTS_END /* Cyber Cycles */ INPUT_PORTS_END /* Cyber Cycles */
static INPUT_PORTS_START( propcycl ) static INPUT_PORTS_START( propcycl )
PORT_START /* DIP4 */ PORT_START_TAG("DSW0") /* DIP4 */
PORT_DIPNAME( 0x01, 0x01, "DIP1" ) PORT_DIPNAME( 0x01, 0x01, "DIP1" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -4479,7 +4479,7 @@ static INPUT_PORTS_START( propcycl )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG("JOY")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT )
@ -4487,13 +4487,13 @@ static INPUT_PORTS_START( propcycl )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
PORT_START PORT_START_TAG("STICKX")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10)
PORT_START PORT_START_TAG("STICKY")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10)
PORT_START_TAG( "MCUP5A" ) PORT_START_TAG("MCUP5A")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
@ -4503,7 +4503,7 @@ static INPUT_PORTS_START( propcycl )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG( "MCUP5B" ) PORT_START_TAG("MCUP5B")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -4515,7 +4515,7 @@ static INPUT_PORTS_START( propcycl )
INPUT_PORTS_END /* Prop Cycle */ INPUT_PORTS_END /* Prop Cycle */
static INPUT_PORTS_START( cybrcomm ) static INPUT_PORTS_START( cybrcomm )
PORT_START PORT_START_TAG("DSW0")
PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1" ) PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
@ -4565,7 +4565,7 @@ static INPUT_PORTS_START( cybrcomm )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START PORT_START_TAG("INPUTS")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* SHOOT */ PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* SHOOT */
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* MISSLE */ PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) /* MISSLE */
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -4583,18 +4583,18 @@ static INPUT_PORTS_START( cybrcomm )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* VOLUME1 */ PORT_START_TAG("STICKY1") /* VOLUME1 */
PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_Y ) PORT_SENSITIVITY( 100) PORT_KEYDELTA(4) PORT_PLAYER(1) /* right joystick: vertical */ PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_Y ) PORT_SENSITIVITY( 100) PORT_KEYDELTA(4) PORT_PLAYER(1) /* right joystick: vertical */
PORT_START /* VOLUME2 */ PORT_START_TAG("STICKY2") /* VOLUME2 */
PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_Y ) PORT_SENSITIVITY( 100) PORT_KEYDELTA(4) PORT_PLAYER(2) /* left joystick: vertical */ PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_Y ) PORT_SENSITIVITY( 100) PORT_KEYDELTA(4) PORT_PLAYER(2) /* left joystick: vertical */
PORT_START /* VOLUME3 */ PORT_START_TAG("STICKX1") /* VOLUME3 */
PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_X ) PORT_SENSITIVITY( 100) PORT_KEYDELTA(4) PORT_PLAYER(1) /* right joystick: horizontal */ PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_X ) PORT_SENSITIVITY( 100) PORT_KEYDELTA(4) PORT_PLAYER(1) /* right joystick: horizontal */
PORT_START /* VOLUME4 */ PORT_START_TAG("STICKX2") /* VOLUME4 */
PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_X ) PORT_SENSITIVITY( 100) PORT_KEYDELTA(4) PORT_PLAYER(2) /* left joystick: horizontal */ PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_X ) PORT_SENSITIVITY( 100) PORT_KEYDELTA(4) PORT_PLAYER(2) /* left joystick: horizontal */
INPUT_PORTS_END /* Cyber Commando */ INPUT_PORTS_END /* Cyber Commando */
static INPUT_PORTS_START( timecris ) static INPUT_PORTS_START( timecris )
PORT_START PORT_START_TAG("DSW0")
PORT_DIPNAME( 0x01, 0x01, "DIP4-1" ) PORT_DIPNAME( 0x01, 0x01, "DIP4-1" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -4618,12 +4618,12 @@ static INPUT_PORTS_START( timecris )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_START PORT_START_TAG( "LIGHTX" )
PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, 1.0, -0.1, 0) PORT_SENSITIVITY(50) PORT_KEYDELTA(4) PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, 1.0, -0.1, 0) PORT_SENSITIVITY(50) PORT_KEYDELTA(4)
PORT_START PORT_START_TAG( "LIGHTY" )
PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, -0.184, 0) PORT_SENSITIVITY(50) PORT_KEYDELTA(4) PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, -0.184, 0) PORT_SENSITIVITY(50) PORT_KEYDELTA(4)
PORT_START_TAG( "MCUP5A" ) PORT_START_TAG("MCUP5A")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
@ -4633,14 +4633,14 @@ static INPUT_PORTS_START( timecris )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START_TAG( "MCUP5B" ) PORT_START_TAG("MCUP5B")
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
INPUT_PORTS_END /* Time Crisis */ INPUT_PORTS_END /* Time Crisis */
/*****************************************************************************************************/ /*****************************************************************************************************/
static INPUT_PORTS_START( acedrvr ) static INPUT_PORTS_START( acedrvr )
PORT_START /* 0: DIP2 and DIP3 */ PORT_START_TAG("DSW0") /* 0: DIP2 and DIP3 */
PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1" ) PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
@ -4690,7 +4690,7 @@ static INPUT_PORTS_START( acedrvr )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START /* 1 */ PORT_START_TAG("INPUTS") /* 1 */
PORT_DIPNAME( 0x0003, 0x0003, "Shift" ) PORT_DIPNAME( 0x0003, 0x0003, "Shift" )
PORT_DIPSETTING( 0x0001, "Up" ) PORT_DIPSETTING( 0x0001, "Up" )
PORT_DIPSETTING( 0x0003, "Center" ) PORT_DIPSETTING( 0x0003, "Center" )
@ -4714,7 +4714,7 @@ static INPUT_PORTS_START( acedrvr )
INPUT_PORTS_END /* Ace Driver */ INPUT_PORTS_END /* Ace Driver */
static INPUT_PORTS_START( victlap ) static INPUT_PORTS_START( victlap )
PORT_START /* 0: DIP2 and DIP3 */ PORT_START_TAG("DSW0") /* 0: DIP2 and DIP3 */
PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1" ) PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
@ -4764,7 +4764,7 @@ static INPUT_PORTS_START( victlap )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START /* 1 */ PORT_START_TAG("INPUTS") /* 1 */
PORT_DIPNAME( 0x0003, 0x0003, "Shift" ) PORT_DIPNAME( 0x0003, 0x0003, "Shift" )
PORT_DIPSETTING( 0x0001, "Up" ) PORT_DIPSETTING( 0x0001, "Up" )
PORT_DIPSETTING( 0x0003, "Center" ) PORT_DIPSETTING( 0x0003, "Center" )
@ -4790,7 +4790,7 @@ static INPUT_PORTS_START( victlap )
INPUT_PORTS_END /* Victory Lap */ INPUT_PORTS_END /* Victory Lap */
static INPUT_PORTS_START( ridgera ) static INPUT_PORTS_START( ridgera )
PORT_START /* 0: DIP2 and DIP3 */ PORT_START_TAG("DSW0") /* 0: DIP2 and DIP3 */
PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1 (test mode?)" ) PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1 (test mode?)" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
@ -4840,7 +4840,7 @@ static INPUT_PORTS_START( ridgera )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START /* 1 */ PORT_START_TAG("INPUTS") /* 1 */
PORT_DIPNAME( 0x000f, 0x000a, "Stick Shift" ) PORT_DIPNAME( 0x000f, 0x000a, "Stick Shift" )
PORT_DIPSETTING( 0xa, "1" ) PORT_DIPSETTING( 0xa, "1" )
PORT_DIPSETTING( 0x9, "2" ) PORT_DIPSETTING( 0x9, "2" )
@ -4865,7 +4865,7 @@ static INPUT_PORTS_START( ridgera )
INPUT_PORTS_END /* Ridge Racer */ INPUT_PORTS_END /* Ridge Racer */
static INPUT_PORTS_START( raveracw ) static INPUT_PORTS_START( raveracw )
PORT_START PORT_START_TAG("DSW0")
PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1 (test mode)" ) PORT_DIPNAME( 0x0001, 0x0001, "DIP2-1 (test mode)" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
@ -4915,7 +4915,7 @@ static INPUT_PORTS_START( raveracw )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START /* 1 */ PORT_START_TAG("INPUTS") /* 1 */
PORT_DIPNAME( 0x000f, 0x000a, "Stick Shift" ) PORT_DIPNAME( 0x000f, 0x000a, "Stick Shift" )
PORT_DIPSETTING( 0xa, "1" ) PORT_DIPSETTING( 0xa, "1" )
PORT_DIPSETTING( 0x9, "2" ) PORT_DIPSETTING( 0x9, "2" )

View File

@ -2269,6 +2269,18 @@ static INPUT_PORTS_START( livegal )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) // COIN1 PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) // COIN1
PORT_INCLUDE( nbmjcontrols ) PORT_INCLUDE( nbmjcontrols )
PORT_MODIFY("KEY0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_FLIP_FLOP ) PORT_NAME("Side 1 P2 Start")
PORT_MODIFY("KEY4")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Side 1 P1 Start")
PORT_MODIFY("KEY5")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_MAHJONG_FLIP_FLOP ) PORT_PLAYER(2) PORT_NAME("Side 2 P2 Start")
PORT_MODIFY("KEY9")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("Side 2 P1 Start")
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( ojousan ) static INPUT_PORTS_START( ojousan )

View File

@ -414,8 +414,8 @@ static READ16_HANDLER( othunder_TC0220IOC_r )
static READ16_HANDLER( othunder_lightgun_r ) static READ16_HANDLER( othunder_lightgun_r )
{ {
static const char *const dswname[4] = { P1X_PORT_TAG, P1Y_PORT_TAG, P2X_PORT_TAG, P2Y_PORT_TAG }; static const char *const portname[4] = { P1X_PORT_TAG, P1Y_PORT_TAG, P2X_PORT_TAG, P2Y_PORT_TAG };
return input_port_read(machine, dswname[offset]); return input_port_read(machine, portname[offset]);
} }
static WRITE16_HANDLER( othunder_lightgun_w ) static WRITE16_HANDLER( othunder_lightgun_w )
@ -537,7 +537,7 @@ static ADDRESS_MAP_START( z80_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xe201, 0xe201) AM_READWRITE(taitosound_slave_comm_r, taitosound_slave_comm_w) AM_RANGE(0xe201, 0xe201) AM_READWRITE(taitosound_slave_comm_r, taitosound_slave_comm_w)
AM_RANGE(0xe400, 0xe403) AM_WRITE(othunder_TC0310FAM_w) /* pan */ AM_RANGE(0xe400, 0xe403) AM_WRITE(othunder_TC0310FAM_w) /* pan */
AM_RANGE(0xe600, 0xe600) AM_WRITE(SMH_NOP) /* ? */ AM_RANGE(0xe600, 0xe600) AM_WRITE(SMH_NOP) /* ? */
AM_RANGE(0xea00, 0xea00) AM_READ(input_port_9_r) /* rotary input */ AM_RANGE(0xea00, 0xea00) AM_READ_PORT(ROTARY_PORT_TAG) /* rotary input */
AM_RANGE(0xee00, 0xee00) AM_WRITE(SMH_NOP) /* ? */ AM_RANGE(0xee00, 0xee00) AM_WRITE(SMH_NOP) /* ? */
AM_RANGE(0xf000, 0xf000) AM_WRITE(SMH_NOP) /* ? */ AM_RANGE(0xf000, 0xf000) AM_WRITE(SMH_NOP) /* ? */
AM_RANGE(0xf200, 0xf200) AM_WRITE(sound_bankswitch_w) AM_RANGE(0xf200, 0xf200) AM_WRITE(sound_bankswitch_w)
@ -592,6 +592,7 @@ static INPUT_PORTS_START( othunder )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
PORT_START_TAG("IN1") /* unused */ PORT_START_TAG("IN1") /* unused */
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("IN2") PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)

View File

@ -201,8 +201,8 @@ static READ16_HANDLER( slapshot_service_input_r )
switch (offset) switch (offset)
{ {
case 0x03: case 0x03:
return ((input_port_read(machine, "IN3") & 0xef) | return ((input_port_read(machine, "IN1") & 0xef) |
(input_port_read(machine, "IN5") & 0x10)) << 8; /* IN3 + service switch */ (input_port_read(machine, "SERVICE") & 0x10)) << 8; /* IN3 + service switch */
default: default:
return TC0640FIO_r(machine,offset) << 8; return TC0640FIO_r(machine,offset) << 8;
@ -368,8 +368,9 @@ ADDRESS_MAP_END
INPUT PORTS (DIPs in nvram) INPUT PORTS (DIPs in nvram)
***********************************************************/ ***********************************************************/
/* Tags below are the ones expected by TC0640FIO_halfword_byteswap_r */
static INPUT_PORTS_START( slapshot ) static INPUT_PORTS_START( slapshot )
PORT_START_TAG("IN0") PORT_START_TAG("DSWA")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -379,7 +380,7 @@ static INPUT_PORTS_START( slapshot )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN1") PORT_START_TAG("DSWB")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -389,7 +390,7 @@ static INPUT_PORTS_START( slapshot )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN2") PORT_START_TAG("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) 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( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
@ -399,7 +400,7 @@ static INPUT_PORTS_START( slapshot )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN3") PORT_START_TAG("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -409,7 +410,7 @@ static INPUT_PORTS_START( slapshot )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN4") PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
@ -419,12 +420,13 @@ static INPUT_PORTS_START( slapshot )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_START_TAG("IN5") /* IN5, so we can OR in service switch */ PORT_START_TAG("SERVICE") /* IN5, so we can OR in service switch */
PORT_SERVICE_NO_TOGGLE(0x10, IP_ACTIVE_LOW) PORT_SERVICE_NO_TOGGLE(0x10, IP_ACTIVE_LOW)
INPUT_PORTS_END INPUT_PORTS_END
/* Tags below are the ones expected by TC0640FIO_halfword_byteswap_r */
static INPUT_PORTS_START( opwolf3 ) static INPUT_PORTS_START( opwolf3 )
PORT_START_TAG("IN0") /* IN0, all bogus */ PORT_START_TAG("DSWA") /* IN0, all bogus */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -434,7 +436,7 @@ static INPUT_PORTS_START( opwolf3 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN1") PORT_START_TAG("DSWB")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -444,7 +446,7 @@ static INPUT_PORTS_START( opwolf3 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 )
PORT_START_TAG("IN2") PORT_START_TAG("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("1 Player Start/Button3")// also button 3 PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("1 Player Start/Button3")// also button 3
@ -454,7 +456,7 @@ static INPUT_PORTS_START( opwolf3 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("2 Player Start/Button3")// also button 3 PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("2 Player Start/Button3")// also button 3
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN3") PORT_START_TAG("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -464,7 +466,7 @@ static INPUT_PORTS_START( opwolf3 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN4") PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -474,7 +476,7 @@ static INPUT_PORTS_START( opwolf3 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN5") /* IN5, so we can OR in service switch */ PORT_START_TAG("SERVICE") /* IN5, so we can OR in service switch */
PORT_SERVICE_NO_TOGGLE(0x10, IP_ACTIVE_LOW) PORT_SERVICE_NO_TOGGLE(0x10, IP_ACTIVE_LOW)
PORT_START_TAG("GUN1X") /* IN 6, P1X */ PORT_START_TAG("GUN1X") /* IN 6, P1X */

View File

@ -262,7 +262,7 @@ typedef enum {
SNK_INP0, SNK_INP0,
SNK_INP1,SNK_INP2,SNK_INP3,SNK_INP4, SNK_INP1,SNK_INP2,SNK_INP3,SNK_INP4,
SNK_INP5,SNK_INP6,SNK_INP7,SNK_INP8, SNK_INP5,SNK_INP6,SNK_INP7,SNK_INP8,
SNK_INP9,SNK_INP10,SNK_INP11, SNK_DSW1,SNK_DSW2,SNK_INP9,
SNK_ROT_PLAYER1, SNK_ROT_PLAYER2 SNK_ROT_PLAYER1, SNK_ROT_PLAYER2
} SNK_INPUT_PORT_TYPE; } SNK_INPUT_PORT_TYPE;
@ -290,11 +290,13 @@ static int snk_sound_register;
/*********************************************************************/ /*********************************************************************/
static int snk_rot( running_machine *machine, int which ){ static int snk_rot( running_machine *machine, int which )
{
static int last_value[2] = {0, 0}; static int last_value[2] = {0, 0};
static int cp_count[2] = {0, 0}; static int cp_count[2] = {0, 0};
static const char *ports[] = { "IN1", "IN2" };
int value = input_port_read(machine, ports[which]);
int bttn; int bttn;
int value = input_port_read_indexed(machine, which + 1);
/* For Guerilla War we add a 0xf0 value for 1 input read once every 8 rotations. /* For Guerilla War we add a 0xf0 value for 1 input read once every 8 rotations.
* 0xf0 isn't a valid direction, but avoids the "joystick error" protection * 0xf0 isn't a valid direction, but avoids the "joystick error" protection
@ -317,28 +319,30 @@ static int snk_rot( running_machine *machine, int which ){
} }
static int snk_input_port_r( running_machine *machine, int which ){ static int snk_input_port_r( running_machine *machine, int which ){
switch( snk_io[which] ){ switch( snk_io[which] )
{
case SNK_INP0: case SNK_INP0:
{ {
int value = input_port_read_indexed( machine,0 ); int value = input_port_read(machine, "IN0");
if( (snk_sound_register & 0x04) == 0 ) value &= ~snk_sound_busy_bit; if( (snk_sound_register & 0x04) == 0 ) value &= ~snk_sound_busy_bit;
return value; return value;
} }
case SNK_ROT_PLAYER1: return snk_rot( machine, 0 ); case SNK_ROT_PLAYER1: return snk_rot(machine, 0);
case SNK_ROT_PLAYER2: return snk_rot( machine, 1 ); case SNK_ROT_PLAYER2: return snk_rot(machine, 1);
case SNK_INP1: return input_port_read_indexed(machine, 1); case SNK_INP1: return input_port_read(machine, "IN1");
case SNK_INP2: return input_port_read_indexed(machine, 2); case SNK_INP2: return input_port_read(machine, "IN2");
case SNK_INP3: return input_port_read_indexed(machine, 3); case SNK_INP3: return input_port_read(machine, "IN3");
case SNK_INP4: return input_port_read_indexed(machine, 4); case SNK_INP4: return input_port_read(machine, "IN4");
case SNK_INP5: return input_port_read_indexed(machine, 5); case SNK_INP5: return input_port_read(machine, "IN5");
case SNK_INP6: return input_port_read_indexed(machine, 6); case SNK_INP6: return input_port_read(machine, "IN6");
case SNK_INP7: return input_port_read_indexed(machine, 7); case SNK_INP7: return input_port_read(machine, "IN7");
case SNK_INP8: return input_port_read_indexed(machine, 8); case SNK_INP8: return input_port_read(machine, "IN8");
case SNK_INP9: return input_port_read_indexed(machine, 9); case SNK_INP9: return input_port_read(machine, "IN9");
case SNK_INP10: return input_port_read_indexed(machine, 10);
case SNK_INP11: return input_port_read_indexed(machine, 11); case SNK_DSW1: return input_port_read(machine, "DSW1");
case SNK_DSW2: return input_port_read(machine, "DSW2");
default: default:
logerror("read from unmapped input port:%d\n", which ); logerror("read from unmapped input port:%d\n", which );
@ -453,23 +457,25 @@ ADDRESS_MAP_END
/********************** Tnk3, Athena, Fighting Golf ********************/ /********************** Tnk3, Athena, Fighting Golf ********************/
static READ8_HANDLER( cpuA_io_r ){ static READ8_HANDLER( cpuA_io_r )
switch( offset ){ {
case 0x000: return snk_input_port_r( machine,0 ); // coin input, player start switch( offset )
case 0x100: return snk_input_port_r( machine,1 ); // joy1 {
case 0x180: return snk_input_port_r( machine,2 ); // joy2 case 0x000: return snk_input_port_r(machine, 0); // coin input, player start
case 0x200: return snk_input_port_r( machine,3 ); // joy3 case 0x100: return snk_input_port_r(machine, 1); // joy1
case 0x280: return snk_input_port_r( machine,4 ); // joy4 case 0x180: return snk_input_port_r(machine, 2); // joy2
case 0x300: return snk_input_port_r( machine,5 ); // aim1 case 0x200: return snk_input_port_r(machine, 3); // joy3
case 0x380: return snk_input_port_r( machine,6 ); // aim2 case 0x280: return snk_input_port_r(machine, 4); // joy4
case 0x400: return snk_input_port_r( machine,7 ); // aim3 case 0x300: return snk_input_port_r(machine, 5); // aim1
case 0x480: return snk_input_port_r( machine,8 ); // aim4 case 0x380: return snk_input_port_r(machine, 6); // aim2
case 0x500: return snk_input_port_r( machine,9 ); // unused by tdfever case 0x400: return snk_input_port_r(machine, 7); // aim3
case 0x580: return snk_input_port_r( machine,10 ); // dsw case 0x480: return snk_input_port_r(machine, 8); // aim4
case 0x600: return snk_input_port_r( machine,11 ); // dsw case 0x500: return snk_input_port_r(machine, 9); // unused by tdfever
case 0x080: return snk_input_port_r( machine,12 ); // player start (types C and D in 'fsoccer') case 0x580: return snk_input_port_r(machine, 10); // dsw
case 0x600: return snk_input_port_r(machine, 11); // dsw
case 0x080: return snk_input_port_r(machine, 12); // player start (types C and D in 'fsoccer')
case 0x700: return(snk_cpuB_nmi_trigger_r(machine,0)); case 0x700: return(snk_cpuB_nmi_trigger_r(machine, 0));
/* "Hard Flags" */ /* "Hard Flags" */
case 0xe00: case 0xe00:
@ -483,8 +489,10 @@ static READ8_HANDLER( cpuA_io_r ){
return io_ram[offset]; return io_ram[offset];
} }
static WRITE8_HANDLER( cpuA_io_w ){ static WRITE8_HANDLER( cpuA_io_w )
switch( offset ){ {
switch( offset )
{
case 0x000: case 0x000:
break; break;
@ -503,8 +511,10 @@ static WRITE8_HANDLER( cpuA_io_w ){
} }
} }
static READ8_HANDLER( cpuB_io_r ){ static READ8_HANDLER( cpuB_io_r )
switch( offset ){ {
switch( offset )
{
case 0x000: case 0x000:
case 0x700: return(snk_cpuA_nmi_trigger_r(machine, 0)); case 0x700: return(snk_cpuA_nmi_trigger_r(machine, 0));
@ -2932,7 +2942,6 @@ ROM_END
/***********************************************************************/ /***********************************************************************/
#define SNK_JOY1_PORT \ #define SNK_JOY1_PORT \
PORT_START_TAG("IN1") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) \
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) \
@ -2940,7 +2949,6 @@ ROM_END
PORT_BIT( 0xf0, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(12) PORT_WRAPS PORT_SENSITIVITY(5) PORT_KEYDELTA(5) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_REVERSE PORT_FULL_TURN_COUNT(12) \ PORT_BIT( 0xf0, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(12) PORT_WRAPS PORT_SENSITIVITY(5) PORT_KEYDELTA(5) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_REVERSE PORT_FULL_TURN_COUNT(12) \
#define SNK_JOY2_PORT \ #define SNK_JOY2_PORT \
PORT_START_TAG("IN2") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) \ 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( 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) \ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) \
@ -2948,7 +2956,6 @@ ROM_END
PORT_BIT( 0xf0, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(12) PORT_WRAPS PORT_SENSITIVITY(5) PORT_KEYDELTA(5) PORT_CODE_DEC(KEYCODE_N) PORT_CODE_INC(KEYCODE_M) PORT_PLAYER(2) PORT_REVERSE PORT_FULL_TURN_COUNT(12) PORT_BIT( 0xf0, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(12) PORT_WRAPS PORT_SENSITIVITY(5) PORT_KEYDELTA(5) PORT_CODE_DEC(KEYCODE_N) PORT_CODE_INC(KEYCODE_M) PORT_PLAYER(2) PORT_REVERSE PORT_FULL_TURN_COUNT(12)
#define SNK_JOY1_NODIAL_PORT \ #define SNK_JOY1_NODIAL_PORT \
PORT_START_TAG("IN1") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) \
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) \
@ -2956,7 +2963,6 @@ ROM_END
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN ) \ PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN ) \
#define SNK_JOY2_NODIAL_PORT \ #define SNK_JOY2_NODIAL_PORT \
PORT_START_TAG("IN2") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) \ 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( 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) \ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) \
@ -2964,7 +2970,6 @@ ROM_END
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN )
#define SNK_BUTTON_PORT \ #define SNK_BUTTON_PORT \
PORT_START_TAG("IN3") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) \ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) \ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) \
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) \ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) \
@ -2997,12 +3002,19 @@ static INPUT_PORTS_START( ikari )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START_TAG("IN1")
SNK_JOY1_PORT SNK_JOY1_PORT
PORT_START_TAG("IN2")
SNK_JOY2_PORT SNK_JOY2_PORT
PORT_START_TAG("IN3")
SNK_BUTTON_PORT SNK_BUTTON_PORT
PORT_START_TAG("DSW1") PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, "Allow killing each other" ) PORT_DIPNAME( 0x01, 0x01, "Allow killing each other" )
PORT_DIPSETTING( 0x01, DEF_STR( No ) ) PORT_DIPSETTING( 0x01, DEF_STR( No ) )
@ -3053,12 +3065,19 @@ static INPUT_PORTS_START( ikarijp )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* tilt? */ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* tilt? */
PORT_START_TAG("IN1")
SNK_JOY1_PORT SNK_JOY1_PORT
PORT_START_TAG("IN2")
SNK_JOY2_PORT SNK_JOY2_PORT
PORT_START_TAG("IN3")
SNK_BUTTON_PORT SNK_BUTTON_PORT
PORT_START_TAG("DSW1") PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, "Allow killing each other" ) PORT_DIPNAME( 0x01, 0x01, "Allow killing each other" )
PORT_DIPSETTING( 0x01, DEF_STR( No ) ) PORT_DIPSETTING( 0x01, DEF_STR( No ) )
@ -3102,18 +3121,18 @@ INPUT_PORTS_END
static INPUT_PORTS_START( ikarijpb ) static INPUT_PORTS_START( ikarijpb )
PORT_INCLUDE(ikarijp) PORT_INCLUDE(ikarijp)
PORT_MODIFY("IN1") \ PORT_MODIFY("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) \ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0xf0, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(8) PORT_WRAPS PORT_REMAP_TABLE(dial_8_gray) PORT_SENSITIVITY(5) PORT_KEYDELTA(5) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_FULL_TURN_COUNT(8) \ PORT_BIT( 0xf0, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(8) PORT_WRAPS PORT_REMAP_TABLE(dial_8_gray) PORT_SENSITIVITY(5) PORT_KEYDELTA(5) PORT_CODE_DEC(KEYCODE_Z) PORT_CODE_INC(KEYCODE_X) PORT_FULL_TURN_COUNT(8)
PORT_MODIFY("IN2") \ PORT_MODIFY("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) \ 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( 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) \ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) \ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0xf0, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(8) PORT_WRAPS PORT_REMAP_TABLE(dial_8_gray) PORT_SENSITIVITY(5) PORT_KEYDELTA(5) PORT_CODE_DEC(KEYCODE_N) PORT_CODE_INC(KEYCODE_M) PORT_PLAYER(2) PORT_FULL_TURN_COUNT(8) PORT_BIT( 0xf0, 0x00, IPT_POSITIONAL ) PORT_POSITIONS(8) PORT_WRAPS PORT_REMAP_TABLE(dial_8_gray) PORT_SENSITIVITY(5) PORT_KEYDELTA(5) PORT_CODE_DEC(KEYCODE_N) PORT_CODE_INC(KEYCODE_M) PORT_PLAYER(2) PORT_FULL_TURN_COUNT(8)
INPUT_PORTS_END INPUT_PORTS_END
@ -3129,12 +3148,19 @@ static INPUT_PORTS_START( victroad )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START_TAG("IN1")
SNK_JOY1_PORT SNK_JOY1_PORT
PORT_START_TAG("IN2")
SNK_JOY2_PORT SNK_JOY2_PORT
PORT_START_TAG("IN3")
SNK_BUTTON_PORT SNK_BUTTON_PORT
PORT_START_TAG("DSW1") PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, "Kill friend & walk everywhere (Cheat)") PORT_DIPNAME( 0x01, 0x01, "Kill friend & walk everywhere (Cheat)")
PORT_DIPSETTING( 0x01, DEF_STR( No ) ) PORT_DIPSETTING( 0x01, DEF_STR( No ) )
@ -3186,12 +3212,18 @@ static INPUT_PORTS_START( dogosokj )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START_TAG("IN1")
SNK_JOY1_NODIAL_PORT SNK_JOY1_NODIAL_PORT
PORT_START_TAG("IN2")
SNK_JOY2_NODIAL_PORT SNK_JOY2_NODIAL_PORT
PORT_START_TAG("IN3")
SNK_BUTTON_PORT SNK_BUTTON_PORT
PORT_START_TAG("DSW1") PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, "Kill friend & walk everywhere (Cheat)") PORT_DIPNAME( 0x01, 0x01, "Kill friend & walk everywhere (Cheat)")
PORT_DIPSETTING( 0x01, DEF_STR( No ) ) PORT_DIPSETTING( 0x01, DEF_STR( No ) )
@ -3243,12 +3275,19 @@ static INPUT_PORTS_START( gwar )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START_TAG("IN1")
SNK_JOY1_PORT SNK_JOY1_PORT
PORT_START_TAG("IN2")
SNK_JOY2_PORT SNK_JOY2_PORT
PORT_START_TAG("IN3")
SNK_BUTTON_PORT SNK_BUTTON_PORT
PORT_START_TAG("DSW1") PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Allow_Continue ) ) PORT_DIPNAME( 0x01, 0x01, DEF_STR( Allow_Continue ) )
PORT_DIPSETTING( 0x00, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( No ) )
@ -3455,12 +3494,19 @@ static INPUT_PORTS_START( bermudat )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START_TAG("IN1")
SNK_JOY1_PORT SNK_JOY1_PORT
PORT_START_TAG("IN2")
SNK_JOY2_PORT SNK_JOY2_PORT
PORT_START_TAG("IN3")
SNK_BUTTON_PORT SNK_BUTTON_PORT
PORT_START_TAG("DSW1") PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
@ -3499,49 +3545,18 @@ static INPUT_PORTS_START( bermudat )
PORT_DIPSETTING( 0x00, "Time attack 5 minutes" ) PORT_DIPSETTING( 0x00, "Time attack 5 minutes" )
INPUT_PORTS_END INPUT_PORTS_END
#define BERMWW_COMMON\
PORT_START_TAG("IN0")\
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */\
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )\
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* tile? */\
PORT_SERVICE_NO_TOGGLE(0x08, IP_ACTIVE_LOW)\
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )\
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )\
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )\
SNK_JOY1_PORT\
SNK_JOY2_PORT\
SNK_BUTTON_PORT\
PORT_START_TAG("DSW1")\
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Allow_Continue ) )\
PORT_DIPSETTING( 0x01, DEF_STR( No ) )\
PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )\
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )\
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )\
PORT_DIPSETTING( 0x00, DEF_STR( On ) )\
PORT_DIPNAME( 0x04, 0x04, "Bonus Occurrence" )\
PORT_DIPSETTING( 0x04, "1st & every 2nd" )\
PORT_DIPSETTING( 0x00, "1st & 2nd only" )\
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Lives ) )\
PORT_DIPSETTING( 0x08, "3" )\
PORT_DIPSETTING( 0x00, "5" )\
SNK_COINAGE
static INPUT_PORTS_START( bermudaa ) static INPUT_PORTS_START( bermudaa )
BERMWW_COMMON PORT_INCLUDE( bermudat )
PORT_START_TAG("DSW2") PORT_MODIFY("IN0")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) ) PORT_SERVICE_NO_TOGGLE(0x08, IP_ACTIVE_LOW)
PORT_DIPSETTING( 0x03, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x02, DEF_STR( Normal ) ) PORT_MODIFY("DSW1")
PORT_DIPSETTING( 0x01, DEF_STR( Hard ) ) PORT_DIPNAME( 0x01, 0x00, DEF_STR( Allow_Continue ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) PORT_DIPSETTING( 0x01, DEF_STR( No ) )
PORT_DIPNAME( 0x0c, 0x08, "Game Mode" ) PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
PORT_DIPSETTING( 0x0c, "Demo Sounds Off" )
PORT_DIPSETTING( 0x08, "Demo Sounds On" ) PORT_MODIFY("DSW2")
PORT_DIPSETTING( 0x00, "Freeze" )
PORT_DIPSETTING( 0x04, "Infinite Lives (Cheat)")
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) ) PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x30, "25k 50k" ) PORT_DIPSETTING( 0x30, "25k 50k" )
PORT_DIPSETTING( 0x20, "35k 70k" ) PORT_DIPSETTING( 0x20, "35k 70k" )
@ -3557,30 +3572,14 @@ INPUT_PORTS_END
/* Same as Bermudaa, but has different Bonus Life */ /* Same as Bermudaa, but has different Bonus Life */
static INPUT_PORTS_START( worldwar ) static INPUT_PORTS_START( worldwar )
BERMWW_COMMON PORT_INCLUDE( bermudaa )
PORT_START_TAG("DSW2") PORT_MODIFY("DSW2")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x03, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x02, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x01, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
PORT_DIPNAME( 0x0c, 0x08, "Game Mode" )
PORT_DIPSETTING( 0x0c, "Demo Sounds Off" )
PORT_DIPSETTING( 0x08, "Demo Sounds On" )
PORT_DIPSETTING( 0x00, "Freeze" )
PORT_DIPSETTING( 0x04, "Infinite Lives (Cheat)")
PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) ) PORT_DIPNAME( 0x30, 0x30, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x30, "50k 100k" ) PORT_DIPSETTING( 0x30, "50k 100k" )
PORT_DIPSETTING( 0x20, "80k 160k" ) PORT_DIPSETTING( 0x20, "80k 160k" )
PORT_DIPSETTING( 0x10, "100k 200k" ) PORT_DIPSETTING( 0x10, "100k 200k" )
PORT_DIPSETTING( 0x00, DEF_STR( None ) ) PORT_DIPSETTING( 0x00, DEF_STR( None ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unused ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unused ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( psychos ) static INPUT_PORTS_START( psychos )
@ -3604,8 +3603,10 @@ static INPUT_PORTS_START( psychos )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_START_TAG("IN2")
SNK_BUTTON_PORT SNK_BUTTON_PORT
PORT_START_TAG("DSW1") PORT_START_TAG("DSW1")
PORT_SERVICE( 0x01, IP_ACTIVE_LOW ) PORT_SERVICE( 0x01, IP_ACTIVE_LOW )
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) ) PORT_DIPNAME( 0x02, 0x02, DEF_STR( Flip_Screen ) )
@ -3725,12 +3726,18 @@ static INPUT_PORTS_START( choppera )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START_TAG("IN1")
SNK_JOY1_NODIAL_PORT SNK_JOY1_NODIAL_PORT
PORT_START_TAG("IN2")
SNK_JOY2_NODIAL_PORT SNK_JOY2_NODIAL_PORT
PORT_START_TAG("IN3")
SNK_BUTTON_PORT SNK_BUTTON_PORT
PORT_START_TAG("DSW1") PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
@ -3920,8 +3927,8 @@ static INPUT_PORTS_START( fsoccer )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* sound CPU status */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start Game A") PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Start Game A")
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("Start Game B") PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("Start Game B")
PORT_START_TAG("IN1") PORT_START_TAG("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
@ -3947,7 +3954,7 @@ static INPUT_PORTS_START( fsoccer )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Start Game E") PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Start Game E")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3)
@ -4015,15 +4022,15 @@ static INPUT_PORTS_START( fsoccer )
PORT_DIPSETTING( 0x00, "2:10" ) PORT_DIPSETTING( 0x00, "2:10" )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_START_TAG("IN11") PORT_START_TAG("IN9")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Start Game C") PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Start Game C")
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_START4 ) PORT_NAME("Start Game D") PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 ) PORT_NAME("Start Game D")
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( tdfever ) static INPUT_PORTS_START( tdfever )
@ -4156,15 +4163,15 @@ Actual Play Times listed in manual based on Players & cabinet type:
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START_TAG("IN11") PORT_START_TAG("IN9")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Start Game C") PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Start Game C")
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_START4 ) PORT_NAME("Start Game D") PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 ) PORT_NAME("Start Game D")
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( tdfeverj ) static INPUT_PORTS_START( tdfeverj )
@ -4297,15 +4304,15 @@ Actual Play Times listed in manual based on Players & cabinet type:
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START_TAG("IN11") PORT_START_TAG("IN9")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Start Game C") PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Start Game C")
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_START4 ) PORT_NAME("Start Game D") PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 ) PORT_NAME("Start Game D")
INPUT_PORTS_END INPUT_PORTS_END
/***********************************************************************/ /***********************************************************************/
@ -4318,8 +4325,8 @@ static const SNK_INPUT_PORT_TYPE athena_io[SNK_MAX_INPUT_PORTS] = {
/* c200 */ SNK_INP2, SNK_UNUSED, /* c200 */ SNK_INP2, SNK_UNUSED,
/* c300 */ SNK_UNUSED, SNK_UNUSED, /* c300 */ SNK_UNUSED, SNK_UNUSED,
/* c400 */ SNK_UNUSED, SNK_UNUSED, /* c400 */ SNK_UNUSED, SNK_UNUSED,
/* c500 */ SNK_INP3, SNK_UNUSED, /* c500 */ SNK_DSW1, SNK_UNUSED,
/* c600 */ SNK_INP4, /* c600 */ SNK_DSW2,
/* c080 */ SNK_UNUSED /* c080 */ SNK_UNUSED
}; };
@ -4329,8 +4336,8 @@ static const SNK_INPUT_PORT_TYPE ikari_io[SNK_MAX_INPUT_PORTS] = {
/* c200 */ SNK_ROT_PLAYER2, SNK_UNUSED, /* c200 */ SNK_ROT_PLAYER2, SNK_UNUSED,
/* c300 */ SNK_INP3, SNK_UNUSED, /* c300 */ SNK_INP3, SNK_UNUSED,
/* c400 */ SNK_UNUSED, SNK_UNUSED, /* c400 */ SNK_UNUSED, SNK_UNUSED,
/* c500 */ SNK_INP4, SNK_UNUSED, /* c500 */ SNK_DSW1, SNK_UNUSED,
/* c600 */ SNK_INP5, /* c600 */ SNK_DSW2,
/* c080 */ SNK_UNUSED /* c080 */ SNK_UNUSED
}; };
@ -4340,8 +4347,8 @@ static const SNK_INPUT_PORT_TYPE choppera_io[SNK_MAX_INPUT_PORTS] = {
/* c200 */ SNK_INP2, SNK_UNUSED, /* c200 */ SNK_INP2, SNK_UNUSED,
/* c300 */ SNK_INP3, SNK_UNUSED, /* c300 */ SNK_INP3, SNK_UNUSED,
/* c400 */ SNK_UNUSED, SNK_UNUSED, /* c400 */ SNK_UNUSED, SNK_UNUSED,
/* c500 */ SNK_INP4, SNK_UNUSED, /* c500 */ SNK_DSW1, SNK_UNUSED,
/* c600 */ SNK_INP5, /* c600 */ SNK_DSW2,
/* c080 */ SNK_UNUSED /* c080 */ SNK_UNUSED
}; };
@ -4350,9 +4357,9 @@ static const SNK_INPUT_PORT_TYPE fsoccer_io[SNK_MAX_INPUT_PORTS] = {
/* c100 */ SNK_INP1, SNK_INP2, SNK_INP3, SNK_INP4, /* joy1..joy4 */ /* c100 */ SNK_INP1, SNK_INP2, SNK_INP3, SNK_INP4, /* joy1..joy4 */
/* c300 */ SNK_INP5, SNK_INP6, SNK_INP7, SNK_INP8, /* aim1..aim4 */ /* c300 */ SNK_INP5, SNK_INP6, SNK_INP7, SNK_INP8, /* aim1..aim4 */
/* c500 */ SNK_UNUSED, /* c500 */ SNK_UNUSED,
/* c580 */ SNK_INP9, /* DSW1 */ /* c580 */ SNK_DSW1, /* DSW1 */
/* c600 */ SNK_INP10, /* DSW2 */ /* c600 */ SNK_DSW2, /* DSW2 */
/* c080 */ SNK_INP11 /* Start games type C & D */ /* c080 */ SNK_INP9 /* Start games type C & D */
}; };
static const SNK_INPUT_PORT_TYPE tdfever_io[SNK_MAX_INPUT_PORTS] = { static const SNK_INPUT_PORT_TYPE tdfever_io[SNK_MAX_INPUT_PORTS] = {
@ -4360,9 +4367,9 @@ static const SNK_INPUT_PORT_TYPE tdfever_io[SNK_MAX_INPUT_PORTS] = {
/* c100 */ SNK_INP1, SNK_INP2, SNK_INP3, SNK_INP4, /* joy1..joy4 */ /* c100 */ SNK_INP1, SNK_INP2, SNK_INP3, SNK_INP4, /* joy1..joy4 */
/* c300 */ SNK_INP5, SNK_INP6, SNK_INP7, SNK_INP8, /* aim1..aim4 */ /* c300 */ SNK_INP5, SNK_INP6, SNK_INP7, SNK_INP8, /* aim1..aim4 */
/* c500 */ SNK_UNUSED, /* c500 */ SNK_UNUSED,
/* c580 */ SNK_INP9, /* DSW1 */ /* c580 */ SNK_DSW1, /* DSW1 */
/* c600 */ SNK_INP10, /* DSW2 */ /* c600 */ SNK_DSW2, /* DSW2 */
/* c080 */ SNK_INP11 /* Start games type C & D */ /* c080 */ SNK_INP9 /* Start games type C & D */
}; };
static DRIVER_INIT( ikari ){ static DRIVER_INIT( ikari ){

View File

@ -708,9 +708,9 @@ static ADDRESS_MAP_START( pbobble_readmem, ADDRESS_SPACE_PROGRAM, 16 )
TC0180VCU_MEMR( 0x400000 ) TC0180VCU_MEMR( 0x400000 )
AM_RANGE(0x500000, 0x50000f) AM_READ(pbobble_input_bypass_r) AM_RANGE(0x500000, 0x50000f) AM_READ(pbobble_input_bypass_r)
AM_RANGE(0x500024, 0x500025) AM_READ_PORT("IN5") /* shown in service mode, game omits to read it */ AM_RANGE(0x500024, 0x500025) AM_READ_PORT("IN3") /* shown in service mode, game omits to read it */
AM_RANGE(0x500026, 0x500027) AM_READ(eep_latch_r) /* not read by this game */ AM_RANGE(0x500026, 0x500027) AM_READ(eep_latch_r) /* not read by this game */
AM_RANGE(0x50002e, 0x50002f) AM_READ_PORT("IN6") /* shown in service mode, game omits to read it */ AM_RANGE(0x50002e, 0x50002f) AM_READ_PORT("IN4") /* shown in service mode, game omits to read it */
AM_RANGE(0x700000, 0x700001) AM_READ(SMH_NOP) AM_RANGE(0x700000, 0x700001) AM_READ(SMH_NOP)
AM_RANGE(0x700002, 0x700003) AM_READ(taitosound_comm16_msb_r) AM_RANGE(0x700002, 0x700003) AM_READ(taitosound_comm16_msb_r)
@ -742,9 +742,9 @@ static ADDRESS_MAP_START( spacedx_readmem, ADDRESS_SPACE_PROGRAM, 16 )
TC0180VCU_MEMR( 0x400000 ) TC0180VCU_MEMR( 0x400000 )
AM_RANGE(0x500000, 0x50000f) AM_READ(pbobble_input_bypass_r) AM_RANGE(0x500000, 0x50000f) AM_READ(pbobble_input_bypass_r)
AM_RANGE(0x500024, 0x500025) AM_READ_PORT("IN5") AM_RANGE(0x500024, 0x500025) AM_READ_PORT("IN3")
AM_RANGE(0x500026, 0x500027) AM_READ(eep_latch_r) AM_RANGE(0x500026, 0x500027) AM_READ(eep_latch_r)
AM_RANGE(0x50002e, 0x50002f) AM_READ_PORT("IN6") AM_RANGE(0x50002e, 0x50002f) AM_READ_PORT("IN4")
AM_RANGE(0x700000, 0x700001) AM_READ(SMH_NOP) AM_RANGE(0x700000, 0x700001) AM_READ(SMH_NOP)
AM_RANGE(0x700002, 0x700003) AM_READ(taitosound_comm16_msb_r) AM_RANGE(0x700002, 0x700003) AM_READ(taitosound_comm16_msb_r)
@ -776,9 +776,9 @@ static ADDRESS_MAP_START( spacedxo_readmem, ADDRESS_SPACE_PROGRAM, 16 )
TC0180VCU_MEMR( 0x500000 ) TC0180VCU_MEMR( 0x500000 )
AM_RANGE(0x200000, 0x20000f) AM_READ(TC0220IOC_halfword_r) AM_RANGE(0x200000, 0x20000f) AM_READ(TC0220IOC_halfword_r)
AM_RANGE(0x210000, 0x210001) AM_READ_PORT("IN5") AM_RANGE(0x210000, 0x210001) AM_READ_PORT("IN3")
AM_RANGE(0x220000, 0x220001) AM_READ_PORT("IN6") AM_RANGE(0x220000, 0x220001) AM_READ_PORT("IN4")
AM_RANGE(0x230000, 0x230001) AM_READ_PORT("IN7") AM_RANGE(0x230000, 0x230001) AM_READ_PORT("IN5")
AM_RANGE(0x100000, 0x100001) AM_READ(SMH_NOP) AM_RANGE(0x100000, 0x100001) AM_READ(SMH_NOP)
AM_RANGE(0x100002, 0x100003) AM_READ(taitosound_comm16_msb_r) AM_RANGE(0x100002, 0x100003) AM_READ(taitosound_comm16_msb_r)
@ -807,9 +807,9 @@ static ADDRESS_MAP_START( qzshowby_readmem, ADDRESS_SPACE_PROGRAM, 16 )
TC0180VCU_MEMR( 0x400000 ) TC0180VCU_MEMR( 0x400000 )
AM_RANGE(0x200000, 0x20000f) AM_READ(pbobble_input_bypass_r) AM_RANGE(0x200000, 0x20000f) AM_READ(pbobble_input_bypass_r)
AM_RANGE(0x200024, 0x200025) AM_READ_PORT("IN5") /* player 3,4 start */ AM_RANGE(0x200024, 0x200025) AM_READ_PORT("IN3") /* player 3,4 start */
AM_RANGE(0x200028, 0x200029) AM_READ(player_34_coin_ctrl_r) AM_RANGE(0x200028, 0x200029) AM_READ(player_34_coin_ctrl_r)
AM_RANGE(0x20002e, 0x20002f) AM_READ_PORT("IN6") /* player 3,4 buttons */ AM_RANGE(0x20002e, 0x20002f) AM_READ_PORT("IN4") /* player 3,4 buttons */
AM_RANGE(0x600000, 0x600001) AM_READ(SMH_NOP) AM_RANGE(0x600000, 0x600001) AM_READ(SMH_NOP)
AM_RANGE(0x600002, 0x600003) AM_READ(taitosound_comm16_msb_r) AM_RANGE(0x600002, 0x600003) AM_READ(taitosound_comm16_msb_r)
@ -902,9 +902,9 @@ static ADDRESS_MAP_START( silentd_readmem, ADDRESS_SPACE_PROGRAM, 16 )
TC0180VCU_MEMR( 0x500000 ) TC0180VCU_MEMR( 0x500000 )
AM_RANGE(0x200000, 0x20000f) AM_READ(TC0220IOC_halfword_r) AM_RANGE(0x200000, 0x20000f) AM_READ(TC0220IOC_halfword_r)
AM_RANGE(0x210000, 0x210001) AM_READ_PORT("IN5") AM_RANGE(0x210000, 0x210001) AM_READ_PORT("IN3")
AM_RANGE(0x220000, 0x220001) AM_READ_PORT("IN6") AM_RANGE(0x220000, 0x220001) AM_READ_PORT("IN4")
AM_RANGE(0x230000, 0x230001) AM_READ_PORT("IN7") AM_RANGE(0x230000, 0x230001) AM_READ_PORT("IN5")
// AM_RANGE(0x240000, 0x240001) AM_READ(SMH_NOP) /* read 4 times at init */ // AM_RANGE(0x240000, 0x240001) AM_READ(SMH_NOP) /* read 4 times at init */
AM_RANGE(0x100000, 0x100001) AM_READ(SMH_NOP) AM_RANGE(0x100000, 0x100001) AM_READ(SMH_NOP)
@ -1657,8 +1657,9 @@ INPUT_PORTS_END
/* Helps document the input ports. */ /* Helps document the input ports. */
/* Tags below are the ones expected by TC0640FIO_r */
static INPUT_PORTS_START( pbobble ) /* Missing P3&4 controls ! */ static INPUT_PORTS_START( pbobble ) /* Missing P3&4 controls ! */
PORT_START_TAG("IN0") PORT_START_TAG("DSWA")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
@ -1668,7 +1669,7 @@ static INPUT_PORTS_START( pbobble ) /* Missing P3&4 controls ! */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW ) /*ok*/ PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW ) /*ok*/
PORT_START_TAG("IN1") PORT_START_TAG("DSWB")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -1678,7 +1679,7 @@ static INPUT_PORTS_START( pbobble ) /* Missing P3&4 controls ! */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) /*ok*/ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) /*ok*/
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) /*ok*/ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) /*ok*/
PORT_START_TAG("IN2") PORT_START_TAG("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 )
@ -1688,7 +1689,7 @@ static INPUT_PORTS_START( pbobble ) /* Missing P3&4 controls ! */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
PORT_START_TAG("IN3") PORT_START_TAG("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) 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( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
@ -1698,7 +1699,7 @@ static INPUT_PORTS_START( pbobble ) /* Missing P3&4 controls ! */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
PORT_START_TAG("IN4") PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
@ -1708,7 +1709,7 @@ static INPUT_PORTS_START( pbobble ) /* Missing P3&4 controls ! */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_START_TAG("IN5") PORT_START_TAG("IN3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) 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( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
@ -1718,7 +1719,7 @@ static INPUT_PORTS_START( pbobble ) /* Missing P3&4 controls ! */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
PORT_START_TAG("IN6") PORT_START_TAG("IN4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
@ -1783,7 +1784,7 @@ static INPUT_PORTS_START( spacedxo )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_START_TAG("IN5") PORT_START_TAG("IN3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
@ -1793,7 +1794,7 @@ static INPUT_PORTS_START( spacedxo )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_START_TAG("IN6") PORT_START_TAG("IN4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START4 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4)
@ -1803,7 +1804,7 @@ static INPUT_PORTS_START( spacedxo )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4)
PORT_START_TAG("IN7") PORT_START_TAG("IN5")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2)
@ -1814,8 +1815,9 @@ static INPUT_PORTS_START( spacedxo )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END INPUT_PORTS_END
/* Tags below are the ones expected by TC0640FIO_r */
static INPUT_PORTS_START( qzshowby ) static INPUT_PORTS_START( qzshowby )
PORT_START_TAG("IN0") PORT_START_TAG("DSWA")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
@ -1825,7 +1827,7 @@ static INPUT_PORTS_START( qzshowby )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /*unused in test mode*/
PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW ) /*ok*/ PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW ) /*ok*/
PORT_START_TAG("IN1") PORT_START_TAG("DSWB")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -1835,7 +1837,7 @@ static INPUT_PORTS_START( qzshowby )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) /*ok*/ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) /*ok*/
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) /*ok*/ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) /*ok*/
PORT_START_TAG("IN2") /* IN0 */ /*all OK*/ PORT_START_TAG("IN0") /* IN0 */ /*all OK*/
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE2 )
@ -1845,7 +1847,7 @@ static INPUT_PORTS_START( qzshowby )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START3 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
PORT_START_TAG("IN3") /* IN 1 */ /*all OK*/ PORT_START_TAG("IN1") /* IN 1 */ /*all OK*/
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* IPT_START1 in test mode */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* IPT_START1 in test mode */
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -1855,7 +1857,7 @@ static INPUT_PORTS_START( qzshowby )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN4") /* IN2 */ /*all OK*/ PORT_START_TAG("IN2") /* IN2 */ /*all OK*/
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
@ -1865,7 +1867,7 @@ static INPUT_PORTS_START( qzshowby )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_START_TAG("IN5") PORT_START_TAG("IN3")
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* IPT_START3 in test mode */ PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* IPT_START3 in test mode */
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -1875,7 +1877,7 @@ static INPUT_PORTS_START( qzshowby )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN6") PORT_START_TAG("IN4")
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3) PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3) PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3)
@ -2005,7 +2007,7 @@ static INPUT_PORTS_START( silentd ) /* World Version */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_START_TAG("IN5") PORT_START_TAG("IN3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
@ -2015,7 +2017,7 @@ static INPUT_PORTS_START( silentd ) /* World Version */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_START_TAG("IN6") PORT_START_TAG("IN4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START4 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4)
@ -2025,7 +2027,7 @@ static INPUT_PORTS_START( silentd ) /* World Version */
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4)
PORT_START_TAG("IN7") PORT_START_TAG("IN5")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME ("Coin 3 2nd input")/*not sure if this is legal under MAME*/ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME ("Coin 3 2nd input")/*not sure if this is legal under MAME*/
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2)
@ -2091,7 +2093,7 @@ static INPUT_PORTS_START( silentdj )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_START_TAG("IN5") PORT_START_TAG("IN3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START3 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
@ -2101,7 +2103,7 @@ static INPUT_PORTS_START( silentdj )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_START_TAG("IN6") PORT_START_TAG("IN4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START4 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4)
@ -2111,7 +2113,7 @@ static INPUT_PORTS_START( silentdj )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4)
PORT_START_TAG("IN7") PORT_START_TAG("IN5")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME ("Coin 3 2nd input")/*not sure if this is legal under MAME*/ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_IMPULSE(2) PORT_NAME ("Coin 3 2nd input")/*not sure if this is legal under MAME*/
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_IMPULSE(2)

View File

@ -412,6 +412,9 @@ static INPUT_PORTS_START( syvalion )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN2")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG(P1TRACKX_PORT_TAG) PORT_START_TAG(P1TRACKX_PORT_TAG)
PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_X ) PORT_SENSITIVITY(30) PORT_KEYDELTA(30) PORT_RESET PORT_PLAYER(1) PORT_BIT( 0xff, 0x00, IPT_TRACKBALL_X ) PORT_SENSITIVITY(30) PORT_KEYDELTA(30) PORT_RESET PORT_PLAYER(1)

View File

@ -467,6 +467,9 @@ static INPUT_PORTS_START( topland )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_NAME("Freeze") PORT_CODE(KEYCODE_F1) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_NAME("Freeze") PORT_CODE(KEYCODE_F1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN2")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
/* The range of these sticks reflects the range test mode displays. /* The range of these sticks reflects the range test mode displays.
Eventually we want standard 0-0xff input range and a scale-up later Eventually we want standard 0-0xff input range and a scale-up later
in the stick_r routines. And fake DSW with self-centering option in the stick_r routines. And fake DSW with self-centering option
@ -529,6 +532,9 @@ static INPUT_PORTS_START( ainferno )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_NAME("Freeze") PORT_CODE(KEYCODE_F1) PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_OTHER ) PORT_NAME("Freeze") PORT_CODE(KEYCODE_F1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN2")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
/* The range of these sticks reflects the range test mode displays. /* The range of these sticks reflects the range test mode displays.
Eventually we want standard 0-0xff input range and a scale-up later Eventually we want standard 0-0xff input range and a scale-up later
in the stick_r routines. And fake DSW with self-centering option in the stick_r routines. And fake DSW with self-centering option

View File

@ -53,7 +53,7 @@ VIDEO_UPDATE( thief );
static INTERRUPT_GEN( thief_interrupt ) static INTERRUPT_GEN( thief_interrupt )
{ {
/* SLAM switch causes an NMI if it's pressed */ /* SLAM switch causes an NMI if it's pressed */
if( (input_port_read_indexed(machine, 3) & 0x10) == 0 ) if( (input_port_read(machine, "P2") & 0x10) == 0 )
cpunum_set_input_line(machine, 0, INPUT_LINE_NMI, PULSE_LINE); cpunum_set_input_line(machine, 0, INPUT_LINE_NMI, PULSE_LINE);
else else
cpunum_set_input_line(machine, 0, 0, HOLD_LINE); cpunum_set_input_line(machine, 0, 0, HOLD_LINE);
@ -158,10 +158,10 @@ static READ8_HANDLER( thief_io_r )
{ {
switch( thief_input_select ) switch( thief_input_select )
{ {
case 0x01: return input_port_read_indexed(machine, 0); /* dsw#1 */ case 0x01: return input_port_read(machine, "DSW1");
case 0x02: return input_port_read_indexed(machine, 1); /* dsw#2 */ case 0x02: return input_port_read(machine, "DSW2");
case 0x04: return input_port_read_indexed(machine, 2); /* inp#1 */ case 0x04: return input_port_read(machine, "P1");
case 0x08: return input_port_read_indexed(machine, 3); /* inp#2 */ case 0x08: return input_port_read(machine, "P2");
} }
return 0x00; return 0x00;
} }
@ -219,13 +219,13 @@ ADDRESS_MAP_END
/**********************************************************/ /**********************************************************/
static INPUT_PORTS_START( sharkatt ) static INPUT_PORTS_START( sharkatt )
PORT_START /* IN0 */ PORT_START_TAG("DSW1") /* IN0 */
PORT_DIPNAME( 0x7f, 0x7f, DEF_STR( Coinage ) ) PORT_DIPNAME( 0x7f, 0x7f, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x7f, DEF_STR( 1C_1C ) ) // if any are set PORT_DIPSETTING( 0x7f, DEF_STR( 1C_1C ) ) // if any are set
PORT_SERVICE( 0x80, IP_ACTIVE_HIGH ) PORT_SERVICE( 0x80, IP_ACTIVE_HIGH )
PORT_START /* IN1 */ PORT_START_TAG("DSW2") /* IN1 */
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) ) PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" ) PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x01, "4" ) PORT_DIPSETTING( 0x01, "4" )
@ -250,7 +250,7 @@ static INPUT_PORTS_START( sharkatt )
PORT_DIPSETTING( 0x00, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( No ) )
PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) PORT_DIPSETTING( 0x80, DEF_STR( Yes ) )
PORT_START /* IN2 */ PORT_START_TAG("P1") /* IN2 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
@ -260,7 +260,7 @@ static INPUT_PORTS_START( sharkatt )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_START /* IN3 */ PORT_START_TAG("P2") /* IN3 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
@ -272,7 +272,7 @@ static INPUT_PORTS_START( sharkatt )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( thief ) static INPUT_PORTS_START( thief )
PORT_START PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
@ -296,7 +296,7 @@ static INPUT_PORTS_START( thief )
PORT_DIPSETTING( 0x00, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( No ) )
PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) PORT_DIPSETTING( 0x80, DEF_STR( Yes ) )
PORT_START PORT_START_TAG("DSW2")
PORT_DIPNAME( 0x0f, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPNAME( 0x0f, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00|0x0c, "10K" ) PORT_DIPSETTING( 0x00|0x0c, "10K" )
PORT_DIPSETTING( 0x01|0x0c, "20K" ) PORT_DIPSETTING( 0x01|0x0c, "20K" )
@ -319,7 +319,7 @@ static INPUT_PORTS_START( thief )
PORT_DIPSETTING( 0x80|0x60, "I/O Board Test" ) PORT_DIPSETTING( 0x80|0x60, "I/O Board Test" )
PORT_DIPSETTING( 0x80|0x70, "Reserved" ) PORT_DIPSETTING( 0x80|0x70, "Reserved" )
PORT_START PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
@ -329,7 +329,7 @@ static INPUT_PORTS_START( thief )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
@ -341,7 +341,7 @@ static INPUT_PORTS_START( thief )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( natodef ) static INPUT_PORTS_START( natodef )
PORT_START PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
@ -364,7 +364,7 @@ static INPUT_PORTS_START( natodef )
PORT_DIPSETTING( 0x00, DEF_STR( No ) ) PORT_DIPSETTING( 0x00, DEF_STR( No ) )
PORT_DIPSETTING( 0x80, DEF_STR( Yes ) ) PORT_DIPSETTING( 0x80, DEF_STR( Yes ) )
PORT_START PORT_START_TAG("DSW2")
PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) ) PORT_DIPNAME( 0x04, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -386,7 +386,7 @@ static INPUT_PORTS_START( natodef )
PORT_DIPSETTING( 0x80|0x60, "I/O Board Test" ) PORT_DIPSETTING( 0x80|0x60, "I/O Board Test" )
PORT_DIPSETTING( 0x80|0x70, "Reserved" ) PORT_DIPSETTING( 0x80|0x70, "Reserved" )
PORT_START PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
@ -396,7 +396,7 @@ static INPUT_PORTS_START( natodef )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL

View File

@ -52,9 +52,9 @@ static TIMER_CALLBACK( nmi_callback )
/* NMI and watchdog are disabled during service mode */ /* NMI and watchdog are disabled during service mode */
watchdog_enable(machine, input_port_read_indexed(machine, 0) & 0x40); watchdog_enable(machine, input_port_read(machine, "IN0") & 0x40);
if (input_port_read_indexed(machine, 0) & 0x40) if (input_port_read(machine, "IN0") & 0x40)
cpunum_set_input_line(machine, 0, INPUT_LINE_NMI, PULSE_LINE); cpunum_set_input_line(machine, 0, INPUT_LINE_NMI, PULSE_LINE);
timer_set(video_screen_get_time_until_pos(machine->primary_screen, scanline, 0), NULL, scanline, nmi_callback); timer_set(video_screen_get_time_until_pos(machine->primary_screen, scanline, 0), NULL, scanline, nmi_callback);
@ -153,8 +153,8 @@ static ADDRESS_MAP_START( ultratnk_cpu_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x700) AM_READWRITE(ultratnk_wram_r, ultratnk_wram_w) AM_RANGE(0x0080, 0x00ff) AM_MIRROR(0x700) AM_READWRITE(ultratnk_wram_r, ultratnk_wram_w)
AM_RANGE(0x0800, 0x0bff) AM_MIRROR(0x400) AM_RAM_WRITE(ultratnk_video_ram_w) AM_BASE(&videoram) AM_RANGE(0x0800, 0x0bff) AM_MIRROR(0x400) AM_RAM_WRITE(ultratnk_video_ram_w) AM_BASE(&videoram)
AM_RANGE(0x1000, 0x17ff) AM_READ(input_port_0_r) AM_RANGE(0x1000, 0x17ff) AM_READ_PORT("IN0")
AM_RANGE(0x1800, 0x1fff) AM_READ(input_port_1_r) AM_RANGE(0x1800, 0x1fff) AM_READ_PORT("IN1")
AM_RANGE(0x2000, 0x2007) AM_MIRROR(0x718) AM_READ(ultratnk_analog_r) AM_RANGE(0x2000, 0x2007) AM_MIRROR(0x718) AM_READ(ultratnk_analog_r)
AM_RANGE(0x2020, 0x2027) AM_MIRROR(0x718) AM_READ(ultratnk_coin_r) AM_RANGE(0x2020, 0x2027) AM_MIRROR(0x718) AM_READ(ultratnk_coin_r)
@ -179,7 +179,6 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( ultratnk ) static INPUT_PORTS_START( ultratnk )
PORT_START_TAG("IN0") PORT_START_TAG("IN0")
PORT_SERVICE( 0x40, IP_ACTIVE_LOW ) PORT_SERVICE( 0x40, IP_ACTIVE_LOW )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )

View File

@ -52,7 +52,7 @@ static READ32_HANDLER( eeprom_r )
UINT32 r = 0; UINT32 r = 0;
if (ACCESSING_BITS_24_31) if (ACCESSING_BITS_24_31)
r |= (((eeprom_read_bit()) << 1) | (input_port_read_indexed(machine, 6) << 3)) << 24; r |= (((eeprom_read_bit()) << 1) | (input_port_read(machine, "SERVICE") << 3)) << 24;
return r; return r;
} }
@ -69,12 +69,12 @@ static WRITE32_HANDLER( eeprom_w )
static READ32_HANDLER( control1_r ) static READ32_HANDLER( control1_r )
{ {
return (input_port_read_indexed(machine, 0) << 28) | ((input_port_read_indexed(machine, 1) & 0xfff) << 16) | (input_port_read_indexed(machine, 2) & 0xfff); return (input_port_read(machine, "P1") << 28) | ((input_port_read(machine, "STICKX1") & 0xfff) << 16) | (input_port_read(machine, "STICKY1") & 0xfff);
} }
static READ32_HANDLER( control2_r ) static READ32_HANDLER( control2_r )
{ {
return (input_port_read_indexed(machine, 3) << 28) | ((input_port_read_indexed(machine, 4) & 0xfff) << 16) | (input_port_read_indexed(machine, 5) & 0xfff); return (input_port_read(machine, "P2") << 28) | ((input_port_read(machine, "STICKX2") & 0xfff) << 16) | (input_port_read(machine, "STICKY2") & 0xfff);
} }
static WRITE32_HANDLER( int_ack_w ) static WRITE32_HANDLER( int_ack_w )
@ -178,29 +178,29 @@ ADDRESS_MAP_END
/*****************************************************************************/ /*****************************************************************************/
static INPUT_PORTS_START( ultrsprt ) static INPUT_PORTS_START( ultrsprt )
PORT_START PORT_START_TAG("P1")
PORT_BIT( 0x4, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_BIT( 0x4, IP_ACTIVE_HIGH, IPT_COIN1 )
PORT_BIT( 0x2, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x2, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x1, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x1, IP_ACTIVE_HIGH, IPT_START1 )
PORT_START PORT_START_TAG("STICKX1")
PORT_BIT( 0xfff, 0x800, IPT_AD_STICK_X ) PORT_MINMAX(0x000,0xfff) PORT_SENSITIVITY(70) PORT_KEYDELTA(10) PORT_PLAYER(1) PORT_BIT( 0xfff, 0x800, IPT_AD_STICK_X ) PORT_MINMAX(0x000,0xfff) PORT_SENSITIVITY(70) PORT_KEYDELTA(10) PORT_PLAYER(1)
PORT_START PORT_START_TAG("STICKY1")
PORT_BIT( 0xfff, 0x800, IPT_AD_STICK_Y ) PORT_MINMAX(0x000,0xfff) PORT_SENSITIVITY(70) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(1) PORT_BIT( 0xfff, 0x800, IPT_AD_STICK_Y ) PORT_MINMAX(0x000,0xfff) PORT_SENSITIVITY(70) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(1)
PORT_START PORT_START_TAG("P2")
PORT_BIT( 0x4, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_BIT( 0x4, IP_ACTIVE_HIGH, IPT_SERVICE1 )
PORT_BIT( 0x2, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x2, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x1, IP_ACTIVE_HIGH, IPT_START2 ) PORT_BIT( 0x1, IP_ACTIVE_HIGH, IPT_START2 )
PORT_START PORT_START_TAG("STICKX2")
PORT_BIT( 0xfff, 0x800, IPT_AD_STICK_X ) PORT_MINMAX(0x000,0xfff) PORT_SENSITIVITY(70) PORT_KEYDELTA(10) PORT_PLAYER(2) PORT_BIT( 0xfff, 0x800, IPT_AD_STICK_X ) PORT_MINMAX(0x000,0xfff) PORT_SENSITIVITY(70) PORT_KEYDELTA(10) PORT_PLAYER(2)
PORT_START PORT_START_TAG("STICKY2")
PORT_BIT( 0xfff, 0x800, IPT_AD_STICK_Y ) PORT_MINMAX(0x000,0xfff) PORT_SENSITIVITY(70) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(2) PORT_BIT( 0xfff, 0x800, IPT_AD_STICK_Y ) PORT_MINMAX(0x000,0xfff) PORT_SENSITIVITY(70) PORT_KEYDELTA(10) PORT_REVERSE PORT_PLAYER(2)
PORT_START PORT_START_TAG("SERVICE")
PORT_SERVICE_NO_TOGGLE( 0x1, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x1, IP_ACTIVE_LOW )
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -291,13 +291,13 @@ static READ32_HANDLER( undrfire_input_r )
{ {
case 0x00: case 0x00:
{ {
return (input_port_read_indexed(machine,0) << 16) | input_port_read_indexed(machine,1) | return (input_port_read(machine, "IN0") << 16) | input_port_read(machine, "IN1") |
(eeprom_read_bit() << 7) | frame_counter; (eeprom_read_bit() << 7) | frame_counter;
} }
case 0x01: case 0x01:
{ {
return input_port_read_indexed(machine,2) | (coin_word << 16); return input_port_read(machine, "IN2") | (coin_word << 16);
} }
} }
@ -405,8 +405,8 @@ static READ32_HANDLER( undrfire_lightgun_r )
case 0x00: /* P1 */ case 0x00: /* P1 */
{ {
x = input_port_read_indexed(machine,3) << 6; x = input_port_read(machine, "GUNX1") << 6;
y = input_port_read_indexed(machine,4) << 6; y = input_port_read(machine, "GUNY1") << 6;
return ((x << 24) &0xff000000) | ((x << 8) &0xff0000) return ((x << 24) &0xff000000) | ((x << 8) &0xff0000)
| ((y << 8) &0xff00) | ((y >> 8) &0xff) ; | ((y << 8) &0xff00) | ((y >> 8) &0xff) ;
@ -414,8 +414,8 @@ static READ32_HANDLER( undrfire_lightgun_r )
case 0x01: /* P2 */ case 0x01: /* P2 */
{ {
x = input_port_read_indexed(machine,5) << 6; x = input_port_read(machine, "GUNX2") << 6;
y = input_port_read_indexed(machine,6) << 6; y = input_port_read(machine, "GUNY2") << 6;
return ((x << 24) &0xff000000) | ((x << 8) &0xff0000) return ((x << 24) &0xff000000) | ((x << 8) &0xff0000)
| ((y << 8) &0xff00) | ((y >> 8) &0xff) ; | ((y << 8) &0xff00) | ((y >> 8) &0xff) ;
@ -471,7 +471,7 @@ static WRITE32_HANDLER( cbombers_cpua_ctrl_w )
static READ32_HANDLER( cbombers_adc_r ) static READ32_HANDLER( cbombers_adc_r )
{ {
return (input_port_read_indexed(machine, 3) << 24); return (input_port_read(machine, "STEER") << 24);
} }
static WRITE32_HANDLER( cbombers_adc_w ) static WRITE32_HANDLER( cbombers_adc_w )
@ -587,16 +587,16 @@ static INPUT_PORTS_START( undrfire )
/* Gun inputs (real range is 0-0xffff: we use standard 0-255 and shift later) */ /* Gun inputs (real range is 0-0xffff: we use standard 0-255 and shift later) */
PORT_START_TAG("IN3") /* IN 3, P1X */ PORT_START_TAG("GUNX1") /* IN 3, P1X */
PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, -1.0, 0.0, 0) PORT_SENSITIVITY(20) PORT_KEYDELTA(25) PORT_REVERSE PORT_PLAYER(1) PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, -1.0, 0.0, 0) PORT_SENSITIVITY(20) PORT_KEYDELTA(25) PORT_REVERSE PORT_PLAYER(1)
PORT_START_TAG("IN4") /* IN 4, P1Y */ PORT_START_TAG("GUNY1") /* IN 4, P1Y */
PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(20) PORT_KEYDELTA(25) PORT_PLAYER(1) PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(20) PORT_KEYDELTA(25) PORT_PLAYER(1)
PORT_START_TAG("IN5") /* IN 5, P2X */ PORT_START_TAG("GUNX2") /* IN 5, P2X */
PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, -1.0, 0.0, 0) PORT_SENSITIVITY(20) PORT_KEYDELTA(25) PORT_REVERSE PORT_PLAYER(2) PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_X ) PORT_CROSSHAIR(X, -1.0, 0.0, 0) PORT_SENSITIVITY(20) PORT_KEYDELTA(25) PORT_REVERSE PORT_PLAYER(2)
PORT_START_TAG("IN6") /* IN 6, P2Y */ PORT_START_TAG("GUNY2") /* IN 6, P2Y */
PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(20) PORT_KEYDELTA(25) PORT_PLAYER(2) PORT_BIT( 0xff, 0x80, IPT_LIGHTGUN_Y ) PORT_CROSSHAIR(Y, 1.0, 0.0, 0) PORT_SENSITIVITY(20) PORT_KEYDELTA(25) PORT_PLAYER(2)
PORT_START_TAG("FAKE") PORT_START_TAG("FAKE")
@ -654,7 +654,7 @@ static INPUT_PORTS_START( cbombers )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN3") /* IN 3, steering wheel */ PORT_START_TAG("STEER") /* IN 3, steering wheel */
PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_X ) PORT_SENSITIVITY(25) PORT_KEYDELTA(15) PORT_REVERSE PORT_PLAYER(1) PORT_BIT( 0xff, 0x7f, IPT_AD_STICK_X ) PORT_SENSITIVITY(25) PORT_KEYDELTA(15) PORT_REVERSE PORT_PLAYER(1)
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -202,12 +202,12 @@ F94B
static READ32_HANDLER( finalgdr_input0_r ) static READ32_HANDLER( finalgdr_input0_r )
{ {
return input_port_read_indexed(machine, 0) << 16; return input_port_read(machine, "P1_P2") << 16;
} }
static READ32_HANDLER( finalgdr_input1_r ) static READ32_HANDLER( finalgdr_input1_r )
{ {
return input_port_read_indexed(machine, 1) << 16; return input_port_read(machine, "SYSTEM") << 16;
} }
static WRITE32_HANDLER( finalgdr_oki_bank_w ) static WRITE32_HANDLER( finalgdr_oki_bank_w )
@ -268,23 +268,23 @@ static ADDRESS_MAP_START( vamphalf_io, ADDRESS_SPACE_IO, 16 )
AM_RANGE(0x144, 0x147) AM_READWRITE(ym2151_status_r, ym2151_data_w) AM_RANGE(0x144, 0x147) AM_READWRITE(ym2151_status_r, ym2151_data_w)
AM_RANGE(0x1c0, 0x1c3) AM_READ(eeprom_r) AM_RANGE(0x1c0, 0x1c3) AM_READ(eeprom_r)
AM_RANGE(0x240, 0x243) AM_WRITE(flipscreen_w) AM_RANGE(0x240, 0x243) AM_WRITE(flipscreen_w)
AM_RANGE(0x600, 0x603) AM_READ(input_port_1_word_r) AM_RANGE(0x600, 0x603) AM_READ_PORT("SYSTEM")
AM_RANGE(0x604, 0x607) AM_READ(input_port_0_word_r) AM_RANGE(0x604, 0x607) AM_READ_PORT("P1_P2")
AM_RANGE(0x608, 0x60b) AM_WRITE(eeprom_w) AM_RANGE(0x608, 0x60b) AM_WRITE(eeprom_w)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( misncrft_io, ADDRESS_SPACE_IO, 16 ) static ADDRESS_MAP_START( misncrft_io, ADDRESS_SPACE_IO, 16 )
AM_RANGE(0x100, 0x103) AM_WRITE(flipscreen_w) AM_RANGE(0x100, 0x103) AM_WRITE(flipscreen_w)
AM_RANGE(0x200, 0x203) AM_READ(input_port_0_word_r) AM_RANGE(0x200, 0x203) AM_READ_PORT("P1_P2")
AM_RANGE(0x240, 0x243) AM_READ(input_port_1_word_r) AM_RANGE(0x240, 0x243) AM_READ_PORT("SYSTEM")
AM_RANGE(0x3c0, 0x3c3) AM_WRITE(eeprom_w) AM_RANGE(0x3c0, 0x3c3) AM_WRITE(eeprom_w)
AM_RANGE(0x580, 0x583) AM_READ(eeprom_r) AM_RANGE(0x580, 0x583) AM_READ(eeprom_r)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( coolmini_io, ADDRESS_SPACE_IO, 16 ) static ADDRESS_MAP_START( coolmini_io, ADDRESS_SPACE_IO, 16 )
AM_RANGE(0x200, 0x203) AM_WRITE(flipscreen_w) AM_RANGE(0x200, 0x203) AM_WRITE(flipscreen_w)
AM_RANGE(0x300, 0x303) AM_READ(input_port_1_word_r) AM_RANGE(0x300, 0x303) AM_READ_PORT("SYSTEM")
AM_RANGE(0x304, 0x307) AM_READ(input_port_0_word_r) AM_RANGE(0x304, 0x307) AM_READ_PORT("P1_P2")
AM_RANGE(0x308, 0x30b) AM_WRITE(eeprom_w) AM_RANGE(0x308, 0x30b) AM_WRITE(eeprom_w)
AM_RANGE(0x4c0, 0x4c3) AM_READWRITE(oki_r, oki_w) AM_RANGE(0x4c0, 0x4c3) AM_READWRITE(oki_r, oki_w)
AM_RANGE(0x540, 0x543) AM_WRITE(ym2151_register_w) AM_RANGE(0x540, 0x543) AM_WRITE(ym2151_register_w)
@ -294,8 +294,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( suplup_io, ADDRESS_SPACE_IO, 16 ) static ADDRESS_MAP_START( suplup_io, ADDRESS_SPACE_IO, 16 )
AM_RANGE(0x020, 0x023) AM_WRITE(eeprom_w) AM_RANGE(0x020, 0x023) AM_WRITE(eeprom_w)
AM_RANGE(0x040, 0x043) AM_READ(input_port_0_word_r) AM_RANGE(0x040, 0x043) AM_READ_PORT("P1_P2")
AM_RANGE(0x060, 0x063) AM_READ(input_port_1_word_r) AM_RANGE(0x060, 0x063) AM_READ_PORT("SYSTEM")
AM_RANGE(0x080, 0x083) AM_READWRITE(oki_r, oki_w) AM_RANGE(0x080, 0x083) AM_READWRITE(oki_r, oki_w)
AM_RANGE(0x0c0, 0x0c3) AM_WRITE(ym2151_register_w) AM_RANGE(0x0c0, 0x0c3) AM_WRITE(ym2151_register_w)
AM_RANGE(0x0c4, 0x0c7) AM_READWRITE(ym2151_status_r, ym2151_data_w) AM_RANGE(0x0c4, 0x0c7) AM_READWRITE(ym2151_status_r, ym2151_data_w)
@ -305,8 +305,8 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( wyvernwg_io, ADDRESS_SPACE_IO, 32 ) static ADDRESS_MAP_START( wyvernwg_io, ADDRESS_SPACE_IO, 32 )
AM_RANGE(0x1800, 0x1803) AM_READWRITE(wyvernwg_prot_r, wyvernwg_prot_w) AM_RANGE(0x1800, 0x1803) AM_READWRITE(wyvernwg_prot_r, wyvernwg_prot_w)
AM_RANGE(0x2000, 0x2003) AM_WRITE(flipscreen32_w) AM_RANGE(0x2000, 0x2003) AM_WRITE(flipscreen32_w)
AM_RANGE(0x2800, 0x2803) AM_READ(input_port_0_dword_r) AM_RANGE(0x2800, 0x2803) AM_READ_PORT("P1_P2")
AM_RANGE(0x3000, 0x3003) AM_READ(input_port_1_dword_r) AM_RANGE(0x3000, 0x3003) AM_READ_PORT("SYSTEM")
AM_RANGE(0x5400, 0x5403) AM_WRITENOP // soundlatch AM_RANGE(0x5400, 0x5403) AM_WRITENOP // soundlatch
AM_RANGE(0x7000, 0x7003) AM_WRITE(eeprom32_w) AM_RANGE(0x7000, 0x7003) AM_WRITE(eeprom32_w)
AM_RANGE(0x7c00, 0x7c03) AM_READ(eeprom32_r) AM_RANGE(0x7c00, 0x7c03) AM_READ(eeprom32_r)
@ -435,7 +435,7 @@ static VIDEO_UPDATE( common )
static INPUT_PORTS_START( common ) static INPUT_PORTS_START( common )
PORT_START PORT_START_TAG("P1_P2")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
@ -453,7 +453,7 @@ static INPUT_PORTS_START( common )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2)
PORT_START PORT_START_TAG("SYSTEM")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN2 )
@ -466,34 +466,19 @@ static INPUT_PORTS_START( common )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( finalgdr ) static INPUT_PORTS_START( finalgdr )
PORT_START PORT_INCLUDE( common )
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) PORT_MODIFY("P1_P2")
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_START2 )
PORT_START PORT_MODIFY("SYSTEM")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_SERVICE_NO_TOGGLE( 0x0080, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x0080, IP_ACTIVE_LOW )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -5,7 +5,7 @@
Kuhga (Japanese version) (c) 1989 Data East Corporation Kuhga (Japanese version) (c) 1989 Data East Corporation
Emulation by Bryan McPhail, mish@tendril.co.uk Emulation by Bryan McPhail, mish@tendril.co.uk
added pal & prom-maps - Highwayman. added pal & prom-maps - Highwayman.
***************************************************************************/ ***************************************************************************/
#include "driver.h" #include "driver.h"
@ -37,11 +37,11 @@ static READ16_HANDLER( vaportra_control_r )
switch (offset<<1) switch (offset<<1)
{ {
case 4: /* Dip Switches */ case 4: /* Dip Switches */
return (input_port_read_indexed(machine, 4) + (input_port_read_indexed(machine, 3) << 8)); return (input_port_read(machine, "DSW2") + (input_port_read(machine, "DSW1") << 8));
case 2: /* Credits */ case 2: /* Credits */
return input_port_read_indexed(machine, 2); return input_port_read(machine, "COINS");
case 0: /* Player 1 & Player 2 joysticks & fire buttons */ case 0: /* Player 1 & Player 2 joysticks & fire buttons */
return (input_port_read_indexed(machine, 0) + (input_port_read_indexed(machine, 1) << 8)); return (input_port_read(machine, "P1") + (input_port_read(machine, "P2") << 8));
} }
logerror("Unknown control read at %d\n",offset); logerror("Unknown control read at %d\n",offset);
@ -117,7 +117,7 @@ ADDRESS_MAP_END
/******************************************************************************/ /******************************************************************************/
static INPUT_PORTS_START( vaportra ) static INPUT_PORTS_START( vaportra )
PORT_START /* Player 1 controls */ PORT_START_TAG("P1") /* Player 1 controls */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
@ -127,7 +127,7 @@ static INPUT_PORTS_START( vaportra )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START /* Player 2 controls */ PORT_START_TAG("P2") /* Player 2 controls */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) 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( 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) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -137,7 +137,7 @@ static INPUT_PORTS_START( vaportra )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
PORT_START /* Credits */ PORT_START_TAG("COINS") /* Credits */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
@ -147,7 +147,7 @@ static INPUT_PORTS_START( vaportra )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* Dip switch bank 1 */ PORT_START_TAG("DSW1") /* Dip switch bank 1 */
PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) ) PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
@ -171,7 +171,7 @@ static INPUT_PORTS_START( vaportra )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_START /* Dip switch bank 2 */ PORT_START_TAG("DSW2") /* Dip switch bank 2 */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) ) PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "2" ) PORT_DIPSETTING( 0x00, "2" )
PORT_DIPSETTING( 0x03, "3" ) PORT_DIPSETTING( 0x03, "3" )

View File

@ -77,8 +77,9 @@ static WRITE32_HANDLER( vega_misc_w )
static READ32_HANDLER( vegaeo_custom_read ) static READ32_HANDLER( vegaeo_custom_read )
{ {
eolith_speedup_read(); eolith_speedup_read();
return input_port_read_indexed(machine, 0); return input_port_read(machine, "SYSTEM");
} }
static ADDRESS_MAP_START( vega_map, ADDRESS_SPACE_PROGRAM, 32 ) static ADDRESS_MAP_START( vega_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x00000000, 0x001fffff) AM_RAM AM_RANGE(0x00000000, 0x001fffff) AM_RAM
AM_RANGE(0x80000000, 0x80013fff) AM_READWRITE(vega_vram_r, vega_vram_w) AM_RANGE(0x80000000, 0x80013fff) AM_READWRITE(vega_vram_r, vega_vram_w)
@ -88,13 +89,13 @@ static ADDRESS_MAP_START( vega_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0xfc600000, 0xfc600003) AM_WRITENOP // soundlatch AM_RANGE(0xfc600000, 0xfc600003) AM_WRITENOP // soundlatch
AM_RANGE(0xfca00000, 0xfca00003) AM_WRITE(vega_misc_w) AM_RANGE(0xfca00000, 0xfca00003) AM_WRITE(vega_misc_w)
AM_RANGE(0xfcc00000, 0xfcc00003) AM_READ(vegaeo_custom_read) AM_RANGE(0xfcc00000, 0xfcc00003) AM_READ(vegaeo_custom_read)
AM_RANGE(0xfce00000, 0xfce00003) AM_READ(input_port_1_dword_r) AM_RANGE(0xfce00000, 0xfce00003) AM_READ_PORT("P1_P2")
AM_RANGE(0xfd000000, 0xfeffffff) AM_ROM AM_REGION(REGION_USER1, 0) AM_RANGE(0xfd000000, 0xfeffffff) AM_ROM AM_REGION(REGION_USER1, 0)
AM_RANGE(0xfff80000, 0xffffffff) AM_ROM AM_REGION(REGION_CPU1, 0) AM_RANGE(0xfff80000, 0xffffffff) AM_ROM AM_REGION(REGION_CPU1, 0)
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( crazywar ) static INPUT_PORTS_START( crazywar )
PORT_START_TAG("IN0") PORT_START_TAG("SYSTEM")
PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_START1 )
@ -105,7 +106,7 @@ static INPUT_PORTS_START( crazywar )
PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x00000080, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xffffff00, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xffffff00, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("P1_P2")
PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)

View File

@ -1442,9 +1442,11 @@ static READ32_HANDLER( analog_port_r )
static WRITE32_HANDLER( analog_port_w ) static WRITE32_HANDLER( analog_port_w )
{ {
static const char *portnames[] = { "AN0", "AN1", "AN2", "AN3", "AN4", "AN5", "AN6", "AN7" };
if (data < 8 || data > 15) if (data < 8 || data > 15)
logerror("%08X:Unexpected analog port select = %08X\n", activecpu_get_pc(), data); logerror("%08X:Unexpected analog port select = %08X\n", activecpu_get_pc(), data);
pending_analog_read = input_port_read_indexed(machine, 4 + (data & 7)); pending_analog_read = input_port_read_safe(machine, portnames[data & 7], 0);
} }
@ -1943,28 +1945,28 @@ static INPUT_PORTS_START( warfa )
PORT_DIPSETTING( 0x4000, "Medium Res 512x384" ) PORT_DIPSETTING( 0x4000, "Medium Res 512x384" )
PORT_DIPSETTING( 0x0000, "VGA Res 640x480" ) PORT_DIPSETTING( 0x0000, "VGA Res 640x480" )
PORT_START PORT_START_TAG("AN0")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_PLAYER(1) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_PLAYER(1)
PORT_START PORT_START_TAG("AN1")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_PLAYER(1) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_PLAYER(1)
PORT_START PORT_START_TAG("AN2")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN3")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN4")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN5")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN6")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN7")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
INPUT_PORTS_END INPUT_PORTS_END
@ -1987,28 +1989,28 @@ static INPUT_PORTS_START( roadburn )
PORT_DIPSETTING( 0x0200, "Medium Res 512x384" ) PORT_DIPSETTING( 0x0200, "Medium Res 512x384" )
PORT_DIPSETTING( 0x0000, "VGA Res 640x480" ) PORT_DIPSETTING( 0x0000, "VGA Res 640x480" )
PORT_START PORT_START_TAG("AN0")
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5)
PORT_START PORT_START_TAG("AN1")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20)
PORT_START PORT_START_TAG("AN2")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2)
PORT_START PORT_START_TAG("AN3")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN4")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN5")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN6")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN7")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
INPUT_PORTS_END INPUT_PORTS_END
@ -2083,28 +2085,28 @@ static INPUT_PORTS_START( sf2049 )
PORT_DIPSETTING( 0x0200, "Medium Res 512x384" ) PORT_DIPSETTING( 0x0200, "Medium Res 512x384" )
PORT_DIPSETTING( 0x0300, "VGA Res 640x480" ) PORT_DIPSETTING( 0x0300, "VGA Res 640x480" )
PORT_START PORT_START_TAG("AN0")
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5)
PORT_START PORT_START_TAG("AN1")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20)
PORT_START PORT_START_TAG("AN2")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2)
PORT_START PORT_START_TAG("AN3")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN4")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN5")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN6")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN7")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
INPUT_PORTS_END INPUT_PORTS_END
@ -2114,28 +2116,28 @@ static INPUT_PORTS_START( sf2049se )
PORT_MODIFY("DIPS") PORT_MODIFY("DIPS")
PORT_START PORT_START_TAG("AN0")
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5)
PORT_START PORT_START_TAG("AN1")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20)
PORT_START PORT_START_TAG("AN2")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2)
PORT_START PORT_START_TAG("AN3")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN4")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN5")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN6")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN7")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
INPUT_PORTS_END INPUT_PORTS_END
@ -2145,28 +2147,28 @@ static INPUT_PORTS_START( sf2049te )
PORT_MODIFY("DIPS") PORT_MODIFY("DIPS")
PORT_START PORT_START_TAG("AN0")
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5)
PORT_START PORT_START_TAG("AN1")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20)
PORT_START PORT_START_TAG("AN2")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2)
PORT_START PORT_START_TAG("AN3")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN4")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN5")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN6")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN7")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
INPUT_PORTS_END INPUT_PORTS_END
@ -2176,28 +2178,28 @@ static INPUT_PORTS_START( cartfury )
PORT_MODIFY("DIPS") PORT_MODIFY("DIPS")
PORT_START PORT_START_TAG("AN0")
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_MINMAX(0x10, 0xf0) PORT_SENSITIVITY(25) PORT_KEYDELTA(5)
PORT_START PORT_START_TAG("AN1")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(20)
PORT_START PORT_START_TAG("AN2")
PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2) PORT_BIT( 0xff, 0x80, IPT_PEDAL ) PORT_MINMAX(0x00, 0xff) PORT_SENSITIVITY(25) PORT_KEYDELTA(100) PORT_PLAYER(2)
PORT_START PORT_START_TAG("AN3")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN4")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN5")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN6")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
PORT_START PORT_START_TAG("AN7")
PORT_BIT( 0xff, 0x80, IPT_SPECIAL ) PORT_BIT( 0xff, 0x80, IPT_SPECIAL )
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -148,9 +148,9 @@ static READ8_HANDLER( vendetta_eeprom_r )
res = eeprom_read_bit(); res = eeprom_read_bit();
res |= 0x02;//konami_eeprom_ack() << 5; /* add the ack */ res |= 0x02; //konami_eeprom_ack() << 5; /* add the ack */
res |= input_port_read_indexed(machine, 3 ) & 0x0c; /* test switch */ res |= input_port_read(machine, "EEPROM") & 0x0c; /* test switch */
if (init_eeprom_count) if (init_eeprom_count)
{ {
@ -267,12 +267,12 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_READ(SMH_BANK1 ) AM_RANGE(0x0000, 0x1fff) AM_READ(SMH_BANK1 )
AM_RANGE(0x2000, 0x3fff) AM_READ(SMH_RAM) AM_RANGE(0x2000, 0x3fff) AM_READ(SMH_RAM)
AM_RANGE(0x5f80, 0x5f9f) AM_READ(K054000_r) AM_RANGE(0x5f80, 0x5f9f) AM_READ(K054000_r)
AM_RANGE(0x5fc0, 0x5fc0) AM_READ(input_port_0_r) AM_RANGE(0x5fc0, 0x5fc0) AM_READ_PORT("P1")
AM_RANGE(0x5fc1, 0x5fc1) AM_READ(input_port_1_r) AM_RANGE(0x5fc1, 0x5fc1) AM_READ_PORT("P2")
AM_RANGE(0x5fc2, 0x5fc2) AM_READ(input_port_4_r) AM_RANGE(0x5fc2, 0x5fc2) AM_READ_PORT("P3")
AM_RANGE(0x5fc3, 0x5fc3) AM_READ(input_port_5_r) AM_RANGE(0x5fc3, 0x5fc3) AM_READ_PORT("P4")
AM_RANGE(0x5fd0, 0x5fd0) AM_READ(vendetta_eeprom_r) /* vblank, service */ AM_RANGE(0x5fd0, 0x5fd0) AM_READ(vendetta_eeprom_r) /* vblank, service */
AM_RANGE(0x5fd1, 0x5fd1) AM_READ(input_port_2_r) AM_RANGE(0x5fd1, 0x5fd1) AM_READ_PORT("SERVICE")
AM_RANGE(0x5fe4, 0x5fe4) AM_READ(vendetta_sound_interrupt_r) AM_RANGE(0x5fe4, 0x5fe4) AM_READ(vendetta_sound_interrupt_r)
AM_RANGE(0x5fe6, 0x5fe7) AM_READ(vendetta_sound_r) AM_RANGE(0x5fe6, 0x5fe7) AM_READ(vendetta_sound_r)
AM_RANGE(0x5fe8, 0x5fe9) AM_READ(K053246_r) AM_RANGE(0x5fe8, 0x5fe9) AM_READ(K053246_r)
@ -303,13 +303,13 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( esckids_readmem, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( esckids_readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_READ(SMH_RAM) // 053248 64K SRAM AM_RANGE(0x0000, 0x1fff) AM_READ(SMH_RAM) // 053248 64K SRAM
AM_RANGE(0x3f80, 0x3f80) AM_READ(input_port_0_r) // Player 1 Control AM_RANGE(0x3f80, 0x3f80) AM_READ_PORT("P1")
AM_RANGE(0x3f81, 0x3f81) AM_READ(input_port_1_r) // Player 2 Control AM_RANGE(0x3f81, 0x3f81) AM_READ_PORT("P2")
AM_RANGE(0x3f82, 0x3f82) AM_READ(input_port_4_r) // Player 3 Control ??? (But not used) AM_RANGE(0x3f82, 0x3f82) AM_READ_PORT("P3") // ??? (But not used)
AM_RANGE(0x3f83, 0x3f83) AM_READ(input_port_5_r) // Player 4 Control ??? (But not used) AM_RANGE(0x3f83, 0x3f83) AM_READ_PORT("P4") // ??? (But not used)
AM_RANGE(0x3f92, 0x3f92) AM_READ(vendetta_eeprom_r) // vblank, TEST SW on PCB AM_RANGE(0x3f92, 0x3f92) AM_READ(vendetta_eeprom_r) // vblank, TEST SW on PCB
AM_RANGE(0x3f93, 0x3f93) AM_READ(input_port_2_r) // Start, Service AM_RANGE(0x3f93, 0x3f93) AM_READ_PORT("SERVICE")
AM_RANGE(0x3fd4, 0x3fd4) AM_READ(vendetta_sound_interrupt_r) // Sound AM_RANGE(0x3fd4, 0x3fd4) AM_READ(vendetta_sound_interrupt_r) // Sound
AM_RANGE(0x3fd6, 0x3fd7) AM_READ(vendetta_sound_r) // Sound AM_RANGE(0x3fd6, 0x3fd7) AM_READ(vendetta_sound_r) // Sound
AM_RANGE(0x3fd8, 0x3fd9) AM_READ(K053246_r) // 053246 (Sprite) AM_RANGE(0x3fd8, 0x3fd9) AM_READ(K053246_r) // 053246 (Sprite)
/* what is the desired effect of overlapping these memory regions anyway? */ /* what is the desired effect of overlapping these memory regions anyway? */
@ -363,7 +363,7 @@ ADDRESS_MAP_END
***************************************************************************/ ***************************************************************************/
static INPUT_PORTS_START( vendet4p ) static INPUT_PORTS_START( vendet4p )
PORT_START_TAG("IN0") PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
@ -373,7 +373,7 @@ static INPUT_PORTS_START( vendet4p )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_START_TAG("IN1") PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
@ -383,7 +383,7 @@ static INPUT_PORTS_START( vendet4p )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START_TAG("IN2") PORT_START_TAG("SERVICE")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -393,14 +393,14 @@ static INPUT_PORTS_START( vendet4p )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN3") PORT_START_TAG("EEPROM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM data */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM data */
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM ready */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM ready */
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW) PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VBLANK ) /* not really vblank, object related. Its timed, otherwise sprites flicker */ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VBLANK ) /* not really vblank, object related. Its timed, otherwise sprites flicker */
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("IN4") PORT_START_TAG("P3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3)
@ -410,7 +410,7 @@ static INPUT_PORTS_START( vendet4p )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_START_TAG("IN5") PORT_START_TAG("P4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4)
@ -422,27 +422,9 @@ static INPUT_PORTS_START( vendet4p )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( vendetta ) static INPUT_PORTS_START( vendetta )
PORT_START_TAG("IN0") PORT_INCLUDE( vendet4p )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
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_COIN1 )
PORT_START_TAG("IN1") PORT_MODIFY("SERVICE")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY 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_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -452,16 +434,15 @@ static INPUT_PORTS_START( vendetta )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN3") PORT_MODIFY("P3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM data */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM ready */
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW) PORT_MODIFY("P4")
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VBLANK ) /* not really vblank, object related. Its timed, otherwise sprites flicker */ PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( esckids ) static INPUT_PORTS_START( esckids )
PORT_START_TAG("IN0") // Player 1 Control PORT_START_TAG("P1") // Player 1 Control
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
@ -471,7 +452,7 @@ static INPUT_PORTS_START( esckids )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_START_TAG("IN1") // Player 2 Control PORT_START_TAG("P2") // Player 2 Control
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
@ -481,7 +462,7 @@ static INPUT_PORTS_START( esckids )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START_TAG("IN2") // Start, Service PORT_START_TAG("SERVICE") // Start, Service
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -491,14 +472,14 @@ static INPUT_PORTS_START( esckids )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN3") PORT_START_TAG("EEPROM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM data */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM data */
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM ready */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM ready */
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW) PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VBLANK ) /* not really vblank, object related. Its timed, otherwise sprites flicker */ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VBLANK ) /* not really vblank, object related. Its timed, otherwise sprites flicker */
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("IN4") // Player 3 Control ??? (Not used) PORT_START_TAG("P3") // Player 3 Control ??? (Not used)
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3)
@ -508,7 +489,7 @@ static INPUT_PORTS_START( esckids )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_START_TAG("IN5") // Player 4 Control ??? (Not used) PORT_START_TAG("P4") // Player 4 Control ??? (Not used)
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4)
@ -520,42 +501,13 @@ static INPUT_PORTS_START( esckids )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( esckidsj ) static INPUT_PORTS_START( esckidsj )
PORT_START_TAG("IN0") // Player 1 Control PORT_INCLUDE( esckids )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY 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_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_START_TAG("IN1") // Player 2 Control PORT_MODIFY("P3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY 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_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START_TAG("IN2") // Start, Service PORT_MODIFY("P4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
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_SERVICE1 )
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_TAG("IN3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM data */
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM ready */
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW)
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_VBLANK ) /* not really vblank, object related. Its timed, otherwise sprites flicker */
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END INPUT_PORTS_END
/*************************************************************************** /***************************************************************************

View File

@ -67,13 +67,13 @@ ADDRESS_MAP_END
*************************************/ *************************************/
static INPUT_PORTS_START( vertigo ) static INPUT_PORTS_START( vertigo )
PORT_START_TAG("IN0") PORT_START_TAG("P1X")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10)
PORT_START_TAG("IN1") PORT_START_TAG("P1Y")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10)
PORT_START_TAG("IN2") PORT_START_TAG("PADDLE")
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_CODE_DEC(KEYCODE_Y) PORT_CODE_INC(KEYCODE_X) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(100) PORT_KEYDELTA(10) PORT_CODE_DEC(KEYCODE_Y) PORT_CODE_INC(KEYCODE_X)
PORT_START_TAG("GIO") PORT_START_TAG("GIO")
@ -91,7 +91,6 @@ static INPUT_PORTS_START( vertigo )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -268,8 +268,8 @@ static READ8_HANDLER( depthch_io_r )
{ {
UINT8 ret = 0; UINT8 ret = 0;
if (offset & 0x01) ret = input_port_read_indexed(machine, 0); if (offset & 0x01) ret = input_port_read(machine, "IN0");
if (offset & 0x08) ret = input_port_read_indexed(machine, 1); if (offset & 0x08) ret = input_port_read(machine, "IN1");
return ret; return ret;
} }
@ -305,11 +305,11 @@ static INPUT_PORTS_START( depthch )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY
PORT_DIPNAME (0x30, 0x30, DEF_STR( Coinage ) ) PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coinage ) )
PORT_DIPSETTING ( 0x00, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) )
PORT_DIPSETTING ( 0x10, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x10, DEF_STR( 3C_1C ) )
PORT_DIPSETTING ( 0x20, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) )
PORT_DIPSETTING ( 0x30, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) )
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */ PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */
PORT_START_TAG("IN1") PORT_START_TAG("IN1")
@ -350,8 +350,8 @@ static READ8_HANDLER( safari_io_r )
{ {
UINT8 ret = 0; UINT8 ret = 0;
if (offset & 0x01) ret = input_port_read_indexed(machine, 0); if (offset & 0x01) ret = input_port_read(machine, "IN0");
if (offset & 0x08) ret = input_port_read_indexed(machine, 1); if (offset & 0x08) ret = input_port_read(machine, "IN1");
return ret; return ret;
} }
@ -389,19 +389,19 @@ static INPUT_PORTS_START( safari )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT (0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Aim Up") PORT_CODE(KEYCODE_A) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Aim Up") PORT_CODE(KEYCODE_A)
PORT_BIT (0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Aim Down") PORT_CODE(KEYCODE_Z) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Aim Down") PORT_CODE(KEYCODE_Z)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_START_TAG("IN1") PORT_START_TAG("IN1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(vicdual_get_64v, 0) PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(vicdual_get_64v, 0)
PORT_BIT( 0x0e, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */ PORT_BIT( 0x0e, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */
PORT_DIPNAME (0x30, 0x30, DEF_STR( Coinage ) ) PORT_DIPNAME( 0x30, 0x30, DEF_STR( Coinage ) )
PORT_DIPSETTING ( 0x00, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) )
PORT_DIPSETTING ( 0x10, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x10, DEF_STR( 3C_1C ) )
PORT_DIPSETTING ( 0x20, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x20, DEF_STR( 2C_1C ) )
PORT_DIPSETTING ( 0x30, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* probably unused */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(vicdual_read_coin_status, 0) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(vicdual_read_coin_status, 0)
@ -434,8 +434,8 @@ static READ8_HANDLER( frogs_io_r )
{ {
UINT8 ret = 0; UINT8 ret = 0;
if (offset & 0x01) ret = input_port_read_indexed(machine, 0); if (offset & 0x01) ret = input_port_read(machine, "IN0");
if (offset & 0x08) ret = input_port_read_indexed(machine, 1); if (offset & 0x08) ret = input_port_read(machine, "IN1");
return ret; return ret;
} }
@ -542,8 +542,8 @@ static READ8_HANDLER( headon_io_r )
{ {
UINT8 ret = 0; UINT8 ret = 0;
if (offset & 0x01) ret = input_port_read_indexed(machine, 0); if (offset & 0x01) ret = input_port_read(machine, "IN0");
if (offset & 0x08) ret = input_port_read_indexed(machine, 1); if (offset & 0x08) ret = input_port_read(machine, "IN1");
return ret; return ret;
} }
@ -553,9 +553,9 @@ static READ8_HANDLER( sspaceat_io_r )
{ {
UINT8 ret = 0; UINT8 ret = 0;
if (offset & 0x01) ret = input_port_read_indexed(machine,0); if (offset & 0x01) ret = input_port_read(machine, "IN0");
if (offset & 0x04) ret = input_port_read_indexed(machine,1); if (offset & 0x04) ret = input_port_read(machine, "IN1");
if (offset & 0x08) ret = input_port_read_indexed(machine,2); if (offset & 0x08) ret = input_port_read(machine, "IN2");
return ret; return ret;
} }
@ -742,10 +742,10 @@ static READ8_HANDLER( headon2_io_r )
{ {
UINT8 ret = 0; UINT8 ret = 0;
if (offset & 0x01) ret = input_port_read_indexed(machine,0); if (offset & 0x01) ret = input_port_read(machine, "IN0");
if (offset & 0x02) /* schematics show this as in input port, but never read from */ if (offset & 0x02) /* schematics show this as in input port, but never read from */
if (offset & 0x04) ret = input_port_read_indexed(machine,1); if (offset & 0x04) ret = input_port_read(machine, "IN1");
if (offset & 0x08) ret = input_port_read_indexed(machine,2); if (offset & 0x08) ret = input_port_read(machine, "IN2");
if (offset & 0x12) logerror("********* Read from port %x\n", offset); if (offset & 0x12) logerror("********* Read from port %x\n", offset);
return ret; return ret;
@ -2096,8 +2096,8 @@ static READ8_HANDLER( nsub_io_r )
{ {
UINT8 ret = 0; UINT8 ret = 0;
if (offset & 0x01) ret = input_port_read_indexed(machine, 0); if (offset & 0x01) ret = input_port_read(machine, "IN0");
if (offset & 0x08) ret = input_port_read_indexed(machine, 1); if (offset & 0x08) ret = input_port_read(machine, "IN1");
return ret; return ret;
} }
@ -2191,9 +2191,9 @@ static READ8_HANDLER( invinco_io_r )
{ {
UINT8 ret = 0; UINT8 ret = 0;
if (offset & 0x01) ret = input_port_read_indexed(machine, 0); if (offset & 0x01) ret = input_port_read(machine, "IN0");
if (offset & 0x02) ret = input_port_read_indexed(machine, 1); if (offset & 0x02) ret = input_port_read(machine, "IN1");
if (offset & 0x08) ret = input_port_read_indexed(machine, 2); if (offset & 0x08) ret = input_port_read(machine, "IN2");
return ret; return ret;
} }

View File

@ -27,7 +27,7 @@ static WRITE8_HANDLER(videopin_out2_w);
static void update_plunger(running_machine *machine) static void update_plunger(running_machine *machine)
{ {
UINT8 val = input_port_read_indexed(machine, 3); UINT8 val = input_port_read(machine, "IN2");
if (prev != val) if (prev != val)
{ {
@ -93,7 +93,7 @@ static READ8_HANDLER( videopin_misc_r )
// signals received. This results in the MPU displaying the // signals received. This results in the MPU displaying the
// ball being shot onto the playfield at a certain speed. // ball being shot onto the playfield at a certain speed.
UINT8 val = input_port_read_indexed(machine, 2); UINT8 val = input_port_read(machine, "IN1");
if (plunger >= 0.000 && plunger <= 0.001) if (plunger >= 0.000 && plunger <= 0.001)
{ {
@ -200,8 +200,8 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0804, 0x0804) AM_WRITE(videopin_ball_w) AM_RANGE(0x0804, 0x0804) AM_WRITE(videopin_ball_w)
AM_RANGE(0x0805, 0x0805) AM_WRITE(videopin_out1_w) AM_RANGE(0x0805, 0x0805) AM_WRITE(videopin_out1_w)
AM_RANGE(0x0806, 0x0806) AM_WRITE(videopin_out2_w) AM_RANGE(0x0806, 0x0806) AM_WRITE(videopin_out2_w)
AM_RANGE(0x1000, 0x1000) AM_READ(input_port_0_r) AM_RANGE(0x1000, 0x1000) AM_READ_PORT("IN0")
AM_RANGE(0x1800, 0x1800) AM_READ(input_port_1_r) AM_RANGE(0x1800, 0x1800) AM_READ_PORT("DSW")
AM_RANGE(0x2000, 0x3fff) AM_ROM AM_RANGE(0x2000, 0x3fff) AM_ROM
AM_RANGE(0xe000, 0xffff) AM_READ(SMH_ROM) /* mirror for 6502 vectors */ AM_RANGE(0xe000, 0xffff) AM_READ(SMH_ROM) /* mirror for 6502 vectors */
ADDRESS_MAP_END ADDRESS_MAP_END
@ -214,17 +214,17 @@ ADDRESS_MAP_END
*************************************/ *************************************/
static INPUT_PORTS_START( videopin ) static INPUT_PORTS_START( videopin )
PORT_START /* IN0 */ PORT_START_TAG("IN0") /* IN0 */
PORT_BIT ( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT ( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Left Flipper") PORT_CODE(KEYCODE_LCONTROL) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Left Flipper") PORT_CODE(KEYCODE_LCONTROL)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Right Flipper") PORT_CODE(KEYCODE_RCONTROL) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Right Flipper") PORT_CODE(KEYCODE_RCONTROL)
PORT_BIT ( 0x10, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT ( 0x20, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT )
PORT_SERVICE( 0x40, IP_ACTIVE_LOW ) PORT_SERVICE( 0x40, IP_ACTIVE_LOW )
PORT_BIT ( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START /* IN1 */ PORT_START_TAG("DSW") /* IN1 */
PORT_DIPNAME( 0xc0, 0x80, DEF_STR( Coinage ) ) PORT_DIPNAME( 0xc0, 0x80, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x80, DEF_STR( 1C_1C ) )
@ -248,17 +248,17 @@ static INPUT_PORTS_START( videopin )
PORT_DIPSETTING( 0x00, "180000 (3 balls) / 300000 (5 balls)" ) PORT_DIPSETTING( 0x00, "180000 (3 balls) / 300000 (5 balls)" )
PORT_DIPSETTING( 0x01, "210000 (3 balls) / 350000 (5 balls)" ) PORT_DIPSETTING( 0x01, "210000 (3 balls) / 350000 (5 balls)" )
PORT_START /* IN2 */ PORT_START_TAG("IN1") /* IN2 */
PORT_BIT ( 0x01, IP_ACTIVE_LOW, IPT_SPECIAL ) /* PLUNGER 1 */ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SPECIAL ) /* PLUNGER 1 */
PORT_BIT ( 0x02, IP_ACTIVE_LOW, IPT_SPECIAL ) /* PLUNGER 2 */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SPECIAL ) /* PLUNGER 2 */
PORT_BIT ( 0x04, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT ( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT ( 0x20, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge") PORT_CODE(KEYCODE_SPACE) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Nudge") PORT_CODE(KEYCODE_SPACE)
PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_VBLANK )
PORT_START PORT_START_TAG("IN2")
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_NAME("Ball Shooter") PORT_CODE(KEYCODE_DOWN) PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_NAME("Ball Shooter") PORT_CODE(KEYCODE_DOWN)
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -64,7 +64,7 @@ static MACHINE_RESET( vindictr )
static READ16_HANDLER( port1_r ) static READ16_HANDLER( port1_r )
{ {
int result = input_port_read_indexed(machine, 1); int result = input_port_read(machine, "260010");
if (atarigen_sound_to_cpu_ready) result ^= 0x0004; if (atarigen_sound_to_cpu_ready) result ^= 0x0004;
if (atarigen_cpu_to_sound_ready) result ^= 0x0008; if (atarigen_cpu_to_sound_ready) result ^= 0x0008;
result ^= 0x0010; result ^= 0x0010;
@ -85,9 +85,9 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x05ffff) AM_ROM AM_RANGE(0x000000, 0x05ffff) AM_ROM
AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_BASE(&atarigen_eeprom) AM_SIZE(&atarigen_eeprom_size) AM_RANGE(0x0e0000, 0x0e0fff) AM_READWRITE(atarigen_eeprom_r, atarigen_eeprom_w) AM_BASE(&atarigen_eeprom) AM_SIZE(&atarigen_eeprom_size)
AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE(atarigen_eeprom_enable_w) AM_RANGE(0x1f0000, 0x1fffff) AM_WRITE(atarigen_eeprom_enable_w)
AM_RANGE(0x260000, 0x26000f) AM_READ(input_port_0_word_r) AM_RANGE(0x260000, 0x26000f) AM_READ_PORT("260000")
AM_RANGE(0x260010, 0x26001f) AM_READ(port1_r) AM_RANGE(0x260010, 0x26001f) AM_READ(port1_r)
AM_RANGE(0x260020, 0x26002f) AM_READ(input_port_2_word_r) AM_RANGE(0x260020, 0x26002f) AM_READ_PORT("260020")
AM_RANGE(0x260030, 0x260031) AM_READ(atarigen_sound_r) AM_RANGE(0x260030, 0x260031) AM_READ(atarigen_sound_r)
AM_RANGE(0x2e0000, 0x2e0001) AM_WRITE(watchdog_reset16_w) AM_RANGE(0x2e0000, 0x2e0001) AM_WRITE(watchdog_reset16_w)
AM_RANGE(0x360000, 0x360001) AM_WRITE(atarigen_scanline_int_ack_w) AM_RANGE(0x360000, 0x360001) AM_WRITE(atarigen_scanline_int_ack_w)

View File

@ -143,14 +143,14 @@ static WRITE16_HANDLER( vmetal_mid2tileram_w )
} }
static READ16_HANDLER ( varia_dips_bit8_r ) { return ((input_port_read_indexed(machine, 3) & 0x80) << 0) | ((input_port_read_indexed(machine, 2) & 0x80) >> 1); } static READ16_HANDLER ( varia_dips_bit8_r ) { return ((input_port_read(machine, "DSW2") & 0x80) << 0) | ((input_port_read(machine, "DSW1") & 0x80) >> 1); }
static READ16_HANDLER ( varia_dips_bit7_r ) { return ((input_port_read_indexed(machine, 3) & 0x40) << 1) | ((input_port_read_indexed(machine, 2) & 0x40) >> 0); } static READ16_HANDLER ( varia_dips_bit7_r ) { return ((input_port_read(machine, "DSW2") & 0x40) << 1) | ((input_port_read(machine, "DSW1") & 0x40) >> 0); }
static READ16_HANDLER ( varia_dips_bit6_r ) { return ((input_port_read_indexed(machine, 3) & 0x20) << 2) | ((input_port_read_indexed(machine, 2) & 0x20) << 1); } static READ16_HANDLER ( varia_dips_bit6_r ) { return ((input_port_read(machine, "DSW2") & 0x20) << 2) | ((input_port_read(machine, "DSW1") & 0x20) << 1); }
static READ16_HANDLER ( varia_dips_bit5_r ) { return ((input_port_read_indexed(machine, 3) & 0x10) << 3) | ((input_port_read_indexed(machine, 2) & 0x10) << 2); } static READ16_HANDLER ( varia_dips_bit5_r ) { return ((input_port_read(machine, "DSW2") & 0x10) << 3) | ((input_port_read(machine, "DSW1") & 0x10) << 2); }
static READ16_HANDLER ( varia_dips_bit4_r ) { return ((input_port_read_indexed(machine, 3) & 0x08) << 4) | ((input_port_read_indexed(machine, 2) & 0x08) << 3); } static READ16_HANDLER ( varia_dips_bit4_r ) { return ((input_port_read(machine, "DSW2") & 0x08) << 4) | ((input_port_read(machine, "DSW1") & 0x08) << 3); }
static READ16_HANDLER ( varia_dips_bit3_r ) { return ((input_port_read_indexed(machine, 3) & 0x04) << 5) | ((input_port_read_indexed(machine, 2) & 0x04) << 4); } static READ16_HANDLER ( varia_dips_bit3_r ) { return ((input_port_read(machine, "DSW2") & 0x04) << 5) | ((input_port_read(machine, "DSW1") & 0x04) << 4); }
static READ16_HANDLER ( varia_dips_bit2_r ) { return ((input_port_read_indexed(machine, 3) & 0x02) << 6) | ((input_port_read_indexed(machine, 2) & 0x02) << 5); } static READ16_HANDLER ( varia_dips_bit2_r ) { return ((input_port_read(machine, "DSW2") & 0x02) << 6) | ((input_port_read(machine, "DSW1") & 0x02) << 5); }
static READ16_HANDLER ( varia_dips_bit1_r ) { return ((input_port_read_indexed(machine, 3) & 0x01) << 7) | ((input_port_read_indexed(machine, 2) & 0x01) << 6); } static READ16_HANDLER ( varia_dips_bit1_r ) { return ((input_port_read(machine, "DSW2") & 0x01) << 7) | ((input_port_read(machine, "DSW1") & 0x01) << 6); }
static WRITE16_HANDLER( vmetal_control_w ) static WRITE16_HANDLER( vmetal_control_w )
{ {
@ -227,8 +227,8 @@ static ADDRESS_MAP_START( varia_program_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x178800, 0x1796ff) AM_RAM AM_BASE(&vmetal_videoregs) AM_RANGE(0x178800, 0x1796ff) AM_RAM AM_BASE(&vmetal_videoregs)
AM_RANGE(0x179700, 0x179713) AM_WRITE(SMH_RAM) AM_BASE(&metro_videoregs ) // Video Registers AM_RANGE(0x179700, 0x179713) AM_WRITE(SMH_RAM) AM_BASE(&metro_videoregs ) // Video Registers
AM_RANGE(0x200000, 0x200001) AM_READWRITE(input_port_0_word_r, vmetal_control_w) AM_RANGE(0x200000, 0x200001) AM_READ_PORT("P1_P2") AM_WRITE(vmetal_control_w)
AM_RANGE(0x200002, 0x200003) AM_READ(input_port_1_word_r ) AM_RANGE(0x200002, 0x200003) AM_READ_PORT("SYSTEM")
/* i have no idea whats meant to be going on here .. it seems to read one bit of the dips from some of them, protection ??? */ /* i have no idea whats meant to be going on here .. it seems to read one bit of the dips from some of them, protection ??? */
AM_RANGE(0x30fffe, 0x30ffff) AM_READ(varia_random ) // nothing? AM_RANGE(0x30fffe, 0x30ffff) AM_READ(varia_random ) // nothing?
@ -259,7 +259,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( varia ) static INPUT_PORTS_START( varia )
PORT_START /* IN0 */ PORT_START_TAG("P1_P2") /* IN0 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -277,7 +277,7 @@ static INPUT_PORTS_START( varia )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_START1 )
PORT_START /* IN1 */ PORT_START_TAG("SYSTEM") /* IN1 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_TILT )
@ -285,7 +285,7 @@ static INPUT_PORTS_START( varia )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_SERVICE2 ) // 'Test' PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_SERVICE2 ) // 'Test'
PORT_BIT( 0xffe0, IP_ACTIVE_LOW, IPT_UNKNOWN ) // unused? PORT_BIT( 0xffe0, IP_ACTIVE_LOW, IPT_UNKNOWN ) // unused?
PORT_START /* Dips 1 */ PORT_START_TAG("DSW1") /* Dips 1 */
PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) ) PORT_DIPNAME( 0x0007, 0x0007, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x0005, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x0006, DEF_STR( 2C_1C ) )
@ -311,7 +311,7 @@ static INPUT_PORTS_START( varia )
PORT_DIPSETTING( 0x0080, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0080, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START /* Dips 2 */ PORT_START_TAG("DSW2") /* Dips 2 */
PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown )) PORT_DIPNAME( 0x0001, 0x0001, DEF_STR( Unknown ))
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )

File diff suppressed because it is too large Load Diff

View File

@ -144,12 +144,13 @@ static int handle_joystick;
static READ8_HANDLER( geebee_in_r ) static READ8_HANDLER( geebee_in_r )
{ {
int res; int res;
static const char *portnames[] = { "SW0", "SW1", "DSW2", "PLACEHOLDER" }; // "IN1" & "IN2" are read separately when offset==3
offset &= 3; offset &= 3;
res = input_port_read_indexed(machine, offset); res = input_port_read_safe(machine, portnames[offset], 0);
if (offset == 3) if (offset == 3)
{ {
res = input_port_read_indexed(machine, 3 + (flip_screen_get() & 1)); // read player 2 input in cocktail mode res = input_port_read(machine, (flip_screen_get() & 1) ? "IN2" : "IN1"); // read player 2 input in cocktail mode
if (handle_joystick) if (handle_joystick)
{ {
/* map digital two-way joystick to two fixed VOLIN values */ /* map digital two-way joystick to two fixed VOLIN values */
@ -217,13 +218,13 @@ static WRITE8_HANDLER( geebee_out7_w )
/* Read Switch Inputs */ /* Read Switch Inputs */
static READ8_HANDLER( warpwarp_sw_r ) static READ8_HANDLER( warpwarp_sw_r )
{ {
return (input_port_read_indexed(machine, 0) >> (offset & 7)) & 1; return (input_port_read(machine, "IN0") >> (offset & 7)) & 1;
} }
/* Read Dipswitches */ /* Read Dipswitches */
static READ8_HANDLER( warpwarp_dsw1_r ) static READ8_HANDLER( warpwarp_dsw1_r )
{ {
return (input_port_read_indexed(machine, 1) >> (offset & 7)) & 1; return (input_port_read(machine, "DSW1") >> (offset & 7)) & 1;
} }
/* Read mux Controller Inputs */ /* Read mux Controller Inputs */
@ -231,7 +232,7 @@ static READ8_HANDLER( warpwarp_vol_r )
{ {
int res; int res;
res = input_port_read_indexed(machine, 2 + (flip_screen_get() & 1)); res = input_port_read(machine, (flip_screen_get() & 1) ? "VOLIN2" : "VOLIN1");
if (handle_joystick) if (handle_joystick)
{ {
if (res & 1) return 0x0f; if (res & 1) return 0x0f;
@ -372,10 +373,10 @@ static INPUT_PORTS_START( geebee )
PORT_DIPSETTING( 0x0c, DEF_STR( Free_Play ) ) PORT_DIPSETTING( 0x0c, DEF_STR( Free_Play ) )
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("VOLIN") PORT_START_TAG("IN1")
PORT_BIT( 0xff, 0x58, IPT_PADDLE ) PORT_MINMAX(0x10,0xa0) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_CENTERDELTA(0) PORT_REVERSE PORT_BIT( 0xff, 0x58, IPT_PADDLE ) PORT_MINMAX(0x10,0xa0) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_CENTERDELTA(0) PORT_REVERSE
PORT_START_TAG("VOLINC") //Cocktail PORT_START_TAG("IN2") /* Cocktail */
PORT_BIT( 0xff, 0x58, IPT_PADDLE ) PORT_MINMAX(0x10,0xa0) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_CENTERDELTA(0) PORT_REVERSE PORT_COCKTAIL PORT_BIT( 0xff, 0x58, IPT_PADDLE ) PORT_MINMAX(0x10,0xa0) PORT_SENSITIVITY(30) PORT_KEYDELTA(15) PORT_CENTERDELTA(0) PORT_REVERSE PORT_COCKTAIL
INPUT_PORTS_END INPUT_PORTS_END
@ -412,11 +413,11 @@ static INPUT_PORTS_START( navarone )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("FAKE1") /* Fake input port to support digital joystick */ PORT_START_TAG("IN1") /* Fake input port to support digital joystick */
PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT )
PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT )
PORT_START_TAG("FAKE2") /* Fake input port to support digital joystick */ PORT_START_TAG("IN2") /* Fake input port to support digital joystick */
PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL
PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL
INPUT_PORTS_END INPUT_PORTS_END
@ -452,11 +453,11 @@ static INPUT_PORTS_START( kaitei )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) ) PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("FAKE1") /* Fake input port to support digital joystick */ PORT_START_TAG("IN1") /* Fake input port to support digital joystick */
PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT )
PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT )
PORT_START_TAG("FAKE") /* Fake input port to support digital joystick */ PORT_START_TAG("IN2") /* Fake input port to support digital joystick */
PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL
PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL
INPUT_PORTS_END INPUT_PORTS_END
@ -496,11 +497,11 @@ static INPUT_PORTS_START( kaiteik )
PORT_DIPSETTING( 0x20, DEF_STR( On ) ) PORT_DIPSETTING( 0x20, DEF_STR( On ) )
PORT_BIT( 0xc0, 0x80, IPT_UNKNOWN ) // game verifies these two bits and freezes if they don't match PORT_BIT( 0xc0, 0x80, IPT_UNKNOWN ) // game verifies these two bits and freezes if they don't match
PORT_START_TAG("VOLIN1") PORT_START_TAG("IN1")
PORT_BIT( 0x3f, 0x00, IPT_UNKNOWN ) PORT_BIT( 0x3f, 0x00, IPT_UNKNOWN )
PORT_BIT( 0xc0, 0x80, IPT_UNKNOWN ) // game verifies these two bits and freezes if they don't match PORT_BIT( 0xc0, 0x80, IPT_UNKNOWN ) // game verifies these two bits and freezes if they don't match
PORT_START_TAG("VOLIN2") PORT_START_TAG("IN2")
PORT_BIT( 0x3f, 0x00, IPT_UNKNOWN ) PORT_BIT( 0x3f, 0x00, IPT_UNKNOWN )
PORT_BIT( 0xc0, 0x80, IPT_UNKNOWN ) // game verifies these two bits and freezes if they don't match PORT_BIT( 0xc0, 0x80, IPT_UNKNOWN ) // game verifies these two bits and freezes if they don't match
INPUT_PORTS_END INPUT_PORTS_END
@ -537,11 +538,11 @@ static INPUT_PORTS_START( sos )
PORT_DIPSETTING( 0x20, DEF_STR( On ) ) PORT_DIPSETTING( 0x20, DEF_STR( On ) )
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("FAKE1") /* Fake input port to support digital joystick */ PORT_START_TAG("IN1") /* Fake input port to support digital joystick */
PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT )
PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT )
PORT_START_TAG("FAKE2") /* Fake input port to support digital joystick */ PORT_START_TAG("IN2") /* Fake input port to support digital joystick */
PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL PORT_BIT( 0x01, 0x00, IPT_JOYSTICK_RIGHT ) PORT_COCKTAIL
PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL PORT_BIT( 0x02, 0x00, IPT_JOYSTICK_LEFT ) PORT_COCKTAIL
INPUT_PORTS_END INPUT_PORTS_END
@ -591,32 +592,9 @@ static INPUT_PORTS_START( bombbee )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( cutieq ) static INPUT_PORTS_START( cutieq )
PORT_START_TAG("IN0") PORT_INCLUDE( bombbee )
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_BUTTON1 )
PORT_SERVICE( 0x20, IP_ACTIVE_LOW )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x40, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_START_TAG("DSW1") PORT_MODIFY("DSW1")
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x04, "4" )
// PORT_DIPSETTING( 0x08, "4" ) // duplicated setting
PORT_DIPSETTING( 0x0c, "5" )
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Unused ) )
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0xe0, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPNAME( 0xe0, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "50000" ) PORT_DIPSETTING( 0x00, "50000" )
PORT_DIPSETTING( 0x20, "60000" ) PORT_DIPSETTING( 0x20, "60000" )
@ -626,12 +604,6 @@ static INPUT_PORTS_START( cutieq )
PORT_DIPSETTING( 0xa0, "150000" ) PORT_DIPSETTING( 0xa0, "150000" )
PORT_DIPSETTING( 0xc0, "200000" ) PORT_DIPSETTING( 0xc0, "200000" )
PORT_DIPSETTING( 0xe0, DEF_STR( None ) ) PORT_DIPSETTING( 0xe0, DEF_STR( None ) )
PORT_START_TAG("VOLIN1") /* Mux input - player 1 controller - handled by warpwarp_vol_r */
PORT_BIT( 0xff, 0x60, IPT_PADDLE ) PORT_MINMAX(0x14,0xac) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_CENTERDELTA(0) PORT_REVERSE
PORT_START_TAG("VOLIN2") /* Mux input - player 2 controller - handled by warpwarp_vol_r */
PORT_BIT( 0xff, 0x60, IPT_PADDLE ) PORT_MINMAX(0x14,0xac) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_CENTERDELTA(0) PORT_REVERSE PORT_COCKTAIL
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( warpwarp ) static INPUT_PORTS_START( warpwarp )
@ -694,60 +666,12 @@ INPUT_PORTS_END
/* has High Score Initials dip switch instead of rack test */ /* has High Score Initials dip switch instead of rack test */
static INPUT_PORTS_START( warpwarr ) static INPUT_PORTS_START( warpwarr )
PORT_START_TAG("IN0") PORT_INCLUDE( warpwarp )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_SERVICE( 0x20, IP_ACTIVE_LOW )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x40, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_START_TAG("DSW1") PORT_MODIFY("DSW1")
PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x03, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
PORT_DIPNAME( 0x0c, 0x04, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "2" )
PORT_DIPSETTING( 0x04, "3" )
PORT_DIPSETTING( 0x08, "4" )
PORT_DIPSETTING( 0x0c, "5" )
/* Bonus Lives when "Lives" Dip Switch is set to "2", "3" or "4" */
PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "8000 30000" )
PORT_DIPSETTING( 0x10, "10000 40000" )
PORT_DIPSETTING( 0x20, "15000 60000" )
PORT_DIPSETTING( 0x30, DEF_STR( None ) )
/* Bonus Lives when "Lives" Dip Switch is set to "5"
PORT_DIPNAME( 0x30, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "30000" )
PORT_DIPSETTING( 0x10, "40000" )
PORT_DIPSETTING( 0x20, "60000" )
PORT_DIPSETTING( 0x30, DEF_STR( None ) )
*/
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x00, "High Score Initials" ) PORT_DIPNAME( 0x80, 0x00, "High Score Initials" )
PORT_DIPSETTING( 0x80, DEF_STR( No ) ) PORT_DIPSETTING( 0x80, DEF_STR( No ) )
PORT_DIPSETTING( 0x00, DEF_STR( Yes ) ) PORT_DIPSETTING( 0x00, DEF_STR( Yes ) )
PORT_START_TAG("VOLIN1") /* FAKE - input port to simulate an analog stick - handled by warpwarp_vol_r */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY
PORT_START_TAG("VOLIN2") /* FAKE - input port to simulate an analog stick - handled by warpwarp_vol_r */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -407,11 +407,11 @@ static WRITE16_HANDLER( selected_ip_w )
static READ16_HANDLER( selected_ip_r ) static READ16_HANDLER( selected_ip_r )
{ {
switch ( (wecleman_selected_ip >> 5) & 3 ) switch ( (wecleman_selected_ip >> 5) & 3 )
{ // From WEC Le Mans Schems: { // From WEC Le Mans Schems:
case 0: return input_port_read_indexed(machine,4); // Accel - Schems: Accelevr case 0: return input_port_read(machine, "ACCEL"); // Accel - Schems: Accelevr
case 1: return ~0; // ????? - Schems: Not Used case 1: return ~0; // ????? - Schems: Not Used
case 2: return input_port_read_indexed(machine,5); // Wheel - Schems: Handlevr case 2: return input_port_read(machine, "STEER"); // Wheel - Schems: Handlevr
case 3: return ~0; // Table - Schems: Turnvr case 3: return ~0; // Table - Schems: Turnvr
default: return ~0; default: return ~0;
} }
@ -547,10 +547,10 @@ static ADDRESS_MAP_START( wecleman_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x140002, 0x140003) AM_WRITE(selected_ip_w) // Selects accelerator / wheel / .. AM_RANGE(0x140002, 0x140003) AM_WRITE(selected_ip_w) // Selects accelerator / wheel / ..
AM_RANGE(0x140004, 0x140005) AM_WRITE(irqctrl_w) // Main CPU controls the other CPUs AM_RANGE(0x140004, 0x140005) AM_WRITE(irqctrl_w) // Main CPU controls the other CPUs
AM_RANGE(0x140006, 0x140007) AM_WRITE(SMH_NOP) // Watchdog reset AM_RANGE(0x140006, 0x140007) AM_WRITE(SMH_NOP) // Watchdog reset
AM_RANGE(0x140010, 0x140011) AM_READ(input_port_0_word_r) // Coins + brake + gear AM_RANGE(0x140010, 0x140011) AM_READ_PORT("IN0") // Coins + brake + gear
AM_RANGE(0x140012, 0x140013) AM_READ(input_port_1_word_r) // ?? AM_RANGE(0x140012, 0x140013) AM_READ_PORT("IN1") // ??
AM_RANGE(0x140014, 0x140015) AM_READ(input_port_2_word_r) // DSW AM_RANGE(0x140014, 0x140015) AM_READ_PORT("DSWA") // DSW 2
AM_RANGE(0x140016, 0x140017) AM_READ(input_port_3_word_r) // DSW AM_RANGE(0x140016, 0x140017) AM_READ_PORT("DSWB") // DSW 1
AM_RANGE(0x140020, 0x140021) AM_WRITE(SMH_RAM) // Paired with writes to $140003 AM_RANGE(0x140020, 0x140021) AM_WRITE(SMH_RAM) // Paired with writes to $140003
AM_RANGE(0x140020, 0x140021) AM_READ(selected_ip_r) // Accelerator or Wheel or .. AM_RANGE(0x140020, 0x140021) AM_READ(selected_ip_r) // Accelerator or Wheel or ..
AM_RANGE(0x140030, 0x140031) AM_WRITE(SMH_NOP) // toggles between 0 & 1 on hitting bumps and crashes (vibration?) AM_RANGE(0x140030, 0x140031) AM_WRITE(SMH_NOP) // toggles between 0 & 1 on hitting bumps and crashes (vibration?)
@ -609,10 +609,10 @@ static ADDRESS_MAP_START( hotchase_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x140002, 0x140003) AM_WRITE(selected_ip_w) // Selects accelerator / wheel / AM_RANGE(0x140002, 0x140003) AM_WRITE(selected_ip_w) // Selects accelerator / wheel /
AM_RANGE(0x140004, 0x140005) AM_WRITE(irqctrl_w) // Main CPU controls the other CPUs AM_RANGE(0x140004, 0x140005) AM_WRITE(irqctrl_w) // Main CPU controls the other CPUs
AM_RANGE(0x140006, 0x140007) AM_READ(SMH_NOP) // Watchdog reset AM_RANGE(0x140006, 0x140007) AM_READ(SMH_NOP) // Watchdog reset
AM_RANGE(0x140010, 0x140011) AM_READ(input_port_0_word_r) // Coins + brake + gear AM_RANGE(0x140010, 0x140011) AM_READ_PORT("IN0") // Coins + brake + gear
AM_RANGE(0x140012, 0x140013) AM_READ(input_port_1_word_r) // ?? bit 4 from sound cpu AM_RANGE(0x140012, 0x140013) AM_READ_PORT("IN1") // ?? bit 4 from sound cpu
AM_RANGE(0x140014, 0x140015) AM_READ(input_port_2_word_r) // DSW 2 AM_RANGE(0x140014, 0x140015) AM_READ_PORT("DSW2") // DSW 2
AM_RANGE(0x140016, 0x140017) AM_READ(input_port_3_word_r) // DSW 1 AM_RANGE(0x140016, 0x140017) AM_READ_PORT("DSW1") // DSW 1
AM_RANGE(0x140020, 0x140021) AM_READWRITE(selected_ip_r, SMH_NOP) // Paired with writes to $140003 AM_RANGE(0x140020, 0x140021) AM_READWRITE(selected_ip_r, SMH_NOP) // Paired with writes to $140003
AM_RANGE(0x140022, 0x140023) AM_READ(SMH_NOP) // ?? AM_RANGE(0x140022, 0x140023) AM_READ(SMH_NOP) // ??
AM_RANGE(0x140030, 0x140031) AM_WRITE(SMH_NOP) // signal to cabinet vibration motors? AM_RANGE(0x140030, 0x140031) AM_WRITE(SMH_NOP) // signal to cabinet vibration motors?
@ -814,24 +814,24 @@ ADDRESS_MAP_END
***************************************************************************/ ***************************************************************************/
static INPUT_PORTS_START( wecleman ) static INPUT_PORTS_START( wecleman )
PORT_START /* IN0 - Controls and Coins - $140011.b */ PORT_START_TAG("IN0") /* IN0 - Controls and Coins - $140011.b */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_HIGH ) PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_HIGH )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SERVICE1 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SERVICE1 )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT(0x20, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_NAME("Shift") PORT_TOGGLE PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_NAME("Shift") PORT_TOGGLE
PORT_BIT(0x40, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("Brake") PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_NAME("Brake")
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* IN1 - Motor? - $140013.b */ PORT_START_TAG("IN1") /* IN1 - Motor? - $140013.b */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE2 ) // right sw PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE2 ) // right sw
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE3 ) // left sw PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE3 ) // left sw
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE4 ) // thermo PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE4 ) // thermo
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SPECIAL ) // from sound cpu ? PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SPECIAL ) // from sound cpu ?
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN2 - DSW A (Coinage) - $140015.b */ PORT_START_TAG("DSWA") /* IN2 - DSW A (Coinage) - $140015.b */
PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x02, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x05, DEF_STR( 3C_1C ) )
@ -866,7 +866,7 @@ static INPUT_PORTS_START( wecleman )
PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) ) PORT_DIPSETTING( 0xa0, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) ) PORT_DIPSETTING( 0x90, DEF_STR( 1C_7C ) )
PORT_START /* IN3 - DSW B (options) - $140017.b */ PORT_START_TAG("DSWB") /* IN3 - DSW B (options) - $140017.b */
PORT_DIPNAME( 0x01, 0x01, "Speed Unit" ) PORT_DIPNAME( 0x01, 0x01, "Speed Unit" )
PORT_DIPSETTING( 0x01, "km/h" ) PORT_DIPSETTING( 0x01, "km/h" )
PORT_DIPSETTING( 0x00, "mph" ) PORT_DIPSETTING( 0x00, "mph" )
@ -891,10 +891,10 @@ static INPUT_PORTS_START( wecleman )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START /* IN4 - Accelerator - $140021.b (0) */ PORT_START_TAG("ACCEL") /* IN4 - Accelerator - $140021.b (0) */
PORT_BIT( 0xff, 0, IPT_PEDAL ) PORT_MINMAX(0,0x80) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0, IPT_PEDAL ) PORT_MINMAX(0,0x80) PORT_SENSITIVITY(30) PORT_KEYDELTA(10)
PORT_START /* IN5 - Steering Wheel - $140021.b (2) */ PORT_START_TAG("STEER") /* IN5 - Steering Wheel - $140021.b (2) */
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5)
INPUT_PORTS_END INPUT_PORTS_END
@ -904,24 +904,24 @@ INPUT_PORTS_END
***************************************************************************/ ***************************************************************************/
static INPUT_PORTS_START( hotchase ) static INPUT_PORTS_START( hotchase )
PORT_START /* IN0 - Controls and Coins - $140011.b */ PORT_START_TAG("IN0") /* IN0 - Controls and Coins - $140011.b */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Shift") PORT_TOGGLE PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Shift") PORT_TOGGLE
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Brake") PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Brake")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START /* IN1 - Motor? - $140013.b */ PORT_START_TAG("IN1") /* IN1 - Motor? - $140013.b */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE2 ) // right sw PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_SERVICE2 ) // right sw
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE3 ) // left sw PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE3 ) // left sw
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE4 ) // thermo PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE4 ) // thermo
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SPECIAL ) // from sound cpu ? PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SPECIAL ) // from sound cpu ?
PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xf0, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN2 - DSW 2 (options) - $140015.b */ PORT_START_TAG("DSW2") /* IN2 - DSW 2 (options) - $140015.b */
PORT_DIPNAME( 0x01, 0x01, "Speed Unit" ) PORT_DIPNAME( 0x01, 0x01, "Speed Unit" )
PORT_DIPSETTING( 0x01, "KM" ) PORT_DIPSETTING( 0x01, "KM" )
PORT_DIPSETTING( 0x00, "M.P.H." ) PORT_DIPSETTING( 0x00, "M.P.H." )
@ -947,7 +947,7 @@ static INPUT_PORTS_START( hotchase )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START /* IN3 - DSW 1 (Coinage) - $140017.b */ PORT_START_TAG("DSW1") /* IN3 - DSW 1 (Coinage) - $140017.b */
PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) ) PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x02, DEF_STR( 5C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 5C_1C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x04, DEF_STR( 4C_1C ) )
@ -982,10 +982,10 @@ static INPUT_PORTS_START( hotchase )
PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) ) PORT_DIPSETTING( 0xb0, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x00, "1 Coin/99 Credits" ) PORT_DIPSETTING( 0x00, "1 Coin/99 Credits" )
PORT_START /* IN4 - Accelerator - $140021.b (0) */ PORT_START_TAG("ACCEL") /* IN4 - Accelerator - $140021.b (0) */
PORT_BIT( 0xff, 0, IPT_PEDAL ) PORT_MINMAX(0,0x80) PORT_SENSITIVITY(30) PORT_KEYDELTA(10) PORT_BIT( 0xff, 0, IPT_PEDAL ) PORT_MINMAX(0,0x80) PORT_SENSITIVITY(30) PORT_KEYDELTA(10)
PORT_START /* IN5 - Steering Wheel - $140021.b (2) */ PORT_START_TAG("STEER") /* IN5 - Steering Wheel - $140021.b (2) */
PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x80, IPT_PADDLE ) PORT_SENSITIVITY(50) PORT_KEYDELTA(5)
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -353,7 +353,7 @@ static WRITE16_HANDLER( sound_command_w )
static READ16_HANDLER( in0_r ) static READ16_HANDLER( in0_r )
{ {
return input_port_read_indexed(machine, 0) | (pending_command ? 0x80 : 0); return input_port_read(machine, "SYSTEM") | (pending_command ? 0x80 : 0);
} }
static WRITE8_HANDLER( pending_command_clear_w ) static WRITE8_HANDLER( pending_command_clear_w )
@ -367,23 +367,23 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x100000, 0x17ffff) AM_ROM AM_RANGE(0x100000, 0x17ffff) AM_ROM
AM_RANGE(0x800000, 0x81ffff) AM_RAM AM_BASE(&welltris_pixelram) /* Graph_1 & 2*/ AM_RANGE(0x800000, 0x81ffff) AM_RAM AM_BASE(&welltris_pixelram) /* Graph_1 & 2*/
AM_RANGE(0xff8000, 0xffbfff) AM_RAM /* work */ AM_RANGE(0xff8000, 0xffbfff) AM_RAM /* work */
AM_RANGE(0xffc000, 0xffc3ff) AM_RAM_WRITE(welltris_spriteram_w) AM_BASE(&welltris_spriteram) /* Sprite */ AM_RANGE(0xffc000, 0xffc3ff) AM_RAM_WRITE(welltris_spriteram_w) AM_BASE(&welltris_spriteram) /* Sprite */
AM_RANGE(0xffd000, 0xffdfff) AM_RAM_WRITE(welltris_charvideoram_w) AM_BASE(&welltris_charvideoram) /* Char */ AM_RANGE(0xffd000, 0xffdfff) AM_RAM_WRITE(welltris_charvideoram_w) AM_BASE(&welltris_charvideoram) /* Char */
AM_RANGE(0xffe000, 0xffefff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE(&paletteram16) /* Palette */ AM_RANGE(0xffe000, 0xffefff) AM_RAM_WRITE(paletteram16_xRRRRRGGGGGBBBBB_word_w) AM_BASE(&paletteram16) /* Palette */
AM_RANGE(0xfff000, 0xfff001) AM_READ(input_port_1_word_r) /* Bottom Controls */ AM_RANGE(0xfff000, 0xfff001) AM_READ_PORT("P1") /* Bottom Controls */
AM_RANGE(0xfff000, 0xfff001) AM_WRITE(welltris_palette_bank_w) AM_RANGE(0xfff000, 0xfff001) AM_WRITE(welltris_palette_bank_w)
AM_RANGE(0xfff002, 0xfff003) AM_READ(input_port_2_word_r) /* Top Controls */ AM_RANGE(0xfff002, 0xfff003) AM_READ_PORT("P2") /* Top Controls */
AM_RANGE(0xfff002, 0xfff003) AM_WRITE(welltris_gfxbank_w) AM_RANGE(0xfff002, 0xfff003) AM_WRITE(welltris_gfxbank_w)
AM_RANGE(0xfff004, 0xfff005) AM_READ(input_port_3_word_r) /* Left Side Ctrls */ AM_RANGE(0xfff004, 0xfff005) AM_READ_PORT("P3") /* Left Side Ctrls */
AM_RANGE(0xfff004, 0xfff007) AM_WRITE(welltris_scrollreg_w) AM_RANGE(0xfff004, 0xfff007) AM_WRITE(welltris_scrollreg_w)
AM_RANGE(0xfff006, 0xfff007) AM_READ(input_port_4_word_r) /* Right Side Ctrls */ AM_RANGE(0xfff006, 0xfff007) AM_READ_PORT("P4") /* Right Side Ctrls */
AM_RANGE(0xfff008, 0xfff009) AM_READ(in0_r) /* Coinage, Start Buttons, pending sound command etc. */ /* Bit 5 Tested at start of irq 1 */ AM_RANGE(0xfff008, 0xfff009) AM_READ(in0_r) /* Coinage, Start Buttons, pending sound command etc. */ /* Bit 5 Tested at start of irq 1 */
AM_RANGE(0xfff008, 0xfff009) AM_WRITE(sound_command_w) AM_RANGE(0xfff008, 0xfff009) AM_WRITE(sound_command_w)
AM_RANGE(0xfff00a, 0xfff00b) AM_READ(input_port_5_word_r) /* P3+P4 Coin + Start Buttons */ AM_RANGE(0xfff00a, 0xfff00b) AM_READ_PORT("EXTRA") /* P3+P4 Coin + Start Buttons */
AM_RANGE(0xfff00c, 0xfff00d) AM_READ(input_port_6_word_r) /* DSW0 Coinage */ AM_RANGE(0xfff00c, 0xfff00d) AM_READ_PORT("DSW1") /* DSW1 Coinage */
AM_RANGE(0xfff00c, 0xfff00d) AM_WRITE(SMH_NOP) /* ?? */ AM_RANGE(0xfff00c, 0xfff00d) AM_WRITE(SMH_NOP) /* ?? */
AM_RANGE(0xfff00e, 0xfff00f) AM_READ(input_port_7_word_r) /* DSW1 Game Options */ AM_RANGE(0xfff00e, 0xfff00f) AM_READ_PORT("DSW2") /* DSW2 Game Options */
AM_RANGE(0xfff00e, 0xfff00f) AM_WRITE(SMH_NOP) /* ?? */ AM_RANGE(0xfff00e, 0xfff00f) AM_WRITE(SMH_NOP) /* ?? */
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -404,7 +404,7 @@ static ADDRESS_MAP_START( sound_port_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( welltris ) static INPUT_PORTS_START( welltris )
PORT_START PORT_START_TAG("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
@ -414,7 +414,7 @@ static INPUT_PORTS_START( welltris )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* Service (adds a coin) */ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* Service (adds a coin) */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* pending sound command */ PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* pending sound command */
PORT_START PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
@ -424,7 +424,7 @@ static INPUT_PORTS_START( welltris )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) 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( 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) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -437,7 +437,7 @@ static INPUT_PORTS_START( welltris )
#if WELLTRIS_4P_HACK #if WELLTRIS_4P_HACK
/* These can actually be read in the test mode even if they're not used by the game without patching the code /* These can actually be read in the test mode even if they're not used by the game without patching the code
might be useful if a real 4 player version ever turns up if it was ever produced */ might be useful if a real 4 player version ever turns up if it was ever produced */
PORT_START PORT_START_TAG("P3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
@ -447,7 +447,7 @@ static INPUT_PORTS_START( welltris )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("P4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
@ -457,7 +457,7 @@ static INPUT_PORTS_START( welltris )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
#else #else
PORT_START PORT_START_TAG("P3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
@ -467,7 +467,7 @@ static INPUT_PORTS_START( welltris )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("P4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
@ -478,7 +478,7 @@ static INPUT_PORTS_START( welltris )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
#endif #endif
PORT_START PORT_START_TAG("EXTRA")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN4 )
#if WELLTRIS_4P_HACK #if WELLTRIS_4P_HACK
@ -493,7 +493,7 @@ static INPUT_PORTS_START( welltris )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x000f, 0x000f, DEF_STR( Coin_A ) ) PORT_DIPNAME( 0x000f, 0x000f, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x0006, DEF_STR( 5C_1C ) ) PORT_DIPSETTING( 0x0006, DEF_STR( 5C_1C ) )
PORT_DIPSETTING( 0x0007, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x0007, DEF_STR( 4C_1C ) )
@ -529,7 +529,7 @@ static INPUT_PORTS_START( welltris )
PORT_DIPSETTING( 0x00b0, DEF_STR( 1C_5C ) ) PORT_DIPSETTING( 0x00b0, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x00a0, DEF_STR( 1C_6C ) ) PORT_DIPSETTING( 0x00a0, DEF_STR( 1C_6C ) )
PORT_START PORT_START_TAG("DSW2")
PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x0003, 0x0003, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x0002, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x0003, DEF_STR( Normal ) )
@ -564,7 +564,7 @@ static INPUT_PORTS_START( welltris )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( quiz18k ) static INPUT_PORTS_START( quiz18k )
PORT_START PORT_START_TAG("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
@ -574,7 +574,7 @@ static INPUT_PORTS_START( quiz18k )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* pending sound command */ PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* pending sound command */
PORT_START PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) 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( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
@ -584,7 +584,7 @@ static INPUT_PORTS_START( quiz18k )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) 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( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
@ -594,16 +594,16 @@ static INPUT_PORTS_START( quiz18k )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("P3")
PORT_BIT (0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT (0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("P4")
PORT_BIT (0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT (0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("EXTRA")
PORT_BIT (0xff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT (0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, "DIPSW 1-1" ) PORT_DIPNAME( 0x01, 0x01, "DIPSW 1-1" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -629,7 +629,7 @@ static INPUT_PORTS_START( quiz18k )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG("DSW2")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) /* Flip Screen Not Currently Supported */ PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) ) /* Flip Screen Not Currently Supported */
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )

View File

@ -547,12 +547,12 @@ static WRITE16_HANDLER( rotate_port_w )
static READ16_HANDLER( wgp_adinput_r ) static READ16_HANDLER( wgp_adinput_r )
{ {
int steer = 0x40; int steer = 0x40;
int fake = input_port_read_safe(machine, FAKE_PORT_TAG,0x00); int fake = input_port_read_safe(machine, FAKE_PORT_TAG, 0x00);
if (!(fake & 0x10)) /* Analogue steer (the real control method) */ if (!(fake & 0x10)) /* Analogue steer (the real control method) */
{ {
/* Reduce span to 0x80 */ /* Reduce span to 0x80 */
steer = (input_port_read_safe(machine, STEER_PORT_TAG,0x00) * 0x80) / 0x100; steer = (input_port_read_safe(machine, STEER_PORT_TAG, 0x00) * 0x80) / 0x100;
} }
else /* Digital steer */ else /* Digital steer */
{ {
@ -597,7 +597,7 @@ static READ16_HANDLER( wgp_adinput_r )
} }
case 0x05: case 0x05:
return input_port_read_safe(machine, UNKNOWN_PORT_TAG,0x00); /* unknown */ return input_port_read_safe(machine, UNKNOWN_PORT_TAG, 0x00); /* unknown */
} }
logerror("CPU #0 PC %06x: warning - read unmapped a/d input offset %06x\n",activecpu_get_pc(),offset); logerror("CPU #0 PC %06x: warning - read unmapped a/d input offset %06x\n",activecpu_get_pc(),offset);

View File

@ -55,16 +55,12 @@ static int toggle_bit;
static READ16_HANDLER( wheelfir_rand1 ) static READ16_HANDLER( wheelfir_rand1 )
{ {
return input_port_read(machine, "IN0") ^ toggle_bit; // mame_rand(machine);
return input_port_read_indexed(machine, 0)^toggle_bit;// mame_rand(machine);
} }
static READ16_HANDLER( wheelfir_rand2 ) static READ16_HANDLER( wheelfir_rand2 )
{ {
return input_port_read_indexed(machine, 1);// mame_rand(machine); return input_port_read(machine, "IN1"); // mame_rand(machine);
} }
@ -380,8 +376,8 @@ static ADDRESS_MAP_START( wheelfir_main, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x7c0000, 0x7c0001) AM_READ(wheelfir_rand1) AM_RANGE(0x7c0000, 0x7c0001) AM_READ(wheelfir_rand1)
AM_RANGE(0x780000, 0x780001) AM_READ(wheelfir_rand2) AM_RANGE(0x780000, 0x780001) AM_READ(wheelfir_rand2)
AM_RANGE(0x7e0000, 0x7e0001) AM_READ(input_port_2_word_r) AM_RANGE(0x7e0000, 0x7e0001) AM_READ_PORT("P1")
AM_RANGE(0x7e0002, 0x7e0003) AM_READ(input_port_3_word_r) AM_RANGE(0x7e0002, 0x7e0003) AM_READ_PORT("P2")
AM_RANGE(0x700000, 0x70001f) AM_WRITE(wheelfir_blit_w) // blitter stuff AM_RANGE(0x700000, 0x70001f) AM_WRITE(wheelfir_blit_w) // blitter stuff
@ -410,7 +406,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( wheelfir ) static INPUT_PORTS_START( wheelfir )
PORT_START /* 16bit */ PORT_START_TAG("IN0") /* 16bit */
PORT_DIPNAME( 0x0001, 0x0001, "0" ) PORT_DIPNAME( 0x0001, 0x0001, "0" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
@ -460,7 +456,7 @@ static INPUT_PORTS_START( wheelfir )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START /* 16bit */ PORT_START_TAG("IN1") /* 16bit */
PORT_DIPNAME( 0x0001, 0x0001, "1" ) PORT_DIPNAME( 0x0001, 0x0001, "1" )
PORT_DIPSETTING( 0x0001, DEF_STR( Off ) ) PORT_DIPSETTING( 0x0001, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
@ -510,7 +506,7 @@ static INPUT_PORTS_START( wheelfir )
PORT_DIPSETTING( 0x8000, DEF_STR( Off ) ) PORT_DIPSETTING( 0x8000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0000, DEF_STR( On ) ) PORT_DIPSETTING( 0x0000, DEF_STR( On ) )
PORT_START /* 16bit */ PORT_START_TAG("P1") /* 16bit */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
@ -530,7 +526,7 @@ static INPUT_PORTS_START( wheelfir )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START /* 16bit */ PORT_START_TAG("P2") /* 16bit */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)

View File

@ -45,12 +45,12 @@ static WRITE8_HANDLER( wink_coin_counter_w )
static READ8_HANDLER( analog_port_r ) static READ8_HANDLER( analog_port_r )
{ {
return input_port_read_indexed(machine, 0 /*+ 2 * player_mux*/); return input_port_read(machine, /* player_mux ? "DIAL2" : */ "DIAL1");
} }
static READ8_HANDLER( player_inputs_r ) static READ8_HANDLER( player_inputs_r )
{ {
return input_port_read_indexed(machine, 1 /*+ 2 * player_mux*/); return input_port_read(machine, /* player_mux ? "INPUTS2" : */ "INPUTS1");
} }
static WRITE8_HANDLER( sound_irq_w ) static WRITE8_HANDLER( sound_irq_w )
@ -103,25 +103,25 @@ either from the system-bus for loading the palet-data or from the xor-registers
for displaying the content. for displaying the content.
so it's a palet-ram write-enable. so it's a palet-ram write-enable.
*/ */
AM_RANGE(0x00, 0x1f) AM_RAM AM_BASE(&colorram) //? AM_RANGE(0x00, 0x1f) AM_RAM AM_BASE(&colorram) //?
AM_RANGE(0x20, 0x20) AM_WRITENOP //??? seems unused.. AM_RANGE(0x20, 0x20) AM_WRITENOP //??? seems unused..
AM_RANGE(0x21, 0x21) AM_WRITE(player_mux_w) //??? no mux on the pcb. AM_RANGE(0x21, 0x21) AM_WRITE(player_mux_w) //??? no mux on the pcb.
AM_RANGE(0x22, 0x22) AM_WRITE(tile_banking_w) AM_RANGE(0x22, 0x22) AM_WRITE(tile_banking_w)
AM_RANGE(0x23, 0x23) AM_WRITENOP //? AM_RANGE(0x23, 0x23) AM_WRITENOP //?
AM_RANGE(0x24, 0x24) AM_WRITENOP //cab Knocker like in q-bert! AM_RANGE(0x24, 0x24) AM_WRITENOP //cab Knocker like in q-bert!
AM_RANGE(0x25, 0x27) AM_WRITE(wink_coin_counter_w) AM_RANGE(0x25, 0x27) AM_WRITE(wink_coin_counter_w)
AM_RANGE(0x40, 0x40) AM_WRITE(soundlatch_w) AM_RANGE(0x40, 0x40) AM_WRITE(soundlatch_w)
AM_RANGE(0x60, 0x60) AM_WRITE(sound_irq_w) AM_RANGE(0x60, 0x60) AM_WRITE(sound_irq_w)
AM_RANGE(0x80, 0x80) AM_READ(analog_port_r) AM_RANGE(0x80, 0x80) AM_READ(analog_port_r)
AM_RANGE(0xa0, 0xa0) AM_READ(player_inputs_r) AM_RANGE(0xa0, 0xa0) AM_READ(player_inputs_r)
AM_RANGE(0xa4, 0xa4) AM_READ(input_port_2_r) //dipswitch bank2 AM_RANGE(0xa4, 0xa4) AM_READ_PORT("DSW1") //dipswitch bank2
AM_RANGE(0xa8, 0xa8) AM_READ(input_port_3_r) //dipswitch bank1 AM_RANGE(0xa8, 0xa8) AM_READ_PORT("DSW2") //dipswitch bank1
AM_RANGE(0xac, 0xac) AM_WRITENOP //protection - loads video xor unit (written only once at startup) AM_RANGE(0xac, 0xac) AM_WRITENOP //protection - loads video xor unit (written only once at startup)
AM_RANGE(0xb0, 0xb0) AM_READ(input_port_4_r) //unused inputs AM_RANGE(0xb0, 0xb0) AM_READ_PORT("DSW3") //unused inputs
AM_RANGE(0xb4, 0xb4) AM_READ(input_port_5_r) //dipswitch bank3 AM_RANGE(0xb4, 0xb4) AM_READ_PORT("DSW4") //dipswitch bank3
AM_RANGE(0xc0, 0xdf) AM_WRITE(prot_w) //load load protection-buffer from upper address bus AM_RANGE(0xc0, 0xdf) AM_WRITE(prot_w) //load load protection-buffer from upper address bus
AM_RANGE(0xc3, 0xc3) AM_READNOP //watchdog? AM_RANGE(0xc3, 0xc3) AM_READNOP //watchdog?
AM_RANGE(0xe0, 0xff) AM_READ(prot_r) //load math unit from buffer & lower address-bus AM_RANGE(0xe0, 0xff) AM_READ(prot_r) //load math unit from buffer & lower address-bus
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( wink_sound_map, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( wink_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -137,20 +137,20 @@ static ADDRESS_MAP_START( wink_sound_io, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( wink ) static INPUT_PORTS_START( wink )
PORT_START PORT_START_TAG("DIAL1")
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(3) PORT_REVERSE PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(50) PORT_KEYDELTA(3) PORT_REVERSE
PORT_START PORT_START_TAG("INPUTS1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) // right curve PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON2 ) // right curve
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) // left curve PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) // left curve
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) // slam PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) // slam
PORT_START PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x01, 0x01, "1" ) PORT_DIPNAME( 0x01, 0x01, "1" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -176,7 +176,7 @@ static INPUT_PORTS_START( wink )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG("DSW2")
PORT_DIPNAME( 0x01, 0x01, "2" ) PORT_DIPNAME( 0x01, 0x01, "2" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -202,7 +202,7 @@ static INPUT_PORTS_START( wink )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG("DSW3")
PORT_DIPNAME( 0x01, 0x01, "3" ) PORT_DIPNAME( 0x01, 0x01, "3" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -228,7 +228,7 @@ static INPUT_PORTS_START( wink )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG("DSW4")
PORT_DIPNAME( 0x01, 0x01, "Summary" ) PORT_DIPNAME( 0x01, 0x01, "Summary" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )

View File

@ -74,11 +74,11 @@ static WRITE8_HANDLER( shared2_w )
static READ8_HANDLER( ports_r ) static READ8_HANDLER( ports_r )
{ {
int i,res; int i,res;
static const char *port[] = { "P1", "P2", "IN2", "IN3", "IN4", "IN5", "SYSTEM", "DSW" };
res = 0; res = 0;
for (i = 0;i < 8;i++) for (i = 0; i < 8; i++)
res |= ((input_port_read_indexed(machine, i) >> offset) & 1) << i; res |= ((input_port_read(machine, port[i]) >> offset) & 1) << i;
return res; return res;
} }
@ -118,7 +118,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( wiping ) static INPUT_PORTS_START( wiping )
PORT_START /* 0 */ PORT_START_TAG("P1") /* 0 */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY
@ -126,7 +126,7 @@ static INPUT_PORTS_START( wiping )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 1 */ PORT_START_TAG("P2") /* 1 */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
@ -134,15 +134,19 @@ static INPUT_PORTS_START( wiping )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 2 */ PORT_START_TAG("IN2") /* 2 */
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 3 */ PORT_START_TAG("IN3") /* 3 */
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 4 */ PORT_START_TAG("IN4") /* 4 */
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 5 */ PORT_START_TAG("IN5") /* 5 */
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 6 */ PORT_START_TAG("SYSTEM") /* 6 */
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x05, IP_ACTIVE_LOW, IPT_COIN2 ) /* note that this changes two bits */ PORT_BIT( 0x05, IP_ACTIVE_LOW, IPT_COIN2 ) /* note that this changes two bits */
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START1 )
@ -155,7 +159,7 @@ static INPUT_PORTS_START( wiping )
PORT_DIPSETTING( 0x00, "30000 70000" ) PORT_DIPSETTING( 0x00, "30000 70000" )
PORT_DIPSETTING( 0x80, "50000 150000" ) PORT_DIPSETTING( 0x80, "50000 150000" )
PORT_START /* 7 */ PORT_START_TAG("DSW") /* 7 */
PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coin_B ) ) PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coin_B ) )
PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )
@ -183,7 +187,7 @@ INPUT_PORTS_END
/* identical apart from bonus life */ /* identical apart from bonus life */
static INPUT_PORTS_START( rugrats ) static INPUT_PORTS_START( rugrats )
PORT_START /* 0 */ PORT_START_TAG("P1") /* 0 */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY
@ -191,7 +195,7 @@ static INPUT_PORTS_START( rugrats )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 1 */ PORT_START_TAG("P2") /* 1 */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
@ -199,15 +203,19 @@ static INPUT_PORTS_START( rugrats )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_UNUSED ) PORT_BIT( 0xe0, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 2 */ PORT_START_TAG("IN2") /* 2 */
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 3 */ PORT_START_TAG("IN3") /* 3 */
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 4 */ PORT_START_TAG("IN4") /* 4 */
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 5 */ PORT_START_TAG("IN5") /* 5 */
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START /* 6 */ PORT_START_TAG("SYSTEM") /* 6 */
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x05, IP_ACTIVE_LOW, IPT_COIN2 ) /* note that this changes two bits */ PORT_BIT( 0x05, IP_ACTIVE_LOW, IPT_COIN2 ) /* note that this changes two bits */
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START1 ) PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_START1 )
@ -220,7 +228,7 @@ static INPUT_PORTS_START( rugrats )
PORT_DIPSETTING( 0x00, "100000 200000" ) PORT_DIPSETTING( 0x00, "100000 200000" )
PORT_DIPSETTING( 0x80, "150000 300000" ) PORT_DIPSETTING( 0x80, "150000 300000" )
PORT_START /* 7 */ PORT_START_TAG("DSW") /* 7 */
PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coin_B ) ) PORT_DIPNAME( 0x07, 0x01, DEF_STR( Coin_B ) )
PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 1C_2C ) )

View File

@ -50,7 +50,7 @@ GFX
tileno = vram | ((cram & 0xf0) << 4), tileno = vram | ((cram & 0xf0) << 4),
color = cram & 0x0f color = cram & 0x0f
The background is scrolled via 2 registers accessed through one of the ym2203, port A&B The background is scrolled via 2 registers accessed through one of the ym2203,PORT A&B
The scrolling is set by CPU2 in its interrupt handler. The scrolling is set by CPU2 in its interrupt handler.
CPU1 doesn't seem to offset vram accesses for the scrolling, so it's assumed to be done CPU1 doesn't seem to offset vram accesses for the scrolling, so it's assumed to be done
in hardware. in hardware.
@ -80,13 +80,13 @@ Sound
Mapped @0x8010-0x8016 Mapped @0x8010-0x8016
Had to patch es8712.c to start playing on 0x8016 write and to prevent continuous looping. Had to patch es8712.c to start playing on 0x8016 write and to prevent continuous looping.
There's a test on bit1 at offset 0 (0x8010), so this may be a "read status" kind of port. There's a test on bit1 at offset 0 (0x8010), so this may be a "read status" kind ofPORT.
For now reading at 8010 always reports ready. For now reading at 8010 always reports ready.
Ports Ports
0xA000-0xA00f : Various ports yet to figure out... 0xA000-0xA00f : VariousPORTs yet to figure out...
- 0xA000 : unknown ; seems muxed with a002 - 0xA000 : unknown ; seems muxed with a002
- 0xA002 : banking? - 0xA002 : banking?
@ -94,7 +94,7 @@ Ports
mapped 0x0800-0x7fff? mapped 0x0800-0x7fff?
0x0000-0x07ff ignored? 0x0000-0x07ff ignored?
see code @ 61d see code @ 61d
lower bits seems to mux port A000 reads lower bits seems to muxPORT A000 reads
- 0xA003 : ? - 0xA003 : ?
- 0xA004 : dipswitches - 0xA004 : dipswitches
- 0xA005 : dipswitches - 0xA005 : dipswitches
@ -122,7 +122,7 @@ Memory
we may suppose that this memory range (0xf000-0xf0ff) is shared too. we may suppose that this memory range (0xf000-0xf0ff) is shared too.
Moreover, range 0xf100-0xf17f is checked after reset without prior initialization and Moreover, range 0xf100-0xf17f is checked after reset without prior initialization and
is being reset ONLY by changing a particular port bit whose modification ends up with is being reset ONLY by changing a particularPORT bit whose modification ends up with
a soft reboot. This looks like a good candidate for an NVRAM segment. a soft reboot. This looks like a good candidate for an NVRAM segment.
Whether CPU2 can access the NVRAM or not is still a mystery considering that it never Whether CPU2 can access the NVRAM or not is still a mystery considering that it never
attempts to do so. attempts to do so.
@ -133,7 +133,7 @@ Memory
CPU1: CPU1:
The ROM segment (0x0000-0x7fff) is banked, but the 0x0000-0x07ff region does not look The ROM segment (0x0000-0x7fff) is banked, but the 0x0000-0x07ff region does not look
like being affected (the SEGA Master System did something similar IIRC). A particular like being affected (the SEGA Master System did something similar IIRC). A particular
bank is selected by changing the two most significant bits of port 0xa002 (swapped?). bank is selected by changing the two most significant bits ofPORT 0xa002 (swapped?).
CPU2: CPU2:
No banking No banking
@ -153,12 +153,12 @@ Interesting memory locations
d = DOUBLE UP | ON ; OFF d = DOUBLE UP | ON ; OFF
cccc = COIN IN1 | 1-1 ; 1-2 ; 1-3 ; 1-4 ; 1-5 ; 1-6 ; 1-7 ; 1-8 ; 1-9 ; 1-10 ; 1-15 ; 1-20 ; 1-25 ; 1-30 ; 1-40 ; 1-50 cccc = COIN IN1 | 1-1 ; 1-2 ; 1-3 ; 1-4 ; 1-5 ; 1-6 ; 1-7 ; 1-8 ; 1-9 ; 1-10 ; 1-15 ; 1-20 ; 1-25 ; 1-30 ; 1-40 ; 1-50
*f182 : sttpcccc / PortA *f182 : sttpcccc /PORTA
cccc = COIN IN2 | 1-1 ; 1-2 ; 1-3 ; 1-4 ; 1-5 ; 1-6 ; 1-7 ; 1-8 ; 1-9 ; 1-10 ; 2-1 ; 3-1 ; 4-1 ; 5-1 ; 6-1 ; 10-1 cccc = COIN IN2 | 1-1 ; 1-2 ; 1-3 ; 1-4 ; 1-5 ; 1-6 ; 1-7 ; 1-8 ; 1-9 ; 1-10 ; 2-1 ; 3-1 ; 4-1 ; 5-1 ; 6-1 ; 10-1
p = PAYOUT SWITCH | ON ; OFF p = PAYOUT SWITCH | ON ; OFF
tt = TIME | 40 ; 45 ; 50 ; 55 tt = TIME | 40 ; 45 ; 50 ; 55
s = DEMO SOUND | ON ; OFF s = DEMO SOUND | ON ; OFF
*f183 : xxxxhllb / PortB *f183 : xxxxhllb /PORTB
b = AUTO BET | ON ; OFF b = AUTO BET | ON ; OFF
ll = GAME LIMIT | 500 ; 1000 ; 5000 ; 990000 ll = GAME LIMIT | 500 ; 1000 ; 5000 ; 990000
h = HOPPER ACTIVE | LOW ; HIGH h = HOPPER ACTIVE | LOW ; HIGH
@ -175,7 +175,7 @@ Interesting memory locations
+f192-f194 : credits (bcd) +f192-f194 : credits (bcd)
+fd00 = cpu2 ready +fd00 = cpu2 ready
+f211 = input port cache? +f211 = inputPORT cache?
CPU2 Commands : CPU2 Commands :
-0xfd01 start music -0xfd01 start music
@ -186,7 +186,7 @@ Interesting memory locations
TODO : TODO :
- Figure out the ports for the "PayOut" stuff (a006/a00c?) - Figure out thePORTs for the "PayOut" stuff (a006/a00c?)
*/ */
#include "driver.h" #include "driver.h"
@ -315,59 +315,59 @@ static READ8_HANDLER( gfx1_cram_r )
static READ8_HANDLER(read_a00x) static READ8_HANDLER(read_a00x)
{ {
switch(offset) switch(offset)
{ {
case 0x02: return reg_a002; case 0x02: return reg_a002;
case 0x04: return input_port_read(machine, "A004"); case 0x04: return input_port_read(machine, "A004");
case 0x05: return input_port_read(machine, "A005"); case 0x05: return input_port_read(machine, "A005");
case 0x0c: return input_port_read_indexed(machine, 0); // stats / reset case 0x0c: return input_port_read(machine, "SERVICE"); // stats / reset
case 0x0e: return input_port_read(machine, "A00E");// coin/reset case 0x0e: return input_port_read(machine, "A00E"); // coin/reset
} }
if(offset == 0x00) //muxed with A002?
if(offset==0x00) //muxed with A002? {
{ switch(reg_a002 & 0x3f)
switch(reg_a002&0x3f) {
{ case 0x3b:
case 0x3b: return input_port_read(machine, "UNK"); //bet10 / pay out
return input_port_read_indexed(machine, 2);//bet10 / pay out case 0x3e:
case 0x3e: return input_port_read(machine, "INPUTS"); //TODO : trace f564
return input_port_read_indexed(machine, 3);//TODO : trace f564 case 0x3d:
case 0x3d: return input_port_read(machine, "A005");
return input_port_read_indexed(machine, 4); default:
default: logerror("A000 read with mux=0x%02x\n", reg_a002 & 0x3f);
logerror("A000 read with mux=0x%02x\n",reg_a002&0x3f); }
} }
} return 0xff;
return 0xff;
} }
static WRITE8_HANDLER(write_a00x) static WRITE8_HANDLER(write_a00x)
{ {
switch(offset) switch(offset)
{
case 0x02: //A002 bit 7&6 = bank ????
{ {
int newbank; case 0x02: //A002 bit 7&6 = bank ????
reg_a002=data; {
newbank=(data>>6)&3; int newbank;
if(newbank!=bank) reg_a002 = data;
{ newbank = (data>>6)&3;
UINT8 *ROM = memory_region(machine, REGION_CPU1);
bank=newbank; if(newbank != bank)
ROM = &ROM[0x10000+0x8000 * newbank + UNBANKED_SIZE]; {
memory_set_bankptr(1,ROM); UINT8 *ROM = memory_region(machine, REGION_CPU1);
} bank = newbank;
ROM = &ROM[0x10000+0x8000 * newbank + UNBANKED_SIZE];
memory_set_bankptr(1,ROM);
}
}
break;
case 0x06: // bit 1 = coin lockout/counter ?
break;
case 0x08: //A008
cpunum_set_input_line(machine, cpu_getactivecpu(),0,CLEAR_LINE);
break;
} }
break;
case 0x06: // bit 1 = coin lockout/counter ?
break;
case 0x08: //A008
cpunum_set_input_line(machine, cpu_getactivecpu(),0,CLEAR_LINE);
break;
}
} }
static READ8_HANDLER(prot_read_700x) static READ8_HANDLER(prot_read_700x)
@ -468,90 +468,88 @@ static ADDRESS_MAP_START( map_sub, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8009, 0x8009) AM_READWRITE(YM2203_read_port_1_r, YM2203_write_port_1_w) AM_RANGE(0x8009, 0x8009) AM_READWRITE(YM2203_read_port_1_r, YM2203_write_port_1_w)
AM_RANGE(0x8010, 0x8016) AM_READWRITE(read_8010, ES8712_data_0_w) AM_RANGE(0x8010, 0x8016) AM_READWRITE(read_8010, ES8712_data_0_w)
AM_RANGE(0xa000, 0xa00f) AM_READWRITE(read_a00x, write_a00x) AM_RANGE(0xa000, 0xa00f) AM_READWRITE(read_a00x, write_a00x)
AM_RANGE(0xf000, 0xf0ff) AM_RAM AM_SHARE(1) AM_RANGE(0xf000, 0xf0ff) AM_RAM AM_SHARE(1)
AM_RANGE(0xf180, 0xffff) AM_RAM AM_SHARE(2) AM_RANGE(0xf180, 0xffff) AM_RAM AM_SHARE(2)
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( witch ) static INPUT_PORTS_START( witch )
PORT_START /* DSW */ PORT_START_TAG("SERVICE") /* DSW */
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x04, DEF_STR( Off ) ) PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("NVRAM Init") PORT_CODE(KEYCODE_F1) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("NVRAM Init") PORT_CODE(KEYCODE_F1)
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Stats") PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_NAME("Stats")
PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START_TAG("A00E") /* DSW */ PORT_START_TAG("A00E") /* DSW */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Key In") PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_NAME("Key In")
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Reset ?") PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Reset ?")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) ) PORT_START_TAG("UNK") /* DSW ?*/
PORT_DIPSETTING( 0x10, DEF_STR( Off ) ) PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) ) PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START_TAG("INPUTS") /* Inputs */
PORT_START /* DSW ?*/ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Left Flipper")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Big")
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Small")
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Take")
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Double Up")
PORT_DIPSETTING( 0x02, DEF_STR( Off ) ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("Bet")
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Right Flipper")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x08, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START /* Inputs */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_NAME("Left Flipper")
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_NAME("Big")
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_NAME("Small")
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_NAME("Take")
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_NAME("Double Up")
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("Bet")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_NAME("Right Flipper")
/* /*
F180 kkkbbppp ; Read on port 0xA005 F180 kkkbbppp ; Read onPORT 0xA005
ppp = PAY OUT | 60 ; 65 ; 70 ; 75 ; 80 ; 85 ; 90 ; 95 ppp = PAY OUT | 60 ; 65 ; 70 ; 75 ; 80 ; 85 ; 90 ; 95
bb = MAX BET | 20 ; 30 ; 40 ; 60 bb = MAX BET | 20 ; 30 ; 40 ; 60
kkk = KEY IN | 1-10 ; 1-20 ; 1-40 ; 1-50 ; 1-100 ; 1-200 ; 1-250 ; 1-500 kkk = KEY IN | 1-10 ; 1-20 ; 1-40 ; 1-50 ; 1-100 ; 1-200 ; 1-250 ; 1-500
@ -581,7 +579,7 @@ F180 kkkbbppp ; Read on port 0xA005
PORT_DIPSETTING( 0x20, "1-250" ) PORT_DIPSETTING( 0x20, "1-250" )
PORT_DIPSETTING( 0x00, "1-500" ) PORT_DIPSETTING( 0x00, "1-500" )
/* /*
*f181 : ccccxxxd ; Read on port 0xA004 *f181 : ccccxxxd ; Read onPORT 0xA004
d = DOUBLE UP | ON ; OFF d = DOUBLE UP | ON ; OFF
cccc = COIN IN1 | 1-1 ; 1-2 ; 1-3 ; 1-4 ; 1-5 ; 1-6 ; 1-7 ; 1-8 ; 1-9 ; 1-10 ; 1-15 ; 1-20 ; 1-25 ; 1-30 ; 1-40 ; 1-50 cccc = COIN IN1 | 1-1 ; 1-2 ; 1-3 ; 1-4 ; 1-5 ; 1-6 ; 1-7 ; 1-8 ; 1-9 ; 1-10 ; 1-15 ; 1-20 ; 1-25 ; 1-30 ; 1-40 ; 1-50
*/ */
@ -608,7 +606,7 @@ F180 kkkbbppp ; Read on port 0xA005
PORT_DIPSETTING( 0x00, "1-50" ) PORT_DIPSETTING( 0x00, "1-50" )
/* /*
*f182 : sttpcccc ; Read on Port A of YM2203 @ 0x8001 *f182 : sttpcccc ; Read onPORT A of YM2203 @ 0x8001
cccc = COIN IN2 | 1-1 ; 1-2 ; 1-3 ; 1-4 ; 1-5 ; 1-6 ; 1-7 ; 1-8 ; 1-9 ; 1-10 ; 2-1 ; 3-1 ; 4-1 ; 5-1 ; 6-1 ; 10-1 cccc = COIN IN2 | 1-1 ; 1-2 ; 1-3 ; 1-4 ; 1-5 ; 1-6 ; 1-7 ; 1-8 ; 1-9 ; 1-10 ; 2-1 ; 3-1 ; 4-1 ; 5-1 ; 6-1 ; 10-1
p = PAYOUT SWITCH | ON ; OFF p = PAYOUT SWITCH | ON ; OFF
tt = TIME | 40 ; 45 ; 50 ; 55 tt = TIME | 40 ; 45 ; 50 ; 55
@ -645,7 +643,7 @@ F180 kkkbbppp ; Read on port 0xA005
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
/* /*
*f183 : xxxxhllb ; Read on Port B of YM2203 @ 0x8001 *f183 : xxxxhllb ; Read onPORT B of YM2203 @ 0x8001
b = AUTO BET | ON ; OFF b = AUTO BET | ON ; OFF
ll = GAME LIMIT | 500 ; 1000 ; 5000 ; 990000 ll = GAME LIMIT | 500 ; 1000 ; 5000 ; 990000
h = HOPPER ACTIVE | LOW ; HIGH h = HOPPER ACTIVE | LOW ; HIGH
@ -662,7 +660,6 @@ F180 kkkbbppp ; Read on port 0xA005
PORT_DIPNAME( 0x08, 0x08, "HOPPER" ) PORT_DIPNAME( 0x08, 0x08, "HOPPER" )
PORT_DIPSETTING( 0x08, DEF_STR(Low) ) PORT_DIPSETTING( 0x08, DEF_STR(Low) )
PORT_DIPSETTING( 0x00, DEF_STR(High) ) PORT_DIPSETTING( 0x00, DEF_STR(High) )
INPUT_PORTS_END INPUT_PORTS_END
static const struct ES8712interface es8712_interface = static const struct ES8712interface es8712_interface =

View File

@ -58,13 +58,13 @@ static MACHINE_RESET( wolfpack )
static READ8_HANDLER( wolfpack_input_r ) static READ8_HANDLER( wolfpack_input_r )
{ {
UINT8 val = input_port_read_indexed(machine, 0); UINT8 val = input_port_read(machine, "INPUTS");
if (((input_port_read_indexed(machine, 2) + 0) / 2) & 1) if (((input_port_read(machine, "DIAL") + 0) / 2) & 1)
{ {
val |= 1; val |= 1;
} }
if (((input_port_read_indexed(machine, 2) + 1) / 2) & 1) if (((input_port_read(machine, "DIAL") + 1) / 2) & 1)
{ {
val |= 2; val |= 2;
} }
@ -162,7 +162,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x200d, 0x200d) AM_WRITE(wolfpack_attract_w) AM_RANGE(0x200d, 0x200d) AM_WRITE(wolfpack_attract_w)
AM_RANGE(0x200e, 0x200e) AM_WRITE(wolfpack_pt_pos_select_w) AM_RANGE(0x200e, 0x200e) AM_WRITE(wolfpack_pt_pos_select_w)
AM_RANGE(0x200f, 0x200f) AM_WRITE(wolfpack_warning_light_w) AM_RANGE(0x200f, 0x200f) AM_WRITE(wolfpack_warning_light_w)
AM_RANGE(0x3000, 0x3000) AM_READ(input_port_1_r) AM_RANGE(0x3000, 0x3000) AM_READ_PORT("DSW")
AM_RANGE(0x3000, 0x3000) AM_WRITE(wolfpack_audamp_w) AM_RANGE(0x3000, 0x3000) AM_WRITE(wolfpack_audamp_w)
AM_RANGE(0x3001, 0x3001) AM_WRITE(wolfpack_pt_horz_w) AM_RANGE(0x3001, 0x3001) AM_WRITE(wolfpack_pt_horz_w)
AM_RANGE(0x3003, 0x3003) AM_WRITE(wolfpack_pt_pic_w) AM_RANGE(0x3003, 0x3003) AM_WRITE(wolfpack_pt_pic_w)
@ -183,8 +183,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( wolfpack ) static INPUT_PORTS_START( wolfpack )
PORT_START_TAG("INPUTS")
PORT_START
PORT_BIT ( 0x03, IP_ACTIVE_HIGH, IPT_UNUSED ) /* dial connects here */ PORT_BIT ( 0x03, IP_ACTIVE_HIGH, IPT_UNUSED ) /* dial connects here */
PORT_BIT ( 0x04, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT ( 0x04, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 )
@ -193,7 +192,7 @@ static INPUT_PORTS_START( wolfpack )
PORT_BIT ( 0x40, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT ( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT ( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT ( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START PORT_START_TAG("DSW")
PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) ) PORT_DIPNAME( 0x03, 0x01, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x03, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
@ -216,7 +215,7 @@ static INPUT_PORTS_START( wolfpack )
PORT_DIPSETTING( 0x80, "16000" ) PORT_DIPSETTING( 0x80, "16000" )
PORT_DIPSETTING( 0xc0, "20000" ) PORT_DIPSETTING( 0xc0, "20000" )
PORT_START PORT_START_TAG("DIAL")
PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(5) PORT_BIT( 0xff, 0x00, IPT_DIAL ) PORT_SENSITIVITY(30) PORT_KEYDELTA(5)
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -85,15 +85,15 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_BASE(&spriteram16) /* SPR Ram */ AM_RANGE(0x100000, 0x1003ff) AM_RAM AM_BASE(&spriteram16) /* SPR Ram */
AM_RANGE(0x140000, 0x140fff) AM_WRITE(paletteram16_xxxxBBBBGGGGRRRR_word_w) AM_BASE(&paletteram16) AM_RANGE(0x140000, 0x140fff) AM_WRITE(paletteram16_xxxxBBBBGGGGRRRR_word_w) AM_BASE(&paletteram16)
AM_RANGE(0x180000, 0x180003) AM_WRITE(wwfsstar_irqack_w) AM_RANGE(0x180000, 0x180003) AM_WRITE(wwfsstar_irqack_w)
AM_RANGE(0x180000, 0x180001) AM_READ(input_port_3_word_r) /* DSW0 */ AM_RANGE(0x180000, 0x180001) AM_READ_PORT("DSW0") /* DSW0 */
AM_RANGE(0x180002, 0x180003) AM_READ(input_port_4_word_r) /* DSW1 */ AM_RANGE(0x180002, 0x180003) AM_READ_PORT("DSW1") /* DSW1 */
AM_RANGE(0x180004, 0x180005) AM_READ(input_port_0_word_r) /* CTRLS0 */ AM_RANGE(0x180004, 0x180005) AM_READ_PORT("P1") /* CTRLS0 */
AM_RANGE(0x180004, 0x180007) AM_WRITE(wwfsstar_scrollwrite) AM_RANGE(0x180004, 0x180007) AM_WRITE(wwfsstar_scrollwrite)
AM_RANGE(0x180006, 0x180007) AM_READ(input_port_1_word_r) /* CTRLS1 */ AM_RANGE(0x180006, 0x180007) AM_READ_PORT("P2") /* CTRLS1 */
AM_RANGE(0x180008, 0x180009) AM_READ(input_port_2_word_r_cust) /* MISC */ AM_RANGE(0x180008, 0x180009) AM_READ(input_port_2_word_r_cust) /* MISC */
AM_RANGE(0x180008, 0x180009) AM_WRITE(wwfsstar_soundwrite) AM_RANGE(0x180008, 0x180009) AM_WRITE(wwfsstar_soundwrite)
AM_RANGE(0x18000a, 0x18000b) AM_WRITE(wwfsstar_flipscreen_w) AM_RANGE(0x18000a, 0x18000b) AM_WRITE(wwfsstar_flipscreen_w)
AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* Work Ram */ AM_RANGE(0x1c0000, 0x1c3fff) AM_RAM /* Work Ram */
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 ) static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -191,7 +191,7 @@ static INTERRUPT_GEN( wwfsstars_interrupt )
static READ16_HANDLER( input_port_2_word_r_cust ) static READ16_HANDLER( input_port_2_word_r_cust )
{ {
return input_port_read_indexed(machine, 2) | vblank; return input_port_read(machine, "SYSTEM") | vblank;
} }
/******************************************************************************* /*******************************************************************************
@ -203,7 +203,7 @@ static READ16_HANDLER( input_port_2_word_r_cust )
*******************************************************************************/ *******************************************************************************/
static INPUT_PORTS_START( wwfsstar ) static INPUT_PORTS_START( wwfsstar )
PORT_START PORT_START_TAG("P1")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
@ -211,19 +211,19 @@ static INPUT_PORTS_START( wwfsstar )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT(0x0080, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Button A (1P VS CPU - Power Up)") PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START1 ) PORT_NAME("Button A (1P VS CPU - Power Up)")
PORT_START PORT_START_TAG("P2")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT(0x0040, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Button C (1P/2P VS CPU)") PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START3 ) PORT_NAME("Button C (1P/2P VS CPU)")
PORT_BIT(0x0080, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("Button B (1P VS 2P - Buy-in)") PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START2 ) PORT_NAME("Button B (1P VS 2P - Buy-in)")
PORT_START PORT_START_TAG("SYSTEM")
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* VBlank */ PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* VBlank */
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN2 )
@ -233,7 +233,7 @@ static INPUT_PORTS_START( wwfsstar )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START /* DSW0 */ PORT_START_TAG("DSW0") /* DSW0 */
PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) ) PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
@ -259,7 +259,7 @@ static INPUT_PORTS_START( wwfsstar )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START /* DSW1 */ PORT_START_TAG("DSW1") /* DSW1 */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x01, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x01, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x03, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x03, DEF_STR( Normal ) )

View File

@ -149,24 +149,24 @@ static READ16_HANDLER( wwfwfest_inputs_read )
switch (offset) switch (offset)
{ {
case 0x00: case 0x00:
tmp = input_port_read_indexed(machine, 0) | input_port_read_indexed(machine, 4) << 8; tmp = input_port_read(machine, "P1") | input_port_read(machine, "SYSTEM") << 8;
tmp &= 0xcfff; tmp &= 0xcfff;
tmp |= ((input_port_read_indexed(machine, 7) & 0xc0) << 6); tmp |= ((input_port_read(machine, "DSW2") & 0xc0) << 6);
break; break;
case 0x01: case 0x01:
tmp = input_port_read_indexed(machine, 1); tmp = input_port_read(machine, "P2");
tmp &= 0xc0ff; tmp &= 0xc0ff;
tmp |= ((input_port_read_indexed(machine, 7) & 0x3f)<<8); tmp |= ((input_port_read(machine, "DSW2") & 0x3f)<<8);
break; break;
case 0x02: case 0x02:
tmp = input_port_read_indexed(machine, 2); tmp = input_port_read(machine, "P3");
tmp &= 0xc0ff; tmp &= 0xc0ff;
tmp |= ((input_port_read_indexed(machine, 6) & 0x3f)<<8); tmp |= ((input_port_read(machine, "DSW1") & 0x3f)<<8);
break; break;
case 0x03: case 0x03:
tmp = (input_port_read_indexed(machine, 3) | input_port_read_indexed(machine, 5) << 8) ; tmp = (input_port_read(machine, "P4") | input_port_read(machine, "VBLANK") << 8) ;
tmp &= 0xfcff; tmp &= 0xfcff;
tmp |= ((input_port_read_indexed(machine, 6) & 0xc0) << 2); tmp |= ((input_port_read(machine, "DSW1") & 0xc0) << 2);
break; break;
} }
@ -193,7 +193,7 @@ static WRITE16_HANDLER ( wwfwfest_soundwrite )
*******************************************************************************/ *******************************************************************************/
static INPUT_PORTS_START( wwfwfest ) static INPUT_PORTS_START( wwfwfest )
PORT_START /* Player 1 */ PORT_START_TAG("P1") /* Player 1 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
@ -203,7 +203,7 @@ static INPUT_PORTS_START( wwfwfest )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START1 )
PORT_START /* Player 2 */ PORT_START_TAG("P2") /* Player 2 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
@ -213,7 +213,7 @@ static INPUT_PORTS_START( wwfwfest )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START2 )
PORT_START /* Player 3 */ PORT_START_TAG("P3") /* Player 3 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(3) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(3)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(3) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(3)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(3) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(3)
@ -223,7 +223,7 @@ static INPUT_PORTS_START( wwfwfest )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START3 ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START3 )
PORT_START /* Player 4 */ PORT_START_TAG("P4") /* Player 4 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(4) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(4)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(4) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(4)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(4) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(4)
@ -233,7 +233,7 @@ static INPUT_PORTS_START( wwfwfest )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START4 ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_START4 )
PORT_START /* Misc 1 */ PORT_START_TAG("SYSTEM") /* Misc 1 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -243,7 +243,7 @@ static INPUT_PORTS_START( wwfwfest )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* Misc 2 */ PORT_START_TAG("VBLANK") /* Misc 2 */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_VBLANK ) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_VBLANK )
@ -255,7 +255,7 @@ static INPUT_PORTS_START( wwfwfest )
/* Nb: There are actually 3 dips on the board, 2 * 8, and 1 *4 */ /* Nb: There are actually 3 dips on the board, 2 * 8, and 1 *4 */
PORT_START /* Dips 1 */ PORT_START_TAG("DSW1") /* Dips 1 */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2") PORT_DIPNAME( 0x03, 0x03, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW1:1,2")
PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
@ -280,7 +280,7 @@ static INPUT_PORTS_START( wwfwfest )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x80, DEF_STR( On ) ) PORT_DIPSETTING( 0x80, DEF_STR( On ) )
PORT_START /* Dips 2 */ PORT_START_TAG("DSW2") /* Dips 2 */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:1,2") PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:1,2")
PORT_DIPSETTING( 0x02, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x02, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x03, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x03, DEF_STR( Normal ) )

View File

@ -245,7 +245,7 @@ static WRITE8_HANDLER( xain_68705_w )
static READ8_HANDLER( xain_input_port_4_r ) static READ8_HANDLER( xain_input_port_4_r )
{ {
return input_port_read_indexed(machine, 4) | vblank; return input_port_read(machine, "VBLANK") | vblank;
} }
static INTERRUPT_GEN( xain_interrupt ) static INTERRUPT_GEN( xain_interrupt )
@ -274,12 +274,12 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x2800, 0x2fff) AM_WRITE(xain_bgram1_w) AM_BASE(&xain_bgram1) AM_RANGE(0x2800, 0x2fff) AM_WRITE(xain_bgram1_w) AM_BASE(&xain_bgram1)
AM_RANGE(0x3000, 0x37ff) AM_WRITE(xain_bgram0_w) AM_BASE(&xain_bgram0) AM_RANGE(0x3000, 0x37ff) AM_WRITE(xain_bgram0_w) AM_BASE(&xain_bgram0)
AM_RANGE(0x3800, 0x397f) AM_RAM AM_BASE(&spriteram) AM_SIZE(&spriteram_size) AM_RANGE(0x3800, 0x397f) AM_RAM AM_BASE(&spriteram) AM_SIZE(&spriteram_size)
AM_RANGE(0x3a00, 0x3a00) AM_READ(input_port_0_r) AM_RANGE(0x3a00, 0x3a00) AM_READ_PORT("P1")
AM_RANGE(0x3a00, 0x3a01) AM_WRITE(xain_scrollxP1_w) AM_RANGE(0x3a00, 0x3a01) AM_WRITE(xain_scrollxP1_w)
AM_RANGE(0x3a01, 0x3a01) AM_READ(input_port_1_r) AM_RANGE(0x3a01, 0x3a01) AM_READ_PORT("P2")
AM_RANGE(0x3a02, 0x3a02) AM_READ(input_port_2_r) AM_RANGE(0x3a02, 0x3a02) AM_READ_PORT("DSW0")
AM_RANGE(0x3a02, 0x3a03) AM_WRITE(xain_scrollyP1_w) AM_RANGE(0x3a02, 0x3a03) AM_WRITE(xain_scrollyP1_w)
AM_RANGE(0x3a03, 0x3a03) AM_READ(input_port_3_r) AM_RANGE(0x3a03, 0x3a03) AM_READ_PORT("DSW1")
AM_RANGE(0x3a04, 0x3a04) AM_READ(xain_68705_r) /* from the 68705 */ AM_RANGE(0x3a04, 0x3a04) AM_READ(xain_68705_r) /* from the 68705 */
AM_RANGE(0x3a04, 0x3a05) AM_WRITE(xain_scrollxP0_w) AM_RANGE(0x3a04, 0x3a05) AM_WRITE(xain_scrollxP0_w)
AM_RANGE(0x3a05, 0x3a05) AM_READ(xain_input_port_4_r) AM_RANGE(0x3a05, 0x3a05) AM_READ(xain_input_port_4_r)
@ -323,7 +323,7 @@ static ADDRESS_MAP_START( sound_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( xsleena ) static INPUT_PORTS_START( xsleena )
PORT_START_TAG("IN0") PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
@ -333,7 +333,7 @@ static INPUT_PORTS_START( xsleena )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
PORT_START_TAG("IN1") PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
@ -389,7 +389,7 @@ static INPUT_PORTS_START( xsleena )
PORT_DIPSETTING( 0x40, "6") PORT_DIPSETTING( 0x40, "6")
PORT_DIPSETTING( 0x00, "Infinite (Cheat") PORT_DIPSETTING( 0x00, "Infinite (Cheat")
PORT_START_TAG("IN2") PORT_START_TAG("VBLANK")
PORT_BIT( 0x03, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x03, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* when 0, 68705 is ready to send data */ PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* when 0, 68705 is ready to send data */

View File

@ -207,7 +207,7 @@ static READ16_HANDLER( control1_r )
/* bit 0 is EEPROM data */ /* bit 0 is EEPROM data */
/* bit 1 is EEPROM ready */ /* bit 1 is EEPROM ready */
/* bit 3 is service button */ /* bit 3 is service button */
res = eeprom_read_bit() | input_port_read_indexed(machine,1); res = eeprom_read_bit() | input_port_read(machine, "EEPROM");
if (init_eeprom_count) if (init_eeprom_count)
{ {
@ -367,9 +367,9 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x0d6014, 0x0d6015) AM_READ(sound_status_r) AM_RANGE(0x0d6014, 0x0d6015) AM_READ(sound_status_r)
AM_RANGE(0x0d6000, 0x0d601f) AM_RAM // sound regs fall through AM_RANGE(0x0d6000, 0x0d601f) AM_RAM // sound regs fall through
AM_RANGE(0x0d8000, 0x0d8007) AM_WRITE(K056832_b_word_w) // VSCCS regs AM_RANGE(0x0d8000, 0x0d8007) AM_WRITE(K056832_b_word_w) // VSCCS regs
AM_RANGE(0x0da000, 0x0da001) AM_READ(input_port_2_word_r) AM_RANGE(0x0da000, 0x0da001) AM_READ_PORT("P1")
AM_RANGE(0x0da002, 0x0da003) AM_READ(input_port_3_word_r) AM_RANGE(0x0da002, 0x0da003) AM_READ_PORT("P2")
AM_RANGE(0x0dc000, 0x0dc001) AM_READ(input_port_0_word_r) AM_RANGE(0x0dc000, 0x0dc001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x0dc002, 0x0dc003) AM_READ(control1_r) AM_RANGE(0x0dc002, 0x0dc003) AM_READ(control1_r)
AM_RANGE(0x0de000, 0x0de001) AM_READWRITE(control2_r, control2_w) AM_RANGE(0x0de000, 0x0de001) AM_READWRITE(control2_r, control2_w)
AM_RANGE(0x100000, 0x17ffff) AM_ROM AM_RANGE(0x100000, 0x17ffff) AM_ROM
@ -406,7 +406,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( xexex ) static INPUT_PORTS_START( xexex )
PORT_START PORT_START_TAG("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -416,14 +416,14 @@ static INPUT_PORTS_START( xexex )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("EEPROM")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* EEPROM data */ PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* EEPROM data */
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SPECIAL ) /* EEPROM ready (always 1) */ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SPECIAL ) /* EEPROM ready (always 1) */
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_SERVICE_NO_TOGGLE( 0x08, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x08, IP_ACTIVE_LOW )
PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0xf0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) 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( 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) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
@ -433,7 +433,7 @@ static INPUT_PORTS_START( xexex )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) 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( 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) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)

View File

@ -76,7 +76,7 @@ logerror("%06x eeprom_r\n",activecpu_get_pc());
/* bit 6 is EEPROM data */ /* bit 6 is EEPROM data */
/* bit 7 is EEPROM ready */ /* bit 7 is EEPROM ready */
/* bit 14 is service button */ /* bit 14 is service button */
res = (eeprom_read_bit() << 6) | input_port_read_indexed(machine,2); res = (eeprom_read_bit() << 6) | input_port_read(machine, "EEPROM");
if (init_eeprom_count) if (init_eeprom_count)
{ {
init_eeprom_count--; init_eeprom_count--;
@ -93,13 +93,13 @@ logerror("%06x xmen6p_eeprom_r\n",activecpu_get_pc());
/* bit 6 is EEPROM data */ /* bit 6 is EEPROM data */
/* bit 7 is EEPROM ready */ /* bit 7 is EEPROM ready */
/* bit 14 is service button */ /* bit 14 is service button */
res = (eeprom_read_bit() << 6) | input_port_read_indexed(machine,2); res = (eeprom_read_bit() << 6) | input_port_read(machine, "EEPROM");
if (init_eeprom_count) if (init_eeprom_count)
{ {
init_eeprom_count--; init_eeprom_count--;
res &= 0xbfff; res &= 0xbfff;
} }
return (res&0x7fff)|xmen_current_frame; return (res & 0x7fff) | xmen_current_frame;
} }
@ -182,8 +182,8 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x10804e, 0x10804f) AM_WRITE(sound_irq_w) AM_RANGE(0x10804e, 0x10804f) AM_WRITE(sound_irq_w)
AM_RANGE(0x108054, 0x108055) AM_READ(sound_status_r) AM_RANGE(0x108054, 0x108055) AM_READ(sound_status_r)
AM_RANGE(0x108060, 0x10807f) AM_WRITE(K053251_lsb_w) AM_RANGE(0x108060, 0x10807f) AM_WRITE(K053251_lsb_w)
AM_RANGE(0x10a000, 0x10a001) AM_READWRITE(input_port_0_word_r, watchdog_reset16_w) AM_RANGE(0x10a000, 0x10a001) AM_READ_PORT("P2_P4") AM_WRITE(watchdog_reset16_w)
AM_RANGE(0x10a002, 0x10a003) AM_READ(input_port_1_word_r) AM_RANGE(0x10a002, 0x10a003) AM_READ_PORT("P1_P3")
AM_RANGE(0x10a004, 0x10a005) AM_READ(eeprom_r) AM_RANGE(0x10a004, 0x10a005) AM_READ(eeprom_r)
AM_RANGE(0x10a00c, 0x10a00d) AM_READ(K053246_word_r) AM_RANGE(0x10a00c, 0x10a00d) AM_READ(K053246_word_r)
AM_RANGE(0x110000, 0x113fff) AM_RAM /* main RAM */ AM_RANGE(0x110000, 0x113fff) AM_RAM /* main RAM */
@ -225,10 +225,10 @@ static ADDRESS_MAP_START( 6p_main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x10804e, 0x10804f) AM_WRITE(sound_irq_w) AM_RANGE(0x10804e, 0x10804f) AM_WRITE(sound_irq_w)
AM_RANGE(0x108054, 0x108055) AM_READ(sound_status_r) AM_RANGE(0x108054, 0x108055) AM_READ(sound_status_r)
AM_RANGE(0x108060, 0x10807f) AM_WRITE(K053251_lsb_w) AM_RANGE(0x108060, 0x10807f) AM_WRITE(K053251_lsb_w)
AM_RANGE(0x10a000, 0x10a001) AM_READWRITE(input_port_0_word_r,watchdog_reset16_w) AM_RANGE(0x10a000, 0x10a001) AM_READ_PORT("P2_P4") AM_WRITE(watchdog_reset16_w)
AM_RANGE(0x10a002, 0x10a003) AM_READ(input_port_1_word_r) AM_RANGE(0x10a002, 0x10a003) AM_READ_PORT("P1_P3")
AM_RANGE(0x10a004, 0x10a005) AM_READ(xmen6p_eeprom_r) AM_RANGE(0x10a004, 0x10a005) AM_READ(xmen6p_eeprom_r)
AM_RANGE(0x10a006, 0x10a007) AM_READ(input_port_3_word_r) AM_RANGE(0x10a006, 0x10a007) AM_READ_PORT("P5_P6")
AM_RANGE(0x10a00c, 0x10a00d) AM_READ(K053246_word_r) /* sprites */ AM_RANGE(0x10a00c, 0x10a00d) AM_READ(K053246_word_r) /* sprites */
AM_RANGE(0x110000, 0x113fff) AM_RAM /* main RAM */ AM_RANGE(0x110000, 0x113fff) AM_RAM /* main RAM */
AM_RANGE(0x18fa00, 0x18fa01) AM_WRITE(xmen_18fa00_w) AM_RANGE(0x18fa00, 0x18fa01) AM_WRITE(xmen_18fa00_w)
@ -270,7 +270,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( xmen ) static INPUT_PORTS_START( xmen )
PORT_START /* IN1 */ PORT_START_TAG("P2_P4")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -288,7 +288,7 @@ static INPUT_PORTS_START( xmen )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN4 )
PORT_START /* IN0 */ PORT_START_TAG("P1_P3")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
@ -306,7 +306,7 @@ static INPUT_PORTS_START( xmen )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_START /* COIN EEPROM and service */ PORT_START_TAG("EEPROM") /* COIN EEPROM and service */
PORT_BIT( 0x003f, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* unused? */ PORT_BIT( 0x003f, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* unused? */
PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* EEPROM data */ PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* EEPROM data */
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM status - always 1 */ PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM status - always 1 */
@ -320,7 +320,7 @@ static INPUT_PORTS_START( xmen )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( xmen6p ) static INPUT_PORTS_START( xmen6p )
PORT_START /* IN1 */ PORT_START_TAG("P2_P4")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -338,7 +338,7 @@ static INPUT_PORTS_START( xmen6p )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN4 ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN4 )
PORT_START /* IN0 */ PORT_START_TAG("P1_P3")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
@ -356,7 +356,7 @@ static INPUT_PORTS_START( xmen6p )
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3) PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_START /* COIN EEPROM and service */ PORT_START_TAG("EEPROM") /* COIN EEPROM and service */
PORT_BIT( 0x003f, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* unused? */ PORT_BIT( 0x003f, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* unused? */
PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* EEPROM data */ PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_UNKNOWN ) /* EEPROM data */
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM status - always 1 */ PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* EEPROM status - always 1 */
@ -369,8 +369,7 @@ static INPUT_PORTS_START( xmen6p )
PORT_SERVICE_NO_TOGGLE( 0x4000, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x4000, IP_ACTIVE_LOW )
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* screen indicator? */ PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* screen indicator? */
/* players 5+6 */ PORT_START_TAG("P5_P6")
PORT_START /* */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(5) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(5)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(5) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(5)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(5) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(5)
@ -390,7 +389,7 @@ static INPUT_PORTS_START( xmen6p )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( xmen2p ) static INPUT_PORTS_START( xmen2p )
PORT_START /* IN1 */ PORT_START_TAG("P2_P4")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -399,18 +398,9 @@ static INPUT_PORTS_START( xmen2p )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2) PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN2 )
/* PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(4)
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(4)
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(4)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN4 )
*/
PORT_START /* IN0 */ PORT_START_TAG("P1_P3")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
@ -419,18 +409,9 @@ static INPUT_PORTS_START( xmen2p )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1) PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN1 )
/* PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_COIN3 )
*/
PORT_START /* COIN EEPROM and service */ PORT_START_TAG("EEPROM") /* COIN EEPROM and service */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_SERVICE2 )
PORT_BIT( 0x003c, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* unused? */ PORT_BIT( 0x003c, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* unused? */

View File

@ -77,7 +77,7 @@ static NVRAM_HANDLER( xorworld )
/* the EEPROM is read thru bit 4 */ /* the EEPROM is read thru bit 4 */
static READ16_HANDLER( xorworld_input_r ) static READ16_HANDLER( xorworld_input_r )
{ {
return input_port_read_indexed(machine, 0) | ((eeprom_read_bit() & 0x01) << 4); return input_port_read(machine, "DSW") | ((eeprom_read_bit() & 0x01) << 4);
} }
static WRITE16_HANDLER( eeprom_chip_select_w ) static WRITE16_HANDLER( eeprom_chip_select_w )
@ -101,8 +101,8 @@ static WRITE16_HANDLER( eeprom_data_w )
static ADDRESS_MAP_START( xorworld_map, ADDRESS_SPACE_PROGRAM, 16 ) static ADDRESS_MAP_START( xorworld_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x01ffff) AM_ROM AM_RANGE(0x000000, 0x01ffff) AM_ROM
AM_RANGE(0x200000, 0x200001) AM_READ(input_port_1_word_r) AM_RANGE(0x200000, 0x200001) AM_READ_PORT("P1")
AM_RANGE(0x400000, 0x400001) AM_READ(input_port_2_word_r) AM_RANGE(0x400000, 0x400001) AM_READ_PORT("P2")
AM_RANGE(0x600000, 0x600001) AM_READ(xorworld_input_r) // DIPSW #1 + EEPROM data AM_RANGE(0x600000, 0x600001) AM_READ(xorworld_input_r) // DIPSW #1 + EEPROM data
AM_RANGE(0x800000, 0x800001) AM_WRITE(saa1099_write_port_0_lsb_w) AM_RANGE(0x800000, 0x800001) AM_WRITE(saa1099_write_port_0_lsb_w)
AM_RANGE(0x800002, 0x800003) AM_WRITE(saa1099_control_port_0_lsb_w) AM_RANGE(0x800002, 0x800003) AM_WRITE(saa1099_control_port_0_lsb_w)
@ -118,7 +118,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( xorworld ) static INPUT_PORTS_START( xorworld )
PORT_START // DSW0 PORT_START_TAG("DSW") // DSW0
PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coinage ) ) PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 2C_2C ) ) PORT_DIPSETTING( 0x01, DEF_STR( 2C_2C ) )
@ -139,7 +139,7 @@ static INPUT_PORTS_START( xorworld )
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW ) PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_START // IN0 PORT_START_TAG("P1") // IN0
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
@ -149,7 +149,7 @@ static INPUT_PORTS_START( xorworld )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START // IN1 PORT_START_TAG("P2") // IN1
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)

View File

@ -207,7 +207,7 @@ static WRITE16_HANDLER( bit_controls_w )
static READ16_HANDLER( port0_r ) static READ16_HANDLER( port0_r )
{ {
int result = input_port_read_indexed(machine, 0); int result = input_port_read(machine, "DSW");
result ^= ticket_dispenser_r(machine,0) >> 3; result ^= ticket_dispenser_r(machine,0) >> 3;
return result; return result;
} }
@ -242,12 +242,12 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x03040000, 0x030401ff) AM_WRITE(bit_controls_w) AM_RANGE(0x03040000, 0x030401ff) AM_WRITE(bit_controls_w)
AM_RANGE(0x03040080, 0x0304008f) AM_READ(port0_r) AM_RANGE(0x03040080, 0x0304008f) AM_READ(port0_r)
AM_RANGE(0x03040100, 0x0304010f) AM_READ(analogx_r) AM_RANGE(0x03040100, 0x0304010f) AM_READ(analogx_r)
AM_RANGE(0x03040110, 0x0304011f) AM_READ(input_port_1_word_r) AM_RANGE(0x03040110, 0x0304011f) AM_READ_PORT("COIN1")
AM_RANGE(0x03040130, 0x0304013f) AM_READ(input_port_2_word_r) AM_RANGE(0x03040130, 0x0304013f) AM_READ_PORT("SERVICE2")
AM_RANGE(0x03040140, 0x0304014f) AM_READ(input_port_3_word_r) AM_RANGE(0x03040140, 0x0304014f) AM_READ_PORT("COIN3")
AM_RANGE(0x03040150, 0x0304015f) AM_READ(input_port_4_word_r) AM_RANGE(0x03040150, 0x0304015f) AM_READ_PORT("BUTTON1")
AM_RANGE(0x03040160, 0x0304016f) AM_READ(input_port_5_word_r) AM_RANGE(0x03040160, 0x0304016f) AM_READ_PORT("SERVICE")
AM_RANGE(0x03040170, 0x0304017f) AM_READ(input_port_6_word_r) AM_RANGE(0x03040170, 0x0304017f) AM_READ_PORT("SERVICE1")
AM_RANGE(0x03040180, 0x0304018f) AM_READ(analogy_watchdog_r) AM_RANGE(0x03040180, 0x0304018f) AM_READ(analogy_watchdog_r)
AM_RANGE(0x03060000, 0x0306000f) AM_WRITE(dac_w) AM_RANGE(0x03060000, 0x0306000f) AM_WRITE(dac_w)
AM_RANGE(0x04000000, 0x057fffff) AM_ROM AM_REGION(REGION_USER2, 0) AM_RANGE(0x04000000, 0x057fffff) AM_ROM AM_REGION(REGION_USER2, 0)
@ -264,7 +264,7 @@ ADDRESS_MAP_END
*************************************/ *************************************/
static INPUT_PORTS_START( xtheball ) static INPUT_PORTS_START( xtheball )
PORT_START PORT_START_TAG("DSW")
PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_DIPNAME( 0x0700, 0x0000, "Target Tickets") PORT_DIPNAME( 0x0700, 0x0000, "Target Tickets")
PORT_DIPSETTING( 0x0000, "3" ) PORT_DIPSETTING( 0x0000, "3" )
@ -295,27 +295,27 @@ static INPUT_PORTS_START( xtheball )
hit F2 to enter bookkeeping mode; hit service1 (9) to exit hit F2 to enter bookkeeping mode; hit service1 (9) to exit
hold service 1 (9) and hit F2 to enter test mode; hit service2 (0) to exit hold service 1 (9) and hit F2 to enter test mode; hit service2 (0) to exit
*/ */
PORT_START PORT_START_TAG("COIN1")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(5) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(5)
PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("SERVICE2")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE2 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE2 )
PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("COIN3")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("BUTTON1")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("SERVICE")
PORT_SERVICE_NO_TOGGLE( 0x0001, IP_ACTIVE_HIGH ) PORT_SERVICE_NO_TOGGLE( 0x0001, IP_ACTIVE_HIGH )
PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START PORT_START_TAG("SERVICE1")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0xfffe, IP_ACTIVE_LOW, IPT_UNUSED )

View File

@ -51,7 +51,7 @@ static void handle_coins(running_machine *machine, int coin)
if (coin & 1) // Coin 2 ! if (coin & 1) // Coin 2 !
{ {
tmp = (input_port_read_indexed(machine, 2) & 0xc0) >> 6; tmp = (input_port_read(machine, "DSW") & 0xc0) >> 6;
coins++; coins++;
if (coins >= coinage_table[tmp][0]) if (coins >= coinage_table[tmp][0])
{ {
@ -64,7 +64,7 @@ static void handle_coins(running_machine *machine, int coin)
if (coin & 2) // Coin 1 ! if (coin & 2) // Coin 1 !
{ {
tmp = (input_port_read_indexed(machine, 2) & 0x30) >> 4; tmp = (input_port_read(machine, "DSW") & 0x30) >> 4;
coins++; coins++;
if (coins >= coinage_table[tmp][0]) if (coins >= coinage_table[tmp][0])
{ {
@ -98,14 +98,14 @@ static READ8_HANDLER ( xyonix_io_r )
switch (e0_data) switch (e0_data)
{ {
case 0x81 : case 0x81 :
return input_port_read_indexed(machine, 0) & 0x7f; return input_port_read(machine, "P1") & 0x7f;
break; break;
case 0x82 : case 0x82 :
return input_port_read_indexed(machine, 1) & 0x7f; return input_port_read(machine, "P2") & 0x7f;
break; break;
case 0x91: case 0x91:
/* check coin inputs */ /* check coin inputs */
coin = ((input_port_read_indexed(machine, 0) & 0x80) >> 7) | ((input_port_read_indexed(machine, 1) & 0x80) >> 6); coin = ((input_port_read(machine, "P1") & 0x80) >> 7) | ((input_port_read(machine, "P2") & 0x80) >> 6);
if (coin ^ prev_coin && coin != 3) if (coin ^ prev_coin && coin != 3)
{ {
if (credits < 9) handle_coins(machine, coin); if (credits < 9) handle_coins(machine, coin);
@ -114,7 +114,7 @@ static READ8_HANDLER ( xyonix_io_r )
return credits; return credits;
break; break;
case 0x92: case 0x92:
return ((input_port_read_indexed(machine, 0) & 0x80) >> 7) | ((input_port_read_indexed(machine, 1) & 0x80) >> 6); return ((input_port_read(machine, "P1") & 0x80) >> 7) | ((input_port_read(machine, "P2") & 0x80) >> 6);
break; break;
case 0xe0: /* reset? */ case 0xe0: /* reset? */
coins = 0; coins = 0;
@ -126,10 +126,10 @@ static READ8_HANDLER ( xyonix_io_r )
return 0xff; return 0xff;
break; break;
case 0xfe: /* Dip Switches 1 to 4 */ case 0xfe: /* Dip Switches 1 to 4 */
return input_port_read_indexed(machine, 2) & 0x0f; return input_port_read(machine, "DSW") & 0x0f;
break; break;
case 0xff: /* Dip Switches 5 to 8 */ case 0xff: /* Dip Switches 5 to 8 */
return input_port_read_indexed(machine, 2) >> 4; return input_port_read(machine, "DSW") >> 4;
break; break;
} }
} }
@ -167,7 +167,7 @@ ADDRESS_MAP_END
/* Inputs Ports **************************************************************/ /* Inputs Ports **************************************************************/
static INPUT_PORTS_START( xyonix ) static INPUT_PORTS_START( xyonix )
PORT_START PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
@ -177,7 +177,7 @@ static INPUT_PORTS_START( xyonix )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) /* handled by xyonix_io_r() */ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 ) /* handled by xyonix_io_r() */
PORT_START PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
@ -187,7 +187,7 @@ static INPUT_PORTS_START( xyonix )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) /* handled by xyonix_io_r() */ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 ) /* handled by xyonix_io_r() */
PORT_START PORT_START_TAG("DSW")
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x03, DEF_STR( Easy ) ) PORT_DIPSETTING( 0x03, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x02, DEF_STR( Normal ) ) PORT_DIPSETTING( 0x02, DEF_STR( Normal ) )

View File

@ -152,7 +152,7 @@ static WRITE8_HANDLER( port_c0_w )
static READ8_HANDLER( eeprom_r ) static READ8_HANDLER( eeprom_r )
{ {
return ((~eeprom_read_bit()&0x01)<<6) | (0xff&~0x40); return ((~eeprom_read_bit() & 0x01)<<6) | (0xff & ~0x40);
} }
static UINT8 mux_data; static UINT8 mux_data;
@ -161,14 +161,14 @@ static READ8_HANDLER( mux_r )
{ {
switch(mux_data) switch(mux_data)
{ {
case 0x00: return input_port_read_indexed(machine, 0); case 0x00: return input_port_read(machine, "IN0");
case 0x01: return input_port_read_indexed(machine, 1); case 0x01: return input_port_read(machine, "IN1");
case 0x02: return input_port_read_indexed(machine, 2); case 0x02: return input_port_read(machine, "IN2");
case 0x04: return input_port_read_indexed(machine, 3); case 0x04: return input_port_read(machine, "IN3");
case 0x08: return input_port_read_indexed(machine, 4); case 0x08: return input_port_read(machine, "IN4");
/* FIXME: Was this a quick hack? */ /* FIXME: Was this a quick hack? */
case 0x10: return 0xff; //return input_port_read_indexed(machine, 5); case 0x10: return 0xff; //return input_port_read(machine, "IN5");
case 0x20: return 0xff; //return input_port_read_indexed(machine, 6); case 0x20: return 0xff; //return input_port_read(machine, "IN6");
} }
return 0xff; return 0xff;
} }
@ -254,7 +254,7 @@ MACHINE_DRIVER_END
/***************************************************************************************/ /***************************************************************************************/
static INPUT_PORTS_START( yumefuda ) static INPUT_PORTS_START( yumefuda )
PORT_START PORT_START_TAG( "IN0")
PORT_DIPNAME( 0x01, 0x01, "Port 0" ) PORT_DIPNAME( 0x01, 0x01, "Port 0" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -276,7 +276,7 @@ static INPUT_PORTS_START( yumefuda )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG( "IN1")
PORT_DIPNAME( 0x01, 0x01, "Port 1" ) PORT_DIPNAME( 0x01, 0x01, "Port 1" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -298,7 +298,7 @@ static INPUT_PORTS_START( yumefuda )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG( "IN2")
PORT_DIPNAME( 0x01, 0x01, "Port 2" ) PORT_DIPNAME( 0x01, 0x01, "Port 2" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -316,7 +316,7 @@ static INPUT_PORTS_START( yumefuda )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4 )
PORT_START PORT_START_TAG( "IN3")
PORT_DIPNAME( 0x01, 0x01, "Port 3" ) PORT_DIPNAME( 0x01, 0x01, "Port 3" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -338,7 +338,7 @@ static INPUT_PORTS_START( yumefuda )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG( "IN4")
PORT_DIPNAME( 0x01, 0x01, "Port 4" ) PORT_DIPNAME( 0x01, 0x01, "Port 4" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -364,7 +364,7 @@ static INPUT_PORTS_START( yumefuda )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
/* /*
PORT_START PORT_START_TAG( "IN5")
PORT_DIPNAME( 0x01, 0x01, "Port 5" ) PORT_DIPNAME( 0x01, 0x01, "Port 5" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -390,7 +390,7 @@ static INPUT_PORTS_START( yumefuda )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) ) PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START PORT_START_TAG( "IN6")
PORT_DIPNAME( 0x01, 0x01, "Port 6" ) PORT_DIPNAME( 0x01, 0x01, "Port 6" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )

View File

@ -29,19 +29,18 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x1c00, 0x1cff) AM_RAM AM_RANGE(0x1c00, 0x1cff) AM_RAM
AM_RANGE(0x1d00, 0x1dff) AM_RAM AM_RANGE(0x1d00, 0x1dff) AM_RAM
AM_RANGE(0x1e80, 0x1e80) AM_READWRITE(tinvader_port_0_r, tinvader_sound_w) AM_RANGE(0x1e80, 0x1e80) AM_READWRITE(tinvader_port_0_r, tinvader_sound_w)
AM_RANGE(0x1e81, 0x1e81) AM_READ(input_port_1_r) AM_RANGE(0x1e81, 0x1e81) AM_READ_PORT("1E81")
AM_RANGE(0x1e82, 0x1e82) AM_READ(input_port_2_r) AM_RANGE(0x1e82, 0x1e82) AM_READ_PORT("1E82")
AM_RANGE(0x1e85, 0x1e85) AM_READ(input_port_4_r) /* Dodgem Only */ AM_RANGE(0x1e85, 0x1e85) AM_READ_PORT("1E85") /* Dodgem Only */
AM_RANGE(0x1e86, 0x1e86) AM_READWRITE(input_port_5_r, SMH_NOP) /* Dodgem Only */ AM_RANGE(0x1e86, 0x1e86) AM_READ_PORT("1E86") AM_WRITENOP /* Dodgem Only */
AM_RANGE(0x1f00, 0x1fff) AM_READWRITE(zac_s2636_r, SMH_RAM) AM_BASE(&zac2650_s2636_0_ram) AM_RANGE(0x1f00, 0x1fff) AM_READWRITE(zac_s2636_r, SMH_RAM) AM_BASE(&zac2650_s2636_0_ram)
ADDRESS_MAP_END ADDRESS_MAP_END
static ADDRESS_MAP_START( port_map, ADDRESS_SPACE_IO, 8 ) static ADDRESS_MAP_START( port_map, ADDRESS_SPACE_IO, 8 )
AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ(input_port_3_r) AM_RANGE(S2650_SENSE_PORT, S2650_SENSE_PORT) AM_READ_PORT("SENSE")
ADDRESS_MAP_END ADDRESS_MAP_END
static INPUT_PORTS_START( tinvader ) static INPUT_PORTS_START( tinvader )
PORT_START_TAG("1E80") PORT_START_TAG("1E80")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
@ -88,60 +87,25 @@ static INPUT_PORTS_START( tinvader )
PORT_START_TAG("SENSE") PORT_START_TAG("SENSE")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )
PORT_START_TAG("1E85")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("1E86")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END INPUT_PORTS_END
/* Almost identical, no number of bases selection */ /* Almost identical, no number of bases selection */
static INPUT_PORTS_START( sinvader ) static INPUT_PORTS_START( sinvader )
PORT_INCLUDE( tinvader )
PORT_START_TAG("1E80") PORT_MODIFY("1E80")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Missile-Background Collision */
PORT_START_TAG("1E81") PORT_MODIFY("1E81")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_DIPNAME( 0x02, 0x00, "Lightning Speed" ) /* Velocita Laser Inv */
PORT_DIPSETTING( 0x00, "Slow" )
PORT_DIPSETTING( 0x02, "Fast" )
PORT_DIPNAME( 0x1C, 0x04, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x00, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x0C, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x10, DEF_STR( 1C_4C ) )
PORT_DIPSETTING( 0x14, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x18, DEF_STR( 1C_6C ) )
PORT_DIPSETTING( 0x1C, DEF_STR( 1C_7C ) )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "1000" )
PORT_DIPSETTING( 0x20, "1500" )
PORT_DIPNAME( 0x40, 0x00, "Extended Play" )
PORT_DIPSETTING( 0x00, DEF_STR( No ) )
PORT_DIPSETTING( 0x40, DEF_STR( Yes ) )
PORT_START_TAG("1E82")
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_JOYSTICK_RIGHT ) PORT_4WAY
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START_TAG("SENSE")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_VBLANK )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( dodgem ) static INPUT_PORTS_START( dodgem )
PORT_START_TAG("1E80") PORT_START_TAG("1E80")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
@ -220,7 +184,6 @@ static INPUT_PORTS_START( dodgem )
PORT_DIPNAME( 0x01, 0x01, "Collision Detection (Cheat)" ) PORT_DIPNAME( 0x01, 0x01, "Collision Detection (Cheat)" )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) ) PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x01, DEF_STR( On ) ) PORT_DIPSETTING( 0x01, DEF_STR( On ) )
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -71,14 +71,16 @@ static WRITE8_HANDLER( zaccaria_dsw_sel_w )
break; break;
default: default:
logerror("PC %04x: portsel = %02x\n",activecpu_get_pc(),data); logerror("PC %04x: portsel = %02x\n", activecpu_get_pc(), data);
break; break;
} }
} }
static READ8_HANDLER( zaccaria_dsw_r ) static READ8_HANDLER( zaccaria_dsw_r )
{ {
return input_port_read_indexed(machine, dsw); static const char *dswnames[] = { "IN0", "DSW0", "DSW1" };
return input_port_read(machine, dswnames[dsw]);
} }
@ -297,7 +299,7 @@ static READ8_HANDLER( zaccaria_prot2_r )
switch (offset) switch (offset)
{ {
case 0: case 0:
return (input_port_read_indexed(machine, 6) & 0x07) | (acs & 0x08); /* bits 4 and 5 must be 0 in Jack Rabbit */ return (input_port_read(machine, "COINS") & 0x07) | (acs & 0x08); /* bits 4 and 5 must be 0 in Jack Rabbit */
case 2: case 2:
return 0x10; /* Jack Rabbit */ return 0x10; /* Jack Rabbit */
@ -440,7 +442,7 @@ static INPUT_PORTS_START( monymony )
PORT_DIPSETTING( 0x10, DEF_STR( 1C_5C ) ) PORT_DIPSETTING( 0x10, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_7C ) ) PORT_DIPSETTING( 0x00, DEF_STR( 1C_7C ) )
PORT_START_TAG("IN1") PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -450,7 +452,7 @@ static INPUT_PORTS_START( monymony )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN2") PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -460,14 +462,14 @@ static INPUT_PORTS_START( monymony )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN3") PORT_START_TAG("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
/* other bits are outputs */ /* other bits are outputs */
PORT_START_TAG("IN4") PORT_START_TAG("COINS")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
@ -476,32 +478,14 @@ static INPUT_PORTS_START( monymony )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( jackrabt ) static INPUT_PORTS_START( jackrabt )
PORT_START_TAG("IN0") PORT_INCLUDE( monymony )
PORT_DIPNAME( 0x03, 0x01, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "2" ) PORT_MODIFY("IN0")
PORT_DIPSETTING( 0x01, "3" )
PORT_DIPSETTING( 0x02, "4" )
PORT_DIPSETTING( 0x03, "5" )
PORT_DIPNAME( 0x04, 0x00, "Infinite Lives (Cheat)")
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x04, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) ) PORT_DIPNAME( 0x08, 0x00, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x08, DEF_STR( Off ) ) PORT_DIPSETTING( 0x08, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x10, DEF_STR( Cocktail ) )
PORT_DIPNAME( 0x20, 0x00, "Freeze" )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x20, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x00, "Cross Hatch Pattern" )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x40, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START_TAG("DSW0") PORT_MODIFY("DSW0")
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) ) PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -524,65 +508,6 @@ static INPUT_PORTS_START( jackrabt )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) ) PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_SERVICE( 0x80, IP_ACTIVE_HIGH ) PORT_SERVICE( 0x80, IP_ACTIVE_HIGH )
PORT_START_TAG("DSW1")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Coin_A ) )
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( 1C_3C ) )
PORT_DIPNAME( 0x8c, 0x84, DEF_STR( Coin_B ) )
PORT_DIPSETTING( 0x8c, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x88, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x84, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x0c, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 1C_4C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_6C ) )
PORT_DIPNAME( 0x70, 0x50, "Coin C" )
PORT_DIPSETTING( 0x70, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x60, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x50, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x30, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x20, DEF_STR( 1C_4C ) )
PORT_DIPSETTING( 0x10, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_7C ) )
PORT_START_TAG("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
/* other bits are outputs */
PORT_START_TAG("IN4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* "ACS" - from pin 13 of a PIA on the sound board */
/* other bits come from a protection device */
INPUT_PORTS_END INPUT_PORTS_END

View File

@ -41,13 +41,13 @@ static READ16_HANDLER( zerozone_input_r )
switch (offset) switch (offset)
{ {
case 0x00: case 0x00:
return input_port_read_indexed(machine, 0); /* IN0 */ return input_port_read(machine, "SYSTEM");
case 0x01: case 0x01:
return (input_port_read_indexed(machine, 1) | (input_port_read_indexed(machine, 2) << 8)); /* IN1 & IN2 */ return (input_port_read(machine, "P1") | (input_port_read(machine, "P2") << 8));
case 0x04: case 0x04:
return (input_port_read_indexed(machine, 4) << 8); return (input_port_read(machine, "DSWB") << 8);
case 0x05: case 0x05:
return input_port_read_indexed(machine, 3); return input_port_read(machine, "DSWA");
} }
logerror("CPU #0 PC %06x: warning - read unmapped memory address %06x\n",activecpu_get_pc(),0x800000+offset); logerror("CPU #0 PC %06x: warning - read unmapped memory address %06x\n",activecpu_get_pc(),0x800000+offset);
@ -86,7 +86,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( zerozone ) static INPUT_PORTS_START( zerozone )
PORT_START_TAG("IN0") PORT_START_TAG("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -96,7 +96,7 @@ static INPUT_PORTS_START( zerozone )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN1") PORT_START_TAG("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(1)
@ -106,7 +106,7 @@ static INPUT_PORTS_START( zerozone )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_NAME("P1 Score Line (Cheat)") PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_NAME("P1 Score Line (Cheat)")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START_TAG("IN2") PORT_START_TAG("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(2) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_PLAYER(2)

View File

@ -246,8 +246,8 @@ static void sio_dip_handler( int n_data )
{ {
if( m_b_lastclock ) if( m_b_lastclock )
{ {
verboselog( 2, "read dip %02x -> %02x\n", n_data, ( ( input_port_read_indexed(Machine, 7 ) >> m_n_dip_bit ) & 1 ) * PSX_SIO_IN_DATA ); verboselog( 2, "read dip %02x -> %02x\n", n_data, ( ( input_port_read(Machine, "DSW") >> m_n_dip_bit ) & 1 ) * PSX_SIO_IN_DATA );
psx_sio_input( Machine, 0, PSX_SIO_IN_DATA, ( ( input_port_read_indexed(Machine, 7 ) >> m_n_dip_bit ) & 1 ) * PSX_SIO_IN_DATA ); psx_sio_input( Machine, 0, PSX_SIO_IN_DATA, ( ( input_port_read(Machine, "DSW") >> m_n_dip_bit ) & 1 ) * PSX_SIO_IN_DATA );
m_n_dip_bit++; m_n_dip_bit++;
m_n_dip_bit &= 7; m_n_dip_bit &= 7;
} }
@ -356,12 +356,12 @@ static ADDRESS_MAP_START( zn_map, ADDRESS_SPACE_PROGRAM, 32 )
AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE(psx_spu_r, psx_spu_w) AM_RANGE(0x1f801c00, 0x1f801dff) AM_READWRITE(psx_spu_r, psx_spu_w)
AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */ AM_RANGE(0x1f802020, 0x1f802033) AM_RAM /* ?? */
AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP AM_RANGE(0x1f802040, 0x1f802043) AM_WRITENOP
AM_RANGE(0x1fa00000, 0x1fa00003) AM_READ(input_port_0_dword_r) AM_RANGE(0x1fa00000, 0x1fa00003) AM_READ_PORT("P1")
AM_RANGE(0x1fa00100, 0x1fa00103) AM_READ(input_port_1_dword_r) AM_RANGE(0x1fa00100, 0x1fa00103) AM_READ_PORT("P2")
AM_RANGE(0x1fa00200, 0x1fa00203) AM_READ(input_port_2_dword_r) AM_RANGE(0x1fa00200, 0x1fa00203) AM_READ_PORT("SERVICE")
AM_RANGE(0x1fa00300, 0x1fa00303) AM_READ(input_port_3_dword_r) AM_RANGE(0x1fa00300, 0x1fa00303) AM_READ_PORT("SYSTEM")
AM_RANGE(0x1fa10000, 0x1fa10003) AM_READ(input_port_4_dword_r) AM_RANGE(0x1fa10000, 0x1fa10003) AM_READ_PORT("EXTRA1")
AM_RANGE(0x1fa10100, 0x1fa10103) AM_READ(input_port_5_dword_r) AM_RANGE(0x1fa10100, 0x1fa10103) AM_READ_PORT("EXTRA2")
AM_RANGE(0x1fa10200, 0x1fa10203) AM_READ(boardconfig_r) AM_RANGE(0x1fa10200, 0x1fa10203) AM_READ(boardconfig_r)
AM_RANGE(0x1fa10300, 0x1fa10303) AM_READWRITE(znsecsel_r, znsecsel_w) AM_RANGE(0x1fa10300, 0x1fa10303) AM_READWRITE(znsecsel_r, znsecsel_w)
AM_RANGE(0x1fa20000, 0x1fa20003) AM_WRITE(coin_w) AM_RANGE(0x1fa20000, 0x1fa20003) AM_WRITE(coin_w)
@ -2731,7 +2731,7 @@ static MACHINE_DRIVER_START( coh1002ml )
MACHINE_DRIVER_END MACHINE_DRIVER_END
static INPUT_PORTS_START( zn ) static INPUT_PORTS_START( zn )
PORT_START /* IN0 */ PORT_START_TAG("P1") /* IN0 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
@ -2741,7 +2741,7 @@ static INPUT_PORTS_START( zn )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN1 */ PORT_START_TAG("P2") /* IN1 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) 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( 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) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -2751,35 +2751,35 @@ static INPUT_PORTS_START( zn )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN2 */ PORT_START_TAG("SERVICE") /* IN2 */
PORT_SERVICE_NO_TOGGLE( 0x01, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x01, IP_ACTIVE_LOW )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT ) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT )
PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xf8, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN3 */ PORT_START_TAG("SYSTEM") /* IN3 */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 ) PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 ) PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0xcc, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xcc, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN4 */ PORT_START_TAG("EXTRA1") /* IN4 */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON6 )
PORT_BIT( 0x8f, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x8f, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN5 */ PORT_START_TAG("EXTRA2") /* IN5 */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2) PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(2) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(2)
PORT_BIT( 0x8f, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x8f, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN6 */ PORT_START_TAG("UNK") /* IN6 */
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START /* IN7 */ PORT_START_TAG("DSW") /* IN7 */
PORT_DIPNAME( 0x01, 0x01, "Freeze" ) PORT_DIPNAME( 0x01, 0x01, "Freeze" )
PORT_DIPSETTING( 0x01, DEF_STR( Off ) ) PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) ) PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -4320,8 +4320,8 @@ GAME( 1999, tondemo, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "Tondemo
GAME( 1999, glpracr3, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "Gallop Racer 3 (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) GAME( 1999, glpracr3, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "Gallop Racer 3 (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
GAME( 1999, flamegun, tps, coh1002m, zn, coh1002m, ROT0, "GAPS Inc.", "Flame Gunner", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) GAME( 1999, flamegun, tps, coh1002m, zn, coh1002m, ROT0, "GAPS Inc.", "Flame Gunner", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
GAME( 1999, flameguj, flamegun, coh1002m, zn, coh1002m, ROT0, "GAPS Inc.", "Flame Gunner (Japan)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) GAME( 1999, flameguj, flamegun, coh1002m, zn, coh1002m, ROT0, "GAPS Inc.", "Flame Gunner (Japan)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
GAME( 2000, tblkkuzu, tps, coh1002m, zn, coh1002m, ROT0, "Tamsoft/D3 Publisher", "The Block Kuzushi (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) GAME( 2000, tblkkuzu, tps, coh1002m, zn, coh1002m, ROT0, "Tamsoft/D3 Publisher", "The Block Kuzushi (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
GAME( 2000, 1on1gov, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "1 on 1 Government (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) GAME( 2000, 1on1gov, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "1 on 1 Government (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
GAME( 2000, tecmowcm, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "Tecmo World Cup Millennium (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) GAME( 2000, tecmowcm, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "Tecmo World Cup Millennium (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )
GAME( 2001, mfjump, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "Monster Farm Jump (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND ) GAME( 2001, mfjump, tps, coh1002m, zn, coh1002m, ROT0, "Tecmo", "Monster Farm Jump (JAPAN)", GAME_IMPERFECT_GRAPHICS | GAME_IMPERFECT_SOUND )

View File

@ -306,6 +306,7 @@ static CUSTOM_INPUT( adcdo_r )
static READ8_HANDLER( sysreg_r ) static READ8_HANDLER( sysreg_r )
{ {
UINT32 r = 0; UINT32 r = 0;
static const char *portnames[] = { "IN0", "IN1", "IN2", "IN3" };
switch (offset) switch (offset)
{ {
@ -313,7 +314,7 @@ static READ8_HANDLER( sysreg_r )
case 1: /* I/O port 1 */ case 1: /* I/O port 1 */
case 2: /* I/O port 2 */ case 2: /* I/O port 2 */
case 3: /* System Port 0 */ case 3: /* System Port 0 */
r = input_port_read_indexed(machine, offset); r = input_port_read(machine, portnames[offset]);
break; break;
case 4: /* System Port 1 */ case 4: /* System Port 1 */
@ -404,11 +405,11 @@ static double adc0838_callback(int input)
switch (input) switch (input)
{ {
case ADC083X_CH0: case ADC083X_CH0:
return (double)(5 * input_port_read_indexed(Machine, 4)) / 255.0; return (double)(5 * input_port_read(Machine, "ANALOG1")) / 255.0;
case ADC083X_CH1: case ADC083X_CH1:
return (double)(5 * input_port_read_indexed(Machine, 5)) / 255.0; return (double)(5 * input_port_read(Machine, "ANALOG2")) / 255.0;
case ADC083X_CH2: case ADC083X_CH2:
return (double)(5 * input_port_read_indexed(Machine, 6)) / 255.0; return (double)(5 * input_port_read(Machine, "ANALOG3")) / 255.0;
case ADC083X_CH3: case ADC083X_CH3:
return 0; return 0;
case ADC083X_COM: case ADC083X_COM:
@ -581,7 +582,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( midnrun ) static INPUT_PORTS_START( midnrun )
PORT_START PORT_START_TAG("IN0")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) // View switch PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) // View switch
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) // Shift up PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) // Shift up
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) // Shift down PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) // Shift down
@ -589,14 +590,14 @@ static INPUT_PORTS_START( midnrun )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8)
PORT_BIT( 0x0b, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0b, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("IN1")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("IN2")
PORT_BIT( 0x7f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x7f, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(adcdo_r, 0) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(adcdo_r, 0)
PORT_START PORT_START_TAG("IN3")
PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
@ -625,7 +626,7 @@ static INPUT_PORTS_START( midnrun )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( windheat ) static INPUT_PORTS_START( windheat )
PORT_START PORT_START_TAG("IN0")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) // View switch PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) // View switch
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) // Shift up PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) // Shift up
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) // Shift down PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) // Shift down
@ -633,14 +634,14 @@ static INPUT_PORTS_START( windheat )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8)
PORT_BIT( 0x0b, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0b, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("IN1")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("IN2")
PORT_BIT( 0x7f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x7f, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(adcdo_r, 0) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(adcdo_r, 0)
PORT_START PORT_START_TAG("IN3")
PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
@ -669,7 +670,7 @@ static INPUT_PORTS_START( windheat )
INPUT_PORTS_END INPUT_PORTS_END
static INPUT_PORTS_START( jetwave ) static INPUT_PORTS_START( jetwave )
PORT_START PORT_START_TAG("IN0")
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON3 )
@ -677,14 +678,14 @@ static INPUT_PORTS_START( jetwave )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8) PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8)
PORT_BIT( 0x0b, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x0b, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("IN1")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START PORT_START_TAG("IN2")
PORT_BIT( 0x7f, IP_ACTIVE_HIGH, IPT_UNKNOWN ) PORT_BIT( 0x7f, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(adcdo_r, 0) PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(adcdo_r, 0)
PORT_START PORT_START_TAG("IN3")
PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW ) PORT_SERVICE_NO_TOGGLE( 0x80, IP_ACTIVE_LOW )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8) PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE1 ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_8)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )

View File

@ -120,10 +120,12 @@ static PIT8253_OUTPUT_CHANGED( v_irq3_w )
READ16_HANDLER( vertigo_io_convert ) READ16_HANDLER( vertigo_io_convert )
{ {
static const char *adcnames[] = { "P1X", "P1Y", "PADDLE" };
if (offset > 2) if (offset > 2)
adc_result = 0; adc_result = 0;
else else
adc_result = input_port_read_indexed(machine, offset); adc_result = input_port_read(machine, adcnames[offset]);
update_irq_encoder(INPUT_LINE_IRQ2, ASSERT_LINE); update_irq_encoder(INPUT_LINE_IRQ2, ASSERT_LINE);
return 0; return 0;

View File

@ -118,8 +118,8 @@ WRITE8_HANDLER( vsnes_in0_w )
if ( data & 1 ) if ( data & 1 )
{ {
/* load up the latches */ /* load up the latches */
input_latch[0] = input_port_read_indexed(machine, 0 ); input_latch[0] = input_port_read(machine, "IN0");
input_latch[1] = input_port_read_indexed(machine, 1 ); input_latch[1] = input_port_read(machine, "IN1");
} }
} }
@ -130,8 +130,8 @@ static READ8_HANDLER( gun_in0_r )
/* shift */ /* shift */
input_latch[0] >>= 1; input_latch[0] >>= 1;
ret |= input_port_read_indexed(machine, 2 ); /* merge coins, etc */ ret |= input_port_read(machine, "COINS"); /* merge coins, etc */
ret |= ( input_port_read_indexed(machine, 3 ) & 3 ) << 3; /* merge 2 dipswitches */ ret |= ( input_port_read(machine, "DSW0") & 3 ) << 3; /* merge 2 dipswitches */
/* The gun games expect a 1 returned on every 5th read after sound_fix is reset*/ /* The gun games expect a 1 returned on every 5th read after sound_fix is reset*/
/* Info Supplied by Ben Parnell <xodnizel@home.com> of FCE Ultra fame */ /* Info Supplied by Ben Parnell <xodnizel@home.com> of FCE Ultra fame */
@ -156,8 +156,8 @@ READ8_HANDLER( vsnes_in0_r )
/* shift */ /* shift */
input_latch[0] >>= 1; input_latch[0] >>= 1;
ret |= input_port_read_indexed(machine, 2 ); /* merge coins, etc */ ret |= input_port_read(machine, "COINS"); /* merge coins, etc */
ret |= ( input_port_read_indexed(machine, 3 ) & 3 ) << 3; /* merge 2 dipswitches */ ret |= ( input_port_read(machine, "DSW0") & 3 ) << 3; /* merge 2 dipswitches */
return ret; return ret;
@ -168,7 +168,7 @@ READ8_HANDLER( vsnes_in1_r )
{ {
int ret = ( input_latch[1] ) & 1; int ret = ( input_latch[1] ) & 1;
ret |= input_port_read_indexed(machine, 3 ) & ~3; /* merge the rest of the dipswitches */ ret |= input_port_read(machine, "DSW0") & ~3; /* merge the rest of the dipswitches */
/* shift */ /* shift */
input_latch[1] >>= 1; input_latch[1] >>= 1;
@ -182,8 +182,8 @@ WRITE8_HANDLER( vsnes_in0_1_w )
if ( data & 1 ) if ( data & 1 )
{ {
/* load up the latches */ /* load up the latches */
input_latch[2] = input_port_read_indexed(machine, 4 ); input_latch[2] = input_port_read(machine, "IN2");
input_latch[3] = input_port_read_indexed(machine, 5 ); input_latch[3] = input_port_read(machine, "IN3");
} }
} }
@ -194,8 +194,8 @@ READ8_HANDLER( vsnes_in0_1_r )
/* shift */ /* shift */
input_latch[2] >>= 1; input_latch[2] >>= 1;
ret |= input_port_read_indexed(machine, 6 ); /* merge coins, etc */ ret |= input_port_read(machine, "COINS2"); /* merge coins, etc */
ret |= ( input_port_read_indexed(machine, 7 ) & 3 ) << 3; /* merge 2 dipswitches */ ret |= ( input_port_read(machine, "DSW1") & 3 ) << 3; /* merge 2 dipswitches */
return ret; return ret;
} }
@ -203,7 +203,7 @@ READ8_HANDLER( vsnes_in1_1_r )
{ {
int ret = ( input_latch[3] ) & 1; int ret = ( input_latch[3] ) & 1;
ret |= input_port_read_indexed(machine, 7 ) & ~3; /* merge the rest of the dipswitches */ ret |= input_port_read(machine, "DSW1") & ~3; /* merge the rest of the dipswitches */
/* shift */ /* shift */
input_latch[3] >>= 1; input_latch[3] >>= 1;
@ -346,13 +346,13 @@ static WRITE8_HANDLER( gun_in0_w )
{ {
/* load up the latches */ /* load up the latches */
input_latch[0] = input_port_read_indexed(machine, 0 ); input_latch[0] = input_port_read(machine, "IN0");
/* do the gun thing */ /* do the gun thing */
if ( vsnes_gun_controller ) if ( vsnes_gun_controller )
{ {
int x = input_port_read_indexed(machine, 4 ); int x = input_port_read(machine, "GUNX");
int y = input_port_read_indexed(machine, 5 ); int y = input_port_read(machine, "GUNY");
UINT32 pix, color_base; UINT32 pix, color_base;
/* get the pixel at the gun position */ /* get the pixel at the gun position */
@ -369,7 +369,7 @@ static WRITE8_HANDLER( gun_in0_w )
} }
} }
input_latch[1] = input_port_read_indexed(machine, 1 ); input_latch[1] = input_port_read(machine, "IN1");
} }
if ( ( zapstore & 1 ) && ( !( data & 1 ) ) ) if ( ( zapstore & 1 ) && ( !( data & 1 ) ) )

View File

@ -602,7 +602,7 @@ READ8_HANDLER( williams_input_port_49way_0_5_r )
if (port_select) if (port_select)
return williams_49way_port_0_r(machine,0); return williams_49way_port_0_r(machine,0);
else else
return input_port_read_indexed(machine, 5); return input_port_read(machine, "IN3");
} }
@ -851,7 +851,7 @@ WRITE8_HANDLER( blaster_bank_select_w )
static READ8_HANDLER( lottofun_input_port_0_r ) static READ8_HANDLER( lottofun_input_port_0_r )
{ {
/* merge in the ticket dispenser status */ /* merge in the ticket dispenser status */
return input_port_read_indexed(machine,0) | ticket_dispenser_r(machine,offset); return input_port_read(machine, "IN0") | ticket_dispenser_r(machine,offset);
} }
@ -865,7 +865,7 @@ static READ8_HANDLER( lottofun_input_port_0_r )
static READ8_HANDLER( tshoot_input_port_0_3_r ) static READ8_HANDLER( tshoot_input_port_0_3_r )
{ {
/* merge in the gun inputs with the standard data */ /* merge in the gun inputs with the standard data */
int data = input_port_0_r(machine, offset); int data = input_port_read(machine, "IN0");
int gun = (data & 0x3f) ^ ((data & 0x3f) >> 1); int gun = (data & 0x3f) ^ ((data & 0x3f) >> 1);
return (data & 0xc0) | gun; return (data & 0xc0) | gun;

View File

@ -170,10 +170,10 @@ READ8_HANDLER( battles_input_port_r )
switch ( offset ) switch ( offset )
{ {
default: default:
case 0: return ~BITSWAP8(input_port_read_indexed(machine, 0),6,7,5,4,3,2,1,0) >> 4; case 0: return ~BITSWAP8(input_port_read(machine, "IN0"),6,7,5,4,3,2,1,0) >> 4;
case 1: return ~input_port_read_indexed(machine, 1) & 0x0f; case 1: return ~input_port_read(machine, "IN1") & 0x0f;
case 2: return ~input_port_read_indexed(machine, 1) >> 4; case 2: return ~input_port_read(machine, "IN1") >> 4;
case 3: return ~input_port_read_indexed(machine, 0) & 0x0f; case 3: return ~input_port_read(machine, "IN0") & 0x0f;
} }
} }

View File

@ -4951,22 +4951,22 @@ READ8_HANDLER( TC0220IOC_r )
switch (offset) switch (offset)
{ {
case 0x00: /* IN00-07 (DSA) */ case 0x00: /* IN00-07 (DSA) */
return input_port_read_indexed(machine, 0); return input_port_read(machine, "DSWA");
case 0x01: /* IN08-15 (DSB) */ case 0x01: /* IN08-15 (DSB) */
return input_port_read_indexed(machine, 1); return input_port_read(machine, "DSWB");
case 0x02: /* IN16-23 (1P) */ case 0x02: /* IN16-23 (1P) */
return input_port_read_indexed(machine, 2); return input_port_read(machine, "IN0");
case 0x03: /* IN24-31 (2P) */ case 0x03: /* IN24-31 (2P) */
return input_port_read_indexed(machine, 3); return input_port_read(machine, "IN1");
case 0x04: /* coin counters and lockout */ case 0x04: /* coin counters and lockout */
return TC0220IOC_regs[4]; return TC0220IOC_regs[4];
case 0x07: /* INB0-7 (coin) */ case 0x07: /* INB0-7 (coin) */
return input_port_read_indexed(machine, 4); return input_port_read(machine, "IN2");
default: default:
logerror("PC %06x: warning - read TC0220IOC address %02x\n",activecpu_get_pc(),offset); logerror("PC %06x: warning - read TC0220IOC address %02x\n",activecpu_get_pc(),offset);
@ -5112,22 +5112,22 @@ READ8_HANDLER( TC0510NIO_r )
switch (offset) switch (offset)
{ {
case 0x00: /* DSA */ case 0x00: /* DSA */
return input_port_read_indexed(machine, 0); return input_port_read(machine, "DSWA");
case 0x01: /* DSB */ case 0x01: /* DSB */
return input_port_read_indexed(machine, 1); return input_port_read(machine, "DSWB");
case 0x02: /* 1P */ case 0x02: /* 1P */
return input_port_read_indexed(machine, 2); return input_port_read(machine, "IN0");
case 0x03: /* 2P */ case 0x03: /* 2P */
return input_port_read_indexed(machine, 3); return input_port_read(machine, "IN1");
case 0x04: /* coin counters and lockout */ case 0x04: /* coin counters and lockout */
return TC0510NIO_regs[4]; return TC0510NIO_regs[4];
case 0x07: /* coin */ case 0x07: /* coin */
return input_port_read_indexed(machine, 4); return input_port_read(machine, "IN2");
default: default:
logerror("PC %06x: warning - read TC0510NIO address %02x\n",activecpu_get_pc(),offset); logerror("PC %06x: warning - read TC0510NIO address %02x\n",activecpu_get_pc(),offset);
@ -5195,22 +5195,22 @@ READ8_HANDLER( TC0640FIO_r )
switch (offset) switch (offset)
{ {
case 0x00: /* DSA */ case 0x00: /* DSA */
return input_port_read_indexed(machine, 0); return input_port_read(machine, "DSWA");
case 0x01: /* DSB */ case 0x01: /* DSB */
return input_port_read_indexed(machine, 1); return input_port_read(machine, "DSWB");
case 0x02: /* 1P */ case 0x02: /* 1P */
return input_port_read_indexed(machine, 2); return input_port_read(machine, "IN0");
case 0x03: /* 2P */ case 0x03: /* 2P */
return input_port_read_indexed(machine, 3); return input_port_read(machine, "IN1");
case 0x04: /* coin counters and lockout */ case 0x04: /* coin counters and lockout */
return TC0640FIO_regs[4]; return TC0640FIO_regs[4];
case 0x07: /* coin */ case 0x07: /* coin */
return input_port_read_indexed(machine, 4); return input_port_read(machine, "IN2");
default: default:
logerror("PC %06x: warning - read TC0640FIO address %02x\n",activecpu_get_pc(),offset); logerror("PC %06x: warning - read TC0640FIO address %02x\n",activecpu_get_pc(),offset);

View File

@ -485,7 +485,7 @@ VIDEO_UPDATE( undrfire )
/* See if we should draw artificial gun targets */ /* See if we should draw artificial gun targets */
/* (not yet implemented...) */ /* (not yet implemented...) */
if (input_port_read_indexed(screen->machine,7) & 0x1) /* Fake DSW */ if (input_port_read(screen->machine, "FAKE") & 0x1) /* Fake DSW */
{ {
popmessage("Gunsights on"); popmessage("Gunsights on");
} }

View File

@ -242,7 +242,7 @@ VIDEO_UPDATE( geebee )
{ {
/* use an overlay only in upright mode */ /* use an overlay only in upright mode */
if (geebee_handleoverlay) if (geebee_handleoverlay)
output_set_value("overlay", (input_port_read_indexed(screen->machine, 2) & 0x01) == 0); output_set_value("overlay", (input_port_read(screen->machine, "DSW2") & 0x01) == 0);
tilemap_draw(bitmap,cliprect,bg_tilemap,0,0); tilemap_draw(bitmap,cliprect,bg_tilemap,0,0);

View File

@ -37,7 +37,7 @@ READ8_HANDLER( zac_s2636_r )
READ8_HANDLER( tinvader_port_0_r ) READ8_HANDLER( tinvader_port_0_r )
{ {
return input_port_read_indexed(machine, 0) - CollisionBackground; return input_port_read(machine, "1E80") - CollisionBackground;
} }
/*****************************************/ /*****************************************/