本文整理汇总了C++中cputag_set_input_line函数的典型用法代码示例。如果您正苦于以下问题:C++ cputag_set_input_line函数的具体用法?C++ cputag_set_input_line怎么用?C++ cputag_set_input_line使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了cputag_set_input_line函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: INTERRUPT_GEN
static INTERRUPT_GEN( sm1800_vblank_interrupt )
{
sm1800_state *state = device->machine().driver_data<sm1800_state>();
cputag_set_input_line(device->machine(), "maincpu", 0, state->m_irq_state ? HOLD_LINE : CLEAR_LINE);
state->m_irq_state ^= 1;
}
开发者ID:risico,项目名称:jsmess,代码行数:6,代码来源:sm1800.c
示例2: WRITE8_HANDLER
static WRITE8_HANDLER( sound_cpu_command_w )
{
soundlatch_w(space, offset, data);
cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE);
}
开发者ID:AltimorTASDK,项目名称:shmupmametgm,代码行数:5,代码来源:sidepckt.c
示例3: TIMER_CALLBACK
static TIMER_CALLBACK( irq5_gen )
{
cputag_set_input_line(machine, "maincpu", R3000_IRQ5, ASSERT_LINE);
}
开发者ID:Paulodx,项目名称:sdl-mame-wii,代码行数:4,代码来源:policetr.c
示例4: WRITE8_HANDLER
static WRITE8_HANDLER( gyruss_i8039_irq_w )
{
cputag_set_input_line(space->machine, "audio2", 0, ASSERT_LINE);
}
开发者ID:Paulodx,项目名称:sdl-mame-wii,代码行数:4,代码来源:gyruss.c
示例5: READ8_HANDLER
static READ8_HANDLER( magmax_sound_irq_ack )
{
cputag_set_input_line(space->machine(), "audiocpu", 0, CLEAR_LINE);
return 0;
}
开发者ID:rogerjowett,项目名称:ClientServerMAME,代码行数:5,代码来源:magmax.c
示例6: MACHINE_RESET
static MACHINE_RESET( friskyt )
{
/* start with the protection mcu halted */
cputag_set_input_line(machine, "mcu", INPUT_LINE_HALT, ASSERT_LINE);
}
开发者ID:risico,项目名称:jsmess,代码行数:5,代码来源:seicross.c
示例7: update_interrupts
static void update_interrupts(running_machine *machine)
{
cputag_set_input_line(machine, "maincpu", 1, vblank_interrupt_pending ? ASSERT_LINE : CLEAR_LINE);
cputag_set_input_line(machine, "maincpu", 2, display_position_interrupt_pending ? ASSERT_LINE : CLEAR_LINE);
cputag_set_input_line(machine, "maincpu", 3, irq3_pending ? ASSERT_LINE : CLEAR_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:6,代码来源:neogeo.c
示例8: audio_cpu_irq
static void audio_cpu_irq(const device_config *device, int assert)
{
cputag_set_input_line(device->machine, "audiocpu", 0, assert ? ASSERT_LINE : CLEAR_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:4,代码来源:neogeo.c
示例9: WRITE8_HANDLER
static WRITE8_HANDLER( xyonix_irqack_w )
{
cputag_set_input_line(space->machine, "maincpu", 0, CLEAR_LINE);
}
开发者ID:hstampfl,项目名称:mame2010-libretro,代码行数:4,代码来源:xyonix.c
示例10: TIMER_CALLBACK
static TIMER_CALLBACK( irq_off )
{
cputag_set_input_line(machine, "maincpu", M6809_IRQ_LINE, CLEAR_LINE);
}
开发者ID:DarrenBranford,项目名称:MAME4iOS,代码行数:4,代码来源:balsente.c
示例11: INTERRUPT_GEN
static INTERRUPT_GEN( vtech2_interrupt )
{
cputag_set_input_line(device->machine(), "maincpu", 0, HOLD_LINE);
}
开发者ID:kleopatra999,项目名称:mess-svn,代码行数:4,代码来源:vtech2.c
示例12: TIMER_CALLBACK
static TIMER_CALLBACK( thunderx_firq_callback )
{
cputag_set_input_line(machine, "maincpu", KONAMI_FIRQ_LINE, HOLD_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:4,代码来源:thunderx.c
示例13: audio_cpu_assert_nmi
static void audio_cpu_assert_nmi(running_machine *machine)
{
cputag_set_input_line(machine, "audiocpu", INPUT_LINE_NMI, ASSERT_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:4,代码来源:neogeo.c
示例14: WRITE_LINE_DEVICE_HANDLER
static WRITE_LINE_DEVICE_HANDLER( zaccaria_irq0b )
{
cputag_set_input_line(device->machine(), "audiocpu", 0, state ? ASSERT_LINE : CLEAR_LINE);
}
开发者ID:risico,项目名称:jsmess,代码行数:4,代码来源:zaccaria.c
示例15: WRITE8_HANDLER
static WRITE8_HANDLER( audio_cpu_clear_nmi_w )
{
cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, CLEAR_LINE);
}
开发者ID:nitrologic,项目名称:emu,代码行数:4,代码来源:neogeo.c
示例16: WRITE_LINE_DEVICE_HANDLER
static WRITE_LINE_DEVICE_HANDLER( ipu_ctc_interrupt )
{
cputag_set_input_line(device->machine(), "ipu", 0, state);
}
开发者ID:kleopatra999,项目名称:mess-svn,代码行数:4,代码来源:mcr.c
示例17: update_interrupt_state
static void update_interrupt_state(running_machine &machine)
{
compis_state *state = machine.driver_data<compis_state>();
int i, j, new_vector = 0;
if (LOG_INTERRUPTS) logerror("update_interrupt_status: req=%02X stat=%02X serv=%02X\n", state->m_i186.intr.request, state->m_i186.intr.status, state->m_i186.intr.in_service);
/* loop over priorities */
for (i = 0; i <= state->m_i186.intr.priority_mask; i++)
{
/* note: by checking 4 bits, we also verify that the mask is off */
if ((state->m_i186.intr.timer & 15) == i)
{
/* if we're already servicing something at this level, don't generate anything new */
if (state->m_i186.intr.in_service & 0x01)
return;
/* if there's something pending, generate an interrupt */
if (state->m_i186.intr.status & 0x07)
{
if (state->m_i186.intr.status & 1)
new_vector = 0x08;
else if (state->m_i186.intr.status & 2)
new_vector = 0x12;
else if (state->m_i186.intr.status & 4)
new_vector = 0x13;
else
popmessage("Invalid timer interrupt!");
/* set the clear mask and generate the int */
state->m_i186.intr.ack_mask = 0x0001;
goto generate_int;
}
}
/* check DMA interrupts */
for (j = 0; j < 2; j++)
if ((state->m_i186.intr.dma[j] & 15) == i)
{
/* if we're already servicing something at this level, don't generate anything new */
if (state->m_i186.intr.in_service & (0x04 << j))
return;
/* if there's something pending, generate an interrupt */
if (state->m_i186.intr.request & (0x04 << j))
{
new_vector = 0x0a + j;
/* set the clear mask and generate the int */
state->m_i186.intr.ack_mask = 0x0004 << j;
goto generate_int;
}
}
/* check external interrupts */
for (j = 0; j < 4; j++)
if ((state->m_i186.intr.ext[j] & 15) == i)
{
/* if we're already servicing something at this level, don't generate anything new */
if (state->m_i186.intr.in_service & (0x10 << j))
return;
/* if there's something pending, generate an interrupt */
if (state->m_i186.intr.request & (0x10 << j))
{
/* otherwise, generate an interrupt for this request */
new_vector = 0x0c + j;
/* set the clear mask and generate the int */
state->m_i186.intr.ack_mask = 0x0010 << j;
goto generate_int;
}
}
}
return;
generate_int:
/* generate the appropriate interrupt */
state->m_i186.intr.poll_status = 0x8000 | new_vector;
if (!state->m_i186.intr.pending)
cputag_set_input_line(machine, "maincpu", 0, ASSERT_LINE);
state->m_i186.intr.pending = 1;
machine.scheduler().trigger(CPU_RESUME_TRIGGER);
if (LOG_OPTIMIZATION) logerror(" - trigger due to interrupt pending\n");
if (LOG_INTERRUPTS) logerror("(%f) **** Requesting interrupt vector %02X\n", machine.time().as_double(), new_vector);
}
开发者ID:risico,项目名称:jsmess,代码行数:86,代码来源:compis.c
示例18: compis_irq_set
void compis_irq_set(UINT8 irq)
{
cputag_set_input_line_vector(machine, "maincpu", 0, irq);
cputag_set_input_line(machine, "maincpu", 0, HOLD_LINE);
}
开发者ID:risico,项目名称:jsmess,代码行数:5,代码来源:compis.c
示例19: irqhandler
static void irqhandler(running_device *device, int irq)
{
cputag_set_input_line(device->machine, "soundcpu", 0, irq ? ASSERT_LINE : CLEAR_LINE);
}
开发者ID:DarrenBranford,项目名称:MAME4iOS,代码行数:4,代码来源:powerins.c
示例20: WRITE16_HANDLER
static WRITE16_HANDLER( main_sound_latch_w )
{
soundlatch_w(space,0,data&0xff);
cputag_set_input_line(space->machine, "soundcpu", INPUT_LINE_NMI, PULSE_LINE);
}
开发者ID:DarrenBranford,项目名称:MAME4iOS,代码行数:5,代码来源:bingoc.c
注:本文中的cputag_set_input_line函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论