>Its address was 0x3bc-0x3be. The BIOS would build the LPT >address table in RAM by first looking here for an LPT, and, >if it found one, would call it LPT1. If not, the port at >0x378 would be LPT1. In actual fact the BIOS code was a bit cleverer than that. For both the parallel and serial ports there are tables of standard addresses for the ports. Each table had space for 4 addresses, the parallel port table contained 3 addresses, and the serial port table 2 addresses. The BIOS code would check the addresses in each table, and discard the addresses where no hardware was found. The parallel port table contained 378, 278, and 3BC in that order. Any of these could be LPT1 if no hardware was found for a prior address in the table. Hence it is also possible for address 278 to appear as LPT1. The second address for which hardware was found would then be labelled as LPT2. The serial port selection did the same trick. This could create confusion if the ports were on different cards, and the card for a lower port number was removed, and the machine rebooted without it replaced. -- http://www.piclist.com hint: The PICList is archived three different ways. See http://www.piclist.com/#archives for details.