author | nathan |
Sat, 29 Dec 2007 14:47:40 +0100 | |
branch | trunk |
changeset 0 | 474a1293c3c0 |
permissions | -rw-r--r-- |
nathan@0 | 1 |
--- discid.c.orig Thu Dec 27 19:48:57 2001 |
nathan@0 | 2 |
+++ discid.c Mon Feb 23 20:18:44 2004 |
nathan@0 | 3 |
@@ -5,14 +5,18 @@ |
nathan@0 | 4 |
|
nathan@0 | 5 |
|
nathan@0 | 6 |
unsigned long discid(cd * this_cd) { |
nathan@0 | 7 |
- unsigned int i=0, t, n = 0; |
nathan@0 | 8 |
+ unsigned int i=0, t, n = 0, trks=0, l=0; |
nathan@0 | 9 |
|
nathan@0 | 10 |
for (i=0; i< this_cd->tracks; i++) |
nathan@0 | 11 |
- n += cddb_sum((this_cd->track[T2I(i)].start_lba+CD_MSF_OFFSET)/CD_FRAMES); |
nathan@0 | 12 |
+ if(this_cd->track[T2I(i)].type==AUDIO) { |
nathan@0 | 13 |
+ n += cddb_sum((this_cd->track[T2I(i)].start_lba+CD_MSF_OFFSET)/CD_FRAMES); |
nathan@0 | 14 |
+ trks++; l=i; |
nathan@0 | 15 |
+ } |
nathan@0 | 16 |
|
nathan@0 | 17 |
- t = this_cd->track[T2I(this_cd->tracks-1)].stop_lba/CD_FRAMES; |
nathan@0 | 18 |
+ t = (this_cd->track[T2I(l+1)].start_lba- |
nathan@0 | 19 |
+ this_cd->track[T2I(0)].start_lba)/CD_FRAMES; |
nathan@0 | 20 |
|
nathan@0 | 21 |
- return (((n % 0xFF) << 24) | (t << 8) | this_cd->tracks); |
nathan@0 | 22 |
+ return (((n % 0xFF) << 24) | (t << 8) | trks); |
nathan@0 | 23 |
} |
nathan@0 | 24 |
|
nathan@0 | 25 |