Hola
curio, te paso algunas de mis sugerencias.
A1 MOVWF PORTB
CALL DELAY
COMF PORTB,F
GOTO A1
Fíjate, aquí tu complementas el puerto B, pero luego haces un GOTO A1. En esa línea, tu mueves el contenido del WREG al Puerto B, sobreescribiendo lo que habías puesto antes en el PUERTOB.
Mueve el label A1, una línea más abajo, puntualmente en "CALL DELAY"
DELAY
MOVLW .5
MOVWF CUENTA
BSF T2CON,TMR2ON
A2 BTFSS PIR2,TMR2IF
GOTO $-1
BCF PIR2,TMR2IF
DECFSZ CUENTA,F
GOTO A2
RETURN
END
El TMR2IF, no está en el PIR2, sino en el PIR1. Cambia el código donde lo tengas por PIR1,TMR2IF
Espero te sirva de ayuda.
Saludos