home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Audio 4.94 - Over 11,000 Files
/
audio-11000.iso
/
msdos
/
sndbords
/
proaudio
/
pas_sdk1
/
pas
/
inc
/
cdrom.h
< prev
Wrap
C/C++ Source or Header
|
1992-07-07
|
4KB
|
175 lines
#define IOCTL_READ 3
#define IOCTL_WRITE 12
#define CD_GETDISCINFO 10
#define CD_GETTRACKINFO 11
#define CD_GETQCHANINFO 12
#define CD_GETUPCCODE 14
#define CD_GETAUDIOSTAT 15
#define CD_CMD_EJECT 0
#define CD_CMD_RESET 2
#define CD_CMD_SEEK 131
#define CD_CMD_PLAY 132
#define CD_CMD_STOP 133
#define CD_CMD_RESUME 136
#define CDISHERE 0x01
#define CDISPLAYING 0x02
#define CDISPAUSED 0x04
typedef unsigned char uchar;
struct cdromdrivestruct
{
char unitcode;
char far *ddheader;
};
struct cdreqheader
{
char len;
char unit;
char cmd;
int stat;
char reserved0[8];
};
struct ioctlread
{
struct cdreqheader cdh;
char mdb;
void far *buffer;
int size;
int ssn;
void far *errbuf;
};
struct ioctlwrite
{
struct cdreqheader cdh;
char mdb;
void far *buffer;
int size;
int ssn;
void far *errbuf;
};
struct ioctlseek
{
struct cdreqheader cdh;
char addrmode;
void far *buffer;
int sectorcount;
long startsector;
};
struct ioctlplay
{
struct cdreqheader cdh;
char addrmode;
long startsector;
long sectorcount;
};
struct ioctlstop
{
struct cdreqheader cdh;
};
struct ioctlresume
{
struct cdreqheader cdh;
};
struct ioctlstat
{
char cmd;
int status;
long startloc;
long endloc;
};
struct discinfo
{
char cmd;
char strk;
char ltrk;
long eodisc;
};
struct trackinfo
{
char cmd;
char track;
uchar frame;
uchar sec;
uchar min;
char dummy;
char control;
};
struct qchaninfo
{
char cmd;
char caa;
char track;
char index;
uchar min;
uchar sec;
uchar frame;
char reserved1;
uchar amin;
uchar asec;
uchar aframe;
};
struct upccode
{
char cmd;
char adr;
char code[7];
char zero;
char aframe;
};
/* prototypes */
/* mscdex.asm */ int ismscdex(void);
/* mscdex.asm */ int getnumcdroms(void);
/* mscdex.asm */ int getfirstcdrom(void);
/* mscdex.asm */ void getcdromlist(struct cdromdrivestruct far *cdromlist);
/* mscdex.asm */ int getcopyrightfname(int drive, char far *copyrightfname);
/* mscdex.asm */ int getabstractfname(int drive, char far *abstractfname);
/* mscdex.asm */ int getbibliofname(int drive, char far *bibliofname);
/* mscdex.asm */ int readvtoc(int drive, int index, char far *dscbuf);
/* mscdex.asm */ int absdiscread(int drive, int count, long sector, char far *buffer);
/* mscdex.asm */ int absdiscwrite(int drive, int count, long sector, char far *buffer);
/* mscdex.asm */ int chkdrive(int drive);
/* mscdex.asm */ int getmscdexversion();
/* mscdex.asm */ void getcdromunits(char far *cdromunits);
/* mscdex.asm */ int getvdescpref(int drive);
/* mscdex.asm */ int setvdescpref(int drive, int pref);
/* mscdex.asm */ int getdirentry(int drive, char far *name, char far *buffer);
/* mscdex.asm */ void senddevreq(int drive, void far *cdh);
/* mscdex.asm */ int getlasterror(void);
/* mscdex.asm */ int clearlasterror(void);
/* cdrom.c */ cdplay(int drive, long frame, long lframe);
/* cdrom.c */ cdstop(int drive);
/* cdrom.c */ cdpause(int drive);
/* cdrom.c */ cdresume(int drive);
/* cdrom.c */ cdseek(int drive, long frame);
/* cdrom.c */ cdreset(int drive);
/* cdrom.c */ cdeject(int drive);
/* cdrom.c */ cdstatus(int drive);
/* cdrom.c */ cdaudiostatus(int drive, long *nextstart, long *nextend);
/* cdrom.c */ cdmediachanged(int drive, int *yesorno);
/* cdrom.c */ int cddiscinfo(int drive, struct discinfo *di);
/* cdrom.c */ int cdtrackinfo(int drive, int track, struct trackinfo *ti);
/* cdrom.c */ int cdqchaninfo(int drive, struct qchaninfo *qi);
/* cdrom.c */ isanaudiocd(int drive);
/* cdrom.c */ long redtolong(long redaddress);
/* cdrom.c */ long longtored(long longval);
/* cdrom.c */ long msftolong(long msfvalue);
/* cdrom.c */ inttobcd(int data);
/* cdrom.c */ bcdtoint(int data);
/* cdrom.c */ fixmsf(int *min, int *sec, int *frame);
/* cdrom.c */ cdseekmsf(int drive, int min, int sec, int frame);
/* cdrom.c */ cdplaymsf(int drive, int min, int sec, int frame, int lmin, int lsec, int lframe);