Amstrad Computer User


Devpac80
By Amsoft
Amstrad CPC464

 
Published in Amstrad Computer User #22

Devpac80

Devpac80 is Hisoft's professional programmers package, designed to run under any CP/M system.

The 90 page manual comes in a ring binder divided into three parts. The 22 page tutorial at the end is mostly made up of example listings for using the BDOS.

Side one of the disc runs under CP/M 2.2 and side two runs under CP/M+, or 3.0 if you prefer.

Devpac

The package contains three parts - ED80 the editor, MON80 the monitor/disassembler, and GEN80 the assembler.

ED80 is based very much on the non-document mode of Wordstar.

Of course if you are not used to Wordstar then you may set up the keys to suit yourself with the installation program and there is a space in the manual next to each occurance of a key explanation for you to write in what you change them to so the manual is still useful to you. The manual is a useful cross between a tutorial and a reference. Examples are given with commands that may cause problems. An example session with it is shown to correct a version of the Jabberwocky poem and the editor supports everything you would expect.

Block copy, move and delete are supported with undelete to recover mistakes. One very useful option is auto-indent which inserts a TAB after a carriage return to save you justifying your text yourself. DEL will delete it for when you wish to put in a label.

The monitor is very similar to Mona but only works under CP/M. However you can load normal .BIN files from a CP/M disc.

Although the monitor is not really user-relocatable without you altering the loader, it will relocate itself in memory automatically to accommodate any other CP/M programs present, such as GSX.

The normal options are present with the ability to single step and fast step subroutines. The byte search option is fast and you may also search for mnemonics if preceded by a (%) for example %HL, A000.

You may also produce text to work with Gen80. Not only can you jump to a location in memory, you can insert a breakpoint at the same time. J:B800 means "jump to the contents of the PC and continue until you hit the breakpoint at B800".

Gen80 is a macro assembler and will assemble Ascii text. You may do this from a number of discs even on a one drive system and Gen80 will pause to allow you to swap between them.

Unlike AMSDOS, there are no limits under CP/M concerning the swapping of discs with files already open on them, so you are only limited by the size of your symbol table to the amount of code you can generate.

You could in theory fill the whole side of a disc with object code, having included text from several others.

Gen80 is very tolerant of the conventions used to express numbers and will accept numbers preceded by a hash (#) such as FFFF or in Intel hex format, 0FFFFh. This also applies to binary numbers.

Gen80 only generates .COM files, but there are utilities provided on the disc to turn .COM files into .BIN files and vice-versa.

The file GTOG.COM will convert ordinary Devpac files to Devpac80 files, complete with TABs, which means that you can load just about anything into Devpac via Devpac, which will accept a wide range of text types.

The location counter ($) can be used in all calculations in the same way as Laser Genius.

A nice package, with the advantage that it is the only package to work on the PCW8256/512. Due to Hisoft's constant policy of updating their products, I have been informed of several improvements that will shortly be made and you should contact Hisoft for dates of these.

Features to be added are full symbolic disassembly in Mon80, a full parenthetical calculator function, including using labels as variables in Mon80, a slow run interpreter mode and a 1-state counter for fine tuning fast routines.