Errata

Palm OS Programming

Errata for Palm OS Programming

Submit your own errata for this product.

The errata list is a list of errors and their corrections that were found after the product was released.

The following errata were submitted by our customers and have not yet been approved or disproved by the author or editor. They solely represent the opinion of the customer.

Color Key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update

Version Location Description Submitted by Date submitted
Printed Page 78
1st paragraph

Just would like to report that although clumsy errors from Graffiti are a good
rationale not to obfuscate password fields on Palm handhelds, Blueiceresearch came up
with a pretty clever work-around in their Multipass application.

http://blueiceresearch.com/

What they implemented is a password field that obfuscates the password letter that
has just been entered after 1 second of clear text display.

That way, password is obfuscated hence adding a little bit more of security while
leaving the user with the opportunity of checking its Graffiti writing.

Might be a Power User feature though.

Anonymous   
Printed Page 104
Getting and Installing POSE

The URL for POSE should be,

http://www.palmos.com/dev/tools/emulator/, not

http://www.palmos.com/dev/tech/tools/emulator as printed on the book

Anonymous   
Printed Page 120
In the first paragraph of the "Installing on Windows" section

Wrong web address

web address should be this --> http://prc-tools.sourceforge.net/

not as it is printed --> http://prc-tools.sourceforget.net/

Anonymous   
Printed Page 124
Installing PRC-Tools, Step 8.

Afetr following the instructions in the text the following directries do not exist:

/usr/m68k-palmos/lib
/usr/m68k-palmos/include

Anonymous   
Printed Page 124
Installing the 4.0 SDK: Point 6.

WINDOWS USERS ONLY:

The book states that to mount PalmDev you use:

mount -f "C:PalmDev" /PalmDev

Using this I encountered this error:

/PalmDev/sdk-4/include/Core/System/AlarmMgr.h:116: badly punctuated parameter list in
`#define'

Checking the syntax for mount specifies that the switch -t (text files get
line
endings) is set a s default. This is not the case. To correctly create the mountpoint
for use with the sample project use this mount command:

mount -f -t "C:PalmDev" /PalmDev

Hope this helps. Saved me some time

Anonymous   
Printed Page 125
Installing PilRC: Step 2.

Step 2, says to copy pilrc.exe to C:cygwinusrin

Running make, after fixing the mount issue (see errata page 124). I received the
following error:

( cd GCC/; rm *.bin; pilrc -I ../Src/ ../Src/Resources.rcp)
rm: cannot remove `*.bin': No such file or directory
pilrc: not found
make: *** [GCC/bin.stamp] Error 127

The location of pilrc.exe appears to be incorrect. Firstly there are no other binary
files in the usr/bin directory. Instead I copied pilrc.exe to C:cygwinin. This
fixed the problem.

Anonymous   
Printed Page 127
section "Cloning the Sample Project"

First. You reference a directory named "OreillyStationery" - the name of the directory
is actually named "OReillyStarter" after the download completes.

Second. I installed the latest version of Cygwin (probably a bad move) from
http://sources.redhat.com/cygwin/ (ver. cygwin-b20). The setup.exe creates an entirely
different directory structure than the version you probably used for creating the OReilly
Sample project (I deduced this from the the following error I received after attepmting to
make MyProject: "m68k-palmos-gcc: command not found"). The gcc app is now located in
c:cygnuscygwin-b20H-i586-cygwin32in.

I'm still trying to get the sample to run but am currently stuck. The Cygnus website
has a ton of information to sort through and they have made it very clear, esp. with
acronyms like "RTFM", that unless you actually purchase their product you are SOL.

Is there a later version of the Sample Project that's designed to work with cygwin-b20?

Anonymous   
Printed Page 127
Cloning the Sample Project

The text states that you should be able to cd to "MyProject" and run a make.
Unfortunately, I downloaded the latest Palm SDK (version 4.0). Apparently, the new
SDK contains a few more include files and a different directory structure. As a
result, I got errors concerning a bad use of PalmOS.h. The solution to this problem
is to run palmdev-prep from the command line in Cygwin.

Anonymous   
Printed Page 154
1st sentence of Form Files of the Application

Main.c should probably be MainForm.c

Anonymous   
Printed Page 183
Last line of GetStackSpaceUsed()

The return value for GetStackSpaceUsed() is
return (UInt32)
Abs((char*) &aStackBasedVariable - (char*)bottomOfStack);

I believe it should be:
return (UInt32)
Abs((char*) &aStackBasedVariable - (char*)topOfStack);

My reasoning is:
The stack that is used is from the top of the stack (say at location 1000) to the
aStackBasedVariable (say at location 750). This would give the number of bytes on the
stack, ie. used.

If you use the bottomOStack this would give you the number of free bytes left on the
stack.

1000 (TOS) ---+
... {Used stack space } |
0750 (aStackBasedVariable ) ---+
... {Unused stack space }
0000 (BOS)

Anonymous   
Printed Page 252
First line

couldn't get FrmGetObjectID to work ... however, FrmGetObjectId did work.

Anonymous   
Printed Page 261
Control APIs

controlID in FrmGetControlValue and FrmSetControlValue should be object index instead.

Anonymous