Diagram 3     The printer port, or "parallel" port wiring on the computer connector, is divided into an 8 bit "word" output, a 5 bit input, a 4 bit output, and a row of 8 ground pins. There is no power source here, hence the need to connect "power" circuits to the +5 volt internal wiring. The computer has no idea what a printer port is, and simply sees 3 "mailboxes" or memory locations, all with a row of 8 boxes, which contain either a zero or a one. At memory location 378, if there is a "one" in any of the 8 boxes, then a chip puts +5 volts on the corresponding pin of the 8 data pins ( marked D above). If there is a "zero" in any of the 8 "boxes" in memory location 378, then the printer port chip puts out zero volts (ground) on the pins in the same place. The DATA pins run from pin 2 to pin 9. If memory location 378 (in Hexadecimal shorthand, or Hex counting system), has the 8 bit location with
1 0 0 1 1 0 1 1, then pins 9 thru 2 would =
5 0 0 5 5 0 5 5 volts. Very simple. The 5 input pins, marked "S" above, are a bit more tricky, but work much the same way. If  YOU put +5 volts on any of the pins, then the printer port control chip on the computer, PUTS a "one" into the memory location at the corresponding place. All memory locations in the computer's memory are in 8-bit groups ( a byte ), and the early computers were all " 8 bit " computers. Since only 5 input pins are connected to the memory location, there are 3 bits ( or memory boxes), which are unused. The designers of the printer, or parallel port, decided to skip the first three locations, so that the first three bits, of the 8, are not used. The location of the memory slot is the next memory location, up one from the DATA memory location of 378, (Hex), and you can see what INPUT pins have +5v or 0v, by looking at memory location 379 (Hex). Since the first 3 locations are not used, we look at the 8 bit location from bits 3 to 7 , skipping over locations 0, 1, and 2. ( for a total of 8 - note that in counting numbers on a computer, you always START AT ZERO !!!, not "one" , so that memory location "7" is the "eightth " number... ). To further confuse the 'simple' port, the engineers wired in the last digit of the INPUT pins, backwards! - so that you have to put in ZERO Volts to get a "one" in the memory location, and +5 volts, to get location 379 (H) bit number 7, to have a "zero" . They did this so that if a printer was NOT connected, then the computer would see NO voltage, and know that nothing was there - If zero volts was used, then unplugging the printer would still INPUT zero volts, and the computer would assume that something was still connected. Also note the strange crossover of the wiring . No logical explanation has EVER been given on why "this" port was deliberately mixed up - compare it to the DATA pins, 2 thru 9, which are clearly and logically in order!

Finally, there is a control port, one memory location up from 379, which only uses the FIRST 4 of the 8 available memory slots, to OUTPUT special control commands to the printer. This port is labelled "C" above. If you put 0,0,1,1 in the first 4 "bits" or memory slots of this 8 bit memory "mailbox", then the 4 pins on the port will have, 0 volts, 0 volts, +5 volts, and +5 volts. Again, for control safety, 3 out of 4 pins are wired backwards, so that pins 1, 14, and 17, reverse the signal, - therefore to see consistent logic, it is easier simply to INVERT the signal when you make the interface, and use simple logic, where "zero volts " = "zero" and +5 volts = "one". Note that pins 18 to 25 are all wired together ( on old cheap, non- "IEEE1284 " standard cables ) and to "ground" or zero Volts, and these wires are wrapped around the 8 DATA wires to "shield" or protect the data wires from nearby electricity in the cable, to cut down on interference and "noise" on the cable, from outside electrical devices, and from electricity on other wires inside the cable.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
_______________________________________________

If you CANNOT see the toolbar with the MENU on the LEFT
side of this page, using a home computer or laptop, or, if you
are on a CELL phone and cannot see or click on the menu at
the top of the screen, then you can, as an option, CLICK HERE
go to the correct HOME PAGE,    www.kidbots.com    
MATH                   CLICK HERE
HOW TO              CLICK HERE
TYPES                  CLICK HERE
ROBOT BASIC    CLICK HERE
IMAGES              CLICK HERE
Robot Cartoons     CLICK HERE
Robots                  CLICK HERE
About kidbots       CLICK HERE
______________________________
Kidbots.com is a Free website, with Free
information, on how to USE  Free computers
to make Free ROBOT controllers and
Free ROBOTS for kids.