• Please review our updated Terms and Rules here

IBM PC Monochrome Display Adapter/Parallel Port Manual Errata

cr1901

Veteran Member
Joined
Dec 28, 2011
Messages
817
Location
NJ
Maybe this is well known, but the tables that describe the IO ports for the printer port are incorrect in both manuals (in addition to the 0x378 Printer Port manual referencing the Monochrome Display Adapter port 0x3BC). It's like both manuals came from the same source, but different halves of each table was placed in each manual when the manual was split in two! Can anyone who has a physical copy confirm that the tables are wrong (modem7's copies on his website seem to be wrong)?

Also, I believe the Parallel Port, even on IBM PCs, can be used bidirectionally, but the manuals claim that a device attached to the Parallel Port cannot drive the data lines attached to the data latch.
 
They are not "bi-directional" without a hardware modification.

As shipped from the factory, there are 8 data lines and 5 control lines. The data lines are output only, while the control lines can be used as inputs. So technically, it is a bi-directional port. That that's not what most people refer to when they say they have a bi-directional parallel port. Some devices use those control lines to read a nibble at a time, so the read speed is effectively half of the write speed on the original ports.

On a slightly upgraded port the data lines are truly bi-directional. The modification is well known. See http://www.brutman.com/PCjr/parallel_port.html for an example of how a port can be modified.

(The PCjr parallel port design is derived from the PC version, and the modification is similar.)
 
What's incorrect about them?
In each manual, tables for IO port bits and their respective mapping to the DB25 port are missing entries. Example: Monochrome manual, page 13, port 0x3BE, bits 0-3. The Parallel Port manual, page 3, has bit 4 missing in the corresponding table for port 0x37A!
 
Are we looking at the same manual? In both cases 3BE/37A bit 4 shows "IRQ Enable", page 2-67 in the 5150 tech ref, which describes both the MDA and PPA mapping.

The printer port was, strictly speaking, always bidirectional. In other words, reading the data port would read the current status of the data pins, so a short in the printer cable could be detected.

A badly kept secret was that bit 5 in the control port 3BE/37A was connected to the input of a 6-bit latch (74L174), but the output was NC and the output enable of the 74LS374 driving the data lines was tied to ground, permanently enabling it. So it was a trivial operation to lift the OE/ enable of the LS774 and tie it to the unused bit 5 output of the LS174 and tie it to the OE pin of the L374. Presto--a real half-duplex bidirectional port.

People figured this one out long before the PS/2's bidrectional port ever hove onto the scene. The only question was "why did IBM do it"? I've never heard the answer to that one. The modification could be performed on both the parallel printer adapter and the monochrome display adapter boards.
 
Are we looking at the same manual? In both cases 3BE/37A bit 4 shows "IRQ Enable", page 2-67 in the 5150 tech ref, which describes both the MDA and PPA mapping.
There is no page 2-67 in my 5150 tech ref (Apr. 1984). The two manuals to which I refer are the following:
http://www.minuszerodegrees.net/oa/OA - IBM Monochrome Display and Printer Adapter.pdf
http://www.minuszerodegrees.net/oa/OA - IBM Printer Adapter.pdf

In both cases, neither of them appear to correctly describe the mapping between the parallel port pins and bits from an IN/OUT instruction (it looks like one manual got half the bit mappings, and the other manual got the other half o.0;). It wouldn't even be a big deal if it weren't for the fact that the Printer Adapter manual makes it look like you can only write nibbles to the output data latch (0x378) (compare with the completely independent parallel port nibble-mode created later), and it contradicts the given schematic later in the manual!

Basically, it threw me off. I was wondering if anyone else noticed, or whether I may finally be seeing things.
 
Ah, there's your problem. You're working from the O&A documentation, which was on a subscription basis and continuously updated. Accuracy suffered greatly--and if someone got lazy and forgot to perform updates, things only got worse.

I was working from pub 6025008, August 1981--and even that had a few update pages. Generally, the schematics were correct and should be relied on for technical information.
 
Back
Top