Nokia Series 60 3rd Edition Development

Last week, I started upgrading applications to Series 60 3rd Edition (Symbian 9.1). As mentioned in my previous post, I had a go at using the beta version of Carbide.c++ Express. Here are some more observations and tips.
I would advise using Codewarrior 3.1 rather than Carbide.c++ or Carbide.vs. The latter two don’t work too well with existing .mmp files and you end up spending too long fighting the tool rather than working on the job in hand.
The Series 60 3rd Edition (beta) emulator is very slow and buggy. It’s particularly slow to start up so you need to minimise the number of times you do this. When debugging, Configure Codewarrior to run epoc.exe rather than your executable. In this way, you can keep the emulator up between code changes. Also, a fault in your code won’t then bring down the emulator.
The bugs in the emulator cause it to fall over when your application hasn’t even been run. In one case, the emulator froze altogether, a restart didn’t fix it and I had to reinstall the SDK.
As for updating the code to Series 60 3rd Edition, the old code compiled fairly easily with few changes. As with my recent 3.0 UIQ work, most of the changes are to the UI. In particular, it’s necessary to support the new screen sizes and landscape.
I had similar problems with code using stdlib. This was to be expected as it’s a Symbian rather than UIQ/S60 problem.
In summary, upgrading to Series 60 3rd edition was less work than for UIQ 3.0. This was mainly because the existing UI code needed to be extended rather than re-written.