Amiga 1000 "disk change" stuck?

From: Jonathan Engdahl <engdahl_at_cle.ab.com>
Date: Fri Jun 1 20:57:34 2001

I told David Betz I would send him a fast Lisp interpreter I
wrote in Amiga assembler about 15 years ago. Now I have to get
my Amiga working -- a worthwhile interruption to my PDP-11
restoration. This is an original rev 1.0 Amiga 1000 with one
floppy drive, expanded chip RAM, 2 megs in a StarBoard on the
side, and nothing else. It's the first computer I ever bought
rather than built from scrap. It cost about $1000 in the days
when an IBM AT with EGA, 1 meg RAM, and 30 meg hard drive cost
several thousands, and 1.0 VAX-MIPs meant something.

All the original pieces and manuals are still there and intact
except for the monitor which died years ago. I'm using a small
B&W NTSC monitor until I get a VGA adapter cable built.

First, I tore it apart and cleaned out the dust. Pulling the
cooling air in through the floppy drive was a brilliant concept.
That way the cheap and replaceable floppy drive doubles as an
air filter. There was very little dust elsewhere.

After trying 5 Kickstart disks, I found one that would still
read. I can boot the Lisp development disk, and, with plenty of
patience and retries, it loads itself into the RAMdisk. So, in
theory, the Lisp interpreter sources are recoverable (I also
have it on 3 backup disks).

The floppy drive, or something related, has a problem however.
The computer cannot see when I remove a disk, therefore, it
never refreshes the cache when I change disks. It never realizes
that the disk has been changed. So I have the Lisp sources on
one disk that will boot successfully, Kermit and CrossDOS on
another good disk, but whichever one I boot, I cannot read the
other.

It will take a while to remember/relearn how to run an Amiga.

The reed relay actuated by the floppy drive eject button is
working, and there is continuity to a large chip on the drive.
I'm guessing the computer is looking for "disk change" (pin 34
on the interface), which is probably triggered by the reed
relay. I tried an IBM-PC floppy drive -- it boots from that
drive, but still doesn't see the disk change. I tried a
different ribbon cable. There is continuity from pin 34 on the
mainboard floppy connector to a pin on what looks like it might
be a PIO chip. There are two of these 40 pin DIPs in sockets
next to the 68000. I exchanged the two chips -- that made no
difference.

I examined pin 34 with a voltmeter, with the ribbon cable
disconnected but power applied to the drive. It doesn't wiggle
when I insert and eject a floppy. But testing this with the
cable disconnected might not be a valid test. It might be
strobed by "drive select".

With everything hooked up, I don't see a significant voltmeter
wiggle on the PIO pin -- again, it might be "drive select"
enabled, or polled with a very low duty cycle, so that test
might not mean anything.

Now that I think of it, I seem to recall that the pin was low.
That sounds suspcious. I would expect if it was strobed, it
would be a low-true open collector. I need to go back and look
at that again.

Questions:

Is there some software way to force the computer to flush the
disk cache and take a fresh look at a disk?

Is an IBM-PC 1.44 meg floppy drive an adequate replacement for
the original 800K internal drive, at least for reading? I
downloaded a bunch of floppy related "hacks" from an archive
(Aminet?), but I haven't had time to parse them all yet, plus I
can't see the IFF formatted diagrams from a PC. Bear in mind
that I have only one drive, so drive select logic might not be
needed.

What is the mechanism/algorithm used to detect drive change?

What could have gone wrong?


If I get desperate enough, I'll cut pin 34 on the ribbon cable
and run it to a pushbutton dangling outside the case (assuming
that pin 34 is the missing signal).


--
Jonathan Engdahl             Rockwell Automation
Principal Research Engineer  24800 Tungsten Road
Advanced Technology          Euclid, OH 44117  USA
Euclid Labs                  http://users.safeaccess.com/engdahl
Received on Fri Jun 01 2001 - 20:57:34 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:33:56 BST