diff options
Diffstat (limited to 'audio/wmcdplay/files/patch-aa')
| -rw-r--r-- | audio/wmcdplay/files/patch-aa | 247 |
1 files changed, 0 insertions, 247 deletions
diff --git a/audio/wmcdplay/files/patch-aa b/audio/wmcdplay/files/patch-aa deleted file mode 100644 index e84cafe50d36..000000000000 --- a/audio/wmcdplay/files/patch-aa +++ /dev/null @@ -1,247 +0,0 @@ ---- cdctl.h.orig Sat Sep 5 11:11:26 1998 -+++ cdctl.h Sun Mar 24 22:38:59 2002 -@@ -30,7 +30,9 @@ - #include <sys/stat.h> - #include <fcntl.h> - #include <unistd.h> --#include <linux/cdrom.h> -+#include <sys/cdio.h> -+#include <arpa/inet.h> -+#define CD_MSF_OFFSET 150 - - // CD status values - #define ssData 0 -@@ -113,10 +115,10 @@ - case acStop: - - #ifdef _CDCTL_SOFT_STOP -- ioctl(cdfd,CDROMSTART); -+ ioctl(cdfd,CDIOCSTART); - #endif - #ifndef _CDCTL_SOFT_STOP -- ioctl(cdfd,CDROMSTOP); -+ ioctl(cdfd,CDIOCSTOP); - #endif - tskOurPlay=false; - -@@ -127,10 +129,10 @@ - tskOurPlay=true; - break; - case acPause: -- ioctl(cdfd,CDROMPAUSE); -+ ioctl(cdfd,CDIOCPAUSE); - break; - case acResume: -- ioctl(cdfd,CDROMRESUME); -+ ioctl(cdfd,CDIOCRESUME); - break; - case acPrev: - newtrk--; -@@ -157,13 +159,13 @@ - } - break; - case acEject: -- if(ioctl(cdfd,CDROMEJECT)) -+ if(ioctl(cdfd,CDIOCEJECT)) - status_state=ssNoCD; - else - status_state=ssTrayOpen; - break; - case acClose: -- ioctl(cdfd,CDROMCLOSETRAY); -+ ioctl(cdfd,CDIOCCLOSE); - status_state=ssNoCD; - break; - } -@@ -172,9 +174,14 @@ - } - void doStatus(){ - if(cdfdopen){ -- struct cdrom_subchnl sc; -- sc.cdsc_format=CDROM_MSF; -- if(ioctl(cdfd, CDROMSUBCHNL, &sc)){ -+ struct ioc_read_subchannel sc; -+ struct cd_sub_channel_info csci; -+ sc.address_format=CD_MSF_FORMAT; -+ sc.track = 0; -+ sc.data=&csci; -+ sc.data_len=sizeof(csci); -+ sc.data_format=CD_CURRENT_POSITION; -+ if(ioctl(cdfd, CDIOCREADSUBCHANNEL, &sc)){ - if(status_state!=ssNoCD) - status_state=ssTrayOpen; - status_track=0; -@@ -185,18 +192,18 @@ - if(status_state==ssNoCD || status_state==ssTrayOpen) - readTOC(); - int start,now,stop; -- switch(sc.cdsc_audiostatus){ -- case CDROM_AUDIO_PLAY: -+ switch(csci.header.audio_status){ -+ case CD_AS_PLAY_IN_PROGRESS: - if(status_state==ssStopped) - tskOurPlay=false; - status_state=ssPlaying; - break; -- case CDROM_AUDIO_PAUSED: -+ case CD_AS_PLAY_PAUSED: - if(status_state==ssStopped) - tskOurPlay=false; - status_state=ssPaused; - break; -- case CDROM_AUDIO_COMPLETED: -+ case CD_AS_PLAY_COMPLETED: - if(tskOurPlay){ - status_state=ssPlaying; - selecttrack(); -@@ -212,7 +219,7 @@ - if(tskOurPlay){ - start = cd_trklist[status_track].track_start; - stop = start + cd_trklist[status_track].track_len - _CDCTL_SENSITIVITY; -- now = ((sc.cdsc_absaddr.msf.minute) * 60 + sc.cdsc_absaddr.msf.second) * 75 + sc.cdsc_absaddr.msf.frame - CD_MSF_OFFSET; -+ now = ((csci.what.position.absaddr.msf.minute) * 60 + csci.what.position.absaddr.msf.second) * 75 + csci.what.position.absaddr.msf.frame - CD_MSF_OFFSET; - if(now>0 && (now<start || now>=stop)){ - status_state=ssPlaying; - selecttrack(); -@@ -227,7 +234,7 @@ - - status_state=ssStopped; - } -- trackinfo(&sc); -+ trackinfo(&csci); - if(cd_trklist[status_track].track_data) - status_state=ssData; - } -@@ -235,19 +242,21 @@ - } - void setVolume(int l, int r){ - if(cdfdopen){ -- struct cdrom_volctrl vol; -- vol.channel0=l; -- vol.channel1=r; -- ioctl(cdfd,CDROMVOLCTRL,&vol); -+ struct ioc_vol vol; -+ vol.vol[0]=l; -+ vol.vol[1]=r; -+ vol.vol[2]=0; -+ vol.vol[3]=0; -+ ioctl(cdfd,CDIOCSETVOL,&vol); - readVolume(); - } - } - void readVolume(){ - if(cdfdopen){ -- struct cdrom_volctrl vol; -- ioctl(cdfd,CDROMVOLREAD,&vol); -- status_volumel=vol.channel0; -- status_volumer=vol.channel1; -+ struct ioc_vol vol; -+ ioctl(cdfd,CDIOCGETVOL,&vol); -+ status_volumel=vol.vol[0]; -+ status_volumer=vol.vol[1]; - } - } - int getVolumeL(){ -@@ -296,12 +305,30 @@ - void readTOC(){ - if(cd_trklist!=NULL) - free(cd_trklist); -- struct cdrom_tochdr hdr; -- ioctl(cdfd, CDROMREADTOCHDR, &hdr); -- cd_tracks=hdr.cdth_trk1; -+ struct ioc_toc_header hdr; -+ ioctl(cdfd, CDIOREADTOCHEADER, &hdr); -+ cd_tracks=hdr.ending_track; - cd_trklist=(struct CDTrack *)malloc(cd_tracks*sizeof(struct CDTrack)); -+#ifdef __FreeBSD__ -+ struct ioc_read_toc_entry te; -+ -+ te.data_len = (cd_tracks + 1) * sizeof(struct cd_toc_entry); -+ te.data = (struct cd_toc_entry *)malloc(te.data_len); -+ te.address_format = CD_LBA_FORMAT; -+ te.starting_track = 0; -+ ioctl(cdfd, CDIOREADTOCENTRYS, &te); -+ for(int i = 0; i < cd_tracks; i++) { -+ cd_trklist[i].track_data = te.data[i].control & 4 ? true : false; -+ cd_trklist[i].track_start = ntohl(te.data[i].addr.lba); -+ cd_trklist[i].track_len = ntohl(te.data[i + 1].addr.lba) -+ - cd_trklist[i].track_start; -+ } -+ cd_len = ntohl(te.data[cd_tracks].addr.lba); -+ free(te.data); -+#else - struct cdrom_tocentry te; - int prev_addr=0; -+ - for(int i=0;i<=cd_tracks;i++){ - if(i==cd_tracks) - te.cdte_track=CDROM_LEADOUT; -@@ -320,35 +347,42 @@ - else - cd_len = this_addr; - } -+#endif - } -- void trackinfo(struct cdrom_subchnl *subchnl){ -+ void trackinfo(struct cd_sub_channel_info *subchnl){ -+ int currenttrack = status_track; -+ - if(status_state==ssPlaying || status_state==ssPaused){ -- status_pos=((subchnl->cdsc_absaddr.msf.minute) * 60 + subchnl->cdsc_absaddr.msf.second) * 75 + subchnl->cdsc_absaddr.msf.frame - CD_MSF_OFFSET; -+ status_pos=((subchnl->what.position.absaddr.msf.minute) * 60 + subchnl->what.position.absaddr.msf.second) * 75 + subchnl->what.position.absaddr.msf.frame - CD_MSF_OFFSET; - for(status_track=0;status_track<cd_tracks;status_track++){ -- if(status_pos<cd_trklist[status_track].track_start+cd_trklist[status_track].track_len) -+ if(status_pos<cd_trklist[status_track].track_start+cd_trklist[status_track].track_len) { -+ if (status_track != currenttrack) { -+ status_track = currenttrack; -+ } - break; -+ } - } - } - } - void play(){ -- struct cdrom_msf pmsf; -+ struct ioc_play_msf pmsf; - int abs0=status_pos + CD_MSF_OFFSET; - int abs1=cd_trklist[status_track].track_start + cd_trklist[status_track].track_len - 1 + CD_MSF_OFFSET; -- pmsf.cdmsf_min0=abs0/(75*60); -- pmsf.cdmsf_min1=abs1/(75*60); -- pmsf.cdmsf_sec0=(abs0%(75*60))/75; -- pmsf.cdmsf_sec1=(abs1%(75*60))/75; -- pmsf.cdmsf_frame0=abs0%75; -- pmsf.cdmsf_frame1=abs1%75; -+ pmsf.start_m=abs0/(75*60); -+ pmsf.end_m=abs1/(75*60); -+ pmsf.start_s=(abs0%(75*60))/75; -+ pmsf.end_s=(abs1%(75*60))/75; -+ pmsf.start_f=abs0%75; -+ pmsf.end_f=abs1%75; - - #ifdef _CDCTL_STOP_BEFORE_PLAY -- ioctl(cdfd,CDROMSTOP); -+ ioctl(cdfd,CDIOCSTOP); - #endif - #ifdef _CDCTL_START_BEFORE_PLAY -- ioctl(cdfd,CDROMSTART); -+ ioctl(cdfd,CDIOCSTART); - #endif - -- ioctl(cdfd,CDROMPLAYMSF,&pmsf); -+ ioctl(cdfd,CDIOCPLAYMSF,&pmsf); - } - void select(int trk){ - status_track=trk; -@@ -357,10 +391,10 @@ - if(cd_trklist[status_track].track_data){ - - #ifdef _CDCTL_HARD_STOP -- ioctl(cdfd,CDROMSTOP); -+ ioctl(cdfd,CDIOCSTOP); - #endif - #ifndef _CDCTL_HARD_STOP -- ioctl(cdfd,CDROMSTART); -+ ioctl(cdfd,CDIOCSTART); - #endif - tskOurPlay=false; - |
