summaryrefslogtreecommitdiffstats
path: root/src/mess/drivers/vidbrain.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/mess/drivers/vidbrain.c')
-rw-r--r--src/mess/drivers/vidbrain.c18
1 files changed, 8 insertions, 10 deletions
diff --git a/src/mess/drivers/vidbrain.c b/src/mess/drivers/vidbrain.c
index 56667836b91..e5ca3a171d1 100644
--- a/src/mess/drivers/vidbrain.c
+++ b/src/mess/drivers/vidbrain.c
@@ -482,29 +482,27 @@ static VIDEOBRAIN_EXPANSION_INTERFACE( expansion_intf )
//**************************************************************************
//-------------------------------------------------
-// IRQ_CALLBACK( vidbrain_int_ack )
+// IRQ_CALLBACK_MEMBER(vidbrain_int_ack)
//-------------------------------------------------
-static IRQ_CALLBACK( vidbrain_int_ack )
+IRQ_CALLBACK_MEMBER(vidbrain_state::vidbrain_int_ack)
{
- vidbrain_state *state = device->machine().driver_data<vidbrain_state>();
-
- UINT16 vector = state->m_vector;
+ UINT16 vector = m_vector;
- switch (state->m_int_enable)
+ switch (m_int_enable)
{
case 1:
vector |= 0x80;
- state->m_ext_int_latch = 0;
+ m_ext_int_latch = 0;
break;
case 3:
vector &= ~0x80;
- state->m_timer_int_latch = 0;
+ m_timer_int_latch = 0;
break;
}
- state->interrupt_check();
+ interrupt_check();
return vector;
}
@@ -530,7 +528,7 @@ void vidbrain_state::device_timer(emu_timer &timer, device_timer_id id, int para
void vidbrain_state::machine_start()
{
// register IRQ callback
- m_maincpu->set_irq_acknowledge_callback(vidbrain_int_ack);
+ m_maincpu->set_irq_acknowledge_callback(device_irq_acknowledge_delegate(FUNC(vidbrain_state::vidbrain_int_ack),this));
// allocate timers
m_timer_ne555 = timer_alloc(TIMER_JOYSTICK);