Hi, here is the code I i'm using to test count and asm interruprs with a 16f84a, some var are in sapanish, I hope it's no a problem to understand it, I can't find what is wrong with it.

define osc 20


clear

pulsos var byte

x var word ; display value

num var byte


velocidad var byte

wsave var byte $20 system
ssave var byte bank0 system
psave var byte bank0 system
r0save VAR WORD bank0
r1save VAR WORD bank0
r2save VAR WORD bank0
r3save VAR WORD bank0
fsave var byte bank0 system
rm1save var word bank0



TRISA = %11111111

TRISB = %00000000


goto start


define INTHAND display



start:

option_reg = %00000011


intcon = %10100000

main:



count porta.2,1000,pulsos



x = pulsos


goto main






asm
display
ENDASM

r0save = R0
r1save = R1
r2save = R2
r3save = R3
fsave = fsr
rm1save = RM1

ASM
movwf wsave
swapf STATUS, W
clrf STATUS
movwf ssave
movf PCLATH, W
movwf psave

endasm



num = x dig 0

portb = num

high portb.4

pause 7

low portb.4

num = x dig 1

portb = num

high portb.5

pause 7

low portb.5

num = x dig 2

portb = num

high portb.6

pause 7

low portb.6

TMR0 = 60

INTCON.2 = 0

asm

movf psave, W

movf psave, W
movwf PCLATH
swapf ssave, W
movwf STATUS
swapf wsave, F
swapf wsave, W
endasm

fsr = fsave
R0 = r0save
R1 = r1save
R2 = r2save
R3 = r3save
RM1 = rm1save

asm
retfie
endasm