CW Updates and Fixes
The current official version of CodeWarrior Development Studio for Palm OS is 9.2, which you can get by starting with CW for Palm OS V9.0 or V9.1, and then installing the 9.2 update. Release notes are available here.
The 9.2 update includes extensive 68K linker, debugger, and compiler fixes, a major revision to the PACE Native Object tools, support for debugging ARM code using the FAST toolkit, and support for the TapWave SDK.
9.2 PACE Native Object Tools Issues
With the help of developers who downloaded and have tried the 9.2 update, we've already identified a few problems. We should be getting a beta version out to fix most of these in the near future, so if you want to get these fixes soon, please join the MPTP beta program so you'll get early access before we issue them to the public-at-large.
Here's a short list of issues with the PACE Native Object tools:
- The floating point library supplied with the tools is an old, slow, inaccurate version. If you're doing any FP math, you need to get the update. Note: this only affects PNO builds; the TapWave SDK includes the fixed library, so TapWave Native Applications are not affected by this problem.
- Compiling in Thumb mode can occasionally cause the compiler to hang up, using all your memory and eventually crashing.
- The linker has problems with debug info on large programs; this can cause the Palm OS Debugger from the FAST toolkit to crash in some circumstances.
- The compiler always has exception handling enabled, even throuh exceptions aren't supported in PACE Native Objects with the current runtime library.
- The PnoLoader library has a couple of bugs that affect relocations and launching PACE Native Objects. An updated PnoLoader.c is available from this site.
- The in-memory layout for structs and classes is incompatible with ARM's developer tools. The compiler will insert unneeded padding into the structure to try to make everything 4-byte aligned, when 1 or 2-byte alignement is all that is needed.
- PACEInterface.h doesn't surround the #include of VFWMgr.h with an extern "C" block. This causes the PACEInterfaceLib version to be built with C++ name mangling.
We've already got internal fixes for all of these, but we're still working on validating all of the changes before posting this to our beta list.
If you've encountered a problem not addressed by existing fixes, please make sure to report it to Metrowerks using the bug report form on their website.

Send feedback to combee@techwood.org
Copyright © 2004 Benjamin L. Combee
Palm OS is a registered trademark of PalmSource, Inc.
Metrowerks and CodeWarrior are registered trademarks of Metrowerks Inc.
The views expressed on this website/weblog are those of mine alone and do not necessarily reflect the views of PalmSource or Metrowerks.

qwertYAK / frobnovich
|