The auto set-up is what wasn't working. The rig has been rewired and oddly the switches are now all recognised by mach3, it must have been a loose connection.
Mach3 continues to crash in constant vel jog mode, however step jogging works fine.
Another question - my stepper motors do 1/100" per step or 39.37mm per step. So If I run G code X+1, X-1. X0, surely the progam would take that as X+1 (39.37 x 1 = 39 steps), X-1 (39.37 x 2 = 79steps), X0 (39.37 x 1 = 39 steps), so at the end of the program it would be 1 step out of alignment? the resolution of my stepper motor will give me low accuracy?