diff --git a/include/cdio/audio.h b/include/cdio/audio.h index ab64e419..aeba2290 100644 --- a/include/cdio/audio.h +++ b/include/cdio/audio.h @@ -1,5 +1,5 @@ /* -*- c -*- - $Id: audio.h,v 1.4 2005/03/05 09:11:44 rocky Exp $ + $Id: audio.h,v 1.5 2005/03/05 09:26:52 rocky Exp $ Copyright (C) 2005 Rocky Bernstein @@ -83,7 +83,9 @@ extern "C" { @param p_cdio the CD object to be acted upon. */ - driver_return_code_t cdio_audio_play_msf (CdIo_t *p_cdio, msf_t *p_msf); + driver_return_code_t cdio_audio_play_msf (CdIo_t *p_cdio, + msf_t *p_start_msf, + msf_t *p_end_msf); /*! Playing CD through analog output at the desired track and index diff --git a/lib/driver/Makefile.am b/lib/driver/Makefile.am index edbae766..f269f531 100644 --- a/lib/driver/Makefile.am +++ b/lib/driver/Makefile.am @@ -1,4 +1,4 @@ -# $Id: Makefile.am,v 1.8 2005/03/01 00:41:34 rocky Exp $ +# $Id: Makefile.am,v 1.9 2005/03/05 09:26:52 rocky Exp $ # # Copyright (C) 2003, 2004, 2005 Rocky Bernstein # @@ -52,16 +52,13 @@ EXTRA_DIST = image/Makefile FreeBSD/Makefile MSWindows/Makefile \ noinst_HEADERS = cdio_assert.h cdio_private.h portable.h libcdio_sources = \ - _cdio_aix.c \ - _cdio_bsdi.c \ _cdio_generic.c \ - _cdio_linux.c \ - _cdio_osx.c \ _cdio_stdio.c \ _cdio_stdio.h \ _cdio_stream.c \ _cdio_stream.h \ - _cdio_sunos.c \ + aix.c \ + bsdi.c \ audio.c \ cd_types.c \ cdio.c \ @@ -75,6 +72,7 @@ libcdio_sources = \ FreeBSD/freebsd_cam.c \ FreeBSD/freebsd_ioctl.c \ generic.h \ + gnu_linux.c \ image.h \ image/bincue.c \ image/cdrdao.c \ @@ -82,6 +80,7 @@ libcdio_sources = \ image_common.h \ image/nrg.c \ image/nrg.h \ + logging.c \ mmc.c \ mmc_private.h \ MSWindows/aspi32.c \ @@ -89,9 +88,10 @@ libcdio_sources = \ MSWindows/win32_ioctl.c \ MSWindows/win32.c \ MSWindows/win32.h \ - logging.c \ + osx.c \ read.c \ sector.c \ + solaris.c \ track.c \ util.c diff --git a/lib/driver/_cdio_aix.c b/lib/driver/aix.c similarity index 99% rename from lib/driver/_cdio_aix.c rename to lib/driver/aix.c index f9903741..6eb1db51 100644 --- a/lib/driver/_cdio_aix.c +++ b/lib/driver/aix.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_aix.c,v 1.11 2005/02/07 03:36:02 rocky Exp $ + $Id: aix.c,v 1.1 2005/03/05 09:26:52 rocky Exp $ Copyright (C) 2004, 2005 Rocky Bernstein @@ -37,7 +37,7 @@ #ifdef HAVE_AIX_CDROM -static const char _rcsid[] = "$Id: _cdio_aix.c,v 1.11 2005/02/07 03:36:02 rocky Exp $"; +static const char _rcsid[] = "$Id: aix.c,v 1.1 2005/03/05 09:26:52 rocky Exp $"; #ifdef HAVE_GLOB_H #include diff --git a/lib/driver/audio.c b/lib/driver/audio.c index 4e0ee248..3288f724 100644 --- a/lib/driver/audio.c +++ b/lib/driver/audio.c @@ -1,5 +1,5 @@ /* - $Id: audio.c,v 1.3 2005/03/05 09:11:44 rocky Exp $ + $Id: audio.c,v 1.4 2005/03/05 09:26:52 rocky Exp $ Copyright (C) 2005 Rocky Bernstein @@ -68,12 +68,12 @@ cdio_audio_pause (CdIo_t *p_cdio) @param p_cdio the CD object to be acted upon. */ driver_return_code_t -cdio_audio_play_msf (CdIo_t *p_cdio, msf_t *p_msf) +cdio_audio_play_msf (CdIo_t *p_cdio, msf_t *p_start_msf, msf_t *p_end_msf) { if (!p_cdio) return DRIVER_OP_UNINIT; if (p_cdio->op.audio_play_msf) { - return p_cdio->op.audio_play_msf (p_cdio->env, p_msf); + return p_cdio->op.audio_play_msf (p_cdio->env, p_start_msf, p_end_msf); } else { return DRIVER_OP_UNSUPPORTED; } diff --git a/lib/driver/_cdio_bsdi.c b/lib/driver/bsdi.c similarity index 99% rename from lib/driver/_cdio_bsdi.c rename to lib/driver/bsdi.c index 99e3aa37..0d0bca34 100644 --- a/lib/driver/_cdio_bsdi.c +++ b/lib/driver/bsdi.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_bsdi.c,v 1.16 2005/03/03 10:32:44 rocky Exp $ + $Id: bsdi.c,v 1.1 2005/03/05 09:26:52 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2002, 2003, 2004, 2005 Rocky Bernstein @@ -27,7 +27,7 @@ # include "config.h" #endif -static const char _rcsid[] = "$Id: _cdio_bsdi.c,v 1.16 2005/03/03 10:32:44 rocky Exp $"; +static const char _rcsid[] = "$Id: bsdi.c,v 1.1 2005/03/05 09:26:52 rocky Exp $"; #include #include diff --git a/lib/driver/cdio_private.h b/lib/driver/cdio_private.h index 885df617..5aafd005 100644 --- a/lib/driver/cdio_private.h +++ b/lib/driver/cdio_private.h @@ -1,5 +1,5 @@ /* - $Id: cdio_private.h,v 1.18 2005/03/05 09:11:44 rocky Exp $ + $Id: cdio_private.h,v 1.19 2005/03/05 09:26:52 rocky Exp $ Copyright (C) 2003, 2004, 2005 Rocky Bernstein @@ -75,7 +75,9 @@ extern "C" { @param p_env the CD object to be acted upon. */ - driver_return_code_t (*audio_play_msf) ( void *p_env, msf_t *p_msf ); + driver_return_code_t (*audio_play_msf) ( void *p_env, + msf_t *p_start_msf, + msf_t *p_end_msf ); /*! Playing CD through analog output diff --git a/lib/driver/_cdio_linux.c b/lib/driver/gnu_linux.c similarity index 98% rename from lib/driver/_cdio_linux.c rename to lib/driver/gnu_linux.c index 60ac8c26..4c085af2 100644 --- a/lib/driver/_cdio_linux.c +++ b/lib/driver/gnu_linux.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_linux.c,v 1.36 2005/03/05 09:11:44 rocky Exp $ + $Id: gnu_linux.c,v 1.1 2005/03/05 09:26:52 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2002, 2003, 2004, 2005 Rocky Bernstein @@ -27,7 +27,7 @@ # include "config.h" #endif -static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.36 2005/03/05 09:11:44 rocky Exp $"; +static const char _rcsid[] = "$Id: gnu_linux.c,v 1.1 2005/03/05 09:26:52 rocky Exp $"; #include @@ -227,11 +227,21 @@ audio_pause_linux (void *p_user_data) @param p_cdio the CD object to be acted upon. */ static driver_return_code_t -audio_play_msf_linux (void *p_user_data, msf_t *p_msf) +audio_play_msf_linux (void *p_user_data, msf_t *p_start_msf, msf_t *p_end_msf) { const _img_private_t *p_env = p_user_data; - return ioctl(p_env->gen.fd, CDROMPLAYMSF, p_msf); + struct cdrom_msf cdrom_msf; + + cdrom_msf.cdmsf_min0 = p_start_msf->m; + cdrom_msf.cdmsf_sec0 = p_start_msf->s; + cdrom_msf.cdmsf_frame0 = p_start_msf->f; + + cdrom_msf.cdmsf_min1 = p_end_msf->m; + cdrom_msf.cdmsf_sec1 = p_end_msf->s; + cdrom_msf.cdmsf_frame1 = p_end_msf->f; + + return ioctl(p_env->gen.fd, CDROMPLAYMSF, &cdrom_msf); } /*! diff --git a/lib/driver/_cdio_osx.c b/lib/driver/osx.c similarity index 99% rename from lib/driver/_cdio_osx.c rename to lib/driver/osx.c index d9e18905..a5b677a5 100644 --- a/lib/driver/_cdio_osx.c +++ b/lib/driver/osx.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_osx.c,v 1.20 2005/03/01 10:53:15 rocky Exp $ + $Id: osx.c,v 1.1 2005/03/05 09:26:52 rocky Exp $ Copyright (C) 2003, 2004, 2005 Rocky Bernstein from vcdimager code: @@ -34,7 +34,7 @@ #include "config.h" #endif -static const char _rcsid[] = "$Id: _cdio_osx.c,v 1.20 2005/03/01 10:53:15 rocky Exp $"; +static const char _rcsid[] = "$Id: osx.c,v 1.1 2005/03/05 09:26:52 rocky Exp $"; #include #include diff --git a/lib/driver/_cdio_sunos.c b/lib/driver/solaris.c similarity index 99% rename from lib/driver/_cdio_sunos.c rename to lib/driver/solaris.c index b54c7bcc..8b97bcee 100644 --- a/lib/driver/_cdio_sunos.c +++ b/lib/driver/solaris.c @@ -1,5 +1,5 @@ /* - $Id: _cdio_sunos.c,v 1.29 2005/03/03 08:43:39 rocky Exp $ + $Id: solaris.c,v 1.1 2005/03/05 09:26:52 rocky Exp $ Copyright (C) 2001 Herbert Valerio Riedel Copyright (C) 2002, 2003, 2004, 2005 Rocky Bernstein @@ -38,7 +38,7 @@ #ifdef HAVE_SOLARIS_CDROM -static const char _rcsid[] = "$Id: _cdio_sunos.c,v 1.29 2005/03/03 08:43:39 rocky Exp $"; +static const char _rcsid[] = "$Id: solaris.c,v 1.1 2005/03/05 09:26:52 rocky Exp $"; #ifdef HAVE_GLOB_H #include