There are a few neat debugging aids you can perform directly on the handheld:
Press the Reset
button with a blunt, thin instrument (e.g., an unfolded paper clip,
or the tool embedded inside many a stylus). This resets the dynamic
heap but not the storage heaps, so no data is lost. Each installed
application receives the
sysAppLaunchCmdSystemReset launch code. This reset
also removes any orphaned chunks in the storage heap (chunks that are
not members of any database).
Press and release the Reset button while holding down the Power key. You are provided with the option to erase everything in RAM, including all your data.
Press (and release) the Reset button while pushing the Down-arrow key. This puts the Palm device into debug mode, where it waits for a low-level debugger (like PalmDebugger) to connect. You see a flashing box in the upper left.
(and release) the Reset button while holding down the Up-arrow key.
The OS boots without sending reset launch codes to each application.
This is essential if you have a bug in your
PilotMain (like trying to access globals without
checking the launch code).
It’s not uncommon to accidentally access globals when you
shouldn’t in your
PilotMain (the typical
culprit is the failure to check the launch code). You can get into a
vicious cycle in such cases. After a reset, your application is sent
sysAppLaunchCmdSystemReset launch code, at which point you access globals, ...