summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/namconb1.c
diff options
context:
space:
mode:
author Miodrag Milanovic <mmicko@gmail.com>2012-09-24 14:09:14 +0000
committer Miodrag Milanovic <mmicko@gmail.com>2012-09-24 14:09:14 +0000
commitef6f5d0a52b1cbbc1418a248da72122e6958a958 (patch)
tree4dd325f2232bb5f4f9349599555846552d360d6c /src/mame/drivers/namconb1.c
parent7a7fa028bdc4fe10253488ffb180fc113eb2a14a (diff)
Introducing TIMER_CALLBACK_MEMBER and modernization part 1 (no whatsnew)
Diffstat (limited to 'src/mame/drivers/namconb1.c')
-rw-r--r--src/mame/drivers/namconb1.c24
1 files changed, 11 insertions, 13 deletions
diff --git a/src/mame/drivers/namconb1.c b/src/mame/drivers/namconb1.c
index 2860e6908b6..f6d6b719e40 100644
--- a/src/mame/drivers/namconb1.c
+++ b/src/mame/drivers/namconb1.c
@@ -296,15 +296,14 @@ static TIMER_DEVICE_CALLBACK( mcu_interrupt )
}
-static TIMER_CALLBACK( namconb1_TriggerPOSIRQ )
+TIMER_CALLBACK_MEMBER(namconb1_state::namconb1_TriggerPOSIRQ)
{
- namconb1_state *state = machine.driver_data<namconb1_state>();
- if(state->m_pos_irq_active || !(state->m_namconb_cpureg[0x02] & 0xf0))
+ if(m_pos_irq_active || !(m_namconb_cpureg[0x02] & 0xf0))
return;
- machine.primary_screen->update_partial(param);
- state->m_pos_irq_active = 1;
- machine.device("maincpu")->execute().set_input_line(state->m_namconb_cpureg[0x02] & 0xf, ASSERT_LINE);
+ machine().primary_screen->update_partial(param);
+ m_pos_irq_active = 1;
+ machine().device("maincpu")->execute().set_input_line(m_namconb_cpureg[0x02] & 0xf, ASSERT_LINE);
}
INTERRUPT_GEN_MEMBER(namconb1_state::namconb1_interrupt)
@@ -356,17 +355,16 @@ INTERRUPT_GEN_MEMBER(namconb1_state::namconb1_interrupt)
}
if( scanline < NAMCONB1_VBSTART )
{
- machine().scheduler().timer_set( machine().primary_screen->time_until_pos(scanline), FUNC(namconb1_TriggerPOSIRQ ), scanline);
+ machine().scheduler().timer_set( machine().primary_screen->time_until_pos(scanline), timer_expired_delegate(FUNC(namconb1_state::namconb1_TriggerPOSIRQ),this), scanline);
}
} /* namconb1_interrupt */
-static TIMER_CALLBACK( namconb2_TriggerPOSIRQ )
+TIMER_CALLBACK_MEMBER(namconb1_state::namconb2_TriggerPOSIRQ)
{
- namconb1_state *state = machine.driver_data<namconb1_state>();
- machine.primary_screen->update_partial(param);
- state->m_pos_irq_active = 1;
- machine.device("maincpu")->execute().set_input_line(state->m_namconb_cpureg[0x02], ASSERT_LINE);
+ machine().primary_screen->update_partial(param);
+ m_pos_irq_active = 1;
+ machine().device("maincpu")->execute().set_input_line(m_namconb_cpureg[0x02], ASSERT_LINE);
}
INTERRUPT_GEN_MEMBER(namconb1_state::namconb2_interrupt)
@@ -411,7 +409,7 @@ INTERRUPT_GEN_MEMBER(namconb1_state::namconb2_interrupt)
scanline = 0;
if( scanline < NAMCONB1_VBSTART )
- machine().scheduler().timer_set( machine().primary_screen->time_until_pos(scanline), FUNC(namconb2_TriggerPOSIRQ ), scanline);
+ machine().scheduler().timer_set( machine().primary_screen->time_until_pos(scanline), timer_expired_delegate(FUNC(namconb1_state::namconb2_TriggerPOSIRQ),this), scanline);
} /* namconb2_interrupt */
static void namconb1_cpureg8_w(running_machine &machine, int reg, UINT8 data)