Be sure you have DISABLE before your interrupt service routine, and ENABLEmem_addr=mem_addr+16
GoTo dummy '<--- this will be a problem
EndIF
...
Wend
Resume
Enable < -- do not GOTO outside of this block
after your interrupt service routine, and you stay within this block until you're
finished with the interrupt service.
Do NOT jump or GOTO outside the DISABLE ENABLE block. If you do, you have
problems with the stack, and you're landing in a code section that will loop
right back to the start of your interrupt service routine.
You may get away with this on a 16F part since it will re-cycle back to the
beginning of the stack. On the 18F part, it stops at the last location, and you
cannot push another address onto the stack.
Bookmarks