Hi,
I haven't seen the previous thread you mention so I'm just thinking out loud here.....hoping not to repeat what's already been covered.

When the program GOSUB's a subroutine it pushes the return adress on the top of the stack. So what if you, just before your GOTO instruction, POP the adress from stack, effectivly canceling the GOSUB?

Now, the 16F series doesn't seem to have a way to POP the stack from software but the 18F series does indeed have both a PUSH and POP command so it may be possible....

Any expert insight on this?

/Henrik Olsson.