[Debburn-changes] r628 - in cdrkit/trunk: . debian wodim

Eduard Bloch blade at alioth.debian.org
Thu Dec 21 01:06:48 CET 2006


Author: blade
Date: 2006-12-21 01:06:47 +0100 (Thu, 21 Dec 2006)
New Revision: 628

Modified:
   cdrkit/trunk/Changelog
   cdrkit/trunk/debian/changelog
   cdrkit/trunk/wodim/drv_mmc.c
   cdrkit/trunk/wodim/wodim.1
   cdrkit/trunk/wodim/wodim.c
Log:
Enabling burnfree by default

Modified: cdrkit/trunk/Changelog
===================================================================
--- cdrkit/trunk/Changelog	2006-12-19 04:43:29 UTC (rev 627)
+++ cdrkit/trunk/Changelog	2006-12-21 00:06:47 UTC (rev 628)
@@ -12,6 +12,7 @@
     more gcc -Wall correctness
   * reenabled -format functionality (bug in program function control flow)
   * get maximum DMA buffer size from sysfs on Linux, where possible
+  * enable BURN-Free by default where possible
 
   [ Thomas Schmidt ]
   * workaround for older libmagic API

Modified: cdrkit/trunk/debian/changelog
===================================================================
--- cdrkit/trunk/debian/changelog	2006-12-19 04:43:29 UTC (rev 627)
+++ cdrkit/trunk/debian/changelog	2006-12-21 00:06:47 UTC (rev 628)
@@ -3,6 +3,7 @@
   * New upstream version
     + more verbose abort message if track is specified with some maintainance
       command (closes: #369677)
+    + BURN-Free enabled by default (closes: #403899)
     + moved *iso* manpages to section 1 and corrected removed obsolete
       references in wodim.1 and some other manpages.
   * Add mkzftree binary again (sorry... closes: #387927)

Modified: cdrkit/trunk/wodim/drv_mmc.c
===================================================================
--- cdrkit/trunk/wodim/drv_mmc.c	2006-12-19 04:43:29 UTC (rev 627)
+++ cdrkit/trunk/wodim/drv_mmc.c	2006-12-21 00:06:47 UTC (rev 628)
@@ -851,6 +851,10 @@
 
 	check_writemodes_mmc(usalp, dp);
 
+    /* Enable Burnfree by default, it can be disabled later */
+    if ((dp->cdr_flags & CDR_BURNFREE) != 0)
+        dp->cdr_dstat->ds_cdrflags |= RF_BURNFREE;
+
 	if (driveropts != NULL) {
 		char	*p;
 
@@ -858,17 +862,6 @@
 			mmc_opthelp(dp, 0);
 		}
 
-		p = hasdrvopt(driveropts, "burnfree");
-		if (p == NULL)
-			p = hasdrvopt(driveropts, "burnproof");
-		if (p != NULL && (dp->cdr_flags & CDR_BURNFREE) != 0) {
-			if (*p == '1') {
-				dp->cdr_dstat->ds_cdrflags |= RF_BURNFREE;
-			} else if (*p == '0') {
-				dp->cdr_dstat->ds_cdrflags &= ~RF_BURNFREE;
-			}
-		}
-
 		p = hasdrvopt(driveropts, "varirec");
 		if (p != NULL && (dp->cdr_flags & CDR_VARIREC) != 0) {
 			dp->cdr_dstat->ds_cdrflags |= RF_VARIREC;
@@ -2503,18 +2496,20 @@
 				MS_MULTI : MS_NONE;
 	mp->session_format = toc2sess[track_base(trackp)->tracktype & TOC_MASK];
 	
-	if (lverbose > 2 && dp->cdr_cdcap->BUF != 0)
-		printf("BURN-Free is %s.\n", mp->BUFE?"ON":"OFF");
+    /* Enable Burnfree by default, allow to disable. XXX Sucks, duplicated functionality. */
+    if (dp->cdr_cdcap->BUF != 0) {
+        if (lverbose > 2)
+            fprintf(stderr, 
+                    "BURN-Free is %s.\n"
+                    "Turning BURN-Free on\n",
+                    mp->BUFE?"ON":"OFF");
+        mp->BUFE = 1;
+    }
 	if (driveropts != NULL) {
-		if ((strcmp(driveropts, "burnproof") == 0 ||
-		    strcmp(driveropts, "burnfree") == 0) && dp->cdr_cdcap->BUF != 0) {
-			if(lverbose>2)
-				errmsgno(EX_BAD, "Turning BURN-Free on\n");
-			mp->BUFE = 1;
-		} else if ((strcmp(driveropts, "noburnproof") == 0 ||
-			   strcmp(driveropts, "noburnfree") == 0)) {
-			if(lverbose>2)
-				errmsgno(EX_BAD, "Turning BURN-Free off\n");
+        if ((strcmp(driveropts, "noburnproof") == 0 ||
+                    strcmp(driveropts, "noburnfree") == 0)) {
+			if(lverbose>1)
+				fprintf(stderr, "Turning BURN-Free off\n");
 			mp->BUFE = 0;
 		} else if (strcmp(driveropts, "help") == 0) {
 			mmc_opthelp(dp, 0);
@@ -2980,9 +2975,9 @@
 	rp = get_justlink_ricoh(usalp, moder);
 
 	if (dp->cdr_cdcap->BUF != 0) {
-		burnfree = mp->BUFE != 0;
+		burnfree = (mp->BUFE != 0);
 	} else if ((dp->cdr_flags & CDR_BURNFREE) != 0) {
-		burnfree = rp && rp->BUEFE != 0;
+		burnfree = (rp && (rp->BUEFE != 0));
 	}
 
 	if (lverbose>2 && (dp->cdr_flags & CDR_BURNFREE) != 0)
@@ -3000,7 +2995,8 @@
 	}
 	if (dp->cdr_cdcap->BUF != 0) {
 		mp->BUFE = burnfree?1:0;
-	} else if ((dp->cdr_flags & CDR_BURNFREE) != 0) {
+	} 
+    else if ((dp->cdr_flags & CDR_BURNFREE) != 0) {
 
 		if (rp)
 			rp->BUEFE = burnfree?1:0;

Modified: cdrkit/trunk/wodim/wodim.1
===================================================================
--- cdrkit/trunk/wodim/wodim.1	2006-12-19 04:43:29 UTC (rev 627)
+++ cdrkit/trunk/wodim/wodim.1	2006-12-21 00:06:47 UTC (rev 628)
@@ -1,4 +1,4 @@
-.\" @(#)wodim.1	 06/09/10 Copyright 2006 Cdrkit maintainers
+.\" @(#)wodim.1	 06/12/18 Copyright 2006 Cdrkit maintainers
 .\" derived from:
 .\" @(#)cdrecord.1	1.106 06/02/09 Copyright 1996 J. Schilling
 .\" 
@@ -132,7 +132,8 @@
 important on systems with insufficient RAM where swaping can create delays of
 many seconds.
 .PP
-A possible workaround on underpowered systems is the use of the burnfree or similar feature, allowing the recorder to resume
+A possible workaround on underpowered systems is the use of the burnfree or
+similar feature, allowing the recorder to resume.
 .PP
 Root permissions are usualy required to get higher process scheduling priority.
 .PP
@@ -1005,16 +1006,19 @@
 .TP
 .B burnfree 
 Turn the support for Buffer Underrun Free writing on.
-This only works for drives that support Buffer Underrun Free technology.
+This only works for drives that support Buffer Underrun Free technology, which
+is available on most drives manufactured in this millenium. 
 This may be called:
 .BR "Sanyo BURN-Proof" ,
 .BR "Ricoh Just-Link" ,
 .B "Yamaha Lossless-Link"
 or similar.
 .sp
-The default is to turn 
-.B BURN-Free
-off, regardless of the defaults of the drive.
+This option is deprecated and is mentioned here for documentation purposes
+only. The BURN-Free feature is enabled by default if the drive supports it.
+However, use of BURN-Free may cause decreased burning quality. Therefore it can
+be useful to disable it for certain purposes, eg. when creating a master copy
+for mass CD production.
 .TP
 .B noburnfree 
 Turn the support for Buffer Underrun Free writing off.
@@ -1890,9 +1894,7 @@
 reduce the write speed to a value below the read speed of the source drive
 (e.g.
 .BR speed=12 ),
-and switch the burn-free
-option for the recording drive on by adding
-.BR driveropts=burnfree .
+and get a CD/DVD drive with BURN-Free feature if it is not available yet.
 .PP
 To set drive options without writing a CD (e.g. to switch a drive
 to single session mode), run
@@ -2020,7 +2022,7 @@
 is an identifier for a specific drive on the system.
 Such an identifier may not contain the characters ',', '/', '@' or ':'.
 .sp
-Each line that follows a label contains a TAB separated list of items.
+Each line that follows a label contains a whitespace separated list of items.
 Currently, four items are recognized: the SCSI ID of the drive, the
 default speed that should be used for this drive, the default FIFO size
 that should be used for this drive and drive specific options. The values for 
@@ -2028,20 +2030,20 @@
 and
 .I fifosize
 may be set to -1 to tell wodim to use the global defaults.
-The value for driveropts may be set to "" if no driveropts are used.
+The value for driveropts may be omited or set to "" if no driveropts are used.
 A typical line may look this way:
 .sp
-teac1= 0,5,0	4	8m	""
+plex760= 0,5,0	12	50m	varirec=1
 .sp
-yamaha= 1,6,0	-1	-1	burnfree
+pioneer= /dev/hdd	-1	-1
 .sp
 This tells
 .B wodim
 that a drive named
-.I teac1
-is at scsibus 0, target 5, lun 0 and should be used with speed 4 and
-a FIFO size of 8 MB.
-A second drive may be found at scsibus 1, target 6, lun 0 and uses the
+.I plex760
+is at scsibus 0, target 5, lun 0 and should be used with speed 12 and
+a FIFO size of 50 MB. It also uses some device specific parameter.
+A second drive may is accesible via the device file /dev/hdd and uses the
 default speed and the default FIFO size.
 .RE
 

Modified: cdrkit/trunk/wodim/wodim.c
===================================================================
--- cdrkit/trunk/wodim/wodim.c	2006-12-19 04:43:29 UTC (rev 627)
+++ cdrkit/trunk/wodim/wodim.c	2006-12-21 00:06:47 UTC (rev 628)
@@ -1350,11 +1350,9 @@
 				errmsgno(EX_BAD,
 				"The current problem looks like a buffer underrun.\n");
 				if ((dp->cdr_dstat->ds_cdrflags & RF_BURNFREE) == 0)
-					errmsgno(EX_BAD,
-				"Try to use 'driveropts=burnfree'.\n");
+					errmsgno(EX_BAD, "Try to use 'driveropts=burnfree'.\n");
 				else {
-					errmsgno(EX_BAD,
-				"It looks like 'driveropts=burnfree' does not work for this drive.\n");
+					errmsgno(EX_BAD, "It looks like 'driveropts=burnfree' does not work for this drive.\n");
 					errmsgno(EX_BAD, "Please report.\n");
 				}
 




More information about the Debburn-changes mailing list