Thanks mister_e ,

this is my code, i use timer as counter.
but it count upto 256 and reset to 0, I see datasheet timer0 is 8 bit
how i set to tomer1 on pic16f877

'-------- PIC16F84A -----------------------
DEFINE OSC 16 ' use 16 MHZ oscillator
INCLUDE "MYLCD.BAS" ' LCD ON PORTB

input PORTA.4

OPTION_REG = %10110000 ' TMR0 clock source : RA4/T0CKI
' increment on low to high transition
' Prescaler assign to WDT
' WDT rate 1:1


INTCON = %10100000 ' Enable global interrupt
' Enable TMR0 overflow interrupt

ClockInput var PORTA.4 ' Input pin for signal
COUNTER var word ' Result of count to be send to 7 segment display
OverFlowVar var word


COUNTER = 0 ' set initial value of count
TMR0 = 0 ' reset prescaller
on interrupt goto MyInit



LOOP:
lcdout $fe,1
lcdout "count ", dec5 COUNTER
pause 20

COUNTER = OverFlowVar+ TMR0
OverFlowVar = 0 ' Reset OverFlowVar
goto Loop


disable
MyInit:

OverFlowVar = OverFlowVar + 65535
INTCON.2 = 0 ' clear overflow flag
TMR0 = 0 ' reload TMR0
resume
enable