From 8edb024d0d7a0fc5afde09c9460ece0d7015e685 Mon Sep 17 00:00:00 2001 From: David Haywood Date: Mon, 25 Jan 2016 15:20:07 +0000 Subject: [PATCH] fix sfrush regression (nw) --- src/mame/machine/midwayic.cpp | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/src/mame/machine/midwayic.cpp b/src/mame/machine/midwayic.cpp index 2d848da5d0f..6761ab89289 100644 --- a/src/mame/machine/midwayic.cpp +++ b/src/mame/machine/midwayic.cpp @@ -645,11 +645,15 @@ void midway_ioasic_device::device_start() m_cage = machine().device("cage"); m_has_cage = (m_cage != nullptr); - m_dcs_cpu = m_dcs->subdevice("dcs2"); - if (m_dcs_cpu == nullptr) - m_dcs_cpu = m_dcs->subdevice("dsio"); - if (m_dcs_cpu == nullptr) - m_dcs_cpu = m_dcs->subdevice("denver"); + if (m_has_dcs) + { + m_dcs_cpu = m_dcs->subdevice("dcs2"); + if (m_dcs_cpu == nullptr) + m_dcs_cpu = m_dcs->subdevice("dsio"); + if (m_dcs_cpu == nullptr) + m_dcs_cpu = m_dcs->subdevice("denver"); + } + m_shuffle_map = &shuffle_maps[m_shuffle_type][0]; // resolve callbacks m_irq_callback.resolve_safe(); @@ -662,6 +666,7 @@ void midway_ioasic_device::device_start() m_reg[IOASIC_SOUNDCTL] = 0x0001; + /* configure the fifo */ if (m_has_dcs) { @@ -671,6 +676,7 @@ void midway_ioasic_device::device_start() m_dcs->set_io_callbacks(write_line_delegate(FUNC(midway_ioasic_device::ioasic_output_full),this), write_line_delegate(FUNC(midway_ioasic_device::ioasic_input_empty),this)); } + fifo_reset_w(1); }