So, I have been looking into what mods would be needed to make the
printer port bidrectional.
Looking at the schematic, the printer port data bus is shared with the
LCD and keyboard. It appears that the 244 chip used on the printer port
is always enabled, unlike the one for the LCD and keyboard. So, I assume
that it is always outputting any time there is activity on the bus?
From the service manual, the communication with a printer is controlled
via the strobe and busy lines. Of course, that is only really true when
using the print function, not direct port manipulation.
Since the '244 is not addressable, there isn't really an I/O address
assigned to it other than the strobe signal at E0H-EFH.
The 8155 chip used is already bidrectional, so all we really need is a
bidirectional bus driver.
Replacing the '244 with a '245 would be drop in. The direction pin
becomes pin 1 (/1G on the 244) and the Output Enable becomes /2G.
OE would become a chip select and the direction pin would just be A0.
This would be a straightforward mod if the printer port were addressable.
Am I missing something? Maybe we could derive the chip select from the
strobe?
The references I am finding really only talk about printing from this
port and aren't really talking about low level programming.
Anyone else look into this?
Scott