From ae0e5c124fb48f2c81c1419dd1fc616332e73c20 Mon Sep 17 00:00:00 2001 From: hap Date: Wed, 13 May 2020 13:50:56 +0200 Subject: [PATCH] sshot: correct cpu type (nw) --- src/devices/cpu/scmp/scmp.cpp | 5 +++-- src/devices/cpu/scmp/scmp.h | 2 +- src/mame/drivers/sshot.cpp | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/devices/cpu/scmp/scmp.cpp b/src/devices/cpu/scmp/scmp.cpp index bb19aef3536..fdcd8dd75fd 100644 --- a/src/devices/cpu/scmp/scmp.cpp +++ b/src/devices/cpu/scmp/scmp.cpp @@ -312,7 +312,7 @@ void scmp_device::execute_one(int opcode) m_AC = 0xff; break; // Others are illegal - default : m_icount -= 1; + default : m_icount -= 5; illegal (opcode); break; } @@ -444,7 +444,7 @@ void scmp_device::execute_one(int opcode) m_icount -= 5; break; // Others are illegal - default : m_icount -= 1; + default : m_icount -= 5; illegal (opcode); break; } @@ -455,6 +455,7 @@ void scmp_device::execute_one(int opcode) /*************************************************************************** COMMON EXECUTION ***************************************************************************/ + void scmp_device::take_interrupt() { uint16_t tmp = ADD12(m_PC.w.l,-1); // We fix PC so at return it goes to current location diff --git a/src/devices/cpu/scmp/scmp.h b/src/devices/cpu/scmp/scmp.h index db571d913b3..5d9167d65fd 100644 --- a/src/devices/cpu/scmp/scmp.h +++ b/src/devices/cpu/scmp/scmp.h @@ -34,7 +34,7 @@ protected: // device_execute_interface overrides virtual uint32_t execute_min_cycles() const noexcept override { return 5; } - virtual uint32_t execute_max_cycles() const noexcept override { return 131593; } + virtual uint32_t execute_max_cycles() const noexcept override { return 23+8; } // max opcode + interrupt virtual uint32_t execute_input_lines() const noexcept override { return 0; } virtual void execute_run() override; diff --git a/src/mame/drivers/sshot.cpp b/src/mame/drivers/sshot.cpp index a89b15239a6..3bd2517fd7c 100644 --- a/src/mame/drivers/sshot.cpp +++ b/src/mame/drivers/sshot.cpp @@ -348,7 +348,7 @@ GFXDECODE_END void supershot_state::supershot(machine_config &config) { /* basic machine hardware */ - SCMP(config, m_maincpu, XTAL(11'289'000)/4); + INS8060(config, m_maincpu, XTAL(11'289'000)/4); m_maincpu->set_addrmap(AS_PROGRAM, &supershot_state::supershot_map); /* video hardware */