> In my 16F628 program I call a subroutine that waits for an event to happen. > If the event does not happen within a certain length of time can I use a > goto instruction to restart the program from a known point, without using a > return instruction to pop the return address back off the stack ? > I know this will cause a stack underflow(?) condition, but since the stack > is a circular buffer surely it won't matter because subsequent calls will > have the required return to go with them - or will it ? Stack overflow is never a problem, it is the stack underflow (that in most cases unavoidably follows a stack overflow) that is the problem. But what you describe is one of the specialised uses of stack overflow that does not cause a later underflow (because you skip a return), so this use ie perfectly OK. Wouter van Ooijen -- Van Ooijen Technische Informatica: http://www.voti.nl Jal compiler, Wisp programmer, WLoader bootloader, PICs kopen -- http://www.piclist.com hint: To leave the PICList mailto:piclist-unsubscribe-request@mitvma.mit.edu