On Tue, Mar 4, 2008 at 7:42 AM, R. Bernstein <[EMAIL PROTECTED]> wrote: > Matheus Izvekov writes: > > On Tue, Mar 4, 2008 at 1:16 AM, R. Bernstein <[EMAIL PROTECTED]> wrote: > > > Sorry, but I'm not sure I understand the lingo you are using and > > > what you want to do. Probably libcdio doesn't do what you want, but > > > there may be code that does something similar to what you want. > > > > The problem I'm having can be reproduced in the utility cd-read. > > Try reading a data sector using -m audio. I can't get the whole 2352 bytes > > of the sector this way. > > Not all CD-ROMs and libcdio drivers will allow one to even read a > track as an audio sector if that track isn't listed in the TOC as > being an audio or red-book track. On the other hand, obviously, some > do. Bit if this doesn't do what you imagine, this should not be > surprising.
Well to simplify things, imagine i want to implement a cdrom drive emulator, like daemon-tools, using libcdio. Do you see the issues now? What I am doing is just implementing the playstation cdrom drive. Some times the user (a game for example, not the guy on the control pad) will issue a command to read the whole 2352 bytes of a sector, and the real psx just accepts and does that correctly, no matter what kind of sector it is. > > > Then I use mmc_read_cd to do that, but then this > > doesnt work on image files. > > The mmc_* routines issue multimedia commands to a CD-ROM drive. Some > support for simulating CD-ROM behavior is tolerated but there is only > so far one can go pretending an image file is a CD-ROM. With some > effort, possibly one can jimmy up routines to always return false if > you ask if the media has been changed, but what does it mean to > "eject" a CD image file? (I think here libcdio returns a status like > "not supported") It seems like a good compromise, although I dont see a dilemma here. For the operations that dont make sense, just dont implement them like you said. And for a CD image file, almost everything makes sense, except maybe in case of libcdio eject itself. For an example of this take a look at daemon-tools. And they even implement ejecting.... > > > > > The weird thing is that doing the same thing on a image file, > cddio_read_sector > > doesnt return an error, but gives some garbage instead. > > Perhaps an error should be returned. The weird thing to me is that you > seem to want to just try any a read of a sector in audio format, > whether it makes sense or not. There is a saying: garbage in, garbage > out. > > > _______________________________________________ > Libcdio-help mailing list > [email protected] > http://lists.gnu.org/mailman/listinfo/libcdio-help > _______________________________________________ Libcdio-help mailing list [email protected] http://lists.gnu.org/mailman/listinfo/libcdio-help
