diff options
author | 2018-12-08 06:32:14 +0100 | |
---|---|---|
committer | 2018-12-08 06:32:26 +0100 | |
commit | 185856f28fd262ceab68701537334f98c9ff19a5 (patch) | |
tree | 283fa18562efebf7f673731e8acbbd121cbc6bbc /src/mame/drivers/spcforce.cpp | |
parent | d658e02bbaadd9b723acaf0da786cc61d45681d4 (diff) |
mcs48: Removed MCFG, nw
Diffstat (limited to 'src/mame/drivers/spcforce.cpp')
-rw-r--r-- | src/mame/drivers/spcforce.cpp | 33 |
1 files changed, 16 insertions, 17 deletions
diff --git a/src/mame/drivers/spcforce.cpp b/src/mame/drivers/spcforce.cpp index beb5b84f011..306b0abb6cb 100644 --- a/src/mame/drivers/spcforce.cpp +++ b/src/mame/drivers/spcforce.cpp @@ -39,7 +39,6 @@ TODO: #include "includes/spcforce.h" #include "cpu/i8085/i8085.h" -#include "cpu/mcs48/mcs48.h" #include "machine/gen_latch.h" #include "emupal.h" #include "screen.h" @@ -58,7 +57,7 @@ void spcforce_state::machine_start() save_item(NAME(m_irq_mask)); } -WRITE8_MEMBER(spcforce_state::SN76496_latch_w) +WRITE8_MEMBER(spcforce_state::sn76496_latch_w) { m_sn76496_latch = data; } @@ -78,22 +77,22 @@ WRITE_LINE_MEMBER(spcforce_state::write_sn3_ready) m_sn3_ready = state; } -READ8_MEMBER(spcforce_state::SN76496_select_r) +READ8_MEMBER(spcforce_state::sn76496_select_r) { - if (~m_sn76496_select & 0x40) return m_sn1_ready; - if (~m_sn76496_select & 0x20) return m_sn2_ready; - if (~m_sn76496_select & 0x10) return m_sn3_ready; + if (!BIT(m_sn76496_select, 6)) return m_sn1_ready; + if (!BIT(m_sn76496_select, 5)) return m_sn2_ready; + if (!BIT(m_sn76496_select, 4)) return m_sn3_ready; return 0; } -WRITE8_MEMBER(spcforce_state::SN76496_select_w) +WRITE8_MEMBER(spcforce_state::sn76496_select_w) { m_sn76496_select = data; - if (~data & 0x40) m_sn1->write(m_sn76496_latch); - if (~data & 0x20) m_sn2->write(m_sn76496_latch); - if (~data & 0x10) m_sn3->write(m_sn76496_latch); + if (!BIT(data, 6)) m_sn1->write(m_sn76496_latch); + if (!BIT(data, 5)) m_sn2->write(m_sn76496_latch); + if (!BIT(data, 4)) m_sn3->write(m_sn76496_latch); } READ_LINE_MEMBER(spcforce_state::t0_r) @@ -291,13 +290,13 @@ MACHINE_CONFIG_START(spcforce_state::spcforce) MCFG_DEVICE_PROGRAM_MAP(spcforce_map) MCFG_DEVICE_VBLANK_INT_DRIVER("screen", spcforce_state, vblank_irq) - MCFG_DEVICE_ADD("audiocpu", I8035, 6144000) /* divisor ??? */ - MCFG_DEVICE_PROGRAM_MAP(spcforce_sound_map) - MCFG_MCS48_PORT_BUS_IN_CB(READ8("soundlatch", generic_latch_8_device, read)) - MCFG_MCS48_PORT_P1_OUT_CB(WRITE8(*this, spcforce_state, SN76496_latch_w)) - MCFG_MCS48_PORT_P2_IN_CB(READ8(*this, spcforce_state, SN76496_select_r)) - MCFG_MCS48_PORT_P2_OUT_CB(WRITE8(*this, spcforce_state, SN76496_select_w)) - MCFG_MCS48_PORT_T0_IN_CB(READLINE(*this, spcforce_state, t0_r)) + I8035(config, m_audiocpu, 6144000); /* divisor ??? */ + m_audiocpu->set_addrmap(AS_PROGRAM, &spcforce_state::spcforce_sound_map); + m_audiocpu->bus_in_cb().set("soundlatch", FUNC(generic_latch_8_device::read)); + m_audiocpu->p1_out_cb().set(FUNC(spcforce_state::sn76496_latch_w)); + m_audiocpu->p2_in_cb().set(FUNC(spcforce_state::sn76496_select_r)); + m_audiocpu->p2_out_cb().set(FUNC(spcforce_state::sn76496_select_w)); + m_audiocpu->t0_in_cb().set(FUNC(spcforce_state::t0_r)); LS259(config, m_mainlatch); m_mainlatch->q_out_cb<3>().set(FUNC(spcforce_state::flip_screen_w)); |