Amstrad Computer User


The Code Machine
By Discovery
Amstrad CPC464

 
Published in Amstrad Computer User #22

Code Machine

This package has been taken over by Gremlin from Picturesque to complement its other assembler Pyradev - of which more later - and comes in a video case with a 68 page manual.

The package is in two parts. The monitor is about 8k long and the assembler/editor is some 14 - both are relocatable.

The manual takes you through all the commands in an easy tutorial style.

The line editor is very similar to that of Oevpac with the difference that all commands are accessed by Cul and a key to produce a command - Ctr1+ 0 gives delete. Alternatively you can type the commands in full.

External commands are supported and there is no problem with Maxam's ICAT which is just as well as you would otherwise have to return to Basic or resort to ID IR.

Text can be assembled leaving the symbol table intact so that multiple blocks can be assembled and the code saved out to be loaded and saved as one block.

This is a very useful feature, even though you have to save off the code blocks yourself.

Another way is to have the code automatically saved out in 2k blocks to disc or tape although if you have only one disc drive you are limited to about 145k of text which will produce 21k of object code on one side of a disc.

This is because AMSDOS will not allow you to swap discs once a file has been opened on it although there is no problem with two disc drives. You have the option to save COM files suitable for running under CP/M. although you must obviously transfer them to a CP/M formatted disc before they will run.

One slight limitation with this package is that the files can only be saved and reloaded before they can be run, and not run from Basic or the assembler.

The monitor is pretty standard with all the usual inspect, modify, move and disassemble options. You can single step through routines and page the ROMs in and out to inspect them.

There is the option to display the registers, or set up a front page of the registers when tracing a routine, but only one breakpoint at a time can be set when debugging a section of code.

The search for bytes option is last and you may jump to the assembler if it is present. There is no option to load or save object code into the monitor.

One of the most powerful of the beginners packages, on a par with Devpac, and easier to use in some respects, but as both packages have features which the other lacks, you must choose for yourself.