A easy h-bridge that we used to use to control our robots using gw basic on old computers and there parallel printer ports (LPT) we often would use pulse width modulation (varying on time to off time of logic) to vary our motor speed if you where to actually build this you would want to ad limit resistors that I omitted for clarity of operation