For a start lose the four diodes feeding the bottom transistors, they will stop any chance of the bottom transistors ever getting switched on. The configuration you have requires the port to go low to turn the transistors on. I would suggest your first step is to build just one driver assembly, and test it's performance, modifying it as required.
The upper transistors can't be switched the way they are either, I would suggest using PNP outputs and NPN drivers (in a mirror image of the bottom ones). As the supply if higher than 5V, you need extra transistors to feed them from the port (NPN, with the emitter to ground, the collector feeding the base of the compound darlington and a resistor to the motor supply. Something like the attached circuit.
I would also suggest building one of these and testing it as well.