mirror of
https://github.com/holub/mame
synced 2025-10-05 08:41:31 +03:00
pdriftl: spotted link ID and link communication mode, game playable in stand-alone, pending MNW promotion, nw
bigrun: link protocol notes, nw
This commit is contained in:
parent
e0747962da
commit
dd7d97ad60
@ -214,6 +214,10 @@ static ADDRESS_MAP_START( bigrun_map, AS_PROGRAM, 16, cischeat_state )
|
||||
AM_RANGE(0x082308, 0x082309) AM_WRITE(cischeat_comms_w)
|
||||
AM_RANGE(0x082400, 0x082401) AM_WRITE(active_layers_w)
|
||||
|
||||
/* It's actually 0x840000-0x847ff, divided in four banks and shared with other boards.
|
||||
Each board expects reads from the other boards and writes to own bank.
|
||||
Amusingly, if you run the communication test as ID = X then soft reset -> ID = Y, what was at ID = X gets an OK in the second test
|
||||
so it's likely to be the only thing needed. */
|
||||
AM_RANGE(0x084000, 0x087fff) AM_RAM // Linking with other units
|
||||
AM_RANGE(0x088000, 0x08bfff) AM_RAM AM_SHARE("share2") // Sharedram with sub CPU#2
|
||||
AM_RANGE(0x08c000, 0x08ffff) AM_RAM AM_SHARE("share1") // Sharedram with sub CPU#1
|
||||
|
@ -808,17 +808,19 @@ static ADDRESS_MAP_START( link_map, AS_PROGRAM, 8, segaybd_state )
|
||||
AM_RANGE(0x4000, 0x47ff) AM_DEVREADWRITE("mb8421", mb8421_device, right_r, right_w)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
#if 0
|
||||
READ8_MEMBER(segaybd_state::link_portc0_r)
|
||||
{
|
||||
return 0xf8;
|
||||
}
|
||||
#endif
|
||||
|
||||
static ADDRESS_MAP_START( link_portmap, AS_IO, 8, segaybd_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
ADDRESS_MAP_GLOBAL_MASK(0xff)
|
||||
|
||||
// AM_RANGE(0x40, 0x40) AM_READ_PORT("LinkDSW")
|
||||
AM_RANGE(0xc0, 0xc0) AM_READ(link_portc0_r)
|
||||
AM_RANGE(0x40, 0x40) AM_READ_PORT("LinkID_DSW1")
|
||||
AM_RANGE(0xc0, 0xc0) AM_READ_PORT("LinkID_DSW2")
|
||||
ADDRESS_MAP_END
|
||||
|
||||
|
||||
@ -1223,11 +1225,11 @@ static INPUT_PORTS_START( pdriftl )
|
||||
PORT_DIPSETTING( 0xb0, DEF_STR( 6C_1C ) )
|
||||
PORT_DIPSETTING( 0x00, "Free Play (if Coin A too) or 1/1" )
|
||||
|
||||
PORT_START("LinkDSW")
|
||||
PORT_START("LinkID_DSW1")
|
||||
PORT_DIPNAME( 0x01, 0x01, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x01, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) )
|
||||
PORT_DIPNAME( 0x02, 0x02, DEF_STR( Unknown ) ) // Affects banking between
|
||||
PORT_DIPSETTING( 0x02, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x04, 0x04, DEF_STR( Unknown ) )
|
||||
@ -1248,6 +1250,39 @@ static INPUT_PORTS_START( pdriftl )
|
||||
PORT_DIPNAME( 0x80, 0x80, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x80, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
|
||||
PORT_START("LinkID_DSW2")
|
||||
PORT_DIPNAME( 0x0f, 0x01, "Cabinet ID" )
|
||||
PORT_DIPSETTING( 0x00, "0" )
|
||||
PORT_DIPSETTING( 0x01, "1" ) // accessed unmapped areas if stand-alone isn't setup properly?
|
||||
PORT_DIPSETTING( 0x02, "2" )
|
||||
PORT_DIPSETTING( 0x03, "3" )
|
||||
PORT_DIPSETTING( 0x04, "4" )
|
||||
PORT_DIPSETTING( 0x05, "5" )
|
||||
PORT_DIPSETTING( 0x06, "6" )
|
||||
PORT_DIPSETTING( 0x07, "7" )
|
||||
PORT_DIPSETTING( 0x08, "8" )
|
||||
PORT_DIPSETTING( 0x09, "9" )
|
||||
PORT_DIPSETTING( 0x0a, "10" )
|
||||
PORT_DIPSETTING( 0x0b, "11" )
|
||||
// enabled for debugging
|
||||
PORT_DIPSETTING( 0x0c, "12 (invalid)" )
|
||||
PORT_DIPSETTING( 0x0d, "13 (invalid)" )
|
||||
PORT_DIPSETTING( 0x0e, "14 (invalid)" )
|
||||
PORT_DIPSETTING( 0x0f, "15 (invalid)" )
|
||||
|
||||
PORT_DIPNAME( 0x10, 0x10, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x10, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x20, 0x20, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x20, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x40, 0x40, DEF_STR( Unknown ) )
|
||||
PORT_DIPSETTING( 0x40, DEF_STR( Off ) )
|
||||
PORT_DIPSETTING( 0x00, DEF_STR( On ) )
|
||||
PORT_DIPNAME( 0x80, 0x00, "Communication Mode" )
|
||||
PORT_DIPSETTING( 0x80, "Master/Slave" )
|
||||
PORT_DIPSETTING( 0x00, "Stand-Alone" )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
|
@ -62,7 +62,7 @@ public:
|
||||
DECLARE_READ16_MEMBER( link_r );
|
||||
DECLARE_READ16_MEMBER( link2_r );
|
||||
DECLARE_WRITE16_MEMBER( link2_w );
|
||||
DECLARE_READ8_MEMBER( link_portc0_r );
|
||||
// DECLARE_READ8_MEMBER( link_portc0_r );
|
||||
|
||||
// game-specific output handlers
|
||||
void gforce2_output_cb1(UINT16 data);
|
||||
|
Loading…
Reference in New Issue
Block a user