Parallel port

Introduction

Probably the most popular port due to the 8 I/O lines available.

It is not difficult to interface to, but you need to follow a few rules, otherwise you risk blowing up the CIA's in your Amiga. If you follow the information on  this page, you should be able to design a system that will safely interface to the Amiga's parallel port.

What can I interface to or build?

Within reason anything. Stepper motors, sound samplers, multi-purpose  I/O cards, relay cards, LCD displays. the only limits are your abilities and some limitations of the parallel port.

Can I add a Parallel Port Zip Drive?

Not directly.

There is not enough control logic on the  Amiga's parallel port to drive a Zip drive meant for a PC's parallel port. The hack on Aminet uses the Joystick port for extra control logic.

What is the difference between a PC and Amiga parallel port.

 What are the parallel port limitations?

Let me start by stating that these limitations are ones that I have observed/measured and do not constitute official wording on this matter.

Electrical Specifications:       

Parameter

Logic 1

Logic 0

Output drive current

-3.2 mA

3.2 mA

Logic Levels output

2.4V min

0.4V max.

Input logic levels

2.0V min, 5.5V max

-0.5V min, 0.8V max

Switching speed per pin

300 KHz

300KHz

 

 

 

 

The parallel port is intended to drive at most, 2 TTL load and nothing greater. To drive a device that requires more current, you will need a buffer circuit.

 

Pinout

Pin

Name

Input/Output?

Description

1

/STROBE

Output

Used in conjunction with ACK for printer control

2

D0

Both

Data bit 0

3

D1

Both

Data bit 1

4

D2

Both

Data bit 2

5

D3

Both

Data bit 3

6

D4

Both

Data bit 4

7

D5

Both

Data bit 5

8

D6

Both

Data bit 6

9

D7

Both

Data bit 7

10

/ACK

Input

Used in conjunction with Strobe

11

BUSY

Both

Primarily for printer handshaking

12

POUT

Both

Paper out, printer interface

13

SEL

Both

Select, shared with RS232 RING

14

+5V Pullup

-

+5V DC @ 10 mA for Pull up resistors only

15

n/c

-

Not connected

16

/RESET

Output

Connected to the Amiga's Reset Line

17-25

GROUND

-

Signal Ground

NOTE / = Active LOW

Switching speed seems low?

This is the fastest rate at which the author has been able to drive individual pins of the parallel port and still get  outputs that meet the TTL thresholds.  If you try and switch the pins faster. it might work on your Amiga but not on others, be warned!

 Buffer your circuits!

If you do not buffer your circuits that interface to the parallel port, you risk blowing up the 8520 CIA's. I have  provided some tried and tested circuits for interfacing to the parallel port that will reduce the risk of damaging the CIA's. This is especially important if you are driving a large load, like a motor or relay.

 Can I use the +5V supply on Pin 14 to power my circuits?

No.

This is probably the most common interfacing mistake.

 This pin will only supply 10mA of current, it is intended to provide a TTL voltage reference or to be used for pull up resistors only! There is not enough current available to power a TTL IC or an LED so do not use it.

 How should I power my circuit?

By using an external +5V supply, take a look at the Author's recommended circuits .

Remember to connect the ground line of yourcircuit board to at least one of the Amiga's ground pins (pins 17-22).

 Also, when using an external power supply and a few logic devices, observe the following recommendations:

  1. Solder 1 by 100nF Capacitor across the power supply pins of each TTL IC.
  2. Connect 1 by 100-1000 uF Capacitor across the power leads at the point where the external power supply connects to your PCB. the value depends on the current, the greater the current, the greater the capacitor.
  3. If the board is more than say, 6cm by 6cm, consider adding some 10uF Capacitors across the power supply at various points across the board.

 

Following these measures will aid in keeping power supply noise, EM emissions and random switching to a minimum.

Enough hardware, what Software do I need?

 There are some programs that allow you to control the parallel port. There are also programs/routines that allow you to write your own software. Click here for more details on the software.

Any other recommendations?

  • If you are going to drive a long length of cable, consider using a TTL driver, like a 74244.
  • Also consider Transmission lines with long lengths of cable and use the slowest logic possible.
  • Always decouple your IC's Analogue and Digital, it helps to reduce power supply noise.
  • Always turn off the Amiga before plugging anything into the Parallel port.

By Ian Stedman, 13th November 2001

Updated 08 July 2017