1710d3
diff -up cdrkit-1.1.11/CMakeLists.txt.paranoiacdda cdrkit-1.1.11/CMakeLists.txt
1710d3
--- cdrkit-1.1.11/CMakeLists.txt.paranoiacdda	2012-07-31 14:27:15.166155309 +0200
1710d3
+++ cdrkit-1.1.11/CMakeLists.txt	2012-07-31 14:27:28.469613175 +0200
1710d3
@@ -1,3 +1,3 @@
1710d3
 PROJECT (cdrkit C)
1710d3
-SUBDIRS(include genisoimage wodim libedc libhfs_iso libparanoia icedax libusal librols libunls readom netscsid 3rd-party/dirsplit)
1710d3
+SUBDIRS(include genisoimage wodim libedc libhfs_iso icedax libusal librols libunls readom netscsid 3rd-party/dirsplit)
1710d3
 
1710d3
diff -up cdrkit-1.1.11/icedax/CMakeLists.txt.paranoiacdda cdrkit-1.1.11/icedax/CMakeLists.txt
1710d3
--- cdrkit-1.1.11/icedax/CMakeLists.txt.paranoiacdda	2012-07-31 14:27:15.228157411 +0200
1710d3
+++ cdrkit-1.1.11/icedax/CMakeLists.txt	2012-07-31 14:27:15.239157786 +0200
1710d3
@@ -1,8 +1,9 @@
1710d3
 PROJECT (icedax C)
1710d3
-INCLUDE_DIRECTORIES(../include ../wodim ../libparanoia ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/include)
1710d3
+INCLUDE_DIRECTORIES(../include ../wodim ${CMAKE_BINARY_DIR} ${CMAKE_BINARY_DIR}/include)
1710d3
 include(../include/AddScgBits.cmake)
1710d3
 include(../include/AddSchilyBits.cmake)
1710d3
 include(../include/AddNetworkBits.cmake)
1710d3
+INCLUDE (CheckLibraryExists) 
1710d3
 
1710d3
 FIND_FILE (HAVE_SYS_SOUNDCARD_H sys/soundcard.h)
1710d3
 IF(HAVE_SYS_SOUNDCARD_H)
1710d3
@@ -18,12 +19,20 @@ IF(HAVE_LIBOSSAUDIO)
1710d3
    LIST(APPEND EXTRA_LIBS "ossaudio")
1710d3
 ENDIF(HAVE_LIBOSSAUDIO)
1710d3
 
1710d3
-LIST(APPEND EXTRA_LIBS  paranoia)
1710d3
+CHECK_INCLUDE_FILES(cdda/cdda_interface.h HAVE_CDDA_INTERFACE_H)
1710d3
+CHECK_LIBRARY_EXISTS (cdda_paranoia paranoia_init "" HAVE_LIBPARANOIA)
1710d3
+IF(HAVE_CDDA_INTERFACE_H AND HAVE_LIBPARANOIA)
1710d3
+   LIST(APPEND EXTRA_LIBS cdda_paranoia cdda_interface)
1710d3
+ELSE(HAVE_CDDA_INTERFACE_H AND HAVE_LIBPARANOIA)
1710d3
+   MESSAGE(FATAL_ERROR "You need cdparanoia library installed")
1710d3
+ENDIF(HAVE_CDDA_INTERFACE_H AND HAVE_LIBPARANOIA)
1710d3
+	
1710d3
+LIST(APPEND EXTRA_LIBS)
1710d3
 IF (WIN32)
1710d3
 	LIST(APPEND EXTRA_LIBS winmm)
1710d3
 ENDIF (WIN32)
1710d3
 
1710d3
-LINK_DIRECTORIES(../librols ../libusal  ../libparanoia)
1710d3
+LINK_DIRECTORIES(../librols ../libusal)
1710d3
 ADD_EXECUTABLE (icedax aifc.c aiff.c base64.c icedax.c interface.c ioctl.c raw.c resample.c ringbuff.c scsi_cmds.c semshm.c setuid.c sha_func.c sndconfig.c sun.c toc.c wav.c)
1710d3
 TARGET_LINK_LIBRARIES(icedax wodimstuff ${EXTRA_LIBS})
1710d3
 SET_TARGET_PROPERTIES(icedax PROPERTIES  SKIP_BUILD_RPATH TRUE)
1710d3
diff -up cdrkit-1.1.11/icedax/global.h.paranoiacdda cdrkit-1.1.11/icedax/global.h
1710d3
--- cdrkit-1.1.11/icedax/global.h.paranoiacdda	2012-07-31 14:27:15.232157548 +0200
1710d3
+++ cdrkit-1.1.11/icedax/global.h	2012-07-31 14:27:15.226157345 +0200
1710d3
@@ -17,7 +17,8 @@
1710d3
 #include "md5.h"
1710d3
 #endif
1710d3
 #ifdef	USE_PARANOIA
1710d3
-#include "cdda_paranoia.h"
1710d3
+#include <cdda/cdda_interface.h>
1710d3
+#include <cdda/cdda_paranoia.h>
1710d3
 #endif
1710d3
 
1710d3
 typedef struct index_list
1710d3
@@ -102,10 +103,10 @@ typedef struct global
1710d3
 
1710d3
 	struct paranoia_parms_t
1710d3
 	{
1710d3
-	        Ucbit	disable_paranoia:1;
1710d3
-	        Ucbit	disable_extra_paranoia:1;
1710d3
-	        Ucbit	disable_scratch_detect:1;
1710d3
-	        Ucbit	disable_scratch_repair:1;
1710d3
+	        char	disable_paranoia:1;
1710d3
+	        char	disable_extra_paranoia:1;
1710d3
+	        char	disable_scratch_detect:1;
1710d3
+	        char	disable_scratch_repair:1;
1710d3
 		int	retries;
1710d3
 		int	overlap;
1710d3
 		int	mindynoverlap;
1710d3
diff -up cdrkit-1.1.11/icedax/icedax.c.paranoiacdda cdrkit-1.1.11/icedax/icedax.c
1710d3
--- cdrkit-1.1.11/icedax/icedax.c.paranoiacdda	2012-07-31 14:27:15.237157718 +0200
1710d3
+++ cdrkit-1.1.11/icedax/icedax.c	2012-07-31 14:27:15.238157752 +0200
1710d3
@@ -120,6 +120,10 @@
1710d3
 #ifdef	USE_LAME
1710d3
 #include "mp3.h"	/* mp3 file handling */
1710d3
 #endif
1710d3
+#ifdef	USE_PARANOIA
1710d3
+#include <cdda/cdda_interface.h>
1710d3
+#include <cdda/cdda_paranoia.h>
1710d3
+#endif
1710d3
 #include "interface.h"  /* low level cdrom interfacing */
1710d3
 #include "icedax.h"
1710d3
 #include "resample.h"
1710d3
@@ -128,9 +132,6 @@
1710d3
 #include "ringbuff.h"
1710d3
 #include "global.h"
1710d3
 #include "exitcodes.h"
1710d3
-#ifdef	USE_PARANOIA
1710d3
-#include "cdda_paranoia.h"
1710d3
-#endif
1710d3
 #include "defaults.h"
1710d3
 
1710d3
 static void RestrictPlaybackRate(long newrate);
1710d3
@@ -800,7 +801,7 @@ static void init_globals()
1710d3
   global.useroverlap = -1;      /* amount of overlapping sectors user override */
1710d3
   global.need_hostorder = 0;	/* processing needs samples in host endianess */
1710d3
   global.in_lendian = -1;	/* input endianess from SetupSCSI() */
1710d3
-  global.outputendianess = NONE; /* user specified output endianess */
1710d3
+  global.outputendianess = NONE_EN; /* user specified output endianess */
1710d3
   global.findminmax  =  0;	/* flag find extrem amplitudes */
1710d3
 #ifdef HAVE_LIMITS_H
1710d3
   global.maxamp[0] = INT_MIN;	/* maximum amplitude */
1710d3
@@ -2418,7 +2419,7 @@ Rate   Divider      Rate   Divider
1710d3
   if (bulk == -1) bulk = 0;
1710d3
 
1710d3
   global.need_big_endian = global.audio_out->need_big_endian;
1710d3
-  if (global.outputendianess != NONE)
1710d3
+  if (global.outputendianess != NONE_EN)
1710d3
     global.need_big_endian = global.outputendianess == BIG;
1710d3
 
1710d3
   if (global.no_file) global.fname_base[0] = '\0';
1710d3
@@ -2602,7 +2603,7 @@ Rate   Divider      Rate   Divider
1710d3
     fputs( ", soundcard", stderr );
1710d3
 #endif
1710d3
 #if defined USE_PARANOIA
1710d3
-    fputs( ", libparanoia", stderr );
1710d3
+    fputs( ", libcdda_paranoia", stderr );
1710d3
 #endif
1710d3
     fputs( " support\n", stderr );
1710d3
   }
1710d3
@@ -2892,8 +2893,28 @@ Rate   Divider      Rate   Divider
1710d3
 #ifdef	USE_PARANOIA
1710d3
 	if (global.paranoia_selected) {
1710d3
 		long paranoia_mode;
1710d3
+		cdrom_drive *tmpdrive;
1710d3
+		usal_close(get_scsi_p());
1710d3
 
1710d3
-		global.cdp = paranoia_init(get_scsi_p(), global.nsectors);
1710d3
+		tmpdrive = cdda_identify(global.dev_name, 0, NULL);
1710d3
+		if (!tmpdrive)
1710d3
+		{
1710d3
+			fputs("Can't identify disc\n", stderr);
1710d3
+                	return 1;
1710d3
+		}
1710d3
+
1710d3
+		if(global.nsectors)
1710d3
+		{
1710d3
+		  tmpdrive->nsectors = global.nsectors;
1710d3
+		  tmpdrive->bigbuff = global.nsectors * CD_FRAMESIZE_RAW;
1710d3
+		}
1710d3
+		if (cdda_open(tmpdrive) != 0)
1710d3
+		{
1710d3
+		  fputs("Can't open disc\n", stderr);
1710d3
+		  cdda_close(tmpdrive);
1710d3
+		  return 1;
1710d3
+		}
1710d3
+		global.cdp = paranoia_init(tmpdrive);
1710d3
 
1710d3
 		if (global.paranoia_parms.overlap >= 0) {
1710d3
 			int	overlap = global.paranoia_parms.overlap;
1710d3
@@ -2902,17 +2923,7 @@ Rate   Divider      Rate   Divider
1710d3
 				overlap = global.nsectors - 1;
1710d3
 			paranoia_overlapset(global.cdp, overlap);
1710d3
 		}
1710d3
-		/*
1710d3
-		 * Default to a  minimum of dynamic overlapping == 0.5 sectors.
1710d3
-		 * If we don't do this, we get the default from libparanoia
1710d3
-		 * which is approx. 0.1.
1710d3
-		 */
1710d3
-		if (global.paranoia_parms.mindynoverlap < 0)
1710d3
-			paranoia_dynoverlapset(global.cdp, CD_FRAMEWORDS/2, -1);
1710d3
-		paranoia_dynoverlapset(global.cdp,
1710d3
-			global.paranoia_parms.mindynoverlap * CD_FRAMEWORDS,
1710d3
-			global.paranoia_parms.maxdynoverlap * CD_FRAMEWORDS);
1710d3
-
1710d3
+	
1710d3
 		paranoia_mode = PARANOIA_MODE_FULL ^ PARANOIA_MODE_NEVERSKIP;
1710d3
 
1710d3
 		if (global.paranoia_parms.disable_paranoia) {
1710d3
diff -up cdrkit-1.1.11/icedax/icedax.h.paranoiacdda cdrkit-1.1.11/icedax/icedax.h
1710d3
--- cdrkit-1.1.11/icedax/icedax.h.paranoiacdda	2012-07-31 14:27:15.216157005 +0200
1710d3
+++ cdrkit-1.1.11/icedax/icedax.h	2012-07-31 14:27:15.217157039 +0200
1710d3
@@ -41,7 +41,7 @@
1710d3
 
1710d3
 /* Endianess */
1710d3
 #define GUESS (-2)
1710d3
-#define NONE (-1)
1710d3
+#define NONE_EN (-1)
1710d3
 #define LITTLE 0
1710d3
 #define BIG 1
1710d3
 
1710d3
diff -up cdrkit-1.1.11/icedax/interface.c.paranoiacdda cdrkit-1.1.11/icedax/interface.c
1710d3
--- cdrkit-1.1.11/icedax/interface.c.paranoiacdda	2012-07-31 14:27:15.235157650 +0200
1710d3
+++ cdrkit-1.1.11/icedax/interface.c	2012-07-31 14:27:15.232157548 +0200
1710d3
@@ -116,7 +116,7 @@ int		(*Play_at)(SCSI *usalp, unsigned in
1710d3
 int		(*StopPlay)(SCSI *usalp);
1710d3
 void		(*trash_cache)(UINT4 *p, unsigned lSector, unsigned SectorBurstVal);
1710d3
 
1710d3
-#if	defined	USE_PARANOIA
1710d3
+#if	0 //defined	USE_PARANOIA
1710d3
 long cdda_read(void *d, void *buffer, long beginsector, long sectors);
1710d3
 
1710d3
 long cdda_read(void *d, void *buffer, long beginsector, long sectors)
1710d3
diff -up cdrkit-1.1.11/icedax/toc.c.paranoiacdda cdrkit-1.1.11/icedax/toc.c
1710d3
--- cdrkit-1.1.11/icedax/toc.c.paranoiacdda	2012-07-31 14:27:15.225157311 +0200
1710d3
+++ cdrkit-1.1.11/icedax/toc.c	2012-07-31 14:27:15.230157480 +0200
1710d3
@@ -379,8 +379,7 @@ static void emit_cddb_form(char *fname_b
1710d3
 static void emit_cdindex_form(char *fname_baseval);
1710d3
 #endif
1710d3
 
1710d3
-
1710d3
-typedef struct TOC {	/* structure of table of contents (cdrom) */
1710d3
+typedef struct TOC_t {	/* structure of table of contents (cdrom) */
1710d3
 	unsigned char reserved1;
1710d3
 	unsigned char bFlags;
1710d3
 	unsigned char bTrack;
1710d3
@@ -391,8 +390,7 @@ typedef struct TOC {	/* structure of tab
1710d3
 	int frms;
1710d3
 	unsigned char ISRC[16];
1710d3
 	int	SCMS;
1710d3
-} TOC;
1710d3
-
1710d3
+} TOC_t;
1710d3
 
1710d3
 /* Flags contains two fields:
1710d3
     bits 7-4 (ADR)
1710d3
@@ -432,7 +430,7 @@ struct iterator {
1710d3
 	int index;
1710d3
 	int startindex;
1710d3
 	void        (*reset)(struct iterator *this);
1710d3
-	struct TOC *(*getNextTrack)(struct iterator *this);
1710d3
+	struct TOC_t *(*getNextTrack)(struct iterator *this);
1710d3
 	int         (*hasNextTrack)(struct iterator *this);
1710d3
 };
1710d3
 
1710d3
@@ -518,7 +516,7 @@ unsigned FixupTOC(unsigned no_tracks)
1710d3
 		    InitIterator(&i, 1);
1710d3
 
1710d3
 	    while (i.hasNextTrack(&i)) {
1710d3
-		    struct TOC *p = i.getNextTrack(&i);
1710d3
+		    struct TOC_t *p = i.getNextTrack(&i);
1710d3
 		    if (IS__AUDIO(p)) count_audio_tracks++;
1710d3
 	    }
1710d3
 
1710d3
@@ -733,7 +731,7 @@ static void emit_cddb_form(char *fname_b
1710d3
   fprintf( cddb_form, "# Track frame offsets:\n#\n");
1710d3
 
1710d3
   while (i.hasNextTrack(&i)) {
1710d3
-	  struct TOC *p = i.getNextTrack(&i);
1710d3
+	  struct TOC_t *p = i.getNextTrack(&i);
1710d3
 	  if (GETTRACK(p) == CDROM_LEADOUT) break;
1710d3
 	  fprintf( cddb_form,
1710d3
 		   "# %lu\n", 150 + Get_AudioStartSector(GETTRACK(p)));
1710d3
@@ -765,7 +763,7 @@ static void emit_cddb_form(char *fname_b
1710d3
 
1710d3
   i.reset(&i);
1710d3
   while (i.hasNextTrack(&i)) {
1710d3
-	  struct TOC *p = i.getNextTrack(&i);
1710d3
+	  struct TOC_t *p = i.getNextTrack(&i);
1710d3
 	  int ii;
1710d3
 
1710d3
 	  ii = GETTRACK(p);
1710d3
@@ -788,7 +786,7 @@ static void emit_cddb_form(char *fname_b
1710d3
 
1710d3
   i.reset(&i);
1710d3
   while (i.hasNextTrack(&i)) {
1710d3
-	  struct TOC *p = i.getNextTrack(&i);
1710d3
+	  struct TOC_t *p = i.getNextTrack(&i);
1710d3
 	  int ii;
1710d3
 
1710d3
 	  ii = GETTRACK(p);
1710d3
@@ -1495,7 +1493,7 @@ static int IsSingleArtist(void)
1710d3
 	InitIterator(&i, 1);
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		struct TOC *p = i.getNextTrack(&i);
1710d3
+		struct TOC_t *p = i.getNextTrack(&i);
1710d3
 		int ii;
1710d3
 
1710d3
 		if (IS__DATA(p) || GETTRACK(p) == CDROM_LEADOUT) continue;
1710d3
@@ -1681,7 +1679,7 @@ static void emit_cdindex_form(char *fnam
1710d3
 	 global.creator ? ascii2html(global.creator) : "");
1710d3
 
1710d3
     while (i.hasNextTrack(&i)) {
1710d3
-	    struct TOC *p = i.getNextTrack(&i);
1710d3
+	    struct TOC_t *p = i.getNextTrack(&i);
1710d3
 	    int ii = GETTRACK(p);
1710d3
 
1710d3
 	    if (ii == CDROM_LEADOUT) break;
1710d3
@@ -1703,7 +1701,7 @@ static void emit_cdindex_form(char *fnam
1710d3
     fprintf( cdindex_form, "   <MultipleArtistCD>\n");
1710d3
 
1710d3
     while (i.hasNextTrack(&i)) {
1710d3
-	    struct TOC *p = i.getNextTrack(&i);
1710d3
+	    struct TOC_t *p = i.getNextTrack(&i);
1710d3
 	    int ii = GETTRACK(p);
1710d3
 
1710d3
 	    if (ii == CDROM_LEADOUT) break;
1710d3
@@ -1942,9 +1940,9 @@ static void DisplayToc_with_gui(unsigned
1710d3
 
1710d3
 	if ((global.verbose & (SHOW_TOC | SHOW_STARTPOSITIONS | SHOW_SUMMARY | SHOW_TITLES)) != 0
1710d3
 	    && i.hasNextTrack(&i)) {
1710d3
-		TOC *o = i.getNextTrack(&i);
1710d3
+		TOC_t *o = i.getNextTrack(&i);
1710d3
 		while (i.hasNextTrack(&i)) {
1710d3
-			TOC *p = i.getNextTrack(&i);
1710d3
+			TOC_t *p = i.getNextTrack(&i);
1710d3
 			int from;
1710d3
 			from = GETTRACK(o);
1710d3
 
1710d3
@@ -2072,9 +2070,9 @@ static void DisplayToc_no_gui(unsigned l
1710d3
 	count_audio_trks = 0;
1710d3
 
1710d3
 	if (i.hasNextTrack(&i)) {
1710d3
-		TOC *o = i.getNextTrack(&i);
1710d3
+		TOC_t *o = i.getNextTrack(&i);
1710d3
 		while (i.hasNextTrack(&i)) {
1710d3
-			TOC *p = i.getNextTrack(&i);
1710d3
+			TOC_t *p = i.getNextTrack(&i);
1710d3
 			int from;
1710d3
 			from = GETTRACK(o);
1710d3
 
1710d3
@@ -2131,10 +2129,10 @@ static void DisplayToc_no_gui(unsigned l
1710d3
 	i.reset(&i);
1710d3
 	if ((global.verbose & SHOW_TOC) != 0 &&
1710d3
 		i.hasNextTrack(&i)) {
1710d3
-		TOC *o = i.getNextTrack(&i);
1710d3
+		TOC_t *o = i.getNextTrack(&i);
1710d3
 
1710d3
 		for (; i.hasNextTrack(&i);) {
1710d3
-			TOC *p = i.getNextTrack(&i);
1710d3
+			TOC_t *p = i.getNextTrack(&i);
1710d3
 
1710d3
 			if ( GETTRACK(o) <= MAXTRK ) {
1710d3
 				unsigned char brace1, brace2;
1710d3
@@ -2189,9 +2187,9 @@ static void DisplayToc_no_gui(unsigned l
1710d3
 		ii = 0;
1710d3
 		i.reset(&i);
1710d3
 		if (i.hasNextTrack(&i)) {
1710d3
-			TOC *o = i.getNextTrack(&i);
1710d3
+			TOC_t *o = i.getNextTrack(&i);
1710d3
 			for ( ; i.hasNextTrack(&i);) {
1710d3
-				TOC *p = i.getNextTrack(&i);
1710d3
+				TOC_t *p = i.getNextTrack(&i);
1710d3
 				fprintf ( stderr,
1710d3
 					  " %2u.(%8u)",
1710d3
 					  GETTRACK(o),
1710d3
@@ -2248,7 +2246,7 @@ static void DisplayToc_no_gui(unsigned l
1710d3
 
1710d3
 		i.reset(&i);
1710d3
 		for ( ; i.hasNextTrack(&i);) {
1710d3
-			TOC *p = i.getNextTrack(&i);
1710d3
+			TOC_t *p = i.getNextTrack(&i);
1710d3
 			int jj = GETTRACK(p);
1710d3
 
1710d3
 			if ( global.tracktitle[jj] != NULL ) {
1710d3
@@ -2260,7 +2258,7 @@ static void DisplayToc_no_gui(unsigned l
1710d3
 		
1710d3
 		i.reset(&i);
1710d3
 		for ( ; i.hasNextTrack(&i); ) {
1710d3
-			TOC *p = i.getNextTrack(&i);
1710d3
+			TOC_t *p = i.getNextTrack(&i);
1710d3
 			int jj;
1710d3
 
1710d3
 			if (IS__DATA(p))
1710d3
@@ -2720,7 +2718,7 @@ void Read_MCN_ISRC(void)
1710d3
 		InitIterator(&i, 1);
1710d3
 
1710d3
 		while (i.hasNextTrack(&i)) {
1710d3
-			struct TOC *p = i.getNextTrack(&i);
1710d3
+			struct TOC_t *p = i.getNextTrack(&i);
1710d3
 			unsigned ii = GETTRACK(p);
1710d3
 			
1710d3
 			if (ii == CDROM_LEADOUT) break;
1710d3
@@ -3155,7 +3153,7 @@ unsigned ScanIndices(unsigned track, uns
1710d3
 
1710d3
 
1710d3
   while (i.hasNextTrack(&i)) {
1710d3
-	  struct TOC *p = i.getNextTrack(&i);
1710d3
+	  struct TOC_t *p = i.getNextTrack(&i);
1710d3
 	  unsigned ii = GETTRACK(p);
1710d3
 
1710d3
 	  if ( ii < starttrack || IS__DATA(p) )
1710d3
@@ -3322,7 +3320,7 @@ unsigned char *Get_MCN(void)
1710d3
 }
1710d3
 
1710d3
 
1710d3
-static TOC g_toc [MAXTRK+1]; /* hidden track + 100 regular tracks */
1710d3
+static TOC_t g_toc [MAXTRK+1]; /* hidden track + 100 regular tracks */
1710d3
 
1710d3
 /*#define IS_AUDIO(i) (!(g_toc[i].bFlags & 0x40))*/
1710d3
 
1710d3
@@ -3397,10 +3395,10 @@ static int patch_cd_extra(unsigned track
1710d3
 
1710d3
 static int restrict_tracks_illleadout(void)
1710d3
 {
1710d3
-	struct TOC *o = &g_toc[cdtracks+1];
1710d3
+	struct TOC_t *o = &g_toc[cdtracks+1];
1710d3
 	int i;
1710d3
 	for (i = cdtracks; i >= 0; i--) {
1710d3
-		struct TOC *p = &g_toc[i];
1710d3
+		struct TOC_t *p = &g_toc[i];
1710d3
 		if (GETSTART(o) > GETSTART(p)) break;
1710d3
 	}
1710d3
 	patch_cd_extra(i+1, GETSTART(o));
1710d3
@@ -3523,7 +3521,7 @@ static void it_reset(struct iterator *th
1710d3
 
1710d3
 
1710d3
 static int it_hasNextTrack(struct iterator *this);
1710d3
-static struct TOC *it_getNextTrack(struct iterator *this);
1710d3
+static struct TOC_t *it_getNextTrack(struct iterator *this);
1710d3
 
1710d3
 static int it_hasNextTrack(struct iterator *this)
1710d3
 {
1710d3
@@ -3532,7 +3530,7 @@ static int it_hasNextTrack(struct iterat
1710d3
 
1710d3
 
1710d3
 
1710d3
-static struct TOC *it_getNextTrack(struct iterator *this)
1710d3
+static struct TOC_t *it_getNextTrack(struct iterator *this)
1710d3
 {
1710d3
 	/* if ( (*this->hasNextTrack)(this) == 0 ) return NULL; */
1710d3
 	if ( this->index > (int)cdtracks+1 ) return NULL;
1710d3
@@ -3583,7 +3581,7 @@ long Get_AudioStartSector(unsigned long
1710d3
 	if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		TOC *p = i.getNextTrack(&i);
1710d3
+		TOC_t *p = i.getNextTrack(&i);
1710d3
 
1710d3
 		if (GETTRACK(p) == p_track) {
1710d3
 			if (IS__DATA(p)) {
1710d3
@@ -3613,7 +3611,7 @@ long Get_StartSector(unsigned long p_tra
1710d3
 	if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		TOC *p = i.getNextTrack(&i);
1710d3
+		TOC_t *p = i.getNextTrack(&i);
1710d3
 
1710d3
 		if (GETTRACK(p) == p_track) {
1710d3
 			return GETSTART(p);
1710d3
@@ -3637,7 +3635,7 @@ long Get_EndSector(unsigned long p_track
1710d3
 	if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		TOC *p = i.getNextTrack(&i);
1710d3
+		TOC_t *p = i.getNextTrack(&i);
1710d3
 		if (GETTRACK(p) == p_track) {
1710d3
 			p = i.getNextTrack(&i);
1710d3
 			if (p == NULL) {
1710d3
@@ -3669,7 +3667,7 @@ long FirstAudioTrack(void)
1710d3
 	else i.reset(&i);
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		TOC *p = i.getNextTrack(&i);
1710d3
+		TOC_t *p = i.getNextTrack(&i);
1710d3
 		unsigned ii = GETTRACK(p);
1710d3
 
1710d3
 		if (ii == CDROM_LEADOUT) break;
1710d3
@@ -3687,7 +3685,7 @@ long FirstDataTrack(void)
1710d3
 	else i.reset(&i);
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		TOC *p = i.getNextTrack(&i);
1710d3
+		TOC_t *p = i.getNextTrack(&i);
1710d3
 		if (IS__DATA(p)) {
1710d3
 			return GETTRACK(p);
1710d3
 		}
1710d3
@@ -3708,7 +3706,7 @@ long LastAudioTrack(void)
1710d3
 	else i.reset(&i);
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		TOC *p = i.getNextTrack(&i);
1710d3
+		TOC_t *p = i.getNextTrack(&i);
1710d3
 		if (IS__AUDIO(p) && (GETTRACK(p) != CDROM_LEADOUT)) {
1710d3
 			j = GETTRACK(p);
1710d3
 		}
1710d3
@@ -3730,7 +3728,7 @@ long Get_LastSectorOnCd(unsigned long p_
1710d3
 	if (p_track == cdtracks + 1) p_track = CDROM_LEADOUT;
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		TOC *p = i.getNextTrack(&i);
1710d3
+		TOC_t *p = i.getNextTrack(&i);
1710d3
 
1710d3
 		if (GETTRACK(p) < p_track)
1710d3
 			continue;
1710d3
@@ -3749,9 +3747,9 @@ int Get_Track(unsigned long sector)
1710d3
 	else i.reset(&i);
1710d3
 
1710d3
 	if (i.hasNextTrack(&i)) {
1710d3
-		TOC *o = i.getNextTrack(&i);
1710d3
+		TOC_t *o = i.getNextTrack(&i);
1710d3
 		while (i.hasNextTrack(&i)) {
1710d3
-			TOC *p = i.getNextTrack(&i);
1710d3
+			TOC_t *p = i.getNextTrack(&i);
1710d3
 			if ((GETSTART(o) <= sector) && (GETSTART(p) > sector)) {
1710d3
 				if (IS__DATA(o)) {
1710d3
 					return -1;
1710d3
@@ -3772,7 +3770,7 @@ int CheckTrackrange(unsigned long from,
1710d3
 	else i.reset(&i);
1710d3
 
1710d3
 	while (i.hasNextTrack(&i)) {
1710d3
-		TOC *p = i.getNextTrack(&i);
1710d3
+		TOC_t *p = i.getNextTrack(&i);
1710d3
 
1710d3
 		if (GETTRACK(p) < from)
1710d3
 			continue;
1710d3
@@ -3788,54 +3786,3 @@ int CheckTrackrange(unsigned long from,
1710d3
 	return 0;
1710d3
 }
1710d3
 
1710d3
-#ifdef	USE_PARANOIA
1710d3
-long cdda_disc_firstsector(void *d);
1710d3
-
1710d3
-long cdda_disc_firstsector(void *d)
1710d3
-{
1710d3
-	return Get_StartSector(FirstAudioTrack());
1710d3
-}
1710d3
-
1710d3
-int cdda_tracks(void *d);
1710d3
-
1710d3
-int cdda_tracks(void *d)
1710d3
-{
1710d3
-	return LastAudioTrack() - FirstAudioTrack() +1;
1710d3
-}
1710d3
-
1710d3
-int cdda_track_audiop(void *d, int track);
1710d3
-
1710d3
-int cdda_track_audiop(void *d, int track)
1710d3
-{
1710d3
-	return Get_Datatrack(track) == 0;
1710d3
-}
1710d3
-
1710d3
-long cdda_track_firstsector(void *d, int track);
1710d3
-
1710d3
-long cdda_track_firstsector(void *d, int track)
1710d3
-{
1710d3
-	return Get_AudioStartSector(track);
1710d3
-}
1710d3
-
1710d3
-long cdda_track_lastsector(void *d, int track);
1710d3
-
1710d3
-long cdda_track_lastsector(void *d, int track)
1710d3
-{
1710d3
-	return Get_EndSector(track);
1710d3
-}
1710d3
-
1710d3
-long cdda_disc_lastsector(void *d);
1710d3
-
1710d3
-long cdda_disc_lastsector(void *d)
1710d3
-{
1710d3
-	return Get_LastSectorOnCd(cdtracks) - 1;
1710d3
-}
1710d3
-
1710d3
-int cdda_sector_gettrack(void *d,long sector);
1710d3
-
1710d3
-int cdda_sector_gettrack(void *d, long sector)
1710d3
-{
1710d3
-	return Get_Track(sector);
1710d3
-}
1710d3
-
1710d3
-#endif