mirror of
https://github.com/holub/mame
synced 2025-05-25 07:15:25 +03:00
namcos23: working inputs for TC2 test mode [R. Belmont]
Give it a few seconds for the H8s to boot and sync up and then inputs will navigate the test menus. up/down is up/down, spacebar is "enter".
This commit is contained in:
parent
4a8d5a8ecc
commit
a91388839c
@ -1301,6 +1301,7 @@ static READ16_HANDLER(s23_ctl_16_r)
|
|||||||
switch(offset) {
|
switch(offset) {
|
||||||
// dips ?
|
// dips ?
|
||||||
// 0100 set freezes gorgon
|
// 0100 set freezes gorgon
|
||||||
|
// 0080 is service mode for gorgon
|
||||||
// 0004 unset freezes ss23 at the boot level
|
// 0004 unset freezes ss23 at the boot level
|
||||||
// 0002 unset skips the post on ss23
|
// 0002 unset skips the post on ss23
|
||||||
case 1: return 0x0004;
|
case 1: return 0x0004;
|
||||||
@ -1671,6 +1672,19 @@ static INPUT_PORTS_START( ss23 )
|
|||||||
PORT_BIT( 0x001, IP_ACTIVE_LOW, IPT_START2 )
|
PORT_BIT( 0x001, IP_ACTIVE_LOW, IPT_START2 )
|
||||||
PORT_BIT( 0xffe, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
PORT_BIT( 0xffe, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
|
|
||||||
|
PORT_START("TC2P0")
|
||||||
|
PORT_BIT(0x03, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
|
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_COIN1 )
|
||||||
|
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
|
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_SERVICE1 )
|
||||||
|
PORT_BIT(0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN )
|
||||||
|
PORT_BIT(0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_UP )
|
||||||
|
PORT_BIT(0x80, IP_ACTIVE_LOW, IPT_BUTTON3 )
|
||||||
|
|
||||||
|
PORT_START("TC2P1")
|
||||||
|
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) // gun trigger
|
||||||
|
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_BUTTON2 ) // foot pedal
|
||||||
|
PORT_BIT(0xfc, IP_ACTIVE_LOW, IPT_UNKNOWN )
|
||||||
INPUT_PORTS_END
|
INPUT_PORTS_END
|
||||||
|
|
||||||
|
|
||||||
@ -1753,14 +1767,17 @@ static WRITE8_HANDLER( s23_iob_p4_w )
|
|||||||
|
|
||||||
static READ8_HANDLER(iob_r)
|
static READ8_HANDLER(iob_r)
|
||||||
{
|
{
|
||||||
return 0xff;
|
return mame_rand(space->machine);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* H8/3334 (Namco C78) I/O board MCU */
|
/* H8/3334 (Namco C78) I/O board MCU */
|
||||||
static ADDRESS_MAP_START( s23iobrdmap, ADDRESS_SPACE_PROGRAM, 8 )
|
static ADDRESS_MAP_START( s23iobrdmap, ADDRESS_SPACE_PROGRAM, 8 )
|
||||||
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("ioboard", 0)
|
AM_RANGE(0x0000, 0x1fff) AM_ROM AM_REGION("ioboard", 0)
|
||||||
AM_RANGE(0x6000, 0x6003) AM_READ( iob_r )
|
AM_RANGE(0x6000, 0x6000) AM_READ_PORT("TC2P0") // 0-3 = coin connect, 0-5 = test 0-6 = down select, 0-7 = up select, 0-8 = enter
|
||||||
AM_RANGE(0x7000, 0x700f) AM_RAM // probably actually the digital inputs, but ignore for now
|
AM_RANGE(0x6001, 0x6001) AM_READ_PORT("TC2P1") // 1-1 = gun trigger 1-2 = foot pedal
|
||||||
|
AM_RANGE(0x6002, 0x6003) AM_READ( iob_r )
|
||||||
|
AM_RANGE(0x7000, 0x700f) AM_READ( iob_r )
|
||||||
|
|
||||||
AM_RANGE(0xc000, 0xf7ff) AM_RAM
|
AM_RANGE(0xc000, 0xf7ff) AM_RAM
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
|
|
||||||
@ -1869,8 +1886,8 @@ static MACHINE_DRIVER_START( gorgon )
|
|||||||
MDRV_SCREEN_REFRESH_RATE(S23_VSYNC1)
|
MDRV_SCREEN_REFRESH_RATE(S23_VSYNC1)
|
||||||
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // Not in any way accurate
|
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // Not in any way accurate
|
||||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||||
MDRV_SCREEN_SIZE(48*16, 30*16)
|
MDRV_SCREEN_SIZE(640, 480)
|
||||||
MDRV_SCREEN_VISIBLE_AREA(0, 48*16-1, 0, 30*16-1)
|
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
|
||||||
|
|
||||||
MDRV_PALETTE_LENGTH(0x8000)
|
MDRV_PALETTE_LENGTH(0x8000)
|
||||||
|
|
||||||
@ -1914,8 +1931,8 @@ static MACHINE_DRIVER_START( s23 )
|
|||||||
MDRV_SCREEN_REFRESH_RATE(S23_VSYNC1)
|
MDRV_SCREEN_REFRESH_RATE(S23_VSYNC1)
|
||||||
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // Not in any way accurate
|
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // Not in any way accurate
|
||||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||||
MDRV_SCREEN_SIZE(48*16, 30*16)
|
MDRV_SCREEN_SIZE(640, 480)
|
||||||
MDRV_SCREEN_VISIBLE_AREA(0, 48*16-1, 0, 30*16-1)
|
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
|
||||||
|
|
||||||
MDRV_PALETTE_LENGTH(0x8000)
|
MDRV_PALETTE_LENGTH(0x8000)
|
||||||
|
|
||||||
@ -1955,8 +1972,8 @@ static MACHINE_DRIVER_START( ss23 )
|
|||||||
MDRV_SCREEN_REFRESH_RATE(S23_VSYNC1)
|
MDRV_SCREEN_REFRESH_RATE(S23_VSYNC1)
|
||||||
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // Not in any way accurate
|
MDRV_SCREEN_VBLANK_TIME(ATTOSECONDS_IN_USEC(2500)) // Not in any way accurate
|
||||||
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
MDRV_SCREEN_FORMAT(BITMAP_FORMAT_INDEXED16)
|
||||||
MDRV_SCREEN_SIZE(48*16, 30*16)
|
MDRV_SCREEN_SIZE(640, 480)
|
||||||
MDRV_SCREEN_VISIBLE_AREA(0, 48*16-1, 0, 30*16-1)
|
MDRV_SCREEN_VISIBLE_AREA(0, 639, 0, 479)
|
||||||
|
|
||||||
MDRV_PALETTE_LENGTH(0x8000)
|
MDRV_PALETTE_LENGTH(0x8000)
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user