#include "quakedef.h"
-extern qboolean cdPlaying;
-extern qboolean cdPlayLooping;
-extern qbyte cdPlayTrack;
-
static int cdfile = -1;
static char cd_dev[64] = "/dev/cdrom";
+
void CDAudio_SysEject (void)
{
if (cdfile == -1)
return;
if (ioctl(cdfile, CDROMEJECT) == -1)
- Con_DPrintf("ioctl cdromeject failed\n");
+ Con_DPrintf("ioctl CDROMEJECT failed\n");
}
return;
if (ioctl(cdfile, CDROMCLOSETRAY) == -1)
- Con_DPrintf("ioctl cdromclosetray failed\n");
+ Con_DPrintf("ioctl CDROMCLOSETRAY failed\n");
}
int CDAudio_SysGetAudioDiskInfo (void)
if (ioctl(cdfile, CDROMREADTOCHDR, &tochdr) == -1)
{
- Con_DPrintf("ioctl cdromreadtochdr failed\n");
+ Con_DPrintf("ioctl CDROMREADTOCHDR failed\n");
return -1;
}
entry.cdte_format = CDROM_MSF;
if (ioctl(cdfile, CDROMREADTOCENTRY, &entry) == -1)
{
- Con_DPrintf("ioctl cdromreadtocentry failed\n");
+ Con_DPrintf("ioctl CDROMREADTOCENTRY failed\n");
return -1;
}
if (entry.cdte_ctrl == CDROM_DATA_TRACK)
if (ioctl(cdfile, CDROMPLAYTRKIND, &ti) == -1)
{
- Con_DPrintf("ioctl cdromplaytrkind failed\n");
+ Con_DPrintf("ioctl CDROMPLAYTRKIND failed\n");
return -1;
}
if (ioctl(cdfile, CDROMRESUME) == -1)
{
- Con_DPrintf("ioctl cdromresume failed\n");
+ Con_DPrintf("ioctl CDROMRESUME failed\n");
return -1;
}
if (ioctl(cdfile, CDROMSTOP) == -1)
{
- Con_DPrintf("ioctl cdromstop failed (%d)\n", errno);
+ Con_DPrintf("ioctl CDROMSTOP failed (%d)\n", errno);
return -1;
}
-
+
return 0;
}
if (ioctl(cdfile, CDROMPAUSE) == -1)
{
- Con_DPrintf("ioctl cdrompause failed\n");
+ Con_DPrintf("ioctl CDROMPAUSE failed\n");
return -1;
}
-
+
return 0;
}
return -1;
if (ioctl(cdfile, CDROMRESUME) == -1)
- Con_DPrintf("ioctl cdromresume failed\n");
+ Con_DPrintf("ioctl CDROMRESUME failed\n");
return 0;
}
struct cdrom_subchnl subchnl;
static time_t lastchk = 0;
- if (cdPlaying && lastchk < time(NULL)) {
+ if (cdPlaying && lastchk < time(NULL))
+ {
lastchk = time(NULL) + 2; //two seconds between chks
subchnl.cdsc_format = CDROM_MSF;
- if (ioctl(cdfile, CDROMSUBCHNL, &subchnl) == -1 ) {
- Con_DPrintf("ioctl cdromsubchnl failed\n");
+ if (ioctl(cdfile, CDROMSUBCHNL, &subchnl) == -1)
+ {
+ Con_DPrintf("ioctl CDROMSUBCHNL failed\n");
cdPlaying = false;
return -1;
}
if (subchnl.cdsc_audiostatus != CDROM_AUDIO_PLAY &&
- subchnl.cdsc_audiostatus != CDROM_AUDIO_PAUSED) {
+ subchnl.cdsc_audiostatus != CDROM_AUDIO_PAUSED)
+ {
cdPlaying = false;
if (cdPlayLooping)
CDAudio_Play(cdPlayTrack, true);
}
+ else
+ cdPlayTrack = subchnl.cdsc_trk;
}
-
+
return 0;
}
int i;
if ((i = COM_CheckParm("-cddev")) != 0 && i < com_argc - 1)
- strlcpy (cd_dev, com_argv[i + 1], sizeof (cd_dev));
+ strlcpy(cd_dev, com_argv[i + 1], sizeof(cd_dev));
}
int CDAudio_SysStartup (void)
{
if ((cdfile = open(cd_dev, O_RDONLY)) == -1)
{
- Con_DPrintf("CDAudio_SysStartup: open of \"%s\" failed (%i)\n", cd_dev, errno);
+ Con_DPrintf("CDAudio_SysStartup: open of \"%s\" failed (%i)\n",
+ cd_dev, errno);
cdfile = -1;
return -1;
}