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

Subject: two more patches

Hi,

enclosed please find the following patches

* portM.diff which completes the basic port cleanup in 
drivers starting with M. It's mostly conversion of 8bit 
-> 16/32bit inputs and usage of AM_READ_PORT in memory maps 
(plus a couple of eeprom_bit_r replaced with PORT_CUSTOM 
and daitorid_soundstatus_r in metro.c converted to a 
CUSTOM_INPUT as well)

* avgdvg.diff converts most of the games checking avgdvg_done() 
in inputs to use a CUSTOM_INPUT (which I added to video/avgdvg.c). 
avgdvg_done() is still in use in mhavoc.c (which requires some 
more changes, so I'll take a look later) and in omegrace.c (which 
reads it directly and not through inputs). While at it, I've 
also done a small cleanup of inputs in starwars.c and tempest.c.

Regards,
     Fabio
This commit is contained in:
Aaron Giles 2008-08-14 06:31:06 +00:00
parent 2ec0fea9c2
commit ec66ef6ab0
36 changed files with 1824 additions and 2169 deletions

View File

@ -221,7 +221,6 @@
#include "video/avgdvg.h"
#include "machine/atari_vg.h"
#include "sound/pokey.h"
#include "bzone.h"
#define MASTER_CLOCK (12096000)
#define CLOCK_3KHZ (MASTER_CLOCK / 4096)
@ -295,6 +294,10 @@ static READ8_HANDLER( spacduel_IN3_r )
return res;
}
static CUSTOM_INPUT( clock_r )
{
return (cpunum_gettotalcycles(0) & 0x100) ? 1 : 0;
}
/*************************************
@ -346,7 +349,7 @@ static ADDRESS_MAP_START( bwidow_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x6000, 0x67ff) AM_READWRITE(pokey1_r, pokey1_w)
AM_RANGE(0x6800, 0x6fff) AM_READWRITE(pokey2_r, pokey2_w)
AM_RANGE(0x7000, 0x7000) AM_READ(atari_vg_earom_r)
AM_RANGE(0x7800, 0x7800) AM_READ(bzone_IN0_r) /* IN0 */
AM_RANGE(0x7800, 0x7800) AM_READ_PORT("IN0")
AM_RANGE(0x8000, 0x8000) AM_READ_PORT("IN3")
AM_RANGE(0x8800, 0x8800) AM_READ_PORT("IN4")
AM_RANGE(0x8800, 0x8800) AM_WRITE(bwidow_misc_w) /* coin counters, leds */
@ -362,7 +365,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( spacduel_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_READ(bzone_IN0_r) /* IN0 */
AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0")
AM_RANGE(0x0900, 0x0907) AM_READ(spacduel_IN3_r) /* IN1 */
AM_RANGE(0x0905, 0x0906) AM_WRITE(SMH_NOP) /* ignore? */
AM_RANGE(0x0a00, 0x0a00) AM_READ(atari_vg_earom_r)
@ -395,11 +398,11 @@ static INPUT_PORTS_START( bwidow )
PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1)
/* bit 6 is the VG HALT bit. We set it to "low" */
/* bit 6 is the VG HALT bit. We set it to "low" */
/* per default (busy vector processor). */
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL)
/* bit 7 is tied to a 3kHz clock */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL)
PORT_START("DSW0")
PORT_DIPNAME(0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("D4:!7,!8")
@ -474,14 +477,14 @@ static INPUT_PORTS_START( gravitar )
PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1)
/* bit 6 is the VG HALT bit. We set it to "low" */
/* bit 6 is the VG HALT bit. We set it to "low" */
/* per default (busy vector processor). */
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL)
/* bit 7 is tied to a 3kHz clock */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL)
PORT_START("DSW0")
PORT_BIT( 0x03, IP_ACTIVE_HIGH, IPT_UNUSED ) // D4:!7,!8
PORT_DIPUNUSED_DIPLOC( 0x03, IP_ACTIVE_HIGH, "D4:!7,!8" )
PORT_DIPNAME(0x0c, 0x04, DEF_STR( Lives ) ) PORT_DIPLOCATION("D4:!5,!6")
PORT_DIPSETTING ( 0x00, "3" )
PORT_DIPSETTING ( 0x04, "4" )
@ -490,7 +493,7 @@ static INPUT_PORTS_START( gravitar )
PORT_DIPNAME(0x10, 0x00, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("D4:!4")
PORT_DIPSETTING ( 0x00, DEF_STR( Easy ) )
PORT_DIPSETTING ( 0x10, DEF_STR( Hard ) )
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED ) // D4:!3
PORT_DIPUNUSED_DIPLOC( 0x20, IP_ACTIVE_HIGH, "D4:!3" )
PORT_DIPNAME(0xc0, 0x00, DEF_STR( Bonus_Life ) ) PORT_DIPLOCATION("D4:!1,!2")
PORT_DIPSETTING ( 0x00, "10000" )
PORT_DIPSETTING ( 0x40, "20000" )
@ -548,11 +551,11 @@ static INPUT_PORTS_START( lunarbat )
PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )
/* bit 6 is the VG HALT bit. We set it to "low" */
/* bit 6 is the VG HALT bit. We set it to "low" */
/* per default (busy vector processor). */
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL)
/* bit 7 is tied to a 3kHz clock */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL)
PORT_START("DSW0") /* DSW0 - Not read */
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
@ -582,11 +585,11 @@ static INPUT_PORTS_START( spacduel )
PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1)
/* bit 6 is the VG HALT bit. We set it to "low" */
/* bit 6 is the VG HALT bit. We set it to "low" */
/* per default (busy vector processor). */
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL)
/* bit 7 is tied to a 3kHz clock */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL)
PORT_START("DSW0")
PORT_DIPNAME(0x03, 0x01, DEF_STR( Lives ) ) PORT_DIPLOCATION("D4:!7,!8")

View File

@ -212,9 +212,6 @@
#include "bzone.lh"
#define IN0_3KHZ (1<<7)
#define IN0_VG_HALT (1<<6)
#define MASTER_CLOCK (12096000)
#define CLOCK_3KHZ (MASTER_CLOCK / 4096)
@ -269,23 +266,9 @@ static INTERRUPT_GEN( bzone_interrupt )
*
*************************************/
READ8_HANDLER( bzone_IN0_r )
static CUSTOM_INPUT( clock_r )
{
int res;
res = input_port_read(machine, "IN0");
if (activecpu_gettotalcycles() & 0x100)
res |= IN0_3KHZ;
else
res &= ~IN0_3KHZ;
if (avgdvg_done())
res |= IN0_VG_HALT;
else
res &= ~IN0_VG_HALT;
return res;
return (cpunum_gettotalcycles(0) & 0x100) ? 1 : 0;
}
@ -318,7 +301,7 @@ static READ8_HANDLER( redbaron_joy_r )
static ADDRESS_MAP_START( bzone_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_READ(bzone_IN0_r) /* IN0 */
AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0")
AM_RANGE(0x0a00, 0x0a00) AM_READ_PORT("DSW0")
AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("DSW1")
AM_RANGE(0x1000, 0x1000) AM_WRITE(bzone_coin_counter_w)
@ -338,7 +321,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( redbaron_map, ADDRESS_SPACE_PROGRAM, 8 )
ADDRESS_MAP_GLOBAL_MASK(0x7fff)
AM_RANGE(0x0000, 0x03ff) AM_RAM
AM_RANGE(0x0800, 0x0800) AM_READ(bzone_IN0_r) /* IN0 */
AM_RANGE(0x0800, 0x0800) AM_READ_PORT("IN0")
AM_RANGE(0x0a00, 0x0a00) AM_READ_PORT("DSW0")
AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("DSW1")
AM_RANGE(0x1000, 0x1000) AM_WRITE(SMH_NOP) /* coin out */
@ -369,18 +352,16 @@ ADDRESS_MAP_END
#define BZONEIN0\
PORT_START("IN0")\
PORT_BIT ( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )\
PORT_BIT ( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )\
PORT_BIT ( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )\
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )\
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )\
PORT_BIT( 0x0c, IP_ACTIVE_LOW, IPT_UNUSED )\
PORT_SERVICE( 0x10, IP_ACTIVE_LOW )\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1)\
/* bit 6 is the VG HALT bit. We set it to "low" */\
/* per default (busy vector processor). */\
/* handled by bzone_IN0_r() */\
PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL )\
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL)\
/* bit 7 is tied to a 3kHz clock */\
/* handled by bzone_IN0_r() */\
PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL)
#define BZONEDSW0\

View File

@ -345,10 +345,10 @@ static PALETTE_INIT( meadows )
static ADDRESS_MAP_START( meadows_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x0c00, 0x0c00) AM_READ(input_port_0_r)
AM_RANGE(0x0c01, 0x0c01) AM_READ(input_port_1_r)
AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("INPUTS")
AM_RANGE(0x0c01, 0x0c01) AM_READ_PORT("STICK")
AM_RANGE(0x0c02, 0x0c02) AM_READ(hsync_chain_r)
AM_RANGE(0x0c03, 0x0c03) AM_READ(input_port_2_r)
AM_RANGE(0x0c03, 0x0c03) AM_READ_PORT("DSW")
AM_RANGE(0x0c00, 0x0c03) AM_WRITE(meadows_audio_w)
AM_RANGE(0x0d00, 0x0d0f) AM_WRITE(meadows_spriteram_w) AM_BASE(&spriteram)
AM_RANGE(0x0e00, 0x0eff) AM_RAM
@ -360,10 +360,10 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( minferno_main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x0bff) AM_ROM
AM_RANGE(0x1c00, 0x1eff) AM_RAM_WRITE(meadows_videoram_w) AM_BASE(&videoram) AM_SIZE(&videoram_size)
AM_RANGE(0x1f00, 0x1f00) AM_READ(input_port_0_r)
AM_RANGE(0x1f01, 0x1f01) AM_READ(input_port_1_r)
AM_RANGE(0x1f02, 0x1f02) AM_READ(input_port_2_r)
AM_RANGE(0x1f03, 0x1f03) AM_READ(input_port_3_r)
AM_RANGE(0x1f00, 0x1f00) AM_READ_PORT("JOY1")
AM_RANGE(0x1f01, 0x1f01) AM_READ_PORT("JOY2")
AM_RANGE(0x1f02, 0x1f02) AM_READ_PORT("BUTTONS")
AM_RANGE(0x1f03, 0x1f03) AM_READ_PORT("DSW1")
AM_RANGE(0x1f00, 0x1f03) AM_WRITE(meadows_audio_w)
AM_RANGE(0x1f04, 0x1f04) AM_READ(vsync_chain_hi_r)
AM_RANGE(0x1f05, 0x1f05) AM_READ(vsync_chain_lo_r)
@ -371,7 +371,7 @@ ADDRESS_MAP_END
static ADDRESS_MAP_START( minferno_io_map, ADDRESS_SPACE_IO, 8 )
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ(input_port_4_r)
AM_RANGE(S2650_DATA_PORT, S2650_DATA_PORT) AM_READ_PORT("DSW2")
ADDRESS_MAP_END
@ -398,7 +398,7 @@ ADDRESS_MAP_END
*************************************/
static INPUT_PORTS_START( meadows )
PORT_START("INPUTS") /* IN0 buttons */
PORT_START("INPUTS")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -408,10 +408,10 @@ static INPUT_PORTS_START( meadows )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("STICK") /* IN1 control 1 */
PORT_START("STICK")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_MINMAX(0x10,0xf0) PORT_SENSITIVITY(100) PORT_KEYDELTA(10)
PORT_START("DSW") /* IN2 dip switch */
PORT_START("DSW")
PORT_DIPNAME( 0x07, 0x01, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "2" )
PORT_DIPSETTING( 0x01, "3" )
@ -435,32 +435,32 @@ static INPUT_PORTS_START( meadows )
PORT_DIPSETTING( 0xc0, "35000")
PORT_DIPSETTING( 0x00, DEF_STR( None ))
PORT_START("FAKE") /* FAKE coinage */
PORT_START("FAKE")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_CHANGED(coin_inserted, 0)
PORT_BIT( 0x8e, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
static INPUT_PORTS_START( minferno )
PORT_START("JOY1") /* IN0 left joystick */
PORT_START("JOY1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
PORT_START("JOY2") /* IN1 right joystick */
PORT_START("JOY2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
PORT_START("BUTTONS") /* IN2 buttons */
PORT_START("BUTTONS")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("DSW1") /* IN3 coinage */
PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x01, "Coin Option" )
PORT_DIPSETTING( 0x00, "1 Game/Coin" )
PORT_DIPSETTING( 0x01, "1 Player/Coin" )
@ -470,7 +470,7 @@ static INPUT_PORTS_START( minferno )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_COIN1 )
PORT_START("DSW2") /* IN4 dip switch */
PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Game_Time ) )
PORT_DIPSETTING( 0x00, "60s" )
PORT_DIPSETTING( 0x01, "90s" )

View File

@ -157,10 +157,6 @@ static MACHINE_RESET( megasys1_hachoo )
[ Main CPU - System A / Z ]
***************************************************************************/
static READ16_HANDLER( coins_r ) {return input_port_read(machine, "IN0");} // < 00 | Coins >
static READ16_HANDLER( player1_r ) {return input_port_read(machine, "IN1");} // < 00 | Player 1 >
static READ16_HANDLER( player2_r ) {return input_port_read(machine, "IN2") * 256 +
input_port_read(machine, "IN3");} // < Reserve | Player 2 >
static READ16_HANDLER( dsw1_r ) {return input_port_read(machine, "DSW1");} // DSW 1
static READ16_HANDLER( dsw2_r ) {return input_port_read(machine, "DSW2");} // DSW 2
static READ16_HANDLER( dsw_r ) {return input_port_read(machine, "DSW1") * 256 +
@ -182,9 +178,9 @@ static INTERRUPT_GEN( interrupt_A )
static ADDRESS_MAP_START( readmem_A, ADDRESS_SPACE_PROGRAM, 16 )
ADDRESS_MAP_GLOBAL_MASK(0xfffff)
AM_RANGE(0x000000, 0x05ffff) AM_READ(SMH_ROM)
AM_RANGE(0x080000, 0x080001) AM_READ(coins_r)
AM_RANGE(0x080002, 0x080003) AM_READ(player1_r)
AM_RANGE(0x080004, 0x080005) AM_READ(player2_r)
AM_RANGE(0x080000, 0x080001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x080002, 0x080003) AM_READ_PORT("P1")
AM_RANGE(0x080004, 0x080005) AM_READ_PORT("P2")
AM_RANGE(0x080006, 0x080007) AM_READ(dsw_r)
AM_RANGE(0x080008, 0x080009) AM_READ(soundlatch2_word_r) /* from sound cpu */
AM_RANGE(0x084000, 0x084fff) AM_READ(SMH_RAM)
@ -256,9 +252,9 @@ static READ16_HANDLER( ip_select_r )
switch (i)
{
case 0 : return coins_r(machine,0,0xffff); break;
case 1 : return player1_r(machine,0,0xffff); break;
case 2 : return player2_r(machine,0,0xffff); break;
case 0 : return input_port_read(machine, "SYSTEM"); break;
case 1 : return input_port_read(machine, "P1"); break;
case 2 : return input_port_read(machine, "P2"); break;
case 3 : return dsw1_r(machine,0,0xffff); break;
case 4 : return dsw2_r(machine,0,0xffff); break;
default : return 0x0006;
@ -357,7 +353,7 @@ static ADDRESS_MAP_START( readmem_D, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x0d8000, 0x0d87ff) AM_MIRROR(0x3000) AM_READ(SMH_RAM)
AM_RANGE(0x0e0000, 0x0e0001) AM_READ(dsw_r)
AM_RANGE(0x0e8000, 0x0ebfff) AM_READ(SMH_RAM)
AM_RANGE(0x0f0000, 0x0f0001) AM_READ(coins_r) /* Coins + P1&P2 Buttons */
AM_RANGE(0x0f0000, 0x0f0001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x0f8000, 0x0f8001) AM_READ(okim6295_status_0_lsb_r)
// { 0x100000, 0x100001 protection
AM_RANGE(0x1f0000, 0x1fffff) AM_READ(SMH_RAM)
@ -941,14 +937,15 @@ ROM_END
static INPUT_PORTS_START( 64street )
PORT_START("SYSTEM")
COINS
// fire jump
PORT_START("IN1")
JOY_2BUTTONS(1)
PORT_START("IN2")
RESERVE // Unused
PORT_START("IN3")
PORT_START("P1")
JOY_2BUTTONS(1) // fire jump
PORT_START("P2")
JOY_2BUTTONS(2)
RESERVE // Unused
PORT_START("DSW1")
COINAGE_8BITS
@ -974,7 +971,6 @@ static INPUT_PORTS_START( 64street )
PORT_DIPSETTING( 0x20, "3" )
PORT_DIPSETTING( 0x00, "5" )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
INPUT_PORTS_END
@ -1077,14 +1073,15 @@ ROM_END
static INPUT_PORTS_START( astyanax )
COINS /* IN0 0x80001.b */
// fire jump magic
PORT_START("IN1")
JOY_3BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_3BUTTONS(2) /* 0x80005.b */
PORT_START("SYSTEM") /* 0x80001.b */
COINS
PORT_START("P1") /* 0x80003.b */
JOY_3BUTTONS(1) // fire jump magic
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_3BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) )
@ -1092,19 +1089,19 @@ static INPUT_PORTS_START( astyanax )
PORT_DIPSETTING( 0x04, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x07, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode
// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) ) // 1_3
// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) ) // 1_4
// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) ) // 1_5
// PORT_DIPSETTING( 0x03, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode
// PORT_DIPSETTING( 0x05, DEF_STR( 1C_1C ) ) // 1_3
// PORT_DIPSETTING( 0x01, DEF_STR( 1C_1C ) ) // 1_4
// PORT_DIPSETTING( 0x06, DEF_STR( 1C_1C ) ) // 1_5
PORT_DIPNAME( 0x38, 0x38, DEF_STR( Coin_B ) )
PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x20, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x38, DEF_STR( 1C_1C ) )
// PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode
// PORT_DIPSETTING( 0x28, DEF_STR( 1C_1C ) ) // 1_3
// PORT_DIPSETTING( 0x08, DEF_STR( 1C_1C ) ) // 1_4
// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) ) // 1_5
// PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) ) // 1_2 shown in test mode
// PORT_DIPSETTING( 0x28, DEF_STR( 1C_1C ) ) // 1_3
// PORT_DIPSETTING( 0x08, DEF_STR( 1C_1C ) ) // 1_4
// PORT_DIPSETTING( 0x30, DEF_STR( 1C_1C ) ) // 1_5
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -1328,13 +1325,15 @@ ROM_END
static INPUT_PORTS_START( avspirit )
PORT_START("SYSTEM")
COINS
PORT_START("IN1")
PORT_START("P1")
JOY_2BUTTONS(1)
PORT_START("IN2")
RESERVE
PORT_START("IN3")
PORT_START("P2")
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1")
COINAGE_8BITS
@ -1427,14 +1426,15 @@ ROM_END
static INPUT_PORTS_START( bigstrik )
PORT_START("SYSTEM")
COINS
// pass shoot feint
PORT_START("IN1")
JOY_3BUTTONS(1)
PORT_START("IN2")
RESERVE
PORT_START("IN3")
PORT_START("P1")
JOY_3BUTTONS(1) // pass shoot feint
PORT_START("P2")
JOY_3BUTTONS(2)
RESERVE
PORT_START("DSW1")
PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_A ) )
@ -1443,11 +1443,11 @@ static INPUT_PORTS_START( bigstrik )
PORT_DIPSETTING( 0x09, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x0f, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x05, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x04, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x02, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x01, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x04, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x03, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x02, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x01, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x06, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0x0e, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x0d, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x0c, DEF_STR( 1C_4C ) )
@ -1460,11 +1460,11 @@ static INPUT_PORTS_START( bigstrik )
PORT_DIPSETTING( 0x90, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0xf0, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x50, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x40, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x30, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x20, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x10, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x60, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x40, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x30, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x20, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x10, DEF_STR( 2C_3C ) )
// PORT_DIPSETTING( 0x60, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0xe0, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0xd0, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0xc0, DEF_STR( 1C_4C ) )
@ -1545,15 +1545,15 @@ ROM_START( chimerab )
ROM_END
static INPUT_PORTS_START( chimerab )
PORT_START("SYSTEM")
COINS
// fire jump unused?(shown in service mode, but not in instructions)
PORT_START("IN1")
JOY_2BUTTONS(1)
PORT_START("IN2")
RESERVE // Unused
PORT_START("IN3")
PORT_START("P1")
JOY_2BUTTONS(1) // fire jump unused?(shown in service mode, but not in instructions)
PORT_START("P2")
JOY_2BUTTONS(2)
RESERVE // Unused
PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Flip_Screen ) )
@ -1579,7 +1579,6 @@ static INPUT_PORTS_START( chimerab )
PORT_START("DSW2")
COINAGE_8BITS
INPUT_PORTS_END
@ -1671,17 +1670,17 @@ ROM_START( cybattlr )
ROM_END
static INPUT_PORTS_START( cybattlr )
PORT_START("SYSTEM")
COINS
// fire sword
PORT_START("IN1")
JOY_2BUTTONS(1)
PORT_START("IN2")
RESERVE // Unused
PORT_START("IN3")
JOY_2BUTTONS(2)
PORT_START("DSW1") /*1fd2d9.b, !1fd009.b */
PORT_START("P1")
JOY_2BUTTONS(1) // fire sword
PORT_START("P2")
JOY_2BUTTONS(2)
RESERVE // Unused
PORT_START("DSW1") /*1fd2d9.b, !1fd009.b */
PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x00, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 3C_1C ) )
@ -1705,7 +1704,7 @@ static INPUT_PORTS_START( cybattlr )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_START("DSW2") /* 1fd2d7.b, !1fd007.b */
PORT_START("DSW2") /* 1fd2d7.b, !1fd007.b */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x02, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x03, DEF_STR( Normal ) )
@ -1830,14 +1829,15 @@ ROM_START( edfu )
ROM_END
static INPUT_PORTS_START( edf )
PORT_START("SYSTEM")
COINS
// fire unfold_weapons
PORT_START("IN1")
JOY_2BUTTONS(1)
PORT_START("IN2")
RESERVE
PORT_START("IN3")
PORT_START("P1")
JOY_2BUTTONS(1) // fire unfold_weapons
PORT_START("P2")
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1")
COINAGE_6BITS
@ -1870,7 +1870,6 @@ static INPUT_PORTS_START( edf )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -1930,16 +1929,17 @@ ROM_END
static INPUT_PORTS_START( hachoo )
COINS /* 0x80001.b */
// fire jump
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("SYSTEM") /* 0x80001.b */
COINS
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // fire jump
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
@ -1948,7 +1948,7 @@ static INPUT_PORTS_START( hachoo )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) /* Manual states dips 1-4 & 6 are "Unused" */
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -1972,7 +1972,6 @@ static INPUT_PORTS_START( hachoo )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -2051,39 +2050,39 @@ ROM_START( hayaosi1 )
ROM_END
static INPUT_PORTS_START( hayaosi1 )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_SERVICE_NO_TOGGLE( 0x08, IP_ACTIVE_LOW )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START3 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START("SYSTEM")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_SERVICE_NO_TOGGLE( 0x0008, IP_ACTIVE_LOW )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START3 )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(3)
PORT_START("P1")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(3)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(3)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(3)
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN2")
PORT_START("P2")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
RESERVE
PORT_START("IN3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(3)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(3)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("DSW1")
COINAGE_8BITS
@ -2208,17 +2207,17 @@ ROM_END
static INPUT_PORTS_START( kazan )
PORT_START("SYSTEM") /* 0x80001.b */
COINS
COINS /* IN0 0x80001.b */
// fire jump
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // fire jump
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
@ -2227,7 +2226,7 @@ static INPUT_PORTS_START( kazan )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x03, "2" )
PORT_DIPSETTING( 0x01, "3" )
@ -2250,7 +2249,6 @@ static INPUT_PORTS_START( kazan )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -2313,17 +2311,17 @@ ROM_END
static INPUT_PORTS_START( jitsupro )
PORT_START("SYSTEM") /* 0x80001.b */
COINS
COINS /* 0x80001.b */
// shoot change view change bat
PORT_START("IN1")
JOY_3BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_3BUTTONS(2) /* 0x80005.b */
PORT_START("P1") /* 0x80003.b */
JOY_3BUTTONS(1) // shoot change view change bat
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_3BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
@ -2332,7 +2330,7 @@ static INPUT_PORTS_START( jitsupro )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x01, 0x01, "2 Player Innings per Credit" )
PORT_DIPSETTING( 0x01, "2" )
PORT_DIPSETTING( 0x00, "3" )
@ -2353,9 +2351,9 @@ static INPUT_PORTS_START( jitsupro )
PORT_DIPSETTING( 0x14, "H" )
PORT_DIPSETTING( 0x10, "O (M)" )
PORT_DIPSETTING( 0x0c, "Bu" )
// PORT_DIPSETTING( 0x08, "13" )
// PORT_DIPSETTING( 0x04, "14" )
// PORT_DIPSETTING( 0x00, "15" )
// PORT_DIPSETTING( 0x08, "13" )
// PORT_DIPSETTING( 0x04, "14" )
// PORT_DIPSETTING( 0x00, "15" )
PORT_DIPNAME( 0x40, 0x40, "Scroll Is Based On" )
PORT_DIPSETTING( 0x40, "Shadow of Baseball" )
PORT_DIPSETTING( 0x00, "The Baseball Itself" )
@ -2438,16 +2436,17 @@ ROM_START( kickoff )
ROM_END
static INPUT_PORTS_START( kickoff )
COINS /* 0x80001.b -> !f0008/a.w */
// shoot pass
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b -> !f000c/e.w */
PORT_START("IN2")
RESERVE /* 0x80004.b --> !f0010/11.w */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("SYSTEM") /* 0x80001.b -> !f0008/a.w */
COINS
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P1") /* 0x80003.b -> !f000c/e.w */
JOY_2BUTTONS(1) // shoot pass
PORT_START("P2") /* 0x80004.b --> !f0010/11.w */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x01, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 3C_1C ) )
@ -2473,7 +2472,7 @@ static INPUT_PORTS_START( kickoff )
PORT_DIPSETTING( 0x80, DEF_STR( Japanese ) )
PORT_DIPSETTING( 0x00, DEF_STR( English ) ) // show "Japan Only" warning
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x03, 0x03, "Time" ) // -> !f0082.w
PORT_DIPSETTING( 0x03, "3'" )
PORT_DIPSETTING( 0x02, "4'" )
@ -2496,7 +2495,6 @@ static INPUT_PORTS_START( kickoff )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -2557,16 +2555,17 @@ ROM_START( makaiden )
ROM_END
static INPUT_PORTS_START( lomakai )
COINS /* 0x80001.b */
// fire jump
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("SYSTEM") /* 0x80001.b */
COINS
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // fire jump
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS_2
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
@ -2575,7 +2574,7 @@ static INPUT_PORTS_START( lomakai )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "2" )
PORT_DIPSETTING( 0x03, "3" )
@ -2598,7 +2597,6 @@ static INPUT_PORTS_START( lomakai )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -2739,17 +2737,17 @@ ROM_START( p47j )
ROM_END
static INPUT_PORTS_START( p47 )
PORT_START("SYSTEM") /* 0x80001.b */
COINS
COINS /* 0x80001.b */
// fire bomb
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // fire bomb
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS_2
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
@ -2758,7 +2756,7 @@ static INPUT_PORTS_START( p47 )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x02, "2" )
PORT_DIPSETTING( 0x03, "3" )
@ -2781,7 +2779,6 @@ static INPUT_PORTS_START( p47 )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -2906,38 +2903,36 @@ ROM_START( peekaboo )
ROM_LOAD( "priority.69", 0x000000, 0x200, CRC(b40bff56) SHA1(39c95eed79328ef2df754988db83e07909e848f8) )
ROM_END
static INPUT_PORTS_START( peekaboo )
PORT_START("IN0") /* COINS + P1&P2 Buttons - .b */
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN3 ) // called "service"
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN4 ) // called "test"
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON3 ) // called "stage clear"
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON4 ) // called "option"
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN )
#define PEEKABOO_PADDLE(_FLAG_) \
PORT_BIT( 0x00ff, 0x0080, IPT_PADDLE ) PORT_PLAYER(_FLAG_) PORT_MINMAX(0x0018,0x00e0) PORT_SENSITIVITY(50) PORT_KEYDELTA(10) PORT_CENTERDELTA(0)
PORT_START("IN1") /* paddle p1 */
static INPUT_PORTS_START( peekaboo )
PORT_START("SYSTEM")
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN3 ) // called "service"
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN4 ) // called "test"
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_BUTTON3 ) // called "stage clear"
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_BUTTON4 ) // called "option"
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("P1")
PEEKABOO_PADDLE(1)
PORT_START("IN2")
RESERVE /* fake port */
PORT_START("IN3") /* paddle p2 */
PORT_START("P2")
PEEKABOO_PADDLE(2) PORT_COCKTAIL
RESERVE
PORT_START("DSW1") /* 1f003a.b<-e0000.b */
PORT_START("DSW1") /* 1f003a.b<-e0000.b */
COINAGE_6BITS_2
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) ) // 1f0354<-
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
@ -2946,7 +2941,7 @@ static INPUT_PORTS_START( peekaboo )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* 1f003b.b<-e0001.b */
PORT_START("DSW2") /* 1f003b.b<-e0001.b */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) // 1f0358<-!
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x03, DEF_STR( Normal ) )
@ -2967,7 +2962,6 @@ static INPUT_PORTS_START( peekaboo )
PORT_DIPNAME( 0x80, 0x80, "Number of controllers" ) // 1f0074<-!
PORT_DIPSETTING( 0x80, "1" )
PORT_DIPSETTING( 0x00, "2" )
INPUT_PORTS_END
@ -2980,8 +2974,8 @@ static READ16_HANDLER( protection_peekaboo_r )
switch (protection_val)
{
case 0x02: return 0x03;
case 0x51: return player1_r(machine,0,0xffff);
case 0x52: return player2_r(machine,0,0xffff);
case 0x51: return input_port_read(machine, "P1");
case 0x52: return input_port_read(machine, "P2");
default: return protection_val;
}
}
@ -3064,16 +3058,17 @@ ROM_START( plusalph )
ROM_END
static INPUT_PORTS_START( plusalph )
COINS /* IN0 0x80001.b */
// fire bomb
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("SYSTEM") /* 0x80001.b */
COINS
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // fire bomb
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
@ -3082,7 +3077,7 @@ static INPUT_PORTS_START( plusalph )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x03, "3" )
PORT_DIPSETTING( 0x02, "4" )
@ -3105,7 +3100,6 @@ static INPUT_PORTS_START( plusalph )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -3256,24 +3250,24 @@ ROM_END
static INPUT_PORTS_START( rodland )
PORT_START("SYSTEM") /* 0x80001.b */
COINS
COINS /* 0x80001.b */
// fire ladder
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // fire ladder
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unused ) ) /* according to manual */
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
@ -3296,7 +3290,6 @@ static INPUT_PORTS_START( rodland )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -3353,16 +3346,17 @@ ROM_START( stdragon )
ROM_END
static INPUT_PORTS_START( stdragon )
COINS /* 0x80001.b */
// fire fire
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("SYSTEM") /* 0x80001.b */
COINS
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // fire fire
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS_2
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
@ -3371,7 +3365,7 @@ static INPUT_PORTS_START( stdragon )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x02, "2" )
PORT_DIPSETTING( 0x03, "3" )
@ -3394,7 +3388,6 @@ static INPUT_PORTS_START( stdragon )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
@ -3445,23 +3438,24 @@ ROM_START( soldamj )
ROM_END
static INPUT_PORTS_START( soldamj )
COINS /* 0x80001.b */
// turn turn (3rd button is shown in service mode, but seems unused)
PORT_START("IN1")
JOY_2BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_2BUTTONS(2) /* 0x80005.b */
PORT_START("SYSTEM") /* 0x80001.b */
COINS
PORT_START("P1") /* 0x80003.b */
JOY_2BUTTONS(1) // turn turn (3rd button is shown in service mode, but seems unused)
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_2BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS_2
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x40, DEF_STR( On ) )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x03, DEF_STR( Normal ) )
@ -3484,7 +3478,6 @@ static INPUT_PORTS_START( soldamj )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END
static READ16_HANDLER( soldamj_spriteram16_r )
@ -3583,16 +3576,17 @@ ROM_START( tshingna )
ROM_END
static INPUT_PORTS_START( tshingen )
COINS /* 0x80001.b */
// sword_left sword_right jump
PORT_START("IN1")
JOY_3BUTTONS(1) /* 0x80003.b */
PORT_START("IN2")
RESERVE /* 0x80004.b */
PORT_START("IN3")
JOY_3BUTTONS(2) /* 0x80005.b */
PORT_START("SYSTEM") /* 0x80001.b */
COINS
PORT_START("DSW1") /* 0x80006.b */
PORT_START("P1") /* 0x80003.b */
JOY_3BUTTONS(1) // sword_left sword_right jump
PORT_START("P2") /* 0x80004.b - 0x80005.b */
JOY_3BUTTONS(2)
RESERVE
PORT_START("DSW1") /* 0x80006.b */
COINAGE_6BITS
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
@ -3601,7 +3595,7 @@ static INPUT_PORTS_START( tshingen )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
PORT_START("DSW2") /* 0x80007.b */
PORT_START("DSW2") /* 0x80007.b */
PORT_DIPNAME( 0x03, 0x01, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x03, "2" )
PORT_DIPSETTING( 0x01, "3" )
@ -3612,18 +3606,17 @@ static INPUT_PORTS_START( tshingen )
PORT_DIPSETTING( 0x04, "30k" )
PORT_DIPSETTING( 0x08, "40k" )
PORT_DIPSETTING( 0x00, "50k" )
PORT_DIPNAME( 0x30, 0x10, DEF_STR( Difficulty ) ) // damage when hit
PORT_DIPSETTING( 0x30, DEF_STR( Easy ) ) // 0
PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) // 1
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) // 2
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) // 3
PORT_DIPNAME( 0x30, 0x10, DEF_STR( Difficulty ) ) // damage when hit
PORT_DIPSETTING( 0x30, DEF_STR( Easy ) ) // 0
PORT_DIPSETTING( 0x10, DEF_STR( Normal ) ) // 1
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) ) // 2
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) ) // 3
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Allow_Continue ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x40, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
INPUT_PORTS_END

View File

@ -84,7 +84,7 @@ static READ16_HANDLER( alpha_mcu_r )
switch (offset)
{
case 0: /* Dipswitch 2 */
shared_ram[0] = (source&0xff00)|input_port_read(machine, "IN2");
shared_ram[0] = (source&0xff00)|input_port_read(machine, "DSW");
return 0;
case 0x22: /* Coin value */
@ -95,15 +95,15 @@ static READ16_HANDLER( alpha_mcu_r )
credits=0;
if ((input_port_read(machine, "IN3")&0x3)==3) latch=0;
if ((input_port_read(machine, "COINS")&0x3)==3) latch=0;
if ((input_port_read(machine, "IN3")&0x1)==0 && !latch)
if ((input_port_read(machine, "COINS")&0x1)==0 && !latch)
{
shared_ram[0x29] = (source&0xff00)|(0x22); // coinA
shared_ram[0x22] = (source&0xff00)|0x0;
latch=1;
coinvalue = (~input_port_read(machine, "IN2")>>3) & 1;
coinvalue = (~input_port_read(machine, "DSW")>>3) & 1;
deposits1++;
if (deposits1 == coinage1[coinvalue][0])
@ -114,13 +114,13 @@ static READ16_HANDLER( alpha_mcu_r )
else
credits = 0;
}
else if ((input_port_read(machine, "IN3")&0x2)==0 && !latch)
else if ((input_port_read(machine, "COINS")&0x2)==0 && !latch)
{
shared_ram[0x29] = (source&0xff00)|(0x22); // coinA
shared_ram[0x22] = (source&0xff00)|0x0;
latch=1;
coinvalue = (~input_port_read(machine, "IN2")>>3) & 1;
coinvalue = (~input_port_read(machine, "DSW")>>3) & 1;
deposits2++;
if (deposits2 == coinage2[coinvalue][0])
@ -149,8 +149,8 @@ static ADDRESS_MAP_START( meijinsn_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x180000, 0x180dff) AM_RAM
AM_RANGE(0x180e00, 0x180fff) AM_RAM AM_BASE(&shared_ram)
AM_RANGE(0x181000, 0x181fff) AM_RAM
AM_RANGE(0x1c0000, 0x1c0001) AM_READ(input_port_1_word_r)
AM_RANGE(0x1a0000, 0x1a0001) AM_WRITE(sound_w) AM_READ(input_port_0_word_r)
AM_RANGE(0x1c0000, 0x1c0001) AM_READ_PORT("P2")
AM_RANGE(0x1a0000, 0x1a0001) AM_READ_PORT("P1") AM_WRITE(sound_w)
ADDRESS_MAP_END
static ADDRESS_MAP_START( meijinsn_sound_map, ADDRESS_SPACE_PROGRAM, 8 )
@ -167,28 +167,28 @@ static ADDRESS_MAP_START( meijinsn_sound_io_map, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
static INPUT_PORTS_START( meijinsn )
PORT_START("IN0")
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
PORT_START("P1")
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x7cc0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_START2 )
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x7cc0, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_START2 )
PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_SERVICE )
PORT_START("IN1")
PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0xc0ff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START("P2")
PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT) PORT_PLAYER(2)
PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0xc0ff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START("IN2")
PORT_START("DSW")
PORT_DIPNAME( 0x07, 0x00, "Game time (actual game)" )
PORT_DIPSETTING( 0x07, "1:00" )
PORT_DIPSETTING( 0x06, "2:00" )
@ -208,7 +208,7 @@ PORT_START("IN0")
PORT_DIPSETTING( 0x20, "1:00" )
PORT_DIPSETTING( 0x00, "2:00" )
PORT_START("IN3") /* Coin input to microcontroller */
PORT_START("COINS") /* Coin input to microcontroller */
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
INPUT_PORTS_END

View File

@ -177,8 +177,8 @@ static WRITE8_HANDLER( misc_w )
static ADDRESS_MAP_START( pitboss_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_ROM
AM_RANGE(0x6000, 0x67ff) AM_RAM AM_BASE(&generic_nvram) AM_SIZE(&generic_nvram_size)
AM_RANGE(0xa000, 0xa000) AM_READ(input_port_1_r)
AM_RANGE(0xa001, 0xa001) AM_READ(input_port_0_r)
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("IN1")
AM_RANGE(0xa001, 0xa001) AM_READ_PORT("IN0")
AM_RANGE(0xa002, 0xa002) AM_NOP //dips ?
// AM_RANGE(0xc000, 0xc002) AM_NOP
AM_RANGE(0xe000, 0xe001) AM_WRITENOP // 6845 crt
@ -280,7 +280,7 @@ ADDRESS_MAP_END
// keep it pressed for 10 seconds to clear all the memory.
// to enter hidden test mode enable "Enable Test Mode", enable "Reset High Scores"
static INPUT_PORTS_START( phrcraze )
PORT_START("IN0") /* IN0 */
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 )
@ -292,7 +292,7 @@ static INPUT_PORTS_START( phrcraze )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("IN1") /* IN1 */
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW )
@ -490,7 +490,7 @@ static INPUT_PORTS_START( tictac )
INPUT_PORTS_END
static INPUT_PORTS_START( trivia )
PORT_START("IN0") /* IN0 */
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 )
@ -500,7 +500,7 @@ static INPUT_PORTS_START( trivia )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1") /* IN1 */
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW )
@ -520,7 +520,7 @@ static INPUT_PORTS_START( trivia )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("IN2") /* IN2 */
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_COCKTAIL

View File

@ -107,18 +107,18 @@ VIDEO_EOF( mermaid );
/* Read/Write Handlers */
static UINT8 *mermaid_AY8910_enable;
static UINT8 *mermaid_ay8910_enable;
static WRITE8_HANDLER( mermaid_AY8910_write_port_w )
static WRITE8_HANDLER( mermaid_ay8910_write_port_w )
{
if (mermaid_AY8910_enable[0]) ay8910_write_port_0_w(machine, offset, data);
if (mermaid_AY8910_enable[1]) ay8910_write_port_1_w(machine, offset, data);
if (mermaid_ay8910_enable[0]) ay8910_write_port_0_w(machine, offset, data);
if (mermaid_ay8910_enable[1]) ay8910_write_port_1_w(machine, offset, data);
}
static WRITE8_HANDLER( mermaid_AY8910_control_port_w )
static WRITE8_HANDLER( mermaid_ay8910_control_port_w )
{
if (mermaid_AY8910_enable[0]) ay8910_control_port_0_w(machine, offset, data);
if (mermaid_AY8910_enable[1]) ay8910_control_port_1_w(machine, offset, data);
if (mermaid_ay8910_enable[0]) ay8910_control_port_0_w(machine, offset, data);
if (mermaid_ay8910_enable[1]) ay8910_control_port_1_w(machine, offset, data);
}
/* Memory Map */
@ -132,26 +132,26 @@ static ADDRESS_MAP_START( mermaid_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xd840, 0xd85f) AM_RAM_WRITE(mermaid_fg_scroll_w) AM_BASE(&mermaid_fg_scrollram)
AM_RANGE(0xd880, 0xd8bf) AM_RAM AM_BASE(&spriteram) AM_SIZE(&spriteram_size)
AM_RANGE(0xdc00, 0xdfff) AM_RAM_WRITE(mermaid_colorram_w) AM_BASE(&colorram)
AM_RANGE(0xe000, 0xe000) AM_READ(input_port_0_r)
AM_RANGE(0xe000, 0xe001) AM_RAM AM_BASE(&mermaid_AY8910_enable)
AM_RANGE(0xe000, 0xe000) AM_READ_PORT("DSW")
AM_RANGE(0xe000, 0xe001) AM_RAM AM_BASE(&mermaid_ay8910_enable)
AM_RANGE(0xe002, 0xe002) AM_WRITENOP // ???
AM_RANGE(0xe003, 0xe003) AM_WRITENOP // ???
AM_RANGE(0xe004, 0xe004) AM_WRITENOP // ???
AM_RANGE(0xe005, 0xe005) AM_WRITE(mermaid_flip_screen_x_w)
AM_RANGE(0xe006, 0xe006) AM_WRITE(mermaid_flip_screen_y_w)
AM_RANGE(0xe007, 0xe007) AM_WRITE(interrupt_enable_w)
AM_RANGE(0xe800, 0xe800) AM_READ(input_port_1_r) AM_WRITENOP // ???
AM_RANGE(0xe800, 0xe800) AM_READ_PORT("P1") AM_WRITENOP // ???
AM_RANGE(0xe801, 0xe801) AM_WRITENOP // ???
AM_RANGE(0xe802, 0xe802) AM_WRITENOP // ???
AM_RANGE(0xe803, 0xe803) AM_WRITENOP // ???
AM_RANGE(0xe804, 0xe804) AM_WRITE(rougien_gfxbankswitch1_w)
AM_RANGE(0xe805, 0xe805) AM_WRITE(rougien_gfxbankswitch2_w)
AM_RANGE(0xe807, 0xe807) AM_WRITENOP // ???
AM_RANGE(0xf000, 0xf000) AM_READ(input_port_2_r)
AM_RANGE(0xf000, 0xf000) AM_READ_PORT("P2")
AM_RANGE(0xf800, 0xf800) AM_READ(mermaid_collision_r)
AM_RANGE(0xf802, 0xf802) AM_WRITENOP // ???
AM_RANGE(0xf806, 0xf806) AM_WRITE(mermaid_AY8910_write_port_w)
AM_RANGE(0xf807, 0xf807) AM_WRITE(mermaid_AY8910_control_port_w)
AM_RANGE(0xf806, 0xf806) AM_WRITE(mermaid_ay8910_write_port_w)
AM_RANGE(0xf807, 0xf807) AM_WRITE(mermaid_ay8910_control_port_w)
ADDRESS_MAP_END
/* Input Ports */
@ -178,24 +178,24 @@ static INPUT_PORTS_START( mermaid )
PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0xc0, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ))
PORT_DIPSETTING( 0x40, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_3C ) )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN1 )

View File

@ -370,9 +370,9 @@ static READ16_HANDLER( metro_soundstatus_r )
return (busy_sndcpu ? 0x00 : 0x01);
}
static READ16_HANDLER( daitorid_soundstatus_r )
static CUSTOM_INPUT( custom_soundstatus_r )
{
return input_port_read(machine, "IN0") | (busy_sndcpu ? 0x80 : 0x00);
return (busy_sndcpu ? 0x01 : 0x00);
}
static WRITE16_HANDLER( metro_soundstatus_w )
@ -1083,10 +1083,10 @@ static ADDRESS_MAP_START( daitorid_readmem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x474000, 0x474fff) AM_READ(SMH_RAM ) // Sprites
AM_RANGE(0x478000, 0x4787ff) AM_READ(SMH_RAM ) // Tiles Set
AM_RANGE(0x4788a2, 0x4788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause
AM_RANGE(0xc00000, 0xc00001) AM_READ(daitorid_soundstatus_r) // Inputs
AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1") //
AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") //
AM_RANGE(0xc00006, 0xc00007) AM_READ_PORT("IN2") //
AM_RANGE(0xc00000, 0xc00001) AM_READ_PORT("IN0")
AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1")
AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0")
AM_RANGE(0xc00006, 0xc00007) AM_READ_PORT("IN2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( daitorid_writemem, ADDRESS_SPACE_PROGRAM, 16 )
@ -1129,10 +1129,10 @@ static ADDRESS_MAP_START( dharma_readmem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x874000, 0x874fff) AM_READ(SMH_RAM ) // Sprites
AM_RANGE(0x878000, 0x8787ff) AM_READ(SMH_RAM ) // Tiles Set
AM_RANGE(0x8788a2, 0x8788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause
AM_RANGE(0xc00000, 0xc00001) AM_READ(daitorid_soundstatus_r) // Inputs
AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1") //
AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") //
AM_RANGE(0xc00006, 0xc00007) AM_READ_PORT("IN2") //
AM_RANGE(0xc00000, 0xc00001) AM_READ_PORT("IN0")
AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1")
AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0")
AM_RANGE(0xc00006, 0xc00007) AM_READ_PORT("IN2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( dharma_writemem, ADDRESS_SPACE_PROGRAM, 16 )
@ -1245,9 +1245,9 @@ static ADDRESS_MAP_START( kokushi_readmem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x877000, 0x877fff) AM_READ(karatour_vram_2_r ) // Layer 2 (Part of)
AM_RANGE(0x878000, 0x8787ff) AM_READ(SMH_RAM ) // Tiles Set
AM_RANGE(0x8788a2, 0x8788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause
AM_RANGE(0xc00000, 0xc00001) AM_READ(daitorid_soundstatus_r) // From Sound CPU
AM_RANGE(0xc00000, 0xc00001) AM_READ_PORT("IN0") // From Sound CPU
AM_RANGE(0xc00002, 0xc00003) AM_READ_PORT("IN1") // Inputs
AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0") //
AM_RANGE(0xc00004, 0xc00005) AM_READ_PORT("DSW0")
ADDRESS_MAP_END
static ADDRESS_MAP_START( kokushi_writemem, ADDRESS_SPACE_PROGRAM, 16 )
@ -1742,10 +1742,10 @@ static ADDRESS_MAP_START( poitto_readmem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xc74000, 0xc74fff) AM_READ(SMH_RAM ) // Sprites
AM_RANGE(0xc78000, 0xc787ff) AM_READ(SMH_RAM ) // Tiles Set
AM_RANGE(0xc788a2, 0xc788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause
AM_RANGE(0x800000, 0x800001) AM_READ(daitorid_soundstatus_r) // Inputs
AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN1") //
AM_RANGE(0x800004, 0x800005) AM_READ_PORT("DSW0") //
AM_RANGE(0x800006, 0x800007) AM_READ_PORT("IN2") //
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("IN0")
AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN1")
AM_RANGE(0x800004, 0x800005) AM_READ_PORT("DSW0")
AM_RANGE(0x800006, 0x800007) AM_READ_PORT("IN2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( poitto_writemem, ADDRESS_SPACE_PROGRAM, 16 )
@ -1838,10 +1838,10 @@ static ADDRESS_MAP_START( pururun_readmem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xc74000, 0xc74fff) AM_READ(SMH_RAM ) // Sprites
AM_RANGE(0xc78000, 0xc787ff) AM_READ(SMH_RAM ) // Tiles Set
AM_RANGE(0xc788a2, 0xc788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause
AM_RANGE(0x400000, 0x400001) AM_READ(daitorid_soundstatus_r) // Inputs
AM_RANGE(0x400002, 0x400003) AM_READ_PORT("IN1") //
AM_RANGE(0x400004, 0x400005) AM_READ_PORT("DSW0") //
AM_RANGE(0x400006, 0x400007) AM_READ_PORT("IN2") //
AM_RANGE(0x400000, 0x400001) AM_READ_PORT("IN0")
AM_RANGE(0x400002, 0x400003) AM_READ_PORT("IN1")
AM_RANGE(0x400004, 0x400005) AM_READ_PORT("DSW0")
AM_RANGE(0x400006, 0x400007) AM_READ_PORT("IN2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( pururun_writemem, ADDRESS_SPACE_PROGRAM, 16 )
@ -1884,10 +1884,10 @@ static ADDRESS_MAP_START( toride2g_readmem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0xc74000, 0xc74fff) AM_READ(SMH_RAM ) // Sprites
AM_RANGE(0xc78000, 0xc787ff) AM_READ(SMH_RAM ) // Tiles Set
AM_RANGE(0xc788a2, 0xc788a3) AM_READ(metro_irq_cause_r ) // IRQ Cause
AM_RANGE(0x800000, 0x800001) AM_READ(daitorid_soundstatus_r) // Inputs
AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN1") //
AM_RANGE(0x800004, 0x800005) AM_READ_PORT("DSW0") //
AM_RANGE(0x800006, 0x800007) AM_READ_PORT("IN2") //
AM_RANGE(0x800000, 0x800001) AM_READ_PORT("IN0")
AM_RANGE(0x800002, 0x800003) AM_READ_PORT("IN1")
AM_RANGE(0x800004, 0x800005) AM_READ_PORT("DSW0")
AM_RANGE(0x800006, 0x800007) AM_READ_PORT("IN2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( toride2g_writemem, ADDRESS_SPACE_PROGRAM, 16 )
@ -2086,11 +2086,6 @@ ADDRESS_MAP_END
Puzzlet
***************************************************************************/
static READ16_HANDLER( puzzlet_dsw_r )
{
return input_port_read(machine, "DSW0");
}
static WRITE16_HANDLER( puzzlet_irq_enable_w )
{
if (ACCESSING_BITS_0_7)
@ -2134,21 +2129,12 @@ static ADDRESS_MAP_START( puzzlet_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE( 0x7f2000, 0x7f3fff ) AM_RAM
AM_RANGE( 0x7f8880, 0x7f8881 ) AM_READ_PORT("IN1")
AM_RANGE( 0x7f8884, 0x7f8885 ) AM_READ( puzzlet_dsw_r )
AM_RANGE( 0x7f8886, 0x7f8887 ) AM_READ( puzzlet_dsw_r )
AM_RANGE( 0x7f8884, 0x7f8885 ) AM_READ_PORT("DSW0")
AM_RANGE( 0x7f8886, 0x7f8887 ) AM_READ_PORT("DSW0")
AM_RANGE( 0x7f88a2, 0x7f88a3 ) AM_READ( metro_irq_cause_r ) // IRQ Cause
ADDRESS_MAP_END
static READ8_HANDLER( puzzlet_port7_r )
{
return input_port_read(machine, "IN2");
}
static READ8_HANDLER( puzzlet_serB_r )
{
return input_port_read(machine, "IN0"); // coin
}
static WRITE8_HANDLER( puzzlet_portb_w )
{
@ -2156,8 +2142,8 @@ static WRITE8_HANDLER( puzzlet_portb_w )
}
static ADDRESS_MAP_START( puzzlet_io_map, ADDRESS_SPACE_IO, 8 )
AM_RANGE( H8_PORT7, H8_PORT7 ) AM_READ( puzzlet_port7_r )
AM_RANGE( H8_SERIAL_B, H8_SERIAL_B ) AM_READ( puzzlet_serB_r )
AM_RANGE( H8_PORT7, H8_PORT7 ) AM_READ_PORT("IN2")
AM_RANGE( H8_SERIAL_B, H8_SERIAL_B ) AM_READ_PORT("IN0") // coin
AM_RANGE( H8_PORTB, H8_PORTB ) AM_READ_PORT("DSW0") AM_WRITE( puzzlet_portb_w )
ADDRESS_MAP_END
@ -2201,7 +2187,17 @@ ADDRESS_MAP_END
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) \
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) \
PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_SPECIAL ) /* From Sound CPU in some games */
PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_UNKNOWN )
#define COINS_SOUND \
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_SERVICE1 ) \
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_TILT ) \
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_COIN1 ) PORT_IMPULSE(2) \
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN2 ) PORT_IMPULSE(2) \
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 ) \
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 ) \
PORT_BIT( 0x0040, IP_ACTIVE_HIGH, IPT_UNKNOWN ) \
PORT_BIT( 0x0080, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(custom_soundstatus_r, NULL) /* From Sound CPU */
#define COINAGE_DSW \
@ -2693,7 +2689,7 @@ INPUT_PORTS_END
*/
static INPUT_PORTS_START( daitorid )
PORT_START("IN0") // $c00000
COINS
COINS_SOUND
PORT_START("IN1") // $c00002
JOY_LSB(1, BUTTON1, UNKNOWN, UNKNOWN, UNKNOWN) // BUTTON2 and BUTTON3 in "test mode" only
@ -2744,7 +2740,7 @@ INPUT_PORTS_END
contains the same values for the timer. */
static INPUT_PORTS_START( dharma )
PORT_START("IN0") //$c00000
COINS
COINS_SOUND
PORT_START("IN1") //$c00002
JOY_LSB(1, BUTTON1, UNKNOWN, UNKNOWN, UNKNOWN) // BUTTON2 and BUTTON3 in "test mode" only
@ -2786,7 +2782,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( gunmast )
PORT_START("IN0") //$400000
COINS
COINS_SOUND
PORT_START("IN1") //$400002
JOY_LSB(1, BUTTON1, BUTTON2, BUTTON3, UNKNOWN)
@ -3302,7 +3298,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( poitto )
PORT_START("IN0") //$800000
COINS
COINS_SOUND
PORT_START("IN1") //$800002
JOY_LSB(1, BUTTON1, UNKNOWN, UNKNOWN, UNKNOWN) // BUTTON2 and BUTTON3 in "test mode" only
@ -3346,14 +3342,14 @@ INPUT_PORTS_END
static INPUT_PORTS_START( puzzlet )
PORT_START("IN0") // IN0 - ser B
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1") // IN1 - 7f8880.w
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_UNKNOWN )
@ -3411,7 +3407,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( puzzli )
PORT_START("IN0") //$c00000
COINS
COINS_SOUND
PORT_START("IN1") //$c00002
JOY_LSB(1, BUTTON1, BUTTON2, UNKNOWN, UNKNOWN) // BUTTON3 in "test mode" only
@ -3455,7 +3451,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( 3kokushi )
PORT_START("IN0") //$c00000
COINS
COINS_SOUND
PORT_START("IN1") //$c00002
JOY_LSB(1, BUTTON1, BUTTON2, UNKNOWN, UNKNOWN)
@ -3517,7 +3513,7 @@ INPUT_PORTS_END
static INPUT_PORTS_START( pururun )
PORT_START("IN0") //$400000
COINS
COINS_SOUND
PORT_START("IN1") //$400002
JOY_LSB(1, BUTTON1, BUTTON2, UNKNOWN, UNKNOWN) // BUTTON3 in "test mode" only
@ -3625,7 +3621,7 @@ INPUT_PORTS_END
than another. */
static INPUT_PORTS_START( toride2g )
PORT_START("IN0") //$800000
COINS
COINS_SOUND
PORT_START("IN1") //$800002
JOY_LSB(1, BUTTON1, UNKNOWN, UNKNOWN, UNKNOWN) // BUTTON2 and BUTTON3 in "test mode" only

View File

@ -178,11 +178,6 @@ static VIDEO_UPDATE( livequiz )
return 0;
}
static READ16_HANDLER( livequiz_eeprom_r )
{
return input_port_read(machine, "IN2") | (eeprom_read_bit() << 3);
}
static WRITE16_HANDLER( livequiz_eeprom_w )
{
if (ACCESSING_BITS_0_7)
@ -226,7 +221,7 @@ static ADDRESS_MAP_START( mem_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x000000, 0x1fffff) AM_ROM
AM_RANGE(0x900000, 0x900001) AM_READ_PORT("IN5")
AM_RANGE(0x920000, 0x920001) AM_READ( livequiz_eeprom_r )
AM_RANGE(0x920000, 0x920001) AM_READ_PORT("IN2")
AM_RANGE(0x940000, 0x940001) AM_READ_PORT("IN0")
AM_RANGE(0x980000, 0x980001) AM_READ_PORT("IN1")
@ -335,7 +330,7 @@ static INPUT_PORTS_START( livequiz )
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_SPECIAL ) // EEPROM
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(eeprom_bit_r, NULL) // EEPROM
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_SERVICE_NO_TOGGLE( 0x0040, IP_ACTIVE_LOW )

View File

@ -71,12 +71,12 @@ static ADDRESS_MAP_START( mikie_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x2100, 0x2100) AM_WRITE(watchdog_reset_w)
AM_RANGE(0x2200, 0x2200) AM_WRITE(mikie_palettebank_w)
AM_RANGE(0x2300, 0x2300) AM_WRITENOP // ???
AM_RANGE(0x2400, 0x2400) AM_READWRITE(input_port_0_r, soundlatch_w)
AM_RANGE(0x2401, 0x2401) AM_READ(input_port_1_r)
AM_RANGE(0x2402, 0x2402) AM_READ(input_port_2_r)
AM_RANGE(0x2403, 0x2403) AM_READ(input_port_3_r)
AM_RANGE(0x2500, 0x2500) AM_READ(input_port_4_r)
AM_RANGE(0x2501, 0x2501) AM_READ(input_port_5_r)
AM_RANGE(0x2400, 0x2400) AM_READ_PORT("SYSTEM") AM_WRITE(soundlatch_w)
AM_RANGE(0x2401, 0x2401) AM_READ_PORT("P1")
AM_RANGE(0x2402, 0x2402) AM_READ_PORT("P2")
AM_RANGE(0x2403, 0x2403) AM_READ_PORT("DSW2")
AM_RANGE(0x2500, 0x2500) AM_READ_PORT("DSW0")
AM_RANGE(0x2501, 0x2501) AM_READ_PORT("DSW1")
AM_RANGE(0x2800, 0x288f) AM_RAM AM_BASE(&spriteram) AM_SIZE(&spriteram_size)
AM_RANGE(0x2890, 0x37ff) AM_RAM
AM_RANGE(0x3800, 0x3bff) AM_RAM_WRITE(mikie_colorram_w) AM_BASE(&colorram)
@ -101,7 +101,7 @@ ADDRESS_MAP_END
/* Input Ports */
static INPUT_PORTS_START( mikie )
PORT_START("IN0")
PORT_START("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
@ -111,21 +111,21 @@ static INPUT_PORTS_START( mikie )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )

View File

@ -50,7 +50,7 @@ static VIDEO_UPDATE( minivadr )
static ADDRESS_MAP_START( minivadr_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x1fff) AM_ROM
AM_RANGE(0xa000, 0xbfff) AM_RAM AM_BASE(&videoram) AM_SIZE(&videoram_size)
AM_RANGE(0xe008, 0xe008) AM_READWRITE(input_port_0_r, SMH_NOP) // W - ???
AM_RANGE(0xe008, 0xe008) AM_READ_PORT("INPUTS") AM_WRITENOP // W - ???
ADDRESS_MAP_END

View File

@ -156,10 +156,10 @@ static ADDRESS_MAP_START( master_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xfd00, 0xfdff) AM_RAM // ???
AM_RANGE(0xfe00, 0xfe03) AM_RAM // ???
AM_RANGE(0xfe80, 0xfe83) AM_RAM // ???
AM_RANGE(0xff00, 0xff00) AM_READ(input_port_0_r)
AM_RANGE(0xff01, 0xff01) AM_READ(input_port_1_r)
AM_RANGE(0xff02, 0xff02) AM_READ(input_port_2_r)
AM_RANGE(0xff03, 0xff03) AM_READ(input_port_3_r)
AM_RANGE(0xff00, 0xff00) AM_READ_PORT("DSW1")
AM_RANGE(0xff01, 0xff01) AM_READ_PORT("DSW2")
AM_RANGE(0xff02, 0xff02) AM_READ_PORT("P1")
AM_RANGE(0xff03, 0xff03) AM_READ_PORT("P2")
AM_RANGE(0xff94, 0xff94) AM_WRITENOP // ???
AM_RANGE(0xff98, 0xff98) AM_WRITENOP // ???
ADDRESS_MAP_END
@ -193,7 +193,7 @@ ADDRESS_MAP_END
/* Input Ports */
static INPUT_PORTS_START( missb2 )
PORT_START("DSW0")
PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Language ) )
PORT_DIPSETTING( 0x00, DEF_STR( English ) )
PORT_DIPSETTING( 0x01, DEF_STR( Japanese ) )
@ -215,7 +215,7 @@ static INPUT_PORTS_START( missb2 )
PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 1C_2C ) )
PORT_START("DSW1")
PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x02, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x03, DEF_STR( Medium ) )
@ -237,8 +237,8 @@ static INPUT_PORTS_START( missb2 )
PORT_DIPSETTING( 0x80, DEF_STR( High ) )
PORT_DIPSETTING( 0xc0, DEF_STR( Very_High ) )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_COIN1 )
@ -247,8 +247,8 @@ static INPUT_PORTS_START( missb2 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_PLAYER(2)
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_2WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_2WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_TILT ) // ???
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )

View File

@ -806,7 +806,7 @@ static INPUT_PORTS_START( missile )
PORT_BIT( 0x18, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT )
PORT_SERVICE( 0x40, IP_ACTIVE_LOW )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(get_vblank, 0)
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(get_vblank, NULL)
PORT_START("R10") /* IN2 */
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("R10:1,2")
@ -888,7 +888,7 @@ static INPUT_PORTS_START( suprmatk )
PORT_BIT( 0x18, IP_ACTIVE_HIGH, IPT_SPECIAL )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_TILT )
PORT_SERVICE( 0x40, IP_ACTIVE_LOW )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(get_vblank, 0)
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(get_vblank, NULL)
PORT_START("R10") /* IN2 */
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) ) PORT_DIPLOCATION("R10:1,2")

View File

@ -141,18 +141,18 @@ static ADDRESS_MAP_START( mlanding_mem, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x200000, 0x20ffff) AM_RAM AM_BASE(&ml_unk)//AM_SHARE(2)
AM_RANGE(0x280000, 0x2807ff) AM_RAM // is it shared with mecha ? tested around $940
AM_RANGE(0x290000, 0x290001) AM_READ(input_port_1_word_r)
AM_RANGE(0x290002, 0x290003) AM_READ(input_port_0_word_r)
AM_RANGE(0x290000, 0x290001) AM_READ_PORT("IN1")
AM_RANGE(0x290002, 0x290003) AM_READ_PORT("IN0")
AM_RANGE(0x240004, 0x240005) AM_NOP //watchdog ??
AM_RANGE(0x240006, 0x240007) AM_READ(io1_r) // vblank ?
AM_RANGE(0x2a0000, 0x2a0001) AM_WRITE(ml_subreset_w)
AM_RANGE(0x2b0000, 0x2b0001) AM_READ(input_port_4_word_r) //-40 .. 40 analog controls ?
AM_RANGE(0x2b0004, 0x2b0005) AM_READ(input_port_5_word_r) //-40 .. 40 analog controls ?
AM_RANGE(0x2c0000, 0x2c0001) AM_READ(input_port_6_word_r) //-60 .. 60 analog controls ?
AM_RANGE(0x2c0002, 0x2c0003) AM_READ(input_port_2_word_r)
AM_RANGE(0x2b0002, 0x2b0003) AM_READ(input_port_2_word_r)
AM_RANGE(0x2b0000, 0x2b0001) AM_READ_PORT("STICKX") //-40 .. 40 analog controls ?
AM_RANGE(0x2b0004, 0x2b0005) AM_READ_PORT("STICKY") //-40 .. 40 analog controls ?
AM_RANGE(0x2c0000, 0x2c0001) AM_READ_PORT("STICKZ") //-60 .. 60 analog controls ?
AM_RANGE(0x2c0002, 0x2c0003) AM_READ_PORT("IN3")
AM_RANGE(0x2b0002, 0x2b0003) AM_READ_PORT("IN2") // IN2/IN3 could be switched
ADDRESS_MAP_END
@ -311,24 +311,23 @@ static INPUT_PORTS_START( mlanding )
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_START2 )
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_COIN3 )
PORT_DIPNAME( 0x020, 0x020, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x020, DEF_STR( On ) )
PORT_DIPNAME( 0x0020, 0x0020, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0020, DEF_STR( On ) )
PORT_DIPNAME( 0x0040, 0x0040, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0040, DEF_STR( On ) )
PORT_DIPNAME( 0x0080, 0x0080, "test 1" )
PORT_DIPSETTING( 0x0000, DEF_STR( Off ) )
PORT_DIPSETTING( 0x0080, DEF_STR( On ) )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Flip_Screen ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x40, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, "test 1" )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x80, DEF_STR( On ) )
PORT_START("STICX") /* Stick 1 (3) */
PORT_START("STICX") /* Stick 1 (3) */
PORT_BIT( 0xffff, 0x0000, IPT_AD_STICK_X ) PORT_MINMAX(0xffd8,0x28) PORT_SENSITIVITY(30) PORT_KEYDELTA(1) PORT_PLAYER(1)
PORT_START("STICKY") /* Stick 2 (4) */
PORT_START("STICKY") /* Stick 2 (4) */
PORT_BIT( 0xffff, 0x0000, IPT_AD_STICK_Y ) PORT_MINMAX(0xffd8,0x28) PORT_SENSITIVITY(30) PORT_KEYDELTA(1) PORT_PLAYER(1)
PORT_START("STICKZ") /* Stick 3 (5) */
PORT_START("STICKZ") /* Stick 3 (5) */
PORT_BIT( 0xffff, 0x0000, IPT_AD_STICK_Z ) PORT_MINMAX(0xffc4,0x3c) PORT_SENSITIVITY(30) PORT_KEYDELTA(1) PORT_PLAYER(1)
INPUT_PORTS_END
@ -438,4 +437,3 @@ static DRIVER_INIT(mlanding)
}
GAME( 1990, mlanding, 0, mlanding, mlanding, mlanding, ROT0, "Taito Corporation", "Midnight Landing", GAME_NOT_WORKING|GAME_NO_SOUND )

View File

@ -646,13 +646,13 @@ static READ16_HANDLER( io_r )
static const char *inputnames[] = { "IN0", "IN1", "IN2" };
if(offset < 0x8)
return input_port_read(machine, analognames[offset]);
return input_port_read_safe(machine, analognames[offset], 0x00);
if(offset < 0x10)
{
offset -= 0x8;
if(offset < 3)
return input_port_read(machine, inputnames[offset]) | 0xff00;
return input_port_read(machine, inputnames[offset]);
return 0xff;
}
@ -1054,44 +1054,38 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( vf )
PORT_START("AN0") /* Unused analog port 0 */
PORT_START("AN1") /* Unused analog port 1 */
PORT_START("AN2") /* Unused analog port 2 */
PORT_START("AN3") /* Unused analog port 3 */
PORT_START("AN4") /* Unused analog port 4 */
PORT_START("AN5") /* Unused analog port 5 */
PORT_START("AN6") /* Unused analog port 6 */
PORT_START("AN7") /* Unused analog port 7 */
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE(0x0004, IP_ACTIVE_LOW)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END
static INPUT_PORTS_START( vr )
@ -1104,34 +1098,31 @@ static INPUT_PORTS_START( vr )
PORT_START("AN2") /* Brake */
PORT_BIT( 0xff, 0x30, IPT_PEDAL ) PORT_MINMAX(1,0xff) PORT_SENSITIVITY(100) PORT_KEYDELTA(16) PORT_PLAYER(2)
PORT_START("AN3") /* Unused analog port 3 */
PORT_START("AN4") /* Unused analog port 4 */
PORT_START("AN5") /* Unused analog port 5 */
PORT_START("AN6") /* Unused analog port 6 */
PORT_START("AN7") /* Unused analog port 7 */
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE(0x0004, IP_ACTIVE_LOW)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN2")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END
static INPUT_PORTS_START( wingwar )
@ -1144,34 +1135,31 @@ static INPUT_PORTS_START( wingwar )
PORT_START("AN2") /* Throttle */
PORT_BIT( 0xff, 0x01, IPT_PEDAL ) PORT_MINMAX(1,0xff) PORT_SENSITIVITY(100) PORT_KEYDELTA(16)
PORT_START("AN3") /* Unused analog port 3 */
PORT_START("AN4") /* Unused analog port 4 */
PORT_START("AN5") /* Unused analog port 5 */
PORT_START("AN6") /* Unused analog port 6 */
PORT_START("AN7") /* Unused analog port 7 */
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_SERVICE_NO_TOGGLE(0x0004, IP_ACTIVE_LOW)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON4 ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON5 ) PORT_PLAYER(1)
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON6 ) PORT_PLAYER(1)
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON7 ) PORT_PLAYER(1)
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN2")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END
static INPUT_PORTS_START( swa )
@ -1184,36 +1172,34 @@ static INPUT_PORTS_START( swa )
PORT_START("AN2") /* Throttle */
PORT_BIT( 0xff, 228, IPT_PEDAL ) PORT_MINMAX(28,228) PORT_SENSITIVITY(100) PORT_KEYDELTA(16) PORT_REVERSE
PORT_START("AN3") /* Unused analog port 3 */
PORT_START("AN4") /* X */
PORT_BIT( 0xff, 127, IPT_AD_STICK_X ) PORT_MINMAX(27,227) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_REVERSE PORT_PLAYER(2)
PORT_START("AN5") /* Y */
PORT_BIT( 0xff, 127, IPT_AD_STICK_Y ) PORT_MINMAX(27,227) PORT_SENSITIVITY(100) PORT_KEYDELTA(4) PORT_PLAYER(2)
PORT_START("AN6") /* Unused analog port 6 */
PORT_START("AN7") /* Unused analog port 7 */
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE(0x04, IP_ACTIVE_LOW)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE(0x0004, IP_ACTIVE_LOW)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x00c0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0xe0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
PORT_BIT( 0x00e0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN2")
PORT_BIT( 0xff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x00ff, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
INPUT_PORTS_END
#define MODEL1_CPU_BOARD \

View File

@ -1045,8 +1045,6 @@ static MACHINE_RESET(model3_15) { model3_init(machine, 0x15); }
static MACHINE_RESET(model3_20) { model3_init(machine, 0x20); }
static MACHINE_RESET(model3_21) { model3_init(machine, 0x21); }
static UINT32 eeprom_bit = 0;
static UINT64 controls_2;
static UINT64 controls_3;
static UINT8 model3_serial_fifo1;
@ -1065,11 +1063,12 @@ static READ64_HANDLER( model3_ctrl_r )
}
else if (ACCESSING_BITS_24_31)
{
if(model3_controls_bank & 0x1) {
eeprom_bit = eeprom_read_bit() << 5;
return ((input_port_read(machine, "IN1") & ~0x20) | eeprom_bit) << 24;
if(model3_controls_bank & 0x1)
{
return (input_port_read(machine, "IN1")) << 24;
}
else {
else
{
return (input_port_read(machine, "IN0")) << 24;
}
}
@ -1532,26 +1531,27 @@ static ADDRESS_MAP_START( model3_mem, ADDRESS_SPACE_PROGRAM, 64)
AM_RANGE(0xff800000, 0xffffffff) AM_ROM AM_REGION("user1", 0)
ADDRESS_MAP_END
#define MODEL3_SYSTEM_CONTROLS_1 \
PORT_START("IN0") \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 ) \
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 ) \
PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW ) /* Test Button A */ \
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* Service Button A */ \
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 ) \
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 ) \
static INPUT_PORTS_START( common )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_SERVICE_NO_TOGGLE( 0x04, IP_ACTIVE_LOW ) /* Test Button A */
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_SERVICE1 ) /* Service Button A */
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNKNOWN )
#define MODEL3_SYSTEM_CONTROLS_2 \
PORT_START("IN1") \
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button B") PORT_CODE(KEYCODE_8) \
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Test Button B") PORT_CODE(KEYCODE_7) \
PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN1")
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(eeprom_bit_r, NULL)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button B") PORT_CODE(KEYCODE_8)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Test Button B") PORT_CODE(KEYCODE_7)
PORT_BIT( 0x1f, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END
static INPUT_PORTS_START( model3 )
MODEL3_SYSTEM_CONTROLS_1
MODEL3_SYSTEM_CONTROLS_2
PORT_INCLUDE( common )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
@ -1571,8 +1571,7 @@ static INPUT_PORTS_START( model3 )
INPUT_PORTS_END
static INPUT_PORTS_START( lostwsga )
MODEL3_SYSTEM_CONTROLS_1
MODEL3_SYSTEM_CONTROLS_2
PORT_INCLUDE( common )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
@ -1601,8 +1600,7 @@ static INPUT_PORTS_START( lostwsga )
INPUT_PORTS_END
static INPUT_PORTS_START( scud )
MODEL3_SYSTEM_CONTROLS_1
MODEL3_SYSTEM_CONTROLS_2
PORT_INCLUDE( common )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* View Button 1 */
@ -1631,8 +1629,7 @@ static INPUT_PORTS_START( scud )
INPUT_PORTS_END
static INPUT_PORTS_START( bass )
MODEL3_SYSTEM_CONTROLS_1
MODEL3_SYSTEM_CONTROLS_2
PORT_INCLUDE( common )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) /* Cast */
@ -1665,8 +1662,7 @@ static INPUT_PORTS_START( bass )
INPUT_PORTS_END
static INPUT_PORTS_START( harley )
MODEL3_SYSTEM_CONTROLS_1
MODEL3_SYSTEM_CONTROLS_2
PORT_INCLUDE( common )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* View Button 1 */
@ -1695,8 +1691,7 @@ static INPUT_PORTS_START( harley )
INPUT_PORTS_END
static INPUT_PORTS_START( daytona2 )
MODEL3_SYSTEM_CONTROLS_1
MODEL3_SYSTEM_CONTROLS_2
PORT_INCLUDE( common )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* View Button 1 */
@ -1725,8 +1720,7 @@ static INPUT_PORTS_START( daytona2 )
INPUT_PORTS_END
static INPUT_PORTS_START( swtrilgy )
MODEL3_SYSTEM_CONTROLS_1
MODEL3_SYSTEM_CONTROLS_2
PORT_INCLUDE( common )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
@ -1748,8 +1742,7 @@ static INPUT_PORTS_START( swtrilgy )
INPUT_PORTS_END
static INPUT_PORTS_START( eca )
MODEL3_SYSTEM_CONTROLS_1
MODEL3_SYSTEM_CONTROLS_2
PORT_INCLUDE( common )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* View Change */
@ -1785,9 +1778,10 @@ static INPUT_PORTS_START( skichamp )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 ) /* Select 2 */
PORT_START("IN1")
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(eeprom_bit_r, NULL)
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button B") PORT_CODE(KEYCODE_8)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Test Button B") PORT_CODE(KEYCODE_7)
PORT_BIT( 0x3f, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x1f, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("IN2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) /* Pole Right */

View File

@ -89,12 +89,12 @@ static WRITE8_HANDLER( mogura_tileram_w )
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x08, 0x08) AM_READ(input_port_0_r)
AM_RANGE(0x0c, 0x0c) AM_READ(input_port_1_r)
AM_RANGE(0x0d, 0x0d) AM_READ(input_port_2_r)
AM_RANGE(0x0e, 0x0e) AM_READ(input_port_3_r)
AM_RANGE(0x0f, 0x0f) AM_READ(input_port_4_r)
AM_RANGE(0x10, 0x10) AM_READ(input_port_5_r)
AM_RANGE(0x08, 0x08) AM_READ_PORT("SYSTEM")
AM_RANGE(0x0c, 0x0c) AM_READ_PORT("P1")
AM_RANGE(0x0d, 0x0d) AM_READ_PORT("P2")
AM_RANGE(0x0e, 0x0e) AM_READ_PORT("P3")
AM_RANGE(0x0f, 0x0f) AM_READ_PORT("P4")
AM_RANGE(0x10, 0x10) AM_READ_PORT("SERVICE")
ADDRESS_MAP_END
@ -138,7 +138,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( mogura )
PORT_START("IN0")
PORT_START("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN3 )
@ -148,7 +148,7 @@ static INPUT_PORTS_START( mogura )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_SERVICE3 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_SERVICE4 )
PORT_START("IN1")
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
@ -158,7 +158,7 @@ static INPUT_PORTS_START( mogura )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(1)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START1 )
PORT_START("IN2")
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
@ -168,7 +168,7 @@ static INPUT_PORTS_START( mogura )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(2)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START2 )
PORT_START("IN3")
PORT_START("P3")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(3)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(3)
@ -178,7 +178,7 @@ static INPUT_PORTS_START( mogura )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(3)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START3 )
PORT_START("IN4")
PORT_START("P4")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(4)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(4)
@ -188,9 +188,9 @@ static INPUT_PORTS_START( mogura )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(4)
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_START4 )
PORT_START("IN5")
PORT_START("SERVICE")
PORT_SERVICE_NO_TOGGLE( 0x01, IP_ACTIVE_LOW)
PORT_BIT ( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0xfe, IP_ACTIVE_LOW, IPT_UNUSED )
INPUT_PORTS_END

View File

@ -115,15 +115,15 @@ static ADDRESS_MAP_START( mole_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x8c40, 0x8c40) AM_WRITENOP // ???
AM_RANGE(0x8c80, 0x8c80) AM_WRITENOP // ???
AM_RANGE(0x8c81, 0x8c81) AM_WRITENOP // ???
AM_RANGE(0x8d00, 0x8d00) AM_READWRITE(input_port_0_r, watchdog_reset_w)
AM_RANGE(0x8d40, 0x8d40) AM_READ(input_port_1_r)
AM_RANGE(0x8d80, 0x8d80) AM_READ(input_port_2_r)
AM_RANGE(0x8dc0, 0x8dc0) AM_READWRITE(input_port_3_r, mole_flipscreen_w)
AM_RANGE(0x8d00, 0x8d00) AM_READ_PORT("DSW") AM_WRITE(watchdog_reset_w)
AM_RANGE(0x8d40, 0x8d40) AM_READ_PORT("IN0")
AM_RANGE(0x8d80, 0x8d80) AM_READ_PORT("IN1")
AM_RANGE(0x8dc0, 0x8dc0) AM_READ_PORT("IN2") AM_WRITE(mole_flipscreen_w)
ADDRESS_MAP_END
static INPUT_PORTS_START( mole )
PORT_START("DSW") // 0x8d00
PORT_START("DSW") /* 0x8d00 */
PORT_DIPNAME( 0x01, 0x00, "Round Points" )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
@ -142,7 +142,7 @@ static INPUT_PORTS_START( mole )
PORT_DIPSETTING( 0x30, "D" )
PORT_BIT( 0xc0, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN0") // 0x8d40
PORT_START("IN0") /* 0x8d40 */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON2 )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON3 )
@ -152,7 +152,7 @@ static INPUT_PORTS_START( mole )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_BUTTON7 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_BUTTON8 )
PORT_START("IN1") // 0x8d80
PORT_START("IN1") /* 0x8d80 */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON9 )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_COCKTAIL
@ -164,7 +164,7 @@ static INPUT_PORTS_START( mole )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START1 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_COIN1 )
PORT_START("IN2") // 0x8dc0
PORT_START("IN2") /* 0x8dc0 */
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_BUTTON8 ) PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_BUTTON7 ) PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_COCKTAIL

View File

@ -132,8 +132,8 @@ static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x70, 0x70) AM_READ(ym2203_status_port_0_r)
AM_RANGE(0x71, 0x71) AM_READ(ym2203_read_port_0_r)
AM_RANGE(0x72, 0x72) AM_READ(protection_r)
AM_RANGE(0x74, 0x74) AM_READ(input_port_0_r)
AM_RANGE(0x76, 0x76) AM_READ(input_port_1_r)
AM_RANGE(0x74, 0x74) AM_READ_PORT("P1")
AM_RANGE(0x76, 0x76) AM_READ_PORT("P2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writeport, ADDRESS_SPACE_IO, 8 )
@ -150,8 +150,8 @@ static ADDRESS_MAP_START( gfire2_readport, ADDRESS_SPACE_IO, 8 )
AM_RANGE(0x70, 0x70) AM_READ(ym2203_status_port_0_r)
AM_RANGE(0x71, 0x71) AM_READ(ym2203_read_port_0_r)
AM_RANGE(0x72, 0x72) AM_READ(gfire2_protection_r)
AM_RANGE(0x74, 0x74) AM_READ(input_port_0_r)
AM_RANGE(0x76, 0x76) AM_READ(input_port_1_r)
AM_RANGE(0x74, 0x74) AM_READ_PORT("P1")
AM_RANGE(0x76, 0x76) AM_READ_PORT("P2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( gfire2_writeport, ADDRESS_SPACE_IO, 8 )
@ -165,7 +165,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( mosaic )
PORT_START("P1") /* IN0 */
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
@ -175,7 +175,7 @@ static INPUT_PORTS_START( mosaic )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_START("P2") /* IN1 */
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -185,7 +185,7 @@ static INPUT_PORTS_START( mosaic )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START("DSW") /* DSW1 */
PORT_START("DSW")
PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_DIPNAME( 0x40, 0x00, "Bombs" )
PORT_DIPSETTING( 0x00, "3" )
@ -210,7 +210,7 @@ static INPUT_PORTS_START( mosaic )
INPUT_PORTS_END
static INPUT_PORTS_START( gfire2 )
PORT_START("P1") /* IN0 */
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY
@ -220,7 +220,7 @@ static INPUT_PORTS_START( gfire2 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_START("P2") /* IN1 */
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2)
@ -230,7 +230,7 @@ static INPUT_PORTS_START( gfire2 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("DSW") /* DSW1 */
PORT_START("DSW")
PORT_DIPNAME( 0x80, 0x00, DEF_STR( Language ) )
PORT_DIPSETTING( 0x00, DEF_STR( English ) )
PORT_DIPSETTING( 0x80, "Korean" )
@ -246,7 +246,7 @@ static INPUT_PORTS_START( gfire2 )
PORT_DIPSETTING( 0x0c, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x08, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x04, DEF_STR( Hard ) )
// PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
// PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
PORT_DIPNAME( 0x02, 0x02, "Bonus Time" )
PORT_DIPSETTING( 0x00, "*2 +30" )
PORT_DIPSETTING( 0x02, "*2 +50" )

View File

@ -58,10 +58,10 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x5fff) AM_READ(SMH_ROM)
AM_RANGE(0x6000, 0x6bff) AM_READ(SMH_RAM)
AM_RANGE(0x9000, 0x93ff) AM_READ(SMH_RAM)
AM_RANGE(0xa000, 0xa000) AM_READ(input_port_0_r)
AM_RANGE(0xa800, 0xa800) AM_READ(input_port_1_r)
AM_RANGE(0xb000, 0xb000) AM_READ(input_port_2_r)
AM_RANGE(0xb800, 0xb800) AM_READ(input_port_3_r)
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("P1")
AM_RANGE(0xa800, 0xa800) AM_READ_PORT("SYSTEM")
AM_RANGE(0xb000, 0xb000) AM_READ_PORT("DSW")
AM_RANGE(0xb800, 0xb800) AM_READ_PORT("P2")
ADDRESS_MAP_END
@ -105,61 +105,61 @@ static ADDRESS_MAP_START( writeport2, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_END
static INPUT_PORTS_START( mouser )
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_START("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Difficulty ) ) /* guess ! - check code at 0x29a1 */
PORT_DIPSETTING( 0x00, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("SYSTEM")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Difficulty ) ) /* guess ! - check code at 0x29a1 */
PORT_DIPSETTING( 0x00, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x20, DEF_STR( Hard ) )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 )
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY
PORT_START("DSW")
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x01, "4" )
PORT_DIPSETTING( 0x02, "5" )
PORT_DIPSETTING( 0x03, "6" )
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "20000" )
PORT_DIPSETTING( 0x04, "40000" )
PORT_DIPSETTING( 0x08, "60000" )
PORT_DIPSETTING( 0x0c, "80000" )
PORT_DIPNAME( 0x70, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x70, DEF_STR( 5C_1C ) )
PORT_DIPSETTING( 0x50, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x30, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x20, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x60, DEF_STR( 1C_4C ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x80, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x10, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_COCKTAIL
PORT_START("DSW")
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x01, "4" )
PORT_DIPSETTING( 0x02, "5" )
PORT_DIPSETTING( 0x03, "6" )
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Bonus_Life ) )
PORT_DIPSETTING( 0x00, "20000" )
PORT_DIPSETTING( 0x04, "40000" )
PORT_DIPSETTING( 0x08, "60000" )
PORT_DIPSETTING( 0x0c, "80000" )
PORT_DIPNAME( 0x70, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x70, DEF_STR( 5C_1C ) )
PORT_DIPSETTING( 0x50, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x30, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x20, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x40, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x60, DEF_STR( 1C_4C ) )
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x80, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
INPUT_PORTS_END

View File

@ -43,10 +43,10 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x7fff) AM_READ(SMH_ROM)
AM_RANGE(0x8000, 0x8fff) AM_READ(SMH_RAM) /* video and color RAM */
AM_RANGE(0x9803, 0x9803) AM_READ(mrdo_SECRE_r)
AM_RANGE(0xa000, 0xa000) AM_READ(input_port_0_r) /* IN0 */
AM_RANGE(0xa001, 0xa001) AM_READ(input_port_1_r) /* IN1 */
AM_RANGE(0xa002, 0xa002) AM_READ(input_port_2_r) /* DSW1 */
AM_RANGE(0xa003, 0xa003) AM_READ(input_port_3_r) /* DSW2 */
AM_RANGE(0xa000, 0xa000) AM_READ_PORT("P1")
AM_RANGE(0xa001, 0xa001) AM_READ_PORT("P2")
AM_RANGE(0xa002, 0xa002) AM_READ_PORT("DSW1")
AM_RANGE(0xa003, 0xa003) AM_READ_PORT("DSW2")
AM_RANGE(0xe000, 0xefff) AM_READ(SMH_RAM)
ADDRESS_MAP_END
@ -65,7 +65,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( mrdo )
PORT_START("IN0")
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY
@ -75,7 +75,7 @@ static INPUT_PORTS_START( mrdo )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_TILT )
PORT_START("IN1")
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_4WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_COCKTAIL
@ -85,32 +85,32 @@ static INPUT_PORTS_START( mrdo )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_START("DSW0")
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:8,7")
PORT_START("DSW1")
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW1:8,7")
PORT_DIPSETTING( 0x03, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x02, DEF_STR( Medium ) )
PORT_DIPSETTING( 0x01, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
PORT_DIPNAME( 0x04, 0x04, "Rack Test (Cheat)") PORT_CODE(KEYCODE_F1) PORT_DIPLOCATION("SW1:6")
PORT_DIPNAME( 0x04, 0x04, "Rack Test (Cheat)") PORT_CODE(KEYCODE_F1) PORT_DIPLOCATION("SW1:6")
PORT_DIPSETTING( 0x04, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x08, 0x08, "Special" ) PORT_DIPLOCATION("SW1:5")
PORT_DIPNAME( 0x08, 0x08, "Special" ) PORT_DIPLOCATION("SW1:5")
PORT_DIPSETTING( 0x08, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
PORT_DIPNAME( 0x10, 0x10, "Extra" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPNAME( 0x10, 0x10, "Extra" ) PORT_DIPLOCATION("SW1:4")
PORT_DIPSETTING( 0x10, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hard ) )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:3")
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Cabinet ) ) PORT_DIPLOCATION("SW1:3")
PORT_DIPSETTING( 0x00, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x20, DEF_STR( Cocktail ) )
PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:2,1")
PORT_DIPNAME( 0xc0, 0xc0, DEF_STR( Lives ) ) PORT_DIPLOCATION("SW1:2,1")
PORT_DIPSETTING( 0x00, "2" )
PORT_DIPSETTING( 0xc0, "3" )
PORT_DIPSETTING( 0x80, "4" )
PORT_DIPSETTING( 0x40, "5" )
PORT_START("DSW1")
PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW2:8,7,6,5")
PORT_START("DSW2")
PORT_DIPNAME( 0x0f, 0x0f, DEF_STR( Coin_B ) ) PORT_DIPLOCATION("SW2:8,7,6,5")
PORT_DIPSETTING( 0x06, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0x0a, DEF_STR( 2C_1C ) )
@ -123,7 +123,7 @@ static INPUT_PORTS_START( mrdo )
PORT_DIPSETTING( 0x0b, DEF_STR( 1C_5C ) )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
/* settings 0x01 thru 0x05 all give 1 Coin/1 Credit */
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW2:4,3,2,1")
PORT_DIPNAME( 0xf0, 0xf0, DEF_STR( Coin_A ) ) PORT_DIPLOCATION("SW2:4,3,2,1")
PORT_DIPSETTING( 0x60, DEF_STR( 4C_1C ) )
PORT_DIPSETTING( 0x80, DEF_STR( 3C_1C ) )
PORT_DIPSETTING( 0xa0, DEF_STR( 2C_1C ) )

View File

@ -85,9 +85,9 @@ static READ8_HANDLER( io_0x03_r )
static ADDRESS_MAP_START( readport, ADDRESS_SPACE_IO, 8 )
ADDRESS_MAP_GLOBAL_MASK(0xff)
AM_RANGE(0x00, 0x00) AM_READ(input_port_0_r) // Input 1
AM_RANGE(0x01, 0x01) AM_READ(input_port_1_r) // Input 2
AM_RANGE(0x02, 0x02) AM_READ(input_port_2_r) // DipSw 1
AM_RANGE(0x00, 0x00) AM_READ_PORT("P2")
AM_RANGE(0x01, 0x01) AM_READ_PORT("P1")
AM_RANGE(0x02, 0x02) AM_READ_PORT("DSW")
AM_RANGE(0x03, 0x03) AM_READ(io_0x03_r) // Unknown
ADDRESS_MAP_END
@ -100,7 +100,7 @@ ADDRESS_MAP_END
static INPUT_PORTS_START( mrjong )
PORT_START("P2") /* IN0 */
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(2)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(2)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(2)
@ -110,7 +110,7 @@ static INPUT_PORTS_START( mrjong )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_START2 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) // ????
PORT_START("P1") /* IN1 */
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_4WAY PORT_PLAYER(1)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_4WAY PORT_PLAYER(1)
PORT_BIT( 0x04, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_4WAY PORT_PLAYER(1)
@ -120,7 +120,7 @@ static INPUT_PORTS_START( mrjong )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_COIN2 )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START("DSW") /* DSW1 */
PORT_START("DSW")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x01, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
@ -131,8 +131,8 @@ static INPUT_PORTS_START( mrjong )
PORT_DIPSETTING( 0x00, "30k")
PORT_DIPSETTING( 0x04, "50k")
PORT_DIPNAME( 0x08, 0x00, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x00, DEF_STR( Normal ))
PORT_DIPSETTING( 0x08, DEF_STR( Hard ))
PORT_DIPSETTING( 0x00, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x08, DEF_STR( Hard ) )
PORT_DIPNAME( 0x30, 0x00, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x00, "3")
PORT_DIPSETTING( 0x10, "4")

File diff suppressed because it is too large Load Diff

View File

@ -77,11 +77,11 @@ static ADDRESS_MAP_START( readmem, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xb000, 0xb3ff) AM_READ(SMH_RAM)
AM_RANGE(0xb400, 0xb7ff) AM_READ(mnchmobl_sprite_attr_r) /* mirrored */
AM_RANGE(0xb800, 0xb8ff) AM_MIRROR(0x0100) AM_READ(SMH_RAM)
AM_RANGE(0xbe02, 0xbe02) AM_READ(input_port_3_r) /* DSW1 */
AM_RANGE(0xbe03, 0xbe03) AM_READ(input_port_4_r) /* DSW2 */
AM_RANGE(0xbf01, 0xbf01) AM_READ(input_port_0_r) /* coin, start */
AM_RANGE(0xbf02, 0xbf02) AM_READ(input_port_1_r) /* P1 controls */
AM_RANGE(0xbf03, 0xbf03) AM_READ(input_port_2_r) /* P2 controls */
AM_RANGE(0xbe02, 0xbe02) AM_READ_PORT("DSW1")
AM_RANGE(0xbe03, 0xbe03) AM_READ_PORT("DSW2")
AM_RANGE(0xbf01, 0xbf01) AM_READ_PORT("SYSTEM")
AM_RANGE(0xbf02, 0xbf02) AM_READ_PORT("P1")
AM_RANGE(0xbf03, 0xbf03) AM_READ_PORT("P2")
ADDRESS_MAP_END
static ADDRESS_MAP_START( writemem, ADDRESS_SPACE_PROGRAM, 8 )
@ -135,7 +135,7 @@ static INPUT_PORTS_START( mnchmobl )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("P1") /* P1 controls */
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_8WAY
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_8WAY
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_8WAY
@ -144,7 +144,7 @@ static INPUT_PORTS_START( mnchmobl )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_2WAY
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("P2") /* P2 controls */
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICKLEFT_LEFT ) PORT_8WAY PORT_COCKTAIL
@ -153,7 +153,7 @@ static INPUT_PORTS_START( mnchmobl )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICKRIGHT_RIGHT ) PORT_2WAY PORT_COCKTAIL
PORT_BIT( 0xc0, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("DSW1") /* DSW1 0xbe02 */
PORT_START("DSW1")
PORT_DIPNAME( 0x01, 0x00, DEF_STR( Unknown ) )
PORT_DIPSETTING( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING( 0x01, DEF_STR( On ) )
@ -184,7 +184,7 @@ static INPUT_PORTS_START( mnchmobl )
PORT_DIPSETTING( 0xc0, "20000" )
PORT_DIPSETTING( 0xe0, "10000" )
PORT_START("DSW2") /* DSW2 0xbe03 */
PORT_START("DSW2")
PORT_DIPNAME( 0x03, 0x00, "Second Bonus Life" )
PORT_DIPSETTING( 0x00, "No Bonus?" )
PORT_DIPSETTING( 0x01, "100000?" )

View File

@ -104,8 +104,8 @@ static ADDRESS_MAP_START( murogem_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x007f) AM_RAM
AM_RANGE(0x4000, 0x4000) AM_DEVWRITE(MC6845, "crtc", mc6845_address_w)
AM_RANGE(0x4001, 0x4001) AM_DEVWRITE(MC6845, "crtc", mc6845_register_w)
AM_RANGE(0x5000, 0x5000) AM_READ(input_port_0_r)
AM_RANGE(0x5800, 0x5800) AM_READ(input_port_1_r)
AM_RANGE(0x5000, 0x5000) AM_READ_PORT("IN0")
AM_RANGE(0x5800, 0x5800) AM_READ_PORT("IN1")
AM_RANGE(0x7000, 0x7000) AM_WRITE(SMH_NOP) // sound? payout?
AM_RANGE(0x8000, 0x87ff) AM_RAM AM_BASE(&murogem_videoram)
AM_RANGE(0xf000, 0xffff) AM_ROM

View File

@ -68,11 +68,11 @@ static ADDRESS_MAP_START( memmap, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0xd002, 0xd002) AM_WRITE(t5182_sharedram_semaphore_main_acquire_w)
AM_RANGE(0xd003, 0xd003) AM_WRITE(t5182_sharedram_semaphore_main_release_w)
AM_RANGE(0xd400, 0xd4ff) AM_READWRITE(t5182shared_r, t5182shared_w)
AM_RANGE(0xd800, 0xd800) AM_READ(input_port_0_r) /* IN 0 */
AM_RANGE(0xd801, 0xd801) AM_READ(input_port_1_r) /* IN 1 */
AM_RANGE(0xd802, 0xd802) AM_READ(input_port_2_r) /* IN 2 */
AM_RANGE(0xd803, 0xd803) AM_READ(input_port_3_r) /* DSW A */
AM_RANGE(0xd804, 0xd804) AM_READ(input_port_4_r) /* DSW B */
AM_RANGE(0xd800, 0xd800) AM_READ_PORT("P1")
AM_RANGE(0xd801, 0xd801) AM_READ_PORT("P2")
AM_RANGE(0xd802, 0xd802) AM_READ_PORT("START")
AM_RANGE(0xd803, 0xd803) AM_READ_PORT("DSWA")
AM_RANGE(0xd804, 0xd804) AM_READ_PORT("DSWB")
AM_RANGE(0xd806, 0xd806) AM_WRITE(mustache_scroll_w)
AM_RANGE(0xd807, 0xd807) AM_WRITE(mustache_video_control_w)
AM_RANGE(0xe800, 0xefff) AM_WRITE(SMH_RAM) AM_BASE(&spriteram) AM_SIZE(&spriteram_size)
@ -82,7 +82,7 @@ ADDRESS_MAP_END
/******************************************************************************/
static INPUT_PORTS_START( mustache )
PORT_START("P1") /* IN 1 */
PORT_START("P1")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT )
@ -90,7 +90,7 @@ static INPUT_PORTS_START( mustache )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
PORT_START("P2") /* IN 2 */
PORT_START("P2")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_COCKTAIL
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_COCKTAIL
@ -98,33 +98,30 @@ static INPUT_PORTS_START( mustache )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_COCKTAIL
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_COCKTAIL
PORT_START("START") /* IN 3 */
PORT_START("START")
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0xf9, IP_ACTIVE_LOW, IPT_UNUSED )
PORT_START("DSW1") /* DSW A */
PORT_START("DSWA")
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Cabinet ) )
PORT_DIPSETTING( 0x01, DEF_STR( Upright ) )
PORT_DIPSETTING( 0x00, DEF_STR( Cocktail ) )
PORT_DIPNAME( 0x06, 0x04, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x06, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x04, DEF_STR( Normal ) )
PORT_DIPSETTING( 0x02, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x00, DEF_STR( Hardest ) )
PORT_DIPNAME( 0x18, 0x18, DEF_STR( Lives ) )
PORT_DIPSETTING( 0x08, "4" )
PORT_DIPSETTING( 0x10, "1" )
PORT_DIPSETTING( 0x18, "3" )
PORT_DIPSETTING( 0x08, "4" )
PORT_DIPSETTING( 0x00, "5" )
PORT_DIPNAME( 0x20, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW2") /* DSW B */
PORT_START("DSWB")
PORT_DIPNAME( 0x07, 0x07, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x00, DEF_STR( 5C_1C ) )
PORT_DIPSETTING( 0x04, DEF_STR( 4C_1C ) )
@ -134,13 +131,11 @@ static INPUT_PORTS_START( mustache )
PORT_DIPSETTING( 0x03, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x05, DEF_STR( 1C_3C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 1C_5C ) )
PORT_DIPNAME( 0x18, 0x18, DEF_STR( Coin_B ) )
PORT_DIPSETTING( 0x10, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x18, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 2C_3C ) )
PORT_DIPSETTING( 0x08, DEF_STR( 1C_2C ) )
PORT_SERVICE( 0x20, IP_ACTIVE_LOW )
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Free_Play ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
@ -149,7 +144,6 @@ static INPUT_PORTS_START( mustache )
PORT_START(T5182COINPORT)
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_COIN1 ) PORT_IMPULSE(2)
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_COIN2 ) PORT_IMPULSE(2)
INPUT_PORTS_END

File diff suppressed because it is too large Load Diff

View File

@ -140,9 +140,9 @@ static ADDRESS_MAP_START( mwarr_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x103c00, 0x103fff) AM_RAM AM_BASE(&vidattrram)
AM_RANGE(0x104000, 0x104fff) AM_RAM_WRITE(paletteram16_xBBBBBGGGGGRRRRR_word_w) AM_BASE(&paletteram16)
AM_RANGE(0x108000, 0x108fff) AM_RAM AM_BASE(&spriteram16)
AM_RANGE(0x110000, 0x110001) AM_READ(input_port_0_word_r)
AM_RANGE(0x110002, 0x110003) AM_READ(input_port_1_word_r)
AM_RANGE(0x110004, 0x110005) AM_READ(input_port_2_word_r)
AM_RANGE(0x110000, 0x110001) AM_READ_PORT("P1_P2")
AM_RANGE(0x110002, 0x110003) AM_READ_PORT("SYSTEM")
AM_RANGE(0x110004, 0x110005) AM_READ_PORT("DSW")
AM_RANGE(0x110010, 0x110011) AM_WRITE(oki1_bank_w)
AM_RANGE(0x110014, 0x110015) AM_WRITE(mwarr_brightness_w)
AM_RANGE(0x110016, 0x110017) AM_WRITE(sprites_commands_w)

View File

@ -58,12 +58,6 @@
*
*************************************/
static READ16_HANDLER( switches_r )
{
return (input_port_read(machine, "IN0") | (avgdvg_done() ? 1 : 0));
}
static READ16_HANDLER( trackball_r )
{
return (input_port_read(machine, "TRACKY") << 4) | input_port_read(machine, "TRACKX");
@ -148,7 +142,7 @@ static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 16 )
AM_RANGE(0x840000, 0x84003f) AM_READWRITE(pokey_word_r, pokey_word_w)
AM_RANGE(0x900000, 0x9001ff) AM_RAM AM_BASE(&generic_nvram16) AM_SIZE(&generic_nvram_size)
AM_RANGE(0x940000, 0x940001) AM_READ(trackball_r) /* trackball */
AM_RANGE(0x948000, 0x948001) AM_READ(switches_r)
AM_RANGE(0x948000, 0x948001) AM_READ_PORT("SYSTEM")
AM_RANGE(0x950000, 0x95001f) AM_WRITE(SMH_RAM) AM_BASE(&quantum_colorram)
AM_RANGE(0x958000, 0x958001) AM_WRITE(led_w)
AM_RANGE(0x960000, 0x960001) AM_WRITE(SMH_NOP)
@ -165,19 +159,20 @@ ADDRESS_MAP_END
*************************************/
static INPUT_PORTS_START( quantum )
PORT_START("IN0") /* IN0 */
PORT_START("SYSTEM")
/* YHALT here MUST BE ALWAYS 0 */
PORT_BIT( 0x01, IP_ACTIVE_HIGH,IPT_SPECIAL ) /* vg YHALT */
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_SERVICE( 0x80, IP_ACTIVE_LOW )
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL) /* vg YHALT */
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_SERVICE( 0x0080, IP_ACTIVE_LOW )
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
/* first POKEY is SW2, second is SW1 -- more confusion! */
PORT_START("DSW0") /* DSW0 */
/* first POKEY is SW2, second is SW1 -- more confusion! */
PORT_START("DSW0")
PORT_DIPNAME( 0xc0, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x80, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
@ -198,13 +193,13 @@ static INPUT_PORTS_START( quantum )
PORT_DIPSETTING( 0x05, "1 each 3" )
PORT_DIPSETTING( 0x06, "2 each 4" )
PORT_START("DSW1") /* DSW1 */
PORT_START("DSW1")
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_START("TRACKX") /* IN2 */
PORT_START("TRACKX")
PORT_BIT( 0x0f, 0, IPT_TRACKBALL_Y ) PORT_SENSITIVITY(10) PORT_KEYDELTA(10) PORT_REVERSE
PORT_START("TRACKY") /* IN3 */
PORT_START("TRACKY")
PORT_BIT( 0x0f, 0, IPT_TRACKBALL_X ) PORT_SENSITIVITY(10) PORT_KEYDELTA(10)
INPUT_PORTS_END

View File

@ -158,10 +158,10 @@ static OPBASE_HANDLER( esb_setopbase )
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x2fff) AM_RAM AM_BASE(&vectorram) AM_SIZE(&vectorram_size) AM_REGION("main", 0)
AM_RANGE(0x3000, 0x3fff) AM_ROM /* vector_rom */
AM_RANGE(0x4300, 0x431f) AM_READ_PORT("IN0") /* Memory mapped input port 0 */
AM_RANGE(0x4320, 0x433f) AM_READ(starwars_input_1_r) /* Memory mapped input port 1 */
AM_RANGE(0x4340, 0x435f) AM_READ_PORT("DSW0") /* DIP switches bank 0 */
AM_RANGE(0x4360, 0x437f) AM_READ_PORT("DSW1") /* DIP switches bank 1 */
AM_RANGE(0x4300, 0x431f) AM_READ_PORT("IN0")
AM_RANGE(0x4320, 0x433f) AM_READ_PORT("IN1")
AM_RANGE(0x4340, 0x435f) AM_READ_PORT("DSW0")
AM_RANGE(0x4360, 0x437f) AM_READ_PORT("DSW1")
AM_RANGE(0x4380, 0x439f) AM_READ(starwars_adc_r) /* a-d control result */
AM_RANGE(0x4400, 0x4400) AM_READWRITE(starwars_main_read_r, starwars_main_wr_w)
AM_RANGE(0x4401, 0x4401) AM_READ(starwars_main_ready_flag_r)
@ -212,156 +212,96 @@ ADDRESS_MAP_END
*************************************/
static INPUT_PORTS_START( starwars )
PORT_START("IN0") /* IN0 */
PORT_BIT ( 0x01, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT ( 0x02, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT ( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_TILT )
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_TILT )
PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT ( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 )
PORT_BIT ( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_BIT( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_START("IN1") /* IN1 */
PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("IN1")
PORT_BIT( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1)
PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT ( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 )
PORT_BIT ( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
/* Bit 6 is MATH_RUN - see machine/starwars.c */
PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED )
/* Bit 7 is VG_HALT - see machine/starwars.c */
PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
/* Bit 6 is VG_HALT */
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL)
/* Bit 7 is MATH_RUN - see machine/starwars.c */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(matrix_flag_r, NULL)
PORT_START("DSW0") /* DSW0 */
PORT_DIPNAME(0x03, 0x00, "Starting Shields" )
PORT_DIPSETTING ( 0x00, "6" )
PORT_DIPSETTING ( 0x01, "7" )
PORT_DIPSETTING ( 0x02, "8" )
PORT_DIPSETTING ( 0x03, "9" )
PORT_DIPNAME(0x0c, 0x00, DEF_STR( Difficulty ) )
PORT_DIPSETTING ( 0x00, DEF_STR( Easy ) )
PORT_DIPSETTING ( 0x04, "Moderate" )
PORT_DIPSETTING ( 0x08, DEF_STR( Hard ) )
PORT_DIPSETTING ( 0x0c, DEF_STR( Hardest ) )
PORT_DIPNAME(0x30, 0x00, "Bonus Shields" )
PORT_DIPSETTING ( 0x00, "0" )
PORT_DIPSETTING ( 0x10, "1" )
PORT_DIPSETTING ( 0x20, "2" )
PORT_DIPSETTING ( 0x30, "3" )
PORT_DIPNAME(0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING ( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING ( 0x00, DEF_STR( On ) )
PORT_DIPNAME(0x80, 0x80, "Freeze" )
PORT_DIPSETTING ( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING ( 0x00, DEF_STR( On ) )
PORT_START("DSW0")
PORT_DIPNAME( 0x03, 0x00, "Starting Shields" )
PORT_DIPSETTING( 0x00, "6" )
PORT_DIPSETTING( 0x01, "7" )
PORT_DIPSETTING( 0x02, "8" )
PORT_DIPSETTING( 0x03, "9" )
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x00, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x04, "Moderate" )
PORT_DIPSETTING( 0x08, DEF_STR( Hard ) )
PORT_DIPSETTING( 0x0c, DEF_STR( Hardest ) )
PORT_DIPNAME( 0x30, 0x00, "Bonus Shields" )
PORT_DIPSETTING( 0x00, "0" )
PORT_DIPSETTING( 0x10, "1" )
PORT_DIPSETTING( 0x20, "2" )
PORT_DIPSETTING( 0x30, "3" )
PORT_DIPNAME( 0x40, 0x00, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_DIPNAME( 0x80, 0x80, "Freeze" )
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
PORT_START("DSW1") /* DSW1 */
PORT_DIPNAME(0x03, 0x02, DEF_STR( Coinage ) )
PORT_DIPSETTING ( 0x03, DEF_STR( 2C_1C ) )
PORT_DIPSETTING ( 0x02, DEF_STR( 1C_1C ) )
PORT_DIPSETTING ( 0x01, DEF_STR( 1C_2C ) )
PORT_DIPSETTING ( 0x00, DEF_STR( Free_Play ) )
PORT_DIPNAME(0x0c, 0x00, DEF_STR( Coin_B ) )
PORT_DIPSETTING ( 0x00, "*1" )
PORT_DIPSETTING ( 0x04, "*4" )
PORT_DIPSETTING ( 0x08, "*5" )
PORT_DIPSETTING ( 0x0c, "*6" )
PORT_DIPNAME(0x10, 0x00, DEF_STR( Coin_A ) )
PORT_DIPSETTING ( 0x00, "*1" )
PORT_DIPSETTING ( 0x10, "*2" )
PORT_DIPNAME(0xe0, 0x00, "Bonus Coinage" )
PORT_DIPSETTING ( 0x20, "2 gives 1" )
PORT_DIPSETTING ( 0x60, "4 gives 2" )
PORT_DIPSETTING ( 0xa0, "3 gives 1" )
PORT_DIPSETTING ( 0x40, "4 gives 1" )
PORT_DIPSETTING ( 0x80, "5 gives 1" )
PORT_DIPSETTING ( 0x00, DEF_STR( None ) )
/* 0xc0 and 0xe0 None */
PORT_START("DSW1")
PORT_DIPNAME( 0x03, 0x02, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x03, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x02, DEF_STR( 1C_1C ) )
PORT_DIPSETTING( 0x01, DEF_STR( 1C_2C ) )
PORT_DIPSETTING( 0x00, DEF_STR( Free_Play ) )
PORT_DIPNAME( 0x0c, 0x00, DEF_STR( Coin_B ) )
PORT_DIPSETTING( 0x00, "*1" )
PORT_DIPSETTING( 0x04, "*4" )
PORT_DIPSETTING( 0x08, "*5" )
PORT_DIPSETTING( 0x0c, "*6" )
PORT_DIPNAME( 0x10, 0x00, DEF_STR( Coin_A ) )
PORT_DIPSETTING( 0x00, "*1" )
PORT_DIPSETTING( 0x10, "*2" )
PORT_DIPNAME( 0xe0, 0x00, "Bonus Coinage" )
PORT_DIPSETTING( 0x20, "2 gives 1" )
PORT_DIPSETTING( 0x60, "4 gives 2" )
PORT_DIPSETTING( 0xa0, "3 gives 1" )
PORT_DIPSETTING( 0x40, "4 gives 1" )
PORT_DIPSETTING( 0x80, "5 gives 1" )
PORT_DIPSETTING( 0x00, DEF_STR( None ) )
/* 0xc0 and 0xe0 None */
PORT_START("STICKY") /* IN4 */
PORT_START("STICKY")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(70) PORT_KEYDELTA(30)
PORT_START("STICKX") /* IN5 */
PORT_START("STICKX")
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(30)
INPUT_PORTS_END
static INPUT_PORTS_START( esb )
PORT_START("IN0") /* IN0 */
PORT_BIT ( 0x01, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT ( 0x02, IP_ACTIVE_LOW, IPT_COIN1 )
PORT_BIT ( 0x04, IP_ACTIVE_LOW, IPT_SERVICE1 )
PORT_BIT ( 0x08, IP_ACTIVE_LOW, IPT_TILT )
PORT_SERVICE( 0x10, IP_ACTIVE_LOW )
PORT_BIT ( 0x20, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT ( 0x40, IP_ACTIVE_LOW, IPT_BUTTON4 )
PORT_BIT ( 0x80, IP_ACTIVE_LOW, IPT_BUTTON1 )
PORT_INCLUDE( starwars )
PORT_START("IN1") /* IN1 */
PORT_BIT ( 0x01, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT ( 0x02, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1)
PORT_BIT ( 0x08, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_BIT ( 0x10, IP_ACTIVE_LOW, IPT_BUTTON3 )
PORT_BIT ( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2 )
/* Bit 6 is MATH_RUN - see machine/starwars.c */
PORT_BIT ( 0x40, IP_ACTIVE_HIGH, IPT_UNUSED )
/* Bit 7 is VG_HALT - see machine/starwars.c */
PORT_BIT ( 0x80, IP_ACTIVE_HIGH, IPT_UNUSED )
PORT_START("DSW0") /* DSW0 */
PORT_DIPNAME(0x03, 0x03, "Starting Shields" )
PORT_DIPSETTING ( 0x01, "2" )
PORT_DIPSETTING ( 0x00, "3" )
PORT_DIPSETTING ( 0x03, "4" )
PORT_DIPSETTING ( 0x02, "5" )
PORT_DIPNAME(0x0c, 0x0c, DEF_STR( Difficulty ) )
PORT_DIPSETTING ( 0x08, DEF_STR( Easy ) )
PORT_DIPSETTING ( 0x0c, "Moderate" )
PORT_DIPSETTING ( 0x00, DEF_STR( Hard ) )
PORT_DIPSETTING ( 0x04, DEF_STR( Hardest ) )
PORT_DIPNAME(0x30, 0x30, "Jedi-Letter Mode" )
PORT_DIPSETTING ( 0x00, "Level Only" )
PORT_DIPSETTING ( 0x10, "Level" )
PORT_DIPSETTING ( 0x20, "Increment Only" )
PORT_DIPSETTING ( 0x30, "Increment" )
PORT_DIPNAME(0x40, 0x40, DEF_STR( Demo_Sounds ) )
PORT_DIPSETTING ( 0x00, DEF_STR( Off ) )
PORT_DIPSETTING ( 0x40, DEF_STR( On ) )
PORT_DIPNAME(0x80, 0x80, "Freeze" )
PORT_DIPSETTING ( 0x80, DEF_STR( Off ) )
PORT_DIPSETTING ( 0x00, DEF_STR( On ) )
PORT_START("DSW1") /* DSW1 */
PORT_DIPNAME(0x03, 0x02, DEF_STR( Coinage ) )
PORT_DIPSETTING ( 0x03, DEF_STR( 2C_1C ) )
PORT_DIPSETTING ( 0x02, DEF_STR( 1C_1C ) )
PORT_DIPSETTING ( 0x01, DEF_STR( 1C_2C ) )
PORT_DIPSETTING ( 0x00, DEF_STR( Free_Play ) )
PORT_DIPNAME(0x0c, 0x00, DEF_STR( Coin_B ) )
PORT_DIPSETTING ( 0x00, "*1" )
PORT_DIPSETTING ( 0x04, "*4" )
PORT_DIPSETTING ( 0x08, "*5" )
PORT_DIPSETTING ( 0x0c, "*6" )
PORT_DIPNAME(0x10, 0x00, DEF_STR( Coin_A ) )
PORT_DIPSETTING ( 0x00, "*1" )
PORT_DIPSETTING ( 0x10, "*2" )
PORT_DIPNAME(0xe0, 0xe0, "Bonus Coinage" )
PORT_DIPSETTING ( 0x20, "2 gives 1" )
PORT_DIPSETTING ( 0x60, "4 gives 2" )
PORT_DIPSETTING ( 0xa0, "3 gives 1" )
PORT_DIPSETTING ( 0x40, "4 gives 1" )
PORT_DIPSETTING ( 0x80, "5 gives 1" )
PORT_DIPSETTING ( 0xe0, DEF_STR( None ) )
/* 0xc0 and 0x00 None */
PORT_START("STICKY") /* IN4 */
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_SENSITIVITY(70) PORT_KEYDELTA(30)
PORT_START("STICKX") /* IN5 */
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_X ) PORT_SENSITIVITY(50) PORT_KEYDELTA(30)
PORT_MODIFY("DSW0")
PORT_DIPNAME( 0x03, 0x03, "Starting Shields" )
PORT_DIPSETTING( 0x01, "2" )
PORT_DIPSETTING( 0x00, "3" )
PORT_DIPSETTING( 0x03, "4" )
PORT_DIPSETTING( 0x02, "5" )
PORT_DIPNAME( 0x30, 0x30, "Jedi-Letter Mode" )
PORT_DIPSETTING( 0x00, "Level Only" )
PORT_DIPSETTING( 0x10, "Level" )
PORT_DIPSETTING( 0x20, "Increment Only" )
PORT_DIPSETTING( 0x30, "Increment" )
INPUT_PORTS_END

View File

@ -315,49 +315,21 @@ static WRITE8_HANDLER( wdclr_w )
static CUSTOM_INPUT( tempest_knob_r )
{
UINT32 ret;
if (tempest_player_select)
{
ret = input_port_read(field->port->machine, TEMPEST_KNOB_P2_TAG);
}
else
{
ret = input_port_read(field->port->machine, TEMPEST_KNOB_P1_TAG);
}
return ret;
return input_port_read(field->port->machine, (tempest_player_select == 0) ?
TEMPEST_KNOB_P1_TAG : TEMPEST_KNOB_P2_TAG);
}
static CUSTOM_INPUT( tempest_buttons_r )
{
UINT32 ret;
if (tempest_player_select)
{
ret = input_port_read(field->port->machine, TEMPEST_BUTTONS_P2_TAG);
}
else
{
ret = input_port_read(field->port->machine, TEMPEST_BUTTONS_P1_TAG);
}
return ret;
return input_port_read(field->port->machine, (tempest_player_select == 0) ?
TEMPEST_BUTTONS_P1_TAG : TEMPEST_BUTTONS_P2_TAG);
}
static READ8_HANDLER( tempest_IN0_r )
static CUSTOM_INPUT( clock_r )
{
int res = input_port_read(machine, "IN0");
if (avgdvg_done())
res |= 0x40;
/* Emulate the 3kHz source on bit 7 (divide 1.5MHz by 512) */
if (activecpu_gettotalcycles() & 0x100)
res |= 0x80;
return res;
return (cpunum_gettotalcycles(0) & 0x100) ? 1 : 0;
}
@ -409,9 +381,9 @@ static WRITE8_HANDLER( tempest_coin_w )
static ADDRESS_MAP_START( main_map, ADDRESS_SPACE_PROGRAM, 8 )
AM_RANGE(0x0000, 0x07ff) AM_RAM
AM_RANGE(0x0800, 0x080f) AM_WRITE(SMH_RAM) AM_BASE(&tempest_colorram)
AM_RANGE(0x0c00, 0x0c00) AM_READ(tempest_IN0_r) /* IN0 */
AM_RANGE(0x0d00, 0x0d00) AM_READ_PORT("DSW1") /* DSW1 */
AM_RANGE(0x0e00, 0x0e00) AM_READ_PORT("DSW2") /* DSW2 */
AM_RANGE(0x0c00, 0x0c00) AM_READ_PORT("IN0")
AM_RANGE(0x0d00, 0x0d00) AM_READ_PORT("DSW1")
AM_RANGE(0x0e00, 0x0e00) AM_READ_PORT("DSW2")
AM_RANGE(0x2000, 0x2fff) AM_RAM AM_BASE(&vectorram) AM_SIZE(&vectorram_size) AM_REGION("main", 0x2000)
AM_RANGE(0x3000, 0x3fff) AM_READ(SMH_ROM)
AM_RANGE(0x4000, 0x4000) AM_WRITE(tempest_coin_w)
@ -439,7 +411,7 @@ ADDRESS_MAP_END
*************************************/
static INPUT_PORTS_START( tempest )
PORT_START("IN0") /* IN0 */
PORT_START("IN0")
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_COIN3 )
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_COIN1 )
@ -448,14 +420,12 @@ static INPUT_PORTS_START( tempest )
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Diagnostic Step") PORT_CODE(KEYCODE_F1)
/* bit 6 is the VG HALT bit. We set it to "low" */
/* per default (busy vector processor). */
/* handled by tempest_IN0_r() */
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x40, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(avgdvg_done_r, NULL)
/* bit 7 is tied to a 3kHz (?) clock */
/* handled by tempest_IN0_r() */
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(clock_r, NULL)
PORT_START("IN1/DSW0") /* IN1/DSW0 */
PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tempest_knob_r, 0)
PORT_START("IN1/DSW0")
PORT_BIT( 0x0f, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tempest_knob_r, NULL)
/* The next one is reponsible for cocktail mode.
* According to the documentation, this is not a switch, although
* it may have been planned to put it on the Math Box PCB, D/E2 )
@ -467,7 +437,7 @@ static INPUT_PORTS_START( tempest )
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("IN2") /* IN2 */
PORT_START("IN2")
PORT_DIPNAME( 0x03, 0x03, DEF_STR( Difficulty ) )
PORT_DIPSETTING( 0x02, DEF_STR( Easy ) )
PORT_DIPSETTING( 0x03, "Medium1" )
@ -476,12 +446,12 @@ static INPUT_PORTS_START( tempest )
PORT_DIPNAME( 0x04, 0x04, "Rating" )
PORT_DIPSETTING( 0x04, "1, 3, 5, 7, 9" )
PORT_DIPSETTING( 0x00, "tied to high score" )
PORT_BIT(0x18, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tempest_buttons_r, 0)
PORT_BIT(0x18, IP_ACTIVE_HIGH, IPT_SPECIAL ) PORT_CUSTOM(tempest_buttons_r, NULL)
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_START1 )
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_START2 )
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_START("DSW1") /* DSW1 - (N13 on analog vector generator PCB */
PORT_START("DSW1") /* N13 on analog vector generator PCB */
PORT_DIPNAME( 0x03, 0x00, DEF_STR( Coinage ) )
PORT_DIPSETTING( 0x01, DEF_STR( 2C_1C ) )
PORT_DIPSETTING( 0x00, DEF_STR( 1C_1C ) )
@ -505,7 +475,7 @@ static INPUT_PORTS_START( tempest )
PORT_DIPSETTING( 0xc0, "Freeze Mode" )
PORT_DIPSETTING( 0xe0, "Freeze Mode" )
PORT_START("DSW2") /* DSW2 - (L12 on analog vector generator PCB */
PORT_START("DSW2") /* L12 on analog vector generator PCB */
PORT_DIPNAME( 0x01, 0x00, "Minimum" )
PORT_DIPSETTING( 0x00, "1 Credit" )
PORT_DIPSETTING( 0x01, "2 Credit" )

View File

@ -22,61 +22,58 @@
***************************************************************************/
/* IN0 - COINS */
#define COINS \
PORT_START("IN0")\
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_START1 )\
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_START2 )\
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_SERVICE1 )\
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_COIN1 )\
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_COIN2 )
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_START1 )\
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_START2 )\
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_SERVICE1 )\
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_COIN1 )\
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_COIN2 )\
PORT_BIT( 0xff00, IP_ACTIVE_LOW, IPT_UNKNOWN )
/* IN1/3 - PLAYER 1/2 */
#define JOY_4BUTTONS(_flag_) \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(_flag_)\
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_BUTTON4) PORT_PLAYER(_flag_)
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(_flag_)\
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_BUTTON4) PORT_PLAYER(_flag_)
#define JOY_3BUTTONS(_flag_) \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(_flag_)\
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN)
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_BUTTON3) PORT_PLAYER(_flag_)\
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN)
#define JOY_2BUTTONS(_flag_) \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN) \
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN)
PORT_BIT( 0x0001, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0002, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0004, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0008, IP_ACTIVE_LOW, IPT_JOYSTICK_UP) PORT_8WAY PORT_PLAYER(_flag_)\
PORT_BIT( 0x0010, IP_ACTIVE_LOW, IPT_BUTTON1) PORT_PLAYER(_flag_)\
PORT_BIT( 0x0020, IP_ACTIVE_LOW, IPT_BUTTON2) PORT_PLAYER(_flag_)\
PORT_BIT( 0x0040, IP_ACTIVE_LOW, IPT_UNKNOWN) \
PORT_BIT( 0x0080, IP_ACTIVE_LOW, IPT_UNKNOWN)
/* IN2 - RESERVE */
#define RESERVE \
PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Reserve 1P */\
PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Reserve 2P */\
PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN )
PORT_BIT( 0x0100, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Reserve 1P */\
PORT_BIT( 0x0200, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x0400, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x0800, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x1000, IP_ACTIVE_LOW, IPT_UNKNOWN ) /* Reserve 2P */\
PORT_BIT( 0x2000, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x4000, IP_ACTIVE_LOW, IPT_UNKNOWN )\
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN )
/* IN4 - Coinage DSWs */
/* Coinage DSWs */
// 1] 01-41 02-31 03-21 07-11 06-12 05-13 04-14 00-FC * 2
// 2] 04-31 02-21 07-11 03-12 05-13 01-14 06-15 00-FC
// 00-41 20-31 10-21 38-11 18-12 28-13 08-14 30-15

View File

@ -20,7 +20,7 @@ extern UINT8 *starwars_ram_overlay;
WRITE8_HANDLER( starwars_nstore_w );
WRITE8_HANDLER( starwars_out_w );
READ8_HANDLER( starwars_input_1_r );
CUSTOM_INPUT( matrix_flag_r );
READ8_HANDLER( starwars_adc_r );
WRITE8_HANDLER( starwars_adc_select_w );

View File

@ -126,23 +126,10 @@ WRITE8_HANDLER( starwars_out_w )
*
*************************************/
READ8_HANDLER( starwars_input_1_r )
CUSTOM_INPUT( matrix_flag_r )
{
int x = input_port_read(machine, "IN1");
/* set the matrix processor flag */
if (math_run)
x |= 0x80;
else
x &= ~0x80;
/* set the AVG done flag */
if (avgdvg_done())
x |= 0x40;
else
x &= ~0x40;
return x;
return math_run ? 1 : 0;
}

View File

@ -1222,6 +1222,11 @@ int avgdvg_done(void)
return vg->sync_halt;
}
CUSTOM_INPUT( avgdvg_done_r )
{
return vg->sync_halt ? 0x01 : 0x00;
}
WRITE8_HANDLER( avgdvg_go_w )
{
if (vg->sync_halt && (nvect > 10))

View File

@ -7,6 +7,7 @@ extern UINT16 *quantum_colorram;
extern UINT16 *quantum_vectorram;
int avgdvg_done(void);
CUSTOM_INPUT( avgdvg_done_r );
WRITE8_HANDLER( avgdvg_go_w );
WRITE8_HANDLER( avgdvg_reset_w );
WRITE16_HANDLER( avgdvg_go_word_w );