For immediate response to interrupts - use assembler interrupts.

For BASIC interrupts with a faster interrupt response time, break down
your pause times into smaller increments in a loop.

Instead of PAUSE 500 ' <-- 500mS delay before interrupt service

X VAR WORD

FOR X = 1 to 20000 ' ~500mS total
PAUSEUS 25 ' <-- 25uS delay before interrupt service
NEXT X

Just take into account that the time spent in your interrupt handler will add
to the overall time delay in your loop if the interrupt happens while in a delay
loop.