diff options
author | 2015-08-16 10:22:13 +0200 | |
---|---|---|
committer | 2015-08-16 10:26:27 +0200 | |
commit | 0f5344075d2133b6d281ab4186562171a1b7869e (patch) | |
tree | 38942868ced7fa42abfaea653482c280f352c5a9 /src | |
parent | 12599ac604ebc7ff92898751e184a135e06d64c7 (diff) |
k051960: irq enable is actually irq ack
Diffstat (limited to 'src')
-rw-r--r-- | src/mame/video/k051960.c | 16 | ||||
-rw-r--r-- | src/mame/video/k051960.h | 3 |
2 files changed, 5 insertions, 14 deletions
diff --git a/src/mame/video/k051960.c b/src/mame/video/k051960.c index ff895b5bd13..ab939945855 100644 --- a/src/mame/video/k051960.c +++ b/src/mame/video/k051960.c @@ -137,8 +137,7 @@ k051960_device::k051960_device(const machine_config &mconfig, const char *tag, d m_readroms(0), m_irq_enabled(0), m_nmi_enabled(0), - m_k051937_counter(0), - m_vblank(0) + m_k051937_counter(0) { } @@ -220,7 +219,6 @@ void k051960_device::device_start() save_item(NAME(m_irq_enabled)); save_item(NAME(m_nmi_enabled)); save_item(NAME(m_k051937_counter)); - save_item(NAME(m_vblank)); } //------------------------------------------------- @@ -247,15 +245,10 @@ void k051960_device::device_reset() DEVICE HANDLERS *****************************************************************************/ -void k051960_device::update_irq() -{ - m_irq_handler(m_irq_enabled && m_vblank ? ASSERT_LINE : CLEAR_LINE); -} - void k051960_device::vblank_callback(screen_device &screen, bool state) { - m_vblank = state; - update_irq(); + if (state) + m_irq_handler(ASSERT_LINE); } int k051960_device::k051960_fetchromdata( int byte ) @@ -317,7 +310,8 @@ WRITE8_MEMBER( k051960_device::k051937_w ) /* bit 0 is IRQ enable */ m_irq_enabled = data & 0x01; - update_irq(); + if (m_irq_enabled) + m_irq_handler(CLEAR_LINE); /* bit 1: probably FIRQ enable */ diff --git a/src/mame/video/k051960.h b/src/mame/video/k051960.h index 1f1dac5f332..9d4efd04ff0 100644 --- a/src/mame/video/k051960.h +++ b/src/mame/video/k051960.h @@ -103,9 +103,6 @@ private: int m_k051937_counter; - int m_vblank; - void update_irq(); - int k051960_fetchromdata( int byte ); }; |