Well here is my code, not much to it. Again I am complete novice and I think I'm trying to over simplify the code.

'Program --- Encoder ---
'Initialize variables

symbol trisb = 134
symbol portb = 6
symbol pulse = w1
symbol rpm = w0

'Initialize trisb for input

poke trisb, 1 'Set RB0 to input by bitweight

'Start reading photo opt

start:
pulsin 0, 1, pulse 'Read high pulse off RB0, record to var. pulse
rpm = 50/pulse 'Calculated rpm from pulse
serout 1, n2400, (254, 1)
serout 1, n2400, ("RPM = ", #rpm)

goto start

I was just reading a thread about the math capabilities of the 16F84 and I think I'm calculating something that is not compatible with the MCU. When I multiply the 50 and pulse I do get a result to the LCD. Of course the result is inverted from what I want but the basic code works. Not sure how to handle the decimal I guess is my problem.