mirror of
https://github.com/holub/mame
synced 2025-05-18 19:49:35 +03:00
Improved inputs and added some TLB notes in the Aleck64 driver [Peter Sealy]
This commit is contained in:
parent
fc7bb8bec5
commit
78cc73ded3
@ -171,18 +171,112 @@ Notes:
|
||||
#include "sound/dmadac.h"
|
||||
#include "includes/n64.h"
|
||||
|
||||
static READ32_HANDLER( aleck_dips_r )
|
||||
static UINT32 dip_read_offset = 0;
|
||||
static WRITE32_HANDLER( aleck_dips_w )
|
||||
{
|
||||
if (offset == 0)
|
||||
return (input_port_read(space->machine(), "IN0")); /* mtetrisc has regular inputs here */
|
||||
else if (offset == 1)
|
||||
return (input_port_read(space->machine(), "IN1"));
|
||||
/*
|
||||
mtetrisc uses offset 0x1c and 0x03 a good bit in conjunction with reading INMJ.
|
||||
(See Test menu GAME DATA and MEMORY CHECK/S2D Ram test, also CONFIGURATION/save & exit. eeprom? Serial2DRAM?)
|
||||
|
||||
return 0;
|
||||
srmvs uses 0x40, communications?
|
||||
*/
|
||||
|
||||
switch( offset )
|
||||
{
|
||||
case 2:
|
||||
dip_read_offset = data;
|
||||
break;
|
||||
|
||||
default:
|
||||
logerror("Unknown aleck_dips_w(0x%08x, 0x%08x, %08x) @ 0x%08x PC=%08x\n", offset, data, mem_mask, 0xc0800000 + offset*4, cpu_get_pc(&space->device()));
|
||||
}
|
||||
}
|
||||
|
||||
static READ32_HANDLER( aleck_dips_r )
|
||||
{
|
||||
// srmvs uses 0x40, communications?
|
||||
|
||||
switch( offset )
|
||||
{
|
||||
case 0:
|
||||
return (input_port_read(space->machine(), "IN0")); /* mtetrisc has regular inputs here */
|
||||
case 1:
|
||||
return (input_port_read(space->machine(), "IN1"));
|
||||
case 2:
|
||||
{
|
||||
UINT32 val = input_port_read(space->machine(), "INMJ");
|
||||
|
||||
switch( dip_read_offset >> 8 & 0xff )
|
||||
{
|
||||
case 1:
|
||||
return val;
|
||||
|
||||
case 2:
|
||||
return val << 8;
|
||||
|
||||
case 4:
|
||||
return val << 16;
|
||||
|
||||
case 8:
|
||||
return val >> 8;
|
||||
|
||||
default:
|
||||
logerror("Unexpected read from INMJ with no dip_read_offset set.\n");
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
default:
|
||||
{
|
||||
logerror("Unknown aleck_dips_r(0x%08x, 0x%08x) @ 0x%08x PC=%08x\n", offset, 0xc0800000 + offset*4, mem_mask, cpu_get_pc(&space->device()));
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
|
||||
The TLB entries made by all games show that the programmers put in extra mappings.
|
||||
Some of these are big, every game adds a mapping for 4MB at 0xc0000000 physical.
|
||||
Some add more than one 4MB mapping. As some of the boards are only 4MB RAM,
|
||||
it seems likely that the programmers expected main RAM to be mirrored at 0xc0000000.
|
||||
Some of the games have a further 4MB mapping to a pgysical segment contiguous with
|
||||
the first at 0xc0000000, so if these games are on the E92 8MB boards, this would
|
||||
add a bit of support to the mirror idea.
|
||||
|
||||
Adding the mirror makes everything go pretty well,
|
||||
it makes doncdoon, hipai, kurufev, srmvs, twrshaft boot.
|
||||
|
||||
There's still a couple of problems though:
|
||||
- srmvs and vivdolls system test screen actually check "SDRAM" at 0xc0000000.
|
||||
This all goes well until they overwrite the RAM test code which is running from
|
||||
virtual memory backed by the same physical memory as it's testing.
|
||||
(maybe this is related to the fact that the check code is executing from a cacheable kseg0 range,
|
||||
and the TLB entry for 0xc0000000 is in kuseg and flagged as non-cache?)
|
||||
- srmvs reads a jump vector from memory mapped to physical segment at 0xc0000000 that's been overwritten
|
||||
by a boot up memory test of that segment, so it crashes with a bad access during the intro.
|
||||
|
||||
Both these problems go away by adding new RAM at 0xc0000000 physical, but maybe they are related to
|
||||
caching?
|
||||
|
||||
Here's a full list of the physical addresses mapped by tlb entries, along with the names of the games
|
||||
that make the mappings and which games actually use them.
|
||||
|
||||
4MB @ 0xc0000000 - 0xc03fffff ALL : used by doncdoon, hipai, kurufev, srmvs, twrshaft
|
||||
4MB @ 0xc0400000 - 0xc07fffff mayjin3, vivdolls, 11beat, starsldr, mtetrisc : unused
|
||||
4MB @ 0xc0401000 - 0xc0800fff 11beat, starsldr (odd-page entry, overlaps inputs) : unused
|
||||
4KB @ 0xc0800000 - 0xc0800fff ALL (inputs)
|
||||
4KB @ 0xc0801000 - 0xc0801fff mayjin3, vivdolls, 11beat, starsldr, mtetrisc : unused
|
||||
4KB @ 0xc0810000 - 0xc0810fff 11beat, starsldr, mtetrisc : unused
|
||||
4KB @ 0xc0811000 - 0xc0811fff 11beat, starsldr, mtetrisc : unused
|
||||
4KB @ 0xc0c00000 - 0xc0c00fff doncdoon, hipai, kurufev, twrshaft, srmvs, mayjin3, vivdolls : unused
|
||||
4KB @ 0xc0c01000 - 0xc0c01fff mayjin3, vivdolls : unused
|
||||
1MB @ 0xd0000000 - 0xd00fffff mtetrisc : used but write only
|
||||
1MB @ 0xd0100000 - 0xd01fffff mtetrisc : unused
|
||||
4MB @ 0xd0800000 - 0xd0bfffff doncdoon, hipai, kurufev, twrshaft, srmvs : unused
|
||||
*/
|
||||
|
||||
static ADDRESS_MAP_START( n64_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x00000000, 0x007fffff) AM_RAM AM_BASE(&rdram) // RDRAM
|
||||
AM_RANGE(0x00000000, 0x007fffff) AM_RAM /*AM_MIRROR(0xc0000000)*/ AM_BASE(&rdram) // RDRAM
|
||||
AM_RANGE(0x04000000, 0x04000fff) AM_RAM AM_SHARE("dmem") // RSP DMEM
|
||||
AM_RANGE(0x04001000, 0x04001fff) AM_RAM AM_SHARE("imem") // RSP IMEM
|
||||
AM_RANGE(0x04040000, 0x040fffff) AM_DEVREADWRITE("rsp", n64_sp_reg_r, n64_sp_reg_w) // RSP
|
||||
@ -197,9 +291,15 @@ static ADDRESS_MAP_START( n64_map, AS_PROGRAM, 32 )
|
||||
AM_RANGE(0x1fc00000, 0x1fc007bf) AM_ROM AM_REGION("user1", 0) // PIF ROM
|
||||
AM_RANGE(0x1fc007c0, 0x1fc007ff) AM_READWRITE(n64_pif_ram_r, n64_pif_ram_w)
|
||||
|
||||
AM_RANGE(0xc0800000, 0xc08fffff) AM_READ(aleck_dips_r) AM_WRITENOP
|
||||
AM_RANGE(0xd0000000, 0xd0000fff) AM_RAM
|
||||
AM_RANGE(0xd0010000, 0xd00109ff) AM_RAM
|
||||
/*
|
||||
Surely this should mirror main ram? srmvs crashes, and
|
||||
vivdolls overwrites it's memory test code if it does mirror
|
||||
*/
|
||||
AM_RANGE(0xc0000000, 0xc07fffff) AM_RAM
|
||||
|
||||
AM_RANGE(0xc0800000, 0xc0800fff) AM_READWRITE(aleck_dips_r,aleck_dips_w)
|
||||
AM_RANGE(0xd0000000, 0xd00fffff) AM_RAM // mtetrisc, write only, mirror?
|
||||
|
||||
ADDRESS_MAP_END
|
||||
|
||||
static ADDRESS_MAP_START( rsp_map, AS_PROGRAM, 32 )
|
||||
@ -257,52 +357,52 @@ static INPUT_PORTS_START( aleck64 )
|
||||
PORT_BIT( 0xff, 0x80, IPT_AD_STICK_Y ) PORT_MINMAX(0xff,0x00) PORT_SENSITIVITY(30) PORT_KEYDELTA(30) PORT_PLAYER(2)
|
||||
|
||||
PORT_START("IN0")
|
||||
PORT_DIPNAME( 0x80000000, 0x80000000, "DIPSW1 #8" )
|
||||
PORT_DIPNAME( 0x80000000, 0x80000000, "DIPSW1 #8" ) PORT_DIPLOCATION("SW1:8")
|
||||
PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40000000, 0x40000000, "DIPSW1 #7" )
|
||||
PORT_DIPNAME( 0x40000000, 0x40000000, "DIPSW1 #7" ) PORT_DIPLOCATION("SW1:7")
|
||||
PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20000000, 0x20000000, "DIPSW1 #6" )
|
||||
PORT_DIPNAME( 0x20000000, 0x20000000, "DIPSW1 #6" ) PORT_DIPLOCATION("SW1:6")
|
||||
PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10000000, 0x10000000, "DIPSW1 #5" )
|
||||
PORT_DIPNAME( 0x10000000, 0x10000000, "DIPSW1 #5" ) PORT_DIPLOCATION("SW1:5")
|
||||
PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08000000, 0x08000000, "DIPSW1 #4" )
|
||||
PORT_DIPNAME( 0x08000000, 0x08000000, "DIPSW1 #4" ) PORT_DIPLOCATION("SW1:4")
|
||||
PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x04000000, 0x04000000, "DIPSW1 #3" )
|
||||
PORT_DIPNAME( 0x04000000, 0x04000000, "DIPSW1 #3" ) PORT_DIPLOCATION("SW1:3")
|
||||
PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02000000, 0x02000000, "DIPSW1 #2" )
|
||||
PORT_DIPNAME( 0x02000000, 0x02000000, "DIPSW1 #2" ) PORT_DIPLOCATION("SW1:2")
|
||||
PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x01000000, 0x01000000, "DIPSW1 #1" )
|
||||
PORT_DIPNAME( 0x01000000, 0x01000000, "DIPSW1 #1" ) PORT_DIPLOCATION("SW1:1")
|
||||
PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00800000, 0x00800000, "Test Mode" )
|
||||
PORT_DIPNAME( 0x00800000, 0x00800000, "Test Mode" ) PORT_DIPLOCATION("SW2:8")
|
||||
PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00400000, 0x00400000, "DIPSW2 #7" )
|
||||
PORT_DIPNAME( 0x00400000, 0x00400000, "DIPSW2 #7" ) PORT_DIPLOCATION("SW2:7")
|
||||
PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00200000, 0x00200000, "DIPSW2 #6" )
|
||||
PORT_DIPNAME( 0x00200000, 0x00200000, "DIPSW2 #6" ) PORT_DIPLOCATION("SW2:6")
|
||||
PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00100000, 0x00100000, "DIPSW2 #5" )
|
||||
PORT_DIPNAME( 0x00100000, 0x00100000, "DIPSW2 #5" ) PORT_DIPLOCATION("SW2:5")
|
||||
PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00080000, 0x00080000, "DIPSW2 #4" )
|
||||
PORT_DIPNAME( 0x00080000, 0x00080000, "DIPSW2 #4" ) PORT_DIPLOCATION("SW2:4")
|
||||
PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00040000, 0x00040000, "DIPSW2 #3" )
|
||||
PORT_DIPNAME( 0x00040000, 0x00040000, "DIPSW2 #3" ) PORT_DIPLOCATION("SW2:3")
|
||||
PORT_DIPSETTING( 0x00040000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00020000, 0x00020000, "DIPSW2 #2" )
|
||||
PORT_DIPNAME( 0x00020000, 0x00020000, "DIPSW2 #2" ) PORT_DIPLOCATION("SW2:2")
|
||||
PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00010000, 0x00010000, "DIPSW2 #1" )
|
||||
PORT_DIPNAME( 0x00010000, 0x00010000, "DIPSW2 #1" ) PORT_DIPLOCATION("SW2:1")
|
||||
PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_BIT(0x0000ffff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
@ -316,102 +416,35 @@ static INPUT_PORTS_START( aleck64 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( 11beat )
|
||||
PORT_START("P1_ANALOG_X")
|
||||
PORT_START("P1_ANALOG_Y")
|
||||
PORT_START("P2_ANALOG_X")
|
||||
PORT_START("P2_ANALOG_Y")
|
||||
PORT_INCLUDE( aleck64 )
|
||||
|
||||
PORT_START("P1")
|
||||
PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(1) // Button A
|
||||
PORT_BIT( 0x4000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(1) // Button B
|
||||
PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_UNUSED ) // Button Z
|
||||
PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_START1 ) // Start
|
||||
PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(1) // Joypad Up
|
||||
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1) // Joypad Down
|
||||
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1) // Joypad Left
|
||||
PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1) // Joypad Right
|
||||
PORT_BIT( 0x00c0, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_UNUSED ) // Pan Left
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(1) // Pan Right
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_UNUSED ) // C Button Up
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_UNUSED ) // C Button Down
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_UNUSED ) // C Button Left
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(1) // C Button Right
|
||||
PORT_MODIFY("P1_ANALOG_Y")
|
||||
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_MODIFY("P2_ANALOG_X")
|
||||
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_MODIFY("P2_ANALOG_Y")
|
||||
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_MODIFY("P1_ANALOG_X")
|
||||
PORT_BIT( 0xff, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
|
||||
PORT_START("P2")
|
||||
PORT_BIT( 0x8000, IP_ACTIVE_HIGH, IPT_BUTTON1 ) PORT_PLAYER(2) // Button A
|
||||
PORT_BIT( 0x4000, IP_ACTIVE_HIGH, IPT_BUTTON2 ) PORT_PLAYER(2) // Button B
|
||||
PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_UNUSED ) // Button Z
|
||||
PORT_BIT( 0x1000, IP_ACTIVE_HIGH, IPT_START2 ) // Start
|
||||
PORT_BIT( 0x0800, IP_ACTIVE_HIGH, IPT_JOYSTICK_UP ) PORT_PLAYER(2) // Joypad Up
|
||||
PORT_BIT( 0x0400, IP_ACTIVE_HIGH, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2) // Joypad Down
|
||||
PORT_BIT( 0x0200, IP_ACTIVE_HIGH, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2) // Joypad Left
|
||||
PORT_BIT( 0x0100, IP_ACTIVE_HIGH, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2) // Joypad Right
|
||||
PORT_BIT( 0x00c0, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_UNUSED ) // Pan Left
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2) // Pan Right (Button C here)
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_UNUSED ) // C Button Up
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_UNUSED ) // C Button Down
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_UNUSED ) // C Button Left
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(2) // C Button Right (Button D here)
|
||||
PORT_MODIFY("P1")
|
||||
PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(1)
|
||||
|
||||
PORT_START("IN0")
|
||||
PORT_DIPNAME( 0x80000000, 0x80000000, "DIPSW1 #8" )
|
||||
PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40000000, 0x40000000, "DIPSW1 #7" )
|
||||
PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20000000, 0x20000000, "DIPSW1 #6" )
|
||||
PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10000000, 0x10000000, "DIPSW1 #5" )
|
||||
PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08000000, 0x08000000, "DIPSW1 #4" )
|
||||
PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x04000000, 0x04000000, "DIPSW1 #3" )
|
||||
PORT_DIPSETTING( 0x04000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02000000, 0x02000000, "DIPSW1 #2" )
|
||||
PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x01000000, 0x01000000, "DIPSW1 #1" )
|
||||
PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00800000, 0x00800000, "Test Mode" )
|
||||
PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00400000, 0x00400000, "DIPSW2 #7" )
|
||||
PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00200000, 0x00200000, "DIPSW2 #6" )
|
||||
PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00100000, 0x00100000, "DIPSW2 #5" )
|
||||
PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00080000, 0x00080000, "DIPSW2 #4" )
|
||||
PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00040000, 0x00040000, "DIPSW2 #3" )
|
||||
PORT_DIPSETTING( 0x00040000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00020000, 0x00020000, "DIPSW2 #2" )
|
||||
PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00010000, 0x00010000, "DIPSW2 #1" )
|
||||
PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_BIT(0x0000ffff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_MODIFY("P2")
|
||||
PORT_BIT( 0x2000, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0020, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0010, IP_ACTIVE_HIGH, IPT_BUTTON3 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x0008, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0004, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0002, IP_ACTIVE_HIGH, IPT_UNUSED )
|
||||
PORT_BIT( 0x0001, IP_ACTIVE_HIGH, IPT_BUTTON4 ) PORT_PLAYER(2)
|
||||
|
||||
PORT_START("IN1")
|
||||
PORT_BIT( 0xff00ffff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_SERVICE_NO_TOGGLE( 0x00200000, IP_ACTIVE_LOW )
|
||||
PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_7)
|
||||
PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( mtetrisc )
|
||||
@ -422,6 +455,7 @@ static INPUT_PORTS_START( mtetrisc )
|
||||
PORT_START("P2")
|
||||
PORT_START("P2_ANALOG_X")
|
||||
PORT_START("P2_ANALOG_Y")
|
||||
PORT_START("INMJ")
|
||||
|
||||
PORT_START("IN0")
|
||||
PORT_BIT( 0xffff0000, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
@ -499,20 +533,20 @@ static INPUT_PORTS_START( starsldr )
|
||||
|
||||
|
||||
PORT_START("IN0")
|
||||
PORT_DIPNAME( 0x80000000, 0x00000000, DEF_STR(Joystick) ) // DIPSW1 #8
|
||||
PORT_DIPNAME( 0x80000000, 0x00000000, DEF_STR(Joystick) ) PORT_DIPLOCATION("SW1:8")
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR(Joystick) )
|
||||
PORT_DIPSETTING( 0x80000000, "3D" )
|
||||
PORT_DIPNAME( 0x60000000, 0x60000000, "Auto Level" ) // DIPSW1 #6, #7
|
||||
PORT_DIPNAME( 0x60000000, 0x60000000, "Auto Level" ) PORT_DIPLOCATION("SW1:6,7")
|
||||
PORT_DIPSETTING( 0x60000000, DEF_STR(Normal) )
|
||||
PORT_DIPSETTING( 0x40000000, "Slow" )
|
||||
PORT_DIPSETTING( 0x20000000, "Fast1" )
|
||||
PORT_DIPSETTING( 0x00000000, "Fast2" )
|
||||
PORT_DIPNAME( 0x18000000, 0x18000000, "Player" ) // DIPSW1 #4, #5
|
||||
PORT_DIPNAME( 0x18000000, 0x18000000, "Player" ) PORT_DIPLOCATION("SW1:4,5")
|
||||
PORT_DIPSETTING( 0x18000000, "3" )
|
||||
PORT_DIPSETTING( 0x10000000, "4" )
|
||||
PORT_DIPSETTING( 0x08000000, "2" )
|
||||
PORT_DIPSETTING( 0x00000000, "1" )
|
||||
PORT_DIPNAME( 0x07000000, 0x07000000, DEF_STR(Coinage) ) // DIPSW1 #1, #2, #3
|
||||
PORT_DIPNAME( 0x07000000, 0x07000000, DEF_STR(Coinage) ) PORT_DIPLOCATION("SW1:1,2,3")
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( 5C_1C ) )
|
||||
PORT_DIPSETTING( 0x01000000, DEF_STR( 4C_1C ) )
|
||||
PORT_DIPSETTING( 0x02000000, DEF_STR( 3C_1C ) )
|
||||
@ -521,24 +555,24 @@ static INPUT_PORTS_START( starsldr )
|
||||
PORT_DIPSETTING( 0x06000000, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPSETTING( 0x05000000, DEF_STR( 1C_3C ) )
|
||||
PORT_DIPSETTING( 0x04000000, DEF_STR( 1C_4C ) )
|
||||
PORT_DIPNAME( 0x00800000, 0x00800000, "DIPSW2 #8" )
|
||||
PORT_DIPNAME( 0x00800000, 0x00800000, "DIPSW2 #8" ) PORT_DIPLOCATION("SW2:8")
|
||||
PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR(Language) ) // DIPSW2 #7
|
||||
PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR(Language) ) PORT_DIPLOCATION("SW2:7")
|
||||
PORT_DIPSETTING( 0x00400000, DEF_STR(English) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR(Japanese) )
|
||||
PORT_DIPNAME( 0x00200000, 0x00000000, "Demosound" ) // DIPSW2 #6
|
||||
PORT_DIPNAME( 0x00200000, 0x00000000, "Demosound" ) PORT_DIPLOCATION("SW2:6")
|
||||
PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00100000, 0x00100000, "Rapid" ) // DIPSW2 #5
|
||||
PORT_DIPNAME( 0x00100000, 0x00100000, "Rapid" ) PORT_DIPLOCATION("SW2:5")
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00100000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x000c0000, 0x000c0000, "Extend" ) // DIPSW2 #3, #4
|
||||
PORT_DIPNAME( 0x000c0000, 0x000c0000, "Extend" ) PORT_DIPLOCATION("SW2:3,4")
|
||||
PORT_DIPSETTING( 0x000c0000, "Every 30000000" )
|
||||
PORT_DIPSETTING( 0x00080000, "Every 50000000" )
|
||||
PORT_DIPSETTING( 0x00040000, "Every 70000000" )
|
||||
PORT_DIPSETTING( 0x00000000, "Non" )
|
||||
PORT_DIPNAME( 0x00030000, 0x00030000, DEF_STR(Difficulty) ) // DIPSW2 #1, #2
|
||||
PORT_DIPNAME( 0x00030000, 0x00030000, DEF_STR(Difficulty) ) PORT_DIPLOCATION("SW2:1,2")
|
||||
PORT_DIPSETTING( 0x00030000, DEF_STR(Normal) )
|
||||
PORT_DIPSETTING( 0x00020000, DEF_STR(Easy) )
|
||||
PORT_DIPSETTING( 0x00010000, "Hard1" )
|
||||
@ -553,6 +587,209 @@ static INPUT_PORTS_START( starsldr )
|
||||
PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( kurufev )
|
||||
PORT_START("P1")
|
||||
PORT_START("P1_ANALOG_X")
|
||||
PORT_START("P1_ANALOG_Y")
|
||||
PORT_START("P2")
|
||||
PORT_START("P2_ANALOG_X")
|
||||
PORT_START("P2_ANALOG_Y")
|
||||
|
||||
PORT_START("IN0")
|
||||
PORT_BIT(0xfcff8080, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_DIPNAME( 0x02000000, 0x02000000, "DIP SW2" )
|
||||
PORT_DIPSETTING( 0x02000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x01000000, 0x01000000, "Test Mode" )
|
||||
PORT_DIPSETTING( 0x01000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_BIT( 0x00004000, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x00002000, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x00001000, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x00000800, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x00000200, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x00000100, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(2)
|
||||
PORT_BIT( 0x00000040, IP_ACTIVE_LOW, IPT_BUTTON3 ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_BUTTON2 ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
|
||||
|
||||
PORT_START("IN1")
|
||||
PORT_BIT(0xffc0ffff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Test Button")
|
||||
PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_7)
|
||||
PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_START2 )
|
||||
PORT_BIT( 0x00010000, IP_ACTIVE_LOW, IPT_START1 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( doncdoon )
|
||||
PORT_INCLUDE( kurufev )
|
||||
|
||||
PORT_MODIFY("IN0")
|
||||
PORT_BIT(0x00004040, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( twrshaft )
|
||||
PORT_START("P1")
|
||||
PORT_START("P1_ANALOG_X")
|
||||
PORT_START("P1_ANALOG_Y")
|
||||
PORT_START("P2")
|
||||
PORT_START("P2_ANALOG_X")
|
||||
PORT_START("P2_ANALOG_Y")
|
||||
PORT_START("INMJ")
|
||||
|
||||
PORT_START("IN0")
|
||||
PORT_BIT(0xff7fffe0, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_PLAYER(1)
|
||||
PORT_BIT( 0x00000001, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_PLAYER(1)
|
||||
PORT_DIPNAME( 0x00800000, 0x00800000, "Test Mode" )
|
||||
PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
|
||||
PORT_START("IN1")
|
||||
PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Test Button")
|
||||
PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_7)
|
||||
PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_COIN2 )
|
||||
PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
PORT_BIT( 0x00010000, IP_ACTIVE_LOW, IPT_START1 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( hipai )
|
||||
PORT_START("P1")
|
||||
PORT_START("P1_ANALOG_X")
|
||||
PORT_START("P1_ANALOG_Y")
|
||||
PORT_START("P2")
|
||||
PORT_START("P2_ANALOG_X")
|
||||
PORT_START("P2_ANALOG_Y")
|
||||
|
||||
PORT_START("INMJ")
|
||||
PORT_BIT( 0xe1c1c0c1, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x00000100, IP_ACTIVE_LOW, IPT_START1 )
|
||||
PORT_BIT( 0x00000200, IP_ACTIVE_LOW, IPT_MAHJONG_A )
|
||||
PORT_BIT( 0x00020000, IP_ACTIVE_LOW, IPT_MAHJONG_B )
|
||||
PORT_BIT( 0x00000002, IP_ACTIVE_LOW, IPT_MAHJONG_C )
|
||||
PORT_BIT( 0x02000000, IP_ACTIVE_LOW, IPT_MAHJONG_D )
|
||||
PORT_BIT( 0x00000400, IP_ACTIVE_LOW, IPT_MAHJONG_E )
|
||||
PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_MAHJONG_F )
|
||||
PORT_BIT( 0x00000004, IP_ACTIVE_LOW, IPT_MAHJONG_G )
|
||||
PORT_BIT( 0x04000000, IP_ACTIVE_LOW, IPT_MAHJONG_H )
|
||||
PORT_BIT( 0x00000800, IP_ACTIVE_LOW, IPT_MAHJONG_I )
|
||||
PORT_BIT( 0x00080000, IP_ACTIVE_LOW, IPT_MAHJONG_J )
|
||||
PORT_BIT( 0x00000008, IP_ACTIVE_LOW, IPT_MAHJONG_K )
|
||||
PORT_BIT( 0x08000000, IP_ACTIVE_LOW, IPT_MAHJONG_L )
|
||||
PORT_BIT( 0x00001000, IP_ACTIVE_LOW, IPT_MAHJONG_M )
|
||||
PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_MAHJONG_N )
|
||||
PORT_BIT( 0x00002000, IP_ACTIVE_LOW, IPT_MAHJONG_KAN )
|
||||
PORT_BIT( 0x10000000, IP_ACTIVE_LOW, IPT_MAHJONG_PON )
|
||||
PORT_BIT( 0x00000010, IP_ACTIVE_LOW, IPT_MAHJONG_CHI )
|
||||
PORT_BIT( 0x00200000, IP_ACTIVE_LOW, IPT_MAHJONG_REACH )
|
||||
PORT_BIT( 0x00000020, IP_ACTIVE_LOW, IPT_MAHJONG_RON )
|
||||
|
||||
PORT_START("IN0")
|
||||
PORT_BIT( 0x0000ffff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Free_Play ) ) PORT_DIPLOCATION("SW1:8")
|
||||
PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:7")
|
||||
PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:6")
|
||||
PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:5")
|
||||
PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW1:4")
|
||||
PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x07000000, 0x07000000, DEF_STR( Coinage ) ) PORT_DIPLOCATION("SW1:1,2,3")
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( 5C_1C ) )
|
||||
PORT_DIPSETTING( 0x01000000, DEF_STR( 4C_1C ) )
|
||||
PORT_DIPSETTING( 0x02000000, DEF_STR( 3C_1C ) )
|
||||
PORT_DIPSETTING( 0x03000000, DEF_STR( 2C_1C ) )
|
||||
PORT_DIPSETTING( 0x07000000, DEF_STR( 1C_1C ) )
|
||||
PORT_DIPSETTING( 0x06000000, DEF_STR( 1C_2C ) )
|
||||
PORT_DIPSETTING( 0x05000000, DEF_STR( 1C_3C ) )
|
||||
PORT_DIPSETTING( 0x04000000, DEF_STR( 1C_4C ) )
|
||||
PORT_DIPNAME( 0x00800000, 0x00800000, DEF_STR( Test ) ) PORT_DIPLOCATION("SW2:8")
|
||||
PORT_DIPSETTING( 0x00800000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unused ) ) PORT_DIPLOCATION("SW2:7")
|
||||
PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00200000, 0x00000000, DEF_STR( Demo_Sounds ) ) PORT_DIPLOCATION("SW2:6")
|
||||
PORT_DIPSETTING( 0x00200000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Allow_Continue ) ) PORT_DIPLOCATION("SW2:5")
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00100000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00080000, 0x00080000, "Kuitan" ) PORT_DIPLOCATION("SW2:4")
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00080000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00070000, 0x00070000, DEF_STR( Difficulty ) ) PORT_DIPLOCATION("SW2:1,2,3")
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( Hardest ) )
|
||||
PORT_DIPSETTING( 0x00010000, DEF_STR( Very_Hard ) )
|
||||
PORT_DIPSETTING( 0x00020000, DEF_STR( Hard ) )
|
||||
PORT_DIPSETTING( 0x00030000, "Normal+" )
|
||||
PORT_DIPSETTING( 0x00040000, DEF_STR( Easy ) )
|
||||
PORT_DIPSETTING( 0x00050000, DEF_STR( Very_Easy ) )
|
||||
PORT_DIPSETTING( 0x00060000, DEF_STR( Easiest ) )
|
||||
PORT_DIPSETTING( 0x00070000, DEF_STR( Normal ) )
|
||||
|
||||
PORT_START("IN1")
|
||||
PORT_BIT( 0xffebffff, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
PORT_BIT( 0x00100000, IP_ACTIVE_LOW, IPT_SERVICE ) PORT_NAME("Service Button") PORT_CODE(KEYCODE_7)
|
||||
PORT_BIT( 0x00040000, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static INPUT_PORTS_START( srmvs )
|
||||
PORT_INCLUDE( hipai )
|
||||
|
||||
PORT_MODIFY("IN0")
|
||||
PORT_DIPNAME( 0x80000000, 0x80000000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:8")
|
||||
PORT_DIPSETTING( 0x80000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40000000, 0x40000000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:7")
|
||||
PORT_DIPSETTING( 0x40000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20000000, 0x20000000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:6")
|
||||
PORT_DIPSETTING( 0x20000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x10000000, 0x10000000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:5")
|
||||
PORT_DIPSETTING( 0x10000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x08000000, 0x08000000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW1:4")
|
||||
PORT_DIPSETTING( 0x08000000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00400000, 0x00400000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:7")
|
||||
PORT_DIPSETTING( 0x00400000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00100000, 0x00100000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:5")
|
||||
PORT_DIPSETTING( 0x00100000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00080000, 0x00080000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:4")
|
||||
PORT_DIPSETTING( 0x00080000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00040000, 0x00040000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:3")
|
||||
PORT_DIPSETTING( 0x00040000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00020000, 0x00020000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:2")
|
||||
PORT_DIPSETTING( 0x00020000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x00010000, 0x00010000, DEF_STR( Unknown ) ) PORT_DIPLOCATION("SW2:1")
|
||||
PORT_DIPSETTING( 0x00010000, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00000000, DEF_STR( On ) )
|
||||
INPUT_PORTS_END
|
||||
|
||||
/* ?? */
|
||||
static const mips3_config vr4300_config =
|
||||
{
|
||||
@ -838,10 +1075,10 @@ GAME( 1998, 11beat, aleck64, aleck64, 11beat, aleck64, ROT0, "Hudson", "Ele
|
||||
GAME( 1998, mtetrisc, aleck64, aleck64, mtetrisc, aleck64, ROT0, "Capcom", "Magical Tetris Challenge (981009 Japan)", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, starsldr, aleck64, aleck64, starsldr, aleck64, ROT0, "Hudson / Seta", "Star Soldier: Vanishing Earth", GAME_IMPERFECT_GRAPHICS )
|
||||
GAME( 1998, vivdolls, aleck64, aleck64, aleck64, aleck64, ROT0, "Visco", "Vivid Dolls", GAME_IMPERFECT_GRAPHICS )
|
||||
GAME( 1999, srmvs, aleck64, aleck64, aleck64, aleck64, ROT0, "Seta", "Super Real Mahjong VS", GAME_NOT_WORKING|GAME_NO_SOUND )
|
||||
GAME( 2003, twrshaft, aleck64, aleck64, aleck64, aleck64, ROT0, "Aruze", "Tower & Shaft", GAME_NOT_WORKING|GAME_NO_SOUND )
|
||||
GAME( 2003, hipai, aleck64, aleck64, aleck64, aleck64, ROT0, "Aruze / Seta", "Hi Pai Paradise", GAME_NOT_WORKING|GAME_NO_SOUND )
|
||||
GAME( 2003, doncdoon, aleck64, aleck64, aleck64, aleck64, ROT0, "Aruze / Takumi", "Donchan no Hanabi de Doon", GAME_NOT_WORKING|GAME_NO_SOUND )
|
||||
GAME( 2003, kurufev, aleck64, aleck64, aleck64, aleck64, ROT0, "Aruze / Takumi", "Kurukuru Fever", GAME_NOT_WORKING|GAME_NO_SOUND )
|
||||
GAME( 1999, srmvs, aleck64, aleck64, srmvs, aleck64, ROT0, "Seta", "Super Real Mahjong VS", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
|
||||
GAME( 2003, twrshaft, aleck64, aleck64, twrshaft, aleck64, ROT0, "Aruze", "Tower & Shaft", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
|
||||
GAME( 2003, hipai, aleck64, aleck64, hipai, aleck64, ROT0, "Aruze / Seta", "Hi Pai Paradise", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
|
||||
GAME( 2003, doncdoon, aleck64, aleck64, doncdoon, aleck64, ROT0, "Aruze / Takumi", "Donchan no Hanabi de Doon", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
|
||||
GAME( 2003, kurufev, aleck64, aleck64, kurufev, aleck64, ROT0, "Aruze / Takumi", "Kurukuru Fever", GAME_NOT_WORKING|GAME_IMPERFECT_GRAPHICS )
|
||||
GAME( 2000, mayjin3, aleck64, aleck64, aleck64, aleck64, ROT0, "Seta / Able Corporation", "Mayjinsen 3", GAME_NOT_WORKING|GAME_NO_SOUND )
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user