Technical data
cdio(7I) Ioctl Requests SunOS 5.5
To allocate the memory related to CD-DA and/or subcode data,
the following values are appropriate for each data block
transferred:
CD-DA data with no subcode 2352 bytes
CD-DA data with sub Q code 2368 bytes
CD-DA data with all subcode 2448 bytes
All subcode only 96 bytes
CDROMCDXA SPARC: This ioctl() command returns theCD-ROM XA (CD-ROM
Extended Architecture) data according to CD-ROM XA format. The
third argument of the ioctl() call is a pointer to the type struct
cdrom_cdxa. In addition to allocating memory and supplying its
address, the caller needs to supply the starting address of the data,
the transfer length, and the format. The caller also needs to issue
the CDROMREADTOCENTRY ioctl() to find out which tracks con-
tain CD-ROM XA data before issuing this ioctl().
/∗
∗ Definition of CD-ROM XA structure
∗/
struct cdrom_cdxa {
unsigned int cdxa_addr;
unsigned int cdxa_length;
caddr_t cdxa_data;
unsigned char cdxa_format;
};
To get the proper CD-ROM XA data, the following values are
appropriate for the cdxa_format field:
CDROM_XA_DATA CD-ROM XA data only
CDROM_XA_SECTOR_DATA CD-ROM XA all sector data
CDROM_XA_DATA_W_ERROR CD-ROM XA data with error
flags data
To allocate the memory related to CD-ROM XA format, the follow-
ing values are appropriate for each data block transferred:
CD-ROM XA data only 2048 bytes
CD-ROM XA all sector data 2352 bytes
CD-ROM XA data with error flags data
2646 bytes
CDROMSUBCODE SPARC: This ioctl() command returns raw subcode data (sub-
codes P ˜ W are described in the "Red Book," see SEE ALSO) to the
initiator while the target is playing audio. The third argument of
the ioctl() call is a pointer to the type struct cdrom_subcode. The
caller needs to supply the transfer length and allocate memory for
7I-58 modified 26 Jan 1995










