Another quick question on the pc you are using (and Doddy is making useful inputs on the BoB side so these are parallel lines of enquiry!) - are you using a laptop or desktop machine?

Laptops can be problematic with Mach3 and use of the parallel port. For one thing, laptop processors have a habit of electronically saying, "hang on a minute - I'm just going to do a bit of internal housekeeping." This might only be for a few tens of milliseconds and as a user you would never notice it but it completely screws Mach3's internal timing. The other issue is that later PCs and especially laptops only supply 3.3V on the parallel port, not 5V as older systems would provide. Both these are good reasons for using an external motion controller which offloads the time-critical bits of the processing and provide cleaner and more reliable signals to the outside world.

As a follow-up - how are you powering your BOB? Does it have its own PSU - plug-in charger-like device? - or running off a USB port? Using the latter can also give issues.

Trouble with your kind of question is that part of the fault-finding process can sound very critical but without knowing a lot of what might seem irrelevant details it's difficult to understand what's sitting in front of you - just blame the bloke you got it from!