The PalmDebugger is an 68K assembly-level command-line debugger. It runs under Mac OS and Windows, and can debug with POSE directly, or with devices via serial or (on Windows only) USB. Figure 7-19 shows it in action.
There are some things you can do with a low-level debugger that you
can’t do with a source-level debugger like CodeWarrior. The
most important is you can set breakpoints on operating system
routines instead of just on your own code. For example, you can cause
a break every time
FrmDrawForm is called. To get
started with PalmDebugger, choose a connection type: port or POSE,
and then initiate the communication.
PalmDebugger initiates communication with POSE; enter the
att command in the Debugger window.
Communication with the device must start with the device: enter Shortcut, tap, tap, 1 from the device, which will cause a break into PalmDebugger.
Once you have established a communication you can issue commands. Some of the most useful are:
Displays a stack trace, showing the call chain.
atb "OSRoutine"(A-Trap Break)
Sets a break on the given OS routine (e.g., from atb
"FrmDrawForm"). Anytime the routine is called
(from anywhere, including within the OS itself), execution will stop
and the debugger will be entered.
Clears all A-Trap Breaks.