From 004697d45d2a5ed5a4c4e83cbd12ac53fbf114d9 Mon Sep 17 00:00:00 2001 From: Pav Lucistnik Date: Wed, 14 Jul 2004 16:09:39 +0000 Subject: Add linrad, Amateur Radio DSP utility (SDR) PR: ports/68873 Submitted by: Diane Bruce --- comms/linrad/Makefile | 53 +++++ comms/linrad/distinfo | 2 + comms/linrad/files/patch-Makefile.in | 57 +++++ comms/linrad/files/patch-configure.in | 31 +++ comms/linrad/files/patch-hwaredriver.c | 19 ++ comms/linrad/files/patch-main.c | 37 ++++ comms/linrad/files/patch-modesub.c | 37 ++++ comms/linrad/files/patch-setad.c | 390 +++++++++++++++++++++++++++++++++ comms/linrad/files/patch-tune.c | 15 ++ comms/linrad/files/patch-uidef.h | 9 + comms/linrad/files/patch-uivar.c | 11 + comms/linrad/files/patch-wcw.c | 28 +++ comms/linrad/pkg-descr | 10 + comms/linrad/pkg-plist | 14 ++ 14 files changed, 713 insertions(+) create mode 100644 comms/linrad/Makefile create mode 100644 comms/linrad/distinfo create mode 100644 comms/linrad/files/patch-Makefile.in create mode 100644 comms/linrad/files/patch-configure.in create mode 100644 comms/linrad/files/patch-hwaredriver.c create mode 100644 comms/linrad/files/patch-main.c create mode 100644 comms/linrad/files/patch-modesub.c create mode 100644 comms/linrad/files/patch-setad.c create mode 100644 comms/linrad/files/patch-tune.c create mode 100644 comms/linrad/files/patch-uidef.h create mode 100644 comms/linrad/files/patch-uivar.c create mode 100644 comms/linrad/files/patch-wcw.c create mode 100644 comms/linrad/pkg-descr create mode 100644 comms/linrad/pkg-plist (limited to 'comms/linrad') diff --git a/comms/linrad/Makefile b/comms/linrad/Makefile new file mode 100644 index 000000000000..d5802d799377 --- /dev/null +++ b/comms/linrad/Makefile @@ -0,0 +1,53 @@ +# ports collection makefile for: linrad +# Date created: 7 July 2004 +# Whom: db +# +# $FreeBSD$ +# + +PORTNAME= linrad +PORTVERSION= 0.16a +CATEGORIES= comms +MASTER_SITES= http://www.nitehawk.com/sm5bsz/linuxdsp/archive/ +DISTNAME= lir01-20 +EXTRACT_SUFX= .tbz +DIST_SUBDIR= ${PORTNAME} + +MAINTAINER= db@db.net +COMMENT= Amateur Radio DSP utility (SDR) + +LIB_DEPENDS= vga.1:${PORTSDIR}/graphics/svgalib +BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm + +WRKSRC= ${WRKDIR}/${PORTNAME}-01.20 + +USE_AUTOCONF_VER= 253 +HAS_CONFIGURE= yes +USE_BZIP2= yes +USE_REINPLACE= yes + +post-patch: + @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|' ${WRKSRC}/configure.in + +do-install: + ${INSTALL_PROGRAM} -m04555 ${WRKSRC}/${PORTNAME} ${PREFIX}/bin/${PORTNAME} +.if !defined(NOPORTDOCS) + ${MKDIR} ${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/z_APM.txt ${DOCSDIR}/z_APM.txt + ${INSTALL_DATA} ${WRKSRC}/z_BUFFERS.txt ${DOCSDIR}/z_BUFFERS.txt + ${INSTALL_DATA} ${WRKSRC}/z_CALIBRATE.txt ${DOCSDIR}/z_CALIBRATE.txt + ${INSTALL_DATA} ${WRKSRC}/z_COPYRIGHT.txt ${DOCSDIR}/z_COPYRIGHT.txt + ${INSTALL_DATA} ${WRKSRC}/z_GIFINFO.txt ${DOCSDIR}/z_GIFINFO.txt + ${INSTALL_DATA} ${WRKSRC}/z_INSTALL.txt ${DOCSDIR}/z_INSTALL.txt + ${INSTALL_DATA} ${WRKSRC}/z_MLOCK.txt ${DOCSDIR}/z_MLOCK.txt + ${INSTALL_DATA} ${WRKSRC}/z_SETTINGS.txt ${DOCSDIR}/z_SETTINGS.txt + ${INSTALL_DATA} ${WRKSRC}/z_SPEED.txt ${DOCSDIR}/z_SPEED.txt + ${INSTALL_DATA} ${WRKSRC}/z_SVGALIB.txt ${DOCSDIR}/z_SVGALIB.txt + ${INSTALL_DATA} ${WRKSRC}/z_USERS_HWARE.txt ${DOCSDIR}/z_USERS_HWARE.txt + ${INSTALL_DATA} ${WRKSRC}/z_USLEEP.txt ${DOCSDIR}/z_USLEEP.txt + @${ECHO} "" + @${ECHO} "linrad docs installed in ${DOCSDIR}" + @${ECHO} "" +.endif + +.include diff --git a/comms/linrad/distinfo b/comms/linrad/distinfo new file mode 100644 index 000000000000..904edfa16a75 --- /dev/null +++ b/comms/linrad/distinfo @@ -0,0 +1,2 @@ +MD5 (linrad/lir01-20.tbz) = 34b6f5ef52adf8b9a8af444db43ddf70 +SIZE (linrad/lir01-20.tbz) = 330472 diff --git a/comms/linrad/files/patch-Makefile.in b/comms/linrad/files/patch-Makefile.in new file mode 100644 index 000000000000..4f1f06aa1eee --- /dev/null +++ b/comms/linrad/files/patch-Makefile.in @@ -0,0 +1,57 @@ +--- Makefile.in.orig Tue May 18 09:43:30 2004 ++++ Makefile.in Fri Jul 9 00:43:44 2004 +@@ -1,11 +1,14 @@ ++INCLUDE= /usr/local/include ++LIBS= /usr/local/lib ++ + + .c.o: +-# gcc -I/usr/local/include -c -o $*.o $< +- gcc -O -W -Wimplicit -Wreturn-type -Wformat \ +--Wunused -Wcomment -Wchar-subscripts -Wshadow -Wuninitialized \ +--Wparentheses -Wstrict-prototypes -Werror -ffast-math -fforce-mem \ +--fomit-frame-pointer -c -o $*.o \ +-$< ++ ${CC} -I${INCLUDE} -c -o $*.o $< ++# gcc -O -W -Wimplicit -Wreturn-type -Wformat \ ++#-Wunused -Wcomment -Wchar-subscripts -Wshadow -Wuninitialized \ ++#-Wparentheses -Wstrict-prototypes -Werror -ffast-math -fforce-mem \ ++#-fomit-frame-pointer -c -o $*.o \ ++#$< + + .s.o: + nasm -w-orphan-labels -felf -s $< +@@ -23,7 +26,7 @@ + tune.o txtest.o network.o mouse.o freq_control.o vgatest mousetest morse.o \ + cwspeed.o coh_osc.o cw_carrier.o + +- gcc -olinrad -lvgagl -lvga -lm \ ++ ${CC} -I${INCLUDE} -L${LIBS} -olinrad -lvgagl -lvga -lm \ + -Wl,-s,-Map,linrad.map,-warn-common,--cref\ + main.o ui.o setvga.o setad.o fft1.o buf.o mouse.o wide_graph.o \ + getiq.o fft0.o rxtest.o hires_graph.o fftasm.o baseb_graph.o mix2.o \ +@@ -37,10 +40,10 @@ + cw_carrier.o fft3.o + + vgatest: vgatest.o +- gcc -ovgatest -lvgagl -lvga -lm -Wl -s vgatest.o ++ ${CC} -I${INCLUDE} -ovgatest -L${LIBS} -lvgagl -lvga -lm -Wl -s vgatest.o + + mousetest: mousetest.o +- gcc -omousetest -lvgagl -lvga -lm -Wl -s mousetest.o ++ ${CC} -I${INCLUDE} -omousetest -L${LIBS} -lvgagl -lvga -lm -Wl -s mousetest.o + + afc_graph.o : globdef.h uidef.h fft1def.h fft2def.h screendef.h vernr.h \ + seldef.h llsqdef.h sigdef.h +@@ -126,3 +129,11 @@ + configure : Makefile.in conf.h.in configure.in + rm -f configure + autoconf ++ ++all: vgatest mousetest linrad ++ ++clean: ++ rm -f vgatest mousetest linrad *.o ++ ++install: ++ install -oroot -m04566 linrad ${PREFIX}/bin/linrad diff --git a/comms/linrad/files/patch-configure.in b/comms/linrad/files/patch-configure.in new file mode 100644 index 000000000000..86a164a68cb2 --- /dev/null +++ b/comms/linrad/files/patch-configure.in @@ -0,0 +1,31 @@ +--- configure.in.orig Tue May 18 09:43:30 2004 ++++ configure.in Fri Jul 9 12:49:33 2004 +@@ -2,13 +2,13 @@ + rm -f conf.h + AC_INIT(main.c) + AC_CHECK_FILE( /usr/lib/oss/soundcard.h, OSSN="1") +-AC_CHECK_FILE( /usr/local/lib/oss/soundcard.h, OSSN="3") ++AC_CHECK_FILE( %%LOCALBASE%%/lib/oss/soundcard.h, OSSN="3") + AC_CHECK_FILE( /lib/oss/soundcard.h, OSSN="5") + AC_CHECK_FILE( /var/lib/oss/soundcard.h, OSSN="7") + AC_CHECK_FILE( /opt/oss/soundcard.h, OSSN="9") + AC_CHECK_FILE( /root/oss/soundcard.h, OSSN="11") + AC_CHECK_FILE( /usr/lib/oss/include/sys/soundcard.h, OSSN="2") +-AC_CHECK_FILE( /usr/local/lib/oss/include/sys/soundcard.h, OSSN="4") ++AC_CHECK_FILE( %%LOCALBASE%%/lib/oss/include/sys/soundcard.h, OSSN="4") + AC_CHECK_FILE( /lib/oss/include/sys/soundcard.h, OSSN="6") + AC_CHECK_FILE( /var/lib/oss/include/sys/soundcard.h, OSSN="8") + AC_CHECK_FILE( /opt/oss/include/sys/soundcard.h, OSSN="10") +@@ -25,10 +25,10 @@ + AC_SUBST(USERHWDEF) + AC_CHECK_FILE( ./users_hwaredef.h, DEPS2="users_hwaredef.h") + AC_SUBST(DEPS2) +-AC_CHECK_HEADER(vga.h,, AC_MSG_ERROR( ++AC_CHECK_HEADER(%%LOCALBASE%%/include/vga.h,, AC_MSG_ERROR( + Must have svgalib package installed to compile + vga.h missing!!!)) +-AC_CHECK_HEADER(vgagl.h,, AC_MSG_ERROR( ++AC_CHECK_HEADER(%%LOCALBASE%%/include/vgagl.h,, AC_MSG_ERROR( + Must have svgalib package installed to compile + vgagl.h missing!!!)) + AC_CHECK_FILE( /usr/include/png.h, IMGFMT="1") diff --git a/comms/linrad/files/patch-hwaredriver.c b/comms/linrad/files/patch-hwaredriver.c new file mode 100644 index 000000000000..17764dedba94 --- /dev/null +++ b/comms/linrad/files/patch-hwaredriver.c @@ -0,0 +1,19 @@ +--- hwaredriver.c.orig Tue May 18 09:43:30 2004 ++++ hwaredriver.c Fri Jul 9 11:26:15 2004 +@@ -1,6 +1,6 @@ + + #include +-#include ++#include + #include + #include "conf.h" + #include "globdef.h" +@@ -169,7 +169,7 @@ + void users_open_devices(void) + { + // Get permission to write to the parallel port +-ioperm(HWARE_PORT,4,1); ++i386_set_ioperm(HWARE_PORT,4,1); + allow_parport=1; + } + diff --git a/comms/linrad/files/patch-main.c b/comms/linrad/files/patch-main.c new file mode 100644 index 000000000000..8207749a98c1 --- /dev/null +++ b/comms/linrad/files/patch-main.c @@ -0,0 +1,37 @@ +--- main.c.orig Thu Jul 8 18:24:25 2004 ++++ main.c Thu Jul 8 18:25:02 2004 +@@ -355,7 +355,9 @@ + end_program(436); + } + lir_errors:; ++#if 0 + if(ui.memlock == 0)munlockall(); ++#endif + close_all_except_vga(); + if(lir_status > LIR_OK) + { +@@ -640,7 +642,9 @@ + { + bufreduce:; + vga_clear(); ++#if 0 + if(ui.memlock == 0)munlockall(); ++#endif + settextcolor(15); + switch (lir_status) + { +@@ -854,12 +858,14 @@ + else + { + if(chr != 'Y')goto gtswap; ++#if 0 + if(mlockall(MCL_CURRENT) != 0) + { + if(errno == EPERM)end_program(1168); + if(errno == ENOMEM)end_program(1169); + end_program(1170); + } ++#endif + } + clearscreen(); + printf("Use usleep when the CPU is not needed\nRead z_USLEEP.txt for info."); diff --git a/comms/linrad/files/patch-modesub.c b/comms/linrad/files/patch-modesub.c new file mode 100644 index 000000000000..7dbc0ca8afbe --- /dev/null +++ b/comms/linrad/files/patch-modesub.c @@ -0,0 +1,37 @@ +--- modesub.c.orig Tue May 18 09:43:30 2004 ++++ modesub.c Fri Jul 9 11:17:15 2004 +@@ -5,7 +5,7 @@ + #include + #include + #include +-#include ++#include + #include "globdef.h" + #include "uidef.h" + #include "fft1def.h" +@@ -1068,6 +1068,7 @@ + j++; + if(j > 1000) + { ++#if 0 + if(mlockall(MCL_CURRENT) != 0) + { + handle[0]=(int)(chk_free(testbuf)); +@@ -1075,6 +1076,7 @@ + return 0; + } + j=0; ++#endif + } + } + } +@@ -1597,7 +1599,9 @@ + idle_start=recent_time; + if(ui.memlock == 0) + { ++#if 0 + if(mlockall(MCL_CURRENT) != 0)lir_status=LIR_MEMERR; ++#endif + } + work_flag=0; + diff --git a/comms/linrad/files/patch-setad.c b/comms/linrad/files/patch-setad.c new file mode 100644 index 000000000000..0b9098d7d610 --- /dev/null +++ b/comms/linrad/files/patch-setad.c @@ -0,0 +1,390 @@ +--- setad.c.orig Tue May 18 09:43:30 2004 ++++ setad.c Thu Jul 8 14:17:52 2004 +@@ -16,11 +16,11 @@ + #define ABOVE_MAX_SPEED 768000 + #if SND_DEV == 1 + #define DEVNAME_SIZE 12 +-char devname[DEVNAME_SIZE]="/dev/dsp "; ++char dev_name[DEVNAME_SIZE]="/dev/dsp "; + #define DEVNAMPOS 8 + #else + #define DEVNAME_SIZE 18 +-char devname[DEVNAME_SIZE]="/dev/sound/dsp "; ++char dev_name[DEVNAME_SIZE]="/dev/sound/dsp "; + #define DEVNAMPOS 14 + #endif + +@@ -36,7 +36,7 @@ + sync(); + } + +-void make_devname(int n) ++void make_dev_name(int n) + { + int k,num,m; + if(n < 0)end_program(9235); +@@ -47,13 +47,13 @@ + m=num/10; + if(m > 0) + { +- devname[k]=m+'0'; ++ dev_name[k]=m+'0'; + k++; + } +-devname[k]=num-m*10+'0'; +-if(devname[k]<'0')devname[k]=0; ++dev_name[k]=num-m*10+'0'; ++if(dev_name[k]<'0')dev_name[k]=0; + k++; +-devname[k]=0; ++dev_name[k]=0; + } + + void set_da_parms(void) +@@ -148,14 +148,14 @@ + if(disksave_flag == 2 || network_flag == 2)return; + if( (ui.input_mode&NO_DUPLEX) != 0 && audio_out != -1)return; + if( (audio_in) != -1)end_program(1000); +-make_devname(ui.ad_device_no&255); +-audio_in=open( devname ,ui.ad_device_mode , 0); ++make_dev_name(ui.ad_device_no&255); ++audio_in=open( dev_name ,ui.ad_device_mode , 0); + if(audio_in == -1)end_program(1007); + if(ui.ad_device_no > 255) + { + i=ui.ad_device_no/255-1; +- make_devname(i); +- audio_in2=open( devname ,ui.ad_device_mode , 0); ++ make_dev_name(i); ++ audio_in2=open( dev_name ,ui.ad_device_mode , 0); + if(audio_in2 == -1)end_program(1174); + } + if(ui.ad_frag != 0) +@@ -238,8 +238,8 @@ + if(disksave_flag >=2) + { + if(audio_in != -1)end_program(9865); +- make_devname(ui.ad_device_no&255); +- audio_out=open( devname ,O_WRONLY , 0); ++ make_dev_name(ui.ad_device_no&255); ++ audio_out=open( dev_name ,O_WRONLY , 0); + if(audio_out == -1)end_program(1086); + goto set_da; + } +@@ -275,8 +275,8 @@ + } + else + { +- make_devname(ui.da_device_no); +- audio_out=open( devname ,O_WRONLY|O_NONBLOCK , 0); ++ make_dev_name(ui.da_device_no); ++ audio_out=open( dev_name ,O_WRONLY|O_NONBLOCK , 0); + if(audio_out == -1)end_program(1017); + set_da:; + // Set a small fragment size so we can stop playing quickly. +@@ -397,24 +397,24 @@ + for(device_no=0; device_no",devname); ++ sprintf(s,"Open %s as RDONLY or RDWR? (O/W)\n=>",dev_name); + xytext(10,10,s); + vga_inkey=vga_getkey(); + clean_vga_inkey(); +@@ -925,9 +925,9 @@ + } + flush_sync(); + vga_clear(); +-sprintf(s,"For analog input: %s opened in %s mode",devname,devmode_txt[mode]); ++sprintf(s,"For analog input: %s opened in %s mode",dev_name,devmode_txt[mode]); + xytext(0,0,s); +-audio_in=open( devname, ui.ad_device_mode, 0); ++audio_in=open( dev_name, ui.ad_device_mode, 0); + if(audio_in == -1)end_program(1038); + j=dev_rd_channels[ui.ad_device_no]; + xytext(0,10,"Select radio interface:"); +@@ -1123,7 +1123,7 @@ + + + settextcolor(12); +-sprintf(s,"Trying to read %s",devname); ++sprintf(s,"Trying to read %s",dev_name); + xytext(10,10,s); + xytext(0,12,"If you see this message for more than 2 seconds READ failed"); + xytext(0,13,"Then try another device"); +@@ -1176,7 +1176,7 @@ + } + fprintf(sndlog,"\nRead test OK"); + for(i=10; i<14; i++)xytext(0,i,ss); +-sprintf(s,"Now trying to open a second device while %s is open",devname); ++sprintf(s,"Now trying to open a second device while %s is open",dev_name); + xytext(0,6,s); + xytext(0,7,"This may cause your system to hang. Try ctrlC to exit (or reboot)"); + xytext(0,8,"Try another input device or install another sound system."); +@@ -1192,9 +1192,9 @@ + read(audio_in, testbuff, 1024); + if(ioctl(audio_in,SNDCTL_DSP_GETISPACE,&ad_info) == -1)end_program(1093); + } +- make_devname(i); ++ make_dev_name(i); + cn=0; +- sprintf(s,"%02d:%12s",i,devname); ++ sprintf(s,"%02d:%12s",i,dev_name); + xytext(0,line,s); + column=0; + while(s[column] != 0)column++; +@@ -1206,7 +1206,7 @@ + if( (ui.input_mode&DWORD_INPUT) != 0 || ui.ad_channels > 2) + { + sprintf(&s[column], +- " RDWR useless (too many bits or channels) %d: %s",i,devname); ++ " RDWR useless (too many bits or channels) %d: %s",i,dev_name); + dev_flag[i]=0; + } + else +@@ -1224,10 +1224,10 @@ + dev_flag[i]&=0xffff-4; + if( (dev_flag[i]&2) != 0 ) + { +- audio_out=open( devname, O_WRONLY|O_NONBLOCK, 0); ++ audio_out=open( dev_name, O_WRONLY|O_NONBLOCK, 0); + if(audio_out != -1) + { +- fprintf(sndlog,"\n%s opened as WRONLY",devname); ++ fprintf(sndlog,"\n%s opened as WRONLY",dev_name); + flush_sync(); + if(ioctl(audio_in, SNDCTL_DSP_GETISPACE, + &ad_info) == -1)end_program(1094); +@@ -1380,17 +1380,17 @@ + line=0; + for(i=0; i ++#include + #include + #include + #include +- ++#include + #include "globdef.h" + #include "uidef.h" + #include "fft1def.h" diff --git a/comms/linrad/files/patch-uidef.h b/comms/linrad/files/patch-uidef.h new file mode 100644 index 000000000000..11bfbf0bf30f --- /dev/null +++ b/comms/linrad/files/patch-uidef.h @@ -0,0 +1,9 @@ +--- uidef.h.orig Tue May 18 09:43:30 2004 ++++ uidef.h Thu Jul 8 18:27:42 2004 +@@ -1,4 +1,5 @@ +-#include ++#include ++#include + + #define MAX_FLOWCNT 31 + diff --git a/comms/linrad/files/patch-uivar.c b/comms/linrad/files/patch-uivar.c new file mode 100644 index 000000000000..58be3bee833e --- /dev/null +++ b/comms/linrad/files/patch-uivar.c @@ -0,0 +1,11 @@ +--- uivar.c.orig Tue May 18 09:43:30 2004 ++++ uivar.c Thu Jul 8 14:17:52 2004 +@@ -2,7 +2,7 @@ + #include "globdef.h" + #include "uidef.h" + #include "conf.h" +- ++#include + + + ROUTINE par_from_keyboard_routine; diff --git a/comms/linrad/files/patch-wcw.c b/comms/linrad/files/patch-wcw.c new file mode 100644 index 000000000000..40e57c762866 --- /dev/null +++ b/comms/linrad/files/patch-wcw.c @@ -0,0 +1,28 @@ +--- wcw.c.orig Thu Jul 8 18:22:12 2004 ++++ wcw.c Thu Jul 8 18:22:55 2004 +@@ -116,10 +116,12 @@ + int syncflag, baseb_graph_time; + audio_buf_info ad_info, ad_info2; + touch_stack(); ++#if 0 + if(ui.memlock == 0) + { + if(mlockall(MCL_CURRENT) != 0)end_program(1165); + } ++#endif + baseb_graph_time=0; + get_buffers(0); + if(lir_status != LIR_OK)return; +@@ -181,10 +183,12 @@ + diskread_timer=recent_time; + latest_idle_time=recent_time; + lirsta=RX_LOW_PRIO; ++#if 0 + if(ui.memlock == 0) + { + if(mlockall(MCL_CURRENT) != 0)lir_status=LIR_MEMERR; + } ++#endif + if(lir_status != LIR_OK)goto wcw_exit; + // ******************************************************* + // MAIN RECEIVE LOOP diff --git a/comms/linrad/pkg-descr b/comms/linrad/pkg-descr new file mode 100644 index 000000000000..a7e3ee7e6b10 --- /dev/null +++ b/comms/linrad/pkg-descr @@ -0,0 +1,10 @@ +Amateur Radio DSP utility (SDR) + +Linrad receives a signal in digital form by reading a device. Currently Linrad +operates by sampling sound on line-in channel of an audio card. In the future +boards sampling directly at RF frequencies will be available. + +WWW: http://www.nitehawk.com/sm5bsz/linuxdsp/linrad.htm + +- Diane Bruce, VA3DB +db@db.net diff --git a/comms/linrad/pkg-plist b/comms/linrad/pkg-plist new file mode 100644 index 000000000000..369a90999bc6 --- /dev/null +++ b/comms/linrad/pkg-plist @@ -0,0 +1,14 @@ +bin/linrad +%%PORTDOCS%%%%DOCSDIR%%/z_APM.txt +%%PORTDOCS%%%%DOCSDIR%%/z_BUFFERS.txt +%%PORTDOCS%%%%DOCSDIR%%/z_CALIBRATE.txt +%%PORTDOCS%%%%DOCSDIR%%/z_COPYRIGHT.txt +%%PORTDOCS%%%%DOCSDIR%%/z_GIFINFO.txt +%%PORTDOCS%%%%DOCSDIR%%/z_INSTALL.txt +%%PORTDOCS%%%%DOCSDIR%%/z_MLOCK.txt +%%PORTDOCS%%%%DOCSDIR%%/z_SETTINGS.txt +%%PORTDOCS%%%%DOCSDIR%%/z_SPEED.txt +%%PORTDOCS%%%%DOCSDIR%%/z_SVGALIB.txt +%%PORTDOCS%%%%DOCSDIR%%/z_USERS_HWARE.txt +%%PORTDOCS%%%%DOCSDIR%%/z_USLEEP.txt +%%PORTDOCS%%@dirrm %%DOCSDIR%% -- cgit v1.2.3