Hi,
You are right that the interrupt routine won't execute untill the current PBP statement is finished so it WILL hang on the DEBUGIN statement. This is clearly stated in the manual and the biggest drawback of PBP's way of handling interrupts in Basic. Regarding RESUME....You could say RESUME Label and the execution will continue at Label instead of where it was interrupted.

However, it seems to me that a simple timeout may be enough and DebugIn HAS an optional timeout function that you can use to jump back to your main routine if no data is received within the specified time - that is, as soon as the dataline has been "silent" for the specified time it jumps to the routine of your choise.

If you need to use interrupts in more advanced way than than PBP offers natively then look no further than to Darrel's Instant Interrupt routines, it lets you write your interrupt code in Basic without the drawback of PBP way of handling it.

/Henrik.