The software was implemented using Microsoft Visual C++. A DB-25 parallel port was used for communicating with the robot via the electronics. The software had to supply all operational data for the robot including: resetting the robot, selecting which motor receives clock pulse, selecting direction of each motor, and rotating the robot with the use of up to three motors simultaneously. In addition to providing an interface for the user, the software has built in text file reading and writing abilities. The user can simply create a comma delimited text file with a finite number positions that the robot will loop through.