Commit Graph

458 Commits

Author SHA1 Message Date
R. Bernstein
92a8bcb8c8 Add Leon Merten Lohse's cdtext test images.
cdrdao.c reduse severity of not finding source - may change my mind later about this...
2011-11-25 13:42:23 -05:00
rocky
9c84c2b7b3 Check that we can find data source and give error when we can't 2011-11-25 09:50:27 +01:00
R. Bernstein
dbf6d24765 1) cdtext objects are no longer associated with a track but with the disc.
2) - cdio_get_cdtext no longer takes track as an argument
- cdtext_get, cdtext_get_const, cdtext_set require track argument
3) Language, Genre, Genre Code and Encoding Fields are now properly parsed and stored in the cdtext object
4) Added public function cdio_get_cdtext_raw to extract the binary CD-Text
5) Added CDTEXTFILE keyword logic in cue sheet parser. Parses binary/raw CD-Text files
6) Added cdtext_genre2str to convert genre code
7) altered the example programs, test drivers, cdda-player and cd-info to work with these changes
8) Added test case
9) A few smaller changes
A disc either holds CD-Text for all the tracks or does not hold any. Therefore a CD-Text object for the whole disc seems more natural to me. It also enables us to store global fields, like genre, encoding, language.

Patch was tested on GNU/Linux 32 bit running Gentoo.
2011-11-24 20:54:40 -05:00
R. Bernstein
e0b2ee826d Don't error out on handling "NO PRE_EMPHASIS" in cdrdao TOC.
Savannah bug #34826:
2011-11-16 20:36:22 -05:00
R. Bernstein
6822c3543e Makefile.am: Increase shared library "current" numbers, zeroing "revision" and "age ".
configure.ac: require autoconf at least 2.67
2011-10-21 15:32:57 -04:00
R. Bernstein
f215cad224 Make sure config.h or the copy of that gets included only once to reduce duplicate include
warnings.
2011-10-20 19:44:10 -04:00
R. Bernstein
b7203f5d6b Correct test for enable_cdda to accept either curses.h *or* ncurses.h
Add <strings.h> in more places that use bzero. Checks suggested by Blake Jones.

Add preprocessor symbol CDIO_CONFIG_H to <cdio_config.h>
2011-10-20 18:24:10 -04:00
R. Bernstein
9eb137206c sprintf -> snprintf 2011-10-19 21:12:14 -04:00
rocky
b4b810eaf9 solaris.c: sprintf->snprintf as implicitly suggested by Thomas Schmitt 2011-10-20 03:09:40 +02:00
R. Bernstein
47e4844390 Solaris patch from Thomas Schmitt to make the Solaris driver capable
of detecting drives without vold, and how to implement access mode
MMC_RDWR.
2011-10-18 20:00:56 -04:00
rocky
22b544bde6 Fix a couple of sizeof syntax errors in converting sprintf to snprintf. See bug #34125. 2011-08-25 00:13:36 -04:00
rocky
940b7cd848 patch from Honza Horak using Coverity's static analysis tool. 2011-05-30 15:19:22 -04:00
R. Bernstein
9be0980337 Change a number of sprintf's to snprintf. 2011-05-27 17:50:56 -04:00
R. Bernstein
7d23f847e6 Add git install instructions. Simplify and customize INSTALL. Add dependency to cause version.texi to get created. Update my email address. 2011-05-19 07:43:38 -04:00
rocky
f2438edcbc Add ISRC track info to cd-info output. Code from Scot C. Bontrager. 2011-05-18 09:48:03 -04:00
rocky
9633ef3411 Make sure mmc_isrc_track_read_subchannel is a global symbol 2011-05-17 23:29:40 -04:00
rocky
d10938c43c Add mmc routine to get the ISRC information on a CD that is in the q subchannel
but not showing up in the CDTEXT. Contributed by Scot C. Bontrager.
2011-05-17 22:59:36 -04:00
R. Bernstein
a20dbc952c From Leon Merten Lohse https://savannah.gnu.org/patch/?7532:
* discid field extraction
 * genre field extraction (experimental)
 * blocksize field extraction
 * read charcode from blocksize field
 * some unneeded comments removed
 * unneeded local variables removed
 * typos
2011-04-23 14:43:21 -04:00
R. Bernstein
d7235c1804 CD-text patches from Leon Merten Lohse to handle double-byte strings. See https://savannah.gnu.org/patch/?7516 2011-03-28 12:27:12 -04:00
rocky
883e4e4a96 From Thomas Schmitt: in order to preserve the current behavior over
the CAM changes.
2010-05-07 07:59:25 -04:00
R. Bernstein
9a59c307ac Track discmode_t (include/disc.h) enumeration changes 2010-03-23 16:10:42 -04:00
R. Bernstein
c10bee26b6 mmc_util.{c,h} Break simpler non-dependent mmc helper or utility routines from mmc.{c,h} 2010-02-22 15:18:59 -05:00
R. Bernstein
6e53c6b19f Small change 2010-02-11 06:39:06 -05:00
R. Bernstein
ff49db8449 Move another routine from mmc.c into mmc_hl_cmds.c 2010-02-11 06:35:22 -05:00
R. Bernstein
7f37476924 Split off MMC tests which don't involve exclusive access from those that do. 2010-02-10 22:30:37 -05:00
R. Bernstein
80304a8cef Add mmc_read_disc_information. Change get_disctype to use it and thus it
moves from mmc.c into mmc_hl_cmds.c. Status is now the return type, not
erasable.

Split mmc_cmds.h into mmc_ll_cmds.h and mmc_hl_cmds.h.
test/driver/mmc.c for invalid page check we get the right sense key,
asc, and ascq.
2010-02-09 22:39:05 -05:00
R. Bernstein
245a9a645f Clear sense request valid flag. 2010-02-09 21:35:00 -05:00
R. Bernstein
1f41c50b09 sort libcdio.sym. Remove duplicated tests. 2010-02-09 07:49:52 -05:00
R. Bernstein
cbe5ebacd0 Missing some more externals and a file which needs to go into the distribution tarball. 2010-02-09 03:31:28 -05:00
R. Bernstein
c8b86ee520 Drop version number on automake. Add missing externals to libcdio.sym 2010-02-09 03:02:28 -05:00
R. Bernstein
5656a0b14c Remove duplicate cdio_mmc_disctype_t. 2010-02-08 19:01:14 -05:00
R. Bernstein
100654b51b Fix all fo the bugs I introduced "improving" the code of others.
mmc_ll_cmds.c: mmc_mode_select and mmc_get_configuration now work.
mmc_hl_cmds.c: bug introduced by turning a var into a pointer to that variable.
2010-02-08 16:56:04 -05:00
R. Bernstein
2d3b7d28b4 Add SCSI-MMC GET CONFIGURATION.
Add Frank Endres' disc type determination via MMC.
Be more careful to suffix with CDIO_MMC which I hope will reduce possible name conflicts.
2010-02-07 21:04:21 -05:00
R. Bernstein
aa7f7e1315 Start populating mmc/mmc_hl_cmds.c. Create mmc directory in preparation
for making it a library.

mmc.h:  CDIO_MMC_GPCMD_ALLOW_MEDIUM_REMOVAL ->
        CDIO_MMC_GPCMD_PREVENT_ALLOW_MEDIUM_REMOVAL
mmc.c:  Move mm_eject_media and mmc_set_drive_speed to mmc/mmc_hl_cmds.c
mmc_ll_cmds.c: add mmc_prevent_allow_medium_removal,
               move mmc_mode_sense to mmc/mmc_hl_cmds.c
2010-02-07 19:21:33 -05:00
R. Bernstein
d3a0ba06e1 Move more towards making MMC a library. Start to reorganize more to
break out 1-1 SCSI-MMC commands (in mmc_ll_cmds.c) from higher-level
commands which use the lower-level ones.
2010-02-07 18:35:47 -05:00
R. Bernstein
bf7d63b435 Add mcc_test_unit_ready and mmc_mode_select (buggy). Allow for timeouts on
mmc commands - more work needed here too.
2010-02-07 07:20:28 -05:00
R. Bernstein
51f6eb6912 Small cleanups 2010-02-06 23:27:46 -05:00
R. Bernstein
f93e673fd5 lib/driver/mmc.c - DRY code. Warning - might have introduced breakage here
*mmc*: mmc_start_stop_media -> mmc_start_stop_unit,
 CDIO_MMC_GPCMD_START_STOP -> CDIO_MMC_GPCMD_START_STOP_UNIT
cdio++/mmc.hpp: Regularize Doxygen comment format.
2010-02-06 22:53:03 -05:00
R. Bernstein
1687e2633f Start to split off specific mmc commands from the lower-level internals. 2010-02-06 11:59:35 -05:00
R. Bernstein
9cbaad6247 Add CDIO_DISC_MODEs to correspond to updated DVD Book types. 2010-02-06 08:48:22 -05:00
R. Bernstein
0234042d9a dvd.h: Update DVD book types
disc.c: Add CDIO_DISC_MODE_DVD_OTHER

Thanks to Frank Endes and Thomas Schmitt for observing the problem and suggesting the fixes.
2010-02-06 07:54:46 -05:00
R. Bernstein
8f963ddd59 Had erroneously omitted CDIO_DISC_MODE_DVD_OTHER. Omission pointed out by Frank Endres. 2010-02-06 07:11:40 -05:00
R. Bernstein
e3d2e21123 glossary.texi, mmc.h: note acronyms SPC-3, MMC-5, SBC-2.
glossary.texi: start using texinfo cross references
test/driver/mmc.c: use provided routine for start/stop unit. Warning: might have broken things here.
2010-02-05 13:50:07 -05:00
R. Bernstein
0ae0a2ca8b Revise with info from dpANS SCSI Primary Commands-3 (SPC-3). Use sense
data structure in mmc_last_cmd_sense.
2010-02-05 07:40:31 -05:00
R. Bernstein
35b6969a45 Add SCSI sense key values. 2010-02-05 03:37:27 -05:00
R. Bernstein
34bc1ec0b4 mmc.h: Big endian bytes is not the same as big_endian bitfield
mmc.c: more pervasive use of cdio's mmc definitions.
2010-02-04 04:24:43 -05:00
R. Bernstein
e3a5e16cbb mmc.h: TEST_UNIT_READY MMC command opcode
device.h: Add DRIVER_OP_MMC_SENSE to driver_return_code_t.

win32_ioctl.c: work around MS bug where buffer sizes are 0 or 1. Set
return code status if sense data passed back. Translate bad parameter
MS Windows error into a driver_return_code_t error.

test/driver/mmc.c: Reinstate old logic now that the MS Windows driver
has been made to work more like other drivers and copes with some of
the MS Windows causing failure here.
2010-02-03 21:43:05 -05:00
R. Bernstein
8083e17683 Fix in changing data types. 2010-02-03 05:30:10 -05:00
R. Bernstein
991ea303d7 Add more doxygen comments as to sense request information means and add a typedef for mmc_sense_request.
Use this in win32_ioctl.c.
2010-02-03 05:22:20 -05:00
R. Bernstein
e281b22c3c Add type definition for SCSI sense data. 2010-02-03 04:53:25 -05:00