Ok, so I enabled spindle relays and routed them to unused pins on my breakout board. So as far as Mach is concerned it thinks it's turning on a physical relay. Unfortunately, no change in the issue.
I also tried deleting my linearity.dat file as I know this is related to spindle speed and let mach rebuild the file on the next restart. This didn't work either.
I reverted the machine to ver 062 from 066, however I don't think I did a 'clean' uninstall. I thought I would have to copy my xml and macros back into the mach3 folder and this was not the case they were still there. I need to do some more forum research on how to revert to a previous version. So, it's possible it is still an issue. I just used the windows 'uninstall a program'.
But for now, anytime 'use spindle feedback in sync mode' is checked I don't get the requested program feedrate. actual feedrate is always much lower. At least I can 'uncheck' it and make parts while I try and figure it out.
I'm hoping it's just a corrupt file somewhere in the mach installation and a clean re-install will fix it but I'm really stumped. I've not seen this symptom anywhere on the forum after a few hours of searching. I've been considering moving away from the parallel port to motion controller (and probably Mach4 as well), but I'm not even convinced that is what is causing my troubles. Thanks again for your help.