I am still in the design stage at present, i am going to be building a small desktop cnc for making / routing / drilling PCB's. I am very interested in electronics and fairly competent, thats why i am building my own stepper controller. I will be using Mach 3 but i guess most software that controls via parallel port works the same. my question if anyone knows it, how does the software send the signals, does it pulse the controller where 1 pulse = 1 step (assuming the hardware is set to full stepping and not micro stepping) and for the direction is it a high for one way and low for the other or is this pulsed? I know how to build it if i know what signals are coming from the parallel port. As i don't have mach 3 yet i don't this.
Read some of the EMC documentation from linuxcnc.org as well as "Using Mach3Mill", downloadable from machsupport.com, to get more specifics. The documentation of both is similar and covers this & other configuration/hardware topics very thoroughly.
The printer port uses a latching register on it's output. Whatever bit pattern that is sent to it is held there on the output. To change the state of one bit, the entire byte is re-written with the appropriate change made. To get a positive pulse on one bit, say bit 3 for example, the computer must write 00001000 and then 00000000. The time between the 2 writes, determines the pulse width which is settable in Mach3.