add simple irq impl