It's always a good idea to post your code. It's difficult to help otherwise ........

Count uses FSR and RM1. FSR needs to be saved and restored in your ASM blocks. RM1 is a PBP variable and needs to be saved and restored the same way as R0,1,2 and 3.
Code:
fsave var byte bank0 system
rm1 var word bank0

asm
display
         movwf wsave ; display rutine
         swapf STATUS, W
         clrf STATUS
         movwf ssave
         movf PCLATH, W
         movwf psave
         movf FSR,w
         movwf fsave
endasm
r0save = R0
r1save = R1
r2save = R2
r3save = R3
rm1save = RM1

'blah blah ......

R0 = r0save
R1 = r1save
R2 = r2save
R3 = r3save
RM1 = rm1save
asm
         bcf INTCON, 1
         movf fsave,w
         movwf FSR
         movf psave, W
         movwf PCLATH
         swapf ssave, W
         movwf STATUS
         swapf wsave, F
         swapf wsave, W
         retfie
endasm
It's always a good idea to tell wich PIC and compiler you're using.

/Ingvar