Date: Fri, 23 Jan 2004 06:10:10 -0800 (PST) From: Igor Pokrovsky <tiamat@comset.net> To: freebsd-ports-bugs@FreeBSD.org Subject: Re: ports/61765: New port: games/vavoom Doom, Doom II, Heretic, Hexen and Strife source port Message-ID: <200401231410.i0NEAA9A058755@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR ports/61765; it has been noted by GNATS. From: Igor Pokrovsky <tiamat@comset.net> To: FreeBSD-gnats-submit@freebsd.org Cc: Subject: Re: ports/61765: New port: games/vavoom Doom, Doom II, Heretic, Hexen and Strife source port Date: Fri, 23 Jan 2004 17:01:27 +0300 --envbJBWh7q8WU6mo Content-Type: text/plain; charset=us-ascii Content-Disposition: inline --envbJBWh7q8WU6mo Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename=patch-cdaudio-vavoom diff -ruN vavoom-orig/files/patch-Makefile vavoom/files/patch-Makefile --- vavoom-orig/files/patch-Makefile Fri Jan 23 16:40:07 2004 +++ vavoom/files/patch-Makefile Fri Jan 23 16:42:22 2004 @@ -1,5 +1,5 @@ ---- Makefile.orig Mon Jan 19 18:13:16 2004 -+++ Makefile Mon Jan 19 18:18:12 2004 +--- Makefile.orig Fri Dec 19 20:00:14 2003 ++++ Makefile Fri Jan 23 16:41:34 2004 @@ -8,7 +8,7 @@ #DEBUG = 1 @@ -9,15 +9,6 @@ # Uncomment to compile without OpenGL driver #NOGL = 1 -@@ -60,7 +60,7 @@ - ifdef USE_SDL - #-- Linux with SDL -- - SYS_OBJS = \ -- obj/cd_linux.o \ -+ obj/cd_none.o \ - obj/d_sdl.o \ - obj/in_sdl.o \ - obj/net_bsd.o \ @@ -70,7 +70,7 @@ obj/sys_i386.o \ obj/sys_sdl.o diff -ruN vavoom-orig/files/patch-source-cd_linux.cpp vavoom/files/patch-source-cd_linux.cpp --- vavoom-orig/files/patch-source-cd_linux.cpp Thu Jan 1 03:00:00 1970 +++ vavoom/files/patch-source-cd_linux.cpp Fri Jan 23 15:00:44 2004 @@ -0,0 +1,186 @@ +--- source/cd_linux.cpp.orig Fri Jan 23 14:59:01 2004 ++++ source/cd_linux.cpp Fri Jan 23 14:59:04 2004 +@@ -32,7 +32,7 @@ + #include <fcntl.h> + #include <time.h> + #include <errno.h> +-#include <linux/cdrom.h> ++#include <sys/cdio.h> + + #include "gamedefs.h" + #include "s_local.h" +@@ -137,7 +137,8 @@ + void CD_Update(void) + { + guard(CD_Update); +- struct cdrom_subchnl subchnl; ++ struct ioc_read_subchannel subchnl; ++ struct cd_sub_channel_info data; + static time_t lastchk; + + if (!cd_started) +@@ -149,15 +150,18 @@ + if (playing && lastchk < time(NULL)) + { + lastchk = time(NULL) + 2; //two seconds between chks +- subchnl.cdsc_format = CDROM_MSF; +- if (ioctl(cdfile, CDROMSUBCHNL, &subchnl) == -1 ) ++ subchnl.data = &data; ++ subchnl.data_len = sizeof(data); ++ subchnl.address_format = CD_MSF_FORMAT; ++ subchnl.data_format = CD_CURRENT_POSITION; ++ if (ioctl(cdfile, CDIOCREADSUBCHANNEL, (char*) &subchnl) == -1 ) + { +- GCon->Log(NAME_Dev, "ioctl cdromsubchnl failed"); ++ GCon->Log(NAME_Dev, "ioctl CDIOCREADSUBCHANNEL failed"); + playing = false; + return; + } +- if (subchnl.cdsc_audiostatus != CDROM_AUDIO_PLAY && +- subchnl.cdsc_audiostatus != CDROM_AUDIO_PAUSED) ++ if (subchnl.data->header.audio_status != CD_AS_PLAY_IN_PROGRESS && ++ subchnl.data->header.audio_status != CD_AS_PLAY_PAUSED) + { + playing = false; + if (playLooping) +@@ -337,24 +341,24 @@ + + static void CD_GetInfo(void) + { +- struct cdrom_tochdr tochdr; ++ struct ioc_toc_header tochdr; + + cdValid = false; + +- if (ioctl(cdfile, CDROMREADTOCHDR, &tochdr) == -1) ++ if (ioctl(cdfile, CDIOREADTOCHEADER, &tochdr) == -1) + { +- GCon->Log(NAME_Dev, "ioctl cdromreadtochdr failed"); ++ GCon->Log(NAME_Dev, "ioctl CDIOREADTOCHEADER failed"); + return; + } + +- if (tochdr.cdth_trk0 < 1) ++ if (tochdr.starting_track < 1) + { + GCon->Log(NAME_Dev, "CDAudio: no music tracks"); + return; + } + + cdValid = true; +- maxTrack = tochdr.cdth_trk1; ++ maxTrack = tochdr.ending_track; + } + + //========================================================================== +@@ -365,8 +369,8 @@ + + static void CD_Play(int track, boolean looping) + { +- struct cdrom_tocentry entry; +- struct cdrom_ti ti; ++ struct ioc_read_toc_single_entry entry; ++ struct ioc_play_track ti; + + if (!cdValid) + { +@@ -383,6 +387,7 @@ + return; + } + ++/* + // don't try to play a non-audio track + entry.cdte_track = track; + entry.cdte_format = CDROM_MSF; +@@ -396,7 +401,7 @@ + GCon->Logf("CDAudio: track %d is not audio", track); + return; + } +- ++*/ + if (playing) + { + if (playTrack == track) +@@ -404,19 +409,19 @@ + CD_Stop(); + } + +- ti.cdti_trk0 = track; +- ti.cdti_trk1 = track; +- ti.cdti_ind0 = 1; +- ti.cdti_ind1 = 99; ++ ti.start_track = track; ++ ti.end_track = track; ++ ti.start_index = 1; ++ ti.end_index = 99; + +- if (ioctl(cdfile, CDROMPLAYTRKIND, &ti) == -1) ++ if (ioctl(cdfile, CDIOCPLAYTRACKS, &ti) == -1) + { +- GCon->Log(NAME_Dev, "ioctl cdromplaytrkind failed"); ++ GCon->Log(NAME_Dev, "ioctl CDIOCPLAYTRACKS failed"); + return; + } + +- if (ioctl(cdfile, CDROMRESUME) == -1) +- GCon->Log(NAME_Dev, "ioctl cdromresume failed"); ++ if (ioctl(cdfile, CDIOCRESUME) == -1) ++ GCon->Log(NAME_Dev, "ioctl CDIOCRESUME failed"); + + playLooping = looping; + playTrack = track; +@@ -434,8 +439,8 @@ + if (!playing) + return; + +- if (ioctl(cdfile, CDROMPAUSE) == -1) +- GCon->Log(NAME_Dev, "ioctl cdrompause failed"); ++ if (ioctl(cdfile, CDIOCPAUSE) == -1) ++ GCon->Log(NAME_Dev, "ioctl CDIOCPAUSE failed"); + + wasPlaying = playing; + playing = false; +@@ -452,8 +457,8 @@ + if (!wasPlaying) + return; + +- if (ioctl(cdfile, CDROMRESUME) == -1) +- GCon->Log(NAME_Dev, "ioctl cdromresume failed"); ++ if (ioctl(cdfile, CDIOCRESUME) == -1) ++ GCon->Log(NAME_Dev, "ioctl CDIOCRESUME failed"); + + playing = true; + } +@@ -469,8 +474,8 @@ + if (!playing) + return; + +- if (ioctl(cdfile, CDROMSTOP) == -1) +- GCon->Log(NAME_Dev, "ioctl cdromstop failed"); ++ if (ioctl(cdfile, CDIOCSTOP) == -1) ++ GCon->Log(NAME_Dev, "ioctl CDIOCSTOP failed"); + + wasPlaying = false; + playing = false; +@@ -484,8 +489,8 @@ + + static void CD_OpenDoor(void) + { +- if (ioctl(cdfile, CDROMEJECT) == -1) +- GCon->Log(NAME_Dev, "ioctl cdromeject failed"); ++ if (ioctl(cdfile, CDIOCEJECT) == -1) ++ GCon->Log(NAME_Dev, "ioctl CDIOCEJECT failed"); + } + + //========================================================================== +@@ -496,8 +501,8 @@ + + static void CD_CloseDoor(void) + { +- if (ioctl(cdfile, CDROMCLOSETRAY) == -1) +- GCon->Log(NAME_Dev, "ioctl cdromclosetray failed"); ++ if (ioctl(cdfile, CDIOCCLOSE) == -1) ++ GCon->Log(NAME_Dev, "ioctl CDIOCCLOSE failed"); + } + + //************************************************************************** --envbJBWh7q8WU6mo--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401231410.i0NEAA9A058755>