Software Utilities

Saving Face

Latest Version:1.0.2
Released: 24 September 1997

A handy little program for creating X-Face headers, which are used to encode a small bitmap as ASCII for inclusion in news postings and mail messages.

Available from:

CleanDoc

Latest Version:1.2
Released: 18 December 1995

A developer’s utility for setting color and font preferences for bunchs of Metrowerks CodeWarrior text and project files. It also converts between file types, and sets the type of resource files to your preferences.

  • “Extremely useful!”

Available from:

DictionaryEdit

Latest Version:1.3
Released: 16 December 1995

A Macintosh application for editing the text-to-speech dictionaries used by Apple’s Speech Manager, which makes full use of the Drag Manager, and allows a choice of voices.

Note: This application is no longer supported. To remove the shareware restriction, hold down the Command, Option, ‘a’ and ‘s’ keys, and choose the Preferences menu item from the File menu.

  • “It looks really slick”

Available from:

ProcessHound

Latest Version:1.0
Released: 13 September 1996

A small utility for viewing, launching and killing processes on the Mac. This is useful for killing faceless background applications (when running disk tools, for example). ProcessHound 1.0 is a fat binary.

Available from:

ColorMacsBug

Latest Version:1.0
Released: 25 August 1994

A Macintosh application used to edit the colors used by the MacsBug debugger. No more boring black and white!

MacsBug can be obtained from Apple’s FTP site, and some information about using MacsBug on the Power PC is available in this develop article. The MacsBug help screens are also online. There is another page of Tips and Tricks for MacsBug here.

  • “A nifty hack indeed!”

Available from:

permalink | computing/archaic | 2007.11.19-22:31.00

Using MacsBug

Introduction

MacsBug is a low-level debugger for 68k and PowerPC Macintosh computers. In basic terms, that means that it’s a bit of software that sits at a low level, and kicks in when a problem occurs.

Warning: playing with MacsBug may cause you to lose data in any running applications, and from it you can restart the computer. Don’t mess around with MacsBug with your unsaved 20-page report open in an application.

Obtaining MacsBug

You can download MacsBug from Apple’s servers here.

Installing MacsBug

Unstuff the downloaded archive with Stuffit Expander, if this has not already been done automatically. Drag the MacsBug file into the System Folder — it should just go in the System Folder itself, not in any sub-folders. This is the minimum you need to do. You can also move the ‘PowerPC dcmds’ file into a folder called ‘MacsBug Preferences’ in the ‘Preferences’ folder.

Now restart the computer. You should see the message ‘Debugger installed’ early in the startup process.

Basics

Once MacsBug is intalled, you can activate it (known as “dropping into MacsBug with a user break”) by pressing the Command-power key combination (hold down the command/clover/ apple key, and press the power-on key on the keyboard). MacsBug takes over the screen, showing you a black and white screen with a bunch of scarey-looking hex numbers. Don’t panic!

If you run your machine with MacsBug installed, you may also find that you get dumped into the debugger sometimes. This usually means that the software you are running has hit a bug that MacsBug has detected. If this happens, the safest option is to type ‘es’ to kill the current application, then restart the computer.

Some basic MacsBug commands are as follows:

CommandMeaningEffect
help Help Show help. Type help <subtopic> for help on subtopic.
g Go Continue execution where it was interrupted
es Exit to shell Kill the current application
dx Debugger Exchange Turn user breaks on or off (toggles). Use this avoid invoking MacsBug when an application calls Debugger() or DebugStr().
sc Stack crawl Show the stack using A6/R1 links
sc7 Stack crawl Show return addresses on the stack
hc all Heap check all Check all heaps
hc Heap check Check the current heap
log <filename> Log file Write output of following commands to log file <filename>. Typing log again toggles the log off.
stdlog Standard log Write a log file containing general information usefulf for debugging a crash

Getting a log file for a crashing bug

If you experience a bug that causes crashes, use the following procedure to get a log file to send to tech support, or the author of the software that you think is causing the crash.

Install MacsBug as described above. (Of course you only need to do this once.) Run the software that causes the crash. At the point where it normally crashes, you will, hopefully, get dropped into MacsBug. You’ll know this because the screen changes to show lots of black and white text, with a row of numbers down the left. At this point, simply type ‘stdlog’ (without the quotes) and MacsBug will write a file called “stdlog” to the desktop. Now type ‘es’ to kill the errant application. It’s probably a good idea to restart your Mac at this point.

Now simply attach the stdlog file to an email to the software author.

More information

MacsBug is a much more sophisticated tool than I have suggested here, but using it requires extensive knowledge of low-level system software and hardware details. The following links may be useful if you want to develop your MacsBug expertise:

permalink | computing/archaic | 2007.11.19-22:31.00