From f0c72dc1aaed2f2a12295f1adbabcdc754dd2e08 Mon Sep 17 00:00:00 2001 From: AJR Date: Mon, 11 Mar 2019 22:46:36 -0400 Subject: i186: Add interrupt controller registers to debugger state --- src/devices/cpu/i86/i186.cpp | 12 ++++++++++++ src/devices/cpu/i86/i186.h | 7 ++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/src/devices/cpu/i86/i186.cpp b/src/devices/cpu/i86/i186.cpp index 8cbabf2a4ab..48329288bf5 100644 --- a/src/devices/cpu/i86/i186.cpp +++ b/src/devices/cpu/i86/i186.cpp @@ -603,6 +603,18 @@ void i80186_cpu_device::device_start() state_add( I80186_T_COUNT + 2, "T2_COUNT", m_timer[2].count ).formatstr("%04X"); state_add( I80186_T_MAX_A + 2, "T2_MAX", m_timer[2].maxA ).formatstr("%04X"); state_add( I80186_T_CONTROL + 2, "T2_CONTROL", m_timer[2].control ).formatstr("%04X"); + state_add( I80186_ISR, "ISR", m_intr.in_service ).formatstr("%04X"); + state_add( I80186_IRR, "IRR", m_intr.request ).formatstr("%04X"); + state_add( I80186_PMR, "PMR", m_intr.priority_mask ).formatstr("%04X"); + state_add( I80186_ICSR, "ICSR", m_intr.status ).formatstr("%04X"); + state_add( I80186_TMRCR, "TMRCR", m_intr.timer ).formatstr("%04X"); + state_add( I80186_D0CR, "D0CR", m_intr.dma[0] ).formatstr("%04X"); + state_add( I80186_D1CR, "D1CR", m_intr.dma[1] ).formatstr("%04X"); + state_add( I80186_I0CR, "I0CR", m_intr.ext[0] ).formatstr("%04X"); + state_add( I80186_I1CR, "I1CR", m_intr.ext[1] ).formatstr("%04X"); + state_add( I80186_I2CR, "I2CR", m_intr.ext[2] ).formatstr("%04X"); + state_add( I80186_I3CR, "I3CR", m_intr.ext[3] ).formatstr("%04X"); + state_add( I80186_POLL, "POLL", m_intr.poll_status ).formatstr("%04X"); // register for savestates save_item(NAME(m_timer[0].control)); diff --git a/src/devices/cpu/i86/i186.h b/src/devices/cpu/i86/i186.h index f16f1fac8cf..a968f5ef3dd 100644 --- a/src/devices/cpu/i86/i186.h +++ b/src/devices/cpu/i86/i186.h @@ -46,7 +46,12 @@ protected: I80186_T_COUNT = I80186_DMA_CR + 2, I80186_T_MAX_A = I80186_T_COUNT + 3, I80186_T_MAX_B = I80186_T_MAX_A + 3, - I80186_T_CONTROL = I80186_T_MAX_B + 2 + I80186_T_CONTROL = I80186_T_MAX_B + 2, + I80186_ISR = I80186_T_CONTROL + 3, + I80186_IRR, I80186_PMR, I80186_ICSR, + I80186_TMRCR, I80186_D0CR, I80186_D1CR, + I80186_I0CR, I80186_I1CR, I80186_I2CR, I80186_I3CR, + I80186_POLL }; i80186_cpu_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock, int data_bus_size); -- cgit v1.2.3