3 --- mkcue.cc.orig 2004-10-27 08:20:30.000000000 +0200
5 @@ -12,6 +12,9 @@ static char ident[] =
9 +/* http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=439790 */
10 +#define MSF_OFFSET 150
13 DiskId::ReportError(char *err)
15 @@ -54,16 +57,12 @@ main(int argc, char *argv[])
18 puts("FILE \"dummy.wav\" WAVE");
19 - puts(" TRACK 01 AUDIO");
20 - puts(" INDEX 01 00:00:00");
22 #define min(x, y) ((x) < (y) ? (x) : (y))
23 - for (track = cdinfo.FirstTrack + 1;
24 + for (track = cdinfo.FirstTrack;
25 track <= min(trackcount, cdinfo.LastTrack);
27 - /* There is frequently (always?) an offset of 150 sectors, so
28 - * subtract the first track's offset. */
29 - cdinfo.FrameOffset[track] -= cdinfo.FrameOffset[1];
30 + cdinfo.FrameOffset[track] -= MSF_OFFSET;
32 minutes = seconds = sectors = 0;
33 sectors = cdinfo.FrameOffset[track] % 75;
34 @@ -76,6 +75,9 @@ main(int argc, char *argv[])
37 printf(" TRACK %02d AUDIO\n", track);
38 + if (track == 1 && cdinfo.FrameOffset[track] > 0) {
39 + printf(" INDEX 00 00:00:00\n");
41 printf(" INDEX 01 %02d:%02d:%02d\n", minutes, seconds, sectors);