76 lines
1.9 KiB
Plaintext
76 lines
1.9 KiB
Plaintext
/*
|
|
* Exports (libparanoia) cdda_paranoia.h
|
|
*/
|
|
cdrom_paranoia *paranoia_init __PR((void * d, int nsectors));
|
|
void paranoia_modeset __PR((cdrom_paranoia * p, int mode));
|
|
long paranoia_seek __PR((cdrom_paranoia * p, long seek, int mode));
|
|
Int16_t *paranoia_read __PR((cdrom_paranoia * p, void (*callback) (long, int)));
|
|
Int16_t *paranoia_read_limited __PR((cdrom_paranoia * p, void (*callback) (long, int), int maxretries));
|
|
void paranoia_free __PR((cdrom_paranoia * p));
|
|
void paranoia_overlapset __PR((cdrom_paranoia * p, long overlap));
|
|
|
|
/*
|
|
* Exports ?? (libparanoia) overlap.h
|
|
*/
|
|
extern void paranoia_resetall __PR((cdrom_paranoia * p));
|
|
extern void paranoia_resetcache __PR((cdrom_paranoia * p));
|
|
|
|
Supported:
|
|
|
|
PARANOIA_MODE_VERIFY
|
|
PARANOIA_MODE_OVERLAP
|
|
PARANOIA_MODE_NEVERSKIP
|
|
|
|
Unsupported:
|
|
|
|
PARANOIA_MODE_FRAGMENT
|
|
PARANOIA_MODE_SCRATCH
|
|
PARANOIA_MODE_REPAIR
|
|
|
|
|
|
|
|
/*
|
|
* Imports (global Code)
|
|
*/
|
|
cdda_disc_firstsector (cdrom_drive *d) -> long sector
|
|
cdda_disc_lastsector (cdrom_drive *d) -> long sector
|
|
cdda_read (cdrom_drive *d, void *buffer, long beginsector, long sectors) -> long sectors
|
|
cdda_sector_gettrack (cdrom_drive *d,long sector) -> int trackno
|
|
cdda_track_audiop (cdrom_drive *d,int track) -> int ??? /* Is audiotrack */
|
|
cdda_track_firstsector (cdrom_drive *d,int track) -> long sector
|
|
cdda_track_lastsector (cdrom_drive *d,int track) -> long sector
|
|
cdda_tracks (cdrom_drive *d) -> int tracks
|
|
|
|
callback (long inpos, int function)
|
|
|
|
/*
|
|
* Imports (libc)
|
|
*/
|
|
calloc
|
|
free
|
|
malloc
|
|
realloc
|
|
|
|
memcmp
|
|
memcpy
|
|
memmove
|
|
memset
|
|
|
|
qsort
|
|
|
|
/*--------------------------------------------------------------------------*/
|
|
scgp = scg_open();
|
|
bufsize = scg_bufsize(scgp, CDR_BUF_SIZE);
|
|
nsecs = bufsize / SEC_SIZE;
|
|
|
|
cdp = paranoia_init(scgp, nsecs);
|
|
# paranoia_modeset(cdp, mode);
|
|
# paranoia_overlapset(cdp, overlap);
|
|
|
|
while (not ready) {
|
|
bp = paranoia_read(cdp, NULL);
|
|
write(f, bp, SEC_SISE);
|
|
}
|
|
|
|
paranoia_free(cdp);
|