Computers Overview
Commodore PET
Sinclair ZX80
Sinclair ZX81
BBC Micro
Commodore 64
Sinclair ZXSpectrum
Memotech MTX
Memotech CP/M
Tatung Einstein
Atari ST
Commodore Amiga
    About
    Documents
    Emulation
    Options
        CPU
        Power
        RAM
        Storage
            "Floppy disk"
            "Hard disk"
    Photos
PDAs
DEC 3000 AXP
OpenVMS
Raspberry Pi

 

 
 
 

The Commodore Amiga A1200

Floppy Disk Interface Signals

The Techie Stuff . . . . . .

 

The information on this page was extracted from the "Amiga System Programmer's Guide", from the Abacus Amiga series, published by Data Becker in 1988. This predates the earliest A1200s by about 4 years, but the information here should still be accurate for the floppy interface in an A1200.

(There were particular issues with the Escom A1200's drive interface that are not relevant to this discussion)

 

The motherboard connector for the internal floppy disk drive is a 34-way, 2-row header plug, with almost exactly the same pin-out as a Shugart 5.25" drive connector, but using only the pins necessary to connect to the internal drive. The Amiga pin-out is as shown below :

2

CHNG

4

INUSE

6

(Not used)

8

INDEX

10

SEL0

12

(Not used)

14

(Not used)

16

MTR0

18

DIR

20

STEP

22

DKWD

24

DKWE

26

TK0

28

WPRO

30

DKRD

32

SIDE

34

RDY

 

 

All odd numbered pins are connected to ground

The Amiga specific floppy drive external connector supports up to three external floppy drives, using a 23-way Female "D" type connector, although still available, they are not common and can be quite expensive. The pin-out is as shown below :
1 RDY  Disk ready 13 SIDE  Side selection
2 DKRD  Read data from disk 14 WPRO  Write protect
3 Ground 15 TK0  Track 0 indicator
4 Ground 16 DKWE  Switch to write
5 Ground 17 DKWD  Write data to disk
6 Ground 18 STEP  Step the R/W head
7 Ground 19 DIR  Head Direction
8 MTRX  Motor on/off 20 SEL3  Select drive 3
9 SEL2  Select drive 2 21 SEL1  Select drive 1
10 DRES  Disk reset 22 INDEX  Index signal
11 CHNG  Disk change 23 +12 Volts
12 +5 Volts    

The operation of some of these pins in an Amiga is somewhat different to that on other floppy interfaces, a description of their usage in the Amiga are given below.

 

SELx

The Amiga uses the SELx line to select one of the four signals drives.

Except for the MTRX and DRES lines, all other signals are active only when the corresponding SELx line is activated.

MTRX

Normally this line causes all connected drives to turn their motors on, however, the Amiga has a flip-flop for each drive which takes on the value of the MTRX line whenever the SEL line for the given drive goes low. The output of the flip-flop is connected to the MTR line of the drive. This allows the drive motors to be turned on and off independently. For example, if the SEL0 line is placed low while the MTRX line is at 0, the motor on the internal floppy turns on. For the internal drive this flip-flop is on the motherboard. For each additional drive, an additional one is needed. On the 1010 disk drive Commodore placed this flip-flop on a small adapter board.

RDY

When the MTR line of the corresponding drive goes to 0, the RDY line (ready) signals the Amiga that the drive motor has reached its optimum speed and the drive is now ready for read or write accesses. If the MTR line is 1, so that the drive motor is turned off, it is used for a special identification mode (see below).

DRES

The DRES line (Drive RESet) is connected to the standard Amiga reset and is used only to reset the motor flip-flop so that all motors are turned off.

DKRD

The data from the drive selected by SELx travels to the Amiga through the DKRD line (DisK Read Data) to the DKRD line on Paula.

DKWD

Data from Paula's DKWD pin to the current drive, which then writes it to the diskette.

DKWE

The DKWE line (DisK Write Enable) switches the drive from read to write. If the line is high, the data are read from diskette, while if it is low, data can be written to diskette.

SIDE

The SIDE line selects which side of the diskette the data are read from or written to. If it is high, side 0 (the lower read/ write head) is active. If it is low, side 1 is selected.

WPRO

The WPRO line (Write PROtect) tells the Amiga that the inserted disk is write-protected. If a write-protected disk is in the drive, the WPRO line is 0.

STEP

A positive transition on the STEP line moves the read/write head of the drive one track in or out, depending on the state of the DIR line. The STEP signal should be at 1 when the SEL line of the activated drive if set back to high or there may be problems with the diskette-change detection.

DIR

The DIR line (DIRection) sets the direction in which the head moves when a pulse is sent on the STEP line. Low means that the head moves in toward the centre of the disk and high indicates out toward the edge of the disk. Track 0 is the outermost track on the disk.

TK0

The TKO (TracK 0) line is low whenever the read/write head of the selected drive is on track 0. This allows the head to be brought to a defined position.

INDEX

The INDEX signal is a short pulse which the drive delivers once per revolution of the diskette, between the start and end of a track.

CHNG

With the CHNG (CHaNGe) line the drive signals the Amiga that the diskette has been changed. As soon as the diskette has been removed from the drive, the CHNG line goes low. The line stays low until the computer issues a STEP pulse. If there is a diskette in the drive again by this time, CHNG goes back to 1. Otherwise it stays at 0 and the computer must issue STEP pulses at regular intervals in order to detect when a diskette has been inserted in the drive. These regular STEP pulses are the cause of the clacking noises that an Amiga drive makes when no diskette is inserted.

INUSE

The INUSE line exists only on the internal floppy connector. If this line is placed low, the drive turns its LED on. Normally this line is connected to the MTR line.

 

To recognize when a drive has been connected to the bus, there is a special drive identification mode.

A 32-bit word is read serially from the drive. To start this identification, the MTR line of the drive in question must be turned on and then off again (The description of the MTRX line tells how this is done). This resets the serial shift register in the drive. The individual data bits can then be read by placing the SELx line low and reading the value of the RDY as a data bit and then placing the SELx line high again. This process is repeated 32 times. The bit first received is the MSB (Most-Significant Bit) of the data word. Since the RDY line is active low, the data bits must be inverted.

The following are standard definitions for external drives:

  • $0000 0000 No drive connected (00)
  • $FFFF ffff Standard Amiga 3 1/2" drive (11)
  • $5555 5555 Amiga5 1/4" drive, 2x40 tracks (01)

As you can see, there are currently so few different identifications that it suffices to readjust the first two bits.

[A high capacity floppy drive was available for later Amigas, so this list may have been expanded for later models]

Most standard drives do not support this option.

As mentioned before, all of the lines except DRES affect only the drive selected. Originally the MTRX line was also independent of SELx, but the Amiga developers changed this by adding the motor flip-flop described on the floppy disk interfacing page.

 

 

mailto: Webmaster

 Terms & Conditions