Device Reset
There are a few neat debugging aids you can perform directly on the handheld:
- Soft reset
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).- Hard reset
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.
- Debug reset
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.
- No-notify reset
Pressing (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).
Note
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
the sysAppLaunchCmdSystemReset
launch code, at which point you access globals, ...
Get Palm OS Programming, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.