static INTERRUPT_GEN(lethalen_interrupt) { lethal_state *state = device->machine().driver_data<lethal_state>(); if (k056832_is_irq_enabled(state->m_k056832, 0)) device_set_input_line(device, HD6309_IRQ_LINE, HOLD_LINE); }
static INTERRUPT_GEN(lethalen_interrupt) { lethal_state *state = (lethal_state *)device->machine->driver_data; if (k056832_is_irq_enabled(state->k056832, 0)) cpu_set_input_line(device, HD6309_IRQ_LINE, HOLD_LINE); }
static INTERRUPT_GEN( asterix_interrupt ) { asterix_state *state = (asterix_state *)device->machine->driver_data; // global interrupt masking if (!k056832_is_irq_enabled(state->k056832, 0)) return; cpu_set_input_line(device, 5, HOLD_LINE); /* ??? All irqs have the same vector, and the mask used is 0 or 7 */ }
static INTERRUPT_GEN( gijoe_interrupt ) { gijoe_state *state = device->machine->driver_data<gijoe_state>(); // global interrupt masking (*this game only) if (!k056832_is_irq_enabled(state->k056832, 0)) return; if (k053246_is_irq_enabled(state->k053246)) { gijoe_objdma(device->machine); // 42.7us(clr) + 341.3us(xfer) delay at 6Mhz dotclock timer_adjust_oneshot(state->dmadelay_timer, JOE_DMADELAY, 0); } // trigger V-blank interrupt if (state->cur_control2 & 0x0080) cpu_set_input_line(device, 5, HOLD_LINE); }