Previous 199869 Revisions Next

r21874 Friday 15th March, 2013 at 10:31:13 UTC by Nathan Woods
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 bfm_sc1.c bfm_sc2.c bfmsys85.c sigmab52.c truco.c wecleman.c

trunk/src/mame/drivers/bfcobra.c
r21873r21874
14121412      if (changed & (1 << i))
14131413      {
14141414         MechMtr_update(i, data & (1 << i) );
1415         generic_pulse_irq_line(space.device().execute(), M6809_FIRQ_LINE, 1);
1415         space.device().execute().set_input_line(M6809_FIRQ_LINE, HOLD_LINE);
14161416      }
14171417   }
14181418}
trunk/src/mame/drivers/bfm_sc1.c
r21873r21874
230230
231231      m_sc1_Inputs[2] = ioport("STROBE0")->read();
232232
233      generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1);
233      machine().device("maincpu")->execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE);
234234   }
235235}
236236
r21873r21874
326326         if ( changed & (1 << i) )
327327         {
328328            MechMtr_update(i, data & (1 << i) );
329            generic_pulse_irq_line(machine().device("maincpu")->execute(), M6809_FIRQ_LINE, 1);
329            machine().device("maincpu")->execute().set_input_line(M6809_FIRQ_LINE, HOLD_LINE);
330330         }
331331      }
332332   }
trunk/src/mame/drivers/bfmsys85.c
r21873r21874
187187   if ( m_is_timer_enabled )
188188   {
189189      m_irq_status = 0x01 |0x02; //0xff;
190      generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1);
190      device.execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE);
191191   }
192192}
193193
r21873r21874
246246   for (i=0; i<8; i++)
247247   if ( changed & (1 << i) )   MechMtr_update(i, data & (1 << i) );
248248
249   if ( data ) generic_pulse_irq_line(machine().device("maincpu")->execute(), M6809_FIRQ_LINE, 1);
249   if ( data ) machine().device("maincpu")->execute().set_input_line(M6809_FIRQ_LINE, HOLD_LINE);
250250}
251251///////////////////////////////////////////////////////////////////////////
252252
trunk/src/mame/drivers/truco.c
r21873r21874
397397   {
398398      if ( m_trigger == 0 )
399399      {
400         generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1);
400         device.execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE);
401401         m_trigger++;
402402      }
403403   } else
trunk/src/mame/drivers/bfm_sc2.c
r21873r21874
502502      m_irq_timer_stat = 0x01;
503503      m_irq_status     = 0x02;
504504
505      generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1);
505      device.execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE);
506506   }
507507}
508508
trunk/src/mame/drivers/sigmab52.c
r21873r21874
536536
537537INTERRUPT_GEN_MEMBER(sigmab52_state::timer_irq)
538538{
539   generic_pulse_irq_line(device.execute(), M6809_IRQ_LINE, 1);
539   device.execute().set_input_line(M6809_IRQ_LINE, HOLD_LINE);
540540}
541541
542542
trunk/src/mame/drivers/wecleman.c
r21873r21874
11011101
11021102INTERRUPT_GEN_MEMBER(wecleman_state::hotchase_sound_timer)
11031103{
1104   generic_pulse_irq_line(device.execute(), M6809_FIRQ_LINE, 1);
1104   device.execute().set_input_line(M6809_FIRQ_LINE, HOLD_LINE);
11051105}
11061106
11071107static const k051316_interface hotchase_k051316_intf_0 =

Previous 199869 Revisions Next


© 1997-2024 The MAME Team