Authors
Publication
Pub Details
Date
Pages
In Understanding Your ZX-81 ROM, by Ian Logan, the reader doesn’t have to contend with an update from the Sinclair ZX-80. Hold your joy, however, because since the book was published Sinclair has modified their original 8K ROM monitor. A two-page insert at the front of the book explains the differences, which are about a 3-byte offset from many of the figures given in the text Of course, as time passes other ZX ROMs monitor versions will appear as these hidden trouble spots create problems and need to be eliminated.
The author logically assumes that the reader has a working knowledge of Timex/Sinclair Basic. He also writes for the person who knows the essential flow of a computer program. Following a quick review of the five basic I/O systems for the ZX81, the author gives an excellent overview on the function of the Zilog Z80 CPU.
A brief introduction to machine coding is covered and contrasted with a like program segment in Basic. The author covers simple mathematics by explaining arithmetic in absolute binary and two’s complement.
Armed with a two-page overview of hexadecimal coding (HEX), the author does an excellent job of tackling the Z80 machine code instruction set. The instruction set is conveniently divided into 18 major groups based on their functions. A definite plus to the book would have been a table in the back with instructions given in the 18 major groups.
The explanation of each group is given by referring to the 8K ROM for examples. By the time the reader has finished reading about all 18 groups, he should have gained excellent insight into the workings of the T/S1000 monitor and Basic interpreter.
However, don’t try to cover all 18 groups in one reading. Dr. Ian Logan has put many hours into the preparation of his text and the reader will need considerable time to assimilate the information.
Logan gives the reader another chance if things get fuzzy on the first run-through on the 18 instruction code groups. Chapter Five demonstrates machine code programs for each group. Basic routines are also included to reveal the differences. These programs are short and require less than 1K of RAM. Finally, Chapter Six provides a good overview of the 8K ROM monitor program.
The reader is going to need several sessions with this book. But once he’s gotten the information, he can dazzle his friends in a ZX81/Timex user group by writing a few machine code routines.
The book will also be an invaluable reference guide for someone using machine code routines. The publishers, Melbourne House, seem opposed to any sort of index. Such an index would have been a valuable addition.