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