Modifications for safe use by non-root users done by Till Kamppeter, 03.10.98 (till.kamppeter@theo.phy.uni-bayreuth.de).
If you want to report a bug please read this section first!!!
Note: Updated sections (since version 0.96d) of this README are displayed in red color!
Note: Sections concerning only the nonroot-mode of X-CD-Roast 0.96e
are displayed in green color. Please read "README.nonroot" for instructions
how to setup and activate the nonroot-mode.
I am not responsible for any damage to your hardware or software caused by this program. The use of the program can be dangerous. If you don't know what you are doing, don't do it. I am also not responsible for any misuse of the program by creating copies of CDs without permission.
X-CD-Roast is a full X based CD-Writer-Program, and it is the successor of the cdwtools-0.93. It is a frontend for some CD related programs like cdrecord-1.6.1 and mkisofs-1.12b4. With some simple mouse-clicks you can copy or create your own CDs, without long study of any commandline-parameters.
Feature-list:
What is new with Version 0.96:
Stuff NOT working yet:
This program is a mixture of C and Tcl-programs. To compile it you need the Tcl, Tk and Tix-Libraries. Refer to the file "README.Compile" for the compilation-HowTo. You can also download X-CD-Roast as precompiled RPM. But please note that this is not running on some machines. If you have any problems recompile X-CD-Roast! In 99% of all cases all problems are gone then!
You need:
Note: You must include SCSI-Disk, CD-Rom and Generic-Support in the kernel! For use of ATAPI-Devices you also have to enable the ATAPI SCSI-Emulation.
Kernel: ftp://ftp.kernel.org/pub/linux/kernel/v2.0 ftp://ftp.leo.org/pub/comp/os/Linux/Linus/v2.0
To use this program you need the following hardware:
Instructions for nonroot-mode:
Still logged in as root type xcdroast -nonroot to start the program for the
first time
(This assumes that /usr/local/bin is in your search-path -
or whereever you installed X-CD-Roast). Then you should see a message that no
configuration-file was found.
Click on Ok to continue. Next read the disclaimer-warning and
click on Setup to do the initial setup.
X-CD-Roast Commandline-switches:
-scanscsi number:
Defines for how much SCSI-Devices X-CD-Roast should scan. If set to 0, then the SCSI-Bus won't be scanned at all. Maximum value is 64, but then you have to take care yourself, that all Generic-SCSI-Devices exist in the i /dev-directory. Default value is 16.-scanide number:
Defines for how much IDE-Devices X-CD-Roast should scan. If set to 0 then the IDE-Bus won't be scanned at all. Maximum value is 16, default is 8.-configdir directory:
Set the directory where X-CD-Roast saves all configuration-data. Default is ~/.xcdroast. This option can only be used by the super user in nonroot-mode.-libdir directory:
This is the directory where X-CD-Roast searches for its add-on utilities and library-files. Default is /usr/local/lib/xcdroast-0.96c. This option can only be used by the super user in nonroot-mode.-display host:
Display the X-CD-Roast-window on the X11-display of host.-nonroot:
Note: This is equivalent with an "export DISPLAY=host" on the shell.
Activate the "nonroot"-mode. This way only "root" can change any X-CD-Roast options that may be a security-problem. Every normal user can then use X- CD-Roast without any risk of causing harm to the system. (See "README.nonroot" for detailed info)-usecdparanoia:
Use a preinstalled CDParanoia instead of the built-in readcdda. CDParanoia is able to read audio-data from lot more devices than readcdda - therefore when you have problems to read audio-CDs try this option. (See "README.cdparanoia" for detailed info)-debug level:
Prints some debug-output to the console. The larger the level, the more output will be generated. (e.g. -debug 2)
You must be user "root" to run this program. Alternatively you can do a "chown root /usr/local/bin/xcdroast" and "chmod +s /usr/local/bin /xcdroast" as user root. Now all users can run xcdroast - Every user will get an own config-file, but can also erase all your disks when picking a wrong image-partition. On some systems you can't run mount, umount and some other system-programs not as non-root. So when you have problems with the automatic mount-code, its because you are not root. SO BE CAREFULLY!
The other possibility is to use the nonroot-mode. In this mode only the super-user can change security-relevant options and therefore no user can damage the system. In nonroot-mode you also have to do the chown and chmod as described in the paragraph above.
Type xcdroast to start the program (This assumes that /usr/local/bin
is in your search-path - or whereever X-CD-Roast is installed)
Then you should see a message that no configuration-file was found.
Click on Ok to continue. Next read the disclaimer-warning and
click on Setup.
You can also see if X-CD-Roast found all your hardware with the SCSI/IDE-Info
-Button.
Note 1: If you can't start xcdroast, it is perhaps not in your path. Go into the directory where xcdroast is installed and type "./xcdroast" in this case.
Note 2: If instead of a window only an error message appears that root has not configured the program yet, a super user has to configure it before non-root users can start it.
Note 3: If you turn off the disclaimer-display by pressing the "Don't show again"-Button, you have to save your configuration in the Setup-Menu to make this permanent.
In this screen all SCSI- (up to 64) and IDE-Devices (up to 8) are displayed. For SCSI you see an icon which expresses the device-type, its vendor and model-id and the revision. In small print you see the SCSI-host, channel, id and lun. For IDE you see also an icon, its id and the device (e.g. /dev/hda) it is assigned to.
If you have more than 16 SCSI-Devices you can use the scrollbar to see more.
In the setup menu you specify all your hardware and choose the behaviour of X-CD-Roast in some cases, all other program modules will use the devices and settings you set here.
Here you set which space on your harddisks X-CD-Roast may use to store
CD-Images.
You can enter two different partitions (Partition 1 and Partition 2) which
will totaly belong to X-CD-Roast. You can't use the partitions to store
any data permanently because X-CD-Roast will overwrite them if requested.
Note: You have have to set one of the three blocks, but you are free
to use all.
If you don't have a own partition (which should be about 800 MB in size) dedicated only for X-CD-Roast available, you can enter a Image-Data-Path. X-CD-Roast will save then all CD-Images and Audio-Tracks to that directory, not disturbing other data that may be stored there. This is useful when you have lot of space on your HD left, but not in a own partition. You also can mount your DOS-Partition and let X-CD-Roast store its images there.
In each block is a "Default"-Button. Here you can choose which Disk-Space X-CD-Roast will use as default. (You can change "on-the-fly" the partition or directory later - but here you set what is enabled first).
None
There are four options:
There are three options:
There are three options:
Here you set the default values for various different settings X-CD-Roast may need later. All these values can changed later in there own context, but here you set their startup values.
After you have finished set up, press Save to create a configuration file xcdroast.conf. Please note that your hardware settings, partitions and mount points are also saved in that file.
At each startup the settings in the file are compared to your current system settings and, if there are mismatches, you are forced to enter setup again.
Note: If you have been forced to enter setup, you can't access any of X-CD-Roast functions until you completed successfully the setup.
The setup of your devices is diplayed at the top of the menu. To change any of the values, you must enter the setup menu again. But you can change your Image-Device on-the-fly when you set more than one Image-Partiton/Path in the Setup-Menu. This way you can store more than one Image at the same time.
You see a window titled CD-Information which identifies the CD in the Data-Read device. The window Image-Information gives you information about the contents of the image partition.
Hint: When you double-click on an image-filename in the image-information window or a data-track in the cd-information-window, you can look what files are stored in that image.
The button Eject CD will try to eject the CD in the Data-Read-Device.
The button Update Information-Windows updates the two information windows. You should press this button after inserting a new CD.
Copy a Data-CD in four steps:
First read the entire contents of the CD to a HD-Partition. Then optionally verify the data by comparing the partition with the CD. Next write the CD-image from the HD to a CD-Recordable. The last step is the verification of burned CD-R with the image on the HD.
Here, you can choose whether you want to read the image to a file or raw to the partition. I recommended a read to the partition because this is a little bit faster. If you selected an "Image-Path" to save the image, you can only read to a file.
If you insert a non-ISO9660 CD (like Mac or Sun-CDs) you have to read the image to file because this is only way to determine the image size when writing.
Note: If you read the image to a file, you can enter a filename. Always make sure you have the extention ".raw". It is not possible to write the file outside the "Image-Path", e. g. on the system disk, so accidental deletion of system data, or overfilling the system disk is impossible..
Note: You should not need to change any of the settings displayed in the verify-menu. They are correctly set when you enter the menu after reading the image.
You can specify the type of your CD-R and some write options:
Quick Copy-CD allows copying of a pure ISO9660-Data-CD without the need of creating an image on HD. You need a seperate CD-ROM device in addition to your writer to utilize this feature. In this mode, data is read off the CD-ROM device and written immediately to the writer. Please note that your read device should be faster than your writer (alternatively, decrease write speed) - I recommend that the read device is twice as fast as the writer, but I successfully burned CDs with 4.4x read speed and writing with 4x speed - and that any errors (e.g., read errors) result in a wasted CR-R!
I strongly recommend experimenting with this option only with simulation write enabled. The write options have been already explained in the write-image section of this README file.USE THIS FEATURE WITH CAUTION !!!!!
Some notes about Audio-CDs:
Audio CDs are divided into tracks. Each track usually contains a song and, between tracks, there is a two-second pause. Some CDs, however, do not have these two seconds pauses between tracks, which makes it tricky to copy them. This software writes audio CDs in the track-at-once-mode, which means that the hardware (the writer) itself ALWAYS creates the two-second pause. There is NO way to get around this at the moment. So, if you want to copy a CD without the two-second pause, you have to read in the whole CD as ONE big track (see merging below). It is also not possible to set or read CD-indexes at present. This will change when cdrecord allows this.
Copying audio or mixed-mode is very similar to copying data CDs. First read in the tracks (can be data or audio). Next verify the tracks. Verification by comparison is only possible with data tracks. To verify audio tracks, you must listen to them (soundcard required). Then you can write the CD. The last step is verification of the data track written on CD.
When you press on the Select/Show Tracks to Read-Button a new window will pop up where you can choose or review which tracks will be read when you press on the Start Read Tracks-Button. You can also select a Data-Track (e.g. when using a Mixed-Mode-CD) and it will also be read by your Audio-Read-CD-Rom-Device, NOT the Data- Read-CD-Rom-Device. (This means you dont have to switch disks when you have choosen different read-devices in the setup).
Options:
Explaination: Audio-Tracks have a beginning and an end.
An offset is the relative time to the beginning or end.
If you have a start offset of 1 sec. then the audio track will be
recorded beginning 1 sec. after its real start. Negative values go
back in time, and positive values go forward.
Example: If you have a track with 2 minutes and you want record only 30 sec. beginning after the first minute, you would enter a start offset of 60 sec. and an end offset of -30 sec.
Global Offsets: Global Offsets means that all tracks are assigned the same offset.
Skip last 2 sec. of track: Most audio CDs have a 2 sec. pause between the tracks. The CD-Writer automatically creates these 2 sec. pauses when writing audio tracks. If you skip the 2 sec. pause at recording time, you get the 2 sec. back when writing the track so the track retains its original length. Nevertheless, I recommend listening to the track before burning the CD to make sure to complete song has been recorded.
Listen to audio while recording: When you read digital audio-tracks to disk you can listen to them at the same time. Note: If you enable this feature all audio-tracks will be read with single-speed. And you need to enable your soundcard in the "Misc.-Setup".
Time-Offset Units: Here you choose whether you want the offsets displayed in seconds or in frames (1/75 sec.).
In the main-window you select which tracks you want to read. There you can enter a track title for audio tracks (for your information only). The columns Preemphasis and Copy permitted show this information, you can't change them.
The playbuttons pre-play the audio-track exactly like they will be recorded. The play quality may be not very good. This depends on your hardware. You need a soundcard for this feature.
Merging: If you want record several tracks into one track, e.g., to get around the automatic 2 sec. pause between tracks, you can merge tracks. Just select several tracks in order and click on "Merge Tracks". You will see a black arc connecting these tracks. Offsets between connected tracks are ignored. A merged Track will contain more than one track of the original-CD, but will write as a single track (that is quite long) to a CD-R. The resulting CD-R will then have less tracks than the original CD, but the same play- lenght. You can't jump to the tracks you merged in, with your Audio-CD-Player track- selector.
The play-audio window should be self-explanatory. Note that you can jump around in the track by left-clicking somewhere in the process display.
Total length shows the total length of all tracks on the HD.
Tracks to write on CD shows how many tracks are scheduled to write. Total CD-Size shows how long the resulting CD will be. The 2 sec. pause between each track is already included.
The Additional Options-Box has already been explained in the "Write Image"-Section, except the new Option "Swap Audio". "Swap Audio" will swap the byte-order of audio-tracks to write. Usually you won't need this option, but if you end up with an Audio-CD containing only static noise, you can fix that with that option. (And please drop me a note.) Remember, don`t touch this option until you really know you need it! Its not the same as the -swab option you might have needed when you have run cdrecord from command-line. X-CD-Roast tries to do all necessary byte-order convertions automatically. There is also a new option "Fix Wav-Files". This option pads wav-files you selected to burn to the correct length. Its save to enable this option in case you are not sure.
After you pressed on Select/Show Tracks to Write you can choose
which tracks you want to burn in which order to CD.
The window is tiled in two parts. The upper half shows all the tracks
that are scheduled to write in their correct order. The lower half
shows all available tracks found on HD, that are NOT yet scheduled
to write.
Click on the Order-Button on an available track and it will show
a number. The next track you click on will have higher number and so on.
When you click on Refresh all selected tracks will be moved to the
upper half in the order you selected them. With the Insert selected
Tracks-Combobox you can specify exactly where the tracks from the lower
half will be included in the upper half.
To deselect Tracks from writing click on its Order-Button so that the displayed number vanishes and click on Refresh again to see the new list.
In the Headline of this window you can choose Save Track-list which creates a textfile containing your actual track-selection.
If you are pleased with your selection you leave the window with Done and now you can click on Start Write Tracks.
Master a CD means that you setup a directory tree containing up to 650 MB of data that is to be burned on a CD. Because the filesystem on a CD is completely different from a filesystem on the harddrive, we must convert the data to the CD-ROM format ISO9660. This takes quite some time.
Exclude paths: Here you can enter some paths that will NOT be included in the CD-Image. Please note that you have to enter the full path to get this working.
Exclude globs: Here you can enter simple regular-expressions to remove some files from the CD-Image. (e.g. "*.o" will erase all files that end with ".o" from the directory-tree). The globs will be matched against all files and directories in the tree.
After you set all, the Preview CD-Contents-Button display the
contents of the root-directory of the resulting CD. Note that this is
only a simulated output and may not 100% match the real burned CD.
With the Calculate Size-Button X-CD-Roast tries to calculate
the exact size of the resulting Image.
Note: This also takes excluded paths and globs into account.
You can choose:
With the Save as default-Button you save your favourite setting. It will be automatically reloaded at the next start of X-CD-Roast.
Read ID's from CD reads all values from a CD in the Data-Read-Device.
Clear Entries clears all entries.
With the Save as default-Button you save your favourite setting. It will be automatically reloaded at the next start of X-CD-Roast.
With the Calculate Size button you can find out the exact size of the image before you master it.
Please note, that the given size also depends on the ISO-Settings like Rock-Rigde and follow Sym-Links. So set the image-type before you calculate the size, when you want a precise value.
After mastering you can see into your image with the Review Image-Contents-Button to check whether the correct files have been mastered. The way filenames are displayed can differ a little on other systems.
Please consider that the ISO9660 standard does not allow more than 8 directory levels. If you have more than that, a directory "RR_MOVED" will be created in the root of your CD containing all the files that are beyond the eighth directory level. You can get around this limitation with the "Do not use deep dir. relocation"-Setting of the Image-Type. (Tested with Linux/Win95/NT)
If you enabled Rock-Ridge on the CD, then this directory will be invisible mapped back at the correct position when you mount the CD on Rock-Ridge capable systems (Unix).
When you see a directory "rr_moved" in the Image-Content preview window and Rock-Ridge was not enabled, you had more than 8 directory levels.
For full Windows 95/NT compatiblity you should enable Rock-Rigde and Joliet at the same time. This way both the Linux and Windows systems can use the CD as best as possible.
READ THIS - It will help!
I was able to write a CD successfully with 4x-speed, on a Yahama Writer with an ISA-Adaptec 1542B, 486/50. So there is enough power in Linux. Don't worry. But do use simulation writes to play safe.
Unless your SCSI controller and driver support discon- nect/reconnects, you will probably not be able to write a CD correctly if the CD writer and hard disk are on the same SCSI bus. It is not recommended that IDE drives are used on CD-writing system; if they are, it is imperative that interruptible operation is enabled using the hdparm command.
It is not recommended to use more than single speed when reading data off a filesystem (as opposed to a raw disk partition).
cdwrite does not verify that the input data will fit on the media. In the case of media overrun, the resulting disc is usually unreadable.
A Compact Disc can have no more than 100 tracks.
When creating a disc with both audio and data tracks, it is conventional to place the data on track 1. Some CD players or CD-ROM drives may respond incorrectly to any other arrangement, although the specifications permit it.
Many systems are not able to read more than a single data track, or need special software to do so.
Some CD players have problems reading "gold" CD's, and some have problems reading the outermost tracks (i.e. very long CD's).
It is best to use your CD-Writer for audio read. They should all perform perfectly.
Example: To convert a file "sound.wav" (44.1kHz, 16-bit, Stereo) to CDDA do this:
sox sound.wav -x sound.cdr
Hint: After creating your own audio-tracks and copying them to the image directory, use the "Play Audio-Tracks"-Option to listen to your track. If it plays ok, you made everything right. (The audio-files must have a ".cdr"-extension to be recognized by X-CD-Roast)New: X-CD-Roast can now write wav files directly. Just copy the wav-files in the "Image-Data-Path" where X-CD-Roast looks for its tracks. You have to care yourself that the files are in 44.1kHz, 16-Bit, stereo format! Be sure to enable the "Fix Wav-Files" Option in the Write-Tracks-Menu.
Q: I am using the predecessor of this program, "cdwtools-0.93", what is new with X-CD-Roast?
A: Really new is the much easier to use X-Interface, the automatic SCSI setup, better audio-track control and a log facility.
-
Q: Is it safe to burn CDs under X?
A: Any 486 should be fast enough to handle this, but if you are in doubt try simulated writes to check if errors occur.
-
Q: What about Multisession-support?
A: X-CD-Roast doesn't allow Multisession yet. If you need this feature you have to do it manually. I expect to have support for this in Version 0.97 of X-CD-Roast.
-
Q: Why is there no Quick-Audio-Copy?
A: Reading digital Audio from a CD must not be interrupted in order to
produce a "clean" stream. The problem is, that it is difficult
to address a specific sector on an Audio-CD, because there are no
sector-numbers like on a Data-CD. But you have to stop reading from
time to time to write the read data to harddisk. The longer this
writing lasts, the greater is the chance that the audio-read device
loses its track on the current audio-sector...if this happens you
have a "click" in the recording.
When you now want to read audio data and write it at the same time
to a CD-Recordable the problem with the writing-time is much worse,
because the CD-Writer is much slower than a harddrive. The result
would be a very bad copy...therefore I don't bother with programming
a quick-audio-copy. (It might be possible with very clever buffering
and a good knowledge of the devices used...but I dont know what
devices you are using and without vendor-support I'm not able to
do something like that.)
-
Q: Hey, my backspace or delete key doesn't work in entry-fields. Is this a bug?
A: No, this is not a bug, it is just an incorrect key mapping in X11. You can fix it by putting this line in your .xinitrc (or if you have an Xmodmap-file, by changing the corresponding line.) xmodmap -e "keycode 22 = BackSpace"
-
Q: I fail to compile X-CD-Roast, all I get are error-messages.
A: You have probably a kernel that is too old. Install 2.0 or above. Or you dont have all the development-packages from your linux-distributions installed. X11-development is needed for example.
-
Q: X-CD-Roast failed to detect any of my SCSI-Hardware, what can I do?
A: Check if you compiled generic SCSI support in the kernel, and if the generic devices exist. To create the generic devices run
./MAKEDEVICES.sh
in the xcdroast-0.96e directory. Next check if you installed "generic-SCSI" support in your kernel. Do a "cat /proc/devices".. There should be a line "21 sg". If not you have to recompile your kernel.
-
Q: How well are CD-RW-Writers supported?
A: You can write on CD-RW's exactly like on a CD-Recordable. X-CD-Roast does
not handle these any differently. To erase a CD-RW you have to call
cdrecord manually (see the X-CD-Roast logfile where to find cdrecord and
what your scsi-device is).
-
e.g.: /usr/local/lib/xcdroast-0.96e/bin/cdrecord-1.6.1 dev=4,0 blank=fast
Future versions of X-CD-Roast will provide a button to do this
the convenient way.
(This will erase the CD-RW in the CD-Writer with the SCSI-ID 4)
Q: I think I found a bug, what should I do?
A: Before you send me a bug-report, check to see whether I mentioned this
behavior somewhere in the README file. Then check if all your software
and hardware meet the requirements listed in the requirement section of
the documentation.
If it is a cdrecord-problem (so anything that relate somehow to
CD-writing) check the READMEs that came with cdrecord!
Also check to see whether there is a new version of this program is
available, look at the primary site:
http://www.fh-muenchen.de/rz/xcdroast
Ok, you've done all this and the error persist.
Supply me with the following information:
Thanks go to:
These CD-Writers are supported by cdrecord-1.6.1 and therefore by
this version of X-CD-Roast. More will be most likely supported by
future versions of cdrecord.
DONT WRITE ME ABOUT THAT! Ask
Joerg Schilling (the author of cdrecord) when you have cdrecord-problems!
16) Credits
17) Supported CD-Writers
Please direct all questions about CD-Writers to the author of
cdrecord: Joerg Schilling (schilling@fokus.gmd.de).
The following drives will never be supported by cdrecord because they are too old:
The following drives are curently not supported because I don't get specs:
(some of them way partially work: see above)
What about ATAPI-Writers?
Note: If you have a writer that is not supported by X-CD-Roast yet, you
may want to try out a newer (perhaps beta-version) of "cdrecord". You can download it at ftp://ftp.fokus.gmd.de/pub/unix/cdrecord/.
26.11.98 Thomas Niederreiter
tn@fh-muenchen.de