static void apollo_pic_set_irq_line(device_t *device, int irq, int state) { // don't log PTM interrupts if (irq != APOLLO_IRQ_PTM) { DLOG1(("apollo_pic_set_irq_line: irq=%d state=%d", irq, state)); } switch (irq) { case 0: pic8259_ir0_w(get_pic8259_master(device), state); break; case 1: pic8259_ir1_w(get_pic8259_master(device), state); break; case 2: pic8259_ir2_w(get_pic8259_master(device), state); break; case 3: pic8259_ir3_w(get_pic8259_master(device), state); break; case 4: pic8259_ir4_w(get_pic8259_master(device), state); break; case 5: pic8259_ir5_w(get_pic8259_master(device), state); break; case 6: pic8259_ir6_w(get_pic8259_master(device), state); break; case 7: pic8259_ir7_w(get_pic8259_master(device), state); break; case 8: pic8259_ir0_w(get_pic8259_slave(device), state); break; case 9: pic8259_ir1_w(get_pic8259_slave(device), state); break; case 10: pic8259_ir2_w(get_pic8259_slave(device), state); break; case 11: pic8259_ir3_w(get_pic8259_slave(device), state); break; case 12: pic8259_ir4_w(get_pic8259_slave(device), state); break; case 13: pic8259_ir5_w(get_pic8259_slave(device), state); break; case 14: pic8259_ir6_w(get_pic8259_slave(device), state); break; case 15: pic8259_ir7_w(get_pic8259_slave(device), state); break; } }
static void pc9801_sound_irq( device_t *device, int irq ) { // pc9801_state *state = device->machine().driver_data<pc9801_state>(); /* TODO: seems to die very often */ pic8259_ir4_w(device->machine().device("pic8259_slave"), irq); }
static WRITE_LINE_DEVICE_HANDLER( apricot_wd2793_intrq_w ) { apricot_state *st = device->machine().driver_data<apricot_state>(); pic8259_ir4_w(st->m_pic8259, state); // i8089 external terminate channel 1 }
static WRITE_LINE_DEVICE_HANDLER( at_com_interrupt_1 ) { pic8259_ir4_w(device->machine().device("pic8259_1"), state); }
static INS8250_INTERRUPT( at_com_interrupt_1 ) { pic8259_ir4_w(device->machine->device("pic8259_1"), state); }
/* called when a interrupt is set/cleared from com hardware */ static WRITE_LINE_DEVICE_HANDLER( pc_com_interrupt_1 ) { pc_state *st = device->machine().driver_data<pc_state>(); pic8259_ir4_w(st->m_pic8259, state); }