diff options
author | 2019-05-15 23:07:24 +0200 | |
---|---|---|
committer | 2019-05-15 23:07:24 +0200 | |
commit | 6d445048994f50afb95df749cb90a6b47920fd20 (patch) | |
tree | e435741506527152070da1025b210305a3db6888 | |
parent | 13c3ec0f0079a1a5e6e77640b8d503a6dd6e6cf9 (diff) |
tms9901: Ensure that the INT3 input is disabled when the clock is enabled.
-rw-r--r-- | src/devices/machine/tms9901.cpp | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/devices/machine/tms9901.cpp b/src/devices/machine/tms9901.cpp index 7f85114128a..bb7148a91a6 100644 --- a/src/devices/machine/tms9901.cpp +++ b/src/devices/machine/tms9901.cpp @@ -188,11 +188,18 @@ void tms9901_device::prioritize_interrupts() // Skip the rightmost bit uint16_t masked_ints = m_int_line; - // Do we have a timer interrupt? - if (m_clock_register != 0 && m_timer_int_pending) + // Is the clock enabled? + if (m_clock_register != 0) { - masked_ints |= (1<<INT3); - LOGMASKED(LOG_INT, "INT3 (timer) asserted\n"); + // Disable the actual INT3* input + masked_ints &= ~(1<<INT3); + + // Do we have a clock interrupt? + if (m_timer_int_pending) + { + masked_ints |= (1<<INT3); + LOGMASKED(LOG_INT, "INT3 (timer) asserted\n"); + } } m_int_level = 1; |