use irq to vsync