23.1 Mapping Parallel Ports to LPTs
The PC BIOS allocates three prioritized I/O port addresses to
parallel printers. Port 0x3BC
is the highest priority, followed by 0x378 and then 0x278. At boot
time, the BIOS checks each of these addresses to detect parallel
hardware. The highest priority parallel port detected (which may be
on any of the three I/O port addresses) is assigned as LPT1:. If a
second parallel port is detected, it is assigned LPT2:. If a third
port is detected, it is assigned LPT3:. Some BIOSes also make
provision for LPT4:, but this is nonstandard and not widely
supported.
This automatic detection of port hardware and assignment of LPT
numbers means that installing another parallel port may change the
LPT designation of existing ports. For example, the embedded parallel
port on most motherboards is assigned port 0x378 (the second priority
address) by default. As long as it is the only port present, it will
be mapped to LPT1: by the BIOS. If you add another parallel port
configured for port address 0x3BC, that new port will be mapped to
LPT1: and the existing port will be changed to LPT2:.
You set the I/O port address for most motherboard parallel ports in
BIOS Setup, although older motherboards may require changing a jumper
instead. You set addresses for parallel ports on most expansion cards
by changing a jumper. Avoid changes in LPT mappings when installing
parallel ports by verifying the port addresses for existing ports and
setting the new port for a lower priority address, if possible.
Always make sure that the new port does not use the same address as
an existing port, or results will be unpredictable.
|