After INT0 interrupt you are not clearing INT0IF variable. I don't know does it make difference or not, but add
Code:
INT0IF = 0
before last ENDIF in INT0 interrupt section.


Also TMR0 comment is not valid. It should be ON
Code:
INTCON =  %10110000 ' Global, TMR0 off, INT0 ON
BR,
-Gusse-