[net.micro.amiga] Amiga <==> IBM PC parallel i/o

urjlew@ecsvax.UUCP (Rostyk Lewyckyj) (03/19/86)

 .

Some time ago there were several articles here describing how
to use the Amiga parallel port for input of files printed out
from an IBM PC.
Here is an article which I found on the net that describes how
to use the IBM parralel port for input. This might make it possible
to set up bidirectional parallel transfers between a PC and the
Amiga.
  
Date: Tue, 4 Mar 86 11:11:50 pst
From: ttidca!ttihwe!cole@rand-unix.ARPA
Subject: Parallel I/O

You can certainly use a IBM-type parallel printer port for general purpose
I/O, but you have to be careful.  IBM-type parallel printer ports use an LS374
tri-state octal latch to drive the 8 data lines, but it is always enabled for
output (i.e., the -OE signal on Pin 1 is tied permanently to ground).  So the
external device cannot drive the the 8 data lines itself, and there is a
specific warning in the Tech Ref manual that says "It is essential that the
external device not try to pull these pins to ground".

Why IBM did it this way heaven only knows.  There is a simple solution,
however.  You can cut the trace that ties Pin 1 on the LS374 to ground and tie
Pin 1 on the LS374 to Pin 15 on the LS174, which is an unused output which is
controlled by Bit 5 in the command register (3BE, 37A, or 27A, depending
whether the parallel port is LPT1, LPT2, or LPT3).  Then you can use Bit 5 to
enable the LS374 or put it in the high impedance state so you can read your
external device.

I'm not sure offhand whether this affects normal printer operation.  It
depends on what DOS does when it finds this printer port on bootup and how the
printer code works.  The fact that DOS mucks with the port on startup may
cause some problems with your external logic.  What I did to get around this
(and avoid messing with my IBM or AST cards) was to buy a cheap ($30) printer
board, which has the advantage that you can jumper the starting address to
locations where DOS won't find it (and which hopefully don't conflict with
anything else, of course).

Randy Cole
Citicorp-TTI
ttidca!ttihwe!cole@rand-unix