Compare commits

...

13 Commits

13 changed files with 519 additions and 123 deletions

2
CONTRIBUTORS Normal file
View File

@ -0,0 +1,2 @@
Joe Neeman
Philippe Rouquier

View File

@ -215,5 +215,9 @@ EXTRA_DIST = \
cdrskin/changelog.txt \
cdrskin/cdrskin_eng.html \
cdrskin/wiki_plain.txt \
cdrskin/cleanup.h \
cdrskin/cleanup.c \
libburn/sg-freebsd.c \
libburn/sg-linux.c \
COPYING

7
README
View File

@ -152,6 +152,13 @@ Project history as far as known to me:
- 16th September 2006 feature freeze for release of libburn-0.2.2 .
- 20th September 2006 release of libburn-0.2.2 .
- 26th October 2006 feature freeze for cdrskin-0.2.4 based on libburn-0.2.3 .
This version of cdrskin is much more cdrecord compatible in repect
to drive addressing and audio features.
------------------------------------------------------------------------------
This program is free software; you can redistribute it and/or modify

View File

@ -3,5 +3,8 @@
aclocal
libtoolize --copy --force
autoconf
autoheader
# ts A61101 : libburn is not prepared for config.h
# autoheader
automake --foreign --add-missing --copy --include-deps

View File

@ -26,12 +26,12 @@ following possible.
cdrskin. By Thomas Schmitt <scdbackup@gmx.net>
Integrated sub project of libburn.pykix.org but also published via:
http://scdbackup.sourceforge.net/cdrskin_eng.html
http://scdbackup.sourceforge.net/cdrskin-0.2.3.tar.gz
http://scdbackup.sourceforge.net/cdrskin-0.2.4.pl01.tar.gz
Copyright (C) 2006 Thomas Schmitt
------------------------------------------------------------------------------
On top of libburn there is implemented cdrskin 0.2.3, a limited cdrecord
On top of libburn there is implemented cdrskin 0.2.4, a limited cdrecord
compatibility wrapper which allows to use some libburn features from
the command line.
Interested users of cdrecord are invited to participate in the development
@ -59,16 +59,16 @@ systems, including 64 bit systems. (Further reports are welcome.)
Compilation, First Glimpse, Installation
Obtain cdrskin-0.2.3.tar.gz , take it to a directory of your choice and do:
Obtain cdrskin-0.2.4.pl01.tar.gz ,take it to a directory of your choice and do:
tar xzf cdrskin-0.2.3.tar.gz
cd cdrskin-0.2.3
tar xzf cdrskin-0.2.4.pl01.tar.gz
cd cdrskin-0.2.4
Or obtain a libburn.pykix.org SVN snapshot,
go into the toplevel directory of the snapshot (e.g. cd libburn_pykix ),
and execute the autotools script ./bootstrap . Use autools version >= 1.7 .
Within that toplevel directory of either cdrskin-0.2.3 or libburn then execute:
Within that toplevel directory of either cdrskin-0.2.4 or libburn then execute:
./configure
make
@ -181,7 +181,7 @@ See below "Audio CD" for specifications.
madplay -o raw:track04.cd /path/to/track4.mp3
mppdec --raw-le /path/to/track5.mpc track05.cd
cdrskin dev=0,1,0 blank=fast -eject speed=48 \
cdrskin dev=0,1,0 blank=fast -eject speed=48 -sao \
-audio -swab track0[1-5].cd /path/to/track6.wav

View File

@ -36,7 +36,7 @@ intermediate="./libburn_pykix"
# My changes are in libburn-0.2.3.ts.develop , mainly in ./cdrskin
changes="./libburn-0.2.3.ts.develop"
skin_rev="0.2.3"
skin_rev="0.2.4"
# The result directory and the name of the result tarballs
target="./cdrskin-${skin_rev}"
@ -108,12 +108,24 @@ fi
cp -a "$cdrskin_dir" "$cdrskin_target"
# Remove copied binaries
rm "$cdrskin_target"/*.o
rm "$cdrskin_target"/cdrfifo
rm "$cdrskin_target"/cdrskin
rm "$cdrskin_target"/cleanup
rm "$cdrskin_target"/cdrskin_std
rm "$cdrskin_target"/cdrskin_new
rm "$cdrskin_target"/*.o
for i in std new make old
do
if test -e "$cdrskin_target"/cdrskin_"$i"
then
rm "$cdrskin_target"/cdrskin_"$i"
fi
done
for i in .deps .dirstamp .libs
do
if test -e "$cdrskin_target"/"$i"
then
rm -rf "$cdrskin_target"/"$i"
fi
done
# Remove unwanted SVN stuff (TODO: avoid downloading it)
for i in "$target"/.svn "$target"/*/.svn

View File

@ -0,0 +1,193 @@
#!/bin/sh
set -x
# This script was used for producing cdrskin-0.2.4.pl01 from
# the svn snapshot made for cdrskin-0.2.4.pl00 and some changes
# in a patch directory.
#
# Script results are a source tarball and two binaries
# one dynamic and one static in respect to system libs.
# Both binaries are static in respect to libburn.
#
# The script is to be run in the directory above the toplevel
# directory of libburn resp. cdrskin development.
#
# libburn version used: http://libburn.pykix.org
# Downloaded by:
# $ svn co http://libburn-svn.pykix.org/trunk libburn_pykix
# packed up in a tarball just to save it from inadverted changes by
# $ tar czf libburn_svn.tgz libburn_pykix
# Then it went through cdrskin/add_ts_changes_to_libburn_0_2_4 where
# the following svn snapshot emerged.
original="./cdrskin-0.2.4.svn.tar.gz"
# The top level directory in that snapshot is named
intermediate="./cdrskin-0.2.4"
# My changes are in
changes="./cdrskin-0.2.4.patch01"
# Version parameters
skin_release="0.2.4"
patch_level=".pl01"
skin_rev="$skin_release""$patch_level"
# The result directory and the name of the result tarballs
target="./cdrskin-${skin_release}"
cdrskin_tarball="./cdrskin-${skin_rev}.tar.gz"
cdrskin_tarball_svn="./cdrskin-${skin_rev}.svn.tar.gz"
# Where to work
compile_dir="$target"
compile_cmd="./cdrskin/compile_cdrskin.sh"
compile_static_opts="-static"
compile_result="cdrskin/cdrskin"
bintarget_dynamic="cdrskin_${skin_rev}-x86-suse9_0"
bintarget_static="$bintarget_dynamic"-static
if test -d "$changes"
then
dummy=dummy
else
echo "$0 : FATAL : no directory $changes" >&2
exit 1
fi
for i in "$target" "$intermediate"
do
if test -e "$i"
then
echo "$0 : FATAL : already existing $i" >&2
exit 2
fi
done
if test -f "$original"
then
dummy=dummy
else
echo "$0 : FATAL : no file $original" >&2
exit 3
fi
# Unpack SVN snapshot.
tar xzf "$original"
# Rename the directory to the cdrskin name
if test "$intermediate" = "$target"
then
dummy=dummy
else
mv "$intermediate" "$target"
fi
# Copy the changes from the patch tree
#
cdrskin_dir="$changes"/cdrskin
libburn_dir="$changes"/libburn
test_dir="$changes"/test
cdrskin_target="$target"/cdrskin
libburn_target="$target"/libburn
test_target="$target"/test
# Create version timestamp
timestamp="$(date -u '+%Y.%m.%d.%H%M%S')"
echo "$timestamp"
echo '#define Cdrskin_timestamP "'"$timestamp"' (pl01)"' \
>"$cdrskin_dir"/cdrskin_timestamp.h
#
# Do the repair of patch01
#
# configure.ac used macro AM_CONFIG_HEADER() and thus disabled all
# other compile time configure macros. Among them were those which
# enabled 64 bit off_t in libburn. They were always set in cdrskin
# so that there was a 64<>32 bit mess-up.
# Negative consequences are to be expected at least with big-endian
# processors (i.e non-Intel compatible, MSB-first) on systems with
# 32 bit off_t default.
#
# bootstrap called a program named autoheader which is obsolete
# without the AM_CONFIG_HEADER macro.
#
cp -a "$changes"/bootstrap "$target"
cp -a "$changes"/configure.ac "$target"
# Unlike cdrskin, libburner is not depending on 64 bit off_t
# so the according code part has been removed. A similar remedy in
# cdrskin took place in version 0.2.5. Its consequences are wider
# than would be appropriate for this patch.
cp -a "$test_dir"/libburner.c "$test_target"
# Mention changed tarball name
cp -a "$cdrskin_dir"/README "$cdrskin_target"
# Fetch this script
cp -a "$cdrskin_dir"/add_ts_changes_to_libburn_0_2_4_patch01 "$cdrskin_target"
# Mark the patch
cp -a "$cdrskin_dir"/cdrskin_timestamp.h "$cdrskin_target"
#
# end of repair for patch01
#
# Make SVN state tarball for the libburn team
tar czf "$cdrskin_tarball_svn" "$target"
# Get over dependecy on autotools. Rely only on cc, make et. al.
# This is not the same as "make dist" but i can do it without
# having to evaluate the quality of said "make dist"
#
( cd "$target" ; ./bootstrap )
# Remove unwanted stuff after bootstrap
for i in "$target"/autom4te.cache
do
if echo "$i" | grep '\*' >/dev/null
then
dummy=dummy
else
if test -e "$i"
then
rm -rf "$i"
fi
fi
done
# Pack it up to the new libburn+cdrskin-tarball
tar czf "$cdrskin_tarball" "$target"
# Produce a static and a dynamic binary
(
cd "$compile_dir" || exit 1
./configure
make
$compile_cmd -do_strip
cp "$compile_result" "../$bintarget_dynamic"
if test -n "$compile_static_opts"
then
$compile_cmd $compile_static_opts -do_strip
cp "$compile_result" "../$bintarget_static"
fi
)
# Remove the build area
# Disable this for debugging the merge process
rm -rf "$target"
# Show the result
./"$bintarget_dynamic" -version
./"$bintarget_static" -version
ls -l "$cdrskin_tarball"
ls -l "$bintarget_dynamic"
ls -l "$bintarget_static"

View File

@ -123,7 +123,7 @@ or
/** The official program version */
#ifndef Cdrskin_prog_versioN
#define Cdrskin_prog_versioN "0.2.3"
#define Cdrskin_prog_versioN "0.2.4"
#endif
/** The source code release timestamp */
@ -939,10 +939,10 @@ int Cdrtrack_extract_audio(struct CdrtracK *track, int *fd, off_t *xtr_size,
return(0);
l= strlen(track->source_path);
if(l>=4)
if(strcmp(track->source_path+l-4,".wav")!=0)
if(strcmp(track->source_path+l-4,".wav")==0)
ok= 1;
if(l>=3)
if(strcmp(track->source_path+l-3,".au")!=0)
if(strcmp(track->source_path+l-3,".au")==0)
ok= 1;
if(!ok)
return(0);
@ -1914,11 +1914,11 @@ set_dev:;
" --ignore_signals try to ignore any signals rather than to abort\n");
printf(" --no_abort_handler exit even if the drive is in busy state\n");
printf(" --no_blank_appendable refuse to blank appendable CD-RW\n");
printf(" --old_pseudo_scsi_adr use and report literal Bus,Target,Lun\n");
printf(" rather than real SCSI and pseudo ATA.\n");
printf(" --no_convert_fs_adr only literal translations of dev=\n");
printf(
" --no_rc as first argument: do not read startup files\n");
printf(" --old_pseudo_scsi_adr use and report literal Bus,Target,Lun\n");
printf(" rather than real SCSI and pseudo ATA.\n");
printf(
" --single_track accept only last argument as source_address\n");
printf(
@ -1930,8 +1930,7 @@ set_dev:;
printf(
"if they exist and are readable. The sequence is as listed here:\n");
printf(" /etc/default/cdrskin /etc/opt/cdrskin/rc $HOME/.cdrskinrc\n");
printf(
"Each file line is a single argument. No remarks, no whitespace.\n");
printf("Each file line is a single argument. No whitespace.\n");
printf(
"By default any argument that does not match grep '^-.' or '=' is\n");
printf(

View File

@ -51,7 +51,7 @@ A CD recorder suitable for
GPL software included:<BR>
</H2>
<DL>
<DT>libburn-0.2.2</DT>
<DT>libburn-0.2.3 stabilized SVN snapshot</DT>
<DD>(by Derek Foreman, Ben Jansens, and team of libburn.pykix.org)</DD>
<DD>transfers data to CD</DD>
</DL>
@ -80,10 +80,31 @@ Ports to other usable systems are appreciated. Reports are welcome.
This has been achieved quite sufficiently for the needs of backup tool
<A HREF="http://scdbackup.sourceforge.net/main_eng.html">scdbackup</A>
and for data CD projects of <A HREF="http://www.k3b.org">K3b</A>
(see <A HREF="#examples">examples</A>).<BR>
(see <A HREF="#examples">examples</A>).
Suitability for audio CD frontends has been improved much and is now being
evaluated.<BR>
Further enhancements depend on people who can describe and discuss their
wishes as well as on the development of libburn.</DT>
<BR><BR>
<DT>Get an overview of drives:</DT>
<DD>$ cdrskin -scanbus</DD>
<DD>$ cdrskin dev=ATA -scanbus</DD>
<DD>$ cdrskin --devices</DD>
<DT>Get info about a particular drive or loaded media:</DT>
<DD>$ cdrskin dev=0,1,0 -checkdrive</DD>
<DD>$ cdrskin dev=ATA:1,0,0 -atip</DD>
<DD>$ cdrskin dev=/dev/hdc -toc</DD>
<DT>Make used CD-RW writable again:</DT>
<DD>$ cdrskin -v dev=/dev/sg1 blank=all -eject</DD>
<DD>$ cdrskin -v dev=/dev/dvd blank=fast -eject</DD>
<DT>Write ISO-9660 filesystem image:</DT>
<DD>$ cdrskin -v dev=/dev/hdc speed=12 fs=8m driveropts=burnfree -sao -eject padsize=300k my_image.iso</DD>
<DT>Write compressed afio archive on-the-fly:</DT>
<DD>$ find . | afio -oZ - | cdrskin -v dev=0,1,0 fs=32m speed=8 driveropts=burnfree padsize=300k -sao tsize=650m -</DD>
<DT>Write audio tracks:</DT>
<DD>$ cdrskin -v dev=ATA:1,0,0 speed=48 driveropts=burnfree -sao track1.wav track2.au -audio -swab track3.raw
<DD>
<BR>
<DT><A HREF="cdrskin_help">cdrskin -help</A></DT>
<DD>reports the cdrecord compatible options</DD>
<DT><A HREF="cdrskin__help">cdrskin --help</A></DT>
@ -94,15 +115,6 @@ wishes as well as on the development of libburn.</DT>
(Be cursed if you install cdrskin as "cdrecord" without clearly forwarding
this "don't bother Joerg" demand.)
</DD>
<DT>Currently (and sparsely) supported gestures :</DT>
<DD>$ cdrskin -scanbus</DD>
<DD>$ cdrskin dev=1,1,0 -checkdrive</DD>
<DD>$ cdrskin dev=1,1,0 -atip</DD>
<DD>$ cdrskin -v dev=1,1,0 blank=all -eject</DD>
<DD>$ cdrskin -v dev=1,1,0 blank=fast -eject</DD>
<DD>$ cdrskin -v dev=1,1,0 speed=12 fs=8m -sao driveropts=burnfree -eject padsize=300k my_image.iso</DD>
<DD>$ cdrskin -v dev=1,1,0 ... ... track_1.iso padsize=300k track_2.afio</DD>
<DD>$ find . | afio -oZ - | cdrskin -v dev=1,1,0 fs=32m speed=8 -sao driveropts=burnfree padsize=300k tsize=650m -</DD>
</DL>
</P>
@ -111,12 +123,6 @@ wishes as well as on the development of libburn.</DT>
<UL>
<DT></DT>
<LI>
Option -audio is enabled but by default not advertised via option -help,
because no beheading of .au or .wav files takes place yet.
<BR>Note: In development version 0.2.3 there is automatic extraction of
.wav and .au. So -audio is fully supported.
</LI>
<LI>
Burns only a single closed session. No -multi option yet.
</LI>
<LI>
@ -143,8 +149,8 @@ rw-permissions and retry the bus scan as non-superuser.
<P>
<DL>
<DT>Download as source code (see README):</DT>
<DD><A HREF="cdrskin-0.2.2.tar.gz">cdrskin-0.2.2.tar.gz</A>
(450 KB).
<DD><A HREF="cdrskin-0.2.4.tar.gz">cdrskin-0.2.4.tar.gz</A>
(510 KB).
</DD>
<DD>
The "stable" cdrskin tarballs are source code identical with "stable"
@ -154,19 +160,18 @@ cdrskin is part of libburn - full libburn is provided with cdrskin releases.
</DD>
<DD>&nbsp;</DD>
<DT>Download as single x86 binaries (untar and move to /usr/bin/cdrskin):</DT>
<DD><A HREF="cdrskin_0.2.2-x86-suse9_0.tar.gz">
cdrskin_0.2.2-x86-suse9_0.tar.gz</A>, (60 KB),
<DD><A HREF="cdrskin_0.2.4-x86-suse9_0.tar.gz">
cdrskin_0.2.4-x86-suse9_0.tar.gz</A>, (60 KB),
<DL>
<DD>runs on SuSE 9.0 (2.4.21) , RIP-14.4 (2.6.14) ,
Gentoo (2.6.15 x86_64 Athlon).</DD>
</DL>
<DD><A HREF="cdrskin_0.2.2-x86-suse9_0-static.tar.gz">
cdrskin_0.2.2-x86-suse9_0-static.tar.gz</A>, (250 KB), -static compiled,
<DD><A HREF="cdrskin_0.2.4-x86-suse9_0-static.tar.gz">
cdrskin_0.2.4-x86-suse9_0-static.tar.gz</A>, (260 KB), -static compiled,
<DL>
<DD>runs on SuSE 7.2 (2.4.4), and on the systems above.</DD>
</DL>
</DD>
<DD>&nbsp;</DD>
</DL>
<DL><DT>Documentation:</DT>
<DD><A HREF="README_cdrskin">README</A> a short introduction</DD>
@ -185,30 +190,41 @@ cdrskin_0.2.2-x86-suse9_0-static.tar.gz</A>, (250 KB), -static compiled,
<HR>
<P>
Enhancements towards previous stable version cdrskin-0.2.2:
<UL>
<LI>cdrecord compatibility with drive addresses of form [ATA:]Bus,Target,Lun.
<BR>(use option --old_pseudo_scsi_adr to get back the incompatible
Bus,Traget,Lun addressing of version 0.2.2)
</LI>
<LI>Drives adressable via links and device siblings (/dev/cdrom , /dev/scd0).
</LI>
<LI>Automatic -audio extraction with .wav files and .au files.
</LI>
<LI>Bug fix about failure to eject.</LI>
<LI>Comments and empty lines allowed in startup files.</LI>
<LI>Options -scanbus and --devices print SORRY messages about busy drives.
</LI>
<LI>Drive buffer fill indicator reports realistic percentage numbers.</LI>
<LI>Option -toc is supported, drive firmware revision gets displayed.</LI>
</UL>
</P>
<HR>
<P>
<DL>
<DT>Development snapshot, version 0.2.3 :</DT>
<DT>Development snapshot, version 0.2.5 :</DT>
<DD>&nbsp;</DD>
<DD>Contains non-critical bug fix about failure to eject.</DD>
<DD>&nbsp;</DD>
<DD>Enhancements towards stable version:
<DD>Enhancements towards stable version 0.2.4:
<UL>
<LI>cdrecord compatibility with addresses of form [ATA:]Bus,Target,Lun.</LI>
<LI>Drives adressable via links and device siblings (/dev/cdrom , /dev/scd0).
</LI>
<LI>Automatic -audio extraction with .wav files and .au files.
<BR>&nbsp;$ cdrskin -v dev=1,1,0 track1.wav track2.au -audio -swab track3.raw
</LI>
<LI>Comments and empty lines allowed in startup files.</LI>
<LI>Options -scanbus and --devices print SORRY messages about busy drives.
</LI>
<LI>Drive buffer fill indicator reports realistic percentage numbers.</LI>
<LI>Option -toc is supported, drive firmware revision gets displayed.</LI>
</UL></DD>
<LI>-none for now-</LI>
</UL>
</DD>
<DD>&nbsp;</DD>
<DD><A HREF="README_cdrskin_devel">README 0.2.3</A>
<DD><A HREF="cdrskin__help_devel">cdrskin_0.2.3 --help</A></DD>
<DD><A HREF="cdrskin_help_devel">cdrskin_0.2.3 -help</A></DD>
<DD><A HREF="README_cdrskin_devel">README 0.2.5</A>
<DD><A HREF="cdrskin__help_devel">cdrskin_0.2.5 --help</A></DD>
<DD><A HREF="cdrskin_help_devel">cdrskin_0.2.5 -help</A></DD>
<DD>&nbsp;</DD>
<DT>Maintainers of cdrskin unstable packages please use SVN of
<A HREF="http://libburn.pykix.org"> libburn.pykix.org</A></DT>
@ -228,15 +244,15 @@ admins with full system souvereignty.</DT>
<A HREF="README_cdrskin_devel">upcoming README</A> ):
</DD>
<DD>
<A HREF="cdrskin-0.2.3.tar.gz">cdrskin-0.2.3.tar.gz</A>
<A HREF="cdrskin-0.2.5.tar.gz">cdrskin-0.2.5.tar.gz</A>
(500 KB).
</DD>
<DD>Binary (untar and move to /usr/bin/cdrskin):</DD>
<DD><A HREF="cdrskin_0.2.3-x86-suse9_0.tar.gz">
cdrskin_0.2.3-x86-suse9_0.tar.gz</A>, (60 KB).
<DD><A HREF="cdrskin_0.2.5-x86-suse9_0.tar.gz">
cdrskin_0.2.5-x86-suse9_0.tar.gz</A>, (60 KB).
</DD>
<DD><A HREF="cdrskin_0.2.3-x86-suse9_0-static.tar.gz">
cdrskin_0.2.3-x86-suse9_0-static.tar.gz</A>, (260 KB)
<DD><A HREF="cdrskin_0.2.5-x86-suse9_0-static.tar.gz">
cdrskin_0.2.5-x86-suse9_0-static.tar.gz</A>, (260 KB)
</DD>
</DL>
</P>
@ -289,36 +305,6 @@ is a GUI frontend which uses cdrecord for CD burning.)
<DT>Example for a test session with a cdrecord based scdbackup installation:</DT>
<DD>$ <KBD><B>cdrskin -scanbus</B></KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD>scsibus1:</KBD></DD>
<DD><KBD>&nbsp;&nbsp;&nbsp; 1,0,0 &nbsp;&nbsp; 0)&nbsp; 'TEAC' 'CD-ROM CD-532S' '?' Removable CD-ROM</KBD></DD>
<DD><KBD>scsibus2:</KBD></DD>
<DD><KBD>&nbsp;&nbsp;&nbsp; 2,2,0 &nbsp;&nbsp; 1)&nbsp; 'LITE-ON' 'LTR-48125S' '?' Removable CD-ROM</KBD></DD>
<DD>$ <KBD><B>export SCDBACKUP_SCSI_ADR="2,2,0"</B></KBD></DD>
<!-- 0.2.4
<DD><KBD>...</KBD></DD>
<DD><KBD>&nbsp;&nbsp;&nbsp; 2,0,0 &nbsp;&nbsp; 0)&nbsp; 'TEAC' 'CD-ROM CD-532S' '?' Removable CD-ROM</KBD></DD>
<DD>$ <KBD><B>cdrskin -scanbus dev=ATA</B></KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD>&nbsp;&nbsp;&nbsp; 1,0,0 &nbsp;&nbsp; 1)&nbsp; 'LITE-ON' 'LTR-48125S' '?' Removable CD-ROM</KBD></DD>
<DD>$ <KBD><B>export SCDBACKUP_SCSI_ADR="ATA:1,0,0"</B></KBD></DD>
-->
<DD>$ <KBD><B>export SCDBACKUP_CDRECORD="cdrskin -v -v tao_to_sao_tsize=650m"</B></KBD></DD>
<DD>$ <KBD><B>scdbackup_home</B></KBD></DD>
</DL>
<DL>
<DT>Example for a permanent configuration of cdrskin based scdbackup</DT>
<DD>$ <KBD><B>cd scdbackup-0.8.6/inst</B></KBD></DD>
<DD>$ <KBD><B>export SCDBACKUP_USE_CDRSKIN=1</B></KBD></DD>
<DD>$ <KBD><B>export SCDBACKUP_EJECT_ADR=/dev/cdrecorder</B></KBD></DD>
<DD>$ <KBD><B>./CONFIGURE_CD</B></KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD>cdrskin 0.2.2 : limited cdrecord compatibility wrapper for libburn</KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD> ------------------- SCSI devices. To be used like &nbsp;&nbsp; 0,0,0</KBD></DD>
</DL>
If your system is stricken with some ill CD device then this can stall
and you will have to press <KBD>Ctrl+C</KBD> to abort.
@ -327,26 +313,34 @@ In this case, you may execute
and try again.
<DL>
<DT></DT>
<DD><KBD>&nbsp;&nbsp;&nbsp; 1,0,0 &nbsp;&nbsp; 0)&nbsp; 'TEAC' 'CD-ROM CD-532S' '?' Removable CD-ROM</KBD></DD>
<DD><KBD>&nbsp;&nbsp;&nbsp; 2,2,0 &nbsp;&nbsp; 1)&nbsp; 'LITE-ON' 'LTR-48125S' '?' Removable CD-ROM</KBD></DD>
<DD><KBD>------------------- end of SCSI device list</KBD></DD>
<!-- 0.2.4
<DD><KBD>&nbsp;&nbsp;&nbsp; 2,0,0 &nbsp;&nbsp; 0)&nbsp; 'TEAC' 'CD-ROM CD-532S' '?' Removable CD-ROM</KBD></DD>
<DD>$ <KBD><B>cdrskin -scanbus dev=ATA</B></KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD>&nbsp;&nbsp;&nbsp; 1,0,0 &nbsp;&nbsp; 1)&nbsp; 'LITE-ON' 'LTR-48125S' '?' Removable CD-ROM</KBD></DD>
<DD>$ <KBD><B>export SCDBACKUP_SCSI_ADR="ATA:1,0,0"</B></KBD></DD>
<DD>$ <KBD><B>export SCDBACKUP_CDRECORD="cdrskin -v -v tao_to_sao_tsize=650m"</B></KBD></DD>
<DD>$ <KBD><B>scdbackup_home</B></KBD></DD>
</DL>
<DL>
<DT>Example for a permanent configuration of cdrskin based scdbackup</DT>
<DD>$ <KBD><B>cd scdbackup-0.8.6/inst</B></KBD></DD>
<DD>$ <KBD><B>export SCDBACKUP_USE_CDRSKIN=1</B></KBD></DD>
<DD>$ <KBD><B>./CONFIGURE_CD</B></KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD>cdrskin 0.2.4 : limited cdrecord compatibility wrapper for libburn</KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD> ------------------- SCSI devices. To be used like &nbsp;&nbsp; 0,0,0</KBD></DD>
<DD><KBD>&nbsp;&nbsp;&nbsp; 2,0,0 &nbsp;&nbsp; 0)&nbsp; 'TEAC' 'CD-ROM CD-532S' '?' Removable CD-ROM</KBD></DD>
<DD><KBD> ------------------- end of SCSI device list</KBD></DD>
<DD><KBD> ------------------- ATA devices. To be used like ATA:0,0,0
<DD><KBD>&nbsp;&nbsp;&nbsp; 1,0,0 &nbsp;&nbsp; 1)&nbsp; 'LITE-ON' 'LTR-48125S' '?' Removable CD-ROM</KBD></DD>
-->
<DD><KBD>...</KBD></DD>
<DD><KBD>&nbsp;&nbsp;&nbsp; * Your cdrecord offers -driveropts=burnfree with your recorder.</KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD>scdbackup for CD 0.8.6 : First stage of installation done.</KBD></DD>
<DD><KBD>...</KBD></DD>
<DD><KBD>Now give it a try. Run : scdbackup_home</KBD></DD>
<DD>$ <KBD><B>unset SCDBACKUP_USE_CDRSKIN SCDBACKUP_EJECT_ADR</B></KBD></DD>
<DD>$ <KBD><B>unset SCDBACKUP_USE_CDRSKIN</B></KBD></DD>
</DL>
<DL>
<DT>To get back to using cdrecord :</DT>

View File

@ -1 +1 @@
#define Cdrskin_timestamP "2006.10.24.165610"
#define Cdrskin_timestamP "2006.11.02.140329 (pl01)"

View File

@ -742,6 +742,7 @@ libburn/sg.h
libburn/sg.c
libburn/libdax_msgs.h
cdrskin/cdrskin.c
Disabled but did not discarded failed attempt to lock against growisofs
2006.09.27.120656 [234]
libburn/drive.h
@ -934,7 +935,6 @@ libburn/transport.h
cdrskin/cleanup.c
Made libburn and cdrskin build on my Linux again
2006.10.13.114554 [271]
cdrskin/cdrskin.c
libburn/write.c
@ -942,7 +942,6 @@ libburn/sg-linux.c
libburn/libdax_msgs.h
Removed bug in burn_disc_write_sync(): BURN_DRIVE_IDLE, then d->sync_cache()
2006.10.14.105224 [272]
libburn/sg.h
libburn/sg-freebsd.c
@ -954,7 +953,6 @@ Introduced burn_drive_enumerator_t to allow more complete sg-freebsd implementat
cdrskin/cdrskin.c
Changed ambigous include statement of libburn.h
15 Oct 2006 2006 [275]
Makefile.am
libburn/libdax_msgs.h
@ -1027,8 +1025,194 @@ cdrskin/cdrskin.c
cdrskin/compile_cdrskin.sh
Made cdrskin use libburn/cleanup.[oh] by default (not cdrskin/cleanup.[ch])
------------------------------------ cycled - cdrskin-0.2.3 - 2006.10.19
------------------------------------ cycled - cdrskin-0.2.3 - 2006.10.19.105730
2006.10.19.162254 [294]
cdrskin/cdrskin.c
cdrskin/cdrskin_eng.html
cdrskin/changelog.txt
Updated documentation about cdrskin-0.2.3
2006.10.19.164742 [295]
cdrskin/cdrskin.c
Corrected -help text
2006.10.20.113421 [297]
libburn/libburn.h
libburn/mmc.c
libburn/sg-linux.c
libburn/sg-freebsd.c
libburn/drive.c
cdrskin/cdrskin.c
Made cdrskin produce "ATIP start of lead" (on non-blank media for now)
20 Oct 2006 [298]
doc/comments
Updated help text of libburner
2006.10.20.151602 [299]
libburn/libburn.h
libburn/drive.c
libburn/mmc.c
libburn/libdax_msgs.h
cdrskin/cdrskin.c
Classified media with TOC read error as unsuitable (rather than as blank)
2006.10.21.103352 [300]
libburn/libburn.h
libburn/transport.h
libburn/drive.c
libburn/mmc.c
libburn/spc.c
libburn/sg-linux.c
libburn/sg-freebsd.c
libburn/libdax_msgs.h
cdrskin/cdrskin.c
Implemented some ATIP functionality
2006.10.21.103653 [301] [302]
libburn/libburn.h
Clarified relation of burn_disc_read_atip() and burn_drive_get_start_end_lba()
2006.10.21.185102 [303]
libburn/sg.h
libburn/mmc.h
libburn/mmc.c
libburn/sbc.h
libburn/sbc.c
libburn/spc.h
libburn/spc.c
libburn/drive.h
libburn/drive.c
libburn/transport.h
libburn/sg-linux.c
libburn/sg-freebsd.c
Split enumerate_common() into logic-layer, command-layer, transport-layer
2006.10.22.130341 [304]
libburn/libburn.h
libburn/mmc.c
libburn/drive.c
libburn/cleanup.c
cdrskin/cleanup.c
cdrskin/cdrskin.c
Implemented cdrskin -toc
2006.10.22.131452 [305]
cdrskin/cdrskin.c
Regulated coexistence of options -toc and -atip
23 Oct 2006 [306]
libburn/mmc.c
Made clarification in remark about atip speed conversion
2006.10.23.074430 [307]
cdrskin/cdrskin.c
Made use of burn_drive_info.revision as firmware revision text
2006.10.23.113116 [308]
libburn/libburn.h
libburn/transport.h
libburn/mmc.h
libburn/mmc.c
libburn/write.c
cdrskin/cdrskin.c
cdrskin/cdrskin_eng.html
cdrskin/README
Made available drive buffer fill during write
23 Oct 2006 [309]
libburn/sg-freebsd.c
Updated tangling of FreeBSD code with mmc.c :(
2006.10.23.134719 [310]
cdrskin/cdrskin.c
Corrected -toc track counter and notified about "hidden" tracks
2006.10.24.075039 [311]
libburn/libdax_audioxtr.h
libburn/libdax_audioxtr.c
test/dewav.c
cdrskin/cdrskin.c
Introduced extraction of .au (but not its usage within cdrskin)
2006.10.24.102107 [312]
libburn/libburn.h
libburn/structure.h
libburn/structure.c
libburn/sector.c
cdrskin/cdrskin.c
cdrskin/README
Enabled byte swapping for audio track sources, added anti option -swab
2006.10.24.130259 [313]
test/dewav.c
cdrskin/cdrskin.c
cdrskin/README
Enabled automatic extraction of .au
24 Oct 2006 [314]
Makefile.am
+ test/fake_au.c
Introduced temporary test program to produce SUN .au files
------------------------------------ cycled - cdrskin-0.2.3 - 2006.10.24.144650
2006.10.24.165427 [315]
libburn/sector.c
Closed some loopholes for byte swapping.
2006.10.24.165610 [316]
cdrskin/cdrskin.c
Enabled audio byte swapping by default (to be disabled via option -swab)
------------------------------------ cycled - cdrskin-0.2.3 - 2006.10.24.173602
25 Oct 2006 [317]
cdrskin/README
cdrskin/cdrskin_eng.html
cdrskin/wiki_plain.txt
Announced full -audio compatibility with cdrecord
------------------------------------ cycled - cdrskin-0.2.3 - 2006.10.25.160540
[]
- cdrskin/add_ts_changes_to_libburn_0_2_3
+ cdrskin/add_ts_changes_to_libburn_0_2_4
cdrskin/README
cdrskin/cdrskin.c
cdrskin/cdrskin_eng.html
cdrskin/changelog.txt
README
Preparing cdrskin version leap to cdrskin-0.2.4
(To be committed to branch)
------------------------------------ cycle - cdrskin-0.2.5
[]
- cdrskin/add_ts_changes_to_libburn_0_2_3
+ cdrskin/add_ts_changes_to_libburn_0_2_4
+ cdrskin/add_ts_changes_to_libburn_0_2_5
cdrskin/README
cdrskin/cdrskin.c
cdrskin/cdrskin_eng.html
cdrskin/changelog.txt
README
Prepare cdrskin version leap to cdrskin-0.2.5
(To be committed to trunk)
2006 []
-reset: ioctl(fd,CDROMRESET) ioctl(fd,SG_SCSI_RESET,SG_SCSI_RESET_DEVICE)
2006 []
Try wether tao will work if finalized by mmc_close()
2006 []
Open O_EXCL all devices in address resolution chain
@ -1044,6 +1228,7 @@ Test unlocking of single drive by burn_drive_grab(), burn_drive_release()
2006 []
Clear outdated persistent read buffer after small CD image was read (ticket 57)

View File

@ -7,7 +7,11 @@ AC_CANONICAL_TARGET
AM_INIT_AUTOMAKE([subdir-objects])
AM_CONFIG_HEADER(config.h)
dnl A61101 This breaks Linux build (makes 32 bit off_t)
dnl http://sourceware.org/autobook/autobook/autobook_96.html says
dnl one must include some config.h and this was a pitfall.
dnl So why dig the pit at all ?
dnl AM_CONFIG_HEADER(config.h)
dnl Making releases:
dnl BURN_MICRO_VERSION += 1;

View File

@ -35,17 +35,10 @@
*/
/* We shall prepare for times when more than 2 GB of data are to be handled.
This gives POSIX-ly 64 bit off_t */
#ifndef _LARGEFILE_SOURCE
#define _LARGEFILE_SOURCE 1
#endif
#ifndef _FILE_OFFSET_BITS
#define _FILE_OFFSET_BITS 64
#endif
/** See this for the decisive API specs . libburn.h is The Original */
#include <libburn/libburn.h>
/* For using the installed header file : #include <libburn/libburn.h> */
/* This program insists in the own headerfile. */
#include "../libburn/libburn.h"
/* libburn is intended for Linux systems with kernel 2.4 or 2.6 for now */
#include <stdio.h>