image/common.c, Makefile.am: common image routines.

src/cd-info.c, *.right: Now show file images under "drive capability"
bincue.c/nrg.c: report file image "drive capability"
This commit is contained in:
rocky
2004-04-23 01:01:35 +00:00
parent 12762d2d7c
commit b6a67c8d94
22 changed files with 173 additions and 136 deletions

View File

@@ -1,5 +1,5 @@
/* /*
$Id: sample2.c,v 1.5 2004/04/22 03:24:38 rocky Exp $ $Id: sample2.c,v 1.6 2004/04/23 01:01:35 rocky Exp $
Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com> Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com>
@@ -53,7 +53,7 @@ main(int argc, const char *argv[])
} else if (CDIO_DRIVE_UNKNOWN == i_drive_cap) { } else if (CDIO_DRIVE_UNKNOWN == i_drive_cap) {
printf("Can't determine drive properties\n"); printf("Can't determine drive properties\n");
} else if (CDIO_DRIVE_FILE == i_drive_cap) { } else if (CDIO_DRIVE_FILE == i_drive_cap) {
printf("Can't determine drive properties\n"); printf("Disc-image file\n");
} else { } else {
if (i_drive_cap & CDIO_DRIVE_CD_R) if (i_drive_cap & CDIO_DRIVE_CD_R)
printf("Drive can read CD-ROM\n"); printf("Drive can read CD-ROM\n");

View File

@@ -1,4 +1,4 @@
# $Id: Makefile.am,v 1.30 2004/03/20 22:49:33 rocky Exp $ # $Id: Makefile.am,v 1.31 2004/04/23 01:01:36 rocky Exp $
# #
# Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com> # Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com>
# #
@@ -69,6 +69,7 @@ libcdio_sources = \
ds.c \ ds.c \
ds.h \ ds.h \
image/bincue.c \ image/bincue.c \
image/common.c \
image/nrg.c \ image/nrg.c \
logging.c \ logging.c \
MSWindows/aspi32.c \ MSWindows/aspi32.c \

View File

@@ -1,5 +1,5 @@
/* /*
$Id: _cdio_linux.c,v 1.33 2004/04/22 03:24:38 rocky Exp $ $Id: _cdio_linux.c,v 1.34 2004/04/23 01:01:36 rocky Exp $
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
Copyright (C) 2002, 2003, 2004 Rocky Bernstein <rocky@panix.com> Copyright (C) 2002, 2003, 2004 Rocky Bernstein <rocky@panix.com>
@@ -27,7 +27,7 @@
# include "config.h" # include "config.h"
#endif #endif
static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.33 2004/04/22 03:24:38 rocky Exp $"; static const char _rcsid[] = "$Id: _cdio_linux.c,v 1.34 2004/04/23 01:01:36 rocky Exp $";
#include <string.h> #include <string.h>
@@ -1109,8 +1109,14 @@ cdio_open_linux (const char *orig_source_name)
if (NULL == source_name) return NULL; if (NULL == source_name) return NULL;
_cdio_set_arg(_data, "source", source_name); _cdio_set_arg(_data, "source", source_name);
free(source_name); free(source_name);
} else } else {
if (cdio_is_device_generic(orig_source_name))
_cdio_set_arg(_data, "source", orig_source_name); _cdio_set_arg(_data, "source", orig_source_name);
else {
cdio_info ("source %s is a not a device", orig_source_name);
return NULL;
}
}
ret = cdio_new (_data, &_funcs); ret = cdio_new (_data, &_funcs);
if (ret == NULL) return NULL; if (ret == NULL) return NULL;

View File

@@ -1,5 +1,5 @@
/* /*
$Id: bincue.c,v 1.9 2004/03/22 01:01:50 rocky Exp $ $Id: bincue.c,v 1.10 2004/04/23 01:01:37 rocky Exp $
Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org> Copyright (C) 2001 Herbert Valerio Riedel <hvr@gnu.org>
Copyright (C) 2002, 2003, 2004 Rocky Bernstein <rocky@panix.com> Copyright (C) 2002, 2003, 2004 Rocky Bernstein <rocky@panix.com>
@@ -24,7 +24,7 @@
(*.cue). (*.cue).
*/ */
static const char _rcsid[] = "$Id: bincue.c,v 1.9 2004/03/22 01:01:50 rocky Exp $"; static const char _rcsid[] = "$Id: bincue.c,v 1.10 2004/04/23 01:01:37 rocky Exp $";
#include "cdio_assert.h" #include "cdio_assert.h"
#include "cdio_private.h" #include "cdio_private.h"
@@ -104,6 +104,8 @@ typedef struct {
static bool _cdio_image_read_cue (_img_private_t *_obj); static bool _cdio_image_read_cue (_img_private_t *_obj);
static uint32_t _cdio_stat_size (void *env); static uint32_t _cdio_stat_size (void *env);
#include "image/common.c"
/*! /*!
Initialize image structures. Initialize image structures.
*/ */
@@ -740,53 +742,6 @@ cdio_get_default_device_bincue(void)
return drive; return drive;
} }
/*!
Return the number of of the first track.
CDIO_INVALID_TRACK is returned on error.
*/
static track_t
_cdio_get_first_track_num(void *env)
{
_img_private_t *_obj = env;
_cdio_init (_obj);
return _obj->first_track_num;
}
/*!
Return the media catalog number (MCN) from the CD or NULL if there
is none or we don't have the ability to get it.
Note: string is malloc'd so caller has to free() the returned
string when done with it.
*/
static char *
_cdio_get_mcn(void *env)
{
_img_private_t *_obj = env;
_cdio_init (_obj);
if (NULL == _obj->mcn) return NULL;
return strdup(_obj->mcn);
}
/*!
Return the number of tracks in the current medium.
If no cuesheet is available, We fake it an just say there's
one big track.
CDIO_INVALID_TRACK is returned on error.
*/
static track_t
_cdio_get_num_tracks(void *env)
{
_img_private_t *_obj = env;
_cdio_init (_obj);
return _obj->have_cue && _obj->total_tracks > 0 ? _obj->total_tracks : 1;
}
/*! /*!
Return the number of tracks in the current medium. Return the number of tracks in the current medium.
CDIO_INVALID_TRACK is returned on error. CDIO_INVALID_TRACK is returned on error.
@@ -846,30 +801,6 @@ _cdio_get_track_lba(void *env, track_t track_num)
return CDIO_INVALID_LBA; return CDIO_INVALID_LBA;
} }
/*!
Return the starting MSF (minutes/secs/frames) for the track number
track_num in obj. Tracks numbers start at 1.
The "leadout" track is specified either by
using track_num LEADOUT_TRACK or the total tracks+1.
*/
static bool
_cdio_get_track_msf(void *env, track_t track_num, msf_t *msf)
{
_img_private_t *_obj = env;
_cdio_init (_obj);
if (NULL == msf) return false;
if (track_num == CDIO_CDROM_LEADOUT_TRACK) track_num = _obj->total_tracks+1;
if (track_num <= _obj->total_tracks+1 && track_num != 0) {
*msf = _obj->tocent[track_num-1].start_msf;
return true;
} else
return false;
}
/*! /*!
Return corresponding BIN file if cue_name is a cue file or NULL Return corresponding BIN file if cue_name is a cue file or NULL
if not a CUE file. if not a CUE file.
@@ -964,13 +895,14 @@ cdio_open_cue (const char *cue_name)
.free = _cdio_bincue_destroy, .free = _cdio_bincue_destroy,
.get_arg = _cdio_get_arg, .get_arg = _cdio_get_arg,
.get_default_device = cdio_get_default_device_bincue, .get_default_device = cdio_get_default_device_bincue,
.get_first_track_num= _cdio_get_first_track_num, .get_drive_cap = _cdio_image_get_drive_cap,
.get_mcn = _cdio_get_mcn, .get_first_track_num= _cdio_image_get_first_track_num,
.get_num_tracks = _cdio_get_num_tracks, .get_mcn = _cdio_image_get_mcn,
.get_num_tracks = _cdio_image_get_num_tracks,
.get_track_format = _cdio_get_track_format, .get_track_format = _cdio_get_track_format,
.get_track_green = _cdio_get_track_green, .get_track_green = _cdio_get_track_green,
.get_track_lba = _cdio_get_track_lba, .get_track_lba = _cdio_get_track_lba,
.get_track_msf = _cdio_get_track_msf, .get_track_msf = _cdio_image_get_track_msf,
.lseek = _cdio_lseek, .lseek = _cdio_lseek,
.read = _cdio_read, .read = _cdio_read,
.read_audio_sectors = _cdio_read_audio_sectors, .read_audio_sectors = _cdio_read_audio_sectors,

103
lib/image/common.c Normal file
View File

@@ -0,0 +1,103 @@
/*
$Id: common.c,v 1.1 2004/04/23 01:01:37 rocky Exp $
Copyright (C) 2004 Rocky Bernstein <rocky@panix.com>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
/* Common image routines. */
/*!
Return the the kind of drive capabilities of device.
Note: string is malloc'd so caller should free() then returned
string when done with it.
*/
static cdio_drive_cap_t
_cdio_image_get_drive_cap (const void *env) {
const _img_private_t *_obj = env;
if (_obj->gen.fd < 0 )
return CDIO_DRIVE_UNKNOWN;
else
return CDIO_DRIVE_FILE;
}
/*!
Return the media catalog number (MCN) from the CD or NULL if there
is none or we don't have the ability to get it.
Note: string is malloc'd so caller has to free() the returned
string when done with it.
*/
static char *
_cdio_image_get_mcn(void *env)
{
_img_private_t *_obj = env;
if (NULL == _obj->mcn) return NULL;
return strdup(_obj->mcn);
}
/*!
Return the starting MSF (minutes/secs/frames) for the track number
track_num in obj. Tracks numbers start at 1.
The "leadout" track is specified either by
using track_num LEADOUT_TRACK or the total tracks+1.
*/
static bool
_cdio_image_get_track_msf(void *env, track_t track_num, msf_t *msf)
{
_img_private_t *_obj = env;
if (NULL == msf) return false;
if (track_num == CDIO_CDROM_LEADOUT_TRACK) track_num = _obj->total_tracks+1;
if (track_num <= _obj->total_tracks+1 && track_num != 0) {
*msf = _obj->tocent[track_num-1].start_msf;
return true;
} else
return false;
}
/*!
Return the number of of the first track.
CDIO_INVALID_TRACK is returned on error.
*/
static track_t
_cdio_image_get_first_track_num(void *env)
{
_img_private_t *_obj = env;
return _obj->first_track_num;
}
/*!
Return the number of tracks. We fake it an just say there's
one big track.
*/
static track_t
_cdio_image_get_num_tracks(void *env)
{
_img_private_t *_obj = env;
return _obj->total_tracks;
}

View File

@@ -1,5 +1,5 @@
/* /*
$Id: nrg.c,v 1.4 2004/03/20 22:46:57 rocky Exp $ $Id: nrg.c,v 1.5 2004/04/23 01:01:37 rocky Exp $
Copyright (C) 2001, 2003 Herbert Valerio Riedel <hvr@gnu.org> Copyright (C) 2001, 2003 Herbert Valerio Riedel <hvr@gnu.org>
Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com> Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com>
@@ -48,7 +48,7 @@
#include "cdio_private.h" #include "cdio_private.h"
#include "_cdio_stdio.h" #include "_cdio_stdio.h"
static const char _rcsid[] = "$Id: nrg.c,v 1.4 2004/03/20 22:46:57 rocky Exp $"; static const char _rcsid[] = "$Id: nrg.c,v 1.5 2004/04/23 01:01:37 rocky Exp $";
/* structures used */ /* structures used */
@@ -177,6 +177,8 @@ typedef struct {
static bool _cdio_parse_nero_footer (_img_private_t *_obj); static bool _cdio_parse_nero_footer (_img_private_t *_obj);
static uint32_t _cdio_stat_size (void *env); static uint32_t _cdio_stat_size (void *env);
#include "image/common.c"
/* Updates internal track TOC, so we can later /* Updates internal track TOC, so we can later
simulate ioctl(CDROMREADTOCENTRY). simulate ioctl(CDROMREADTOCENTRY).
*/ */
@@ -1074,30 +1076,6 @@ cdio_get_default_device_nrg(void)
return drive; return drive;
} }
/*!
Return the number of of the first track.
CDIO_INVALID_TRACK is returned on error.
*/
static track_t
_cdio_get_first_track_num(void *env)
{
_img_private_t *_obj = env;
return _obj->first_track_num;
}
/*!
Return the number of tracks. We fake it an just say there's
one big track.
*/
static track_t
_cdio_get_num_tracks(void *env)
{
_img_private_t *_obj = env;
return _obj->total_tracks;
}
/*! /*!
Return the number of tracks in the current medium. Return the number of tracks in the current medium.
CDIO_INVALID_TRACK is returned on error. CDIO_INVALID_TRACK is returned on error.
@@ -1144,28 +1122,6 @@ _cdio_get_track_green(void *env, track_t track_num)
return _obj->tocent[track_num-1].track_green; return _obj->tocent[track_num-1].track_green;
} }
/*!
Return the starting MSF (minutes/secs/frames) for the track number
track_num in obj. Tracks numbers start at 1.
The "leadout" track is specified either by
using track_num LEADOUT_TRACK or the total tracks+1.
*/
static bool
_cdio_get_track_msf(void *env, track_t track_num, msf_t *msf)
{
_img_private_t *_obj = env;
if (NULL == msf) return 1;
if (track_num == CDIO_CDROM_LEADOUT_TRACK) track_num = _obj->total_tracks+1;
if (track_num <= _obj->total_tracks+1 && track_num != 0) {
*msf = _obj->tocent[track_num-1].start_msf;
return true;
} else
return false;
}
CdIo * CdIo *
cdio_open_nrg (const char *source_name) cdio_open_nrg (const char *source_name)
{ {
@@ -1178,12 +1134,14 @@ cdio_open_nrg (const char *source_name)
.get_arg = _cdio_get_arg, .get_arg = _cdio_get_arg,
.get_devices = cdio_get_devices_nrg, .get_devices = cdio_get_devices_nrg,
.get_default_device = cdio_get_default_device_nrg, .get_default_device = cdio_get_default_device_nrg,
.get_first_track_num= _cdio_get_first_track_num, .get_drive_cap = _cdio_image_get_drive_cap,
.get_num_tracks = _cdio_get_num_tracks, .get_first_track_num= _cdio_image_get_first_track_num,
.get_mcn = _cdio_image_get_mcn,
.get_num_tracks = _cdio_image_get_num_tracks,
.get_track_format = _cdio_get_track_format, .get_track_format = _cdio_get_track_format,
.get_track_green = _cdio_get_track_green, .get_track_green = _cdio_get_track_green,
.get_track_lba = NULL, /* Will use generic routine via msf */ .get_track_lba = NULL, /* Will use generic routine via msf */
.get_track_msf = _cdio_get_track_msf, .get_track_msf = _cdio_image_get_track_msf,
.lseek = _cdio_lseek, .lseek = _cdio_lseek,
.read = _cdio_read, .read = _cdio_read,
.read_audio_sectors = _cdio_read_audio_sectors, .read_audio_sectors = _cdio_read_audio_sectors,

View File

@@ -1,5 +1,5 @@
/* /*
$Id: cd-info.c,v 1.52 2004/04/21 09:23:38 rocky Exp $ $Id: cd-info.c,v 1.53 2004/04/23 01:01:37 rocky Exp $
Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com> Copyright (C) 2003, 2004 Rocky Bernstein <rocky@panix.com>
Copyright (C) 1996, 1997, 1998 Gerd Knorr <kraxel@bytesex.org> Copyright (C) 1996, 1997, 1998 Gerd Knorr <kraxel@bytesex.org>
@@ -829,6 +829,28 @@ main(int argc, const char *argv[])
printf("CD driver name: %s\n", cdio_get_driver_name(cdio)); printf("CD driver name: %s\n", cdio_get_driver_name(cdio));
} }
{
cdio_drive_cap_t i_drive_cap = cdio_get_drive_cap(source_name);
if (CDIO_DRIVE_ERROR == i_drive_cap) {
printf("Error in getting drive properties\n");
} else if (CDIO_DRIVE_UNKNOWN == i_drive_cap) {
printf("Can't determine drive properties\n");
} else if (CDIO_DRIVE_FILE == i_drive_cap) {
printf("Disc-image file\n");
} else {
if (i_drive_cap & CDIO_DRIVE_CD_R)
printf("Drive can read CD-ROM\n");
if (i_drive_cap & CDIO_DRIVE_CD_RW)
printf("Drive can write CD-ROM\n");
if (i_drive_cap & CDIO_DRIVE_DVD)
printf("Drive can read DVD\n");
if (i_drive_cap & CDIO_DRIVE_DVD_R)
printf("Drive can write DVD-R\n");
if (i_drive_cap & CDIO_DRIVE_DVD_RAM)
printf("Drive can write DVD-RAM\n");
}
}
if (opts.list_drives) { if (opts.list_drives) {
char ** device_list = cdio_get_devices(DRIVER_DEVICE); char ** device_list = cdio_get_devices(DRIVER_DEVICE);
char ** d = device_list; char ** d = device_list;

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 1) CD-ROM Track List (1 - 1)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
Media Catalog Number (MCN): 0000010271955 Media Catalog Number (MCN): 0000010271955
__________________________________ __________________________________
CD Analysis Report CD Analysis Report

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
Media Catalog Number (MCN): 0000010271955 Media Catalog Number (MCN): 0000010271955
__________________________________ __________________________________
CD Analysis Report CD Analysis Report

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 1) CD-ROM Track List (1 - 1)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 1) CD-ROM Track List (1 - 1)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 1) CD-ROM Track List (1 - 1)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 1) CD-ROM Track List (1 - 1)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 1) CD-ROM Track List (1 - 1)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 1) CD-ROM Track List (1 - 1)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 1) CD-ROM Track List (1 - 1)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 2) CD-ROM Track List (1 - 2)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 2) CD-ROM Track List (1 - 2)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 2) CD-ROM Track List (1 - 2)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 3) CD-ROM Track List (1 - 3)
#: MSF LSN Type Green? #: MSF LSN Type Green?

View File

@@ -1,6 +1,7 @@
This is free software; see the source for copying conditions. This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE. PARTICULAR PURPOSE.
Disc-image file
__________________________________ __________________________________
CD-ROM Track List (1 - 5) CD-ROM Track List (1 - 5)
#: MSF LSN Type Green? #: MSF LSN Type Green?