Hi Gang,
Today, I played around and got a couple of programs running on a 16F877A. One program monitors internal Timer1 overflows and flips a port bit every 210 counts, to produce a 1 second clock pulse. And this without an interrupt handling routine.

(snippet)
'setup option register for TMR0
option_reg = %01010111 ' interrupt w/max

mainloop:
if TMR0 = 255 THEN
counting = counting + 1
if counting = 210 then
counting = 0
PORTD = PORTD ^ %00000001 'flip bit 0 for a clock
endif
endif
goto mainloop


The other program sets Timer1 up with pin-15 as its clock source, with prescaler=8. The main-loop starts Timer1, pauses for 1 second then turns off Timer1. Then displays the max count held within TMR1, which is offcourse <= 65535 with a max frequency input of 500khz. And this without an interrupt handling routine.

So here is what I'm wondering:
What I think I should be able to do is count in the main-loop, both Timer0 and Timer1 overflows. Timer0 clocking from internal source. Timer1 clocking from pin 15.
When timer0 overflow count = 210, then exit out of the loop, turn off Timer1 and process Timer1's overflow count.

The number of Timer1 overflows will act as a multiplier value.
An overflow count of 2, for example would represent an clock input frequency of a little over 1mhz.

Wondering how realistic you think my plan might be?
I hoping to code a frequency counter that will count up to 30mhz without having to use an external ripple counter.

Big thanks!!
dw