For a long delay like 9 seconds, I use Steve's calculator utility to set up a timer to go for 10 milliseconds. Then I use Darrell's Instant Interrupts, and set up an interrupt, let's say for Timer 3. I just set my variable seconds to 0, and then enable the timer interrupt. When the 10 ms. is up, the interrupt goes to the following;

'********************** TIMER 3 INTERRUPT*************************************
TIMER3INT: 'THIS INTERRUPT OCCURS EVERY 10 MILLISECONDS
TICKS = TICKS + 1 'INCREMENT TICKS
IF TICKS > 100 THEN
TICKS = 0
SECONDS = SECONDS + 1
ENDIF
@ INT_RETURN
'********************** END TIMER 3 INTERRUPT ********************************
now I just add a line in my main program to see if seconds is equal to nine, and when it is I disable the interrupt and go do what ever comes next. This works well if I'm waiting for a user to make a selection, I'll wait ten seconds, and if they don't respond, then the program will move on.

Good Luck!

Jerry.