rb_cdio 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/ext/CdIo.c +132 -0
- data/ext/CdIo.h +108 -0
- data/ext/CdIo.o +0 -0
- data/ext/CdIo_Cd.c +345 -0
- data/ext/CdIo_Cd.o +0 -0
- data/ext/CdIo_Common.c +84 -0
- data/ext/CdIo_Common.o +0 -0
- data/ext/CdIo_Modulo.c +226 -0
- data/ext/CdIo_Modulo.o +0 -0
- data/ext/CdIo_Track.c +91 -0
- data/ext/CdIo_Track.o +0 -0
- data/ext/CdIo_TrackIso9660.c +78 -0
- data/ext/CdIo_TrackIso9660.o +0 -0
- data/ext/Makefile +127 -0
- data/ext/extconf.rb +4 -0
- data/ext/mkmf.log +26 -0
- data/lib/rb_cdio_read.rb +39 -0
- data/test/data/Makefile +677 -0
- data/test/data/Makefile.am +78 -0
- data/test/data/Makefile.in +677 -0
- data/test/data/bad-cat1.cue +9 -0
- data/test/data/bad-cat1.toc +8 -0
- data/test/data/bad-cat2.cue +9 -0
- data/test/data/bad-cat2.toc +8 -0
- data/test/data/bad-cat3.cue +9 -0
- data/test/data/bad-cat3.toc +8 -0
- data/test/data/bad-mode1.cue +7 -0
- data/test/data/bad-mode1.toc +5 -0
- data/test/data/bad-msf-1.cue +7 -0
- data/test/data/bad-msf-1.toc +6 -0
- data/test/data/bad-msf-2.cue +7 -0
- data/test/data/bad-msf-2.toc +6 -0
- data/test/data/bad-msf-3.cue +7 -0
- data/test/data/bad-msf-3.toc +6 -0
- data/test/data/cdda-read.right +148 -0
- data/test/data/cdda.bin +0 -0
- data/test/data/cdda.cue +6 -0
- data/test/data/cdda.right +44 -0
- data/test/data/cdda.toc +13 -0
- data/test/data/cdtext.toc +48 -0
- data/test/data/check_cd_read.sh +53 -0
- data/test/data/check_common_fn +186 -0
- data/test/data/check_common_fn.in +186 -0
- data/test/data/check_cue.sh +102 -0
- data/test/data/check_cue.sh.in +102 -0
- data/test/data/check_iso.sh +32 -0
- data/test/data/check_iso.sh.in +32 -0
- data/test/data/check_nrg.sh +68 -0
- data/test/data/check_nrg.sh.in +68 -0
- data/test/data/check_opts.sh +33 -0
- data/test/data/check_opts0.right +40 -0
- data/test/data/check_opts1.right +40 -0
- data/test/data/check_opts2.right +34 -0
- data/test/data/check_opts3.right +34 -0
- data/test/data/check_opts4.right +44 -0
- data/test/data/check_opts5.right +44 -0
- data/test/data/check_opts6.right +44 -0
- data/test/data/check_opts7.right +44 -0
- data/test/data/check_sizeof +117 -0
- data/test/data/check_sizeof.c +77 -0
- data/test/data/copying.iso +0 -0
- data/test/data/copying.right +10 -0
- data/test/data/data1.toc +8 -0
- data/test/data/data2.toc +13 -0
- data/test/data/data5.toc +13 -0
- data/test/data/data6.toc +8 -0
- data/test/data/data7.toc +13 -0
- data/test/data/isofs-m1-read.right +258 -0
- data/test/data/isofs-m1.bin +0 -0
- data/test/data/isofs-m1.cue +3 -0
- data/test/data/isofs-m1.right +57 -0
- data/test/data/isofs-m1.toc +4 -0
- data/test/data/t1.toc +5 -0
- data/test/data/t2.toc +6 -0
- data/test/data/t3.toc +11 -0
- data/test/data/t4.toc +8 -0
- data/test/data/t5.toc +8 -0
- data/test/data/t6.toc +7 -0
- data/test/data/t7.toc +12 -0
- data/test/data/t8.toc +14 -0
- data/test/data/t9.toc +31 -0
- data/test/data/testassert +117 -0
- data/test/data/testassert.c +36 -0
- data/test/data/testbincue +117 -0
- data/test/data/testbincue.c +88 -0
- data/test/data/testdefault +117 -0
- data/test/data/testdefault.c +196 -0
- data/test/data/testischar +117 -0
- data/test/data/testischar.c +71 -0
- data/test/data/testiso9660 +117 -0
- data/test/data/testiso9660.c +153 -0
- data/test/data/testtoc +117 -0
- data/test/data/testtoc.c +101 -0
- data/test/data/vcd_demo.right +116 -0
- data/test/data/videocd.nrg +0 -0
- data/test/data/videocd.right +92 -0
- data/test/testall.rb +4 -0
- data/test/testbincue.rb +30 -0
- data/test/testtoc.rb +45 -0
- metadata +141 -0
@@ -0,0 +1,153 @@
|
|
1
|
+
/*
|
2
|
+
$Id: testiso9660.c,v 1.2 2003/09/21 01:14:30 rocky Exp $
|
3
|
+
|
4
|
+
Copyright (C) 2003 Rocky Bernstein <rocky@panix.com>
|
5
|
+
|
6
|
+
This program is free software; you can redistribute it and/or modify
|
7
|
+
it under the terms of the GNU General Public License as published by
|
8
|
+
the Free Software Foundation; either version 2 of the License, or
|
9
|
+
(at your option) any later version.
|
10
|
+
|
11
|
+
This program is distributed in the hope that it will be useful,
|
12
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
GNU General Public License for more details.
|
15
|
+
|
16
|
+
You should have received a copy of the GNU General Public License
|
17
|
+
along with this program; if not, write to the Free Software
|
18
|
+
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
19
|
+
*/
|
20
|
+
/* Tests ISO9660 library routines. */
|
21
|
+
|
22
|
+
#ifdef HAVE_CONFIG_H
|
23
|
+
# include "config.h"
|
24
|
+
#endif
|
25
|
+
|
26
|
+
#include <ctype.h>
|
27
|
+
#ifdef HAVE_STRING_H
|
28
|
+
#include <string.h>
|
29
|
+
#endif
|
30
|
+
#ifdef HAVE_STDIO_H
|
31
|
+
#include <stdio.h>
|
32
|
+
#endif
|
33
|
+
#include <cdio/iso9660.h>
|
34
|
+
|
35
|
+
int
|
36
|
+
main (int argc, const char *argv[])
|
37
|
+
{
|
38
|
+
int c;
|
39
|
+
int i;
|
40
|
+
char dst[100];
|
41
|
+
char *dst_p;
|
42
|
+
int achars[] = {'!', '"', '%', '&', '(', ')', '*', '+', ',', '-', '.',
|
43
|
+
'/', '?', '<', '=', '>'};
|
44
|
+
for (c='A'; c<='Z'; c++ ) {
|
45
|
+
if (!iso9660_isdchar(c)) {
|
46
|
+
printf("Failed iso9660_isdchar test on %d\n", c);
|
47
|
+
return c;
|
48
|
+
}
|
49
|
+
if (!iso9660_isachar(c)) {
|
50
|
+
printf("Failed iso9660_isachar test on %d\n", c);
|
51
|
+
return c;
|
52
|
+
}
|
53
|
+
}
|
54
|
+
for (c='0'; c<='9'; c++ ) {
|
55
|
+
if (!iso9660_isdchar(c)) {
|
56
|
+
printf("Failed iso9660_isdchar test on %d\n", c);
|
57
|
+
return c;
|
58
|
+
}
|
59
|
+
if (!iso9660_isachar(c)) {
|
60
|
+
printf("Failed iso9660_isachar test on %d\n", c);
|
61
|
+
return c;
|
62
|
+
}
|
63
|
+
}
|
64
|
+
|
65
|
+
for (i=0; i<=13; i++ ) {
|
66
|
+
c=achars[i];
|
67
|
+
if (iso9660_isdchar(c)) {
|
68
|
+
printf("Should not pass iso9660_isdchar test on %d\n", c);
|
69
|
+
return c;
|
70
|
+
}
|
71
|
+
if (!iso9660_isachar(c)) {
|
72
|
+
printf("Failed iso9660_isachar test on symbol %d\n", c);
|
73
|
+
return c;
|
74
|
+
}
|
75
|
+
}
|
76
|
+
|
77
|
+
/* Test iso9660_strncpy_pad */
|
78
|
+
dst_p = iso9660_strncpy_pad(dst, "1_3", 5, ISO9660_DCHARS);
|
79
|
+
if ( 0 != strncmp(dst, "1_3 ", 5) ) {
|
80
|
+
printf("Failed iso9660_strncpy_pad test 1\n");
|
81
|
+
return 1;
|
82
|
+
}
|
83
|
+
dst_p = iso9660_strncpy_pad(dst, "ABC!123", 2, ISO9660_ACHARS);
|
84
|
+
if ( 0 != strncmp(dst, "AB", 2) ) {
|
85
|
+
printf("Failed iso9660_strncpy_pad test 2\n");
|
86
|
+
return 2;
|
87
|
+
}
|
88
|
+
|
89
|
+
/* Test iso9660_dirname_valid_p */
|
90
|
+
if ( iso9660_dirname_valid_p("/NOGOOD") ) {
|
91
|
+
printf("/NOGOOD should fail iso9660_dirname_valid_p\n");
|
92
|
+
return 3;
|
93
|
+
}
|
94
|
+
if ( iso9660_dirname_valid_p("LONGDIRECTORY/NOGOOD") ) {
|
95
|
+
printf("LONGDIRECTORY/NOGOOD should fail iso9660_dirname_valid_p\n");
|
96
|
+
return 4;
|
97
|
+
}
|
98
|
+
if ( !iso9660_dirname_valid_p("OKAY/DIR") ) {
|
99
|
+
printf("OKAY/DIR should pass iso9660_dirname_valid_p\n");
|
100
|
+
return 5;
|
101
|
+
}
|
102
|
+
if ( iso9660_dirname_valid_p("OKAY/FILE.EXT") ) {
|
103
|
+
printf("OKAY/FILENAME.EXT should fail iso9660_dirname_valid_p\n");
|
104
|
+
return 6;
|
105
|
+
}
|
106
|
+
|
107
|
+
/* Test iso9660_pathname_valid_p */
|
108
|
+
if ( !iso9660_pathname_valid_p("OKAY/FILE.EXT") ) {
|
109
|
+
printf("OKAY/FILE.EXT should pass iso9660_dirname_valid_p\n");
|
110
|
+
return 7;
|
111
|
+
}
|
112
|
+
if ( iso9660_pathname_valid_p("OKAY/FILENAMETOOLONG.EXT") ) {
|
113
|
+
printf("OKAY/FILENAMETOOLONG.EXT should fail iso9660_dirname_valid_p\n");
|
114
|
+
return 8;
|
115
|
+
}
|
116
|
+
if ( iso9660_pathname_valid_p("OKAY/FILE.LONGEXT") ) {
|
117
|
+
printf("OKAY/FILE.LONGEXT should fail iso9660_dirname_valid_p\n");
|
118
|
+
return 9;
|
119
|
+
}
|
120
|
+
|
121
|
+
dst_p = iso9660_pathname_isofy ("this/file.ext", 1);
|
122
|
+
if ( 0 != strncmp(dst_p, "this/file.ext;1", 16) ) {
|
123
|
+
printf("Failed iso9660_pathname_isofy\n");
|
124
|
+
return 10;
|
125
|
+
}
|
126
|
+
|
127
|
+
/* Test get/set date */
|
128
|
+
{
|
129
|
+
struct tm *p_tm, tm;
|
130
|
+
iso9660_dtime_t dtime;
|
131
|
+
time_t now = time(NULL);
|
132
|
+
|
133
|
+
memset(&dtime, 0, sizeof(dtime));
|
134
|
+
p_tm = localtime(&now);
|
135
|
+
iso9660_set_dtime(p_tm, &dtime);
|
136
|
+
iso9660_get_dtime(&dtime, true, &tm);
|
137
|
+
if ( memcmp(p_tm, &tm, sizeof(tm)) != 0 ) {
|
138
|
+
printf("Time retrieved with iso0660_get_dtime not same as that set with "
|
139
|
+
"iso9660_set_dtime.\n");
|
140
|
+
return 11;
|
141
|
+
}
|
142
|
+
p_tm = gmtime(&now);
|
143
|
+
iso9660_set_dtime(p_tm, &dtime);
|
144
|
+
iso9660_get_dtime(&dtime, false, &tm);
|
145
|
+
if ( memcmp(p_tm, &tm, sizeof(tm)) != 0 ) {
|
146
|
+
printf("Time retrieved with iso0660_get_dtime not same as that set with "
|
147
|
+
"iso9660_set_dtime.\n");
|
148
|
+
return 12;
|
149
|
+
}
|
150
|
+
}
|
151
|
+
|
152
|
+
return 0;
|
153
|
+
}
|
data/test/data/testtoc
ADDED
@@ -0,0 +1,117 @@
|
|
1
|
+
#! /bin/sh
|
2
|
+
|
3
|
+
# testtoc - temporary wrapper script for .libs/testtoc
|
4
|
+
# Generated by ltmain.sh - GNU libtool 1.5.6 (1.1220.2.95 2004/04/11 05:50:42)
|
5
|
+
#
|
6
|
+
# The testtoc program cannot be directly executed until all the libtool
|
7
|
+
# libraries that it depends on are installed.
|
8
|
+
#
|
9
|
+
# This wrapper script should never be moved out of the build directory.
|
10
|
+
# If it is, it will not operate correctly.
|
11
|
+
|
12
|
+
# Sed substitution that helps us do robust quoting. It backslashifies
|
13
|
+
# metacharacters that are still active within double-quoted strings.
|
14
|
+
Xsed='/bin/sed -e 1s/^X//'
|
15
|
+
sed_quote_subst='s/\([\\`\\"$\\\\]\)/\\\1/g'
|
16
|
+
|
17
|
+
# The HP-UX ksh and POSIX shell print the target directory to stdout
|
18
|
+
# if CDPATH is set.
|
19
|
+
if test "${CDPATH+set}" = set; then CDPATH=:; export CDPATH; fi
|
20
|
+
|
21
|
+
relink_command="(cd /home/cdx/libcdio-0.70/test; { test -z \"\${LIBRARY_PATH+set}\" || unset LIBRARY_PATH || { LIBRARY_PATH=; export LIBRARY_PATH; }; }; { test -z \"\${COMPILER_PATH+set}\" || unset COMPILER_PATH || { COMPILER_PATH=; export COMPILER_PATH; }; }; { test -z \"\${GCC_EXEC_PREFIX+set}\" || unset GCC_EXEC_PREFIX || { GCC_EXEC_PREFIX=; export GCC_EXEC_PREFIX; }; }; { test -z \"\${LD_RUN_PATH+set}\" || unset LD_RUN_PATH || { LD_RUN_PATH=; export LD_RUN_PATH; }; }; PATH=\"/opt/sun-jre-bin-1.5.0.03/bin:/opt/sun-jre-bin-1.5.0.03/javaws:/opt/sun-jre-bin-1.5.0.03/bin:/opt/sun-jre-bin-1.5.0.03/javaws:/bin:/usr/bin:/usr/local/bin:/opt/bin:/usr/i686-pc-linux-gnu/gcc-bin/3.3.5-20050130:/opt/blackdown-jdk-1.4.2.01/bin:/opt/blackdown-jdk-1.4.2.01/jre/bin:/usr/qt/3/bin:/usr/kde/3.3/bin:/usr/games/bin:~/bin:~/RealPlayer:~/bin:~/RealPlayer\"; export PATH; gcc -g -O2 -Wall -Wchar-subscripts -Wmissing-prototypes -Wmissing-declarations -Wunused -Wpointer-arith -Wwrite-strings -Wnested-externs -Wno-sign-compare -o \$progdir/\$file testtoc.o ../lib/.libs/libcdio.so -lm -Wl,--rpath -Wl,/home/cdx/libcdio-0.70/lib/.libs -Wl,--rpath -Wl,/home/cdx/libcdio-0.70/opt/lib)"
|
22
|
+
|
23
|
+
# This environment variable determines our operation mode.
|
24
|
+
if test "$libtool_install_magic" = "%%%MAGIC variable%%%"; then
|
25
|
+
# install mode needs the following variable:
|
26
|
+
notinst_deplibs=' ../lib/libcdio.la'
|
27
|
+
else
|
28
|
+
# When we are sourced in execute mode, $file and $echo are already set.
|
29
|
+
if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then
|
30
|
+
echo="echo"
|
31
|
+
file="$0"
|
32
|
+
# Make sure echo works.
|
33
|
+
if test "X$1" = X--no-reexec; then
|
34
|
+
# Discard the --no-reexec flag, and continue.
|
35
|
+
shift
|
36
|
+
elif test "X`($echo '\t') 2>/dev/null`" = 'X\t'; then
|
37
|
+
# Yippee, $echo works!
|
38
|
+
:
|
39
|
+
else
|
40
|
+
# Restart under the correct shell, and then maybe $echo will work.
|
41
|
+
exec /bin/sh "$0" --no-reexec ${1+"$@"}
|
42
|
+
fi
|
43
|
+
fi
|
44
|
+
|
45
|
+
# Find the directory that this script lives in.
|
46
|
+
thisdir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
|
47
|
+
test "x$thisdir" = "x$file" && thisdir=.
|
48
|
+
|
49
|
+
# Follow symbolic links until we get to the real thisdir.
|
50
|
+
file=`ls -ld "$file" | /bin/sed -n 's/.*-> //p'`
|
51
|
+
while test -n "$file"; do
|
52
|
+
destdir=`$echo "X$file" | $Xsed -e 's%/[^/]*$%%'`
|
53
|
+
|
54
|
+
# If there was a directory component, then change thisdir.
|
55
|
+
if test "x$destdir" != "x$file"; then
|
56
|
+
case "$destdir" in
|
57
|
+
[\\/]* | [A-Za-z]:[\\/]*) thisdir="$destdir" ;;
|
58
|
+
*) thisdir="$thisdir/$destdir" ;;
|
59
|
+
esac
|
60
|
+
fi
|
61
|
+
|
62
|
+
file=`$echo "X$file" | $Xsed -e 's%^.*/%%'`
|
63
|
+
file=`ls -ld "$thisdir/$file" | /bin/sed -n 's/.*-> //p'`
|
64
|
+
done
|
65
|
+
|
66
|
+
# Try to get the absolute directory name.
|
67
|
+
absdir=`cd "$thisdir" && pwd`
|
68
|
+
test -n "$absdir" && thisdir="$absdir"
|
69
|
+
|
70
|
+
program=lt-'testtoc'
|
71
|
+
progdir="$thisdir/.libs"
|
72
|
+
|
73
|
+
if test ! -f "$progdir/$program" || \
|
74
|
+
{ file=`ls -1dt "$progdir/$program" "$progdir/../$program" 2>/dev/null | /bin/sed 1q`; \
|
75
|
+
test "X$file" != "X$progdir/$program"; }; then
|
76
|
+
|
77
|
+
file="$$-$program"
|
78
|
+
|
79
|
+
if test ! -d "$progdir"; then
|
80
|
+
mkdir "$progdir"
|
81
|
+
else
|
82
|
+
rm -f "$progdir/$file"
|
83
|
+
fi
|
84
|
+
|
85
|
+
# relink executable if necessary
|
86
|
+
if test -n "$relink_command"; then
|
87
|
+
if relink_command_output=`eval $relink_command 2>&1`; then :
|
88
|
+
else
|
89
|
+
echo "$relink_command_output" >&2
|
90
|
+
rm -f "$progdir/$file"
|
91
|
+
exit 1
|
92
|
+
fi
|
93
|
+
fi
|
94
|
+
|
95
|
+
mv -f "$progdir/$file" "$progdir/$program" 2>/dev/null ||
|
96
|
+
{ rm -f "$progdir/$program";
|
97
|
+
mv -f "$progdir/$file" "$progdir/$program"; }
|
98
|
+
rm -f "$progdir/$file"
|
99
|
+
fi
|
100
|
+
|
101
|
+
if test -f "$progdir/$program"; then
|
102
|
+
if test "$libtool_execute_magic" != "%%%MAGIC variable%%%"; then
|
103
|
+
# Run the actual program with our arguments.
|
104
|
+
|
105
|
+
exec $progdir/$program ${1+"$@"}
|
106
|
+
|
107
|
+
$echo "$0: cannot exec $program ${1+"$@"}"
|
108
|
+
exit 1
|
109
|
+
fi
|
110
|
+
else
|
111
|
+
# The program doesn't exist.
|
112
|
+
$echo "$0: error: $progdir/$program does not exist" 1>&2
|
113
|
+
$echo "This script is just a wrapper for $program." 1>&2
|
114
|
+
echo "See the libtool documentation for more information." 1>&2
|
115
|
+
exit 1
|
116
|
+
fi
|
117
|
+
fi
|
data/test/data/testtoc.c
ADDED
@@ -0,0 +1,101 @@
|
|
1
|
+
/*
|
2
|
+
$Id: testtoc.c,v 1.4 2004/07/11 02:33:18 rocky Exp $
|
3
|
+
|
4
|
+
Copyright (C) 2004 Rocky Bernstein <rocky@panix.com>
|
5
|
+
|
6
|
+
This program is free software; you can redistribute it and/or modify
|
7
|
+
it under the terms of the GNU General Public License as published by
|
8
|
+
the Free Software Foundation; either version 2 of the License, or
|
9
|
+
(at your option) any later version.
|
10
|
+
|
11
|
+
This program is distributed in the hope that it will be useful,
|
12
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
13
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
14
|
+
GNU General Public License for more details.
|
15
|
+
|
16
|
+
You should have received a copy of the GNU General Public License
|
17
|
+
along with this program; if not, write to the Free Software
|
18
|
+
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
19
|
+
*/
|
20
|
+
|
21
|
+
/*
|
22
|
+
Regression test for cdio_tocfile.
|
23
|
+
*/
|
24
|
+
#ifdef HAVE_CONFIG_H
|
25
|
+
# include "config.h"
|
26
|
+
#endif
|
27
|
+
#include <cdio/cdio.h>
|
28
|
+
#include <cdio/logging.h>
|
29
|
+
|
30
|
+
#ifdef HAVE_STDIO_H
|
31
|
+
#include <stdio.h>
|
32
|
+
#endif
|
33
|
+
#ifdef HAVE_SYS_TYPES_H
|
34
|
+
#include <sys/types.h>
|
35
|
+
#endif
|
36
|
+
#ifdef HAVE_STDLIB_H
|
37
|
+
#include <stdlib.h>
|
38
|
+
#endif
|
39
|
+
#include <string.h>
|
40
|
+
|
41
|
+
#define NUM_GOOD_TOCS 15
|
42
|
+
#define NUM_BAD_TOCS 7
|
43
|
+
int
|
44
|
+
main(int argc, const char *argv[])
|
45
|
+
{
|
46
|
+
const char *toc_file[NUM_GOOD_TOCS] = {
|
47
|
+
"cdtext.toc",
|
48
|
+
"t1.toc",
|
49
|
+
"t2.toc",
|
50
|
+
"t3.toc",
|
51
|
+
"t4.toc",
|
52
|
+
"t5.toc",
|
53
|
+
"t6.toc",
|
54
|
+
"t7.toc",
|
55
|
+
"t8.toc",
|
56
|
+
"t9.toc",
|
57
|
+
"data1.toc",
|
58
|
+
"data2.toc",
|
59
|
+
"data5.toc",
|
60
|
+
"data6.toc",
|
61
|
+
"data7.toc",
|
62
|
+
};
|
63
|
+
|
64
|
+
const char *badtoc_file[NUM_BAD_TOCS] = {
|
65
|
+
"bad-msf-1.toc",
|
66
|
+
"bad-msf-2.toc",
|
67
|
+
"bad-msf-3.toc",
|
68
|
+
"bad-cat1.toc",
|
69
|
+
"bad-cat2.toc",
|
70
|
+
"bad-cat3.toc",
|
71
|
+
"bad-mode1.toc"
|
72
|
+
};
|
73
|
+
int ret=0;
|
74
|
+
unsigned int i;
|
75
|
+
|
76
|
+
cdio_loglevel_default = (argc > 1) ? CDIO_LOG_DEBUG : CDIO_LOG_INFO;
|
77
|
+
for (i=0; i<NUM_GOOD_TOCS; i++) {
|
78
|
+
if (!cdio_is_tocfile(toc_file[i])) {
|
79
|
+
printf("Incorrect: %s doesn't parse as a cdrdao TOC file.\n",
|
80
|
+
toc_file[i]);
|
81
|
+
ret=i+1;
|
82
|
+
} else {
|
83
|
+
printf("Correct: %s parses as a cdrdao TOC file.\n",
|
84
|
+
toc_file[i]);
|
85
|
+
}
|
86
|
+
}
|
87
|
+
|
88
|
+
for (i=0; i<NUM_BAD_TOCS; i++) {
|
89
|
+
if (!cdio_is_tocfile(badtoc_file[i])) {
|
90
|
+
printf("Correct: %s doesn't parse as a cdrdao TOC file.\n",
|
91
|
+
badtoc_file[i]);
|
92
|
+
} else {
|
93
|
+
printf("Incorrect: %s parses as a cdrdao TOC file.\n",
|
94
|
+
badtoc_file[i]);
|
95
|
+
ret+=50*i+1;
|
96
|
+
break;
|
97
|
+
}
|
98
|
+
}
|
99
|
+
|
100
|
+
return ret;
|
101
|
+
}
|
@@ -0,0 +1,116 @@
|
|
1
|
+
This is free software; see the source for copying conditions.
|
2
|
+
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
|
3
|
+
PARTICULAR PURPOSE.
|
4
|
+
Hardware : Disk Image
|
5
|
+
Can eject : No
|
6
|
+
Can close tray : No
|
7
|
+
Can disable manual eject : No
|
8
|
+
Can select juke-box disc : No
|
9
|
+
|
10
|
+
Can set drive speed : No
|
11
|
+
Can detect if CD changed : No
|
12
|
+
Can read multiple sessions : No
|
13
|
+
Can hard reset device : No
|
14
|
+
|
15
|
+
Reading....
|
16
|
+
Can play audio : Yes
|
17
|
+
Can read CD-R : Yes
|
18
|
+
Can read CD-RW : Yes
|
19
|
+
Can read DVD-ROM : No
|
20
|
+
|
21
|
+
Writing....
|
22
|
+
Can write CD-RW : No
|
23
|
+
Can write DVD-R : No
|
24
|
+
Can write DVD-RAM : No
|
25
|
+
Can write DVD-RW : No
|
26
|
+
Can write DVD+RW : No
|
27
|
+
__________________________________
|
28
|
+
|
29
|
+
CD-ROM Track List (1 - 3)
|
30
|
+
#: MSF LSN Type Green?
|
31
|
+
1: 00:02:00 000000 XA true
|
32
|
+
2: 00:17:57 001182 XA true
|
33
|
+
3: 00:24:71 001721 XA true
|
34
|
+
170: 00:30:10 002110 leadout
|
35
|
+
Media Catalog Number (MCN): not available
|
36
|
+
__________________________________
|
37
|
+
CD Analysis Report
|
38
|
+
CD-ROM with CD-RTOS and ISO 9660 filesystem
|
39
|
+
ISO 9660: 1032 blocks, label `V0469 '
|
40
|
+
Application:
|
41
|
+
Preparer : LKVCDIMAGER 5.0.7.10(WIN32)
|
42
|
+
Publisher : LAURENS KOEHOORN
|
43
|
+
System : CD-RTOS CD-BRIDGE
|
44
|
+
Volume : V0469
|
45
|
+
Volume Set :
|
46
|
+
ISO9660 filesystem
|
47
|
+
root dir in PVD set to lsn 18
|
48
|
+
|
49
|
+
/:
|
50
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 18] 2048 Jul 14 1978 00:00 .
|
51
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 18] 2048 Jul 14 1978 00:00 ..
|
52
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 19] 2048 Jul 14 1978 00:00 ext
|
53
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 20] 2048 Jul 14 1978 00:00 mpegav
|
54
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 21] 2048 Jul 14 1978 00:00 segment
|
55
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 22] 2048 Jul 14 1978 00:00 sources
|
56
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 25] 2048 Jul 14 1978 00:00 vcd
|
57
|
+
|
58
|
+
/EXT/:
|
59
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 19] 2048 Jul 14 1978 00:00 .
|
60
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 18] 2048 Jul 14 1978 00:00 ..
|
61
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 375] 65536 Jul 14 1978 00:00 lot_x.vcd
|
62
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 407] 144 Jul 14 1978 00:00 psd_x.vcd
|
63
|
+
|
64
|
+
/MPEGAV/:
|
65
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 20] 2048 Jul 14 1978 00:00 .
|
66
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 18] 2048 Jul 14 1978 00:00 ..
|
67
|
+
- ---2-xrxrxr 0 0 [fn 01] [LSN 1182] 904036 ( 796672) Jul 14 1978 00:00 avseq01.dat
|
68
|
+
- ---2-xrxrxr 0 0 [fn 02] [LSN 1721] 904036 ( 796672) Jul 14 1978 00:00 avseq02.dat
|
69
|
+
|
70
|
+
/SEGMENT/:
|
71
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 21] 2048 Jul 14 1978 00:00 .
|
72
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 18] 2048 Jul 14 1978 00:00 ..
|
73
|
+
- ---2-xrxrxr 0 0 [fn 01] [LSN 225] 220780 ( 194560) Jul 14 1978 00:00 item0001.dat
|
74
|
+
|
75
|
+
/Sources/:
|
76
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 22] 2048 Jul 14 1978 00:00 .
|
77
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 18] 2048 Jul 14 1978 00:00 ..
|
78
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 23] 2048 Jul 14 1978 00:00 html
|
79
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 434] 842 Dec 11 2002 10:33 index.htm
|
80
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 435] 1216557 Jan 07 2003 18:01 menu.ppm
|
81
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 1030] 2793 Jan 07 2003 18:08 source.xml
|
82
|
+
|
83
|
+
/Sources/HTML/:
|
84
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 23] 2048 Jul 14 1978 00:00 .
|
85
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 22] 2048 Jul 14 1978 00:00 ..
|
86
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 425] 1067 Jan 07 2003 17:51 0.xml
|
87
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 426] 1067 Jan 07 2003 17:51 1.xml
|
88
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 24] 2048 Jul 14 1978 00:00 img
|
89
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 427] 1327 Jan 07 2003 17:51 movies.css
|
90
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 428] 12024 Jan 07 2003 17:51 toc.xsl
|
91
|
+
|
92
|
+
/Sources/HTML/img/:
|
93
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 24] 2048 Jul 14 1978 00:00 .
|
94
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 23] 2048 Jul 14 1978 00:00 ..
|
95
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 408] 1999 Nov 13 2002 07:27 al.gif
|
96
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 409] 7626 Jan 07 2003 17:42 loeki_groep_01.gif
|
97
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 413] 9986 Jan 07 2003 17:42 loeki_groep_02.gif
|
98
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 418] 207 Nov 14 2002 19:33 a_left.gif
|
99
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 419] 207 Nov 14 2002 19:33 a_right.gif
|
100
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 420] 441 Nov 13 2002 10:54 animatie.gif
|
101
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 421] 250 Nov 14 2002 11:44 face_up2.gif
|
102
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 422] 259 Nov 13 2002 11:09 familie.gif
|
103
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 423] 1010 Nov 14 2002 11:52 goldstar2.gif
|
104
|
+
- ----1xrxrxr 0 0 [fn 01] [LSN 424] 1783 Nov 13 2002 07:15 vcd.gif
|
105
|
+
|
106
|
+
/VCD/:
|
107
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 25] 2048 Jul 14 1978 00:00 .
|
108
|
+
d d---1xrxrxr 0 0 [fn 00] [LSN 18] 2048 Jul 14 1978 00:00 ..
|
109
|
+
- ----1xrxrxr 0 0 [fn 00] [LSN 151] 2048 Jul 14 1978 00:00 entries.vcd
|
110
|
+
- ----1xrxrxr 0 0 [fn 00] [LSN 150] 2048 Jul 14 1978 00:00 info.vcd
|
111
|
+
- ----1xrxrxr 0 0 [fn 00] [LSN 152] 65536 Jul 14 1978 00:00 lot.vcd
|
112
|
+
- ----1xrxrxr 0 0 [fn 00] [LSN 184] 72 Jul 14 1978 00:00 psd.vcd
|
113
|
+
|
114
|
+
XA sectors Video CD
|
115
|
+
session #2 starts at track 2, LSN: 1182, ISO 9660 blocks: 1032
|
116
|
+
ISO 9660: 1032 blocks, label `V0469 '
|