TweetFollow Us on Twitter

Feb 01 Factory Floor Volume Number: 17 (2001)
Issue Number: 2
Column Tag: From the Factory Floor

CodeWarrior Version 6.0

By Richard Atwell, ©2001 by Metrowerks, Inc., all rights reserved

It's been a while since I last wrote an article for this column. Around the time of my last article CodeWarrior Version 6.0 was in the final stages of development and we decided to devote all of our energies to making what we think is the strongest release ever. For the next while this column is going to be every other month.

In this column I'd like to catch up on the latest release.

In The Beginning

CodeWarrior has been the choice of many Macintosh developers since late 1993. Since that time there have been 17 major releases: three DR, eight Gold and six Professional. Although we've changed the name along the way, the goal has remained the same: provide best of breed tools for the serious Macintosh application developer.

This time around, we felt so confident about the latest release that we decided to use it for it's own development. That is, with the exception of the compilers themselves, everything on the Pro 6 CDs was developed and built internally with Version 6.0.

If you're new to CodeWarrior, Metrowerks offers seamless integration of standards-compliant compilers, clever linkers, a powerful editor, project manager, visual interface constructor, modern application framework, profilers and debuggers in a single package.

Version 6.0

With Version 6.0, our focus has been Carbon compliance and initial support for the as yet unfinished Mac OS X. Using the same Universal Interfaces that we shipped on the CDs, we carbonized the IDE and all the accompanying tools for Mac OS X Public Beta. This Carbonization isn't 100% complete, but we'll catch up before Mac OS X goes final.

CodeWarrior now requires Mac OS 8.6 or higher because of its Carbonization. If you remember, Pro 5 was the last release that let you host the IDE on 68K-based Macintosh computers. Given the upcoming trends from Apple and feedback from our customers, we made the decision to make Version 6.0 the last release to support 68K code generation. Going forward, we will support code generation on PowerPC only. We see very few FAT applications being created these days and it has been a number of years since 68K hardware was sold by Apple, so we're going to focus on PowerPC.

New Find Dialog

Much in the way the Mac OS Finder bears an uncanny resemblance to the original Finder that shipped with the original Mac 128k, the IDE Find dialog seems to have been with us almost unchanged since DR/1. Over the years we've collected plenty of feedback and decided to take the plunge and rewrite it for Version 6.0.

The first thing you'll notice is that we've split the Find Dialog into two separate windows. Accessible from the Search menu, the menu items Find and Replace and Find in Files are available.

Select Find and Replace and the window that appears, Figure 1, looks similar to the upper portion of the old Find dialog. This window is for searching editor windows and the window options behave as before with the addition of two new options: Search Selection Only, and Direction, which lets you control the direction of the search from the insertion point. Gone from the old window is the batch checkbox, which has been replaced by a Find All button.


Figure 1. Find and Replace window.

The Find in Files window is the more interesting of the two new windows. If you don't like the default key binding that we gave this menu option, just change it using the Commands & Key Bindings... menu item from the Edit menu.

The Find in Files window is a tabbed window. The In Folders tab allows you to select a starting folder from which to base your searches. You can selectively search sub-folders and filter your searches by file type.


Figure 2. Find In Files window.

The second tab, In Projects, is an improvement over the old Find dialog's Project pop-up. It provides the ability to broaden the search to all open projects, or refine the search to specific targets. Also new is the ability to search cached sub-projects. As always, you can filter your search by sources, project headers and system headers.


Figure 3. In Projects tab.

In addition, you can now search only files that are in the symbolics for xSYM files that you have open. Searching through your symbolics is efficient, but the list will only contain the files that were actually used to build your targets. Any files in your symbolics that are missing, like sources for libraries built on someone else's machine, are noted in the search results window.


Figure 4. In Symbolics tab.

The last tab is an extension of the old Find dialog's Other button, but you can now search just the open editor files in addition to any set of file you wish to create. You can still drag and drop files and folders into this pane.


Figure 5. In Files tab.

Editor

The editor has been rewritten from the ground up. Although the editor's appearance hasn't really changed, performance has been improved when editing huge files. The insertion point is now tracked by column and a new symbol completion popup is available to help you write code. This is helpful if you've forgotten the names of methods that the browser database collects for your project when you have that build option on.


Figure 6. Symbol Completion popup.

New Target Panels

A few new panels have been created and improvements have been made to others. A long requested feature has been an option to modify the Finder bits of your target's file name. So, a new target panel was created so you can easily set the shared bit, among other things.


Figure 7. Output Flags target panel.

The other new target panel allow you to create Mac OS 9 packages from your output directory as part of the build process. This capability is provided via post-linker, so be sure to select the Mac OS Package post-linker from your projects target settings panel.


Figure 8. Mac OS Packager target panel.

Improved IDE Preferences

With Version 6.0, we've provided the ability to build projects on locked volumes such as CD-ROMs. You can now find references from the Search menu using Apple's Help Viewer. Select this from the IDE Extras preference panel.

A new panel was created to allow you to further filter your find and compare operations in addition to filtering other project options. One of the default filters we've provided allows you to skip the contents of your invisible CVS folders if you use Mac CVS Pro for version control. The shielded folders panel uses regular expressions to specify your filters so you can easily write a single filter for a variety of project directories that you may want to omit.


Figure 9. Shielded Folder preference panel.

The last major improvement to the IDE's preference panels is for remote debugging, which we introduced with Pro 5. The IDE 4.0 that shipped with that release forced you to restart the IDE in order to switch between debugging an application on a local machine or a remote machine.

We've removed this limitation with Version 6.0 and to simplify the remote debugger settings we've created an address book to store the TCP/IP addresses of the remote machine that you may wish to remote debug.


Figure 10. Remote Connections IDE panel.

Once you create a remote connection, you can specify on a per target basis that you wish to remote debug your application. Each target now has a Remote Debugging panel that lets you select the remote connection and specify where you want to transfer the output target on the remote machine and/or the name of an application you wish to launch.


Figure 11. Remote Debugging target panel.

These options make it possible to remote debugging applications on several machines at once in case you ever find the need to debug both client and server applications at the same time. With some additional panel settings you can also download any supporting files such as shared libraries when you start remote debugging.

URLs

Credits

If you'd like to get in touch with us about CodeWarrior issues, post to our newsgroup or email us directly. Visit our website at www.metrowerks.com to learn more about us.

  • Newsgroup: comp.sys.mac.programmer.codewarrior
  • Technical Support: cw_support@metrowerks.com
  • Report Bugs: cw_bug@metrowerks.com
  • Suggestions: cw_suggestion@metrowerks.com

Richard Alexander David Atwell, aka ratwell, is a Mac OS Debugger Engineer at Metrowerks and takes time out from development to keep MacTech readers informed about the world of Metrowerks. Good ideas for CodeWarrior t-shirts can be sent to ratwell@metrowerks.com.

 

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.