Amstrad Computer User
1st April 1985
Categories: Review: Book
Publisher: Micro Press
Machine: Amstrad CPC464
Published in Amstrad Computer User #5
Basic Programming On The Amstrad
Although ostensibly having the same aim as The Working Amstrad, this book takes virtually the opposite approach. The Working Amstrad teaches programming, and introduces the Amstrad command words if and when it needs them.
This book is more of an expanded manual, which works through the CPC464's BASIC commands and explains how they are used with the aid of example programs. Indeed, the back-cover blurb describes Amstrad's own User Guide as a sprint through the BASIC, while this book is for "for joggers, and walkers, and those who are not sure they can even reach the starting line."
As such, the book has a very elementary treatment. The first two chapters are pitched at the level of someone who has to be told to check that the mains plug is in the wall if the computer won't come on. It might help someone who has never seen a computer (or even a typewriter!) before in his life, but most people interested in computers these days have picked up a smattering of the basic terms by browsing through magazines.
From then on the book covers all the basic aspects of the CPC464's abilities, as you can see from the chapter headings. These include Drawing Pictures, Loops, Making Decisions, Strings, Loops and Lists, Games and Graphics, and Sound and Music. As I have mentioned, many of the example programs are fairly trivial and aimed only at making a point rather than providing a useful piece of software.
However, Chapter 9, Planning a Program, does offer some useful hints on how to go about writing your own software.
For example, there's the trick of programming the function keys with various common keywords, and immediate commands to tidy up the screen display if a program crashes during testing. The author then goes on to show how you might tackle the design of a games program, choosing that hardy perennial 'Blitz' so beloved of magazine contributors.
Although the reasons behind it are not brought out in great detail, it's good to see that this book also recommends the use of structured, modular programming and follows this advice in the example.
Once all the different routines have been covered, the author explains how to test a program for bugs and fix them, using several examples of failure-of-logic included in the examples. The information offered is useful but brief, and the author graciously admits that the space devoted to the CPC464's BASIC leaves too little for programming theory, suggesting that you follow up his book by reading other titles or magazines.
A book that would suit the absolute novice, then, but I have to echo those closing remarks by Mr. James.