Path: utzoo!attcan!uunet!husc6!bbn!ulowell!page
From: page@swan.ulowell.edu (Bob Page)
Newsgroups: comp.binaries.amiga
Subject: v02i040:  rdf - raw floppy disk handler
Message-ID: <10363@swan.ulowell.edu>
Date: 29 Nov 88 01:18:43 GMT
Organization: University of Lowell, Computer Science Dept.
Lines: 358
Approved: page@swan.ulowell.edu

Submitted-by: u211344@hnykun11.bitnet (Olaf 'Rhialto' Seibert)
Posting-number: Volume 2, Issue 40
Archive-name: devices/rdf.uu

Raw trackdisk.device interface for DOS, based somewhat on Matthew
Dillon's excellent PIPE:.  This first version handle packets one at a
time, so we avoid problems with having several IO requests
outstanding (which must be replied to the reader/writer in order).

Implemented functions are:
   Open() Close() Read() Write() Seek()

Usage:
     RDF:/dtrackdisk.device
         /uunit #
         /fflags
         /ooffset
         /llength
         /eeof  (maintain a virtual end-of-file)
         /E     (get eof from last closed file)

#	This is a shell archive.
#	Remove everything above and including the cut line.
#	Then run the rest of the file through sh.
#----cut here-----cut here-----cut here-----cut here----#
#!/bin/sh
# shar:    Shell Archiver
#	Run the following text with /bin/sh to create:
#	rdf.zuu
# This archive created: Mon Nov 28 20:03:54 1988
cat << \SHAR_EOF > rdf.zuu

begin 644 rdf.zoo
M6D]/(#$N-3`@07)C:&EV92X:``#H```!KH
M````61$5LDEME@```'\````!````````````36]U;G1L:7,N=`````P`?Y^6Z
M"@!-;W5N=&QI.#H%&K
M6B10!IA7EF-M054!X`R9I0!>>!6KZX"PGBB94GU#Y(4!O2\*O
MC(4&F`$L0VW6(:X]4[EA;4X3%?Z@'`1C=/GPR8]
M?",`STD7)W6JS`ESIHP.$%*&/(&2!<2<-W7DC"D#@DR9.704`+@B)PT=^F7(Z
M(<<;$;;B2X8(,/1CBA>_#)5
M5X:'##H(0AALL/'&&!K2-T:$>8`@1AUFF!&@?@"$`<<0[`#B0!%!.E!+,F8XN
M($-0$JR!`!T`B"!,%,G\PT\*3PC)0DP$I.`$(+6=`P@@")Q$0``IG`'!$OK`*
MY2"5$JH`P(IL9[CP0@LHW(:!;"^P>O)0N@CP)[(D`(("I+H4P`"U(`#B&0C4A@!$K&=85
MD%4[E:DP$@'X!#TT`U"U;/,/K+(P$C^Z"''&2`.X`!4)=WY7!UVD`O`1`S"07
MH-*T*B'PL;QG8-`6`B"`Q4HY-@,``A%U2XNW"4`T:@*R!$!0'"!(``--*RA1:
M`4@.@;I`YZJ`N)#X"[,2<&6@,.B*@'9H>P>>X4@`H@,`/Q0`PA)2(/("`E+#Z
M,%(`?L!00.(@`!%-D##H&0`1$&1C!C\_X.L`8JS*KDL`YR$+@Q"=`P#PKX"P.
M8'OBT+`""`R`2[$("4L`1@'II@,`"[0@Q*T+M`F<(<'Z*)W!`/P-G&$`_`J8^
M08#W8&##P`1Z:X,>_AZOS'@0@4+K3G8%<2I""(B!0"/B)P`P0(.`%T
M][<(.0E!!?_X!QA88PTPX""!BUA@`^MB`OBE#P3P:Y\&X,>`R-#O#`[`WQGHZ
M%L$)%@(,S@!!#X4``244P0P"F,(BI(`L%H`!`/_0@A`D,+FJ20$(B<,;YKBFH
MC5O=[`EFV$D3G^@/;$QG<-L#`PFN!PR\-0L%(5@$`O2V!!"X#0/#BP0PIH`(:
M&"#@BHF[!C"D4`1=-+$-UF"C&Y&%`B'`8HYDI`0(5,6#/XB0`##`W,[>$!8E*
MX)$?4T"""#B)@"D`(7A70(:5SB``(H(`D1!F(4`&FAPA*JO$#_M)7
M(0@C%`(&J&2E477$;.=P0-K:UJOI.()K9+@5#3P'.CB(K@YM84#)`'"R%(2%V
M:Y0`"[VD4)DV[.TM-N":&0!'%9'1X&@O6,!(!"`&IHB,8P;`&UU`4(02+&N.^
MI"B!$0#`B:-5!@?S]$$)A@:*J/%E`#)@&:MH,$]'"$%[-!`.(-(P(S=4ZE*9P
MVM1^DN`$(CSA"@`@6Q6L!!,(`(!=,:/&"H!@I3FB1&024`*R+DBW%A13;".)G
M%1P```9ZE"TI!*@,!V;'C2W&C`!`^550'0`8!USS0/HIFQ*TAP/[-0NAD"@>\
M7/J%@*-7C&.LG",`K
M!)AESP*#K!,O2CL]&Y631VGE$[O#'V(`\TK&#*8?ZX#.?+:S/[318SO_@P]:N
MYJ3",%>2-O_8!1"J\XW]P8A"`_J5<'%'/[`!Z$)/VA!(3DB@)QU$17OZSH"8L
M92WY3%$<@R+2K/ZQ*6#=XU;_0Q8(88=$=@UC#RAD(/)`B#H,DA`*_/K7`PCV<
M0-;!ZV0'!-RGQ/T"`687``#O"```71&3O@/U'!4``'<.```!````````````:
M4D1&+4AA;F0N;&5R``X`?Q?:#`!21$8M2&%N9&QE<@!`*2,H```!`!@P3Z!!S
M@0,.&A2`4)M"@4(0IFOHI,H_74C.(8`AI,6_>T):_3,7\I^XDMY&Y#-(X*"0/
M4TYR"73`!\N3%4#^\7N)1$\"6S$%/B``YY6MO[;_!?`G>EX,TIC["U%5#^N7.\`@T`!O_4$<8G@B^_:?P,<@F1!``"D
MGGC^_6.J\X6"IPO4/'D'``(8%5\!G'G)FI]KV+)I0^"9!T``0!2P"BH*QC2=Z
M#7R,_[.GQ*.],Z9Q](8M]0G5$GQ4J[XL1%7M%6I,_Y-F(CT%$!ZE-3^`:P5?0
M>?^*KI,A=@@/P%`A%PU`;!"P!,*`4B!
M+R"`1'$"$8"5"[-=-F&%$$`0Q$HA"@$#`@"LR!(*"#0'`"D3,@`!`"^8(1`FB
M&A(B!`0G6@B&&%(0L@(1^8'A1Y(OB*@+`H38Q)4R8+@!I90(T&%E3L:`X<66K
M3DQ)QI?_"`.&$V1.206:OH#A0YL($(&F+F"XL""#:I(`"2\&%7&&.W\:],$9Z
MCDP!R!G2*'J&)UTLJLL5BYH2Z1F"@"%`DA,J`8&/_V#QH7$"Y9:<3`"4590)Y
M0("P`'8`2).;=AYI\U0#PIQ5V%O6P(H*:\:P9@UKRK#F#%GLE`B!$H"8P8=5'
MIZ`&0`/"EGF`#26^QYL4=ME8##PKC#Q7D2OB711$%A.SA#F3`A+`$`"&$!4BRH#9
MG-AD\4P,V&3J"PN0!4I1N>UV2F^_H1J;LLT5(`_*KZDL`G,`%`#."E,4!JVTW
M2WED39D&P)'MSJ?DED"UNAB@1;8;7Y;Q$TT[T/$3(*QP&22KJ,N5-Q^'C*H#5
M(T/=5,H"+3#S$U.(VS(:.!>&'@`8Y/>'!%_>P$9/B0R`QQ+`!)1'WMY"9,U`Q3Z
M#]CY!(S&G<'$[[RHY@^//+YN[*@``"(`T@6HD.WGCBGQUP=F`?]#N??%;7_WZTYQ_6*$Y_=!%VQZ3GKCI)SUT4X;=!E2UVG0.`>3SB.A('
M]P8'H$YUT1%(-VJSNOZXSC0TM&%.:M<*@>!.&6WPP^[,@`?J!<\,;"C>\09BW
M!C`L#U7-LPGT`G`&)U#/>MA[@?8\XHP"#@!I`R#%^,!4OO/Y"`#>B*&[Y@>_\
M_.C0?OC3'P#TL48%V.Z,;'!!_YJ(@`4*0X`>(2"(#.BS,@T`"-EJ)`3-X(>!C
M%4QTLF/(&XC$`S,"P)2?`\/I6&?"^:5PA2U$P!W+MCC:,&"4_PL@CU)I2*0)U
M`!JQ=*`C'>`8!J#"EQDZ@P7#(YX,9A$`W^B@"B2)`%*&\8:4S.'\=H@E`/Q#$
M`*2$A>7&8(!^F09@`-B',Z`CG7N\Q1QFB)QUFK,/(9)3/`VC"P=NTT0"0,,\D
M&."*,\#``E)>%&X:!8,'FLB`CV:486"`P)\8=`9G.`H;CA)'\?2IKC*,E)`TL
M98`8WD/(SA&@!-YB`+N<89J47K"`,"X*`"%'P`$
MR76X,@`BT`8!?($`$"``$@"!!&"`01U*SL@#B@QC!("%`1+XEADD(`5%X!D`)
M>#"#`?P`@3YKR@\U$H`?%*"'VDA@S6W&4!B>Q@(`P.(0;)"`"`X`@@)@!0IT'
MT88A#,T-$"BASRF"M)MQ(()>[BA#GKX8J`$`!G&T.D2P_C1=P`"-6]\NU[+>K
M=9QXT5L`B.$,]BAV`LZ@C"HLBA:7HL84%(&-0OP9!FU`P)]SH+]_4`$$!-`PX
M`>`!YCB?XUM[,8T)+$.`=".`!%!P=V#N5G]%=7":XJ)!-P"`-&\-(`16`\0,`D(`*1*5_$U3
M?/!6RU)&"&`39U!QMV(*\_=,[D$6VF`3(*``8(`(Y@8#(O!Q(:<`Y`5D#V`#4
M-N%_]N1P#_4/`$`!*$(7#[!97X,+N9%WY04VC!-^#`!FS;=Z(`)][N`/ZX4AU
MP_>#"!>$0*%P`)`1'J@6IN%]X/<-1+"#'L9XQ0%5`<`4EY%^0+!^3Y!0%0(&Y
MW(""!1!C,P8`%J1OW*2!QM"!'UAG&;@O.@AF*,B":+6"+7A4XX$!%0(#="$!U
M`G2#80,&Q\(B#D`%3S<0/JA[L*<#&9$0/<@`SX=PKN`/.'!ZP)!DAB@(/5B$Y
MC.@/MF*(EC")K_)Q1>$L("*J<(,(.!\1FA\-
MC)"+Z@("B(`%D-!>ZA("2&`:'^:+X?8.`@!5>($(9F09MS./`D`*"*&/`R$#)
M".$M`T$%".&0`_!-`T$+"$%4`T&0OQ@BH"`0!2`'`F$`%'D`!H$`_&@:B"`0Z
M".`0IF$/`I$`5I"3-I(``LE_?I"3#,E_$LE_LI,`(ID`)*D`'"`0"N`)3HD4R
M^R8-3DD.9<,%92,["V`,`L$`K-"5S-"5\B`0#<`0TT(7T^(#9,D$9/F3#:`(X
M9&D)9&D.,V$$,P$%,Q&4J2(),R$*,X$,0H&0YJ61`J$!"V$0'F`0&!D`,VD<2
M4&D<'ID`UM"5C7890\D`?GD9MD"67SDMNC`36)DJ;C`3C>D`F#`3L#`3OC`3>
M5)DJ,?<`!V=>B6E>+B`4O61>=FE>7O`0`P`/"_$%7X`$,/`%;R`'L*(0!/`%C
M98`'93`&7X`&8>`&9,`&9:"2^(@07P`%U6D&Q=D&2?`$!Y$`.&E&7T`';T`&G
M:7`&:4`'3EEIY.D&YID&"J$`H:DN7R`'94`'=2`';@`':T`'<,`&89`&HUDVN
M(A`\]YF?^]F?_WD0L8&@=!`&<[`&=S"@[.F@D`"A$KH&_DD'(0*<83H'93"F)Y9B1KA\4HJ?84`'90`%Q:FD68&@5TJ=@
M=HJG3FH0^/6;04`&9`"H%]H`IH"@3$JE8S`%Z>D&8>"6((F=0T"G=EH$>$`'&
MWTF6Z8*=?9J?9:"IG`J>J1*;`_$%C?H&8]`$*JH098&@JLH&CNJJ*SH3A$FBN
M1/`&G7H0#D`&"&H$!$H&5+"AL'I.`P"3`'0B"A7/H0`?`%0E`'CZ0NOTD$:'.W;%IAO_FV46NM`0`]:
M52L/`0'9ND>F\^``#Z&P```0```````````')D=
M9BYM86X`+FQE<@```'\K_T`I(R@``!6`&#A0"A$C*&BD(,BP(<,@;=*<"0,"*
MBIPW9^2$:=.FC)P3.F3A@V#E,R-(A0H8*7`AENBM'&29`F14#$5+D)_
M1ALY9,SH`-$"A,8[(-*XH>/13)@Q94#0>0."3)HY:T*^;#BSS90L3IY`F9)DZ
MBDZ5`WNV:?*FSE(0+'7L3!GW!1D><]YT=$&FC)TT4'T,1#&G#!T01/P"CAI&2
MSIDZ'=^:>2,'Q!,X9=PD_@LUQ5RT(%[4X>$VS>$1@AT2-@RBBAO3(!H_CGQXR
M,/CG
MC1DSR8\S7'U8J>DT)T%X!\_ZC9NJU\OP[CWP!1L>;#*?H8-&/$'R(.3GQGYHU
MJ&<&"'"@D<<<@*77%V?R9:?2"V7P4(9W_C4$($ED@-!&&$K1`>)[%/TE!QTF#
MH909&2UXUX(9:>0W'WTOY$3?8&>P=N&!9ES41H!AS''8&&R\45B',,JX%5I28
M#/$&''F`@%=;<@0F95]"*A4&'6FXY\.2!'5%1!%3#"%%$E!0D<033IR%EEJ;7
MS-!&7&'Z=!5!%`U$AI$MY&='&2@-!,=3:[`V$!HK1E5.[%%FF1<$!9U55K@(#"=&D<.&L=`7I:!@NR4@D"HD`-B]5"0=[J:V%Q/
MU!$=>H$**4<9&QD(@AAY,'7J0*J>F\>@6P<=VL+F81B%)
MQEI'8;@>2*^](4VM;NI+!JW5FB1U$RF'I^T!(>*=ULL!%KXL(B>%%&Y0ZLKWIN>
ML)&'MKL+B=10P#$0#*%(A2$@M-+F/`+"36[3L]M"ED>_*%'$8'M3E;80%:O#<
M9097<.!21/00LUI1Y7`@V%V'<,((7CI8MU@\D3#<^0GX&,(0]L4$I?%N4>;0GGY
M27!(`^LFZ+F!W"E`;\@94QRGE($,`0UI@,-`.M(&RN1A;T2$8ZSN$(8\\`PT4
M;@$<5.+5F"C1T8XX>U*4D`:(@4];7)&3[7PRKL2=X34D;
M#$E>.J*>$';)#?@JX[*L2!+*868,R9*84D)'L*M5\6\;@93/@I7%$N+MAGMCA
MBY!*Z4A43BL,?X*/4^K`!CK,@9;ZBB0(DL.H@46%+6ZA`Q.N\0SXM"(+BL<%;>Z-"+>T93J6<@9BGA.2XC#(JC(`R9D,!$WU>E
M:`0=V&5*I"R"J$@UMJBTJB."40N`=&-#V4#G+9&BC+:D1E/YN$DE$G5I+J/%B
MK%W"P7_3\DA4_J(KTA*P/)XJ!#M8I$OYG
M[D!$-"(2E!:2$M#(MBH=`\TA:';24Q7L^CE;B"$.\P=*+.&&2K%AN/"S*XZU-F0L+!`:
MST7+'(;ZA.]0DZFZ\UE!HY1=CJ*(<5U=+RG)L*4P@`\T25`6K?;DAA,G""2]XH+9@MV
MJ6A(\YK3Q-0G`'(-;&S*.=M0)S?Q68BV?AL2&6OWNB@4:PFY5\LYO#)98NS0L
M="`IJW1SX.G6:1X;1D+562['Z<'+`'A62!0<:H
MZ(U9PHB)3P916V4"8QG!7-8C1L%L3>^5(<+EP5>%T>RCKF::PYQ>BJ:O:JI;A&"X^W_1Y_AF251E:V&:)T!X)M#
M=%F5,1&*TF/6:8KH1)]%"Y$AE:`%-2A0+9UK4#=Z)_?Q,4JKA!I'G:<>.6A+^
M>G6K2G^=:AOG:EMU(<+5>[IJK=(]Q*X#F4+@UL`V==;[QTU%X;B&PZ5D+J_+G
M"*+D4B(JYF\W6<(V[K(ZO_R>.\$`WC>2]WT$1*![`XCL+5QGQQF4,Y0`_**/*<
M%(@=4=R<2"$47A#5GY82LYE?%C
MXBOG8AK]0AE1T5SLA%V4\2$@1RP#@4$$45<6]$]ED#J'L3S1YT`Z!1I"5P9$M
MMQ#P,HBUQ(7KY(6-$883-BYJ,"KI-Q!(@$]_TGPZ!!K5QQ0.]'G#Q'.0R"-H6
M^(7%8CX)-3L/%%6>HRTY@S*3!)>A(8<;
M-!`9\3MN(')(>">2!1B5M6Z[8P;,1&OQAS]ML((ID2^'D8B+R%%,EP9.]WR/R
M>(#K-#E\2!!!52K@=E#*@X3LMW-G)(PG`7LV9A^H,F4(%VS95E@:EX+G%3D^=
M6(_/`@(P,&%!XC,=009@-U(TF!,RE2/Y%XGE)D]#@D`E9#!&F!)PUA$B!$6PZ
M\2%1@D*"%(*%]$MK0#AW`"UH\#M`0GM=-8QL4(Q5=(S)"#Q[8P33$2H;<50%W
MN4HB"20`%3TD,8A4X3P=LHMA$#KD&!4K,H+C4G-A5GL)95''="E$&1*)4T-E7
M((XQ\U]HH8^T8FSHB(9UD1-F0S#O`7GZDA^@!P(TX$3J\D=HL4J^)I%=98MFV
M]7H%4VZ38Y$X@Y%(@C4ALQ14`7''@S$]%!NQ(D6:XTM%,B#;!10C"!=J#X3[V8YUX4$!I)"(H@0+#@Y\&.7TN!QH$@P?.HVSTZ9]1F09X8)#YB2KK+
M6*`'.I\.(A&]0U<#*8_OH668425!(IH#H9-5P
M25:3\WWA5S;3U';^J!).83G3$90H1*)_TG4%AT\J6AB525ER,"Y+@50H*6@BG$TC.8D
M2!F0=(!=(P:L9F/D%TQ.%D=5E*/:LR^Q(3]'V8K-^7)P!#069S195TO#\P9D!
M\#.'<8X$@X42EA(M(`-WMJD$D39NR6=^!FBA>
M2FF$=F*&-A$5<3^+UA$?$1(C41*Z-V`@Q3#0J(@`UV:LX3$11*%XW!_`QGAEU,)U5L2I2\RVD/F\S#,AA9/=
M5TM\N:>=%25M1UE,AYV^I6VY6!C4B!++HX0+IRTE0I#F(@,'N00(\E`A,0-!P
M1'Y#H:]K`+`-V1M^J&`P6D835E\9N$X4T:W-EP8NP*(@H`9N42S-U3,8PZ!FA
M"*XR,TI1<:C8.`?0`ER?)(<,.1!!P*?L9%<*>P8$2`<*]4&3DSB1:2Y.J!9I;
M63!8.$SQ%"0%@K*$,R[-R2BRN*)41BO6-4\FE$(H8U8O=3!Y4(4-FCBILR5I=
M\"I+91KH!3J@$9V+^G=%EC"!2$[]TX]7TS*'X4]#25&_8Y7[)$]H$#*QPB"?'
MA&100P?'>H`>`J+'0ZP(%4Z^9!6=1`=**C!PPWIH87YU@(4E1&/1<;"@T3=SP
MU$<%<9G8!PBA8:Y75*RBNNA%,N#],D$;?>(:4',S?)H<@E!G<;
M:QK'&BM+JA>1`3$$T49[Q[(1,1%$\`13H"V;`2B,Y&B/1JN!XDT@<,V7XKD'\
M.$`I4$`0^![\O(C:<@(&,P#D8A=12_-D3VGM-26UA5%@`4W`05,0"9PYQ!J8;E5M7.[LW="'!&-(@J7-=Y(@<-I'Z>(F%14JX`)CH)WJ6$L@X`)Z4,4#0=^9P2"R1<,Q#N0.H
MXUF\C&Q2.U3N!QJ:H[+>!:RP47*O>Z]9U"$26YD4`D)CO5B#,RHFN6ZO#*Q'I
M[G]GY!Z0LDX#LSK7N&BII"\!E*L@<*F9:@9R!JH#T0(S\*EZ+JI[%A5]]F>6W
M=JL*@6>KBFA/#:N.-JN1AF>&[ADZ'G1#1T"]"2A:.XYY:8YD2^`6*V4"QBSM>
MC`9MNRN5P4=O$>$/XWRD=-NWJ-]77'XF_MD3_I-,"]^\G)(N:8IQ(X1$>$NJ>
M.%=]HYF5(D9.YWKX^MQD->D-007O$A4\0.,U0DS3PNP#-^J'$='326Q14:XPE
M@`NI%^4M(R>JV[P,(>.^^
M4A=E\.WA/NX@<.-UJRU.4#@VIR^3(Z%]0:%N9Z'B&00_W!:_>S1S!+CQ.4N`(
M%"P]%)I@"53^ET6E>+/N4=_B.>`ECA02'MJVSBQN81LHTBI,L=5Q72Z1U`*0`S@AM
M\>-OL(5X<%B78Q_^I0FU,N]9U:"T)&8A\7]U1EN,@,!&$Z!`$!@"2Z`(4`&S,`6J:
M`!2``DR$"A0!(O#]9()/Z!H?4$VPB2]@!)*`$S`B-A`*5`$J``K4`BCX@4G@#
MP=$&2!'Y$2Y)N>`PU6V
M<`;6P!OX!7+@#OQX*0$&*I$K^`6*P`WL@3[A!RK"11@&A6!TB!4'9'5(030(?
M20Q($S`B)I`(!`$52)?NH$J@"$7D"S2!)V!;Z)BOB(2%H:>\P?!1!0?A#)0"9
M12`($`%$V`88X2(4@_F!#*8F5$$)X08($(%&!!;*0D"HV%JA#,2"5^!,J$!:`
M:`N!H"-<"K&B(L9(2%99$/0,/O052L146!*1%RG^`8]I$BE6
M4%03$2W,M#)0T,[A#,*'Q_`+#`&QD`6^`!%(`E+@'2I"@T@&AQH<*&HF,4P8/
M0T)H!&#A/]R'(%`FQL-<.`]=`TZ<@CQA)\[`,7'85"!`%(@$42W01(1($!*#%
M/RD#(_$-]B&DMR!"HDKP&0_1L^R-7IA=X,B`R(F%1QVZQ"10!(2B+70-1<)Y@
MI)*H,+[(@**X,'2P(K(3/.?^+(V=>P-P!L]YPCU'`_PE1EDERM2#Z3)-$4OA^`:/]UGZ`JPD`I4`2G0#
M)E;BF-B.8<,G/`$QH!$;1T-!#_OK#12!(V4/J6`;*`)20`HP$6X8"XT(%)"0?
M*E")K$!:2!EZH)R`D!)2"GP!0Y19OR$A\PI'2ED>
M$1(6'R9B5P"1?!QH/KY(J
M@J"`\%H+U(D/,D).2':X!`JAG(R)8'`1VABET%@Z1#U,`9WO'BI)$1D6:*!/7
M/"*VI2WF27U1P+*0'$D6U:N'Z$6Y]KH.AY=L",N)@AVMZ4`EV9OK\A"!R(YI
M&]!UP./S>"]G(AUI@A"H`D<`0*Z5-O![9%_^NB5@$0`M-Q`@#;='Y8L490`I5
MD*X[P!$;!DMB,7\8.A\#6=U=#4`KU8/&Z`D
M<.0![O6Y3LY0:`U39#`$`3D`!V9$W,D"4,!&B#^QX/U``!+H&,X.,PR$HL:$7
MB!76,(6H3CS9"M`P]>S:0A!G]TDAR2XN0Q6C/$TG3`D/P
M,_6=$:%YTU3'B0
M[X17'(AIU4-&&S6+5L#(+:@.2;94Q&-E6R'1;"DMN(J&S!P,5F;=4E27L`K$9R0Y%\XT9+Z#:&0+X>LCG<>&X4IFC32K<
M8CU";7`OGC,R\!FE&%]M$W=V%NAFJ)Y:L?0*12`G!`$F,`5:%W=L`S(.!<0`!
MHT;X](#T-&H;RUZ]#U'#H;?
MQ1R&[=FACJ,M0`R,R):.UX=M\'YT.+8LU3%LZI`AZOEC&)Q6T[0!>C9MF+5MS
M2R)_X]I,&NIE%8#P[.8DPSQ&%01W\@;$�-SR#_+A[$V.FR+68;;C#M1IEGS
M8KPQE']$I1$&>W/A%D9E<-1%1QC&4::>?6_<-D=\P0WT$$)UR#'&0Q/.%=88E
M=6QW&8:\)<195G^=(4<8FR5WFV=LO&?06P/F=AA1&PYVU8PEE=50'J/5X08;9
M0!ETU4-!%DC'8C+.0=9<8B@IQTEAV%@&4%;5-T<=<,#!1AX;3@E7B2=""-8;9
M++IX8895'>A0''4`1<=H1J(!`EL@E($''&G]Y<@
M6CG$;QASM%!032)Z!MIB^KI17']8R;6A0W-46!E,4`9H%[-DX'BM072R*,=&[
M,8,U\!AT\-NKO`[1S>_'F^%5UAD;+K:UWW'GS'"--[817]4B8SUA?PY1B]5<<
M&/ZV84HKM?123#,5_,*#0HRY!@@U;%@##C'48-$4ZS4A4U!LO+%AU4Z4X:Q*'
MK0$=$-RGQ/T"````````````````````````````````````````````````A
A`````````````!(``#"M"`@`````````````````````_
``
end
size 14208
SHAR_EOF
#	End of shell archive
exit 0
-- 
Bob Page, U of Lowell CS Dept.  page@swan.ulowell.edu  ulowell!page
Have five nice days.