summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author Sven Schnelle <svens@stackframe.org>2018-10-10 20:05:18 +0200
committer Sven Schnelle <svens@stackframe.org>2018-10-10 20:05:18 +0200
commit30639a32a428aa2546e386116c1776dc53ce6ee8 (patch)
treef2f4ff719f95e43a2bf3de6cddbacc4c3fd9c1a7
parentaa990898fb459309f4b3d68f044ba28939e72552 (diff)
hp98644: allow to configure interrupt level (nw)
-rw-r--r--src/devices/bus/hp_dio/hp98644.cpp5
-rw-r--r--src/mame/drivers/hp9k_3xx.cpp1
2 files changed, 3 insertions, 3 deletions
diff --git a/src/devices/bus/hp_dio/hp98644.cpp b/src/devices/bus/hp_dio/hp98644.cpp
index 09d70616ae7..efc93c3e834 100644
--- a/src/devices/bus/hp_dio/hp98644.cpp
+++ b/src/devices/bus/hp_dio/hp98644.cpp
@@ -87,7 +87,7 @@ static INPUT_PORTS_START(hp98644_port)
PORT_DIPSETTING(0x00, DEF_STR(Off))
PORT_DIPSETTING(REG_SWITCHES_MODEM_EN, DEF_STR(On))
- PORT_DIPNAME(REG_SWITCHES_INT_LEVEL_MASK << REG_SWITCHES_INT_LEVEL_SHIFT, 0x00, "Interrupt level")
+ PORT_DIPNAME(REG_SWITCHES_INT_LEVEL_MASK << REG_SWITCHES_INT_LEVEL_SHIFT, 0x02, "Interrupt level")
PORT_DIPSETTING(0 << REG_SWITCHES_INT_LEVEL_SHIFT, "3")
PORT_DIPSETTING(1 << REG_SWITCHES_INT_LEVEL_SHIFT, "4")
PORT_DIPSETTING(2 << REG_SWITCHES_INT_LEVEL_SHIFT, "5")
@@ -176,7 +176,8 @@ READ16_MEMBER(dio16_98644_device::io_r)
break;
case 1:
- ret = m_control | m_control << 8;
+ ret = m_control | m_control << 8 | \
+ (((m_switches->read() >> REG_SWITCHES_INT_LEVEL_SHIFT) & REG_SWITCHES_INT_LEVEL_MASK) << 4);
break;
case 0x08:
diff --git a/src/mame/drivers/hp9k_3xx.cpp b/src/mame/drivers/hp9k_3xx.cpp
index 5f857eea525..729179bec97 100644
--- a/src/mame/drivers/hp9k_3xx.cpp
+++ b/src/mame/drivers/hp9k_3xx.cpp
@@ -270,7 +270,6 @@ void hp9k3xx_state::machine_reset()
void hp9k3xx_state::machine_start()
{
m_bus_error_timer = timer_alloc(0);
- m_maincpu->set_reset_callback(write_line_delegate(FUNC(hp9k3xx_state::cpu_reset), this));
}
void hp9k3xx_state::device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr)