Gremlin Graphics has relaunched Picturesque's assembler and Monitor in one package under its new Discovery Software label - calling it The Code Machine.
The monitor/disassembler is relocatable in Ram, from addresses 27700 up to 57778, and can be set up with nine printer interfaces which include ZX Printer Interface One, Kempston, Tasman and Morex. It is loaded above Ramtop, so no amount of Newing will destroy it, and you can switch in and out of Basic if required.
Monitor operations include the display of CPU registers or memory locations, hex to decimal conversion and demo run of your machine code in which you can set up break points to check that parts of it are working properly. A series of block memory routines allow you to insert, delete or move a maximum of 255 bytes around in Ram.
A trace facility, with front-panel display, allows you to see whether routines go wrong and the byte and text insertion routines can be used to patch up any small problems.
The Disassembler can do its work on Rom or Ram and, like the Assembler, uses the full Z80 instruction set. It requires a start address and will display 18 instruction lines to a page until you press the exit key. At the start of the disassembly you can instruct the printer driver to output hard copy so you can keep a record of any changes made in your program.
While you can make small alterations to your programs using the disasembler you should use the assembler to enter bulkier code.
The assembler's full-screen editor is a 40 columns display across the screen. It controls the major assembler options such as listing, editing, saving and loading code. Source code is referenced using a handy system of line numbers which can be generated automatically.
Source listings are split into four fields: line number, label name (which is optional), operation name, and operands (which may also be optional). Labels can be assigned to often used addresses or values - using Equ - and text and byte can be set up using Define Word and Define Message pseudo instructions.
Once you've finished editing your source you can assemble it and save it from within the editor. If errors occur during any of the machine code production phases the package can be made to go back to the start or drop out into Basic. Error trapping in the package is most impressive.
The Code Machine is a first-class machine-code tool amongst a dwindling number of assemblers and disassemblers.
It does provide a complete development environment but lacks some of the flexibility of its competitor, Ocean's Laser Genius.
Label: Discovery Software
Reviewer: John Gilbert
Complete machine code development system. Unlikely to knock Laser Genius off its top perch though.