Home | History | Annotate | Download | only in win32

Lines Matching refs:cdrom

52 static int SDL_SYS_CDGetTOC(SDL_CD *cdrom);
53 static CDstatus SDL_SYS_CDStatus(SDL_CD *cdrom, int *position);
54 static int SDL_SYS_CDPlay(SDL_CD *cdrom, int start, int length);
55 static int SDL_SYS_CDPause(SDL_CD *cdrom);
56 static int SDL_SYS_CDResume(SDL_CD *cdrom);
57 static int SDL_SYS_CDStop(SDL_CD *cdrom);
58 static int SDL_SYS_CDEject(SDL_CD *cdrom);
59 static void SDL_SYS_CDClose(SDL_CD *cdrom);
164 static int SDL_SYS_CDGetTOC(SDL_CD *cdrom)
173 if ( SDL_SYS_CDioctl(cdrom->id, MCI_STATUS, flags, &mci_status) == 0 ) {
174 cdrom->numtracks = mci_status.dwReturn;
175 if ( cdrom->numtracks > SDL_MAX_TRACKS ) {
176 cdrom->numtracks = SDL_MAX_TRACKS;
180 for ( i=0; i<cdrom->numtracks; ++i ) {
181 cdrom->track[i].id = i+1;
182 mci_status.dwTrack = cdrom->track[i].id;
185 if ( SDL_SYS_CDioctl(cdrom->id, MCI_STATUS, flags,
190 cdrom->track[i].type = SDL_AUDIO_TRACK;
192 cdrom->track[i].type = SDL_DATA_TRACK;
195 cdrom->track[i].type = SDL_AUDIO_TRACK;
198 if ( SDL_SYS_CDioctl(cdrom->id, MCI_STATUS, flags,
202 cdrom->track[i].offset = MSF_TO_FRAMES(
206 cdrom->track[i].length = 0;
208 cdrom->track[i-1].length =
209 cdrom->track[i].offset-
210 cdrom->track[i-1].offset;
213 if ( i == cdrom->numtracks ) {
214 mci_status.dwTrack = cdrom->track[i - 1].id;
216 if ( SDL_SYS_CDioctl(cdrom->id, MCI_STATUS, flags,
218 cdrom->track[i - 1].length = MSF_TO_FRAMES(
223 cdrom->track[i].offset = cdrom->track[i - 1].offset +
224 cdrom->track[i - 1].length;
225 cdrom->track[i].length = 0;
234 static CDstatus SDL_SYS_CDStatus(SDL_CD *cdrom, int *position)
242 if ( SDL_SYS_CDioctl(cdrom->id, MCI_STATUS, flags, &mci_status) < 0 ) {
252 if ( SDL_paused[cdrom->id] ) {
263 if ( SDL_paused[cdrom->id] ) {
283 if ( SDL_SYS_CDioctl(cdrom->id, MCI_STATUS, flags,
300 static int SDL_SYS_CDPlay(SDL_CD *cdrom, int start, int length)
313 return(SDL_SYS_CDioctl(cdrom->id, MCI_PLAY, flags, &mci_play));
317 static int SDL_SYS_CDPause(SDL_CD *cdrom)
320 SDL_paused[cdrom->id] = 1;
322 return(SDL_SYS_CDioctl(cdrom->id, MCI_PAUSE, MCI_WAIT, NULL));
326 static int SDL_SYS_CDResume(SDL_CD *cdrom)
337 if ( SDL_SYS_CDioctl(cdrom->id, MCI_STATUS, flags, &mci_status) == 0 ) {
344 if (SDL_SYS_CDioctl(cdrom->id,MCI_PLAY,flags,&mci_play) == 0) {
346 SDL_paused[cdrom->id] = 0;
351 return(SDL_SYS_CDioctl(cdrom->id, MCI_RESUME, MCI_WAIT, NULL));
356 static int SDL_SYS_CDStop(SDL_CD *cdrom)
358 return(SDL_SYS_CDioctl(cdrom->id, MCI_STOP, MCI_WAIT, NULL));
362 static int SDL_SYS_CDEject(SDL_CD *cdrom)
364 return(SDL_SYS_CDioctl(cdrom->id, MCI_SET, MCI_SET_DOOR_OPEN, NULL));
368 static void SDL_SYS_CDClose(SDL_CD *cdrom)
370 SDL_SYS_CDioctl(cdrom->id, MCI_CLOSE, MCI_WAIT, NULL);