From 4b9cef80f2de39c3812fe541ff048eee34a3d4cf Mon Sep 17 00:00:00 2001 From: Patrick Mackinlay Date: Thu, 17 Sep 2020 19:06:09 +0700 Subject: [PATCH] news_68k: incorporate dmac changes * NEWS-OS now boots and runs in serial console mode --- scripts/src/machine.lua | 11 +++++++++++ src/mame/drivers/news_68k.cpp | 6 +++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/scripts/src/machine.lua b/scripts/src/machine.lua index 600c22f2746..8d44ebae464 100644 --- a/scripts/src/machine.lua +++ b/scripts/src/machine.lua @@ -4546,3 +4546,14 @@ if (MACHINES["ALPHA_8921"]~=null) then MAME_DIR .. "src/devices/machine/alpha_8921.h", } end + +--------------------------------------------------- +-- +--@src/devices/machine/ns32202.h,MACHINES["NS32202"] = true +--------------------------------------------------- +if (MACHINES["NS32202"]~=null) then + files { + MAME_DIR .. "src/devices/machine/ns32202.cpp", + MAME_DIR .. "src/devices/machine/ns32202.h", + } +end diff --git a/src/mame/drivers/news_68k.cpp b/src/mame/drivers/news_68k.cpp index 8c6900ada66..961f9f2beea 100644 --- a/src/mame/drivers/news_68k.cpp +++ b/src/mame/drivers/news_68k.cpp @@ -336,7 +336,6 @@ void news_68k_state::common(machine_config &config) DMAC_0266(config, m_dma, 0); m_dma->set_bus(m_cpu, 0); - m_dma->out_int_cb().set(*this, FUNC(news_68k_state::irq_w)); INPUT_MERGER_ANY_HIGH(config, m_irq5); m_irq5->output_handler().set_inputline(m_cpu, INPUT_LINE_IRQ5); @@ -402,8 +401,9 @@ void news_68k_state::common(machine_config &config) { cxd1180_device &adapter = downcast(*device); - adapter.irq_handler().set(m_dma, FUNC(dmac_0266_device::irq_w)); - adapter.drq_handler().set(m_dma, FUNC(dmac_0266_device::drq_w)); + adapter.irq_handler().set(*this, FUNC(news_68k_state::irq_w)); + adapter.irq_handler().append(m_dma, FUNC(dmac_0266_device::eop_w)); + adapter.drq_handler().set(m_dma, FUNC(dmac_0266_device::req_w)); subdevice(":dma")->dma_r_cb().set(adapter, FUNC(cxd1180_device::dma_r)); subdevice(":dma")->dma_w_cb().set(adapter, FUNC(cxd1180_device::dma_w));