Du hast nur einen Codeschnipsel veröffentlicht. Ich vermute, du benutzt den Interrupt ohne der Nosave-Option.
Ein Interrupt sprengt dann schnell den Rahmen - besser gesagt überschreibt Dir ein paar Variablen

Bascom-Handbuch:
HW Stack ... An interrupt needs 32 bytes.
bzw. im Detail:
Code:
push r0 
push r1 
push r2 
push r3 
push r4 
push r5 
push r7 
push r10 
push r11 
push r16 
push r17 
push r18 
push r19 
push r20 
push r21 
push r22 
push r23 
push r24 
push r25 
push r26 
push r27 
push r28 
push r29 
push r30 
push r31 
in r24, SREG 
push r24
... 'Code
pop r24 
out SREG, r24 
pop r31 
pop r30 
pop r29 
pop r28 
pop r27 
pop r26 
pop r25 
pop r24 
pop r23 
pop r22 
pop r21 
pop r20 
pop r19 
pop r18 
pop r17 
pop r16 
pop r11 
pop r10 
pop r7 
pop r5 
pop r4 
pop r3 
pop r2 
pop r1 
pop r0 
reti