A STACK Underflow condition is caused by more RETURNs than CALLs (GOSUBs). I have a suggestion; in your ISR Rot_Encoder: change
Code:
IF (New_Bits & 100000) = (Old_Bits & 100000) then DoneRotEnc ' No change.
to
Code:
IF (New_Bits & 100000) = (Old_Bits & 100000) then 
@ GOTO DoneRotEnc ; No change.
ENDIF