How to make hybrid CD-ROMs

What is a hybrid CD?

The term hybrid CD-ROM denotes a CD with both a Macintosh volume containing a Macintosh filesystem (HFS or HFS+, also known as extended HFS) and a PC-readable filesystem (either ISO9660 or MS-Joliet). On PCs, only the ISO9660/Joliet data will be visible, whereas a Mac can see both filesystems (albeit without the long filenames supported by the Joliet extensions) but will auto-open only the Mac volume.

When are hybrid CDs needed?

When a CD contains only data files that need to be accessible on multiple platforms, it is not necessary to create a hybrid CD. Instead, an ISO9660 cross-platform CD can be made, with all files visible on both PCs and Macs. If a Linux system is used for burning, even the Rockridge extensions supporting Unix file ownership and permissions can be applied, so a true multi-platform CD is possible. However, ISO9660 CDs only support short filenames following MS-DOS conventions: 8 characters for the filename and 3 for the file extension, everything in uppercase, and only alphanumeric characters and underscore are allowed (there are extensions allowing any MS-DOS 8.3 character filename, or even long filenames up to 30 characters, which will still work on most systems).
So when are true hybrid CDs necessary to avoid creating two separate CDs for PC and Mac? As only they provide a true Macintosh filesystem, only hybrid CDs will preserve file creator type information, and thus only they will allow the Macintosh user to open files by double-clicking. Macintosh volumes also allow fine control over the appearance of the volume when it is opened (icons, layout, visibility), allowing a professional-looking CD for distribution. Finally, only on a Mac volume can a file be made to auto-open upon CD-insertion. Note: in Roxio Toast, the true hybrid format is called custom hybrid and is hidden under Other. By default, Toast will create data-only "hybrid" CDs, which are single-volume CDs just like ISO9660 CDs, but with long filename support.

Further Considerations:

Naming: When you place hyperlinked documents (e.g. webpages or PDF files) on your cross-platform CDs, make sure that all the hyperlinks reference the documents by their short 8.3 DOS filename, which is the only name visible on the Macintosh. To avoid problems, it is recommended to use such short filenames from the beginning. Note that in some versions of Windows, renaming a document like "mylongfile.html" to a short name with the same prefix, here "mylongfi.htm" does not change the underlying DOS filename (usually "mylong~1.htm") — you need to actually change the first six letters to cause the DOS name to change.
Also make sure to only use relative links, not absolute file:///-type links, as always for CD or web distribution.
Sharing: All data files such as images, Quicktime movies, webpages, Flash animations, or Acrobat PDF documents can be shared between the Mac and ISO (PC) volume, so only executables and files with platform-specific information (e.g. a ReadMe file) need to be duplicated on the CD. This helps saving space. In particular, you should keep this in mind when designing your media, so you create cross-platform compatible movies and sounds, e.g. RealVideo, RealAudio, or flattened Quicktime movies.

How is it done?

  1. On a PC, create all the files you will need for the PC platform, place them in a folder on a portable device, and test all hyperlinks on a different system. This folder will become the root directory for the CD's ISO9660 volume.
  2. It is recommended to place all the data files that will be shared between Mac and PC in a separate subfolder, named e.g. "data" or "shared".
  3. On the Mac, prepare a folder that holds the Mac executables and platform-specific files. You need to include a copy of the "shared" folder here. Test all links for this platform as well.
  4. In the Toast application, create a temporary volume just big enough to hold the Mac-specific files for your CD, plus a few kilobytes. It will be auto-mounted to the desktop.
  5. Copy all the Mac-only files and the "shared" folder into it via the Finder. Open the volume's window to the desired size and arrange files in it as desired (leave window open). Typically, a ReadMe file and the auto-launch file should be the only items shown.
  6. In Toast, choose to create a custom hybrid CD from the Other menu. The task window will now show a button for the ISO volume and one for the Mac volume. Click the Mac button.
  7. You will be prompted to select a Mac filesystem. Choices will include all your hard drives or drive partitions, any mounted CDs or CD images, and the temporary volume you made in step 4. Pick the temporary volume.
  8. Check the "AutoStart" box and pick the auto-launch file from this volume. The auto-launch file needs to be visible in the Mac volume (not hidden), and needs to be a Mac application or have Mac file-creator info set. It should not be in the "shared" folder, but at the top level of the volume.
  9. Now click the ISO button. From the Finder, drag the contents of the folder you made in step 1 into the ISO window that Toast opened for you. This is similar to CDcreator, where you drag the files you want recorded on the CD from the Explorer view into the CD view. Delete the "shared" folder here, then drag the "shared" folder from the Mac volume into this ISO window. This will cause Toast to link to the files, rather than creating copies of them (this is indicated by the blue filenames). Close the ISO volume's window.
  10. You are now ready to burn your CD. Afterwards the temporary volume can be deleted, and Toast will offer to do so when you quit it. If you leave it and want to delete it later, don't just drag the mounted volume from the desktop to the trash, as the volume's image file is still sitting on your hard drive and wasting lots of space, so delete that as well.