Re: cdrecord: failure in auto-formatting DVD+RW Verbatim media on USB-TSSTcorp
Giulio Orsero <giulioo@gmail.com> wrote:
> On Tue, 13 Jan 2009 10:43:30 +0100, Joerg.Schilling@fokus.fraunhofer.de
> (Joerg Schilling) wrote:
>
> >Plese edit cdrecord/scsi_mmc.c line 1362 and change:
> >to:
> >
> > printf("Disk type: ");
> > switch (dip->disk_type) {
> >
> > case SES_DA_ROM: printf("CD-DA or CD-ROM"); break;
> > case SES_CDI: printf("CDI"); break;
> > case SES_XA: printf("CD-ROM XA"); break;
> > case SES_UNDEF: printf("undefined"); break;
> > default: printf("reserved %d", dip->disk_type); break;
> > } else {
> >
> >and send the result from cdrecord -v -minfo for an unformatted medium that
> >causes the problem.
> (I took out the "else {")
>
> It just says
> Disk type: CD-DA or CD-ROM
> it does not reach the "default:" label.
This is why cdrecord does not auto-format the medium.
Your drive returns an incorrect disk type identifyer.
see drv_dvdplus.c:
if (profile == 0x001A) {
dsp->ds_flags |= DSF_DVD_PLUS_RW; /* This is a DVD+RW */
if (dip->disk_status == DS_EMPTY && /* Unformatted */
dip->disk_type == SES_UNDEF) { /* Not a CD */
dsp->ds_flags |= DSF_NEED_FORMAT;
if ((dp->cdr_dstat->ds_cdrflags & RF_PRATIP) != 0)
print_format_capacities(scgp);
return (0);
}
} else if (profile == 0x001B) {
This way:
if (profile == 0x001A) {
dsp->ds_flags |= DSF_DVD_PLUS_RW; /* This is a DVD+RW */
if (dip->disk_status == DS_EMPTY) { /* Unformatted */
it should work for you.
Jörg
--
EMail:joerg@schily.isdn.cs.tu-berlin.de (home) Jörg Schilling D-13353 Berlin
js@cs.tu-berlin.de (uni)
joerg.schilling@fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/
URL: http://cdrecord.berlios.de/private/ ftp://ftp.berlios.de/pub/schily
Reply to: