Commit Graph

950 Commits

Author SHA1 Message Date
rocky
ae7667d336 Remove probably some serious lapses:
Now check all reads for exceeding end of disc and info messages can be
logged. We were also returning 0 on error reads. Regularize by using a
couple of macros.
2005-01-21 02:57:59 +00:00
rocky
e6fc7b7ad2 Missed a couple of env -> p_env's 2005-01-20 14:58:22 +00:00
rocky
cd9d8beba5 Add Scott Wood's code for issuing SCSI-MMC command. It doesn't work though. 2005-01-20 12:36:21 +00:00
rocky
d6b930e6cc Add get_blocksize. There may be some breakage as I haven't tested all of the
various drivers yet.
2005-01-20 05:07:00 +00:00
rocky
bd333bc73f Move a set_speed and set_blocksize (via MMC)from driver-specific
places to generic.

Add _t to yet another type.
2005-01-20 01:00:52 +00:00
rocky
f7ebed2287 Add DRIVER_OP_UNINIT and change appropriate DRIVER_OP_ERROR's to
DRIVER_OP_UNINIT.
2005-01-20 00:36:38 +00:00
rocky
8588f4ae8e Type cast that might make this more robust. 'Dunno. 2005-01-19 17:25:50 +00:00
rocky
1b40bc3018 Even though this may not be nstrictly the way the original
cdda_interface does things, add a spaces between the vendor, model,
and revison number.
2005-01-19 17:24:58 +00:00
rocky
a5dd90adb2 Change to use driver_return_t 2005-01-19 09:42:32 +00:00
rocky
9b8586d97f Change to use driver_return_t. 2005-01-19 09:40:50 +00:00
rocky
7796f6cce7 Try to regularize driver operation return codes via a new enumeation
return type. (I may regret this later as we return ioctl's int value
in some cases).

cdio.h: get/set_arg moved to device.
2005-01-19 09:23:24 +00:00
rocky
634ac3f979 Do not try to process if we got errors. More needs to be done, but this is a start. 2005-01-18 16:05:29 +00:00
rocky
389c5e0057 Got test backwards. 2005-01-18 12:34:21 +00:00
rocky
93d29803c0 Attempt SCSI-MMC speed setting (e.g. for M$). 2005-01-18 05:41:58 +00:00
rocky
8edd441cbd Add FreeBSD set speed routine. 2005-01-18 04:03:06 +00:00
rocky
00dfa4d39a Bug in accessing via snprintf a NULL string. 2005-01-18 03:03:56 +00:00
rocky
f1a3c2f51c Add set_speed for OSX. 2005-01-18 02:18:49 +00:00
rocky
3a99718830 Add set_speed for Solaris via ioctl and set_blocksize via SCSI-MMC.
Update comments in GNU/Linux driver.
2005-01-18 01:48:42 +00:00
rocky
e5bdc956e9 Add interface for setting speed and blocksize. Reinstated it in
cd-paranoia libraries and command.

Some more variable convention regularizations.
2005-01-18 00:57:19 +00:00
rocky
17c55ea59b add _t to another time. driver_id inside p_cdio wasn't initialized. 2005-01-17 17:20:09 +00:00
rocky
b0772e83a6 At least parse DATAFILE lines more fully. Things are better but we're
still having problems reading the ISO-9660 of sms VCD's.
2005-01-16 04:28:02 +00:00
rocky
49d5e4dca2 It appears for cdrdao datastart needs to be larger. Could possibly be
unsigned too.
2005-01-16 04:25:16 +00:00
rocky
aa50f5e09a Add regression-test mechanism. Right now we only have underrun testing.
Perhaps more later...
cd-paranoia: -x option added to specify what to test.
2005-01-15 16:05:44 +00:00
rocky
9137470a8e Redo in a way simpler way that and in a way that valgrind doesn't
think there's a memory leak.
2005-01-15 03:22:48 +00:00
rocky
a3bafd4ba7 cooked_interface.c: check for TOC-read error.
cd-paranoia.c: check that list of drives isn't just NULL list.
2005-01-15 02:23:04 +00:00
rocky
87c4b8d39b Small error. Used the wrong variable for extracting the revision. 2005-01-14 22:04:24 +00:00
rocky
5c34644e0c More changes to deal with error conditions. 2005-01-14 21:41:36 +00:00
rocky
15483ee573 win32.c: was not indicating a failure when reading the TOC failed.
testparanoia.c: better check that there are drives.
device.c: I think better checking on drive capability. At least we now
	check for the TOC failure case and not add a drive there.
2005-01-14 19:25:45 +00:00
rocky
deaa91326f Looked at WAV spec format. Probably (but I'm not certain) the thing
that was wrong was the test program which needs to byte swap. What
confuses me now is how the media players sort this out.
2005-01-14 04:09:30 +00:00
rocky
165363409d The sense I'm getting is that while the bigendianp detection is
clever, it isn't complete. It may be that we need to use this along in
conjunctin with the endianness of the OS. That is instead of
big/little endian, what's needed is same/not same endian.

For now, the simplest thing is to just disable all of this and wait to
discover a CD-ROM drive where we have a problem.
2005-01-14 03:41:11 +00:00
rocky
111db2e6e0 Fix a couple memory leaks by freeing resources. 2005-01-14 01:37:33 +00:00
rocky
bcff4bc236 Reinstate more of the libcdio routines. 2005-01-14 01:36:11 +00:00
rocky
fde6bbbb1b Put back original cdparanoia byte-swapping routines until we smoke out what's
going wrong on cygwin.
2005-01-13 21:38:21 +00:00
rocky
17484518c2 Fix syntax error of last commit 2005-01-13 19:39:24 +00:00
rocky
bdd112028a Remove warning and make sure variable is initialized 2005-01-13 19:35:42 +00:00
rocky
424b735b92 Add array to convert paranoia_mode_cb into a string. 2005-01-13 04:00:15 +00:00
rocky
4da210587e Save track flags for FreeBSD (preemphasis, # number of audio channels
and copy permit)
2005-01-12 12:15:25 +00:00
rocky
15527b8cb1 Non-functional changes:
Small coding style changes: add _t to some types, p_/psz_ to some variables
  Update/add doxygen comments
  add missing regression test output
2005-01-12 11:34:51 +00:00
rocky
725396e56f lib/{driver,iso9660}/Makefile.am: new improved script for handling the case
where there are no local symbols (or global symbols).
libsio9660.sym: The last remaining local symbol really should be global.

Change made on behalf of Nicolas Boullis.
2005-01-11 00:34:10 +00:00
rocky
e49e11fbc7 Had commented out bigendiap avoidance. Use - things go much faster. 2005-01-10 03:39:57 +00:00
rocky
fe0fe0a17a toc.c: don't assume first sector is 1.
cdda.h: document TOC better.
p_block.c: revise getting paranoia first/last sector
2005-01-10 02:10:46 +00:00
rocky
3c734f4c25 scsi_mmc.c: style differences. Need to do something about checking to
make sure we don't exceed the disc though.
vcd_demo.right: output has changed yet again.
2005-01-09 16:26:51 +00:00
rocky
6f7e9e182b cdio.{c,h}: moved various reading and device/driver routines out into the below
read.{c,h}: separate include for the reading routines.
disc.{c,h}: more moved here from corresponding cdio.
device.c: a place for device/driver related routines.
interface.c: break up line to make debugging easier.
2005-01-09 16:07:46 +00:00
rocky
ba7d7c0684 Got BE and LE conversion backwards. Caused cdda-endianess determination
to fail.
2005-01-09 12:32:19 +00:00
rocky
b33726b00e Fix my recent breakage in adding back GNU/Linux endian determination.
Need to seet nsectors if not GNU/Linux. Some lint things for non-GNU/Linux.
2005-01-09 01:50:56 +00:00
rocky
64addbf50c Fix a bad bug where we were requesting potentially a huge number of blocks
(-1 unsigned). Fix both the driver to disallow such a nonsensical thing as well
as just don't make the request.
2005-01-09 00:47:07 +00:00
rocky
8b4a97cd46 Handle the case were we want to open only real CD-ROM devices versus
those where we're willing to open CD-images and real CDs.

Don't know why I never fixed this earlier.
2005-01-09 00:12:21 +00:00
rocky
b9778d3b42 Compilation fix for non-GNU/linux 2005-01-08 20:47:03 +00:00
rocky
c6e33b1a1c Put back some of the GNU/Linux-ism for detecting drive endian-ness.
The data-driven endian correction isn't working correctly.

Ultimately though this code should move down into libcdio (and get
removed from here.)
2005-01-08 20:39:40 +00:00
rocky
f4849ba055 Better about handling non-Unix devices. 2005-01-08 00:56:09 +00:00