16 May 2000
CD-Burning for the Masses
Once upon a time, "burning"
a CD (recording your own cd using a cd-writer) was a job for the stubborn and wealthy.
The two professional CD-burning products for OS/2, Unite CD Maker for OS/2 and RSJ
CD-Writer, cost a significant amount of money.|
Today, Unite has disappeared (both
as a product and as a company), and very few (if any) CD writers currently shipping
include 16-bit Windows 3.x software anymore, (win16 software thanks to OS/2's VASPI
drivers and win-os2, was the only escape-route to expensive native cd-r applications).
You might think RSJ is the only actively developed cd-r solution for OS/2 left...
And some of you might think this proves what has been appearing in the windows-centric
press lately: OS/2 is dead, dying, and/or being 'suffocated' by IBM". BZZZZZT!!!
Wrong, my fellow readers...
Over the last few years, another
major event (some people, me included, like to call it a revolution) was brewing
in the dark: Open-Source software development. And open-source software is NOT just
for Linux, it means real software for any O/S that people care to port apps to...
and yes, that includes OS/2.
So open your mind, relax and enjoy
our walk while we explore free (both open source and freeware) cd-r software alternatives
to the major commercial CD-R application, RSJ CD Writer. (Which is a very good and
more complete application, well worth its price. I must say this so RSJ users don't
get mad at me ;-).
Open Source and Freeware CD-Burning
Type: text-mode cd-writing application. License: Open Source Software.
Esperanto failed as an universal
language, but CDRecord so far has succeeded in becoming the worldwide standard when
it comes to cross-platform cd-writing under any non-windows O/S. It started as a
small project out of the frustration of self-proclaimed unix-kernel hacker Joerg
Schilling in Berlin, Germany, who one day suddenly woke up wanting to use his beloved
unix system for the naive task of recording CDs.
He succeeded at his baby unix project,
and his project suddenly got way out of hand, as with the help of people around
the world, CDRecord was ported to about every operating system out there. Today,
CDRecord is available for the following operating systems:
* Commercial UNIX flavors (Sun, SGI,
HP, SCO, and IBM's Aix),
* Free UNIX's (NetBSD/FreeBSD/OpenBSD,
* "Others": OS/2 (thanks
to the wonderful job of Chris Wohlgemuth),
NeXtStep, Apple Rhapsody, MacOS X, BeOS, VMS (!), Windows (9x/NT/2000)
So pay attention. If you learn how
to use CD-Record, consider it an investment in your future. Odds are you will be
able to continue applying this knowledge, no matter what O/S you find yourself using
down the line in the next century.
You will need several software pieces,
from different authors, to get a working CDRecord/2 installation. But don't worry,
I'll walk along with you and hold your hand. Have no fear. :-)
Step #1: Grab the latest OS/2 release
from the Official
CDRecord/2 homepage. (As of this writing, it's version 1.8.1).
Step #2: Download and install the
extra items needed by CDRecord/2. Basically, it needs the emx runtime libraries
a little "helper" device driver which allows many OS/2 applications (like
CDRecord and SANE) to have an easier access to the SCSI bus. You will also need
is used to change the priority of cdrecord during the burning process, so you don't
get a coaster while burning Cds and playing Quake/2 :-).
In a nutshell, you should have the
following drivers loaded and working in your system, as listed in config.sys:
With these changes and files in place,
and cdrecord/2 unzipped into its own directory, you are almost ready to go.
Step #3: Reboot so the changes take
Step #4: Download the (rather ancient)
shareware VASPI drivers from hobbes. You do NOT need to install this package. Extract
only two files: "aspi.exe" and "aspi2.exe". Place them in your
path. These files are extremely useful in debugging your installation and scsi setup,
and will help you maintain your sanity and hair, avoid configuration nightmares
and check the health of your SCSI Bus even in situations where cdrecord.exe can't
Grab it from here: ftp://hobbes.nmsu.edu/pub/os2/system/drivers/vaspi.zip
Now open an OS/2 command prompt and
just type "aspi2". You'll get a screen that looks like this:
You should see your CD-Writer (along
with any other SCSI devices) listed by "aspi.exe". The key numbers here
(in this example) that you have to keep in mind are the device's ADAPTER#, Target#,
and LUN #. In this case, my Smart & Friendly CD-R 4012 CD-Writer is identified
on the scsi bus as "1:0:0". Write down the corresponding scsi device number
(again, "1:0:0" in this example) for the cd-writer in your system. You
will need it later when configuring and using the program.
Keep in mind that CDRecord is a command-line
utility. Prompt-geeks (like me) will love it. GUI lovers will hate both the program
and also this article, until they discover that there are front-ends. (See? that's
what happens when you stop reading an OS/2 eZine article in the middle, so please
Now go to the programs' directory,
and from a command-line session run it without any parameters/arguments. This is
the time when you get a LONG list of parameters, faint, then recover and race to
the nearest store or web site to purchase a copy of RSJ CD Writer. <Evil Grin>
Command-line-phobic users quickly rush
to the next section, where I'll cover GUI front ends for CD-Record/2.
If you prefer to use the programs'
text-mode interface, first you need to understand that there are two main components
of CD Record:
1. R.T.F.M. (Read the FRIENDLY manual
2. You can save a lot of time by
creating .cmd files for jobs you need to execute frequently.
Here are two example .cmd files.
This records a given directory tree
directly to cd, called "on-the-fly" burning (no CD image created, no extra
hard disk space used). Please note that you must replace the "dev=1,0"
parameter with your CD Writer's particular device ID# on your system's SCSI chain
(remember when you ran "scsi2.exe" before, and wrote down that number?
This example creates a cd image file
on your hard disk for later burning, from the contents of a specified directory:
You will find several .cmd files
for common tasks, as part of the latest CDRecord/2 zip file, under the /cdcopy directory.
This is another cd-writing "engine"
(text-mode application). This one writes audio and data Cds in "Disc At Once"
mode, which means the CD Writer's laser is not turned off between tracks. This allows
the creation of mixed-mode Cds, VideoCDs, and let's you create multi-track non-standard
CDs (like Audio Cds with 0-seconds gap between tracks).
It's syntax is very similar to cdrecord.exe.
This was also ported to OS/2 by Chris
Wohlgemuth of CDRecord/2 fame.
Download CDR-DAO from http://www.geocities.com/SiliconValley/Sector/5785/
Graphical front-ends for CD-Record/2
Audio/Data CD Creator
The hard-working man behind the OS/2
CDRecord port also released the first graphical front-end for CDRecord. It was originally
called "Audio-CD-Creator", and despite its original name, it has been
extended to allows recording of BOTH data and audio Cds, among other nice tricks
like mp3-to-audio conversion and "disc at once" (DAO) recording mode,
with the additional possibility of using CDRDao instead of cdrecord/2 as the recording
"engine" (or back-end). I recommend you download this program from the
CDRecord/2 official web page, as it is updated quite often.
Unlike CDRecord/2, the Audio CD Creator
front-end has a nice PM setup program, which is a welcome change.
However, you will have to
manually enter the program path to cdrecord.exe, mkisofs.exe, and several other
optional external utilites, to do digital audio extraction, mp3 decoding (to allow
burning of audio Cds using mp3 files as the source), and to use DAO mode (requires
a separate text-mode cd-r application, cdr-dao.exe, described later on).
There is one nice "Scan SCSI
Bus" button, which automatically fires up cdrecord.exe to do a scsi bus scan,
which finds all units on the system, then displays each unit available in a drop-down
list box (suggestion to the developer: it would be nice if the program could auto-discriminate
between cd-rom readers and cd-r / cd-rw units).
The bad news is that you still have
to do some work during the setup process (basically entering/selecting application
paths and selecting the cd-writer unit). Since all commercial OS/2 cd-r apps (Unite
and RSJ) had no problem in automatically recognizing cd-writers (by querying the
unit's ID-string and comparing it against a database of 'known' units), I think
there is a lot of room for more improvement and automation in this installation
Finally, the install program creates
a program folder, and registers new WorkPlace Shell classes for two data types:
the "Audio CD" and the "Data CD" object types (Unite CD Maker
users will recognize where this comes from). This WPS integration allows users to
effortlessly create both audio Cds (dragging wav or mp3 files to an "audio
cd" object, previously created from the Audio-CD template) and data Cds (doing
the same, but dragging any assorted files or folders to the "Data CD"
objects, or template). **Beware**: unlike in Unite CD Maker's behavior of converting
all drop operations to shadows, when you drag real files here, you are moving the
real files to this data-cd or audio-cd folder!. Use shadows in all drag&drop
operations, whenever possible.
One simple yet effective "CDR-Tools"
program controls common tasks like closing a CD's sessions (strangely labeled "fix"),
erasing a rewritable disc's contents (on CD-RW drives), sending a reset command
to the unit, and loading-unloading Cds.
The "CD Creator Settings"
program gives a good, clean look of all the configuration options (not a small job
considering this front-end actually works by calling several different text-mode
utilities that are launched to do their work in the background). I still wish there
were more "brains" into the setup and installation programs.
For example, the user has to manually
select the "cd writer or generic driver" in the "CDR-DAO" notebook page, with absolutely no hint
about what the right choice might be, or the similarities to the detected devices
on the scsi bus. I wish all these decision could be automated, since while I can
figure out what goes where, I'm not sure the average user can find out everything
on his own.
The good news is that once you have
everything setup correctly, the program works very well. The only feature I didn't
test on my system was creating audio Cds from MP3 files (believe it or not, due
to the lack of quality mp3 files that deserved to be burned to cd :-).
Keep in mind that these are just
front-ends, so unless these programs supply the wrong command-line parameters to
the text-mode executables running in the background, operation should be the same
as if you had manually typed "cdrecord.exe ...-param1 \param2 etc." from
os/2's c:\ prompt.
Open-Source has been often criticized
for "being just promises, not useable products". This is not the case.
This program works perfectly (both the front-end and cd-record have source code
available for anyone to fix or improve) and have been enhanced in the process of
being ported to OS/2, specially due to the "WPS class" implementation.
I'm sure that once the author spends
more time on the installation program, making the initial setup a bit more user
friendly (just automating most decisions that are now manual would cut it), this
product could seriously challenge RSJ CD Writer, until then, it can serve as the
de-facto "poor man's RSJ", and you can't beat the price!.
A much simpler, less ambitious front-end
for use with CDRecord/2, made of only 3 files: a small .exe application (the program
itself, no installer), an .ini file where its configuration is stored, and the docs
as a plain-ascii ".doc" file. This program will appeal most to those who
prefer simplicity and to get the job done, quickly.
In a single program window, you have
everything you need and can reach all functions and settings. While Audio-Data CD
Creator makes use of the drag&drop a la WPS, CDWriter/2 follows the classic
"Norton Commander" interface style (or File Manager, if you wish).
Basically you move through your hard
disk layout, select files, and add them to a list of "selected" files
(the ones going to be burned to CD). Once you have your "list" of files
completed, you can save it to disk (to continue working on it later), or start the
cd recording process. While it can be used for data Cds, I've found this program
more handy and suited to CD Audio recording (from .wav files, as this front-end
does not support on-the-fly mp3 decoding like Audio/Data CD Creator).
A pair of handy "up" and
"down" arrow buttons allow you to move a file's position on the assembled
track list, which is very useful for last-second changes just before hitting the
Configuration of the cd-writer parameters
is done manually, where you have to type in the SCSI ID# of your cd burner on a
traditional entry field box. And finally, the "save command file" option
creates a complete .cmd (batch) file, instead of calling cdrecord.exe directly.
This way, you can run the .cmd file later from an os/2 command line, or inspect
the .cmd file with your favorite editor, to see what parameters are passed to the
If you feel overwhelmed by the many
options and settings in Audio/Data CD Creator, or just prefer "file tagging"
over "drag& drop", CDWriter/2 might be the right CDRecord front-end
PMCDRec (Markus Hannig, firstname.lastname@example.org,
If we were discussing commercial
software, this cdrecord/2 front-end could easily have been called "CDWriter/2
Professional ", "CDWriter/2 2000" or, coming from certain company
in Redmond: "CDWriter Professional - Millenium Edition, OS Release 2 (OSR.2)"
In a nutshell, this front-end is
CDWriter/2, on steroids. It also uses a "notebook" interface, but CDWriter's
fixed "single-tab, 3-pane view" has been replaced by much nicer, perfectly
designed file selection screens for each type of cd that you might want to burn
(from a cd image already on your hard disk, a Data CD from individual files, or
an Audio CD from .wav files). Also, a simple rexx script creates a program folder.
While the process for burning a cd
is the same as in CDWriter/2 (you select files, add them to a files/tracks list,
and when you are happy with the layout, press the "Burn CD" button), I
was amazed to discover certain subtle but very useful indicators, which show the
amount of dedication and attention to details that the author has put on this program.
For example, when creating an Audio CD, each time you add .wav file to the tracks
list, the tracks' playing time, and the CD's total playing time is displayed. There
is even a "play" button, which plays the selected WAV file so you can
check if it's the right track, before adding it to the CD-Audio tracks list.
To complete this superb user interface
design (and at the risk of start sounding like a sports car review ;-), the "Setup"
allows easy selection of the CD filesystem
(ISO9660, 32-char long names, and Joliet) and a "tools" notebook tab provides
the same CD-RW options as CD Audio/Data Creator's "CD-R Tools" program,
but integrated into the same unique interface.
The "Settings", "Burn
CD" and "Create image" buttons are always reacheable, even when you
switch views between "Audio", "Data" or "Images",
as does the "test" check-box, which allows you to test the recording process
without wasting or risking blank media.
Oh, and command-line junkies must
remember that you can call both cdrecord.exe and cdrdao.exe from the C: prompt for
the surprise and amusement of your friends!. ;-)
Front-end download locations:
Audio/Data CD Creator:
Cassia is a 25-yr. old, self-confessed computer-geek. He's been using the many
different flavors of 32bit-OS/2 released since v2.0. He lives in Buenos Aires, Argentina,
with his dog and surrounded by computer parts. Fernando is currently working on
several web projects, and chasing the local telco monster to get some form of broadband
connection, before hell freezes over.