All in one
There comes a time in every programmer's life when his thoughts turn to machine code.
One suitable tool is the Superpower package, which is so large that it is supplied on two separate 16K Eproms.
The three utilities - assemblies, disassemblies and monitor - are called via three separate bar commands. Bar ASM calls up the assembler program, the screen switches to 80 column mode and the cursor is positioned in the editing window. The assembler's only slight eccentricity is the fact that two-byte addresses cannot be entered directly. An EQU statement must have been used earlier in the program assigning the required address to a label. Operating system routines have already been assigned a label and can therefore be called directly.
The assembler is extremely fast: Micropower has clocked the program and found it capable of assembling over 24.000 single statement lines per minute.
Your source code is assembled using the command Esc A, following which you can save the object code, relocate it to its run address, or execute the code.
The command Esc J will append a new file onto the end of the source code presently in memory. This allows you to store soft-used routines as files on disc or tape.
Another powerful feature of the assembler is its ability to shuffle blocks of source code around in work processor fashion. Bar MON calls up the machine code monitor program. The display shows 16 rows of 16 bytes, the contestants of all registers and the status of all flags.
Pressing the key "Q" will replace this display with a disassembly of the code being examined.
Two pointers axe put at your disposal and the block of memory to be displayed is specified using these pointers. Having assigned different addresses to each pointer, you can toggle between the two areas of memory by pressing the "^" key.
The code in Ram can be edited by overtyping either the hexadecimal value of the byte or by moving to the Ascii/graphics section of the display and entering text.
The final utility is a disassembler which converts any machine code program back into it's original mnemonics. The Superpower disassembler will disassemble both Ram and ROM. The result of the disassembly can be directed to the screen, a printer, or even to disc or tape as a hie.
The ADM ROM must be a strong contender to become the definitive machine code utility for the Amstrad.
Jon Revis , PopularComputingWeekly860227