From aaa7936ef44358dce8baeb31faaf36726db93da2 Mon Sep 17 00:00:00 2001 From: Nathan Woods Date: Fri, 15 Mar 2013 10:31:13 +0000 Subject: [PATCH] Fixing interrupt handling in several drivers using 6809 that pulsed interrupts in a way that broke with the new 6809 core (nw) --- src/mame/drivers/bfcobra.c | 2 +- src/mame/drivers/bfm_sc1.c | 4 ++-- src/mame/drivers/bfm_sc2.c | 2 +- src/mame/drivers/bfmsys85.c | 4 ++-- src/mame/drivers/sigmab52.c | 2 +- src/mame/drivers/truco.c | 2 +- src/mame/drivers/wecleman.c | 2 +- 7 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/mame/drivers/bfcobra.c b/src/mame/drivers/bfcobra.c index ef0a612830b..b7dce833045 100644 --- a/src/mame/drivers/bfcobra.c +++ b/src/mame/drivers/bfcobra.c @@ -1412,7 +1412,7 @@ WRITE8_MEMBER(bfcobra_state::meter_w) if (changed & (1 << i)) { MechMtr_update(i, data & (1 << i) ); - generic_pulse_irq_line(space.device().execute(), M6809_FIRQ_LINE, 1); + space.device().execute().set_input_line(M6809_FIRQ_LINE, HOLD_LINE); } } } diff --git a/src/mame/drivers/bfm_sc1.c b/src/mame/drivers/bfm_sc1.c index 6146c8c1575..b9e9fc457e5 100644 --- a/src/mame/drivers/bfm_sc1.c +++ b/src/mame/drivers/bfm_sc1.c @@ -230,7 +230,7 @@ INTERRUPT_GEN_MEMBER(bfm_sc1_state::timer_irq) m_sc1_Inputs[2] = ioport("STROBE0")->read(); - generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1); + machine().device("maincpu")->execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE); } } @@ -326,7 +326,7 @@ WRITE8_MEMBER(bfm_sc1_state::mmtr_w) if ( changed & (1 << i) ) { MechMtr_update(i, data & (1 << i) ); - generic_pulse_irq_line(machine().device("maincpu")->execute(), M6809_FIRQ_LINE, 1); + machine().device("maincpu")->execute().set_input_line(M6809_FIRQ_LINE, HOLD_LINE); } } } diff --git a/src/mame/drivers/bfm_sc2.c b/src/mame/drivers/bfm_sc2.c index 82a533b04aa..15468831559 100644 --- a/src/mame/drivers/bfm_sc2.c +++ b/src/mame/drivers/bfm_sc2.c @@ -502,7 +502,7 @@ INTERRUPT_GEN_MEMBER(bfm_sc2_state::timer_irq) m_irq_timer_stat = 0x01; m_irq_status = 0x02; - generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1); + device.execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE); } } diff --git a/src/mame/drivers/bfmsys85.c b/src/mame/drivers/bfmsys85.c index eed0c8cbea1..7e336b2fd01 100644 --- a/src/mame/drivers/bfmsys85.c +++ b/src/mame/drivers/bfmsys85.c @@ -187,7 +187,7 @@ INTERRUPT_GEN_MEMBER(bfmsys85_state::timer_irq) if ( m_is_timer_enabled ) { m_irq_status = 0x01 |0x02; //0xff; - generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1); + device.execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE); } } @@ -246,7 +246,7 @@ WRITE8_MEMBER(bfmsys85_state::mmtr_w) for (i=0; i<8; i++) if ( changed & (1 << i) ) MechMtr_update(i, data & (1 << i) ); - if ( data ) generic_pulse_irq_line(machine().device("maincpu")->execute(), M6809_FIRQ_LINE, 1); + if ( data ) machine().device("maincpu")->execute().set_input_line(M6809_FIRQ_LINE, HOLD_LINE); } /////////////////////////////////////////////////////////////////////////// diff --git a/src/mame/drivers/sigmab52.c b/src/mame/drivers/sigmab52.c index 0257d8f824a..c00c3903ec2 100644 --- a/src/mame/drivers/sigmab52.c +++ b/src/mame/drivers/sigmab52.c @@ -536,7 +536,7 @@ INPUT_PORTS_END INTERRUPT_GEN_MEMBER(sigmab52_state::timer_irq) { - generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1); + device.execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE); } diff --git a/src/mame/drivers/truco.c b/src/mame/drivers/truco.c index 18e17f12d52..1ae96be9b03 100644 --- a/src/mame/drivers/truco.c +++ b/src/mame/drivers/truco.c @@ -397,7 +397,7 @@ INTERRUPT_GEN_MEMBER(truco_state::truco_interrupt) { if ( m_trigger == 0 ) { - generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1); + device.execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE); m_trigger++; } } else diff --git a/src/mame/drivers/wecleman.c b/src/mame/drivers/wecleman.c index c207bf84371..6829e8ab260 100644 --- a/src/mame/drivers/wecleman.c +++ b/src/mame/drivers/wecleman.c @@ -1101,7 +1101,7 @@ MACHINE_CONFIG_END INTERRUPT_GEN_MEMBER(wecleman_state::hotchase_sound_timer) { - generic_pulse_irq_line(device.execute(), M6809_FIRQ_LINE, 1); + device.execute().set_input_line(M6809_FIRQ_LINE, HOLD_LINE); } static const k051316_interface hotchase_k051316_intf_0 =