Path: menudo.uh.edu!usenet
From: bmccnnll@unix1.tcd.ie (Barry McConnell)
Newsgroups: comp.sys.amiga.reviews
Subject: REVIEW: DevPac 3
Followup-To: comp.sys.amiga.programmer
Date: 14 May 1993 01:50:22 GMT
Organization: The Amiga Online Review Column - ed. Daniel Barrett
Lines: 220
Sender: amiga-reviews@math.uh.edu (comp.sys.amiga.reviews moderator)
Distribution: world
Message-ID: <1sutsu$sd6@menudo.uh.edu>
Reply-To: bmccnnll@unix1.tcd.ie (Barry McConnell)
NNTP-Posting-Host: karazm.math.uh.edu
Keywords: assembler, programming, 68000 family, commercial
PRODUCT NAME
DevPac 3, version 3.02
BRIEF DESCRIPTION
Integrated editor and 680x0 assembler/debugger environment.
COMPANY INFORMATION
Name: HiSoft
Address: The Old School
Greenfield
Bedford MK45 5DE
England
Telephone: +44 525 718181
FAX: +44 525 713716
PRICE
It can be had mail-order for under 50 UK pounds, which translates to
roughly $60 (US) after taking away UK VAT.
SPECIAL HARDWARE AND SOFTWARE REQUIREMENTS
HARDWARE
Runs on all Amigas.
512K RAM required, 1 MB recommended.
2 floppy drives or a hard drive recommended (not required).
SOFTWARE
Runs under AmigaDOS 1.3 and up. Two different versions
are supplied in the package: one for AmigaDOS 1.3, and
another for AmigaDOS 2.0 or greater.
COPY PROTECTION
None. Installs on a hard drive.
MACHINE USED FOR TESTING
I tested the program on an A2000 with a GVP 120MB HD, in both 68000
mode (3MB RAM in total), and with a 68030 (11MB RAM in total). I have never
tried the 1.3 version, but the 2.0 version runs fine under 2.04, 2.1, and
3.0.
REVIEW
I bought this product over a year ago, when I started to get really
into assembly language programming on the Amiga. (The freely distributable
assembler A68K is just too slow!) Nowadays I program in C; I am just
writing this review because it was requested by USENET readers in the
monthly "comp.sys.amiga.reviews Request List."
The product comes in a sturdy box and contains a professional
ring-bound manual (264 pages plus the index), a "Pocket reference guide" to
the 68000/68008/68010/68012 (but unfortunately doesn't cover the 68020+), and
a disk wallet. This contains four disks: two for the Workbench 1.3 and 2.0
include files (but no AutoDocs), one for the Workbench 1.3-version of the
program (which simulates a 2.0-style interface under 1.3), and the last one
for the Workbench 2.0-only version which correctly uses GadTools.
I am really pleased that there is not just one "generic" version of
the program like with so many other applications. As AmigaDOS gets upgraded,
the 2.0-version of DevPac will benefit. For example, under Kickstart 3.0,
the scroll bar gadgets get the nice new appearance. Applications which have
hard-coded the image data for the 2.0-style gadgets in order to run under 1.3
will not benefit.
There is no "install" script; instead, you simply drag the "DevPac"
and "Includes" drawers to wherever you like on your hard drive.
The first thing you see when you double-click on the main program
icon is a very professional text-editor. It is very much like TurboText,
although there are a few differences to make it worthwhile buying TurboText
separately (like I did). DevPac's editor has no ARexx port, and the editing
facilities are not quite as comprehensive. However, it should suffice for
all but the most power-hungry users, and indeed can be just used as a
stand-alone editor. It has all the major features you would expect, like
cut-and-paste via the clipboard, macros (but no ARexx scripts, as I
mentioned), bookmarks, multiple views on the one document, multiple
documents, etc.
The editor is the most fully Style Guide-compliant application I know
of. I just cannot fault it. Everything has hotkeys, it's fast, it's
friendly, and it's extremely professional. It uses the correct (Screen)
font for menus, has a setting for the (non-proportional) text font in the
main window, and then uses Topaz 8 for all the gadgets (it would be nice to
allow any font here, but very few applications can cope with this, as it is
very hard to program, without using something like GadToolsBox). It also
uses the ASL file requestor, unlike the current version of TurboText.
Where the program comes into its own is in the completely integrated
assembler environment. All the assembler (GenAm) and linker (BLink) options
are controlled via standard ListView gadgets, string gadgets, and checkboxes.
You can generate code for a 68881/2, MMU, 68000 up to 68040, control where
the include files are stored (it is also possible to preassemble them,
although I found this quite difficult to do), and turn on any of 13 different
optimizations. This last feature allows optimizations to be made
automatically, or for just a message to be given saying where an optimization
could be made. It is only on an instruction-wide basis, and not a "peephole
optimizer" like with SAS/C, but it always finds many savings I could have
made in my own code.
Every possible "extra" assembler feature you could think of has been
implemented; e.g., macros, conditional assembly, loops (to save you typing the
same sequence of instructions many times), local labels, alignment, etc. All
the new 68020+ instructions and addressing modes are present, along with the
FPU-specific mnemonics.
The "Program" menu contains the important options that you would not
find in a normal text editor. "Assemble" will automatically check, assemble,
and link your code, and optionally attach an icon to the executable. "Check"
performs the same operation as "Assemble", except it does not write out the
resulting code to a file. It does however still keep a copy of it in memory,
so you can use the debugger on it (see below). This is useful for
floppy-only systems, where writing a file can be time-consuming. On my '030
and fast Quantum HD, with the include files assembled in the RAM disk (I
actually store them in ENVARC: so they automatically get copied there when I
boot up), assembling is VERY fast indeed. Probably not quite as fast as
ArgAsm, but far ahead of a typical C compiler like SAS/C.
If there were errors in the program, the "Find Error", "Next Error",
and "Previous Error" options are useful. (They all have keyboard shortcuts
too.) These also jump to the instructions where GenAm made an optimisation,
as well as to any syntactical errors.
There are many other options available from the editor, and I won't
discuss all of them here. Some of the nicer ones include being able to
indent the cursor automatically on a new line (since the first column is used
for the opcode, and is usually skipped over), make backups of a file, print
the currently selected block, and select the arguments passed to your program
when the editor runs it (another facility available from the "Program" menu).
Of course, if your mouse is broken, you can run DevPac from the
Shell. The manual fully documents all the command-line arguments which GenAm
and Blink accept, and they also have default settings files to save you
typing 200-character command lines every time....
The other aspect of DevPac is the debugger, MonAm. This can be
loaded from Workbench or DevPac itself (the latter automatically loads in
your most recently assembled program for you). I am sure this could form a
separate review in its own right. It runs on a custom screen (interlaced if
you wish), and basically consists of a number of windows (not Intuition
windows though), through which you can view the CPU's registers, contents of
memory, program disassembly (including labels if you allowed them in the
assembly options), etc. It has to be said that this part of DevPac is not as
intuitive as the editor. There are no menus: just hotkeys. I must admit I
didn't use it too often, as it meant constant referring to the manual to
remember which keypress did what (e.g., control-Z means "single-step"). It
is a powerful debugger, however, with all the features you would expect:
break points, disassemble to printer or disk, search memory for bytes,
mnemonics, or text, etc. The on-screen layout is very clear and
professional. However, it does change the mouse pointer to a "bug" image.
Some people may prefer to use the standard Amiga pointer.
VENDOR SUPPORT
There is some kind of ongoing telephone service available for a fee,
but I didn't use it. I did get a chance to speak with a HiSoft
representative at the Amiga Shopper show in London last summer. At the time,
I only had v3.01 of the software, and a friend of mine who bought it at the
same time as me (not from the same place) had v3.02. I had brought along my
original disks in the hope that they could upgrade them at the show, but was
told the only copies of DevPac they had were for new customers, and I would
have to go through the normal channels to get the upgrade.
I also asked him about the possibility of having a user-selectable
font for the settings windows (although even Commodore haven't done this in
Kickstart 3.0!), mentioning that Bryan Ford (author of MultiPlayer - hi
Bryan; what's your new e-mail address?) had written a custom user-interface
builder. He gave me a business card and the name of the DevPac programmer,
suggesting Bryan write to him about it. I don't know if anything came of
this. I have never received upgrade information from HiSoft.
CONCLUSIONS
This is a superb piece of software. I would give it 10 out of 10.
It closely follows the Style Guide, has a great manual, is very powerful,
very fast, and very user-friendly. The debugger could be made friendlier
with the addition of a proper Intuition interface, but with the manual open
beside you to remind you of the keys (you would of course learn them very
quickly if you used it often), it is easy to use.
To anyone seriously intending to write Amiga software in assembly
language, this is almost certainly the best choice. Plus it is very cheap!
COPYRIGHT
This review is Copyright 1993 Barry McConnell. It may be distributed
as long as no changes are made and it is left intact.
If you want to contact me to ask further questions, my e-mail
addresses are:
Internet: bmccnnll@unix1.tcd.ie
FidoNet: 2:263/150.2
Barry.
---
Daniel Barrett, Moderator, comp.sys.amiga.reviews
Send reviews to: amiga-reviews-submissions@math.uh.edu
Request information: amiga-reviews-requests@math.uh.edu
Moderator mail: amiga-reviews@math.uh.edu