[Libburn] Drive data/properties gathering
Stéphane LOEUILLET
stephane.loeuillet at tiscali.fr
Fri May 7 15:47:08 PDT 2004
hello libburn ML readers,
i decided to give libburn a try to see what needed work
so, i gathered latest CVS, plenty of SCSI docs (MMC-1 std to 4 draft,
SPC, ...), and a few burners.
i "heard" that Todd from Optimystic was working on improving libisofs by
addind Rock Ridge, libburn maintainers working on TAO support but i saw
noone working actively on communication with the drive.
what seems to need work :
Error handling when using MODE_SELECT_10 to test TAO/SAO/...
availability (is there a better way to do it ? like a page mode that
describe this kind of capability)
Enhanced MODE_SENSE_10 probing : actually, only few informations are
extracted from page mode 2Ah. (basic MMC-1 i would say but nothing like
MMC2 or MMC3 info like available write speed list)
Handling of future MMC-4 drives : for now, MMC-4 is still a draft but i
suppose there are already some drives around that support early MMC-4.
The problem with MMC-4 is that page mode 2Ah is deprecated, in favour of
a feature/capability list. (which is far clearer that this infinite ugly
bit-field that 2Ah is)
i'd like your feedback on a few points :
- how should capabilities be presented ?
extending the drive_info structure infinitly would make it as ugly as
page mode 2Ah is.
or should we provide a feature list like what MMC-4 (and perhaps even
earlier versions) provide, as a linked list ? (recreating it from 2Ah in
the case that the drive is too old and does not provide it)
or even several lists :
one for accepted media types
(DVD-R/DVD+R/DVD-RW/DVD+RW/DVD+R9/CD-R/CD-RW/DD-CD/CD-MO/DVD+R DL/....)
one for writing modes :
(Packet writting, SAO 96R, DAO 16, TAO, ...)
and what does not fit in a list going to a structure like we have
actually
- what info are really needed ?
few would need to know their drive supports bar-code reading, CD+G, CD
Extra, CD-I/Photo CD, VCD/SVCD, ...
i already implemented "available write speed list" (for MMC-3 drives
only) even if actually i don't know where to store those speeds.
i did it at the end of the MODE_SENSE_10/2Ah call. i don't yet know why
but it seems this list is sensitive to the type of media which has last
been inserted :
on my combo CD/DVD burner, the reported available speeds aren't the same
depending on the media type. i need to find a way to query those either
on demand, specifying a fake media type as parameter to query each speed
list or only just before burn time.
that's all for now
++
--
Stéphane LOEUILLET <stephane.loeuillet at tiscali.fr>
More information about the libburn
mailing list