<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>
Date   : Mon, 24 Oct 2005 10:10:42 +0100
From   : Richard Gellman <splodge@...>
Subject: Re: Collected notes on floppy drive butchery?

Jeff Gaines wrote:

>I can tell you what I did, it's the Sony MPF920 from PC World straight
>out of the box.
>  
>
Same here.

>A Master, cosmetically nice but I think one of the early ones. MOS
>3.20, ADFS 1.50, DFS 2.24.
>
>Scenario 1
>Standard twisted floppy cable, Sony connected to middle (untwisted)
>connector. Drive responds as 1 or 3, using 720MB disks and DFS.
>Formats, verifies and saves files. Won't boot though because of the
>drive number.
>
>Scenario 2
>Untwisted the floppy cable (2nd one, bits from the connectors of the
>first one still all over the place 'til I hoover). Sony still on the
>middle connector, older drive with a slide switch on end. Moved slide
>over, old drive responds as 0/2, Sony as 1/3, both format and verify
>and I can copy files between them.
>
>There have been different views in here about un-twisting the cable,
>it just didn't work for me until I bit the bullet and un-twisted it.
>  
>
To clarify on the twist/untwist scenario:

The twist concerns the 4 lines Drive Select A, B, and Motor Enable A,B. 
There are 7 lines twisted, not six. Twisting 6 will result in problems, 
as you will connect all the control lines to ground, and vice-versa (all 
odd numbers pins are ground). Twisting 7 ensures the grounds stay matched.

Conventionally, if you have two drives on the cable, one as drive ID 0, 
and one as drive ID 1, then a twist before both of them inverts their 
drive IDs - in the case of the BBC, 0 becomes 1, 1 becomes 0.

If you twist -between- the drives, the drive after the twist 
(non-computer end) is inverted, the other is not. This is the 
configuration for PCs. Floppy drives for PCs are sold configured as 
drive ID 1, the twist in the cable causes drive ID 0 (on the cable after 
the real drive B:) to become drive ID 1 - thus driving the "fake" drive 
B: - which is now seen as drive A:

           B:   []               [] A:   <-- both configured as drive ID 1.
ID 1 -------|-----   ----|
                           X
ID 0 ------------

(My apologies if that doesn't even show up correctly in your mail client).

BBC Floppy drives are invariably configured as drive ID 0 - which 
conflicts with PC floppies always being drive ID 1. Either way around we 
put the drives, we end up with two drives on the same ID. In the 
solution where we don't change drive IDs on the drives themselves, we 
*must* use an untwisted cable. This puts the BBC floppy on drive ID 0, 
and the PC floppy on drive ID 1 - (happy).

If we are willing to change one of the drives (the BBC invariably being 
easier) we must use a twisted cable to force one of the drives onto a 
different drive ID, according to the following rules:

If both drives are ID 0, the drive *before* the twist is :0 the drive 
after is :1.
If both drives are ID 1, the drive *after* the twist is :0 the drive 
before is :1.

The ideal solution is to use a "native" untwisted cable - since these 
are invariably about twice the length, and thus provide for external 
drives - with customisable drive IDs. The BBC by default is ID 0, and by 
default the PC drive will be ID 1. If you want this the other way 
around, you will need to change the drive ID of the PC and BBC floppy 
drives. The MPF 920 (currently sold by PC world) allows this using a 
soldering iron: You can change the drive ID by moving the select 
resistor from SEL1 to SEL0 on the main circuit board - note this is a 
surface mount resistor, so adequate skills are required.

Now, there have been reports of problems dealing with the disks once you 
have the drive up and running. If one inserts a high density disk (the 
commonly available type) into your nicely installed drive, it will 
invariably fail - this is due to the drive detecting a high-density mode 
in use, and writing the data at the wrong speed *. On the floppy disk 
itself, you will find a hole opposite the write-protect hole. Covering 
this up with tape (and possible darkening it - some use IR sensors to 
detect this hole, and thus clear tape will be insufficient) will allow 
the drive to see it as double-density and carry on as normal.

-- Richard

* Note for the terminology-criticising Pete Turnbull: Depsite what you 
may say, floppy drives *do* have a write clock - this is generated 
internally on the drive itself, and synchronised with the index hole. If 
there wasn't a write clock the data would be out of sync. A read clock 
may also be used internally, but not so much relied upon, as the timing 
of the data can be gathered from the disk. The write clock will 
typically be generated in accordance with the density selected - indeed 
the pinout for the shugart interface (at some sources) shows a density 
select line - high density has a higher clock speed than double density. 
The density setting in 3.5" drives is typically discovered from the disk 
using detect holes mentioned above.
<< Previous Message Main Index Next Message >>
<< Previous Message in Thread This Month Next Message in Thread >>