[comp.sys.atari.st] Cheap DIY doublesided floppy

judas@iesd.uucp (Sten Kroyer) (12/23/87)

THESTARTTHESTARTTHESTARTTHESTARTTHESTARTTHESTARTTHESTARTTHESTARTTHESTART

This is partially a retransmission of an earlier posting, but since I'm
not sure that the first posting got around, and there's been some talk
on the subject since then, here goes again.

In message <236@xrns.UUCP> Tom Love writes:

>hello out there...  i hope i am not adding to the clamor of people 
>crying out for help with 5.25" drives;  this is actually a different
>question.  i would like to have an external 3.5" DSDD floppy drive 
>to go along with the one already inside my 1040ST.  i do not, however,
>desire one bad enough to pay the $200 plus which atari dealers seem to
>want to charge.  i do not mind a little hardware hacking, and don't 
>mind scabby looking assemblies with wires hanging out all over them.

In message <8712211937.AA0147@ucbvax.Berkeley.EDU> Gregory Welych writes:

>I have had one of my disk drives die on me, and rather than try to get
>it fixed, (it was only a single sided drive anyways) I decided to
>buy a cheap(er?) double sided drive. I hooked the new drive into
>the little converter card inside an Atari drive, and connected
>the power supply up. It works fine except for one slight problem
>which can cause MAJOR problems with certain software.
>The problem is this:
>   Say I boot up with disk A in drive A, and disk B in drive B.
>   ( drive B is the new drive ) 
>   Then after I get the desktop, I change drive B's disk to disk C.
>   ( I have a window automatically opened for drive B on the desktop)
>   Then I hit ESC to get the new directory, but it doesn't know
>   I changed the disk. I am assuming that the disk drive has not reported
>   media change to the ST so it doen't think that there might have been
>   a switch.
>
>Now to my main question:
>   What in the Atari drives senses the change of media?????????!!????
>   And how does the drive signal this to the ST?????
>
>Thanks in advance for any help,
>
>Greg Welych.


A couple of months back, my 1040ST suddenly blew its internal
doublesided floppydrive. Since this was the only drive connected, it
was a disaster !  My beloved Babs was (almost) dead. She would
eventually boot, and come up with an empty desktop. That's a boring
game (it wasn't so :-) at the time). What went wrong, I don't know, I
tried plucking everything apart to check for any loose connections
etc., but no luck. A custom chip in the drive did get awfully hot
though.

To summarize, I found myself in a situation somewhat similar to yours:
I had to get a new drive somehow. Not wanting to pay for an original
Atari-drive, I came up with a reasonably cheap solution. A little
research revealed that the internal drive used a standard Shugart
interface (both in terms of signals AND connectors). So the problem
could be reduced to finding a (cheap) bare drive equipped with the
Shugart interface. That's easy enough. I picked a NEC-drive type
1036A, a drive known for its reliability and quiet operation. It's
also smaller than the original Ataridrive (which seems be from
Hitachi), so with a little fiddling I managed to get it crammed into
place. (I had to make some minor changes to the ST-case). The proof of
the pudding ?  Well, I removed the old drive, plugged in the new one,
turned on the power, and Babs made a successfull boot from disc and
has been happily humming ever since.

So to connect another external drive, all it seems one has to do is:

  A) Buy a bare drive.

  B) Pick up the floppysignals from the ST's external floppy
     interface. The connections are as shown (seen from the rear):

            11      10           PIN SIGNAL         INPUT/OUTPUT
                                  1  read data           i     
       9                  8       2  side select         o
            13      12            3  gnd                 n.a
     7                      6     4  index               i
                14                5  drive 0 select +    i
       5                  4       6  drive 1 select +    i
                                  7  gnd                 n.a
            3        2            8  motor on            o
                 1                9  direction           o
                                 10  step                o
                                 11  write data          o
                                 12  write gate          o
                                 13  track 00            i
                                 14  write protect       i

+ : On the 1040's external floppy interface, only the drive 0 select is
    active. It carries the actual drive 1 select signal. That way
    the external drive automatically becomes drive B.

The standard Shugart interface (again as seen from the rear) looks
like this:
        ___________________________________________________
        /////////////////////////////////////////////////// <- Edge of
        ---------------------------------------------------     PCB
                     | 33 . . . . . . . . 1 |
                     | 34 . . . . . . . . 2 |
                     |----------------------|
	
PIN SIGNAL           INPUT/OUTPUT    PIN SIGNAL            INPUT/OUTPUT
 2  motor on 1     *      i           18 direction              i
 4  in use         *      i           20 step                   i
 6  drive select 3 *      i           22 write data             i
 8  index                 o           24 write gate             i
 10 drive select 0 +      i           26 track 00               o
 12 drive select 1 +      i           28 write protect          o
 14 motor on 2/    *      i           30 read data              o
    drive select 2                    32 side select            i
 16 motor on 0            i           34 ready         *        o

 PIN 1-33 are all connected to ground (gnd).

 *: Not used by the ST. +: Only one of these should be used. It
    might be jumper-configurable which is the active input.


  C) Supply the drive with some power. I'm not sure if an 1040's
     internal supply can cope with two drives. However, since
     3.5 inch drives have a low powerconsumption (my 1036A is
     rated at 1.8 W), a simple 5/12 volts powersupply shouldn't
     be so costly. The connections looks like this
                    _______________________
                    /////////////////////// <- Edge of PCB
                    -----------------------
                      | ____|-----|____ |        1: +5 v dc
                      |  O   O   O   O  |        2: GND
                      -------------------        3: GND
                         1   2   3   4           4: +12 v dc

  D) Add cabinet to your taste.

There's a tiny fly in the ointment, however. (There had to be, right?)
The VBL-interrupt routine in the ST, uses the status of the
WRITEPROTECT-line from the drive to check if the disc has been
ejected. Since the level of this signal is reflected in the
statusregister of the floppydisc-controller, all the VBL-routine has
to do is read the contents of this register from time to time. For
this system to function, the drive has to toggle its WRPROT-line in
some fashion (which i haven't bothered to figure out), whenever the
disc is ejected. This represented no problem in my case, since the
latest version (which was the one I used) of NEC FD1036A, is fully
"ST-modified" and thus plug-in-and-go compatible. I bought my drive in
W-Germany and payed around 220,- DM, which is VERY cheap by danish
standards. (#include<standardcomplaint.tax> :-( ).

Well, I have to stop rambling. Let's hear more about homebrewed
hardware-projects on this group. See you next time on the Newsshow.

----------------------------------------------------------------------
| "I hate silly citations"   "The opinions expressed above are       |
|         Steen Kroyer        hopefully not mine alone. Should       |
|                             that  however,  be the case,  it       |
|                             only goes to show that I'm smar-       |
|    vWWWv                    ter than the rest of you. (:-)"        |
|  vWWWWWWWv                                                         |
|  |/^^ ^^\|                                                         |
|  O @   @ O        judas@iesd.uucp (Steen Kroyer)                   |
|  O   L   O                                                         |
|   ( <O> )      <- I don't really look that silly !!                |
|   \_____/                                                          |
|____________________________________________________________________|





THEENDTHEENDTHEENDTHEENDTHEENDTHEENDTHEENDTHEENDTHEENDTHEENDTHEENDTHEEND