summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/bus/c64/4tba.c
diff options
context:
space:
mode:
author smf- <smf-@users.noreply.github.com>2014-01-03 18:18:33 +0000
committer smf- <smf-@users.noreply.github.com>2014-01-03 18:18:33 +0000
commit1eeab0349743431d9d94506afbf8eb7c576a0d2c (patch)
tree13fd44eadad6a400a49cef0700941b7e9729fd63 /src/emu/bus/c64/4tba.c
parent9a6c91f3d4ad74b176932514fa6d4b724f75d370 (diff)
Allow vic20/c64/c128 to share user port devices, removed c64 version of vic1011 and moved protovision 4 player adapter from bus/c64 to bus/vic20. Tried to test with http://code.google.com/p/commodore-multi-player/ as it supports protovision 4 player adapter, but it currently crashes. I have had to disable 1541 as it prevents quick loading from working. [smf]
Diffstat (limited to 'src/emu/bus/c64/4tba.c')
-rw-r--r--src/emu/bus/c64/4tba.c54
1 files changed, 11 insertions, 43 deletions
diff --git a/src/emu/bus/c64/4tba.c b/src/emu/bus/c64/4tba.c
index 24ca8365782..45922de625a 100644
--- a/src/emu/bus/c64/4tba.c
+++ b/src/emu/bus/c64/4tba.c
@@ -28,20 +28,20 @@ const device_type C64_4TBA = &device_creator<c64_4tba_device>;
static INPUT_PORTS_START( c64_4tba )
PORT_START("SP2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF_OWNER, c64_user_port_device, cia_sp2_w)
+ PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(1) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_7)
PORT_START("PB")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) 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_LEFT ) PORT_8WAY PORT_PLAYER(1)
- PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1)
- PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2)
- PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) 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( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(1) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_c)
+ PORT_BIT( 0x02, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(1) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_d)
+ PORT_BIT( 0x04, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(1) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_e)
+ PORT_BIT( 0x08, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(1) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_f)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_BUTTON1 ) PORT_PLAYER(2) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_h)
+ PORT_BIT( 0x20, IP_ACTIVE_LOW, IPT_JOYSTICK_DOWN ) PORT_8WAY PORT_PLAYER(2) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_j)
+ PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_JOYSTICK_RIGHT ) PORT_8WAY PORT_PLAYER(2) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_k)
+ PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_JOYSTICK_LEFT ) PORT_8WAY PORT_PLAYER(2) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_l)
PORT_START("PA2")
- PORT_BIT( 0x01, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2)
+ PORT_BIT( 0x10, IP_ACTIVE_LOW, IPT_JOYSTICK_UP ) PORT_8WAY PORT_PLAYER(2) PORT_WRITE_LINE_DEVICE_MEMBER(DEVICE_SELF, device_vic20_user_port_interface, output_m)
INPUT_PORTS_END
@@ -66,9 +66,7 @@ ioport_constructor c64_4tba_device::device_input_ports() const
c64_4tba_device::c64_4tba_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock) :
device_t(mconfig, C64_4TBA, "C64 Tie Break Adapter", tag, owner, clock, "c64_4tba", __FILE__),
- device_c64_user_port_interface(mconfig, *this),
- m_pb(*this, "PB"),
- m_pa2(*this, "PA2")
+ device_vic20_user_port_interface(mconfig, *this)
{
}
@@ -80,33 +78,3 @@ c64_4tba_device::c64_4tba_device(const machine_config &mconfig, const char *tag,
void c64_4tba_device::device_start()
{
}
-
-
-//-------------------------------------------------
-// c64_pb_r - port B read
-//-------------------------------------------------
-
-UINT8 c64_4tba_device::c64_pb_r(address_space &space, offs_t offset)
-{
- return m_pb->read();
-}
-
-
-//-------------------------------------------------
-// c64_pb_w - port B write
-//-------------------------------------------------
-
-int c64_4tba_device::c64_pa2_r()
-{
- return BIT(m_pa2->read(), 0);
-}
-
-
-//-------------------------------------------------
-// c64_cnt1_w - CNT 1 write
-//-------------------------------------------------
-
-void c64_4tba_device::c64_cnt1_w(int level)
-{
- m_slot->cia_cnt2_w(level);
-}