From: ewaniu@ee.ualberta.ca (Darren Ewaniuk)
Subject: Re: Drive swapping hack (was: DF0: to DF1: Hack Wanted)
Organization: University of Alberta Electrical Engineering
Date: Sat, 25 Jul 1992 08:58:53 GMT

I made a slight error when I entered the floppy drive switching article.
The original drive number is the wire of the 8520, and the drive to replace
it with is the socket.  So if you are referring to the old article, 
whenever you see a 'wire number' replace it with 'socket pin number'.
I had it right then edited it the wrong way when proofreading.
It didn't make a difference except for the understandability and the two
'drive shuffle' examples.  The rest of the examples would have worked out
because of symmetry.

Below is the corrected article.


Hardware swapping floppy drives
(Text file 1.0b - it was late!)
-------------------------------

Since people seem to always be wanting something to swap drives around
in their system (like swapping DF0: with the external drive) and since
I've done this to my system when I had a sick internal floppy, I thought
I'd write up this small documentation file to show how to do it.

It's really quite easy to do, and just involves pulling up some pins
from the serial port 8520 and cross-wiring them to swap the drive select
signals for the associated drives.  This can be easily reversible.

Get a broken DIP IC socket.  Cut or break off a section of inline pins.
If you are swapping adjacent drives, break off only two pins of the
socket.  If say you're swapping DF0: and DF2: you need three pins.
And if you're swapping DF0: and DF3: or you're nuts and you're
scrambling your drives you need four pins.

Make sure the two, three, or four pin section is cleanly broken off
and that no pins are crimped or shorted together and that it can
still firmly hold IC pins.  The easiest way is to cut it in half, then
take the top section and just crush the pin next to the one you want
to keep.  When you have your strip, Cut off or file off fairly close
to the sockets.
            ____          _    __          _         _
          -|O  O|-      -|O!  ! O|-      -|O!      -|O!
          -|O  O|-      -|O!  ! O|-      -|O!      -|O!
          -|O  O|-      -|O!  ! O|-      -|O!      -|O!  -> Desired output
          -|O  O|-  ->  -|O!  ! O|-  ->  -|O!  ->  -|O!
          -|O  O|-      -|O!  ! O|-       ===        =
          -|O  O|-      -|O!  ! O|-      -|O!\
          -|O  O|-      -|O!  ! O|-      -|O! \Crush this pin to seperate
            ----          -    --          -
             ^                  ^          ^
          Cut here               Throw away

Once you have a section of pins cut out, solder a short single-strand
wire (like that used in breadboards) to each pin.  You need
single-strand wire because you really can't put multi-strand wire in
a socket easily. These wires that you're going to use are going to be
wired back into the socket under the 8520, so the other free end
should be stripped enough to fit in a socket yet not present any bare
wire once its in the socket.  Cover the bare (pin) end of your socket
assembly with some electrical tape to prevent shorts.

Find the 8520 that controls the serial and floppy functions.  On a B2000
it is labeled U301, and on the A500 it's labelled as U8.  If you have an
A1000 you'll have to look for it yourself.
These are the pins you're interested in:

13  SEL0 (DF0:)
14  SEL1 (DF1:)
15  SEL2 (DF2:)
16  SEL3 (DF3:)

Pin 1 on the 8520 (and all IC's) is marked either with a dot, or by being
the pin to the left of the notch at the top of the chip.  Count counter-
clockwise from that pin.  This is assuming the chip is pin-side down.

Remove the 8520 so you can get access to the pins so you can bend them.
Bend up the pins that you want to change at about a right angle.
Place the pin assembly you made over the bent out pins like you were
placing them into a socket.

Then put the free end of each wire from your assembly into the socket
under the 8520 (where the pins you pulled up were) corresponding to
the drive you want to remap it to.
The _WIRE_ pin number corresponds to the original drive number, and the
_SOCKET_ pin number corresponds to the drive it will become.

Then replace the 8520 and ensure that your little hack doesn't short
any pins on the 8520, the motherboard, or the motherboard socket.

Hack
 \      ###### <- 8520
    --[-######            (poor ASCII art of side view of chip)
        :    | <- IC pin
________======________
           ^        ^
        Socket   Motherboard

Examples:

B2000 with one internal drive and one external, remap DF2 as DF1.
With no second internal drive, DF2 becomes the hole rather than DF1.
Take the wire from pin _14_ and put it in the 8520 socket pin _15_ (DF1->DF2)
Take the wire from pin _15_ and put it in the 8520 socket pin _14_ (DF2->DF1)

B2000 with one flaky internal drive and one external, remap DF2 as DF0
The flaky internal becomes DF2, and the external becomes DF0
Take the wire from pin _13_ and put it in the socket pin _15_ (DF0->DF2)
Take the wire from pin  14  and put it in the socket pin  14  (DF1 no change)
Take the wire from pin _15_ and put it in the socket pin _13_ (DF2->DF0)

A500 with flaky internal drive, swap with first external drive.
Wire pin _13_ to socket pin _14_ (DF0->DF1)
Wire pin _14_ to socket pin _13_ (DF1->DF0)

A500 floppy drive shuffle:  A500 with internal drive removed for a hard
drive, renumber remaining external drives DF0, DF1, DF2.
Wire pin _13_ to socket pin _16_ (DF0->DF3)
Wire pin _14_ to socket pin _13_ (DF1->DF0)
Wire pin _15_ to socket pin _14_ (DF2->DF1)
Wire pin _16_ to socket pin _15_ (DF3->DF2)

B2000 floppy drive shuffle:  B2000 with one internal drive, renumber
external drives as DF1 and DF2
Wire pin _14_ to socket pin _16_ (DF1->DF3)
Wire pin _15_ to socket pin _14_ (DF2->DF1)
Wire pin _16_ to socket pin _15_ (DF3->DF2)

---------------------------------------------------------------------

Disclaimers:

1)  If you build it, it's your responsibility if your system
blows up.  I did use this for a time (about 1.5 years ago) so it does
work, at least if I remembered how to do it right.
This was made up quickly in a time of need, so it may not be elegant,
but it served its purpose (getting a workable system until I got another
drive).

2)  This was an original hack, and wasn't reverse engineered from any
other product.  I havn't seen the Shuffleboard, but my guess is that
it uses a similar (but more 'professional') method.

-------------------------------------------------------------------

Distribution:  This is freely distributable, and you can distribute
or make it for yourself at will.  You can make these for
others for the cost of parts plus the local equivalent of $5US, but
if you want to charge more then contact me first.  I just don't want
people making a lot of money off this without my knowledge.
Also contact me first if you want this in magazine articles etc.

You can reach me at:

Internet: ewaniu@bode.ee.ualberta.ca (until September '92)
UUCP: darrene@ersys.edmonton.ab.ca (use if above fails)
Fido (ugh!): Darren Ewaniuk @ 1:342/53 (Amiga Devil BBS)

Phone: (403)481-6290 (best between 5:00 and 10:00 MST)
Mail: Darren Ewaniuk
      #6, 8717 184 Street
      Edmonton AB, Canada
      T9C 1P8

-------------------------------------------------------------------
-- 
    //  /|      O  __       __  Amiga C=   Darren Ewaniuk               
\\ //  /_| |\/| | |   |  | |__  Users of   ewaniu@ee.ualberta.ca   -or-
 \X/  /  | |  | | |__ |__| |__  Edmonton   darrene@ersys.edmonton.ab.ca
Newsgroups: comp.sys.amiga.hardware