TweetFollow Us on Twitter

Prog Assistants
Volume Number:7
Issue Number:4
Column Tag:Tools of the Trade

Programmer's Assistants

By Dave Kelly, MacTutor Editorial Board

Programmer’s Assistants Provides Six Developer Utilities

The next time you’re planning a development project don’t forget to include debugging tools. A debugger doesn’t need to be complicated to get the job done either. Most of the time, you just want to see what your program is doing while it is running. This is a lot harder once you compile the application. This requires you to have a knowledge of your favorite debugger’s capabilities. It helps to understand how the Macintosh works too.

Aladdin Systems, Inc., the “StuffIt™” company provides a set of six desk accessory utilities to help you in your development effort. The Programmer’s Assistants isn’t a substitute for a good debugger, but can provide some features that are worth mentioning here. These utilities were written at the time Raymond Lau was developing StuffIt. Ron Kashden wrote the set of routines as an aid to help in-house development. Raymond Lau needed tools to help see what was going on with his program. Eventually, someone suggested that these tools be made available to everyone.

The package has a notebook of documentation and an 800K disk. There are six chapters in the documentation, one for each utility. Each section has its own separate table of contents. The documentation doesn’t have master table of contents or an index. Every chapter has been design to teach the theory and practice upon which each utility is based. Some people use this package strictly to learn the theory presented in the documentation. To find something you must find the chapter’s individual table of contents and look it up from there. Basic On-Line help information is available for each “Assistants” on-screen. Each window provides a button that accesses the help information.

As mentioned above, there are six DA utilities. Depending on the stage of development that you are in, some of them will be more valuable to you than others. Each utility fills a niche not covered by another. You can decide for yourself which utility you want to use. The Programmer’s Assistants names sound like they come from a mystery movie: The Professor, The Bystander, The Detective, The Witness, Continuity and Bean Counter. A description of each follows.

The Professor Numerical Analyzer performs 23 different integer functions. To use the Professor is straight forward. First set the base to binary, decimal, hex, or octal using the pop-up menus. Next the you select the function from a list dialog by clicking the function button. You may select an 8, 16, or 32 bit value for the value fields. Finally, you click on the “Do It” button to calculate. The 2nd value field acts as a mask for several functions.

The documentation contains a lot of information on numbers. The documentation explains conversion theory for base 2 (binary), decimal, hex, and octal. It’s more than just a base conversion calculator. Since the Professor’s 23 functions are available, you can predict the outcome of your code at the time you write it. This will help you get it right the first time.

The functions supported are: Add, And, Arith.Shr, ClearBit, Divide, Hi, HiWord, Lo, LoWord, Logshr, Mod, Multiply, Not, Or, RotateR, RotateL, SetBit, Shl, Subtract, Swap, SwapWord, TestBit, and Xor. You will find that the Professor will be a handy DA to have around.

The Bystander Event Watcher allows you to observe what the Mac is doing. The display shows the status of the mouse, memory, and events as they occur. You can see from the sample “Bystander” window that the Bystander caught my F-Key press when I dumped the Bystander window to a PICT file. It shows that I pressed the “5” key with cmd and shift modifier keys pressed. The mouse location is specified for both global and local coordinates.

Next, the window displays memory information for the current heap block used. The block of memory can be the Application, or the System, or DA Handler if you are running under Multifinder. You also can specify which events you want to have displayed. You can ignore keydown events if you want to, and the Bystander will display whatever the last specified event was.

Bystander is not without problems though. Although it appears to work as documented, there are bombs that occur occasionally when switching from one application to another in MultiFinder.

The Detective is an interactive debugging tool that displays variables related to your program in their proper types. The documentation gives a complete list of over 150 system global variables. These variables can be selected from a list window and actively displayed in a second window. As the variables change the display is updated. The Detective provides a great way to see what’s happening while your program is running.

The Witness is similar to the Bystander, except that this desk accessory records events in the background and logs them in a generic text file named “Event Log”. You can review the log later to figure out exactly what happened if any bugs occur in your program. The Witness allows you to select exactly which events you want recorded. The header of the Event Log data file displays information about the Macintosh you are using. Version 1.0 (reviewed here) does not know about the Macintosh IIci, but is still a very useful tool.

Continuity Document Historian is a DA that helps you keep track of revisions made in multiple documents. The Continuity DA updates the version resource for each file you select in your project. Until the latest versions of ResEdit were release it was still somewhat awkward to update the revision number. Continuity helps you do that. Of course with the latest ResEdit you can use the ResEdit template to update the version resource and save it to several files. This DA was of more use a year or so ago, but can still be used to keep the current version information up to date.

Bean Counter Optimizer is primarily useful to assembly language programmers. This DA allows you to check the code you have written and examine the number of clock cycles. You may then optimize your code by adjusting lines of code for the best performance. It’s a time consuming process to optimize code and the Bean Counter can really help.

There are many complaints about the increasing size of applications today now that memory is easier to afford. If you are programming assembly language, you should pay attention to the size of your application. Bean Counter was used extensively in streamlining StuffIt Deluxe. It should be noted that Bean Counter is the number one reason that developers buy Programmer’s Assistants.

The documentation for Bean Counter includes a summary of the syntax allowed. Bean Counter was designed for use with syntax from a variety of assemblers.

Programmer’s Assistants retails for $99.95, though the street price (via mail order) is about $65. Although the entire set of DAs may not be useful to everyone, these utilities can truly help you in debugging your development project.

Aladdin Systems, Inc.

Deer Park Center Suite 23A-171

Aptos, CA. 95003

408-685-9175

FAX: 408-662-8418

AppleLink: ALADDIN

America OnLine: ALADDIN

Connect: ALADDIN

GEnie: ALADDINSYS

CompuServe: 75016,325

Internet: aladdin@well.sfca.us

Retail Price: $99.95 (street price $65)

New Stuff

Although it seems Microsoft is not supporting QuickBASIC there have been some maintenance releases that you’ll want to know about. The latest version of version 1.0 supports all Macs and systems through 6.0.7. That doesn’t mean that the problems are completely fixed though. At MacWorld Expo in January, Microsoft hinted that QuickBASIC would not remain ignored for long, but there was no more information on what that means.

ZBasic is still alive and well too. Again there are hints of a new version 6.0 of ZBasic later this year. We’ll just wait and see. There was no sign of True Basic at MacWorld and the latest version I have will not run anymore. That’s either because it doesn’t support the latest system (6.0.7) or because it doesn’t support the IIci. At any rate it appears that there are only two BASIC products left.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Latest Forum Discussions

See All

Combo Quest (Games)
Combo Quest 1.0 Device: iOS Universal Category: Games Price: $.99, Version: 1.0 (iTunes) Description: Combo Quest is an epic, time tap role-playing adventure. In this unique masterpiece, you are a knight on a heroic quest to retrieve... | Read more »
Hero Emblems (Games)
Hero Emblems 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: ** 25% OFF for a limited time to celebrate the release ** ** Note for iPhone 6 user: If it doesn't run fullscreen on your device... | Read more »
Puzzle Blitz (Games)
Puzzle Blitz 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Puzzle Blitz is a frantic puzzle solving race against the clock! Solve as many puzzles as you can, before time runs out! You have... | Read more »
Sky Patrol (Games)
Sky Patrol 1.0.1 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0.1 (iTunes) Description: 'Strategic Twist On The Classic Shooter Genre' - Indie Game Mag... | Read more »
The Princess Bride - The Official Game...
The Princess Bride - The Official Game 1.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.1 (iTunes) Description: An epic game based on the beloved classic movie? Inconceivable! Play the world of The Princess Bride... | Read more »
Frozen Synapse (Games)
Frozen Synapse 1.0 Device: iOS iPhone Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: Frozen Synapse is a multi-award-winning tactical game. (Full cross-play with desktop and tablet versions) 9/10 Edge 9/10 Eurogamer... | Read more »
Space Marshals (Games)
Space Marshals 1.0.1 Device: iOS Universal Category: Games Price: $4.99, Version: 1.0.1 (iTunes) Description: ### IMPORTANT ### Please note that iPhone 4 is not supported. Space Marshals is a Sci-fi Wild West adventure taking place... | Read more »
Battle Slimes (Games)
Battle Slimes 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: BATTLE SLIMES is a fun local multiplayer game. Control speedy & bouncy slime blobs as you compete with friends and family.... | Read more »
Spectrum - 3D Avenue (Games)
Spectrum - 3D Avenue 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: "Spectrum is a pretty cool take on twitchy/reaction-based gameplay with enough complexity and style to stand out from the... | Read more »
Drop Wizard (Games)
Drop Wizard 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: Bring back the joy of arcade games! Drop Wizard is an action arcade game where you play as Teo, a wizard on a quest to save his... | Read more »

Price Scanner via MacPrices.net

Apple’s M4 Mac minis on sale for record-low p...
B&H Photo has M4 and M4 Pro Mac minis in stock and on sale right now for up to $150 off Apple’s MSRP, each including free 1-2 day shipping to most US addresses. Prices start at only $469: – M4... Read more
Deal Alert! Mac Studio with M4 Max CPU on sal...
B&H Photo has the standard-configuration Mac Studio model with Apple’s M4 Max CPU in stock today and on sale for $300 off MSRP, now $1699 (10-Core CPU and 32GB RAM/512GB SSD). B&H also... Read more

Jobs Board

All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.