amiga-request@ab20.larc.nasa.gov (Amiga Sources/Binaries Moderator) (05/18/91)
Submitted-by: RWALLACE%vax1.tcd.ie@CUNYVM.CUNY.EDU Posting-number: Volume 91, Issue 109 Archive-name: utilities/filter/part01 [ includes uuencoded executable ...tad ] Filter copies all valid ASCII characters from the source file to the object file. Non-ASCII characters are excluded. Carriage returns (ASCII 13) are also excluded since a linefeed (ASCII 10) is the standard end of line marker under AmigaDOS. #!/bin/sh # This is a shell archive. Remove anything before this line, then unpack # it by saving it into a file and typing "sh file". To overwrite existing # files, type "sh file -c". You can also feed this as standard input via # unshar, or by typing "sh <file", e.g.. If this archive is complete, you # will see the following message at the end: # "End of archive 1 (of 1)." # Contents: filter.c filter.uu # Wrapped by tadguy@ab20 on Fri May 17 22:00:29 1991 PATH=/bin:/usr/bin:/usr/ucb ; export PATH if test -f 'filter.c' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'filter.c'\" else echo shar: Extracting \"'filter.c'\" \(1891 characters\) sed "s/^X//" >'filter.c' <<'END_OF_FILE' X/* Filter by Russell Wallace 1988. This program is in the public domain. X Both source and executable code may be freely used and distributed. X X Usage: Filter <sourcefile> <destfile> X Filter copies all valid ASCII characters from the source file to the X object file. Non-ASCII characters are excluded. Carriage returns X (ASCII 13) are also excluded since a linefeed (ASCII 10) is the standard X end of line marker under AmigaDOS. X X This version was compiled with Aztec C 3.4. If you are compiling with X Lattice, use the short integer option. X X If you give copies of this program to anyone, please distribute source X code with the executable program. */ X X#include <string.h> X#include <dos.h> X#include <proto/dos.h> X#include <exec/types.h> X X#define BUFSIZE 2048L /* length of I/O buffers */ X Xchar inbuffer[BUFSIZE],outbuffer[BUFSIZE]; Xstruct FileHandle *in,*out,*output; Xint inpoint; Xint maxin; Xint outpoint; X Xvoid fileerrmess (char *s) X{ X Write (output,"ERROR: Couldn't open file ",26L); X Write (output,s,(long)strlen (s)); X Write (output,"\n",1L); X} X Xmain (int argc,char **argv) X{ X char c; X inpoint=maxin=BUFSIZE-1; X outpoint=-1; X output=Output (); X if (argc!=3) X { X Write (output,"Usage: Filter <sourcefile> <destfile>\n",38L); X exit (30); X } X if ((in=Open (argv[1],MODE_OLDFILE))==0) /* Try to open input file */ X { X fileerrmess (argv[1]); X exit (29); X } X if ((out=Open (argv[2],MODE_NEWFILE))==0) /* Try to open output file */ X { X fileerrmess (argv[2]); X Close (in); X exit (28); X } X for (;;) X { X if (++inpoint>=maxin) X { X maxin=Read (in,inbuffer,BUFSIZE); X inpoint=0; X } X if (maxin==0) X { X Write (out,outbuffer,(long)(outpoint+1)); X break; X } X c=inbuffer[inpoint]; X if ((c>31 && c<127) || c==10 || c==9) X { X if (++outpoint>=BUFSIZE) X { X Write (out,outbuffer,(long)outpoint); X outpoint=0; X } X outbuffer[outpoint]=c; X } X } X Close (in); X Close (out); X} END_OF_FILE if test 1891 -ne `wc -c <'filter.c'`; then echo shar: \"'filter.c'\" unpacked with wrong size! fi # end of 'filter.c' fi if test -f 'filter.uu' -a "${1}" != "-c" ; then echo shar: Will not clobber existing file \"'filter.uu'\" else echo shar: Extracting \"'filter.uu'\" \(4499 characters\) sed "s/^X//" >'filter.uu' <<'END_OF_FILE' Xbegin 644 filter XM```#\P`````````#``````````(```(X````B@``!-$```/I```".$CG?OXD) XM2"0`2?D`````+'@`!$?Y````P'(`(#P```2A8`(FP5'(__PI3P$`*4X`^$*L\ XM`/QP`"(\```P`$ZN_LY#^@&4<`!.KOW8*4`30&8&<&1@``$F)FX!%"EK`)@`M XM]$JK`*QG``"2(`^0KP`X!H````"`*4``Q"!K`*S1R-'((F@`$-/)T\D@`G(`V XM$ADI20$(T(%>@`)`__PI0`$02.=`0"(\``$``4ZN_SI*@&8,(#P```/H+P!GI XM``$0($`I0`$,3-\"`B`"4X#4@1&R```@`E."4<C_]A&\`"`@`E."$;P`(B`"= XM$;$@`"`!4<K_^!"\`"(O"&!R*6L`.@#$<']2@-&L`,1!ZP!<3J[^@$'K`%Q.X XMKOZ,*4``_"\`)$`@*@`D9Q(L;!-`($`B*```*4$`]$ZN_X(B*@`@9QHD/```4 XM`^U.KO_B*4`!!&<*Y8@@0"=H``@`I"!L`/PO"$AL`,`@:``D*6@`!`$(3KH`Y XML$ZZ`'QP`&`$("\`!"\`("P`[&<$($!.D$ZZ`%PL>``$(FP30$ZN_F).N@"&" XM2JP`_&<<(BP!!&<$3J[_W"QX``1.KO]\(FP`_$ZN_H9@#B`L`1!G"")L`0Q.6 XMKO\N(!\N;`$`3-]_?DYU9&]S+FQI8G)A<GD```!@``.B3G$``"!O``1@``"&& XM3G$``$CG,#(L;P`H)&\`&"9O`!PD+P`@)B\`)$ZN_J1,WTP,3G4``$YU3G5(- XMYP<P+@`F2"P!(`=.N@8N)$`@"F8$</]@,`@J``,``V<.2'@``B`'<@!.N@-L` XM6$\@*@`$(@8@2TZZ`_(J`$JL`-AG!'#_8`(@!4S?#.!.=0```````'!A3E7_K XMZ$CG(3(F2`RL````(!*F;```TA`3<B"P`6<,<@FP`6<&<@JP`68$4HM@Z!`3W XM9P``M"(L$J;E@5*L$J9![!*NT<$D2'(BL`%F<E*+($LDB"M(_^P0$W(BL`%GF XM4'(JL`%F/E*+<``0$P1``$5G"`1```EG$&`<(&W_[!#\`!<K2/_L8!@@;?_L2 XM$/P`"BM(_^Q@"B!M_^P0TRM(_^Q2BV"T(&W_[!#;*TC_[&"H4HL@;?_L0A@KK XM2/_L8`#_3B2+$!-G%G(@L`%G$'()L`%G"G(*L`%G!%*+8.9*$V8"8`9"&V``I XM_R8@+!*F9@8@;`#\8`1![!*N*4@2JDJ`9@``@$/Z`21-[!)L+-DLV2S9+-D\T XMD2)L`/P@:0`D+T@`%'`H0>P2;")O`!0B:0`$3KH!CD'L$FPB""0\```#[BQL? XM$T!.KO_B*4`1,"E`$3AR$"E!$30I0!%`*4$1/.6`*T#_\)/)+'@`!$ZN_MH@E XM;?_P(D`C:``(`*1^`"M`__1@*BQL$T!.KO_**4`1,$ZN_\0I0!$X0?H`I"((O XM)#P```/M3J[_XBE`$4!^$"`'`$"``8&L$2P@!P!`@`*!K!$T`*P``(`#$3Q*H XMK`!L9P1P`&`&(#P``(``+@!"K``@(`<`0``!*4``''`!*4``0B`'`$```BE`, XM`#YP`BE``&0@!P!``(`I0`!@0?H"KBE(`/`@+!*F(&P2JDZZ`#YP`$ZZ`6Q,\ XMWTR$3EU.=6-O;CHQ,"\Q,"\S,C`O.#`O`"H`````````````````````````\ XM``````````!.^0```)(```````````````!P84CG!P`N`"`L``!3@"P`2D9K4 XM+B`&2,#G@$'L$2PJ,`@`2@5G&`@%``1F$B`&2,#G@$'L$2P@,`@$3KH![E-&1 XM8,X@!TZZ_%9,WP#@3G4```````!P84Y5__A(YP,P)D@D22X`($I*&&;\4XB1M XMRBP(($M*&&;\4XB1RR`((DO3P"M)__B\AV,"+`<@!B!*8`(2V%.`9/H@;?_XC XM0C!H`"`+3-\,P$Y=3G4``$CG`#(F;!,P(`MG%"13(DL@*0`(+'@`!$ZN_RXFR XM2F#HD<@I2!,T*4@3,$S?3`!.=4CG#Q`N`"P!*B\`&"`'3KH"E"9`(`MF!'#_: XM8!PO!2`K``0B!DZZ`+I83R@`2JP`V&<$</]@`B`$3-\(\$YU``````````!P\ XM84CG`Q`N`$?L``0@"V<P""L``@`;9B0(*P`!`!MG'"`K``20JP`0+`!*AF<.! XM("L`'"(&(&L`$$ZZ^^@F4V#,(`=.NOZ>3-\(P$YU``!(YS<2+@`F2"P!2JP`R XM\&<$3KH".D*L`-@B!R0+)@8L;!-`3J[_T"H`</^Z@&8.3J[_?"E``-AP!2E`\ XM$SP@!4S?2.Q.=0```````'!A2.<_`BX`+`$J+P`@2JP`\&<$3KH![$*L`-@@7 XM!5.`(@<D!B8`+&P30$ZN_[XH`'#_N(!F#DZN_WPI0`#8<!8I0!,\(`5*@&<*. XM4X!G"E.`9PQ@&"`&8!0@!-"&8`XB!W0`)@(L;!-`3J[_ODS?0/Q.=4CG`0(NW XM`$JL`/!G!$ZZ`8(B!RQL$T!.KO_<<`!,WT"`3G4``$Y5_YA(YS,R?@`@;`$(& XM'BC__W!/OH!O`BX`(`=#[?^O8`(2V%.`9/I"-7BOD\DL>``$3J[^VB9`("L`) XMK&=(Y8`D0"PJ`#A*AF8$+"L`H$J&9S0B!D'Z`+0D"'8++&P30$ZN_]`@1U*'( XM(`@;O``*"*\B!D'M_Z\D""8'+&P30$ZN_]!P_V!00_H`CG``+'@`!$ZN_=@K1 XM0/^:9@1P_V`X0>W_KRE(`)`O+?^:2'@`/$AX`/I(;`"L2&P`F'``(@"1R$/L8 XM`(1.NOH&3^\`%%.`9P1P_V`"<`!,WTS,3EU.=2HJ(%5S97(@06)O<G0@4F5Q! XM=65S=&5D("HJ``!#3TY424Y510``04)/4E0`*BHJ($)R96%K.B``:6YT=6ET5 XM:6]N+FQI8G)A<GD`````````<&$O!RX`<``I0`#82H=K(KZL``!L'"`'YX!!N XM[!$L2K`(`&<.(`?G@$'L$2S1P"`(8`AP"2E`$SQP`"X?3G5(YP$"<``B/```J XM,``L>``$3J[^SBX``H<``#``2H=G'$JL`/!G%B!L`/!.D$J`9@)@"D*L`/!P" XM%$ZZ_`Y,WT"`3G5AO$YU``````/L`````0````$```3.`````@````(````4/ XM````"@````````/R```#Z0```(I(YS`2)D@@+!$<(@!!^@`^)`AV&BQL$T!.= XMKO_0("P1'"!+2AAF_%.(D<LB`"0+)@A.KO_0("P1'"(`0?H`+"0(=@%.KO_06 XM3-](#$YU15)23U(Z($-O=6QD;B=T(&]P96X@9FEL92````H`57-A9V4Z($9I@ XM;'1E<B`\<V]U<F-E9FEL93X@/&1E<W1F:6QE/@H``$Y5__A(YS$2+@`F2"`\Z XM```'_RE`$20I0!$@</\I0!$H+&P30$ZN_\0I0!$<<@.^@6<8(@!!^O^B)`AVB XM)DZN_]!(>``>3KH!2%A/(BL`!"0\```#[2QL$T!.KO_B*4`1%&8.(&L`!&$`B XM_P9P'4ZZ`2`B*P`()#P```/N+&P30$ZN_^(I0!$89AP@:P`(80#^X"`L$10BB XM`"QL$T!.KO_<<!Q.N@#L4JP1("`L$2"PK!$D;20@+!$4(@!![`$4)`@F/```S XM"``L;!-`3J[_UBE`$21P`"E`$2!*K!$D9B0@+!$8(BP1*%*!+T$`&"(`0>P)0 XM%"0()B\`&"QL$T!.KO_08&X@;!$@0^P!%"`($#$(`!]``!1R'[`!8P9R?[`!C XM90YR"K`!9PAR";`!9@#_>E*L$2@B+!$H#($```@`;1XD+!$8(@)![`D4)`@FQ XM+!$H+&P30$ZN_]!P`"E`$2@@;!$H0^P)%"`($Z\`%`@`8`#_."`L$10B`"QL& XM$T!.KO_<("P1&"(`3J[_W$S?2(Q.74YU3OD```8`<&$```/L`````0``````3 XM``(B`````````_(```/J````,````"@````F````````````````````````$ XM````````````````````2```````````````````````````````````````( XM````````````````````````````````````````````````````@`#__P``^ XM``X`#@````````@*`````/__````!``$``````````````!P__\````$``0`J XM```````()@````#__P````0`!`````````@P`````````^P````#````````> XF`+@```"D````?`````,````"````E````"8````$`````````_(#3 X`` Xend Xsize 3188 END_OF_FILE if test 4499 -ne `wc -c <'filter.uu'`; then echo shar: \"'filter.uu'\" unpacked with wrong size! fi # end of 'filter.uu' fi echo shar: End of archive 1 \(of 1\). cp /dev/null ark1isdone MISSING="" for I in 1 ; do if test ! -f ark${I}isdone ; then MISSING="${MISSING} ${I}" fi done if test "${MISSING}" = "" ; then echo You have the archive. rm -f ark[1-9]isdone else echo You still need to unpack the following archives: echo " " ${MISSING} fi ## End of shell archive. exit 0 -- Mail submissions (sources or binaries) to <amiga@uunet.uu.net>. Mail comments to the moderator at <amiga-request@uunet.uu.net>. Post requests for sources, and general discussion to comp.sys.amiga.misc.