[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Libcdio-devel] Burned CD-RW and DVD+RW via libcdio MMC interface
From: |
Thomas Schmitt |
Subject: |
[Libcdio-devel] Burned CD-RW and DVD+RW via libcdio MMC interface |
Date: |
Sat, 19 Dec 2009 16:43:57 +0100 |
Hi,
at the risk to become annoying i want to report
that i managed to blank a CD-RW and to write a
session of Mode 1 sectors in TAO mode via
libcdio's mmc_run_cmd(). I also wrote to a
DVD+RW.
This is implemented as experimental libburn
system adapter os-libcdio.h and sg-libcdio.c.
(libburn SVN revision 2959)
Both images verified against their recorded MD5
checksums afterwards.
But:
- I had to make changes in libcdio:
- Fix the reported bug about data transfer
direction in
run_mmc_cmd_linux()
- Introduce as third transfer direction
SCSI_MMC_DATA_NONE
- Open in cdio_open_am_linux() the drive by
cdio_generic_init(_data, O_RDWR|O_NONBLOCK)
rather than O_RDONLY.
- An attempt to write a CD SAO session failed.
I did not yet find out why.
- mmc_run_cmd() does not give me the SCSI sense
reply. libburn interprets Key,Asc,Ascq
to learn what went wrong. Not only in case of
severe errors, but also when performing
try-and-error gestures.
Without Key,Asc,Ascq the new adapter
libburn/sg-libcdio.c
has to issue a dummy reply in case of a failed
MMC command.
(Currently this keeps libburn from ending after
eject because it waits for the
Media-Not-Present reply and always gets the
dummy Not-Ready reply.)
------------------------------------------------
Would you be interested in my bug fix ?
Are there experts who could implement direction
SCSI_MMC_DATA_NONE and write permission in the
various MMC drivers and maybe test libburn on
those drivers ?
(Both changes are not only necessary for libburn
but for any attempt to use libcdio for writing,
i believe.)
Would "access mode" of cdio_open_am() be a
way for controlling O_RDONLY versus O_RDWR ?
(E.g. a new mode "MMC_RDWR")
Have a nice day :)
Thomas
- [Libcdio-devel] Burned CD-RW and DVD+RW via libcdio MMC interface,
Thomas Schmitt <=