diff options
Diffstat (limited to 'src/mame/drivers/tutankhm.cpp')
-rw-r--r-- | src/mame/drivers/tutankhm.cpp | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/mame/drivers/tutankhm.cpp b/src/mame/drivers/tutankhm.cpp index 1b834115eb5..f42de2e554e 100644 --- a/src/mame/drivers/tutankhm.cpp +++ b/src/mame/drivers/tutankhm.cpp @@ -67,12 +67,15 @@ * *************************************/ -INTERRUPT_GEN_MEMBER(tutankhm_state::tutankhm_interrupt) +WRITE_LINE_MEMBER(tutankhm_state::vblank_irq) { /* flip flops cause the interrupt to be signalled every other frame */ - m_irq_toggle ^= 1; - if (m_irq_toggle && m_irq_enable) - device.execute().set_input_line(0, ASSERT_LINE); + if (state) + { + m_irq_toggle ^= 1; + if (m_irq_toggle && m_irq_enable) + m_maincpu->set_input_line(0, ASSERT_LINE); + } } @@ -228,7 +231,6 @@ MACHINE_CONFIG_START(tutankhm_state::tutankhm) /* basic machine hardware */ MCFG_CPU_ADD("maincpu", MC6809E, XTAL(18'432'000)/12) /* 1.5 MHz ??? */ MCFG_CPU_PROGRAM_MAP(main_map) - MCFG_CPU_VBLANK_INT_DRIVER("screen", tutankhm_state, tutankhm_interrupt) MCFG_MACHINE_START_OVERRIDE(tutankhm_state,tutankhm) MCFG_MACHINE_RESET_OVERRIDE(tutankhm_state,tutankhm) @@ -252,6 +254,7 @@ MACHINE_CONFIG_START(tutankhm_state::tutankhm) MCFG_SCREEN_SIZE(32*8, 32*8) MCFG_SCREEN_VISIBLE_AREA(0*8, 32*8-1, 2*8, 30*8-1) /* not sure about the visible area */ MCFG_SCREEN_UPDATE_DRIVER(tutankhm_state, screen_update_tutankhm) + MCFG_SCREEN_VBLANK_CALLBACK(WRITELINE(tutankhm_state, vblank_irq)) MCFG_PALETTE_ADD("palette", 16) MCFG_PALETTE_FORMAT(BBGGGRRR) |