CodeWarrior 8 Now Available

Metrowerks has begun shipping CodeWarrior for Palm OS platform, Version 8.0. New features in this version include project wizards that automate the creation of new applications, an enhanced C++ compiler, support for USB device debugging and completely integrated Palm OS API documentation. It also offers increased support for Springboard module development and much more. It is compatible with both Windows and Macintosh.

Until November 3, it costs $400 for new users and $200 for owners of previous versions. After that, the price rise to $500 and $250. The academic version is priced at $120; the academic license renewal is $75.

CodeWarrior includs an award-winning editor, project manager, optimizing C/C++ compiler, linker, emulators and target device interface that enables source and assembly level debugging.

It allows users to develop applications in a Macintosh or Windows environment for any Palm Powered device, including those from Palm, Symbol, Handspring, Handera, Sony, Kyocera, and IBM, as well as for any of the new Palm OS based smartphones available now from Handspring, Kyocera and Samsung.

New features in version 8.0 include:

  • Project wizards automate the creation of new applications.
  • Enhanced C++ compiler enables larger, more complex programs without introducing code penalties.
  • Expanded Mode allows C++ virtual tables and exception tables to be located in the storage heap leaving more room for dynamic data structures and global variables
  • Enhanced debugger features support for USB-based device debugging, reducing development time
  • Completely integrated API documentation provides a comprehensive Palm OS knowledge base
  • A new version of the CodeWarrior integrated development environment with numerous updates and additional features
  • A new 100+ page tutorial included with the product and a free online course at allow newer Palm OS platform developers an easy way to jump-start their project.
Version 8.0 of the CodeWarrior tools provides increased support for Springboard module development, allowing Springboard developers to create ROM images for Springboard flash memory directly from CodeWarrior. The new CardUpdaterMaker stationery enables developers to easily create an Updater application for a Springboard module.

"With the new release of CodeWarrior, Springboard developers now have an easy, one-stop solution for developing their Springboard applications," said Rita Sharma, developer relations manager, Handspring.

According to a Gartner Group report published at the beginning of this month, Metrowerks owns 80% of the market for Palm OS tools.

"Metrowerks offers the leading PDA platform development toolset on the market today -- CodeWarrior, which has enabled the development of more than 8,000 applications. These tools are used to support our DragonBall microprocessor family with unrivalled code generation. By leveraging the common user interface available in CodeWarrior tools, developers can have a smooth transition from 68K to ARM,” said Omid Tahernia, vice president and general manager of Motorola’s Wireless and Mobile Systems Division.

Thanks to Gerardo A Dada for the tip. -Ed

Article Comments


The following comments are owned by whoever posted them. PalmInfocenter is not responsible for them in any way.
Please Login or register here to add your comments.

Comments Closed Comments Closed
This article is no longer accepting new comments.


That's it?

I.M. Anonymous @ 10/17/2001 10:23:23 AM #
Is it just me or this upgrade does not have anything really interesting for 7.0 users? Did I miss something??

RE: That's it?
I.M. Anonymous @ 10/17/2001 10:32:44 AM #
No you did not miss anything. This seems to be nothing.. just like 7.0 was nothing new if you had 6.0.

One thing that really need to be fixed up is the Constructor. It is really buggy and does not even have a simple "import" feature for bitmaps, jpegs etcetera. My bet is you still need to Copy and Paste images.

One questions. If 8.0 should support sony device development, will there be an easy way to develop 320 x 320 hi res forms in Constructor? And similar for Handera 330? It should be.

RE: That's it?
I.M. Anonymous @ 10/17/2001 10:52:03 AM #
You're right, Constructor has problems with the bitmaps, I have 7.0 and still can't copy/paste from CW to MSPaint, only the other way around.

About supporting Handera and Sony, it's ify because Palm owns CW.

RE: That's it?
I.M. Anonymous @ 10/17/2001 11:00:06 AM #
> About supporting Handera and Sony, it's ify because Palm owns CW.

Close but no cigar. Metrowerks, maker of CodeWarrior, is owned by Motorola.

CW8 - more than meets the eye.
palmcoder @ 10/17/2001 11:10:12 AM #
Unfortunately, the official CW8 page doesn't fully cover all the new features included in CW8. I wasn't too keen on updating until I ran across this thread in the palm-dev newsgroup.

good stuff.

RE: That's it?
I.M. Anonymous @ 10/17/2001 11:20:54 AM #

How hard is it to make Constructor have acceptable features???

Copy and pasting images onlu way to import ? In a software that costs hundreds of dollars... you got to be joking??

Constructor not maintained by Metrowerks
bcombee @ 10/17/2001 11:41:27 AM #
Hi, technical lead on the CW Palm 8 product here.

Constructor is not maintained by Metrowerks anymore. It was transferred to Palm back around version 6, and is now part of their SDK. They have a developer who makes bug fixes for it and works on related tools. We are looking at alternatives to this for a future release, but due to the other features we were adding and the schedule of the IDE team, we were not able to add better resource editing in this release.

Support for HandEra and Sony
bcombee @ 10/17/2001 11:52:59 AM #
[speaking as CW for Palm tech lead here at Metrowerks]

BTW, we do support both the Sony CLIE and HandEra SDKs. We ship both of these on the CD, and the application wizard has checkboxes so you can include their SDKs files directly in a new application. Constructor doesn't have 240x240 form support yet, but we have to wait and see if Palm releases an update to that tool.

RE: That's it?
I.M. Anonymous @ 10/17/2001 12:38:58 PM #
See? Wanna join me for a cigar?

RE: That's it?
I.M. Anonymous @ 10/17/2001 4:14:27 PM #
Enhanced C++ compiler enables larger, more complex programs without introducing code penalties.
Expanded Mode allows C++ virtual tables and exception tables to be located in the storage heap leaving more room for dynamic data structures and global variables

That alone is worth the upgrade!!

I am looking forward to get the 8.0 version.


RE: That's it?
I.M. Anonymous @ 10/17/2001 4:23:41 PM #
Ben, about the Constructor. How hard can it be to put one guy to write a software that does what the Constructor does but *better* ?

I could do it in about 2-3 months if I had the time..

Come on.. please put a guy on it right away and make the Metrowerks "version" of Constructor. This software should be much ,much better than it is.

Constructor replacement
bcombee @ 10/17/2001 4:49:54 PM #
Estimating 2-3 months to replace Constructor is a little optimistic, since anything we do needs to be cross-platform compatible with Windows and Macintosh and work within the CodeWarrior IDE. We also would have to make modifications to the linker to handle the new resource format and provide a mechanism for importing old Constructor-based resources to allow customers to move their projects forward.

I've got some really innovative ideas for this, however, but it is much to early to make any product announcements. However, improving resource editing is a priority for the next release.

RE: That's it?
I.M. Anonymous @ 10/17/2001 5:50:45 PM #
Why would you need a new resource format? Stay with the same format and make improvements to the UI that creates the resources. Seems simple enough to me... and then you dont have to worry about supporting the "old" resource type. What am I missing here?

And also, what are the percentages windows vs mac users of Codewarrior for Palm?

RE: Constructor sucks in CW 7.0
I.M. Anonymous @ 10/21/2001 7:44:53 PM #
I've forced myself upgrade to upgrade CW7.0 and I wish I hadn't. What a pain in ass to get constructor 1.6 working. Bitmap families were all screwed up. The constructor won't allow copy and paste from a paint program. There is still no way to color a lable.
I had a project in the subdirectory and the IDE totally screw it up by referencing source files from the subdir project instead of the converted project.

I won't pay $300US for the upgrade to 8.0. I might ask them to pay me to upgrade considering the time I sent screwing around to get my project just to compile.

Other options, PLEASE!

I.M. Anonymous @ 10/17/2001 11:07:37 AM #
I bought v. 7.0. Very disappointed in the ability to import and export images. Could not get bitmap families to work properly. Could not get greyscale images to work without creating them directly in CW. I also HATE the global variables issues in the Palm OS environment.

Message to Metrowerks and Dataviz: Build it, and they will come. Charge excessive fees for incremental software upgrades, and they will go away.

I'm looking at different development environments. Anyone tried the new Visual Basic cross-platform development tool on the market?


RE: Other options, PLEASE!
bcombee @ 10/17/2001 11:44:09 AM #
We fully support the PilRC plugin with version 8. This lets you directly import BMP files into your resources by writing a small text description file. This is the same resource description language used by the GCC-based tools. You also can use existing PilRC-compatible resource editors, like the one Handspring has for free download at their site.

RE: Other options, PLEASE!
I.M. Anonymous @ 10/17/2001 1:04:33 PM #
I would strongly endorse the use of PilRC with the CW IDE, for our project we only use constructor to create the forms. Everything else (bitmaps, strings, string lists, menus, alerts) is done with PilRC, this makes life very easy.

RE: Other options, PLEASE!
I.M. Anonymous @ 10/18/2001 1:15:13 PM #
wow, so now the idea is to buy a program for hundreds of dollars and then use a GNU-tool which is free of charge?
you guys have to be kidding

List of changes from Metrowerks engineering

bcombee @ 10/17/2001 11:46:10 AM #
[in my role as technical lead on the CW for Palm OS product]

On the palm-dev forum, I posted a list of changes from CodeWarrior V7 to V8 last week. I'm reposting it here, since I think its relevant.

We updated the IDE from 4.1 to 4.2.5. There are few new features in the 4.2.5 IDE that users will use, but there are lots of bug fixes, and there are some infrastructure changes that enabled other things we do in this release.

We decided to fully support PilRC. The plugin is installed by default along with the rest of the Metrowerks tools. We also wrote an editor plugin so you get syntax coloring for .rcp files. CW Palm 8 still uses Constructor as its primary resource editor, but you can use any of the free PilRC editing tools that are out there as an alternative now.

We updated the debugger to handle USB communications with Palm's m500, m505, and m125 devices. This required working closely with Palm and doing lots of rewrites of the debugger communication engine. In the process, we maintained compatibility with Handspring's older USB driver, and we improved some communications issues in the serial driver.

We added new debugger features: watchpoint support for finding where data is corrupted (when used with POSE 3.3), automated memory handle dereferencing (you enter a handle, it tells you where to look in memory for that handle's contents)

We also added more caching in the debugger to improve stepping speed.

We negotiated with Palm and got the rights to take their SDK Reference and turn it into an online help file on both Macintosh and Windows. We've used IDE 4.2.5's support for context help to enable instant lookup of API function documentation.

We implemented a new mode in the compiler called expanded mode. This puts compiler-generated data like virtual tables and exception tables into a special data section that is stored on the storage heap instead of the dynamic heap. This means that you have more room for other global variables or MemPtrNew/MemHandleNew allocations when you're programming in C++, reducing the penalty for using the more advanced language for Palm OS programs. Expanded mode also has support, through an extra call to the runtime library, for using some C++ features (like virtual function calls) when handling non-global launches.

We re-ported MSL, the Metrowerks Standard Library, to Palm OS. MSL C++ was already in CW Palm 7, but now we have both the C and C++ libraries. Neither library is 100%, but large portions are there. One of our beta users already used this to get zlib running in CodeWarrior in less than 30 minutes.

We revamped all of the 68K pref panels, revising the user interface to make them easier to understand for Palm OS developers. We moved Macintosh-related options to other panels or disabled their controls when doing Palm work. We made the default values better fit what is expected in Palm OS programming. You can't make stupid mistakes now like forgetting to set the FP option to Palm OS and having your floating point code fail.

We added new compiler pragmas that let you have the compiler warn you when you try to use global variables or when you have a stack frame that is too large. These can show latent problems in your code that you might not hit during normal testing.

The debugger now can launch programs with a non-standard launch code and parameter block. This lets you easily test your program against alarm situations, try out Clipper plugins, or see how you will react to a system reset.

Macintosh users will find all of the Metrowerks supplied components Carbonized to work on both Mac OS Classic and Mac OS X. CWPalm 8 will provide a complete Palm development environment on OS X once Palm delivers Carbonized versions of the PalmRez post-linker and its preference panels.

We ported Handspring's ROM builder tool into a CodeWarrior plugin and we provide stationery that you can customize to produce Palm OS programs that will reprogram Springboard Flash modules.

Heather Tufts has written a new, over-100-page tutorial that walks new Palm OS developers all the way through the process, from creating their first project, to making a complex application with bitmap resources and multiple forms.

We've added links to the major Palm OS development resource sites to the help menu.

We now have an new application wizard. This gives you a series of dialogs for creating a new project, letting you designate the name, creator code, application language, minimum OS version, and more. It also lets you automatically add support for a variety of SDKs, including all major Palm OS licensees, the Palm OS glue library, the MSL C/C++ library, and MathLib. The wizard uses that input to make a new application, with customized source code, resources, and debug/release targets.

We also have a new shared library wizard. This works like the application wizard, but you also get to specify the names of all of the APIs that the shared library should export. The wizard then does the work of setting up the boilerplate code and dispatch tables, giving you an functional library that you can then immediately modify and use.

There is a new project, automatically linked to wizard created projects, that provides several precompiled headers for you to use. By default, new applications use a precompiled header that uses the strict mode in the 4.0 SDK to help you guarantee that applications you write now will work when Palm introduces ARM-based devices. Your debug targets use the strict header, but with the debug level set to full to help you catch more errors.

Did I mention that the wizards are driven off template files and projects that are easily customizable for your own needs, even allowing you to setup a standard boilerplate for your workflow?

The debugger can now connect to your device or emulator without launching a new program. You can use this to activate the debugger when you hit a problem in POSE without having had originally started a debug session. You also can restart debugging without downloading again, which is great for when you have large programs and haven't done a recompilation.

RE: List of changes from Metrowerks engineering
I.M. Anonymous @ 10/17/2001 1:04:00 PM #
Would love to see the nextgen CodeWarrior have a setup similar to Borlands C++ builder; Using the contructor, developers could modify object properties and methods. Adding new forms and form objects would create the the code automatically in the body of the program.

Of course, a C++ framework like Borlands' OWL would be incredibly useful as well.

RE: List of changes from Metrowerks engineering
bcombee @ 10/17/2001 1:14:16 PM #
There are both options we're considering for the next version. In the meantime, there are some good C++ frameworks out there; I've personally used ZenPlus, Bear River's PAF, and Palm Object Library, and they each have their strengths. I used example code from PAF to help test the new C++ compiler features.

RE: List of changes from Metrowerks engineering
Ed @ 10/17/2001 3:01:18 PM #
Thanks for all the info, Bill! I'll keep you in mind the next time I'm going to write a CodeWarrior story.

News Editor
RE: List of changes from Metrowerks engineering
bcombee @ 10/17/2001 3:04:40 PM #
You're quite welcome! :)

-- Ben "Not Bill" Combee
CodeWarrior for Palm OS Technical Lead

RE: List of changes from Metrowerks engineering
Ed @ 10/17/2001 3:26:05 PM #

News Editor

Clarification of pricing

bcombee @ 10/17/2001 11:49:00 AM #
[one last post for now]

Just to update the press release: if you own CodeWarrior for Palm OS version 5 or 6, we have a special $299 upgrade price good until November 3. After that, users of versions before V7 will have to buy a new copy of the software. The $199/249 upgrade prices are good only for users of V7.

RE: Clarification of pricing
I.M. Anonymous @ 10/17/2001 12:06:20 PM #
Any academic price? Thanks.

RE: Clarification of pricing
bcombee @ 10/17/2001 12:10:47 PM #
The academic price is mentioned in the main article. $119 for a new copy, $75 to renew from V7. There is no academic upgrade price for V5/V6 users.

RE: Clarification of pricing
I.M. Anonymous @ 10/17/2001 2:41:33 PM #
Well, as a grad student who owns v6, that's a bummer, but I'll probably buy version 8 anyhow.

Why not just use GNU C + Emacs?

mj6798 @ 10/19/2001 6:14:29 AM #
I don't get why people use these systems. GNU C/C++ is an excellent and free compiler, and Emacs provides all the functionality of the IDEs. The only thing that is "missing" is a visual GUI layout tool, but there are better alternatives anyway.

RE: Why not just use GNU C + Emacs?
I.M. Anonymous @ 10/19/2001 7:56:58 AM #

How do you set up emacs as you describe?

Could you not just use the Constructor as the GUI layout tool? It is free, since it comes with the Palm SDK nowadays.

And because it is free, no one developes it any longer and therefore it sucks. But are there any better options out there?



Register Register | Login Log in