TweetFollow Us on Twitter

CodeWarrior6 Volume Number: 17 (2001)
Issue Number: 1
Column Tag: Tools of the Trade

CodeWarrior 6

By Tim Monroe

A Look at the Latest Mac Version of Metrowerk's Development Environment

Introduction

CodeWarrior 6.0 (CW6) is the latest version of Metrowerk's popular integrated development environment (IDE) for Macintosh and Windows (and, I believe, the first version to carry the Motorola brand name). In addition to all the standard improvements you'd expect to find in a major release of a professional IDE (bug fixes, greater compliance with existing standards, improved performance, and the like), CodeWarrior 6.0 takes one major step forward: all important parts of the software development environment have been Carbonized, including the IDE itself, PowerPlant (the object-oriented application framework), Constructor, and Profiler. This means that it's possible to do complete application development on "classic" Macintosh operating systems (Mac OS 8.x and 9.x) and on Mac OS X. (CodeWarrior 6.0 also runs on Windows computers, but I did not receive a review copy of the Windows install disk, so I can't comment on how well that new version works.)

Some Test Drives

I first took CodeWarrior 6.0 for a spin on Mac OS 9.0.4. As usual, installation was a snap. The IDE wanted to convert my existing project files for use with the new IDE (version 4.1, for what it's worth). After that, compiling, linking, and debugging proceeded exactly as they did under previous versions of the IDE. The entire CodeWarrior 6.0 suite has received a minor facelift; for instance, the Finder icons are different, and the project window (shown in Figure 1) has undergone some reorganization. (In earlier IDEs, the tabs hung down from the top of the window.)


Figure 1. A project window under Mac OS 9.

Then I decided to get brave. I usually like to develop Windows versions of my applications using the Mac IDE. I didn't have the Windows IDE, but the Mac installation still includes compilers and linkers for x86 development. Once again, my existing Windows projects compiled and linked flawlessly (after allowing the IDE to make the necessary project conversion). CodeWarrior 6.0, however, uses a different method for specifying the remote target for two-machine debugging. Under previous versions, you could specify only a single remote target for all projects, in the IDE Preferences window (Figure 2).


Figure 2. Setting a remote debugging target (CW 5).

Under CW6, you can define any number of remote targets in the IDE Preferences window (Figure 3). Each individual project can then specify which one of those targets to use for any particular debugging session (see Figure 4). This is a very nice enhancement.


Figure 3. Setting remote debugging targets (CW 6).


Figure 4. Specifying a remote target.

Pedal to the Metal

Finally, I decided to get really brave and run the IDE under Mac OS X. I installed the Public Beta version of OS X on an external hard drive, booted up, and then launched the IDE. I must admit to having had a certain trepidation as the IDE launched, but my fears subsided as the project window opened and greeted me with its jaunty Aqua appearance (Figure 5).


Figure 5. A project window under Mac OS X.

Once again, the project compiled, linked, and ran flawlessly. Moreover, remote debugging between the Mac OS X machine and a machine running Mac OS 8.6 worked just fine. What did not work at all was local debugging - that is, trying to step through the code on the Mac OS X machine itself. (I kept getting a network timeout error; go figure!) After trolling the comp.sys.mac.programmer.codewarrior news group, I discovered that I needed to perform the Codewarrior installation while running Mac OS X. Once I did that, local and remote debugging worked as expected.

CodeWarrior 6 running on Mac OS X seems to be a fairly solid and stable product, at least in my preliminary tests. As is to be expected, there are some cosmetic glitches. Figure 6, for instance, shows a dialog box in which some of the text is clipped. All in all, however, I was pleasantly surprised at how well the product performed, especially considering that it's running on a beta version of a brand new operating system.


Figure 6. A dialog box with clipped text.

Conclusion

Should you upgrade to CodeWarrior 6.0 from an earlier version? For most Mac programmers, this is a no-brainer: sure, stay up to date with the latest and greatest tools. This is especially true if you want to get your product working under Mac OS X or you want to do your software development under Mac OS X. You can develop Carbonized applications using CW5, but not under Mac OS X. For the complete Carbon story, and especially for local debugging under OS X, CodeWarrior 6.0 is the way to go.

Some developers, however, might want to hold off making the leap to CW6, even though it's a fairly tiny leap in terms of code changes. If you're deep into a project that uses CW5 or earlier, you may want to finish that project before moving forward. After all, since the compilers have become more compliant to the ANSI standards, some of your existing code might get signaled as non-compliant (especially if it is non-compliant). In my own projects, I didn't encounter any such problems, but of course your mileage may vary. In my mind, the ability to specify remote debugging targets on a per-project basis is worth the price of upgrading all by itself.


Tim Monroe is a software engineer on Apple's QuickTime engineering team. You can contact him at monroe@apple.com. His opinions, of course, are his own and not those of his employer.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Boom 3D 1.3.6 - $19.99
Boom 3D is a revolutionary app with 3D Surround Sound and phenomenally rich and intense audio that is realistic and works on any headphones. Features 3D surround sound Built-in audio player... Read more
Remotix 6.1.4 - Access all your computer...
Remotix is a fast and powerful application to easily access multiple Macs (and PCs) from your own Mac. Features: Complete Apple Screen Sharing support - including Mac OS X login, clipboard... Read more
MacFamilyTree 9.0.12 - Create and explor...
MacFamilyTree gives genealogy a facelift: modern, interactive, convenient and fast. Explore your family tree and your family history in a way generations of chroniclers before you would have loved.... Read more
ffWorks 2.0.4 - Convert multimedia files...
ffWorks, focused on simplicity, brings a fresh approach to the use of FFmpeg, allowing you to create ultra-high-quality movies without the need to write a single line of code on the command-line.... Read more
Apple Pages 10.0 - Apple's word pro...
Apple Pages is a powerful word processor that gives you everything you need to create documents that look beautiful. And read beautifully. It lets you work seamlessly between Mac and iOS devices, and... Read more
Numbers 10.0 - Apple's spreadsheet...
With Apple Numbers, sophisticated spreadsheets are just the start. The whole sheet is your canvas. Just add dramatic interactive charts, tables, and images that paint a revealing picture of your data... Read more
Keynote 10.0 - Apple's presentation...
Easily create gorgeous presentations with the all-new Keynote, featuring powerful yet easy-to-use tools and dazzling effects that will make you a very hard act to follow. The Theme Chooser lets you... Read more
Carbon Copy Cloner 5.1.16 - Easy-to-use...
Carbon Copy Cloner backups are better than ordinary backups. Suppose the unthinkable happens while you're under deadline to finish a project: your Mac is unresponsive and all you hear is an ominous,... Read more
PDFpenPro 11.2.2 - Advanced PDF toolkit...
PDFpenPro allows users to edit PDF's easily. Add text, images and signatures. Fill out PDF forms. Merge or split PDF documents. Reorder and delete pages. Create fillable forms and tables of content... Read more
PDFpen 11.2.2 - Edit and annotate PDFs w...
PDFpen allows users to easily edit PDF's. Add text, images and signatures. Fill out PDF forms. Merge or split PDF documents. Reorder and delete pages. Even correct text and edit graphics! Features... Read more

Latest Forum Discussions

See All

Same Room Games is a great collection of...
Staying at home under lockdown kinda sucks. Totally necessary, yes, but also more than a little anxiety-inducing and often boring. Thankfully, we've got lots of great multiplayer games to play with friends and keep us sane, the latest of which,... | Read more »
Bark Park is a joyfully silly multiplaye...
Bark Park is a charming, good-humoured game about competing against other players to claim as much territory as possible by peeing on nearby trees. Did I mention that everyone is playing as a dog? Makes things a little less weird. [Read more] | Read more »
The 5 Best Games Like Grindstone
Apple Arcade made a splash when it first launched, granting access to over 50 games as soon as it became available. Of those titles, the one that seemed to grab most people’s attention was Grindstone, a matching puzzle game from Capy Games. [Read... | Read more »
Awarding-winning puzzler Make One is now...
Make One is a game with a simple concept that it executes with flair and impressive levels of polish. It comes to us from developer Brazle and publisher PiG, and it's just landed this week for Android. At its core, Make One is a logic-based... | Read more »
Marvel Contest of Champions' latest...
Kabam's Marvel Contest of Champions has now teased some of the latest characters heading to the Battlerealm next month. Here's your chance to watch the new motion comic embedded below, Barons' War, before I spoil the surprise. [Read more] | Read more »
Why Calibria: Crystal Guardians is the p...
We could all use escapism right now, something to focus on and a project to feel part of during these times of social isolation. If you’re one of the many who’s turned to gaming to fill the lockdown void, Calibria: Crystal Guardians should be on... | Read more »
Mini Tank: Fire is a Worms-like, turn-ba...
Mini Tank: Fire is an online multiplayer game that takes a few cues from the likes of Worms and Shell Shock Live. It will feature 5v5 turn-based battles and is available now for both iOS and Android as a free-to-play game. [Read more] | Read more »
Poly is an endless runner for iOS where...
Poly is an endless runner from solo developer Denis Kakacka that's available now for iOS as a free-to-play game. It aims to bring a slight twist to the standard running formula by mixing up what you're actually controlling. [Read more] | Read more »
Reflex Unit 2 brings intense PvP battles...
Reflex Unit 2 will see players engaging in mech-based warfare, fending off waves and waves of autonomous robots that are threatening to destroy the planet. It's available now for iOS and Android. | Read more »
Snake Core is a modern take on a mobile...
Snake Core, from acclaimed indie developer Orangepixel, is a modern take a mobile classic: Snake. The idea is that you'll command a small army of troops as they go about attempting to take down a horde of invading aliens. [Read more] | Read more »

Price Scanner via MacPrices.net

Apple offers Certified Refurbished iPhone XS...
Apple has Certified Refurbished iPhone XS models available for up to $350 off MSRP, with prices starting at $699. Each iPhone is unlocked and comes with Apple’s standard one-year warranty and a new... Read more
Siri, Apple’s AI-Powered Virtual Assistant, N...
FEATURE: 04.01.20- Apple’s virtual assistant powered by AI (artificial intelligence), Siri, can answer almost any question you throw at it, from asking for today’s weather forecast to where the... Read more
Buy Apple’s 16″ 2.6GHz 6-Core MacBook Pro for...
Apple reseller DataVision has new 16″ 2.6GHz 6-Core MacBook Pros on sale for up to $170 off MSRP, each including free shipping. DataVision charges sales tax for NY, NJ, PA, and CA residents only. In... Read more
Boost Mobile 1-day Flash Sale: $100 off all A...
Boost Mobile is offering Apple’s 2019 iPhone 11 and 11 Pro models for $100 off MSRP. Boost is also offering the same $100 discount on new previous-generation iPhone XS, XR, X, 8, and 7 models. For... Read more
In stock! Apple’s new Mac Pro for $5995 with...
Apple reseller DataVision has the new 2019 Apple Mac Pro in stock today for $5995 ($5 off MSRP) including free shipping. DataVision charges sales tax for NY, NJ, PA, and CA residents only. If you don... Read more
Apple Sources Confirm Spring Media Event Canc...
NEWES: 03.31.20- A previously planned Apple media event scheduled to take place sometime this Spring that was rumored and widely expected to be held today, March 31, were confirmed by anonymous... Read more
Apple restocks 2017 13″ Dual-Core non-Touch B...
Apple has restocked a limited number of Certified Refurbished 2017 13″ 2.3GHz Dual-Core non-Touch Bar MacBook Pros starting at $1019. An standard Apple one-year warranty is included with each model,... Read more
Save $300 on the 13″ 2.4GHz MacBook Pro with...
Apple has a full line of Certified Refurbished 2019 13″ 2.4GHz 4-Core Touch Bar MacBook Pros available starting at $1529 and up to $300 off MSRP. Apple’s one-year warranty is included, shipping is... Read more
Just in! Apple’s new 2020 4-Core Mac mini $10...
B&H Photo has Apple’s new 2020 4-Core Mac mini in stock and on sale today for only $699 including free overnight delivery for many US addresses. Their price is $100 off MSRP, and it’s the lowest... Read more
New 2020 13″ Space Gray MacBook Airs on sale...
B&H Photo has Apple’s new 2020 13″ Space Gray MacBook Airs on sale today for $50 off Apple’s MSRP. While they don’t have stock today, preorders are accepted at this discount. Overnight shipping... Read more

Jobs Board

Sephora Merchandise/Operations Supervisor -...
Sephora Merchandise/Operations Supervisor - Apple Blossom Mall Location:Winchester, VA, United States- Apple Blossom Mall 1850 Apple Blossom Dr Job Read more
Sales Supervisor - *Apple* Blossom Mall - J...
Sales Supervisor - Apple Blossom Mall Location:Winchester, VA, United States- Apple Blossom Mall 1850 Apple Blossom Dr Job ID:1083621Store Hourly Positions Read more
*Apple* Mac Product Engineer - Barclays (Uni...
Apple Mac Engineer Whippany, NJ Support the development and delivery of solutions, products, and capabilities into the Barclays environment working across technical Read more
Essbase Developer - *Apple* - Theorem, LLC...
Job Summary Apple is seeking an experienced, detail-minded Essbase developer to join our worldwide business development and strategy team. If you are someone who Read more
Senior Software Engineer @ *Apple* - Theore...
Job Summary Apple is looking for a seasoned senior software engineer to join our worldwide business development and strategy team. This is an opportunity to lead a Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.