Acorn User


Advanced Programming Guide To The BBC Micro

Categories: Review: Book
Author: Simon Williams
Publisher: Interface
Machine: BBC Model B

 
Published in Acorn User #045

Advanced Programming Guide To The BBC Micro

Jeremy Ruston has become one of the 'names' in computer book authorship. His first claim to fame was the Ruston Compiler, which took some BBC Basic keywords and translated them, in a fairly haphazard manner, into machine code.

This 'new' book is largely composed of sections of an earlier work, The BBC Micro Compendium (the name is still at the top of each page), which had to be withdrawn because it included 'secrets of the Basic ROM'. This was one of its selling points, and succeeded in attracting rather too much unwelcome attention from Acorn.

What remains is a peculiar mix of instruction, diversion and compiled languages.

Chapter one runs quickly through assembly language and how the 6502 is structured. This is a good, light treatment, but its length inevitably means it lacks detail. Chapter two constructs machine code arithmetic routines, and is followed by a chapter doing a similar thing with Boolean arithmetic. The next chapters tackle floating-point arithmetic and evaluate interesting expressions.

The fun really starts in chapter six. This and the next section introduce two Ruston languages, with the unusual and vaguely repulsive names of Froth and Slug.

The first of these is a variant of Forth, a threaded, interpretative language, which means it isn't compiled in the true sense. If you're fed up dabbling with Basic, you could do worse than to type in and play around with Froth.

The second language, Slug (an acronym for the modest 'language with universal greatness'), is a Pascal-ish language with a reasonable amount of flexibility. It is sufficiently like BBC Basic to be used from scratch, and compiles to code which runs between 10 and 60 times faster.

The two languages are worth having for the price of the book. The rest is rather too maths-oriented for general consumption.

Simon Williams