Acorn User


Disk Programming Techniques For The BBC Microcomputer

Author: Richard Harris
Publisher: Prentice-Hall International
Machine: BBC B/B+/Master 128

 
Published in Acorn User #034

For new DFS users only

Disk Programming Techniques For The BBC Microcomputer

This book is aimed strictly at new users of the disc filing system, particularly the Acorn DFS, though two others are mentioned. Anyone accustomed to using and programming with the DFS will find little, if any benefit in it and this is my main reservation. Its useful lifespan will be one reading as it contains little you might refer to again.

The first half is an expansion of the DFS 'User Guide' and the sections on Basic handling of files in the main 'User Guide' - these books are much quicker and clearer reference sources. The author does, however, explain and expand on the various commands in a clear and amusing style, but it's a apity that he's made some mistakes.

Perhaps the worst omission is not to stress that a file called 'NAME' is the same as 'name' or 'NaMe' etc. I lost several programs this way in the early days when changing from tape to disc. A simple Basic program relocator is provided but there is no mention of the simple trick of changing PAGE to a lower value before loading.

The chapters on data files are more useful, with descriptions of serial and random access; how they differ, when to use them, and some tricks such as linked records. However, once again errors creep in, particularly on just what the various Basic commands do. Obviously, Mr. Coleman didn't read my article in Acorn User trying to put the record straight! The oddest is about how to extend random access files (though for some reason he doesn't expect them to need expanding).

It's really very simple; push the pointer PTR# past the end of the file, and lo and behold its bigger! The only problem is lack of space on the disc. Making an artificially long file with *SAVE or writing lots of dummy records makes the user of EXT# and EOF# pointless.

The second half of the book consists of seven case studies, giving examples of ways in which the disc system can be used. These are well documented and could be used as a basis for more useful and user-friendly programs. The most helpful are the database programs, though the author insists on using *SAVE to create the file and thus limit its length. How are you supposed to know how big to make a file for data which may increase?

A disc with all these programs on is available separately along with a useful database of articles on the BBC Micro. This is 40 track only, and contrains at least one silly error (listed correctly in the book!).

In summary, I was disappointed. In the early days of the BBC Micro books understandably contained errors and omissions. Surely enough is now known, and indeed published, to expect a book to contain accurate and complete information.

Richard Harris