SourceFiles.org - Use the Source, Luke
Home | Register | News | Forums | Guide | MyLinks | Bookmark

Sponsored Links

Latest News
  General News
  Reviews
  Press Releases
  Software
  Hardware
  Security
  Tutorials
  Off Topic


Back to files

# Phaser 2.5
# Copyright (C) 2001-2002 Christopher R. Curzio #
# This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version.
#
# This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. #
# You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

Phaser was my first large programming project, written from scratch in Perl. Please bear in mind that while the code itself does work, it is likely to be a bit inefficient. This is constantly being improved in newer releases. Phaser was written to make CD burning under Linux a lot easier when done from the console. The program itself asks a series of questions, and uses the answers configure devices and settings.

Phaser uses the cdrecord package by Jörg Schilling to do the real work.

System Requirements

  • Pentium 166 or better (for reliable burning)
  • 16MB RAM
  • CD Burner (Must be supported by CDRecord! Check here.)
  • CD-ROM
  • Linux 2.2.x or 2.4.x
  • Perl
  • cdrecord

If you're going to be copying CDs, you'll need about 700MB of free hard disk space.

Configuration

If you have an IDE system, there are some configuration changes you will need to make to your system if you want to burn CDs under Linux. First, you will need to enable SCSI emulation support. This allows your IDE devices to be addressed as SCSI devices. When recompiling your kernel, be sure to remove IDE CD-ROM support and add SCSI Emulation support, SCSI CD-ROM support, and SCSI generic support. Build your kernel per manufacturer's instructions, and reboot.

Phaser has still not been tested on SCSI systems!! That being said, it should still work properly.

Once you have SCSI emulation working (or if you have a SCSI system), we're ready to go. Put a blank CD-R in your burner, a source CD in the CD-ROM, and start up Phaser.

Phaser will automatically look for a configuration file in multiple locations, or you can specify one to use. Upon starting Phaser, it will look for a configuration file in the following forms:

  • /etc/phaser.conf
  • ~/.phaser
  • ./phaser.conf

If it cannot find any of the above configuration files (or if it cannot read them), Phaser will continue without predefined settings.

You may also specify a config file to use by running Phaser with the -c flag.

./phaser -c /path/to/configuration.file

NOTE: AutoBurn is no longer a feature of Phaser. I figured what AutoBurn can accomplish can be done pretty much identically with a simple shell script.

NOTE: The phaser.conf files from 1.x are not compatible with phaser.conf for 2.0 and up. Phaser 2.0 will notice this, and ask you if you wish to convert your 1.x phaser.conf to the new format.

If you select "y", Phaser will rewrite your configuration file to the new format, while keeping your existing settings. Once the conversion is complete, you can have Phaser import these settings for use in the session. When this process is finished, you will be at the main menu.

Main Menu

The menu selections are fairly straightforward. Option 1 allows you to create an ISO image from a specified directory. Option 2 will burn a CD from a specified ISO image. Option 3 will let you directly copy a CD from the reader to the writer. Option 4 blanks a CD-RW disc. And finally, Option 5 cleans up any stray files created, and exits Phaser.

Creating an ISO image

When Phaser creates an ISO image, it will ask you several questions. First, it asks for the "Application ID", which is a brief description of what is being burned to the disc. The Application ID can be up to 128 characters. Next, it will ask for the Volume ID.

After you've defined the relevant IDs, Phaser will prompt you for the specific extensions you wish to use. Joliet records are used so that Microsoft Windows systems can properly read the CD. RockRidge extensions allows the resulting CD to be mounted as an ISO9660 filesystem. If you select RockRidge extensions, you are asked whether you want to include backward compatibility for non-RockRidge systems. This places a "TRANS.TBL" file in each directory. Phaser then asks for the path you want to copy to the ISO, and finally the filename you want to give it. If there are any problems with the path (i.e.: it doesn't exist, isn't a directory, or isn't readable), Phaser will let you know.

If the settings are correct, Phaser will create the ISO image, and save it to the current directory.

Burning a CD from an ISO image

When you choose to burn an ISO image, Phaser will review the settings it found in the configuration file and automatically import those settings. If you don't have a configuration file, Phaser will simply prompt you for the information it needs. First it will ask for the CD writer device. If you enter "p", you will get a list of all devices available on the SCSI bus. Phaser will also review the available devices, and make its best guess as to which device it thinks might be a writer.

If you've created an ISO image within the same session, Phaser will ask you if you want to burn that particular image.

Copying a CD

For maximum reliability, Phaser does not support direct disc-to-disc copying. Instead, it first creates an image of the source disc, and then burns that image to CD. This process, while slower, is much more stable than a direct copy. (Direct copying might be an option in a future release of Phaser. I don't know yet.)

Once you have selected the option to copy a CD, Phaser will again prompt you to select your reader and writer. (Or it will import them from your configuration file.) It will also prompt you for the same extension options discussed earlier, as well as speed/ejection options.

While earlier versions of Phaser didn't support a single device for reading and writing, Phaser 2.0 and above will permit this. If the same device is used for the source and destination, there will simply be a point at which Phaser will ask you to swap discs and hit enter.

Blanking a CD-RW

Finally, Phaser can blank a CD-RW disc using two different modes: "Complete" and "Fast". "Complete" mode will blank the entire disc, and will probably take awhile. "Fast" mode will only blank out the PMA, the TOC, and the pregap, but is much faster. "Complete" mode is recommended.

Phaser will also ask if you want to override any errors that pop up. This will try some tricks on a CD-RW disc that might otherwise have problems blanking.

Recommended Links

Phaser Page:
http://www.accipiter.org/projects/phaser.html

CDRecord Page:
http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdrecord.html

CDRecord Supported CD Writers:
http://www.fokus.gmd.de/research/cc/glone/employees/joerg.schilling/private/cdwriters-1.9.html

E-Mail:
accipiter@accipiter.org


Sponsored Links

Discussion Groups
  Beginners
  Distributions
  Networking / Security
  Software
  PDAs

About | FAQ | Privacy | Awards | Contact
Comments to the webmaster are welcome.
Copyright 2006 Sourcefiles.org All rights reserved.