This is an extract from my Disc Drives and DFS guide that is available on the
Internet. I am still in the process of completing the full document but here
is an excerpt that, in this time of car boot sales, might help some of you to
attach a much needed second drive or replace one that is faulty very cheaply.
I would also very much like to know any information that anyone may have
regading the commercial DFS's that have been available and the differences
(bug fixes and extra facilities) that were implemented between the different
versions. Especially interesting are details for the Solidisk and Watford
DFS's.
Mark Usher
marku@magnet.at
1.) Disc Drives
1.1) Drives in general
The BBC had many assorted drives attached to it, ranging from 8", 5.25", 3.5"
and 3" drives. The most widely used was the 5.25" drive and later with the
Electron Plus 3 and the Master series the 3.5 drive became the standard used.
Disk drives were sold by many different companies for the BBC, including
Watford, Viglen and Cumana amongst others. Most of these drives though were
badged drives from Japanese manufacturers, the most common being Epson,
Mitsubishi and TEAC. There were two normal standards for the 5.25" disk
drive, 40 and 80 track. The 40 track drive lays down it's magnetic tracks at
a pitch of 48 tracks per inch (48 TPI) whilst the 80 track drives operate at
96 TPI, i.e. exactly half the track width of the 40 track drive. Both 40 and
80 track drives were available with a single head (which records on one side
of the disk only) or with a double head enabling recording on both sides. A
double-headed drive has therefore twice the storage capacity of a single-
headed drive.
Using 8271 based DFS (FM encoding) disk capacities are:
BBC Formatted Unformatted
40 Track Single Sided 100KB 250KB
40 Track Double Sided 200KB 500KB
80 Track Single Sided 200KB 500KB
80 Track Double Sided 400KB 1MB
Using 1770 based DFS (MFM encoding) disk capacities are:
BBC Formatted Unformatted
40 Track Single Sided 180KB 250KB
40 Track Double Sided 360KB 500KB
80 Track Single Sided 360KB 500KB
80 Track Double Sided 720KB 1MB
1.2) Finding a suitable drive
Obviously the best drive for the BBC is an 80 Track double-sided drive as
this would give us the full 400K. Unfortunately these drives are not so
common, as 5.25" 720K drives were never used in PC's. Also 80 track single-
sided drives are quite uncommon, again for the same reasons. A 40 track
double-sided drive should be quite easy to find as they were used extensively
in older PC's, but then we only have half the storage capacity that is
possible. There were on the other hand many 720KB 3.5" disc drives made, as
these were used by various computer manufacturers, so if you want to use 3.5"
discs then these should be a lot easier to find. An added advantage is also
that 3.5" double density discs are also easier to find than 5.25" double
density discs, but for how long is another question entirely.
Many high density PC floppy drives i.e. 3.5" 1.44MB drives and 5.25" 1.2MB
drives can also run in low density modes. Most of the 3.5" drives will switch
between the two formats automatically, whereas the 5.25" drives are normally
set as 1.2MB drives at the factory and need some jumpers changing before they
will operate in a dual mode. The jumpers that need setting are labelled
differently on different models, but you should look for High/Low density,
and the rotation speed jumper. This is set to 360 RPM for high density
operation, and so must be changed to dual 300/360 RPM mode so that low
density can also be used.
As far as my tests show, these drives will work with a 1770/1772 FDC but
cause problems with the 8271 FDC. The reason seems to lie with the 8271 DFS
and the timings contained within the DFS code. Jonathan Harston has written a
program that will patch an Acorn DNFS 1.20 ROM image to change the DFS
timings, and my tests show that this does indeed solve the problems. It was
available on 8BS64. You must also remember to set the timings on the BBC
keyboard links. Just transfer the program to a disc that also contains an
image of the Acorn DNFS 1.20 ROM.
1.3) Attaching Drives
First you will need a power supply. You can use the power supply from the
underside of the BBC with a suitable lead. If you don't have a lead then this
can be a problem as it is very hard to find the connector. The exact details
are:
PSU socket: AMP 1-350241
PSU female pins: AMP 360666-1
cable connector: AMP 1-250234
male pins: AMP 350664-1
Alternatively you can use a power supply from a PC.
Besides a power supply you will also need a data transfer cable. This is a
simple 34way ribbon cable, with an edge connector for the drive and another
connector for the underside of the BBC. Be careful if you are using a PC
floppy drive cable as this contains a twist in the cable. This is because all
PC floppy drives are set as drive 1, and the twist reverses this for the
first drive, effectively making it drive 0. The BBC doesn't operate like
this. So if you are wanting to connect two drives you will have to "remove"
the twist, or in a single drive system, just use the connector before the
twist.
Once you have your BBC, DFS, drive and cables, you must configure the drive
before connecting it up. If it was a PC drive then it will be jumpered as DS1
(Drive 1) by default. If it is to be Drive 0 on your BBC, you must change the
jumper to DS0, and in a dual drive system you would change the jumper on only
one of the drives, so one is DS0 and the second is DS1.
Also the last drive on the cable, i.e. the one furthest away from the BBC
must be terminated. Drives are also terminated by default. This is fine if
you have a single drive system, but in a dual drive system the terminator
must be removed on the drive nearest the BBC on the cable.
Terminators vary between drives. Some look like an IC and are usually in a
DIL socket, or sometimes they are a thin row that is attached to the drive's
circuit board. Another possibility is that the terminator can be turned on or
off by use of a DIL switch or jumper on the drive's circuit board e.g. some
Mitsubishi drives.
Once you have set all of this, you can then attach your drive and BBC
together and start trying to format some disks.
1.4) Other drive jumpers
Head Loading
Some drives use a head load solenoid. This means that it requires either a
Motor On or a valid Drive select signal before the head can be loaded against
the media for communication with the disk. This is the purpose of the two,
switch or link options found on many drives, HM or HS. These stand for Head
to Motor and Head to Drive Select respectively. This means with the HM link
set, the head of the disk drive will be loaded against the disk any time the
motor is started up. It may well be that the computer wishes to access
another drive, but as all the Motor On lines are usually connected together
the motors of all the drives will be activated. Thus, any drive that has the
HM option set will load the head of the drive against the media. When the
computer comes to use that drive, then the drive will already be in a
condition to pass information to and from the disk.
Head to Select
With the switch or link set in the HS position then the loading of the head
against the media will only take place when that particular drive is actually
selected for communication between its disk media and the computer. That is
to say that with the HS option selected and a drive set to be drive one or
DS1 of the system, then only when drive one is selected will the head of the
drive actually be loaded ready for use.
For and against
There are arguments for and against both methods of head selection. With the
HM option there is more wear on the disk due to the head always being loaded
when any drive is selected or used. Any drive access however small will
result in all the heads of all the drives being loaded against the media. If
you have the HM option selected you will not require a Head Settling time
before the drive is Ready For Use. It speeds up drive to drive access time
and is a lot quieter if a lot of drive to drive transfers are taking place.
In the case of the HS option then disk wear is reduced to a minimum as the
head is only in contact with the media when an access is required to that
particular drive. This results in a lot of clicking taking place during drive
to drive transfers. It also means that when the drive is selected then a
small amount of time must be allowed for the head to settle against the disk
before access is attempted. This is known as Head Settling time and can be as
much as 50 m/s in older drives.
Self Loading
It may be that you have a drive that contains neither the HS or HM link
options. If this is the case the drive is most likely to be the type whereby
the head is loaded against the disk every time the drive door is closed. This
means that the head of the drive is in contact with the disk at all times.
This results in an even higher degree of disk wear than a drive with the HM
option set.
Multiplexing
Another connection that can be found on floppy drives is the MX link. This is
one that often causes trouble and confusion. Its purpose is to allow two or
more drives to be connected together on the same cable. Incorrect setting of
this can cause surprising results, even causing you to think there is a fault
with another drive on the system.
The MX link should not be set in most drives, however in some of the early
TEAC drives the opposite is true. It is also quite normal for the MX link not
to be made in single drive systems.
1.5) BBC keyboard link configurations
Here are tables detailing the various link settings on the lower right hand
side of the keyboard.
First all the settings:
BIT Switch Setting Description
0 8 Start up Mode
1 7
2 6
3 5 0 !BOOT on Shift Break
1 !BOOT on Break
4 4 Disk Stepping times
5 3
6 2 0 HADFS Floppy driver
1 external driver
7 1 0 DNFS. Starts in DFS
1 DNFS. Starts in NFS
Here are the settings for the 8271 controller.
SW3 SW4 Step rate Settle time Head load
1 1 4ms 16ms 0ms
1 0 6ms 16ms 0ms
0 1 6ms 50ms 8ms
0 0 20ms 20ms 16ms
NB: Some documents state the last two times for head load are 32 and 64, not
8 and 16.
Here are the settings for the 1770 controller (up to DFS v2.29)
SW3 SW4 Step rate Settle time Head load
1 1 6ms
1 0 12ms
0 1 20ms
0 0 30ms
Here are the settings for the 1772 controller (up to DFS v2.29)
SW3 SW4 Step rate Settle time Head load
1 1 6ms
1 0 12ms
0 1 2ms
0 0 3ms
Setting link 3 and not link 4 will give you the slowest step time possible
with the 1772. You should avoid setting the step time of a standard 5.25 inch
disc drive to 2 or 3ms with the 1772 chip, as most drives will not work at
these speeds.