mirror of
https://github.com/holub/mame
synced 2025-04-25 09:50:04 +03:00
device callback handler cleanup (nw)
This commit is contained in:
parent
d37c28691d
commit
a1cdc3d898
@ -68,6 +68,7 @@ public:
|
||||
TIMER_CALLBACK_MEMBER(shutter_req);
|
||||
TIMER_CALLBACK_MEMBER(defender_req);
|
||||
void tile_decode();
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -408,15 +409,14 @@ INTERRUPT_GEN_MEMBER(_2mindril_state::drill_device_irq)
|
||||
#endif
|
||||
|
||||
/* WRONG,it does something with 60000c & 700002,likely to be called when the player throws the ball.*/
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(_2mindril_state::irqhandler)
|
||||
{
|
||||
// _2mindril_state *state = machine.driver_data<_2mindril_state>();
|
||||
// state->m_maincpu->set_input_line(5, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
// m_maincpu->set_input_line(5, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(_2mindril_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -1275,20 +1275,19 @@ static GFXDECODE_START( wbbc97 )
|
||||
GFXDECODE_ENTRY( "gfx2", 0, wbbc97_spritelayout, 1024, 64 ) /* colors 1024-2047 in 4 banks */
|
||||
GFXDECODE_END
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(aerofgt_state::irqhandler)
|
||||
{
|
||||
aerofgt_state *state = device->machine().driver_data<aerofgt_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(aerofgt_state,irqhandler)
|
||||
};
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler) /* IRQ Line */
|
||||
DEVCB_DRIVER_LINE_MEMBER(aerofgt_state,irqhandler) /* IRQ Line */
|
||||
};
|
||||
|
||||
|
||||
|
@ -507,10 +507,9 @@ READ8_MEMBER(angelkds_state::angelkds_sub_sound_r)
|
||||
}
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(angelkds_state::irqhandler)
|
||||
{
|
||||
angelkds_state *state = device->machine().driver_data<angelkds_state>();
|
||||
state->m_subcpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_subcpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -520,7 +519,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(angelkds_state,irqhandler)
|
||||
};
|
||||
|
||||
/*** Graphics Decoding
|
||||
|
@ -152,9 +152,9 @@ TIMER_DEVICE_CALLBACK_MEMBER(argus_state::butasan_scanline)
|
||||
}
|
||||
|
||||
/* Handler called by the YM2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(argus_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -164,7 +164,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(argus_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -766,14 +766,14 @@ GFXDECODE_END
|
||||
SOUND
|
||||
**************************************************************/
|
||||
|
||||
static void irq_handler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(asuka_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irq_handler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(asuka_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -620,14 +620,14 @@ MACHINE_START_MEMBER(sc4_state,sc4)
|
||||
}
|
||||
|
||||
|
||||
static void bfm_sc4_irqhandler(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(sc4_state::bfm_sc4_irqhandler)
|
||||
{
|
||||
logerror("YMZ280 is generating an interrupt. State=%08x\n",state);
|
||||
}
|
||||
|
||||
static const ymz280b_interface ymz280b_config =
|
||||
{
|
||||
DEVCB_LINE(bfm_sc4_irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(sc4_state,bfm_sc4_irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -103,16 +103,6 @@ TEST.TXT - suggests the content of a prototype version, which was expanded to ma
|
||||
#include "cpu/m68000/m68000.h"
|
||||
#include "sound/ymz280b.h"
|
||||
|
||||
static void irqhandler(device_t *device, int state)
|
||||
{
|
||||
}
|
||||
|
||||
static const ymz280b_interface ymz280b_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
};
|
||||
|
||||
|
||||
class bfm_swp_state : public driver_device
|
||||
{
|
||||
public:
|
||||
@ -132,6 +122,7 @@ public:
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
|
||||
protected:
|
||||
|
||||
@ -142,6 +133,14 @@ protected:
|
||||
};
|
||||
|
||||
|
||||
WRITE_LINE_MEMBER(bfm_swp_state::irqhandler)
|
||||
{
|
||||
}
|
||||
|
||||
static const ymz280b_interface ymz280b_config =
|
||||
{
|
||||
DEVCB_DRIVER_LINE_MEMBER(bfm_swp_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
READ32_MEMBER(bfm_swp_state::bfm_swp_mem_r)
|
||||
|
@ -259,10 +259,9 @@ GFXDECODE_END
|
||||
|
||||
|
||||
/* handler called by the 2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(blktiger_state::irqhandler)
|
||||
{
|
||||
blktiger_state *state = device->machine().driver_data<blktiger_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -272,7 +271,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(blktiger_state,irqhandler)
|
||||
};
|
||||
|
||||
void blktiger_state::machine_start()
|
||||
|
@ -696,10 +696,9 @@ GFXDECODE_END
|
||||
*************************************/
|
||||
|
||||
// handler called by the 2203 emulator when the internal timers cause an IRQ
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(bublbobl_state::irqhandler)
|
||||
{
|
||||
bublbobl_state *state = device->machine().driver_data<bublbobl_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -709,7 +708,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(bublbobl_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -194,10 +194,9 @@ WRITE8_MEMBER(capbowl_state::capbowl_sndcmd_w)
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static void firqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(capbowl_state::firqhandler)
|
||||
{
|
||||
capbowl_state *state = device->machine().driver_data<capbowl_state>();
|
||||
state->m_audiocpu->set_input_line(M6809_FIRQ_LINE, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(M6809_FIRQ_LINE, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
|
||||
@ -322,7 +321,7 @@ static const ym2203_interface ym2203_config =
|
||||
DEVCB_NULL,
|
||||
DEVCB_DEVICE_MEMBER("ticket", ticket_dispenser_device, write), /* Also a status LED. See memory map above */
|
||||
},
|
||||
DEVCB_LINE(firqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(capbowl_state,firqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -313,7 +313,7 @@ WRITE16_MEMBER(cave_state::cave_eeprom_msb_w)
|
||||
|
||||
WRITE16_MEMBER(cave_state::sailormn_eeprom_msb_w)
|
||||
{
|
||||
sailormn_tilebank_w(machine(), data & 0x0100);
|
||||
sailormn_tilebank_w(data & 0x0100);
|
||||
cave_eeprom_msb_w(space, offset, data & ~0x0100, mem_mask);
|
||||
}
|
||||
|
||||
@ -1820,9 +1820,9 @@ static const ymz280b_interface ymz280b_intf =
|
||||
DEVCB_LINE(sound_irq_gen)
|
||||
};
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(cave_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -1832,7 +1832,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(cave_state,irqhandler)
|
||||
};
|
||||
|
||||
/***************************************************************************
|
||||
|
@ -315,15 +315,14 @@ static GFXDECODE_START( crospang )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int linestate )
|
||||
WRITE_LINE_MEMBER(crospang_state::irqhandler)
|
||||
{
|
||||
crospang_state *state = device->machine().driver_data<crospang_state>();
|
||||
state->m_audiocpu->set_input_line(0, linestate);
|
||||
m_audiocpu->set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler) /* IRQ Line */
|
||||
DEVCB_DRIVER_LINE_MEMBER(crospang_state,irqhandler) /* IRQ Line */
|
||||
};
|
||||
|
||||
|
||||
|
@ -420,15 +420,14 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(crshrace_state::irqhandler)
|
||||
{
|
||||
crshrace_state *state = device->machine().driver_data<crshrace_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(crshrace_state,irqhandler)
|
||||
};
|
||||
|
||||
static const k053936_interface crshrace_k053936_intf =
|
||||
|
@ -765,10 +765,9 @@ GFXDECODE_END
|
||||
**************************************************************/
|
||||
|
||||
/* handler called by the YM2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq ) /* assumes Z80 sandwiched between 68Ks */
|
||||
WRITE_LINE_MEMBER(darius_state::irqhandler) /* assumes Z80 sandwiched between 68Ks */
|
||||
{
|
||||
darius_state *state = device->machine().driver_data<darius_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_interface_1 =
|
||||
@ -781,7 +780,7 @@ static const ym2203_interface ym2203_interface_1 =
|
||||
DEVCB_DRIVER_MEMBER(darius_state,darius_write_portA0), /* portA write */
|
||||
DEVCB_DRIVER_MEMBER(darius_state,darius_write_portB0), /* portB write */
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(darius_state,irqhandler)
|
||||
};
|
||||
|
||||
static const ym2203_interface ym2203_interface_2 =
|
||||
|
@ -1905,10 +1905,9 @@ GFXDECODE_END
|
||||
/******************************************************************************/
|
||||
|
||||
/* handler called by the 3812 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int linestate )
|
||||
WRITE_LINE_MEMBER(dec8_state::irqhandler)
|
||||
{
|
||||
dec8_state *state = device->machine().driver_data<dec8_state>();
|
||||
state->m_audiocpu->set_input_line(0, linestate); /* M6502_IRQ_LINE */
|
||||
m_audiocpu->set_input_line(0, state); /* M6502_IRQ_LINE */
|
||||
}
|
||||
|
||||
static const ym3526_interface ym3526_config =
|
||||
@ -1918,7 +1917,7 @@ static const ym3526_interface ym3526_config =
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(dec8_state,irqhandler)
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
|
@ -225,18 +225,16 @@ static GFXDECODE_START( deniam )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int linestate )
|
||||
WRITE_LINE_MEMBER(deniam_state::irqhandler)
|
||||
{
|
||||
deniam_state *state = device->machine().driver_data<deniam_state>();
|
||||
|
||||
/* system 16c doesn't have the sound CPU */
|
||||
if (state->m_audio_cpu != NULL)
|
||||
state->m_audio_cpu->execute().set_input_line(0, linestate);
|
||||
if (m_audio_cpu != NULL)
|
||||
m_audio_cpu->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(deniam_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -390,15 +390,14 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(f1gp_state::irqhandler)
|
||||
{
|
||||
f1gp_state *state = device->machine().driver_data<f1gp_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(f1gp_state,irqhandler)
|
||||
};
|
||||
|
||||
static const k053936_interface f1gp_k053936_intf =
|
||||
|
@ -482,15 +482,14 @@ GFXDECODE_END
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(fromanc2_state::irqhandler)
|
||||
{
|
||||
fromanc2_state *state = device->machine().driver_data<fromanc2_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(fromanc2_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -391,15 +391,14 @@ GFXDECODE_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
static void soundirq( device_t *device, int state )
|
||||
WRITE_LINE_MEMBER(fuuki16_state::soundirq)
|
||||
{
|
||||
fuuki16_state *fuuki16 = device->machine().driver_data<fuuki16_state>();
|
||||
fuuki16->m_audiocpu->set_input_line(0, state);
|
||||
m_audiocpu->set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface fuuki16_ym3812_intf =
|
||||
{
|
||||
DEVCB_LINE(soundirq) /* IRQ Line */
|
||||
DEVCB_DRIVER_LINE_MEMBER(fuuki16_state,soundirq) /* IRQ Line */
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -569,15 +569,14 @@ void fuuki32_state::machine_reset()
|
||||
}
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(fuuki32_state::irqhandler)
|
||||
{
|
||||
fuuki32_state *state = device->machine().driver_data<fuuki32_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ymf278b_interface fuuki32_ymf278b_interface =
|
||||
{
|
||||
DEVCB_LINE(irqhandler) /* irq */
|
||||
DEVCB_DRIVER_LINE_MEMBER(fuuki32_state,irqhandler) /* irq */
|
||||
};
|
||||
|
||||
static const ymf262_interface fuuki32_ymf262_interface =
|
||||
|
@ -738,10 +738,9 @@ static GFXDECODE_START( drgnbowl )
|
||||
GFXDECODE_END
|
||||
|
||||
/* handler called by the 2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(gaiden_state::irqhandler)
|
||||
{
|
||||
gaiden_state *state = device->machine().driver_data<gaiden_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -751,7 +750,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(gaiden_state,irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( shadoww, gaiden_state )
|
||||
|
@ -205,15 +205,14 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int linestate )
|
||||
WRITE_LINE_MEMBER(galspnbl_state::irqhandler)
|
||||
{
|
||||
galspnbl_state *state = device->machine().driver_data<galspnbl_state>();
|
||||
state->m_audiocpu->set_input_line(0, linestate);
|
||||
m_audiocpu->set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(galspnbl_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -209,11 +209,10 @@ static INPUT_PORTS_START( goal92 )
|
||||
INPUT_PORTS_END
|
||||
|
||||
/* handler called by the 2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(goal92_state::irqhandler)
|
||||
{
|
||||
/* NMI writes to MSM ports *only*! -AS */
|
||||
//goal92_state *state = device->machine().driver_data<goal92_state>();
|
||||
//state->m_audiocpu->set_input_line(INPUT_LINE_NMI, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
//m_audiocpu->set_input_line(INPUT_LINE_NMI, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -223,7 +222,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(goal92_state,irqhandler)
|
||||
};
|
||||
|
||||
static void goal92_adpcm_int( device_t *device,int st )
|
||||
|
@ -155,26 +155,26 @@ GFXDECODE_END
|
||||
|
||||
/*****************************************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(hcastle_state::irqhandler)
|
||||
{
|
||||
// hcastle_state *state = device->machine().driver_data<hcastle_state>();
|
||||
// state->m_audiocpu.device(0)->execute().set_input_line(linestate);
|
||||
}
|
||||
|
||||
static WRITE8_DEVICE_HANDLER(volume_callback)
|
||||
WRITE8_MEMBER(hcastle_state::volume_callback)
|
||||
{
|
||||
k007232_set_volume(device, 0, (data >> 4) * 0x11, 0);
|
||||
k007232_set_volume(device, 1, 0, (data & 0x0f) * 0x11);
|
||||
k007232_set_volume(machine().device("konami1"), 0, (data >> 4) * 0x11, 0);
|
||||
k007232_set_volume(machine().device("konami1"), 1, 0, (data & 0x0f) * 0x11);
|
||||
}
|
||||
|
||||
static const k007232_interface k007232_config =
|
||||
{
|
||||
DEVCB_DEVICE_HANDLER(DEVICE_SELF,volume_callback) /* external port callback */
|
||||
DEVCB_DRIVER_MEMBER(hcastle_state,volume_callback) /* external port callback */
|
||||
};
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(hcastle_state,irqhandler)
|
||||
};
|
||||
|
||||
void hcastle_state::machine_start()
|
||||
|
@ -502,10 +502,10 @@ INPUT_PORTS_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(hnayayoi_state::irqhandler)
|
||||
{
|
||||
popmessage("irq");
|
||||
// device->machine().device("maincpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
// machine().device("maincpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
|
||||
@ -519,7 +519,7 @@ static const ym2203_interface ym2203_config =
|
||||
DEVCB_NULL,
|
||||
DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(hnayayoi_state,irqhandler)
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
|
@ -320,15 +320,14 @@ GFXDECODE_END
|
||||
|
||||
******************************************************************************/
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(inufuku_state::irqhandler)
|
||||
{
|
||||
inufuku_state *state = device->machine().driver_data<inufuku_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(inufuku_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -439,10 +439,9 @@ GFXDECODE_END
|
||||
/******************************************************************************/
|
||||
|
||||
/* handler called by the 2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(lastduel_state::irqhandler)
|
||||
{
|
||||
lastduel_state *state = device->machine().driver_data<lastduel_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -452,7 +451,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(lastduel_state,irqhandler)
|
||||
};
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(lastduel_state::lastduel_timer_cb)
|
||||
|
@ -474,10 +474,9 @@ static GFXDECODE_START( lkage )
|
||||
GFXDECODE_ENTRY( "gfx1", 0x0000, sprite_layout, 0, 16 )
|
||||
GFXDECODE_END
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(lkage_state::irqhandler)
|
||||
{
|
||||
lkage_state *state = device->machine().driver_data<lkage_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -487,7 +486,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(lkage_state,irqhandler)
|
||||
};
|
||||
|
||||
void lkage_state::machine_start()
|
||||
|
@ -664,14 +664,14 @@ static I8255A_INTERFACE( aliencha_ppi8255_1_intf )
|
||||
};
|
||||
|
||||
|
||||
static void soundirq(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(lordgun_state::soundirq)
|
||||
{
|
||||
device->machine().device("soundcpu")->execute().set_input_line(INPUT_LINE_IRQ0, state);
|
||||
machine().device("soundcpu")->execute().set_input_line(INPUT_LINE_IRQ0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface lordgun_ym3812_interface =
|
||||
{
|
||||
DEVCB_LINE(soundirq)
|
||||
DEVCB_DRIVER_LINE_MEMBER(lordgun_state,soundirq)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( lordgun, lordgun_state )
|
||||
@ -712,7 +712,7 @@ MACHINE_CONFIG_END
|
||||
|
||||
static const ymf278b_interface ymf278b_config =
|
||||
{
|
||||
DEVCB_LINE(soundirq)
|
||||
DEVCB_DRIVER_LINE_MEMBER(lordgun_state,soundirq)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( aliencha, lordgun_state )
|
||||
|
@ -538,10 +538,9 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(lsasquad_state::irqhandler)
|
||||
{
|
||||
lsasquad_state *state = device->machine().driver_data<lsasquad_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(lsasquad_state::unk)
|
||||
@ -559,7 +558,7 @@ static const ym2203_interface ym2203_config =
|
||||
DEVCB_DRIVER_MEMBER(lsasquad_state,unk),
|
||||
DEVCB_DRIVER_MEMBER(lsasquad_state,unk),
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(lsasquad_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -572,14 +572,13 @@ GFXDECODE_END
|
||||
|
||||
/*** MACHINE DRIVER **********************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(macrossp_state::irqhandler)
|
||||
{
|
||||
// macrossp_state *state = space.machine().driver_data<macrossp_state>();
|
||||
logerror("ES5506 irq %d\n", irq);
|
||||
logerror("ES5506 irq %d\n", state);
|
||||
|
||||
/* IRQ lines 1 & 4 on the sound 68000 are definitely triggered by the ES5506,
|
||||
but I haven't noticed the ES5506 ever assert the line - maybe only used when developing the game? */
|
||||
// state->m_audiocpu->set_input_line(1, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
// m_audiocpu->set_input_line(1, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const es5506_interface es5506_config =
|
||||
@ -588,7 +587,7 @@ static const es5506_interface es5506_config =
|
||||
"ensoniq.1",
|
||||
"ensoniq.2",
|
||||
"ensoniq.3",
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(macrossp_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -50,6 +50,7 @@ protected:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
public:
|
||||
DECLARE_DRIVER_INIT(maygayep);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
// bp 29e58 in ep_simp reads the 'INITIALISE . . .' string
|
||||
@ -100,13 +101,13 @@ DRIVER_INIT_MEMBER(maygayep_state,maygayep)
|
||||
|
||||
}
|
||||
|
||||
static void irqhandler(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(maygayep_state::irqhandler)
|
||||
{
|
||||
}
|
||||
|
||||
static const ymz280b_interface ymz280b_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(maygayep_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -1634,9 +1634,9 @@ MACHINE_CONFIG_END
|
||||
***************************************************************************/
|
||||
|
||||
|
||||
static void irq_handler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(megasys1_state::irqhandler)
|
||||
{
|
||||
device->machine().driver_data<megasys1_state>()->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
|
||||
@ -1647,7 +1647,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irq_handler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(megasys1_state,irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( system_Z, megasys1_state )
|
||||
|
@ -1620,15 +1620,14 @@ WRITE8_MEMBER(metro_state::blzntrnd_sh_bankswitch_w)
|
||||
membank("bank1")->set_base(&RAM[bankaddress]);
|
||||
}
|
||||
|
||||
static void blzntrnd_irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(metro_state::blzntrnd_irqhandler)
|
||||
{
|
||||
metro_state *state = device->machine().driver_data<metro_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface blzntrnd_ym2610_interface =
|
||||
{
|
||||
DEVCB_LINE(blzntrnd_irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(metro_state,blzntrnd_irqhandler)
|
||||
};
|
||||
|
||||
static ADDRESS_MAP_START( blzntrnd_sound_map, AS_PROGRAM, 8, metro_state )
|
||||
|
@ -80,6 +80,7 @@ public:
|
||||
virtual void video_start();
|
||||
UINT32 screen_update_midas(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
DECLARE_WRITE_LINE_MEMBER(livequiz_irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -686,14 +687,14 @@ static INPUT_PORTS_START( hammer )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
static void livequiz_irqhandler(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(midas_state::livequiz_irqhandler)
|
||||
{
|
||||
logerror("YMZ280 is generating an interrupt. State=%08x\n",state);
|
||||
}
|
||||
|
||||
static const ymz280b_interface ymz280b_config =
|
||||
{
|
||||
DEVCB_LINE(livequiz_irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(midas_state,livequiz_irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( livequiz, midas_state )
|
||||
|
@ -865,9 +865,9 @@ GFXDECODE_END
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(ninjakd2_state::irqhandler)
|
||||
{
|
||||
device->machine().device("soundcpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("soundcpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -877,7 +877,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(ninjakd2_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -635,15 +635,14 @@ GFXDECODE_END
|
||||
**************************************************************/
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(ninjaw_state::irqhandler)
|
||||
{
|
||||
ninjaw_state *state = device->machine().driver_data<ninjaw_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(ninjaw_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -280,6 +280,7 @@ public:
|
||||
virtual void video_start();
|
||||
UINT32 screen_update_nmg5(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
void draw_bitmap( bitmap_ind16 &bitmap );
|
||||
DECLARE_WRITE_LINE_MEMBER(soundirq);
|
||||
};
|
||||
|
||||
|
||||
@ -971,15 +972,14 @@ static GFXDECODE_START( pclubys )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static void soundirq( device_t *device, int state )
|
||||
WRITE_LINE_MEMBER(nmg5_state::soundirq)
|
||||
{
|
||||
nmg5_state *driver_state = device->machine().driver_data<nmg5_state>();
|
||||
driver_state->m_soundcpu->set_input_line(0, state);
|
||||
m_soundcpu->set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_intf =
|
||||
{
|
||||
DEVCB_LINE(soundirq) /* IRQ Line */
|
||||
DEVCB_DRIVER_LINE_MEMBER(nmg5_state,soundirq) /* IRQ Line */
|
||||
};
|
||||
|
||||
void nmg5_state::machine_start()
|
||||
|
@ -3501,9 +3501,9 @@ static const ym2203_interface ym2203_nmk004_interface =
|
||||
DEVCB_LINE(NMK004_irq)
|
||||
};
|
||||
|
||||
static void ym2203_irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(nmk16_state::ym2203_irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -3513,7 +3513,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(ym2203_irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(nmk16_state,ym2203_irqhandler)
|
||||
};
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(nmk16_state::nmk16_scanline)
|
||||
|
@ -327,15 +327,14 @@ static GFXDECODE_START( oneshot )
|
||||
GFXDECODE_ENTRY( "gfx1", 0, oneshot8x8_layout, 0x00, 4 ) /* sprites */
|
||||
GFXDECODE_END
|
||||
|
||||
static void irq_handler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(oneshot_state::irqhandler)
|
||||
{
|
||||
oneshot_state *state = device->machine().driver_data<oneshot_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irq_handler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(oneshot_state,irqhandler)
|
||||
};
|
||||
|
||||
void oneshot_state::machine_start()
|
||||
|
@ -77,6 +77,7 @@ public:
|
||||
virtual void video_start();
|
||||
UINT32 screen_update_onetwo(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
void set_color(int offset);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -329,15 +330,14 @@ GFXDECODE_END
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(onetwo_state::irqhandler)
|
||||
{
|
||||
onetwo_state *state = device->machine().driver_data<onetwo_state>();
|
||||
state->m_audiocpu->set_input_line(0, linestate);
|
||||
m_audiocpu->set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler) /* IRQ Line */
|
||||
DEVCB_DRIVER_LINE_MEMBER(onetwo_state,irqhandler) /* IRQ Line */
|
||||
};
|
||||
|
||||
/*************************************
|
||||
|
@ -618,15 +618,14 @@ GFXDECODE_END
|
||||
**************************************************************/
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(othunder_state::irqhandler)
|
||||
{
|
||||
othunder_state *state = device->machine().driver_data<othunder_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(othunder_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -186,6 +186,7 @@ public:
|
||||
DECLARE_WRITE8_MEMBER( pending_command_clear_w );
|
||||
DECLARE_READ8_MEMBER( pending_command_r );
|
||||
DECLARE_READ8_MEMBER( sound_command_r );
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -574,10 +575,9 @@ GFXDECODE_END
|
||||
*
|
||||
*************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(pipedrm_state::irqhandler)
|
||||
{
|
||||
pipedrm_state *state = device->machine().driver_data<pipedrm_state>();
|
||||
state->m_subcpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_subcpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
|
||||
@ -588,13 +588,13 @@ static const ym2608_interface ym2608_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(pipedrm_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(pipedrm_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -46,6 +46,7 @@ public:
|
||||
virtual void video_start();
|
||||
UINT32 screen_update_pkscramble(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(scanline_callback);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -268,11 +269,10 @@ static GFXDECODE_START( pkscram )
|
||||
GFXDECODE_ENTRY( "gfx1", 0, tiles8x8_layout, 0, 0x80 )
|
||||
GFXDECODE_END
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(pkscram_state::irqhandler)
|
||||
{
|
||||
pkscram_state *state = device->machine().driver_data<pkscram_state>();
|
||||
if(state->m_out & 0x10)
|
||||
device->machine().device("maincpu")->execute().set_input_line(2, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
if(m_out & 0x10)
|
||||
machine().device("maincpu")->execute().set_input_line(2, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -282,7 +282,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(pkscram_state,irqhandler)
|
||||
};
|
||||
|
||||
void pkscram_state::machine_start()
|
||||
|
@ -317,9 +317,9 @@ void powerins_state::machine_reset()
|
||||
m_oki_bank = -1; // samples bank "unitialised"
|
||||
}
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(powerins_state::irqhandler)
|
||||
{
|
||||
device->machine().device("soundcpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("soundcpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -329,7 +329,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(powerins_state,irqhandler)
|
||||
};
|
||||
|
||||
static const nmk112_interface powerins_nmk112_intf =
|
||||
|
@ -193,14 +193,14 @@ GFXDECODE_END
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(prehisle_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(prehisle_state,irqhandler)
|
||||
};
|
||||
|
||||
/******************************************************************************/
|
||||
|
@ -1162,15 +1162,14 @@ MACHINE_CONFIG_END
|
||||
***************************************************************************/
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int linestate )
|
||||
WRITE_LINE_MEMBER(psikyo_state::irqhandler)
|
||||
{
|
||||
psikyo_state *state = device->machine().driver_data<psikyo_state>();
|
||||
state->m_audiocpu->set_input_line(0, linestate ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ymf278b_interface ymf278b_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(psikyo_state,irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( s1945, psikyo_state )
|
||||
|
@ -645,15 +645,14 @@ static INPUT_PORTS_START( hotdebut )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int linestate )
|
||||
WRITE_LINE_MEMBER(psikyo4_state::irqhandler)
|
||||
{
|
||||
psikyo4_state *state = device->machine().driver_data<psikyo4_state>();
|
||||
state->m_maincpu->set_input_line(12, linestate ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_maincpu->set_input_line(12, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ymf278b_interface ymf278b_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(psikyo4_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -782,15 +782,14 @@ static INPUT_PORTS_START( mjgtaste )
|
||||
INPUT_PORTS_END
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(psikyosh_state::irqhandler)
|
||||
{
|
||||
psikyosh_state *state = device->machine().driver_data<psikyosh_state>();
|
||||
state->m_maincpu->set_input_line(12, linestate ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_maincpu->set_input_line(12, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ymf278b_interface ymf278b_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(psikyosh_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -643,9 +643,9 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(psychic5_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -655,7 +655,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(psychic5_state,irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( psychic5, psychic5_state )
|
||||
|
@ -378,10 +378,9 @@ GFXDECODE_END
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(pushman_state::irqhandler)
|
||||
{
|
||||
pushman_state *state = device->machine().driver_data<pushman_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -391,7 +390,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(pushman_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -113,6 +113,7 @@ public:
|
||||
void screen_eof_sandscrp(screen_device &screen, bool state);
|
||||
INTERRUPT_GEN_MEMBER(sandscrp_interrupt);
|
||||
void update_irq_state();
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -460,9 +461,9 @@ GFXDECODE_END
|
||||
|
||||
/* YM3014B + YM2203C */
|
||||
|
||||
static void irq_handler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(sandscrp_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_intf_sandscrp =
|
||||
@ -475,7 +476,7 @@ static const ym2203_interface ym2203_intf_sandscrp =
|
||||
DEVCB_NULL, /* Port A Write */
|
||||
DEVCB_NULL, /* Port B Write */
|
||||
},
|
||||
DEVCB_LINE(irq_handler) /* IRQ handler */
|
||||
DEVCB_DRIVER_LINE_MEMBER(sandscrp_state,irqhandler) /* IRQ handler */
|
||||
};
|
||||
|
||||
|
||||
|
@ -1091,12 +1091,12 @@ WRITE8_MEMBER(seibuspi_state::flashrom_write)
|
||||
}
|
||||
}
|
||||
|
||||
static void irqhandler(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(seibuspi_state::irqhandler)
|
||||
{
|
||||
if (state)
|
||||
device->machine().device("soundcpu")->execute().set_input_line_and_vector(0, ASSERT_LINE, 0xd7); // IRQ is RST10
|
||||
machine().device("soundcpu")->execute().set_input_line_and_vector(0, ASSERT_LINE, 0xd7); // IRQ is RST10
|
||||
else
|
||||
device->machine().device("soundcpu")->execute().set_input_line(0, CLEAR_LINE);
|
||||
machine().device("soundcpu")->execute().set_input_line(0, CLEAR_LINE);
|
||||
}
|
||||
|
||||
WRITE32_MEMBER(seibuspi_state::sys386f2_eeprom_w)
|
||||
@ -1112,7 +1112,7 @@ static const ymf271_interface ymf271_config =
|
||||
{
|
||||
DEVCB_DRIVER_MEMBER(seibuspi_state,flashrom_read),
|
||||
DEVCB_DRIVER_MEMBER(seibuspi_state,flashrom_write),
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(seibuspi_state,irqhandler)
|
||||
};
|
||||
|
||||
/********************************************************************/
|
||||
|
@ -82,6 +82,7 @@ public:
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(sfkick_interrupt);
|
||||
void sfkick_remap_banks();
|
||||
void sfkick_bank_set(int num, int data);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -455,9 +456,9 @@ TIMER_DEVICE_CALLBACK_MEMBER(sfkick_state::sfkick_interrupt)
|
||||
m_v9938->interrupt();
|
||||
}
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(sfkick_state::irqhandler)
|
||||
{
|
||||
device->machine().device("soundcpu")->execute().set_input_line_and_vector(0, irq ? ASSERT_LINE : CLEAR_LINE, 0xff);
|
||||
machine().device("soundcpu")->execute().set_input_line_and_vector(0, state ? ASSERT_LINE : CLEAR_LINE, 0xff);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -467,7 +468,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL,DEVCB_NULL,DEVCB_NULL,DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(sfkick_state,irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( sfkick, sfkick_state )
|
||||
|
@ -465,14 +465,14 @@ static const ay8910_interface ay8910_config =
|
||||
DEVCB_NULL
|
||||
};
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(shangha3_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(INPUT_LINE_NMI, linestate);
|
||||
machine().device("audiocpu")->execute().set_input_line(INPUT_LINE_NMI, state);
|
||||
}
|
||||
|
||||
static const ym3438_interface ym3438_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(shangha3_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -476,15 +476,14 @@ GFXDECODE_END
|
||||
**************************************************************/
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(slapshot_state::irqhandler)
|
||||
{
|
||||
slapshot_state *state = device->machine().driver_data<slapshot_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(slapshot_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -574,14 +574,14 @@ GFXDECODE_END
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(snk68_state::irqhandler)
|
||||
{
|
||||
device->machine().device("soundcpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("soundcpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(snk68_state,irqhandler)
|
||||
};
|
||||
|
||||
/******************************************************************************/
|
||||
|
@ -1491,16 +1491,16 @@ static GFXDECODE_START( hyperpac )
|
||||
GFXDECODE_END
|
||||
|
||||
/* handler called by the 3812/2151 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(snowbros_state::irqhandler)
|
||||
{
|
||||
device->machine().device("soundcpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("soundcpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
/* SnowBros Sound */
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(snowbros_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -72,6 +72,7 @@ public:
|
||||
TIMER_CALLBACK_MEMBER(subcpu_suspend);
|
||||
TIMER_CALLBACK_MEMBER(subcpu_resume);
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(sothello_interrupt);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -308,9 +309,9 @@ static INPUT_PORTS_START( sothello )
|
||||
PORT_BIT( 0x07, IP_ACTIVE_LOW, IPT_UNUSED )
|
||||
INPUT_PORTS_END
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(sothello_state::irqhandler)
|
||||
{
|
||||
device->machine().device("sub")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("sub")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static void sothello_vdp_interrupt(device_t *, v99x8_device &device, int i)
|
||||
@ -352,7 +353,7 @@ static const ym2203_interface ym2203_config =
|
||||
DEVCB_NULL,
|
||||
DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(sothello_state,irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( sothello, sothello_state )
|
||||
|
@ -402,14 +402,14 @@ static GFXDECODE_START( spbactnp )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(spbactn_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, linestate);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(spbactn_state,irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( spbactn, spbactn_state )
|
||||
|
@ -375,14 +375,14 @@ static GFXDECODE_START( spdodgeb )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static void irq_handler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(spdodgeb_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(M6809_FIRQ_LINE, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(M6809_FIRQ_LINE, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irq_handler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(spdodgeb_state,irqhandler)
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
|
@ -459,15 +459,14 @@ static const k007232_interface spy_k007232_interface =
|
||||
};
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int linestate )
|
||||
WRITE_LINE_MEMBER(spy_state::irqhandler)
|
||||
{
|
||||
spy_state *state = device->machine().driver_data<spy_state>();
|
||||
state->m_audiocpu->set_input_line(INPUT_LINE_NMI, linestate);
|
||||
m_audiocpu->set_input_line(INPUT_LINE_NMI, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(spy_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -355,9 +355,9 @@ GFXDECODE_END
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(sshangha_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -367,7 +367,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(sshangha_state,irqhandler)
|
||||
};
|
||||
|
||||
static int sshangha_bank_callback( int bank )
|
||||
|
@ -212,14 +212,14 @@ GFXDECODE_END
|
||||
|
||||
/******************************************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(stadhero_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, linestate);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(stadhero_state,irqhandler)
|
||||
};
|
||||
|
||||
/******************************************************************************/
|
||||
|
@ -1763,9 +1763,9 @@ GFXDECODE_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
static void soundirq(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(suna8_state::soundirq)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
/* In games with only 2 CPUs, port A&B of the AY8910 are used
|
||||
@ -1910,7 +1910,7 @@ MACHINE_CONFIG_END
|
||||
|
||||
static const ym3812_interface brickzn_ym3812_interface =
|
||||
{
|
||||
DEVCB_LINE(soundirq) /* IRQ Line */
|
||||
DEVCB_DRIVER_LINE_MEMBER(suna8_state,soundirq) /* IRQ Line */
|
||||
};
|
||||
|
||||
MACHINE_RESET_MEMBER(suna8_state,brickzn)
|
||||
|
@ -69,6 +69,7 @@ public:
|
||||
virtual void machine_reset();
|
||||
virtual void video_start();
|
||||
UINT32 screen_update_suprgolf(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
TILE_GET_INFO_MEMBER(suprgolf_state::get_tile_info)
|
||||
@ -413,9 +414,9 @@ WRITE8_MEMBER(suprgolf_state::suprgolf_writeB)
|
||||
mame_printf_debug("ymwA\n");
|
||||
}
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(suprgolf_state::irqhandler)
|
||||
{
|
||||
//device->machine().device("maincpu")->execute().set_input_line(INPUT_LINE_NMI, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
//machine().device("maincpu")->execute().set_input_line(INPUT_LINE_NMI, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -428,7 +429,7 @@ static const ym2203_interface ym2203_config =
|
||||
DEVCB_DRIVER_MEMBER(suprgolf_state,suprgolf_writeA),
|
||||
DEVCB_DRIVER_MEMBER(suprgolf_state,suprgolf_writeB),
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(suprgolf_state,irqhandler)
|
||||
};
|
||||
|
||||
static void adpcm_int(device_t *device,int st)
|
||||
|
@ -276,15 +276,14 @@ GFXDECODE_END
|
||||
|
||||
/*** MORE SOUND **************************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(suprslam_state::irqhandler)
|
||||
{
|
||||
suprslam_state *state = device->machine().driver_data<suprslam_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(suprslam_state,irqhandler)
|
||||
};
|
||||
|
||||
/*** MACHINE DRIVER **********************************************************/
|
||||
|
@ -176,10 +176,9 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(tail2nos_state::irqhandler)
|
||||
{
|
||||
tail2nos_state *state = device->machine().driver_data<tail2nos_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2608_interface ym2608_config =
|
||||
@ -192,7 +191,7 @@ static const ym2608_interface ym2608_config =
|
||||
DEVCB_NULL,
|
||||
DEVCB_DRIVER_MEMBER(tail2nos_state,sound_bankswitch_w)
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(tail2nos_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -1890,15 +1890,14 @@ GFXDECODE_END
|
||||
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(taitob_state::irqhandler)
|
||||
{
|
||||
taitob_state *state = device->machine().driver_data<taitob_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitob_state,irqhandler)
|
||||
};
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -1911,7 +1910,7 @@ static const ym2203_interface ym2203_config =
|
||||
DEVCB_DRIVER_MEMBER(taitob_state, bankswitch_w),
|
||||
DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitob_state,irqhandler)
|
||||
};
|
||||
|
||||
/*
|
||||
|
@ -2802,15 +2802,14 @@ GFXDECODE_END
|
||||
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irq_handler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(taitof2_state::irqhandler)
|
||||
{
|
||||
taitof2_state *state = device->machine().driver_data<taitof2_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irq_handler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitof2_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
@ -2829,7 +2828,7 @@ static const ym2203_interface ym2203_config =
|
||||
DEVCB_DRIVER_MEMBER(taitof2_state,cameltrya_porta_w), /* portA write - not implemented */
|
||||
DEVCB_NULL, /* portB write */
|
||||
},
|
||||
DEVCB_LINE(irq_handler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitof2_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -156,15 +156,14 @@ some kind of zoom table?
|
||||
***************************************************************************/
|
||||
|
||||
/* Handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(taitoh_state::irqhandler)
|
||||
{
|
||||
taitoh_state *state = device->machine().driver_data<taitoh_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitoh_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -1743,10 +1743,9 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(taitol_state::irqhandler)
|
||||
{
|
||||
taitol_state *state = device->machine().driver_data<taitol_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
WRITE8_MEMBER(taitol_state::portA_w)
|
||||
@ -1773,7 +1772,7 @@ static const ym2203_interface ym2203_interface_triple =
|
||||
DEVCB_DRIVER_MEMBER(taitol_state,portA_w),
|
||||
DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitol_state,irqhandler)
|
||||
};
|
||||
|
||||
static const ym2203_interface ym2203_interface_champwr =
|
||||
@ -1786,7 +1785,7 @@ static const ym2203_interface ym2203_interface_champwr =
|
||||
DEVCB_DRIVER_MEMBER(taitol_state,portA_w),
|
||||
DEVCB_DRIVER_MEMBER(taitol_state,champwr_msm5205_volume_w),
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitol_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
@ -1798,7 +1797,7 @@ static const msm5205_interface msm5205_config =
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitol_state,irqhandler)
|
||||
};
|
||||
|
||||
static const ym2203_interface ym2203_interface_single =
|
||||
|
@ -338,6 +338,7 @@ public:
|
||||
DECLARE_DRIVER_INIT(kyustrkr);
|
||||
DECLARE_MACHINE_START(taitox);
|
||||
void reset_sound_region();
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
READ16_MEMBER(taitox_state::superman_dsw_input_r)
|
||||
@ -791,14 +792,14 @@ GFXDECODE_END
|
||||
/**************************************************************************/
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(taitox_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitox_state,irqhandler)
|
||||
};
|
||||
|
||||
MACHINE_START_MEMBER(taitox_state,taitox)
|
||||
|
@ -2899,28 +2899,26 @@ Interface B is for games which lack a Z80 (Spacegun, Bshark).
|
||||
**************************************************************/
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(taitoz_state::irqhandler)
|
||||
{
|
||||
taitoz_state *state = device->machine().driver_data<taitoz_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandlerb(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(taitoz_state::irqhandlerb)
|
||||
{
|
||||
// DG: this is probably specific to Z80 and wrong?
|
||||
// taitoz_state *state = device->machine().driver_data<taitoz_state>();
|
||||
// state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
// m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitoz_state,irqhandler)
|
||||
};
|
||||
|
||||
static const ym2610_interface ym2610_interfaceb =
|
||||
{
|
||||
DEVCB_LINE(irqhandlerb)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitoz_state,irqhandlerb)
|
||||
};
|
||||
|
||||
|
||||
|
@ -626,15 +626,14 @@ GFXDECODE_END
|
||||
************************************************************/
|
||||
|
||||
/* Handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(taitoair_state::irqhandler)
|
||||
{
|
||||
taitoair_state *state = device->machine().driver_data<taitoair_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface airsys_ym2610_interface =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taitoair_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -320,14 +320,14 @@ static GFXDECODE_START( taotaido )
|
||||
GFXDECODE_ENTRY( "gfx2", 0, taotaido_layout, 0x300, 256 ) /* bg tiles */
|
||||
GFXDECODE_END
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(taotaido_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(taotaido_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -419,14 +419,14 @@ GFXDECODE_END
|
||||
|
||||
*/
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(tbowl_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, linestate);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(tbowl_state,irqhandler)
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
|
@ -604,14 +604,14 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(tecmo_state::irqhandler)
|
||||
{
|
||||
device->machine().device("soundcpu")->execute().set_input_line(0, linestate);
|
||||
machine().device("soundcpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(tecmo_state,irqhandler)
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
|
@ -389,9 +389,9 @@ GFXDECODE_END
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(thedeep_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface thedeep_ym2203_intf =
|
||||
@ -401,7 +401,7 @@ static const ym2203_interface thedeep_ym2203_intf =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(thedeep_state,irqhandler)
|
||||
};
|
||||
|
||||
TIMER_DEVICE_CALLBACK_MEMBER(thedeep_state::thedeep_interrupt)
|
||||
|
@ -492,9 +492,9 @@ GFXDECODE_END
|
||||
|
||||
|
||||
/* handler called by the 2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(tigeroad_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -504,7 +504,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(tigeroad_state,irqhandler)
|
||||
};
|
||||
|
||||
static const msm5205_interface msm5205_config =
|
||||
|
@ -1566,10 +1566,9 @@ static const ym2203_interface ym2203_config =
|
||||
|
||||
|
||||
/* handler called by the 2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(tnzs_state::irqhandler)
|
||||
{
|
||||
tnzs_state *state = device->machine().driver_data<tnzs_state>();
|
||||
state->m_audiocpu->set_input_line(INPUT_LINE_NMI, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(INPUT_LINE_NMI, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface kageki_ym2203_interface =
|
||||
@ -1592,7 +1591,7 @@ static const ym2203_interface ym2203b_interface =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(tnzs_state,irqhandler)
|
||||
};
|
||||
|
||||
static const ym2203_interface kabukiz_ym2203_interface =
|
||||
@ -1605,7 +1604,7 @@ static const ym2203_interface kabukiz_ym2203_interface =
|
||||
DEVCB_DRIVER_MEMBER(tnzs_state,kabukiz_sound_bank_w),
|
||||
DEVCB_DRIVER_MEMBER(tnzs_state,kabukiz_sample_w)
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(tnzs_state,irqhandler)
|
||||
};
|
||||
|
||||
static const samples_interface tnzs_samples_interface =
|
||||
|
@ -1515,14 +1515,14 @@ static GFXDECODE_START( vm )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(toaplan1_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, linestate);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(toaplan1_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -2973,21 +2973,19 @@ static GFXDECODE_START( fixeightbl )
|
||||
GFXDECODE_END
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(toaplan2_state::irqhandler)
|
||||
{
|
||||
toaplan2_state *state = device->machine().driver_data<toaplan2_state>();
|
||||
|
||||
if (state->m_sub_cpu != NULL) // wouldn't tekipaki have problem without this? "mcu" is not generally added
|
||||
state->m_sub_cpu->execute().set_input_line(0, linestate);
|
||||
if (m_sub_cpu != NULL) // wouldn't tekipaki have problem without this? "mcu" is not generally added
|
||||
m_sub_cpu->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(toaplan2_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
static void bbakraid_irqhandler(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(toaplan2_state::bbakraid_irqhandler)
|
||||
{
|
||||
// Not used ??? Connected to a test pin (TP082)
|
||||
logerror("YMZ280 is generating an interrupt. State=%08x\n",state);
|
||||
@ -2995,7 +2993,7 @@ static void bbakraid_irqhandler(device_t *device, int state)
|
||||
|
||||
static const ymz280b_interface ymz280b_config =
|
||||
{
|
||||
DEVCB_LINE(bbakraid_irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(toaplan2_state,bbakraid_irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -547,14 +547,14 @@ GFXDECODE_END
|
||||
|
||||
|
||||
/* handler called by the 3812 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(twincobr_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, linestate);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(twincobr_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -207,10 +207,9 @@ GFXDECODE_END
|
||||
|
||||
/* handler called by the YM2203 emulator when the internal timers cause an IRQ */
|
||||
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(volfied_state::irqhandler)
|
||||
{
|
||||
volfied_state *state = device->machine().driver_data<volfied_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -223,7 +222,7 @@ static const ym2203_interface ym2203_config =
|
||||
DEVCB_NULL,
|
||||
DEVCB_NULL,
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(volfied_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -147,6 +147,7 @@ public:
|
||||
DECLARE_WRITE8_MEMBER(wardner_ramrom_bank_sw);
|
||||
DECLARE_READ8_MEMBER(wardner_bank_r);
|
||||
DECLARE_DRIVER_INIT(wardner);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
|
||||
@ -364,14 +365,14 @@ static const gfx_layout spritelayout =
|
||||
|
||||
|
||||
/* handler called by the 3812 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int linestate)
|
||||
WRITE_LINE_MEMBER(wardner_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, linestate);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface ym3812_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(wardner_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -419,15 +419,14 @@ GFXDECODE_END
|
||||
**************************************************************/
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq )
|
||||
WRITE_LINE_MEMBER(warriorb_state::irqhandler)
|
||||
{
|
||||
warriorb_state *state = device->machine().driver_data<warriorb_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(warriorb_state,irqhandler)
|
||||
};
|
||||
|
||||
/***********************************************************
|
||||
|
@ -290,9 +290,9 @@ GFXDECODE_END
|
||||
|
||||
|
||||
/* handler called by the 2608 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(wc90_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2608_interface ym2608_config =
|
||||
@ -302,7 +302,7 @@ static const ym2608_interface ym2608_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(wc90_state,irqhandler)
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( wc90, wc90_state )
|
||||
|
@ -324,10 +324,10 @@ GFXDECODE_END
|
||||
|
||||
|
||||
/* handler called by the 2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(wc90b_state::irqhandler)
|
||||
{
|
||||
/* NMI writes to MSM ports *only*! -AS */
|
||||
//device->machine().device("audiocpu")->execute().set_input_line(INPUT_LINE_NMI, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
//machine().device("audiocpu")->execute().set_input_line(INPUT_LINE_NMI, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -337,7 +337,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(wc90b_state,irqhandler)
|
||||
};
|
||||
|
||||
static void adpcm_int(device_t *device,int st)
|
||||
|
@ -671,14 +671,14 @@ GFXDECODE_END
|
||||
|
||||
|
||||
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(welltris_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(welltris_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -888,15 +888,14 @@ GFXDECODE_END
|
||||
**************************************************************/
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler( device_t *device, int irq ) // assumes Z80 sandwiched between 68Ks
|
||||
WRITE_LINE_MEMBER(wgp_state::irqhandler) // assumes Z80 sandwiched between 68Ks
|
||||
{
|
||||
wgp_state *state = device->machine().driver_data<wgp_state>();
|
||||
state->m_audiocpu->set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_audiocpu->set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(wgp_state,irqhandler)
|
||||
};
|
||||
|
||||
|
||||
|
@ -550,9 +550,9 @@ GFXDECODE_END
|
||||
|
||||
|
||||
/* handler called by the 2203 emulator when the internal timers cause an IRQ */
|
||||
static void irqhandler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(xain_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(M6809_FIRQ_LINE, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(M6809_FIRQ_LINE, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2203_interface ym2203_config =
|
||||
@ -562,7 +562,7 @@ static const ym2203_interface ym2203_config =
|
||||
AY8910_DEFAULT_LOADS,
|
||||
DEVCB_NULL, DEVCB_NULL, DEVCB_NULL, DEVCB_NULL
|
||||
},
|
||||
DEVCB_LINE(irqhandler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(xain_state,irqhandler)
|
||||
};
|
||||
|
||||
void xain_state::machine_start()
|
||||
|
@ -572,15 +572,14 @@ void yunsun16_state::machine_reset()
|
||||
Magic Bubble
|
||||
***************************************************************************/
|
||||
|
||||
static void soundirq(device_t *device, int state)
|
||||
WRITE_LINE_MEMBER(yunsun16_state::soundirq)
|
||||
{
|
||||
yunsun16_state *yunsun16 = device->machine().driver_data<yunsun16_state>();
|
||||
yunsun16->m_audiocpu->set_input_line(0, state);
|
||||
m_audiocpu->set_input_line(0, state);
|
||||
}
|
||||
|
||||
static const ym3812_interface magicbub_ym3812_intf =
|
||||
{
|
||||
DEVCB_LINE(soundirq) /* IRQ Line */
|
||||
DEVCB_DRIVER_LINE_MEMBER(yunsun16_state,soundirq) /* IRQ Line */
|
||||
};
|
||||
|
||||
static MACHINE_CONFIG_START( magicbub, yunsun16_state )
|
||||
|
@ -131,6 +131,7 @@ public:
|
||||
void atpsx_dma_read(UINT32 *p_n_psxram, UINT32 n_address, INT32 n_size );
|
||||
void atpsx_dma_write(UINT32 *p_n_psxram, UINT32 n_address, INT32 n_size );
|
||||
void jdredd_vblank(screen_device &screen, bool vblank_state);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
||||
inline void ATTR_PRINTF(3,4) zn_state::verboselog( int n_level, const char *s_fmt, ... )
|
||||
@ -1156,14 +1157,14 @@ static ADDRESS_MAP_START( fx1a_sound_map, AS_PROGRAM, 8, zn_state )
|
||||
ADDRESS_MAP_END
|
||||
|
||||
/* handler called by the YM2610 emulator when the internal timers cause an IRQ */
|
||||
static void irq_handler(device_t *device, int irq)
|
||||
WRITE_LINE_MEMBER(zn_state::irqhandler)
|
||||
{
|
||||
device->machine().device("audiocpu")->execute().set_input_line(0, irq ? ASSERT_LINE : CLEAR_LINE);
|
||||
machine().device("audiocpu")->execute().set_input_line(0, state ? ASSERT_LINE : CLEAR_LINE);
|
||||
}
|
||||
|
||||
static const ym2610_interface ym2610_config =
|
||||
{
|
||||
DEVCB_LINE(irq_handler)
|
||||
DEVCB_DRIVER_LINE_MEMBER(zn_state,irqhandler)
|
||||
};
|
||||
|
||||
static const tc0140syt_interface coh1000ta_tc0140syt_intf =
|
||||
|
@ -118,4 +118,5 @@ public:
|
||||
void spikes91_draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
|
||||
void aerfboot_draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
|
||||
void wbbc97_draw_bitmap( bitmap_rgb32 &bitmap );
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
@ -61,4 +61,5 @@ public:
|
||||
virtual void video_start();
|
||||
UINT32 screen_update_angelkds(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
void draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect, int enable_n);
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
@ -96,4 +96,5 @@ public:
|
||||
void valtric_draw_sprites(bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||
void butasan_draw_sprites(bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||
void butasan_log_vram();
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
@ -62,4 +62,5 @@ public:
|
||||
DECLARE_WRITE16_MEMBER( bonzeadv_cchip_ctrl_w );
|
||||
DECLARE_WRITE16_MEMBER( bonzeadv_cchip_bank_w );
|
||||
DECLARE_WRITE16_MEMBER( bonzeadv_cchip_ram_w );
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
@ -497,6 +497,7 @@ public:
|
||||
DECLARE_MACHINE_START(sc4);
|
||||
DECLARE_MACHINE_RESET(sc4);
|
||||
|
||||
DECLARE_WRITE_LINE_MEMBER(bfm_sc4_irqhandler);
|
||||
protected:
|
||||
required_ioport m_io1;
|
||||
required_ioport m_io2;
|
||||
|
@ -64,4 +64,5 @@ public:
|
||||
virtual void video_start();
|
||||
UINT32 screen_update_blktiger(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
void draw_sprites( bitmap_ind16 &bitmap, const rectangle &cliprect );
|
||||
DECLARE_WRITE_LINE_MEMBER(irqhandler);
|
||||
};
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user