diff options
author | 2014-02-21 09:51:59 +0000 | |
---|---|---|
committer | 2014-02-21 09:51:59 +0000 | |
commit | ab02ed5e2d53f007be1ea38095760063cb0dc7eb (patch) | |
tree | f83594a869b72a2eeed070abb72b0b8cc56677ed /src/emu/bus/c64 | |
parent | c386707cc7c4e08d79dd7442968c7402ce58e818 (diff) |
Rewritten 6850 based on datasheet using external CLOCK & removed MIDI clock hacks. Standardised COM8116 DEVCB2 callbacks. GUS gf1_device device derives from acia6850_device to gain access to the tx & rx irq state, rather than exposing it with a public method. [smf]
Diffstat (limited to 'src/emu/bus/c64')
-rw-r--r-- | src/emu/bus/c64/midi_maplin.c | 42 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_maplin.h | 4 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_namesoft.c | 42 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_namesoft.h | 5 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_passport.c | 43 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_passport.h | 4 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_sci.c | 42 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_sci.h | 4 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_siel.c | 42 | ||||
-rw-r--r-- | src/emu/bus/c64/midi_siel.h | 4 |
10 files changed, 87 insertions, 145 deletions
diff --git a/src/emu/bus/c64/midi_maplin.c b/src/emu/bus/c64/midi_maplin.c index df6830064c2..50887818c39 100644 --- a/src/emu/bus/c64/midi_maplin.c +++ b/src/emu/bus/c64/midi_maplin.c @@ -10,6 +10,7 @@ **********************************************************************/ #include "midi_maplin.h" +#include "machine/clock.h" #include "bus/midi/midi.h" #include "bus/midi/midiinport.h" #include "bus/midi/midioutport.h" @@ -31,25 +32,11 @@ const device_type C64_MIDI_MAPLIN = &device_creator<c64_maplin_midi_cartridge_device>; -//------------------------------------------------- -// ACIA6850_INTERFACE( acia_intf ) -//------------------------------------------------- - WRITE_LINE_MEMBER( c64_maplin_midi_cartridge_device::acia_irq_w ) { m_slot->irq_w(state); } -static ACIA6850_INTERFACE( acia_intf ) -{ - 500000, - 0, // rx clock (we manually clock rx) - DEVCB_DEVICE_LINE_MEMBER("mdout", midi_port_device, write_txd), - DEVCB_NULL, - DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, c64_maplin_midi_cartridge_device, acia_irq_w) -}; - - //------------------------------------------------- // SLOT_INTERFACE( midiin_slot ) //------------------------------------------------- @@ -58,14 +45,10 @@ static SLOT_INTERFACE_START( midiin_slot ) SLOT_INTERFACE("midiin", MIDIIN_PORT) SLOT_INTERFACE_END -WRITE_LINE_MEMBER( c64_maplin_midi_cartridge_device::midi_rx_w ) +WRITE_LINE_MEMBER( c64_maplin_midi_cartridge_device::write_acia_clock ) { - m_acia->write_rx(state); - - for (int i = 0; i < 16; i++) // divider is set to 64 - { - m_acia->rx_clock_in(); - } + m_acia->write_txc(state); + m_acia->write_rxc(state); } @@ -83,12 +66,17 @@ SLOT_INTERFACE_END //------------------------------------------------- static MACHINE_CONFIG_FRAGMENT( c64_maplin_midi ) - MCFG_ACIA6850_ADD(MC6850_TAG, acia_intf) + MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) + MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) + MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_maplin_midi_cartridge_device, acia_irq_w)) MCFG_MIDI_PORT_ADD("mdin", midiin_slot, "midiin") - MCFG_MIDI_RX_HANDLER(DEVWRITELINE(DEVICE_SELF, c64_maplin_midi_cartridge_device, midi_rx_w)) + MCFG_MIDI_RX_HANDLER(DEVWRITELINE(MC6850_TAG, acia6850_device, write_rxd)) MCFG_MIDI_PORT_ADD("mdout", midiout_slot, "midiout") + + MCFG_DEVICE_ADD("acia_clock", CLOCK, 31250*16) + MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(c64_maplin_midi_cartridge_device, write_acia_clock)) MACHINE_CONFIG_END @@ -151,11 +139,11 @@ UINT8 c64_maplin_midi_cartridge_device::c64_cd_r(address_space &space, offs_t of switch (offset & 0xff) { case 0: - data = m_acia->status_read(space, 0); + data = m_acia->status_r(space, 0); break; case 1: - data = m_acia->data_read(space, 0); + data = m_acia->data_r(space, 0); break; } } @@ -175,11 +163,11 @@ void c64_maplin_midi_cartridge_device::c64_cd_w(address_space &space, offs_t off switch (offset & 0xff) { case 0: - m_acia->control_write(space, 0, data); + m_acia->control_w(space, 0, data); break; case 1: - m_acia->data_write(space, 0, data); + m_acia->data_w(space, 0, data); break; } } diff --git a/src/emu/bus/c64/midi_maplin.h b/src/emu/bus/c64/midi_maplin.h index c9ddf94dbe4..27f7720e08e 100644 --- a/src/emu/bus/c64/midi_maplin.h +++ b/src/emu/bus/c64/midi_maplin.h @@ -26,7 +26,7 @@ // ======================> c64_maplin_midi_cartridge_device class c64_maplin_midi_cartridge_device : public device_t, - public device_c64_expansion_card_interface + public device_c64_expansion_card_interface { public: // construction/destruction @@ -36,7 +36,7 @@ public: virtual machine_config_constructor device_mconfig_additions() const; DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( midi_rx_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); protected: // device-level overrides diff --git a/src/emu/bus/c64/midi_namesoft.c b/src/emu/bus/c64/midi_namesoft.c index aea458cbd5a..f594a415882 100644 --- a/src/emu/bus/c64/midi_namesoft.c +++ b/src/emu/bus/c64/midi_namesoft.c @@ -10,6 +10,7 @@ **********************************************************************/ #include "midi_namesoft.h" +#include "machine/clock.h" #include "bus/midi/midi.h" #include "bus/midi/midiinport.h" #include "bus/midi/midioutport.h" @@ -31,25 +32,11 @@ const device_type C64_MIDI_NAMESOFT = &device_creator<c64_namesoft_midi_cartridge_device>; -//------------------------------------------------- -// ACIA6850_INTERFACE( acia_intf ) -//------------------------------------------------- - WRITE_LINE_MEMBER( c64_namesoft_midi_cartridge_device::acia_irq_w ) { m_slot->nmi_w(state); } -static ACIA6850_INTERFACE( acia_intf ) -{ - 500000, - 0, // rx clock (we manually clock rx) - DEVCB_DEVICE_LINE_MEMBER("mdout", midi_port_device, write_txd), - DEVCB_NULL, - DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, c64_namesoft_midi_cartridge_device, acia_irq_w) -}; - - //------------------------------------------------- // SLOT_INTERFACE( midiin_slot ) //------------------------------------------------- @@ -58,14 +45,10 @@ static SLOT_INTERFACE_START( midiin_slot ) SLOT_INTERFACE("midiin", MIDIIN_PORT) SLOT_INTERFACE_END -WRITE_LINE_MEMBER( c64_namesoft_midi_cartridge_device::midi_rx_w ) +WRITE_LINE_MEMBER( c64_namesoft_midi_cartridge_device::write_acia_clock ) { - m_acia->write_rx(state); - - for (int i = 0; i < 16; i++) // divider is set to 16 - { - m_acia->rx_clock_in(); - } + m_acia->write_txc(state); + m_acia->write_rxc(state); } @@ -83,12 +66,17 @@ SLOT_INTERFACE_END //------------------------------------------------- static MACHINE_CONFIG_FRAGMENT( c64_passport_midi ) - MCFG_ACIA6850_ADD(MC6850_TAG, acia_intf) + MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) + MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) + MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_namesoft_midi_cartridge_device, acia_irq_w)) MCFG_MIDI_PORT_ADD("mdin", midiin_slot, "midiin") - MCFG_MIDI_RX_HANDLER(DEVWRITELINE(DEVICE_SELF, c64_namesoft_midi_cartridge_device, midi_rx_w)) + MCFG_MIDI_RX_HANDLER(DEVWRITELINE(MC6850_TAG, acia6850_device, write_rxd)) MCFG_MIDI_PORT_ADD("mdout", midiout_slot, "midiout") + + MCFG_DEVICE_ADD("acia_clock", CLOCK, 31250*16) + MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(c64_namesoft_midi_cartridge_device, write_acia_clock)) MACHINE_CONFIG_END @@ -149,11 +137,11 @@ UINT8 c64_namesoft_midi_cartridge_device::c64_cd_r(address_space &space, offs_t switch (offset & 0xff) { case 2: - data = m_acia->status_read(space, 0); + data = m_acia->status_r(space, 0); break; case 3: - data = m_acia->data_read(space, 0); + data = m_acia->data_r(space, 0); break; } } @@ -173,11 +161,11 @@ void c64_namesoft_midi_cartridge_device::c64_cd_w(address_space &space, offs_t o switch (offset & 0xff) { case 0: - m_acia->control_write(space, 0, data); + m_acia->control_w(space, 0, data); break; case 1: - m_acia->data_write(space, 0, data); + m_acia->data_w(space, 0, data); break; } } diff --git a/src/emu/bus/c64/midi_namesoft.h b/src/emu/bus/c64/midi_namesoft.h index 547fee0140a..65c42385b9a 100644 --- a/src/emu/bus/c64/midi_namesoft.h +++ b/src/emu/bus/c64/midi_namesoft.h @@ -26,7 +26,7 @@ // ======================> c64_namesoft_midi_cartridge_device class c64_namesoft_midi_cartridge_device : public device_t, - public device_c64_expansion_card_interface + public device_c64_expansion_card_interface { public: // construction/destruction @@ -36,7 +36,8 @@ public: virtual machine_config_constructor device_mconfig_additions() const; DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( midi_rx_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); + protected: // device-level overrides virtual void device_start(); diff --git a/src/emu/bus/c64/midi_passport.c b/src/emu/bus/c64/midi_passport.c index e28b0182553..e31203093d7 100644 --- a/src/emu/bus/c64/midi_passport.c +++ b/src/emu/bus/c64/midi_passport.c @@ -10,6 +10,7 @@ **********************************************************************/ #include "midi_passport.h" +#include "machine/clock.h" #include "bus/midi/midi.h" #include "bus/midi/midiinport.h" #include "bus/midi/midioutport.h" @@ -52,10 +53,6 @@ static const ptm6840_interface ptm_intf = }; -//------------------------------------------------- -// ACIA6850_INTERFACE( acia_intf ) -//------------------------------------------------- - WRITE_LINE_MEMBER( c64_passport_midi_cartridge_device::acia_irq_w ) { m_acia_irq = state; @@ -63,16 +60,6 @@ WRITE_LINE_MEMBER( c64_passport_midi_cartridge_device::acia_irq_w ) m_slot->irq_w(m_ptm_irq || m_acia_irq); } -static ACIA6850_INTERFACE( acia_intf ) -{ - 500000, - 0, // rx clock (we manually clock rx) - DEVCB_DEVICE_LINE_MEMBER("mdout", midi_port_device, write_txd), - DEVCB_NULL, - DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, c64_passport_midi_cartridge_device, acia_irq_w) -}; - - //------------------------------------------------- // SLOT_INTERFACE( midiin_slot ) //------------------------------------------------- @@ -81,14 +68,10 @@ static SLOT_INTERFACE_START( midiin_slot ) SLOT_INTERFACE("midiin", MIDIIN_PORT) SLOT_INTERFACE_END -WRITE_LINE_MEMBER( c64_passport_midi_cartridge_device::midi_rx_w ) +WRITE_LINE_MEMBER( c64_passport_midi_cartridge_device::write_acia_clock ) { - m_acia->write_rx(state); - - for (int i = 0; i < 16; i++) // divider is set to 16 - { - m_acia->rx_clock_in(); - } + m_acia->write_txc(state); + m_acia->write_rxc(state); } @@ -106,13 +89,19 @@ SLOT_INTERFACE_END //------------------------------------------------- static MACHINE_CONFIG_FRAGMENT( c64_passport_midi ) - MCFG_ACIA6850_ADD(MC6850_TAG, acia_intf) + MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) + MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) + MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_passport_midi_cartridge_device, acia_irq_w)) + MCFG_PTM6840_ADD(MC6840_TAG, ptm_intf) MCFG_MIDI_PORT_ADD("mdin", midiin_slot, "midiin") - MCFG_MIDI_RX_HANDLER(DEVWRITELINE(DEVICE_SELF, c64_passport_midi_cartridge_device, midi_rx_w)) + MCFG_MIDI_RX_HANDLER(DEVWRITELINE(MC6850_TAG, acia6850_device, write_rxd)) MCFG_MIDI_PORT_ADD("mdout", midiout_slot, "midiout") + + MCFG_DEVICE_ADD("acia_clock", CLOCK, 31250*16) /// TODO: work out if the clock should come from the 6840 + MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(c64_passport_midi_cartridge_device, write_acia_clock)) MACHINE_CONFIG_END @@ -186,11 +175,11 @@ UINT8 c64_passport_midi_cartridge_device::c64_cd_r(address_space &space, offs_t break; case 8: - data = m_acia->status_read(space, 0); + data = m_acia->status_r(space, 0); break; case 9: - data = m_acia->data_read(space, 0); + data = m_acia->data_r(space, 0); break; } } @@ -215,11 +204,11 @@ void c64_passport_midi_cartridge_device::c64_cd_w(address_space &space, offs_t o break; case 8: - m_acia->control_write(space, 0, data); + m_acia->control_w(space, 0, data); break; case 9: - m_acia->data_write(space, 0, data); + m_acia->data_w(space, 0, data); break; case 0x30: diff --git a/src/emu/bus/c64/midi_passport.h b/src/emu/bus/c64/midi_passport.h index a126e97d56d..80dcc48d493 100644 --- a/src/emu/bus/c64/midi_passport.h +++ b/src/emu/bus/c64/midi_passport.h @@ -27,7 +27,7 @@ // ======================> c64_passport_midi_cartridge_device class c64_passport_midi_cartridge_device : public device_t, - public device_c64_expansion_card_interface + public device_c64_expansion_card_interface { public: // construction/destruction @@ -38,7 +38,7 @@ public: DECLARE_WRITE_LINE_MEMBER( ptm_irq_w ); DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( midi_rx_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); protected: // device-level overrides diff --git a/src/emu/bus/c64/midi_sci.c b/src/emu/bus/c64/midi_sci.c index ef39829bfb7..b1fc4021496 100644 --- a/src/emu/bus/c64/midi_sci.c +++ b/src/emu/bus/c64/midi_sci.c @@ -10,6 +10,7 @@ **********************************************************************/ #include "midi_sci.h" +#include "machine/clock.h" #include "bus/midi/midi.h" #include "bus/midi/midiinport.h" #include "bus/midi/midioutport.h" @@ -31,25 +32,11 @@ const device_type C64_MIDI_SCI = &device_creator<c64_sequential_midi_cartridge_device>; -//------------------------------------------------- -// ACIA6850_INTERFACE( acia_intf ) -//------------------------------------------------- - WRITE_LINE_MEMBER( c64_sequential_midi_cartridge_device::acia_irq_w ) { m_slot->irq_w(state); } -static ACIA6850_INTERFACE( acia_intf ) -{ - 500000, - 0, // rx clock (we manually clock rx) - DEVCB_DEVICE_LINE_MEMBER("mdout", midi_port_device, write_txd), - DEVCB_NULL, - DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, c64_sequential_midi_cartridge_device, acia_irq_w) -}; - - //------------------------------------------------- // SLOT_INTERFACE( midiin_slot ) //------------------------------------------------- @@ -58,14 +45,10 @@ static SLOT_INTERFACE_START( midiin_slot ) SLOT_INTERFACE("midiin", MIDIIN_PORT) SLOT_INTERFACE_END -WRITE_LINE_MEMBER( c64_sequential_midi_cartridge_device::midi_rx_w ) +WRITE_LINE_MEMBER( c64_sequential_midi_cartridge_device::write_acia_clock ) { - m_acia->write_rx(state); - - for (int i = 0; i < 16; i++) // divider is set to 16 - { - m_acia->rx_clock_in(); - } + m_acia->write_txc(state); + m_acia->write_rxc(state); } @@ -83,12 +66,17 @@ SLOT_INTERFACE_END //------------------------------------------------- static MACHINE_CONFIG_FRAGMENT( c64_sequential_midi ) - MCFG_ACIA6850_ADD(MC6850_TAG, acia_intf) + MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) + MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) + MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_sequential_midi_cartridge_device, acia_irq_w)) MCFG_MIDI_PORT_ADD("mdin", midiin_slot, "midiin") - MCFG_MIDI_RX_HANDLER(DEVWRITELINE(DEVICE_SELF, c64_sequential_midi_cartridge_device, midi_rx_w)) + MCFG_MIDI_RX_HANDLER(DEVWRITELINE(MC6850_TAG, acia6850_device, write_rxd)) MCFG_MIDI_PORT_ADD("mdout", midiout_slot, "midiout") + + MCFG_DEVICE_ADD("acia_clock", CLOCK, 31250*16) + MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(c64_sequential_midi_cartridge_device, write_acia_clock)) MACHINE_CONFIG_END @@ -150,11 +138,11 @@ UINT8 c64_sequential_midi_cartridge_device::c64_cd_r(address_space &space, offs_ switch (offset & 0xff) { case 2: - data = m_acia->status_read(space, 0); + data = m_acia->status_r(space, 0); break; case 3: - data = m_acia->data_read(space, 0); + data = m_acia->data_r(space, 0); break; } } @@ -174,11 +162,11 @@ void c64_sequential_midi_cartridge_device::c64_cd_w(address_space &space, offs_t switch (offset & 0xff) { case 0: - m_acia->control_write(space, 0, data); + m_acia->control_w(space, 0, data); break; case 1: - m_acia->data_write(space, 0, data); + m_acia->data_w(space, 0, data); break; } } diff --git a/src/emu/bus/c64/midi_sci.h b/src/emu/bus/c64/midi_sci.h index 1f5010ff3c6..e284cf61097 100644 --- a/src/emu/bus/c64/midi_sci.h +++ b/src/emu/bus/c64/midi_sci.h @@ -26,7 +26,7 @@ // ======================> c64_sequential_midi_cartridge_device class c64_sequential_midi_cartridge_device : public device_t, - public device_c64_expansion_card_interface + public device_c64_expansion_card_interface { public: // construction/destruction @@ -36,7 +36,7 @@ public: virtual machine_config_constructor device_mconfig_additions() const; DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( midi_rx_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); protected: // device-level overrides diff --git a/src/emu/bus/c64/midi_siel.c b/src/emu/bus/c64/midi_siel.c index 7acda555651..61af7677ded 100644 --- a/src/emu/bus/c64/midi_siel.c +++ b/src/emu/bus/c64/midi_siel.c @@ -10,6 +10,7 @@ **********************************************************************/ #include "midi_siel.h" +#include "machine/clock.h" #include "bus/midi/midi.h" #include "bus/midi/midiinport.h" #include "bus/midi/midioutport.h" @@ -31,25 +32,11 @@ const device_type C64_MIDI_SIEL = &device_creator<c64_siel_midi_cartridge_device>; -//------------------------------------------------- -// ACIA6850_INTERFACE( acia_intf ) -//------------------------------------------------- - WRITE_LINE_MEMBER( c64_siel_midi_cartridge_device::acia_irq_w ) { m_slot->irq_w(state); } -static ACIA6850_INTERFACE( acia_intf ) -{ - XTAL_2MHz, - 0, // rx clock (we manually clock rx) - DEVCB_DEVICE_LINE_MEMBER("mdout", midi_port_device, write_txd), - DEVCB_NULL, - DEVCB_DEVICE_LINE_MEMBER(DEVICE_SELF_OWNER, c64_siel_midi_cartridge_device, acia_irq_w) -}; - - //------------------------------------------------- // SLOT_INTERFACE( midiin_slot ) //------------------------------------------------- @@ -58,14 +45,10 @@ static SLOT_INTERFACE_START( midiin_slot ) SLOT_INTERFACE("midiin", MIDIIN_PORT) SLOT_INTERFACE_END -WRITE_LINE_MEMBER( c64_siel_midi_cartridge_device::midi_rx_w ) +WRITE_LINE_MEMBER( c64_siel_midi_cartridge_device::write_acia_clock ) { - m_acia->write_rx(state); - - for (int i = 0; i < 64; i++) // divider is set to 64 - { - m_acia->rx_clock_in(); - } + m_acia->write_txc(state); + m_acia->write_rxc(state); } @@ -83,12 +66,17 @@ SLOT_INTERFACE_END //------------------------------------------------- static MACHINE_CONFIG_FRAGMENT( c64_siel_midi ) - MCFG_ACIA6850_ADD(MC6850_TAG, acia_intf) + MCFG_DEVICE_ADD(MC6850_TAG, ACIA6850, 0) + MCFG_ACIA6850_TXD_HANDLER(DEVWRITELINE("mdout", midi_port_device, write_txd)) + MCFG_ACIA6850_IRQ_HANDLER(WRITELINE(c64_siel_midi_cartridge_device, acia_irq_w)) MCFG_MIDI_PORT_ADD("mdin", midiin_slot, "midiin") - MCFG_MIDI_RX_HANDLER(DEVWRITELINE(DEVICE_SELF, c64_siel_midi_cartridge_device, midi_rx_w)) + MCFG_MIDI_RX_HANDLER(DEVWRITELINE(MC6850_TAG, acia6850_device, write_rxd)) MCFG_MIDI_PORT_ADD("mdout", midiout_slot, "midiout") + + MCFG_DEVICE_ADD("acia_clock", CLOCK, 31250*16) + MCFG_CLOCK_SIGNAL_HANDLER(WRITELINE(c64_siel_midi_cartridge_device, write_acia_clock)) MACHINE_CONFIG_END @@ -151,11 +139,11 @@ UINT8 c64_siel_midi_cartridge_device::c64_cd_r(address_space &space, offs_t offs switch (offset & 0xff) { case 6: - data = m_acia->status_read(space, 0); + data = m_acia->status_r(space, 0); break; case 7: - data = m_acia->data_read(space, 0); + data = m_acia->data_r(space, 0); break; } } @@ -175,11 +163,11 @@ void c64_siel_midi_cartridge_device::c64_cd_w(address_space &space, offs_t offse switch (offset & 0xff) { case 4: - m_acia->control_write(space, 0, data); + m_acia->control_w(space, 0, data); break; case 5: - m_acia->data_write(space, 0, data); + m_acia->data_w(space, 0, data); break; } } diff --git a/src/emu/bus/c64/midi_siel.h b/src/emu/bus/c64/midi_siel.h index a4682c488b9..fde6c048afd 100644 --- a/src/emu/bus/c64/midi_siel.h +++ b/src/emu/bus/c64/midi_siel.h @@ -26,7 +26,7 @@ // ======================> c64_siel_midi_cartridge_device class c64_siel_midi_cartridge_device : public device_t, - public device_c64_expansion_card_interface + public device_c64_expansion_card_interface { public: // construction/destruction @@ -36,7 +36,7 @@ public: virtual machine_config_constructor device_mconfig_additions() const; DECLARE_WRITE_LINE_MEMBER( acia_irq_w ); - DECLARE_WRITE_LINE_MEMBER( midi_rx_w ); + DECLARE_WRITE_LINE_MEMBER( write_acia_clock ); protected: // device-level overrides |