Xref: utzoo comp.os.os9:284 comp.sys.m6809:968
Path: utzoo!utgpu!watmath!clyde!att!osu-cis!tut.cis.ohio-state.edu!mailrus!ames!claris!apple!voder!wlbr!pete
From: pete@wlbr.EATON.COM (Pete Lyall)
Newsgroups: comp.os.os9,comp.sys.m6809
Subject: New OS9/6809 Kreider C Library
Keywords: C OS9 LIBRARY KREIDER
Message-ID: <24728@wlbr.EATON.COM>
Date: 30 Nov 88 22:40:29 GMT
Organization: Eaton IMSD, Westlake Village, CA
Lines: 729


		Updated Kreider 6809 C Library

There was a nasty bug in the 'fopen' code in the Clib.l that was just
posted. It would manifest itself if a file was opened, partially read,
and then closed. Subsequent 'fopen()' calls would reuse the buffer,
and have their file position pointer set to the base of the buffer
(which contained stale data). This version of the library contains a
fixed version of fopen.

Pete



=========================== Cut Here ==========================
begin 640 clib.l
M8LTCAP```%@+"!8$``$!^`````0```#,`````'!R;V9?8P``!%]PRI```0HZD``B,@[*D``,/_^!\#[$(G"#"-
M`'P?$"`"[&;M0C!$%_^X("?LJ0``PP`([:D``(,`"!\#[&;M0NQD[<0P1#00
MC00````!-1`7_X\UP#1`%_^(,*D`#300%_]_,F(SJ0``("$P1.P"-`;LA#0&
M[$(T!C"-`"4T$#"I`!HT$!?_6C)J,T@1HZD``"78(`(T0#7`/S\_/S\_/S\`
M("4X%G971P=V5N=``$``!S971P=V5N=``$`($T1NRI```F&,P``30&,(T"
M$S00%__J,F3MJ0``$"\!_LP`A#0&,*D``#00[*D``#0&%__,,F;M?A`O`>(P
MJ0``K^0@#*[D,`&OY.8?YZD``N;TP0TG$.:I``+!+"<(YJD``L$Z)M[F],$-
M$".RI```T!A?_318!:C1`YJD``ATUP#1`3U^N
M9NT([&3M^`;FJ0`"'30&[&8T!A?_)C)D[60?`4]?YX3L9,,``>UDKF;M`N:I
M``(=-`;L9C0&%_\#,F3M9!\!3U_GA.QDPP`![62N9NT$YJD``ATT!NQF-`87
M_N`R9.UD'P%/7^>$[&3#``'M9*YF[0;FJ0`"'30&[&8T!A?^O3)D[60?`4]?
MYX3FJ0`"P3HF(^QDPP`![62N9NT(YJD``ATT!NQF-`87_I(R9.UD'P%/7^>$
M[&3#``'M9*YF[0KFJ0`"'30&[&8T!A?^;S)D[60?`4]?YX3L9,,``>UDKF;M
M#.:I``(=-`;L9C0&%_Y,,F3M9!\!3U_GA.QDPP`![62N9NT.S``--`;L9C0&
M%_XK,F0?`4]?YX3L9C7`-$8@$*[D[`0T!A?^$C)B$*-F)QX7_@CMY";I("`T
M1B`5[/0T!NQH-`87_?,R9.U^)@3LY"`)%_WF[>0FY$]?,F(UP"]D9"]S>7,O
M<&%SH`%!H`%LH`&/H`&RH`'3871O:0```:`!
M[&]P96X```&@`!1R96%D;&X```&@`#(`%R$!J"$!A2$!8B$!3R$!-R$!%"$`
M\2$`SB$`NB$`K"$`I"$`E2$`A2``=B``<"$`8"$`6"$`3B``/B$`+2``)R$`
M&B$`!```8LTCAP```%@+&!$=``$`!`````8```&0`````&=E=&]P=%]C```%
M;W!T87)G`````F]P=&EN9``!``)G971O<'0`!```;W!T97)R``$``&]P=&]P
M=``````T0.:Y``0F1^RI``(0HV0L.>RI``)82:YF,(OLA.VI``0?`>:$P2TF
M(:ZI``0P`:^I``3FA"<3YKD`!,$M)A#LJ0`"PP`![:D``LS__S7`KJD`!#`!
MKZD`!.8?'>VI```0@P`Z)Q7LJ0``-`;L:C0&%_^-,F0?`^]^)BWFN0`$)@OL
MJ0`"PP`![:D``C"I`!HT$.SX"#0&%_]F,F0PJ0`:-!`PC0"Q(%@S0>;$P3HG
M$4]?[:D``N:Y``00)@"2%@"$YKD`!"<'[*D`!!8`:^RI``+#``'MJ0`"$*-D
M+4\PC0"*KZD`!#"I`!HT$.SX"#0&%_\,,F0PJ0`:-!`PC0!M-!`7_OLR9#"I
M`!HT$.RI```T!A?^ZC)D,*D`&C00S``--`87_MHR9,P`/S7`[*D``EA)KF8P
MB^R$[:D``C"-`$ZOJ0`$[*D``L,``>VI``+LJ0``-<``.B!I;&QE9V%L(&]P
M=&EO;B`M+2```#H@;W!T:6]N(')E<75I(`#H(`#X(`$)(`$:
M9G!U=',```.@`)B@`/*@`0-P=71C```"H`$4H`$D`!\@`5(A`4XA`4^QI
M-`8PC0&&-!`PJ0`:-!`7_^DR9C"-`7HT$#"I`!HT$!?_V#)D3U_M8NYK("CO
MY!\P3\0/-`8PC0%?-!`PJ0`:-!`7_[8R9NQBPP`![6*#``$?,#-![&(0@P`0
M+=`PC0$^-!`PJ0`:-!`7_X\R9$]?[6+N:R`H[^0?,$_$#S0&,(T!'C00,*D`
M&C00%_]M,F;L8L,``>UB@P`!'S`S0>QB$(,`$"W0,*D`&C00S``--`87_T;`3\1_YV3!("T%YF0=(`/,`"XT!C"-
M`+\T$#"I`!HT$!?^LC)F[&+#``'M8NQB$(,`$"W+,*D`&C00S``--`87_I,R
M9.]K[&V#`!#M;>QM$"[_43"I`!HT$,P`#30&%_YT,F0R937`)7,-#0`@("`@
M("``("4Q>"``(``E,7@`("`@("`@+2T@+2T@+2T@+2T@+2T@+2T@+2T@+2T@
M+2T@+2T@+2T@+2T@+2T@+2T@+2T@+2T@("TM+2TM+2TM+2TM+2TM+2T-`"4P
M-'@Z(``E,#)X(``@`"5C```#7VEO8@``#2``$"``(2``0R``:B``C"``K2``
MPR``VR``^2`!&2`!1R`!82`!@&9P4]?-`;,``PT!C"-`%`T$!?_ZC)F[>00@___)SOLY*[DXX@0[64SJ0``(`3F
M9.?`KF4P`:]EYA_G9"[PYF1/Q'_GP$]?Y\3LY#0&%_^O,F(PJ0``'Q`@`D]?
M,F;$P2`G!.;$)O3FQ,$@)@(S031`%_]I,F+M:,,``C0&%_]=,F+M
M;#1`[&XT!A?_4#)D,(T!2S00[&XT!A?_03)D[&)823"I```PBS003U\T!LP`
M`30&S``!-`;LZ!0T!NSH$L,``30&[.@>-`87_Q`R;.WQ$(/__R8P[&PT!A?^
M_S)B[&8T!A?^]C)B[.0T!A?^[3)B[.0T!A?^Y#)B[&0T!A?^VS)B%@!E[&PT
M!A?^SS)B[&8T!A?^QC)B[.0T!A?^O3)B[.0T!A?^M#)B[.@4-`;L9C0&%_ZF
M,F3M:B9![&0T!A?^F3)B3U\T!A?^D#)B[6@T!NQD6$DPJ0``,(OLA!"CX2<(
M[&@0@___)MKL8EA),*D``#"+3U_MA$]?(`+L:C)N-<`T5JYH[`CM8NQH-`87
M_DHR8C#D-!`7_D$R8A\#-$#L9%A),*D``#"+[(00H^$G!A&#__\FW.QB6$DP
MJ0``,(M/7^V$$8/__R8%S/__(`+LY#)D-<`O<&EP90`-```,9'5P```%H``Z
MH`!4H`!CH`$1H`%!;W,Y9F]R:P```:``[G-T0```:``KF]P96X```&@`"-W86ET```"H`%NH`&];6%L
M;&]C```!H`"A9F-L;W-E```!H`&T9F1O<&5N```!H`%8``4@`>(@`7!?80```7!W8W)Y<``$```T0.YDS/__-`8T!##D-!`T0!?_[.WD-$`7
M_^4R9J;@C0ZFX(T*IN"-!F_$[&0UP#0"1$1$1(T$-0*$#XLP@3DC`HL'I\`Y
M``)S=')L96X```&@`!)CUB[&ZC
M8BLL[&[C8D16[63#__\T!NSH$A?_W.-L[>0T0*WX%.WA)Q!([&0DT,/__^UN
M(-!/7R`"[.0R9C7```%C8VUU;'0```&@`"(``&+-(X<```!8"`@0"0$``"(`
M````````F`````!D:7)?80``!6-L;W-E9&ER``0``')E861D:7(`!``YSD%__-3U_MY#7&-$#N
M9#-"S``@-`;L7C1&%_^U,F;M?BX$3U\UP.;$)^8PJ0`$-%`7_YXR9#"I``!/
MYL@=[83LR![M`A\0-VA$*_X"N-"
M@P`%[?@,[.0G"C0@C9_MX2<";V$UYC1`[F3LPS/+$#\"-4`6_X<``E]O;`3\0#)P7,`!P@`\P`'>VI``+FP!W#
M___M9$]?("8PY#00[`(T!NR$-`;L;%A),*D``#"+[(07_S47_S(7_R_L9L,`
M`>UF[&80HV0MT3#D-!#L`C0&[(0T!N;`'%_W;,&3L`C0&[(0T!HT$````/#40%_W&[*D`
M`NU",&0T$.P"-`;LA#0&C00````\-1`7_:D7_:8P9.P"-`;LA#0&C00````8
M-1`7_9'LJ0`"[40P9.P"-`;LA#0&C00````8-1`7_7;LJ0`"[6+#``0T!LP`
M!Q?]9>U,S`!&("+L8C0&[$I/Q`,G!U([$A823"I```PB^R$$*-B
M+]#L8L,``>U&3U_MR!`?,#)H-<`T0,S_JA?\QJYD[`HT!NSX!C0&KFCL`C0&
MKFKL!#0&KFSL!C0&KF[L"%A),*D`+#"+[(0T!J[H$.P,6$DPJ0`>,(OLA#0&
M,(T`?C00,*D`$C00%_QY,N@2,*D`$A\0-<`T0,S_N!?\9C)^[&8T!A?^-NWD
M%_^*,F(R8C7`4W5N`$UO;@!4=64`5V5D`%1H=0!&`!\`'@`?`!\`
M'@`?`!X`'P````````.N`[(#M@.Z`[X#P@/&`\H#S@/2`]8#V@/>`^(#Y@/J
M`^X#\@/V``M?;&UO=F4``!&@`""@`"V@`#B@`%>@`("@`,^@`/B@`1*@`2J@
M`42@`5R@`7:@`8Z@`9F@`>Z@`B.@`EA?;&ET;VP```:@`'J@`,F@`/*@`22@
M`5:@`8AC8VUO9````:`"F7-P8LTCAP``
M`%8,'A(Z```````````````F`````&1E=G1Y<%]A```"9&5V='EP``0`#FES
M871T>0`$``#L8C0&C0CMX2<"7SE<.:9C7S+HX##D$#^-IN0RZ"`0)?_>'XE/
M.0`!7V]S.65R<@```:``(```8LTCAP```%4("A,2```````````````A````
M`'-K:7!?80```G-K:7!B;``$``!S:VEP=V0`!``.KF+F@,$@)_K!"2?V(`ZN
M8N:`)PC!("<$P0DF]#`?'Q`Y`````&+-(X<```!6`PD-(@``````````````
MK`````!S971S7V$```IC;W!YQD-<`T0.YDKF;&(*:`JL2GP%HF]^QD-<`T0.YDKF;&(*:`I,2G
MP%HF]^QD-<`T0.YDKF;&(*:`J,2GP%HF]^QD-<```6UA;&QO8P```:``!@``
M8LTCAP```%4!`141`0``%````"0```#]`````'!F;&EN:71?80```G!F;&]N
M9P`$``%P9FQI;FET``0``#DT0#.I```T0.9GP60G9<%O)Q#!>"QF,*D`
M`#"+YH1/Q`(T!NQB-`;L;#0&[/@0PP`([?@0@P`(-`:-!C)H,F(UP#1`,NC@
MS``![6@PY#00KN@F%_^(,^3F1R813U_MZ!CMZ!KMZ!(PZ"`6`/+F1T_#_X#M
MZ!8L#^SH%D!0@@#MZ!;,``$@`D]?[>@8[.@6-`;,`$X7_T@2YL0L#.;$3\1_Y\3,``$@`D]?[>@:
M,.0T$.SH&C0&[.@8-`8P9A?^_1?^^C)L%_[U("(PY#00%_[LC0@@````````
MA#40%_[=%_[:[.@2P___[>@2,.07_LR-"`````````"!-1`7_KTMR"`B,.0T
M$!?^LHT((````````(0U$!?^HQ?^H.SH$L,``>WH$C#D%_Z2C0@@````````
MA#40%_Z#+,@@`S*(X#"I``"OZ![,`#"NZ!XP`:_H'N@F3U_M:NSH*"85S``![6KL
MZ!(0@P`%$"X`=S#H("`S[.@H+#$@`S*(X,P``>WH$,P``>UL,.07_@:-"```
M````````-1`7_?WH$B!%,HC@3U_MZ!#LZ!+M;"PE[&SCZ"8M"NSH
M)N-L[>@F("7LZ"9`4((`[6Q/7^WH)D]?[6@@$>QLX^@F$(,`&2\&,.@@%O^/
M,*D``*]N,.0T$!YQ_LZ![MZ!S,`"X@`\P`
M,*[H'C`!K^@>YQ_L;,,``>UL@P`!)N<@4^QL)AS,`#`@#3!N-!`P8C00%P'J
M,F2NZ!XP`:_H'N[>@<[.@F)QS,`"X@#3!N-!`P
M8C00%P&W,F2NZ!XP`:_H'N@F@___+MOL:!`G`'8R?.SH(NWD
M'P$T$##H%#00,&@T$!@2+`_LZ!)`4((`[>@2S``M(`/,`"NNZ!XP`:_H'N$*/H'"PP`![>@>(`_LZ![#___M
MZ!X0H^@<)M]/7^?X'C"I`!ZLZ!XB&S"-`+`@"4HYH3*@.>$
M;P>`!"<39(1F`68"9@-F!&8%9@9F!TPF[88(2BL$YH8G^9<`3U\UP*YB3^:$
M5%145,LP-$;FA,0/YX2-+)8`*R;FAB8#2BKYEP`K&S)XYH;GYDHJ^8T2C1"6
M`%_FANGFYX9**O]!:]L:FU6OY35Y7I#:2O,=Q&$8<]F"7!?03:TIF-;
MYO[.O>W67R_K_PO+)*M<#+S,"6]0B5EA+A-"2[0.530DW#4)7-A2$!U\]SJP
MK4]FE92^Q$WA2SAWJC(VI+1(`)``#E]D9&EV```!H`%;8V-M;V0```&@`^%C
M8VUU;'0```&@`+=S8V%L90```:`!!&-C9&EV```!H`/)8V-A97AI=````:`$1P`,*@3>*@3.*@2]
M*@2R*@27(`1;(`15(`1-(`0I(0):(`&&`0"08LTCAP```%@+&!$[`@$`````
M``````$A`````&9O<&5N7V$```-F;W!E;@`$`.YFSDR@(T!C1`%_\_(!O!9"<,S`#+[:D``,S__R`-[.3*@30&-$`7
M_R(R9#)D.31`S@``KF;L9"`N-$"N9NYD%_]?S@``[7XJ'$]?-<`T0.QH-`87
M_O4R8JYF[F07_T+M?BOF[FBN9A?^X37```9C=A%__M,F0UP#1`
M[F2N9C06(`7G81?_VN;`)O`K^3!#2<5,U_O?BWD)N;L8L,``>UB$*-L+=8R8C7&``%G
M971C```!H``1``!BS2.'````6`@($`H"`````````````#8`````9G=R:71E
M7V$```%F=W)I=&4`!```-%;N:$]?("/L:B`6KF[FP#06%__K,F00@___)Q7L
MY(,``>WD)N;L8L,``>UB$*-L+=8R8C7&``%P=71C```!H``3``!BS2.'````
M6`@($`H#```,````"````F,`````<')I;G1F7V$```1S<')I;G1F``0`'G!R
M:6YT9@`$``!F<')I;G1F``0`#&9R979EWDYV?G8N;`P2TF!.=GYL#!,"<"
MQB#G9N9?%P&M[6/FP,$N)@OG8N;`%P&>[>3FP,%C)[@T0,%F)S;!923&+>?`(`2-/#1VS``%[6*G9#"I```U!B`=
M;.2CA"3ZXX$T!.9A;6,F!5TG!FQCRS#GP&]A-01J82;ARS#GP&_$,F0@/3.I
M``*NZ!+L@:_H$CG$(.=GC>TT1L0/-`2&,,$)+P2&-ZMLJ^"GP.SD1%9$5D16
M1%;MY";@;\2N8HT3,F(U0(TL-4`6_H_FA*;"IX#GQ#1`K.$E\CF-J31&Q`?+
M,.?`[.1$5D161%;MY";N(,@T0!?^&3)B0%""`.-G[6=M:R8+C1X@!^;`)PRM
M^`[L9(,``>UD*O!M:R<"C08YYFRM^!#L:8,``>UI*O(Y;^)OXC-?,*D``"`7
M[.182>WD6$E82>/DZ\")`(,`,.WDYL2FA80()N,UAJZI```T%A?]K3)D.:ZI
M``#G@*^I``!OA#DG$`/H`&0`"@`&<&9L;VYG```!H`#_>I`"#GJ0`-YZD`"4]?[6I/
M7^UBYL`=[6P?`18"%>;`'>UL$(,`)28%,&X6`=SL;!"#`"HF"T]?[63FP!WM
M;"`.[.@8PP`"[>@8@P`"[61/7^UHS``![>0@%NQH-`;,``H7_ROC;,/_T.UH
MYL`=[6SL;#"I```PB^:$3\0()MOL:"8%S'__[6BN;!8`W^;`'>UL'P$@!0@`C(2,&(T$.QB-`;L;#0&[.@2-`;L;#0&[.@>-`;LZ!XT
M!ASX"B`"3U\T!NSH
M'#0&[.@<-`87!"XR;.U^$"<`>.QD)W3L:L,``>UJ(&N,`&P0)_\:C`!H$"?_
M18P`1!`G_V.,`$\0)_]QF
M-`:M^!8R8A;^"C(2K?@2[680HVPG&NQF$(/__R8%S/__(#+L9C0&K?@6,F+L
M:B`E%OWAKWXG]8P`)1`G_>",`"`0)_^?C``-$"?_F(P`"1`G_Y$@MS)N-<`T
M0,S_9!?]+C+HL$]?[6I/7^UH3U_M9C#D-!"-!``````U$!?]$*[H6B`5S``(
M(`S,`!`@!T]?(`/,``KM;"`8C`!O)^:,`'@GYHP`92?FC`!F$"?_WR#AK?A4
M[6XPJ0``,(OFA$_$$";N[&P0)@#+,^@03U_M9.SH7!"#`#\O!LP`/^WH7.QN
M$(,`+28&[&[GP"`*[&X0@P`K$"8`C>SH7,/__^WH7!8`?.QN,*D``#"+YH1/
MQ`@G"NQDPP`![606`%_L;A"#`"XF"^QF)@?,``'M9B!,[&X0@P!E)PKL;A"#
M`$40)@&.[&H0)@&([&00)P&"S``![6KL;N?`K?A4[6X0@P`M)QKL;A"#`"TG
M$NQN,*D``#"+YH1/Q`@F`Q8!5.QNY\"M^%3M;NSH7,/__^WH7!`L_W(6`3OL
M;A"#`"TF!\P``>UH(`CL;A"#`"LF!:WX5.UN,^@0%@#\KFP6`-OL;C"I```P
MB^:$3\0($"<`\^QN$(,`.!`L`.DPY#00,&(T$,P``Q?[JQ8`@^QN,*D``#"+
MYH1/Q$`0)P#',.0T$#00S``$%_N+%_N(,.0T$.P"-`;LA#0&[.@4,*D``#"+
MYH1/Q`@G".SH%,/_T"`-[.@4-`87^UPR8L/_R1?[5!?[42!.[&XPJ0``,(OF
MA$_$"!`G`&XPY#00,&+L`C0&[(0T!HT$````"C40%_LE[`(T!NR$-`;LZ!07
M^Q<7^Q3L`C0&[(0T!HT$````,#40%_L!%_K^S@``(!>,``@0)_\>C``0$"?_
M0XP`"A`G_Y4@$JWX5.UN[.AA<$"S^]^QH)PPPY#00,&(7^L,7^L#L
M;A"#__\G#>QN-`:M^%@R8D]?(`/,``'M^&#LZ%@G"C#H$#00$:/A)@5/7Q8`
M@NQL)DM/7^?$KNA>(#"NZ%BNA#00,.@2-!`7^G4R8A?ZD]?[?@4[V+LZ!`0@P!C)@_LZ!(0@W__)@;,``'MZ!)/
M7^WD[.@0$(,`0@".QD$(/__R<6K?@*[60PJ0``,(OFA!VDY.1A
M[7XFXJ[H$"`03U\@",P``B`#S``![>0@)(P`8R?KC`!;)^H@[>]^)P3L9.?`
M[.@2P___[>@2+R"M^`KM9.QD$(/__R<3[&0PJ0``,(OFA!VDY.1A[7XGS>QD
M$(/__R<2[.@2+PGL9#0&K?@.,F)/7R`#S``![?@4[WXG%Q&C8B<2[.@0$(,`
M8R<$3U_GP,P``2`"3U\R9C7`-$#,_[P7^1#N9#)\3U_MY.;$P5XF!\P``>WD
M,T%/7R`G[.0G#^QB,*D``#"+YH0=Q/T@#>QB,*D``#"+YH0=R@+GA.QBPP`!
M[6+L8A"#`(`MSR`Z[.0G%^QBPP`![6*#``$PJ0``,(OFA!W*`B`5[&+#``'M
M8H,``3"I```PB^:$'<3]YX3L8B8$,U\@#N;`'>UB3\1_$(,`72:X'S`@*C1`
MS/^Z%_AP[*D`@C0&%_AG,F(UP#1`S/^X%_A;[*D`@C0&[&8T!A?X3C)D-<`T
M0,S_P!?X0N:Y`(`G#ZZI`(`P`:^I`(#F'QT@`\S__S7`-$#,_\`7^"#L9*ZI
M`(`P'Z^I`(#GA#7``!-?;&UO=F4```6@`NZ@!':@!0"@!3Z@!=I?;&ET;VP`
M``*@!*J@!.=?;&YE9P```:`%.W5N9V5T8P```:`'L&-C;75L=````:``TU]D
M=&]F```!H`6.=&]L;W=E<@```:`!7W1O=7!P97(```&@!*)?;'-H;````J`$
M4Z`$(`0P(`1<(`2)(`2U7V1M;W9E```!H`6H7V9M;W9E```!H`61
M`!,@!^H@!^0@!\P@!\8@!\`@!Z<@!Y(@!V,@!TP@!R`@!Q$@!I@@!D0@`'L@
M`'<@`',@`$8@`"0@``YBS2.'````6`@($!4"`````````````#P`````00HT(E%.SD$*-$)`WLY.W$YD?$[^='%@!:[.@0$(,``289
M,&PT$.P"-`;LA#0&[$2CQ!?_)1?_(A?_'^Q$[<3F1\3OYT?LZ!`T!C!N[`(T
M!NR$-`;L2#0&%_[_,FCL`C0&[(0T!C"-`!07_NXF!75P``0`DS1`[F;L1H2`Q"+!`B8X@8`G
M!S1`%__I,F+L1L0$)RS,``$T!C!G[$@T%N9'Q$`G!1?_S2`#%__(,F80@___
M)CGF1\H@YT?,__\UP(0!)@DT0!<`J>WA)NZNQ.9EYX"OQ*Q$)`SF1\1`)P_F
M9<$-)@DT0!<`B.WA)LWL9#7`-$#N9N9D-$87_WCF:>=A%_]Q,F0UP#1`,*D`
M`,80-`0T$(T*-1`P#6KD)O0UQ#1`[F00)_^3[$80)_^-Q`(G"#1`C100@___)RCL8J/D[6+LQ./D[<3L8B;9("7L8C0&[$(T!NQ(
M-`87_H(R9A"C8B"(-TT0.YD-,"-P>UB$(/__R<*C;<0@___
M)P*F8S)D-<#&$"`"QB#J1^='S/__-<#L1H2`Q#'!`2;Q@8`G!S1`%_^),F(P
MJ0``-!`1H^$F$>9'Q$`G"S"I``TT$!?_;3)BYD?$""<5[$LT!JY"[$@T%N9'
MQ$`G$A?_4B`0S``!-`8P2J]"[$@T%A?_0#)F[7XGCRN1KD(PBZ]$KD(6_S\`
M!5]S971B87-E```!H`!U9F9L=7-H```!H`"17VEO8@```B``>R``C')E860`
M``&@`+YR96%D;&X```&@`*P``&+-(X<```!5"0,($0$``````````````0``
M``!F9FQUU+Q@3J1^='
M[$+C2^U$[<0UP``":6)R:P```:``16=E='-T870```&@`!@``&+-(X<```!4
M"`L3#0$`````````````4P````!F:6YDD1HVPO^2`:[F@?,*YJ,(LP'Q"N;#DT8.YFKF@@".'`
M)P1/7S7@YH`F],P``37@`````&+-(X<```!5`0$2*@$````````#````'0``
M``!P9FQD=6UM>5]A```!<&9L;VYG``0``.9C,*D``L%D)Q#!;R<,P7@G",%8
M)P0P'N5]A```!<&9F;&]A=``$```PC0`#'Q`Y``````!BS2.'````
M5PL3#!$``````````````$,`````:'1O:5]A```!:'1O:0`$``!/7S1&[F8P
MJ0``YL3!("<$P0DF)S-!(/+LY%A)6$E825A)[>3FP,`PP0DO",`'P0\O`L`@
M3^/D[>3FQ.:%Q$`FUS7&``%?8VAC;V1E```E]F;&%C8P```2``!%]C
M:&-O9&5S```!(``(``!BS2.'````50<>%`8``````````````&(`````;'1O
M85]A```!;'1O80`$``!/7S1&[FIM9BH.;.0P9C00,&@7_^L7_^CL:#0&[&@T
M!C"-`#H7_]GF`\LPY\`P9C00[`(T!NR$-`8PC0`A%__`%_^][&CC9B;/;>0G
M!,8MY\!OQ.QJ-`87_Z8R9#7`````"@`%7VQM;W9E```"H``6H`!!7VQN96<`
M``&@`!-?;&UO9````:``)5]L9&EV```!H``^RS#GP.QF
M-`;,``H7_]#M9B[D;>0G!,8MY\!OQ.QH-`87_[LR9#7```-C8W5M;V0```&@
M`"!R979E7-T96T`!```-$#,_UH7__@RZ*K,
M`%'NZ%HPY#0&-%`7_^8R9F_H4#"-`$,T%A?_V#)D3U\T!EPT!C0&,&8T$#00
M%__$[>0PC0`?-!`7_[DR;.WH4C#H5#00%_^L,F(0H^A2)O`RZ%0UQG-H96QL
M#0``!F]S.69O$-!`1H^$E\>QD-<```7-T5]A```!0`$```T
M8.YHKF80KFHG$>;`YX`Q/R<)72;U;X`Q/R;Z[&8UX`````!BS2.'````6`@(
M$`P"`````````````"(``````,3\G`UTF]6^$[&0UX`````!BS2.'````6`@($`P"
M`````````````",`````5]A```!0`$```T0.YDKF;F
M@.?`*OK$?^=?;\3L9#7``````&+-(X<```!7!1D,(P$````````"````/```
M``!S=')T;VM?80```7-T%]A```$0`$``XT0.YFKF3F@";\,!\@
M!C1`[F:N9.;`3S06%__D,F(U$.>`)O#L9#7```%T;W5P<&5R```!H``:``!B
MS2.'````6`@($`P``````````````"P`````,F(U$*/A
M)]XUP``!=&]U<'!E<@```J``$J``(```8LTCAP```%4,"0XX`@``````````
M```Y`````'-T2N:.:`KVA/-`87_],R8J/A)]<@`D]?->``
M`71O=7!P97(```*@`!V@`"L``&+-(X<```!4"`L2,P``````````````)0``
M``!C87-E7V$```)T;VQO=V5R``0`$71O=7!P97(`!```3^9C,*D``*:+A`0G
M%<3?3SE/YF,PJ0``IHN$`B<$RB!/.>QB.0`!7V-H8V]D97,```(@``4@`!8`
M`&+-(X<```!8"`@0#```````````````$P````!S=')C;')?80```7-T``````8LTCAP```%@("!`,````````````
M```<`````&UE;6-HW!,!\F
M^.QF->``````8LTCAP```%@("!`-```````````````4`````&UE;7-E=%]A
M```!;65MQB-`;L8C0&,(T`/!?_S>9?
M3\`PXP+M8LP``.D!J83MY.;`3S"I``#FB\0()M)M9"<',.07_Z4@`C#D,ZD`
M`#1`%_^8,F4UP`````H`!5]L;6]V90```:``9E]L;F5G```!H`!97V9L86-C
M```!(`!A7VQM=6P```&@`#%?8VAC;V1EQA6$E82>-A6$DT!N9?3\`PX^'M8>;`
MP3`E!,$Y(^%MX#4&)P1`4((`-<``````8LTCAP```%@+&!$R`0$``````-``
M`````````&EO8E]D871A7V$```%?:6]B``$````````````!````````````
M`````@`!`````````````$<``@``````````````````````````````````
M````````````````````````````````````````````````````````````
M````````````````````````````````````````````````````````````
M````````````````````````````````````````````````````````````
M``````````````````````!BS2.'````5@85%",`````````@```````````
M8VAC;V1EYH[&KM8NQJHV@T!NRI``!821?_KS0&[*D``!?_IN-H[>0@!NRI
M```SR^SD-`8T0*VY``(R9.U^+>H@".QBHZD``.UB[&(T!NQB-`:MN0`",F3M
M?BWF$:-B(C(1HV(D'^QB-`8T0!<`:3)D$:/D)@;L8NWD(`GLY!"C8B8"[^3L
MJ0``,\OL8J.I``#M8A&C8A`C_Y;L8J-H-`8T0.QNH^$0H^$L$>QJ-`8T0!?_
M13)D[&+M:B`/[&(T!NQJ-`87_S(R9.]H[&@0HVH0)?\R,F0UP#1`S/^]%_[J
M[F0R?>RI``#M82`3YL3GY.;X">?`YN2N:3`!KVGG'^QAP___[6&#__\FX3)C
M-<```V-C;75L=````J``(*``6&-C9&EV```!H`!/7W-T:V-H96-K```#H``&
MH``UH`$4``P@`1P@`,4@`+T@`(H@`'P@`&X@`&(@`%4@`$H@`!T@`!(@``QB
MS2.'````6`@1"S4"`````````````$$`````W!,!\F^#7@`````&+-(X<```!7"AD4+P$`````````````/P````!R96%L
M;&]C7V$```%R96%L;&]C``0``#1F[&KMY!?_]^WD)S`0HV@G*^YH)RYH
M[%Z#``%825A)$*-J(P+L:A\"[,'M@3$^)OCL:#0&%__%-08UY@`"9G)E90``
M`:``.6UA;&QO8P```:``!P``8LTCAP```%@("!`5```````````````B````
M`&-A;&QO8U]A```!8V%L;&]C``0``#1`[&2N9C00%__U-`87__#M?B<*KN0?
M`V_`,!\F^C)B-<```F-C;75L=````:``"6UA;&QO8P```:``#@``8LTCAP``
M`%8*`A$=````!`````(```$%`````&UE;6]R>5]A```"9G)E90`$`)=M86QL
M;V,`!``L[&+#`/]?-`9825A)-`87_^\R8C5`$(/__R<0'@/M0C-$-$"-WDKJD``"82,*D``*^I``"OJ0``3U_MJ0`"
M[H0@!!\Q[L3L0A"CY"4B)@;LQ.V$(!#L0J/D[4)825A),\OLY.U"KZD``#-$
M'S`@#A&CJ0``)LP7_W$FQT]?,F(UP#1&[F8S7*ZI```@$*R$)0H1H^0B$Q&C
MA"4.KH2OY!&CY"/I$:.$).0T0.Q"6$E82>/A$*.$)A`T$*Z$[`(U$.-"[4+L
ME"`"[(3MQ.P"6$E82>/D-`81H^$F#.P"XT+M`NS$[80@`N^$KZD``"".````
M`7-B;`P3`M!,$Y+^@P:,:XYPUFYL#`,"4$
MP0DOY>QF;6(G!$!0@@#CY.WD;V+LY"P+0%""`.WDS``![6(P:.QB-!;L9#0&
M,&X7_S,7_S`R;!?_*^QD)PP#64GM`^UC[`%92>T![6&FA$FGA*?D:`9I!6D$:0-I`FD!:80E
M5F@&:05I!&D#:0)I`6F$)4;L!>-E[07L`^EDJ6/M`^P!Z6*I8>T!YH3IY.>$
M)2CF;<0/3^,%[07,``#I!*D#[0/,``#I`JD![0&&`*F$IX0E!3)H3U\YS``!
M,F@Y``=C8VUU;'0```&@`(]S8V%L90```:``SE]F;&%C8P```2``Y%]DSH%%A)6$E823"I
M```PBQ?_WR`;,&07_]CLZ!1825A)6$DPJ0``,(L7_\8@`C!D,ZD``#1`%_^Y
M-<`T0.QL$(,`"2\F,&0T$.SH$#0&[.@0-`;,``H7_YG#``DT!C!J%_^/%_^,
M,FP7_X?L;C0&[&XT!LP`"A?_>30&,&@7_W(7_V\R;#7``````````(`@````
M````A$@```````"'>@```````(H<0```````CD-0``````"1="0``````)08
MEH``````F#Z\(`````";;FLH`````)X5`OD`````HBUXZ\6L8@##2?+)S01G
M3^0`!U]D9&EV```!H``X8V-M;V0```&@`(5C8V1I=@```:``95]D;75L```!
MH``?7V9L86-C```!(`!`7V1S=&%C:P``!*``#:``)J``;Z``C%]D;6]V90``
M`J``1:``=P`"(0`S(0`:8LTCAP```%<*&0HX`0`````````````E`````&=S
M,0```E]G0`$``!?9W-?;W!T
M``0`$<8!IF,0/XT0)?_U3SG&!B`$Q@"N9*9C$#^-(";&#JYDIF,0/XTE&Z:`
M*OR$?Z7-R970```&@`$,``&+-(X<```!7"AD*.@$`````````````(`````!S`````'-S,@```U]S'1O9FQA``0&2U]D
M9&5C``0&A%]F9&5C``0&P%]D8VUP<@`$`-A?9&UO=F4`!`<07V9M;W9E``0'
M`%]D:6YC``0&9E]D;F5G``0`&U]D;F]R;0`$``!?9FEN8P`$!I:N8A<&Y(T!
M.31`,NCB'T-OR!UOR!D7`G<6`)G&!T^JA5HJ^TT0)P8C[(2(@!8&'A<$=1R$[:D`
M`.P",*D``.T"%@1^,*D``.T"'XD='XGMA!8$;C"I``#M`F^$;P$6!&'LA.VI
M``"F`N8',*D``.T".>R$[:D``.P",*D``*<"YP=O`V\$;P5O!CDPJ0``[,@B
M[83LR"3M`NS()NT$[,@H[08RR!XU0#4&[68R9CFF8JB$*VFF8BLXIFDG+>8'
M)V&A!R8P[&(0HX0F*>QD$*,")B+L9A"C!"8;IFB$_C0"Y@;$_J'@)@T@/*8'
M)D-/(#6F!Z%I(BLE..R$$*-B)O7L`A"C9";N[`00HV8FYZ8&A/XT`J9HA/ZA
MX";9(`BFA"H/A@$<_C0![&'M:34!,F@Y3X$!(/"FR!;(*8,``"<(*P;,`"@6_0,7`"@@]2W(
M)^S()>G(%*G($^W()>S((^G($JG($>W((Z;((JG($*?((F;((F;((V;()&;(
M)6;()F;()V;(*&;$9D%F0F9#9D1F169&:D@FJCE/%_]PQCGG2.;$X<@0)3#L
M1:/(%>U-[$/BR!2BR!/M2^9"XL@2YTKLQ.+($:+($"4.[<2F2J="[$OM0^Q-
M[45IR"AIR"=IR"9IR"5IR"1IR"-IR")I1FE%:41I0VE":4%IQ&I((J(G)>Q%
MH\@5[47L0^+(%*+($^U#[$'BR!*BR!'M0:;$HL@0I\1/(+)FQ&/((F/((V/(
M)&/()6/()F/()V/(*#DU!C1`,NCB'T,T!F_('>P&[<@6[`3MR!3L`NW($NR$
MY\@1'XFGR!R*@*?($.C((N?(&:;((J?(&(J`I\@BIL@I.3#((H:@IP=O!&\%
M;P:FA!^)Z@'J`NH#)S;F`4TJ$S0&3U^C`NT"S```XF&BY#)B*0IJ!V@#:0)9
M22KVA']MA"H"BH#MA#DPR")O!&\%;P9O!V^$;P%O`F\#.R$$(.``";@I@*J`ZH$J@6J!B;4.30$[(0K$(J`1%9F
M`F8#:N0F]NV$-81OXD169@)F`V8$9@5F!B0";.1J82;L[83LX28(I@2J!:H&
M)Q'L`L,``>T"[(3)`(D`)8KMA$]?HP+M`LP``.(!HH3MA#FFA!`J_VG,___M
M`NV$.6S(*"8Q;,@G)BQLR"8F)VS()28B;,@D)AULR",F&.;((A^8A'],*@5L
MR"F$?\2`-`2KX*?((CD`````````@3"-__0T`NR$[<@B[`+MR"3L!.W()NP&
M[<@H-8(T`NS((NV$[,@D[0+LR";M!.S(*.T&-8+LA.VI``#L`NVI``+L!.VI
M``3L!C"I``#M!CDT$(U_,(RB-!`7_C47^Q2NR"J-N:[('C+(*A\3-9`T$(UA
M,(W_@S00%_X6%_K+(-\T$(TX,(W_<300%_X$%_KCKL@J[,@B[82FR"3FR"GM
M`J[('C+(*A\3-9`T$(T.,(W_1S00%_W:%_J/(-0R>.QH[>1/7^UE[6?LA.UB
M[`*G9.=I.3)X[&CMY.R$[6+L`NUD[`3M9NP&[6@Y-$#N9!X3[,3MA.Q"[0(@
M%C1`[F0>$^S$[83L0NT"[$3M!.Q&[08U0#4&[>0Y``)?9FQA8V,```T@`&`@
M`&8@`&\@`'\@`(X@`)8@`)\@`*4@`+8@!D\@!E4@!EL@!F%?QB$*-D
M+`+L9#D`````8LTCAP```%@(!Q`N```````````````4`````'5M:6YM87A?
M80```G5M:6X`!```=6UA>``$``KL8A"C9","[&0Y[&(0HV0D`NQD.0````!B
MS2.'````6`@)%!,!`````````````'4`````8VQM=6Q?80```5]L;75L``0`
M`.P"-`;LA#0&,*D``&^$;P&F:>9C/>T"IFGF8CWC`>T!)`)LA*9HYF,]XP'M
M`20";(2F:>9A/>.$[82F:.9B/>.$[82F9^9C/>.$[82F:>;D/>N$YX2F:.9A
M/>N$YX2F9^9B/>N$YX2F9N9C/>N$YX0R9!;_BP`"7V9L86-C```!(``*7VQB
M97AI=````:``@`$9?;&YE9W@```.@``>@`'B@`(-?QA[64U`3)D.0````!BS2.'````6`@)%!4!`````````````%8`````
M8VQB:71S7V$```1?;&YO=``$`$5?;'AO<@`$`"Y?;&]R``0`%U]L86YD``0`
M`.QBI(3D`>VI``#L9*0"Y`/MJ0`"%O_I[&*JA.H![:D``.QDJ@+J`^VI``(6
M_]+L8JB$Z`'MJ0``[&2H`N@#[:D``A;_NZ:$J@&J`JH#)P-?3SG,``$Y``)?
M9FQA8V,```8@``@@`!(@`!\@`"D@`#8@`$!?;&)E>&ET```#H``5H``LH`!#
M``!BS2.'````6`@'$"X!`````````````"<`````8VQN96=C;VUP;%]A```#
M7VQN96<`!```7VQC;VUP;``$`!1?;&YE9W@`!``#%__]S```HP+M`LP``.(!
MHH3MA#GLA$-3[:D``.P"0U,PJ0``[0(Y``)?;'1O86-C```!H``!7V9L86-C
M```"(``:(``B``!BS2.'````6`@'$"X!`````````````!D`````8VQC;VYV
M97)T7V$```)?;&ET;VP`!```7VQU=&]L``0`#C"I``#M`A^)'1^)[80Y,*D`
M`.T";X1O`3D``5]F;&%C8P```B```B``$```8LTCAP```%@(!Q`N`0``````
M```````6`````&-L;6]V95]A```!7VQM;W9E``0``#0@$*YD[(3MI.P"[2(U
M$!XA-0;MY#D`````8LTCAP```%@(!Q`N`0`````````````@`````&-L:6YC
M9&5C7V$```)?;&EN8P`$``!?;&1E8P`$`!#,``'C`NT"[(3)`(D`[80Y[`*#
M``'M`NR$P@""`.V$.0````!BS2.'````6`@)%!4!`````````````#@`````
M8VQS:&EF='-?80```E]L0Y``%?
M;'1O86-C```"H``%H``A``!BS2.'````6`@'$"\!`````````````!X`````
M8VQC;VUM;VY?80```E]L=&]A8V,`!``/7VQB97AI=``$```?J#40KV(R8C"I
M```?BCGLA.VI``#L`C"I``#M`CD``5]F;&%C8P```R``"B``$R``&0``8LTC
MAP```%@("18-`0````````````!3`````&-C;75L=%]A```!8V-M=6QT``0`
M`$TF$FUB)@ZF8SVNY*]BC@``[>0UAC0&S```-`8T!J9EYFD][6*F9>9H/>-A
M[6$D`FSDIF3F:3WC8>UA)`)LY*9DYF@]X^3MY*YFKVBNY.QB,F@Y`````&+-
M(X<```!8"`<0+P````,`````````2`````!C8VUO9%]A```"8V-M;V0`!``.
M8V-U;6]D``0``&^I```PC?_XKZD``2`4,(W_[J^I``%OJ0``;6(J!&RI``"#
M```F!C40[.%NA*YB-!"MN0`![.3M8A\0;:D``"<$0%""`.WA.0`"8V-D:78`
M``&@`!!C8W5D:78```&@``8`!R``/2``,R``("``&"``%"``"B```F+-(X<`
M``!8"`<0+P``````````````@P````!C8V1I=E]A```"8V-D:78`!``98V-U
M9&EV``0``(,``"<*-`8R?F_D;V$@+C4&[>3,`"T6_^>#```G\30&,GYOY&]A
M32H(0%""`&-A[6+L9BH(0%""`&-A[6:&`4QH8VEB*OFGY.QF;V9O9Z-B)`;C
M8AS^(`(:`6EG:69D8F9C:N0FZ.UB;6$G".QF0%""`.UFKF3L9NUDKV:N8NQD
M,F8Y``%?QB-`;L8NUD[.0R9#D`
M````8LTCAP```%@("104```````````````/`````')P=&5R'0```$@`"U?8W-T87)T```"H``J(``P;65M96YD```!(``[``!BS2.'
M````6`@)#2D"```]`````````(\`````P!-`;L9NT!)@1OA#6&YF7GA&VI
M`#PF]!XC,(T`/!`_"1XC-08EU6RI`#PY;^)OXC"I`#PT$#"I``"LY"<7X80F
M!3)D'/LYIH2J8JIC)@*O8C`#(.6N8C)D.3'$CT!-0+&#Q`_CB4#$#^/,N@0-6`6_\Z&`J[H&!`_
MA"0!.3!B$(X`$,8/$#^-.0`!7W-Y;H'.>$-2+&#Q`_CB4#$#^/,N@0-6`6_\N&`J[H
M&!`_A"0!.3!B$(X`$,8/$#^-.0`!7W-Y``$
M`!EU;FQI;FL`!``=;6MN;V0`!``/86-C97-S``0``*YBIF40/X0E`Q`_CQ;_
M\:YBYF40/X46_^>F92`"A@*N8A`_D!;_V:9C$#^"$"7_T!^)3SD``E]O>N
M8J9EYF<0/X,E[!^)3SD``5]OVI``"F91`_B"6[,*D``#7```)?9FQA8V,```0@`"8@
M`$@@`%@@`&-E6YC``0`"SF.``!?$#\*%O_U.31@KF80KFCN:A`_%S7@
MIF/F91`_#Q`E_]LYKF(0/PH0)?_1'Q`Y``%?;W,Y97)R```#H``)H``CH``M
M``!BS2.'````6`@)#2L!`````````````#4`````;6]D7V$```-M;V1L;V%D
M``0`&&UO9&QI;FL`!```;75N;&EN:P`$`"DT8*YFIFE(2$A(JFL0/P`?,#5@
M$"7_Z3DT8*YFIFE(2$A(JFL0/P$@YC1`[F00/P(U0!;_RP`"7V]S.65R<@``
M`:``%5]S>7-R970```&@`#,``&+-(X<```!8"`D-+`$`````````````#@``
M``!D:7)?80```F-H>&1I<@`$``IC:&1I<@`$``"&`:YB$#^&%O_VA@0@]``!
M7W-Y_M?B<'QM8U(!;_V1"N9!`_'"0,P=`F
M[Q\@$+X`2^TI3U\UH``!7V]S.65R<@```:``)0``8LTCAP```%@("0TL`0``
M`@`````````B`````&EN=&5R8V5P=%]A```#:6YT97)C97!T``0``&EN=&5R
M8V5P``0``%]S:6=I;G0`!```-$`?(ZYDKZD``#"-``@0/PDU0!;_ZA\R3S0&
MK;D``#)B.P`!7W-Y0T0>YO,T@V/C42I\*O2#)D-6"%`2<$S/__.4]?.0``
M``!BS2.'````6`@'#P7-R970`!``)3^VI``#,__\Y)?5/7SD``65R75P```!H``$``!BS2.'````6`@1#`0```````````````$`````<')O
M9F1U;6UY7V$```)?9'5M<')O9@`$``!?=')A8V4`!```.0````!BS2.'````
M6`@'#P@!``````````````$`````=&ED>75P7V$```%?=&ED>75P``0``#D`
#````
`
end
=========================== Cut Here ==========================

I will post the enhanced library's documentation if there are enough
requests. The only significant addition to this version is a unix-like
'popen()' call (just like the unix man page), and a fix to the
'getopt()' code.

Pete

-- 
Pete Lyall (OS9 Users Group VP)|  DELPHI: OS9UGVP  |  Eaton Corp.(818)-706-5693
Compuserve: 76703,4230 (OS9 Sysop) OS9 (home): (805)-985-0632 (24hr./1200 baud)
Internet: pete@wlbr.eaton.com            UUCP: {hacgate,jplgodo,voder}!wlbr!pete