Being the control freak that I am, I don't use basic, I use assembler, that way you know exactly what's what, where etc.
My daft example here uses a timer and interrupt on change, and assuming the lathe isn't going faster than 65535 rpm you'll be fine.
clear 4 regs, call em something like count_low, count_high, rpm_low, rpm_high
set your timer interrupt for a 1 sec period
each time your interrupt occurs check to see whether it was an interrupt on change, or a timer overflow.
If it was an interrupt on change
then add 1 to count_low
check to see if count_low has overflowed
if it has add 1 to count_high
check to see if count_high has overflowed
if it has, set an led on to indicate lathe is outta control
if it was a timer overflow interrupt then
multiply your counter value in both count_low and count_high by 60
to give you rpm and store it somewhere like rpm_low and rpm_high
reset your timer for a 1 sec period
clear your counters again
display your rpm
back to main code loop till next interrupt
I hope this gives you some ideas...