Your Spectrum
Issue 4, June 1984 - Hardware Review
Home Contents KwikPik
YS HARDWARE REVIEW: This laborious process is known as Serial Access.
Another advantage is speed. The baud rate for LOADing data from disks is usually in the region of 128K baud as against the Spectrum's tape speed of 1500 baud, an increase of about ninety times! Double density disks and multiple drives can also raise the amount of data immediately available to the computer. The approximate data capacity of the systems examined here is about 100K minimum.
In both cases, connection to the ZX Spectrum takes place via the expansion port, but only the FDI provides you with a further expansion port at the back for attaching printers and the like. To use a printer with the Viscount, you'll need a special flexible cable with extra sockets that contain printed circuit cards. These are available from CPS (wholesale distributors for all Sinclair Research 'out of guarantee' spares) as well as Spectrum dealers.
Both systems use up memory space for the Disk Operating Systems (DOS) at the top of memory. The Viscount, because it's software controlled, uses up more memory (8K) than the FDI which normally only uses 1K. However, the FDI swallows up an extra 4K as a buffer for deleting files, and this needs to be allowed for when writing or modifying existing programs. And remember too that many machine code programs such as Tasword are position dependent in memory and you'll need a new version to work with disks.
Having inserted the interface in the back of the ZX Spectrum, powered up the disk drive (the FDI interface takes
Two disk arrangements, based on completely different ideas, have been available for use on the ZX Spectrum for some time now. Stephen Adams compares and contrasts the Viscount interface and drive from Spectrum Computer Stores and the FDI interface from Technology Research Ltd.
The object of buying a disk drive is to be able to speed up LOADing and SAVEing of data and programs - data being the most important, as files used for databases frequently have to be LOADed, MERGEd or altered and then SAVEd again.
One advantage these disks have over tapes (including the ZX Microdrive) is
that it's possible to go directly to an area (or record as it's called) of data and read it directly into the computer. This is called Random Access. Of course, on tape, the whole thing has to be gone through right up to the point where a particular record is found. And if it's not found then the tape has to be re-wound and the search begun all over again.

BBC disk drives, so the choice is a wide one) and switched on, what do we get now? Well, on the Viscount we notice no difference at all except that there are now two copyright messages on the screen, and RAMTOP is 8K lower. With the FDI you are straight into the DOS and the system requests a password. This is 'TRL' (supposedly standing for 'Technology Research Ltd') for the disk supplied, but you can change it to anything you like. Only the correct password (which is recorded on the disk when it's formatted) will allow you access to the directory (a menu of the programs on the disk) and thus to the files.
Once through the password you may enter a command for either A or B disks (if you have a dual drive system) from the table listed at the end of this article. This command will then be executed by LOADing and RUNning the file named. You can return to Basic, but this NEWs any resident program.
Life is a little easier on the Viscount. You can LOAD a program from tape, enter a program or LOAD one from disk using the variables already inserted into the variables section by the DOS. All commands must be put into f$ in the form of name and the details of the file you wish to LOAD or SAVE. By file (as you might have already guessed) we mean a program, data array or machine code routine. The commands on the Viscount are easy to use, consisting of a call to a machine code routine in the DOS using instead of numbers, a variable which is a reasonable description of the command. For instance, 'RAND USR BL' LOADs a Basic program, 'RAND USR BACK' makes a back-up copy of the disk, and so on. These must be re-loaded if you use RUN or CLEAR by RAND USR 64000. The names can also be changed to suit the program - for instance, you might change BL to 'DATABASEPROG' and CL to 'FILE LOAD'.
The only problem I found using these commands is that there's an error in the BACK routine which requires POKE-ing locations 63208 with 80 and 63209 with 249. These I eventually SAVEd as a code program which could be loaded up before using the command. The DOS may therefore be modified in both systems to eliminate errors.
I also had some trouble with the disk units themselves. They tended to overheat when I first got them, but this I cured by installing larger heatsinks on the power supply; there's been no trouble since. Problems on the TRL system centred mainly around the fact that I
couldn't format my double-sided disks despite trying several different sets of software from the suppliers. Eventually, I switched to a single-sided, single drive system which worked fine.
A word of warning, however. The interface socket, although quoted as BBC compatible is in fact upside down to the normal connector. Therefore, the notch on the plug does not go into the hole provided on the socket - at least not without causing damage to the interface. There's a listing of the pin connections in the manual, but no warning.

The FDI is designed to cope with machine code programs, mostly with the user allocating a buffer for the routines or data. Basic programs (using an '$' prefix) can be LOADed or MERGEd, but the variables (with a'#' prefix) must be SAVEd and LOADed separately. Any program without a prefix
Variable nameCommand
NDNEW the disk (format)
DIRPrint the directory
BACKCopy the contents of a disk onto another
ZAPDelete files from a disk
A typical call to the Viscount's DOS could be: LET f$="GAME,(line number of autostart): LET ERROR = USR BS.
is a machine code program which is LOADed and run from the location given. Basic programs may only be RUN on LOADing (no GO TOs). The commands PUT and GET allow you to SAVE and LOAD data in 512 byte machine code sectors into a buffer.
The commands in Basic must be POKEd into a workspace contained in the 1K area; but a USR routine must first be called to find out where. After POKEing the command in, a list of numbers within the command must also be POKEd into another series of locations. Then, the USR routine which looks at the line can be called.
Although a Basic subroutine was included on the disk, which could be MERGEd with the main program (so that strings could be used to give the commands), I still found it cumbersome and would hardly call it user friendly!
The FDI moves all programs and so on around to take up any spare space - which is very efficient. This means any
DIR A:Print the directory
REN A: N YRename file N to Y
SAVE A:$FREDSAVE file (no prefix denotes that it's a machine code file)
LOAD A:$FREDLOAD file (as above)
ERA A:NERASE file from disk
MERG A:$FREDMERGE data or program
GET A:NRandom read
PUT A:NRandom write
A:Select drive A
B:Select drive B
PASSPassword change
INITInsert the directory
LOCKProtect disk
BASReturn to Basic (NEWs the program)
Commands must be POKE'd into a workspace and numbers calculated before using routine.
new file is always added on the end of the list. The Viscount, however, only allows you to use complete tracks for files, which are 2816 bytes long. Thus if a program or data is only 20 bytes long it still takes up 2.816K.
Arrays can be stacked together in one file to give better use of the space and member numbers act like DIM numbers for the particular array you want.

Both manuals are reasonable, given that they've been written with the programmer in mind and not the average user. The Viscount is perhaps slightly better in that it lists the error numbers at the back - the FDI manual leaves you to find out for yourself!
Taking everything into account, the Viscount would seem to be the better system. It not only costs less, but is far easier to use; it also includes a back-up program (very important when using disks), whereas it's an optional extra with the FDI.

The Viscount is only available at present through the Spectrum chain of dealers, but may also be stocked by other sources as it becomes more popular. The disk drive plus interface costs £245.
Technology Research Ltd is at nnn xxxxxxxxx xxxx, xxxxxx xxn nxx (xxxxxx nnnnn). The FDI interface costs £99 and needs a BBC or similar disk drive (self-powered); TRL's equivalent to the Viscount disk costs £218.50 and a connecting cable adds perhaps a further £15. The copying program (to back up the disks) costs an extra £7.
Both systems reviewed here require the 48K Spectrum. However, the FDI interface can also be supplied for the 16K machine.

Home Contents KwikPik