Add IRQ logic