本文整理汇总了C++中cpu_getiloops函数的典型用法代码示例。如果您正苦于以下问题:C++ cpu_getiloops函数的具体用法?C++ cpu_getiloops怎么用?C++ cpu_getiloops使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了cpu_getiloops函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: INTERRUPT_GEN
static INTERRUPT_GEN( firetrap )
{
firetrap_state *state = (firetrap_state *)device->machine->driver_data;
/* Check for coin IRQ */
if (cpu_getiloops(device))
{
if ((input_port_read(device->machine, "COIN") & 0x7) != 0x7 && !state->int_latch)
{
state->coin_command_pending = ~input_port_read(device->machine, "COIN");
state->int_latch = 1;
}
if ((input_port_read(device->machine, "COIN") & 0x7) == 0x7)
state->int_latch = 0;
/* Make sure coin IRQ's aren't generated when another command is pending, the main cpu
definitely doesn't expect them as it locks out the coin routine */
if (state->coin_command_pending && !state->i8751_current_command)
{
state->i8751_return = state->coin_command_pending;
cpu_set_input_line_and_vector(device, 0, HOLD_LINE, 0xff);
state->coin_command_pending = 0;
}
}
if (state->nmi_enable && !cpu_getiloops(device))
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
示例2: INTERRUPT_GEN
static INTERRUPT_GEN( shaolins_interrupt )
{
if (cpu_getiloops(device) == 0) cpu_set_input_line(device, 0, HOLD_LINE);
else if (cpu_getiloops(device) % 2)
{
if (shaolins_nmi_enable & 0x02) cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
}
示例3: thunderx_interrupt
static int thunderx_interrupt( void )
{
if (K052109_is_IRQ_enabled())
{
if (cpu_getiloops() == 0) return KONAMI_INT_IRQ;
else if (cpu_getiloops() & 1) return KONAMI_INT_FIRQ; /* ??? */
}
return ignore_interrupt();
}
示例4: shaolins_interrupt
int shaolins_interrupt(void)
{
if (cpu_getiloops() == 0) return interrupt();
else if (cpu_getiloops() % 2)
{
if (*shaolins_nmi_enable & 0x02) return nmi_interrupt();
}
return ignore_interrupt();
}
示例5: INTERRUPT_GEN
static INTERRUPT_GEN( xorworld_interrupt )
{
if (cpu_getiloops() == 0)
{
cpunum_set_input_line(0, 2, HOLD_LINE);
}
else if (cpu_getiloops() % 2)
{
cpunum_set_input_line(0, 6, HOLD_LINE);
}
}
示例6: INTERRUPT_GEN
static INTERRUPT_GEN( pingpong_interrupt )
{
if (cpu_getiloops(device) == 0)
{
if (intenable & 0x04) cpu_set_input_line(device, 0, HOLD_LINE);
}
else if (cpu_getiloops(device) % 2)
{
if (intenable & 0x08) cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
}
示例7: ironhors_interrupt
static int ironhors_interrupt(void)
{
if (cpu_getiloops() == 0)
{
if (*ironhors_interrupt_enable & 4) return M6809_INT_FIRQ;
}
else if (cpu_getiloops() % 2)
{
if (*ironhors_interrupt_enable & 1) return nmi_interrupt();
}
return ignore_interrupt();
}
示例8: finalizr_interrupt
static int finalizr_interrupt(void)
{
if (cpu_getiloops() == 0)
{
if (*finalizr_interrupt_enable & 2) return M6809_INT_IRQ;
}
else if (cpu_getiloops() % 2)
{
if (*finalizr_interrupt_enable & 1) return nmi_interrupt();
}
return ignore_interrupt();
}
示例9: labyrunr_interrupt
static int labyrunr_interrupt(void)
{
if (cpu_getiloops() == 0)
{
if (K007121_ctrlram[0][0x07] & 0x02) return HD6309_INT_IRQ;
}
else if (cpu_getiloops() % 2)
{
if (K007121_ctrlram[0][0x07] & 0x01) return nmi_interrupt();
}
return ignore_interrupt();
}
示例10: INTERRUPT_GEN
static INTERRUPT_GEN( ironhors_interrupt )
{
if (cpu_getiloops(device) == 0)
{
if (*ironhors_interrupt_enable & 4)
cpu_set_input_line(device, M6809_FIRQ_LINE, HOLD_LINE);
}
else if (cpu_getiloops(device) % 2)
{
if (*ironhors_interrupt_enable & 1)
cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE);
}
}
示例11: INTERRUPT_GEN
static INTERRUPT_GEN( finalizr_interrupt )
{
if (cpu_getiloops() == 0)
{
if (*finalizr_interrupt_enable & 2)
cpunum_set_input_line(0, M6809_IRQ_LINE, HOLD_LINE);
}
else if (cpu_getiloops() % 2)
{
if (*finalizr_interrupt_enable & 1)
cpunum_set_input_line(0, INPUT_LINE_NMI, PULSE_LINE);
}
}
示例12: pingpong_interrupt
static int pingpong_interrupt(void)
{
if (cpu_getiloops() == 0)
{
if (*intenable & 0x04) return interrupt();
}
else if (cpu_getiloops() % 2)
{
if (*intenable & 0x08) return nmi_interrupt();
}
return ignore_interrupt();
}
示例13: INTERRUPT_GEN
static INTERRUPT_GEN( labyrunr_interrupt )
{
if (cpu_getiloops() == 0)
{
if (K007121_ctrlram[0][0x07] & 0x02)
cpunum_set_input_line(0, HD6309_IRQ_LINE, HOLD_LINE);
}
else if (cpu_getiloops() % 2)
{
if (K007121_ctrlram[0][0x07] & 0x01)
cpunum_set_input_line(0, INPUT_LINE_NMI, PULSE_LINE);
}
}
示例14: INTERRUPT_GEN
static INTERRUPT_GEN( ironhors_interrupt )
{
if (cpu_getiloops() == 0)
{
if (*ironhors_interrupt_enable & 4)
cpu_set_irq_line(0, M6809_FIRQ_LINE, HOLD_LINE);
}
else if (cpu_getiloops() % 2)
{
if (*ironhors_interrupt_enable & 1)
cpu_set_irq_line(0, IRQ_LINE_NMI, PULSE_LINE);
}
}
示例15: INTERRUPT_GEN
GFXDECODE_END
static INTERRUPT_GEN( xorworld_interrupt )
{
if (cpu_getiloops(device) == 0)
{
cpu_set_input_line(device, 2, HOLD_LINE);
}
else if (cpu_getiloops(device) % 2)
{
cpu_set_input_line(device, 6, HOLD_LINE);
}
}