LPT

LPT (Line Print Terminal) is the original, and still common, name of the parallel port interface on IBM PC-compatible computers. It was designed to operate a text printer that used IBM's 8-bit extended ASCII character set. The name derives from the fact that "line printer" was a common generic term at the time for any type of text printer. Graphical printers, along with a host of other devices, have been designed to communicate with the system. It was a de facto industry standard for many years, and was finally standardized as IEEE 1284 in the late 1990s. Today, the parallel port interface is seeing decreasing use because of the rise of Universal Serial Bus (USB) and FireWire (IEEE 1394) devices; along with network printing using Ethernet.

Contents

History

Most PC-compatible systems in the 1980s and 1990s had one or two ports, with communication interfaces defined like this:

Some systems also had an LPT3 port, but this was less-consistently defined, generally sharing the LPT1 interrupt despite having its own IO address (ie only one could be used at a time). In reality, computers rarely have more than one LPT port.

A wide variety of devices were eventually designed to operate on a parallel port. Most were uni-directional (one-way) devices, only meant to respond to information sent from the PC. However, some devices such as Zip drives were able to operate in bi-directional mode. Printers also eventually took up the bi-directional system, allowing various status report information to be sent.

In DOS, the parallel ports could be accessed directly on the command line. For example, the command "type c:\autoexec.bat > LPT1" would direct the contents of the autoexec.bat file to the printer port. A PRN device was also available as an alias for LPT1. A special "print" command also existed to achieve the same effect. Microsoft Windows still refers to the ports in this manner in many cases, though this is often fairly hidden. In the Linux operating system the first LPT port is available via the filesystem as /dev/lp0.

Naming

PRN, along with CON, AUX and a few others are invalid file and directory names in DOS and Windows, even Windows XP. There is even a "Concon" bug in Windows 95 and 98, which causes the computer to crash if the user types "C:\con\con", "C:\prn\prn" or "C:\aux\aux" in the Windows Explorer address bar. A patch to fix this bug has been released by Microsoft, but newly installed Windows 95 and 98 operating systems will still have the bug.

Pinout

An LPT port has an 8-bit data bus and four pins for control output (Strobe, Linefeed, Initialize, and Select In), and five more for control input (ACK, Busy, Select, Error, and Paper Out). Its data transfer speed is at 12,000 kbit/s.

Etymology

The original meaning of the "LPT" abbreviation was "Line Print Terminal". According to the Jargon File, a similar port naming convention was used on ITS, DEC systems, and CP/M.

See also