Example #1
0
int main()
{
  printf("testing 32-bit MSCDEX access...\n");
  if (cd_installed() == 0) {
    printf("MSCDEX not found.\n");
    return 1;
  }

  if (cd_getversion() < 0x020A) {
    printf("MSCDEX v2.10 required.\n");
    return 2;
  }

  char drbuf[26];
  cd_getdriveletters(drbuf);
  cd_driverinit(drbuf[0]);
  printf("CDROM is drive %c:\n", 'A' + drbuf[0]);
  printf("%d tracks.\n", cd_getlasttrack(drbuf[0]));
  printf("cd play status: %d\n", cd_isplayingaudio(drbuf[0]));

  long stats = cd_getstatus(drbuf[0]);
  printf("drive status: %08X\n", stats);

  if (stats & CDS_DRIVEOPEN)
    printf("drive is open\n");

  if (stats & CDS_DRIVEEMPTY)
    printf("drive is empty\n");

  printf("playing track...\n");
  cd_playtrack(drbuf[0], 2);
  printf("Bye!\n");
  cd_driverclose(drbuf[0]);
  return 0;
}
int AGSDOS::InitializeCDPlayer() {
  numcddrives=cd_installed();
  if (numcddrives==0) return -1;
  if (cd_getversion()<0x020A) return -2;
  cd_getdriveletters(cd_driveletters);
  cddrive=cd_driveletters[0];
  use_cdplayer=1;
  return 0;
}