btb@ncoast.UUCP (02/02/87)
Hello, again, Well I have written a uuencode program in Deep Blue C, and here is the executable uuencoded itself... there seems to be some problem with John's uudecode program... it almost works to uudecode this, but it gets lost at the end... I have sent this to John, so please don't use this to uuencode yet (if you can get it working) until we/I hear more from John on fixes to uudecode.bas (and this program, maybe?). Brad Banko Cleveland, Ohio ...!decvax!cwruecmp!ncoast!btb ************************************************************** begin 700 uuencode.com M__\ 0/] 9&)C 0 )0$!5% ( % ( % 0 %#P %% % ( % ( %!X % ( %#( a M%#( % ( % ( % ( ^#^# /@_@P+\$(,"_1"# .0_PP/N$,,"_A"# ]M200#a MEO\, W;_# ^I4@0' Y;_"0P+ P E$WM ^3^# LC0PP/[%0&$H= ^3^# -Va M_PP/[%0&"R=## ]M200#EO\, W;_# ^I4@0' Y;_"0P+ D$[- W;_# LMa M <2P$ #=O\, W;_# ] 3P0' W;_"0P+ H# L "43]4 #=O\)# LM "<,a M"P )1/U0 -V_PD,"P, &@P+ D# L "4,"P )!,%00-V_P!!_T$,"RT a M!PM40PP#=/\)# ]M208#_/\,"P !P.8_PP#^O\)%@@,"SH )1,\01(Y00/\a M_PP)(@<2&D$2+T$#_O\, _K_"0P+ 0 6!P/\_PP+ ' YC_# /Z_PD6# .6a M_PP#^O\)%@@& YC_# /\_PD6" P+ E$Y!!$HU! _[_# DB!P/\_PP)(@<2a M4D$2?$$#F/\, _K_"18,"P !@/\_PP+ ' YC_# /Z_PD6" P+ E$^)!a M$L5! _S_# DB!Q*F00.8_PP#^O\)%@P#EO\, _C_"18(# ^Y5 0&$KM! ^+^a M"0P+=D,, ^#^# .2_PP/L4D* P # L <+ $+_0H-## ]M200+F4,, _[_a M"0P/;4D& W3_# L <#=/\)# -T_PDF# L "4344(#Z/X, W+_"18, ][^a M"0P/CU($!@P+ F# L "0,"P )1-D0A)A0@-T_PP)(@<2'$(25T(#Z/X,a M W+_"18(# L "83?4(#=/\,"2,' ^C^# ,B_PP#</\)# _,1@@#XOX)# N=a M0PP+( , V[_"18, Q[_# ^Q20H# ,"0P#</\)%@<#=/\)# -T_PDI$\5"a M$@=" ^+^"0P+I$,,#[%)!@NL0PP/;4D$ ^#^"0P/8%($ ^+^"0P/8%($%-[^a M$$-/30!5544 FR @<')O=&4 0[=#8W1I;VX@;6]D92 H;V-T86PL(#<P,"!Da M968I(#^;(" ^( W,# ("!O=71B>71E<R]L:6YE("AD969A=6QT(#0U+"!Ma M=6QT(&]F(#,IFR @/B (" E9"!O=71B>71E<R]L:6YE('=I;&P@8F4@=7-Ea M9"Z; &)E9VEN("5S("5SFP";("!E;F-O9&EN9R!A="!B>71E.IL )3AD "5Ca M)7-AFP!E;F0@(""; )N;_2 @9&]N92&; +A#MT04,@ 4,@ 4% +>T4,#VU)a M! N610P/;4D$"ZY%# ]M200+W$4,#VU)! ON10P/;4D$"P%&# ]M200#?O\)a M# L! " ' W[_"0D,"P )A-51 LD1@P/;4D$ XK_# ^I4@0#BO\, X#_"0P/a M75,& W[_"0P#B/\,"W( # \9408' W[_"0D,"P )A-21 .*_PP#?/\)"0P/a M9T4&$OM# X;_"0P#B/\,#^Q4!@. _PD,"P$ ( <#@/\)"0P+ F$U-%"T5&a M# ]M200#O/\,#ZE2! .\_PP#@O\)# ]=4P8#@/\)# .Z_PP+<@ ,#QE1!@<#a M@/\)"0P+ F# L "03N$2W11E%"VU&# .Z_PP/;4D&"X5&# ]M200#[O\,a M#ZE2! /N_PP+ 6" P+>0 E# L "43_T0#[O\,"P %@@,"UD )0P+ Ea M$QE% X#_"0D,#V!2! . _PD,"P$ ( <2;$0#@/\)"0P/8%($ X#_"0P#NO\,a M"W< # \9408' X#_"0D,"P )A-010.\_PP#?O\)"0P/9T4&$FQ$"YM&# .(a M_PP#N/\,#VU)"!2(_Q +J$8, _S_"2 , _C_"0P/;4D($'V;FW]5=65N8V]Da M92!F;W(@=&AE($%T87)I )N;?U9E<G-I;VX@9&%T93H@,B\Q+S@W )N;("!Wa M<FET=&6X1;=&;B!I;CJ;("!*;VAN(%!A;&5V:6-H)W,@1&5E<"!";'5E($, a MFYL@(&)Y($)R860@0F%N:V\ FR @0VQE=F5L86YD+"!/:&EO )L@("XN+B%Da M96-V87@A8W=R=65C;7 A;F-O87-T(6)T8IL FR @;F%M92!O9B!F:6QE('1Oa M(&5N8V]D92 _FR @/B FR @;F%M92!F;W(@=75E;F-O9&4@;W5T<'5T(&9Ia M;&4@/YL@(#X@ )L@("<E<R<@86QR96%D>2!E>&ES=',N )L@(&]V97)W<FETa M92 H62].*2 _( ";(" E<R ]/B E<YL F_T@*BHJ(&5R<F]R.B E9+A&RT8@a M;W!E;FEN9R!F:6QEFR<E<R>; ,Q&D4<4! 4 @ 4 @ 4 @ #_O\, _[_# L a M <' _[_"0P#\O\))A-_1P/\_PP+ ' _S_"0P+ P F$S-'$A-' _S_# DBa M!Q+Z1@/X_PP#^O\)%@P#[O\)# /Z_PD6" 8#_O\,"2('$@E' _C_# ^42 0#a M_/\,"P !P/\_PD,"P0 )A-\1Q)<1P/\_PP)(@<20T<#\O\)# /^_PD6# /Va M_PP#^/\)%@@& P # DB!Q)21Q+E1@/R_PD, _[_"18,"P !A3V_Q"21Y%(a M% 0 % ( P # L <# )# L# "<3W4<2N4<# ,"2('$J!' _C_"0P#a M_O\)%@P#]O\)# /\_PD6" P+?P =# L@ !<&$J]' _S_# L !8, _;_"0P+a M 6" P+ @ ?# /T_PD,"P$ %@@,"P0 'AL& _S_# L! !8, _;_"0P+ 0 6a M" P+! ?# /T_PD,"P( %@@,"P( 'AL& _S_# L" !8, _;_"0P+ @ 6" P+a M!@ ?# /T_PD,"P, %@@;!@, P+ ' P "0P+ @ G$Y!($G=( P # DBa M!Q)>2 /X_PD, _[_"18, _K_# /\_PD6" 82;4@4^I)(;$G_$!0$ !0" /\a M_PP+ 6# /V_PD,"P %@@,"P( '@8#_/\,"P$ %@P#]O\)# L !8(# L#a M !T,"P0 'PP#]/\)# L! !8(# L$ !X;!@/\_PP+ @ 6# /V_PD,"P$ %@@,a M"P\ '0P+ @ ?# /T_PD,"P( %@@,"P8 'AL& _S_# L# !8, _;_"0P+ @ 6a M" P+/P =!@, P+ ' P "0P+ P G$VE)$DM) P # DB!Q(R20/X_PD,a M _[_"18, _K_# /\_PD6" P+( 6!A)!213Z_Q!M26Q*% ( P # O2 P/a M-U4$!P, P#_O\)# L& P#^O\)# L( !<,#S=5! P/,54$%A<' P "0P+a M ,#P!*!A3^_Q 4 @ # ,"]( # \W500' P # /^_PD,"P8 # /Z_PD,a M"P@ %PP/-U4$# \Q5006%P<# )# L" !8, _[_"0P/-U4$# \ 2@84_O\0a M% ( % ( % $ % ( % ( % ( % ( _K_# /S_PP#Z_\)# \W500'# \?500'a M _K_"1,-3 /\_PP#\_\)# /V_PD,"R4 # \<50@'# L "8394H#]?\)# /Oa M_PD,#Q-3!A3S_Q #_/\)# L &U*;$LH$[!* _'_"0P+"P , _'_"0P#]O\)a M# L! " ,"P$ ( P/6E,. _7_# /S_PD, _C_"18' _K_# /X_PD, _C_"1<'a M _[_# L <# ,"P$ !P/Z_PD3,4L#]?\,"2(' _K_# DC!P/Y_PP#\_\)a M" 8#^?\(# LM "03^$H# , _[_"2 '$BY+ _G_" P+, I# /W_P@,"SD a M)QT3*TL#_O\, _S_"0P+"@ 8# /U_P@,"S %Q8'$BY+$C%+$L!* _[_# /\a M_PD, _S_"1@' _?_# /M_PP#Z_\)# L" !8'# \W500' _G_" P+9 D$WI+a M _?_"0P#_/\);4ML3 P#[?\)# \13 @2_$L#^?\(# MS "03G$L#]_\)# /\a M_PD, ^W_"0P/NDX($OQ+ _G_" P+8P D$[Y+ _?_"0P#_/\)# /M_PD,#VQ.a M"!+\2P/Y_P@,"W@ )!/@2P/W_PD, _S_"0P#[?\)# \_30@2_$L#^?\(# /Oa M_PD,#XQ2!@/O_PP#[?\)# L" !<' _7_# DB!P/Z_PP)(P<2+4H4\_\0% < a M% $ % $ % ( % ( _[_# /Z_PP+ &!P, P+$"<' ^W_"0P+ F$UU,a M _7_# /\_PP)(@<C%@P++0 & ^W_# /K_PD@!P, D3P4P#_/\(# /[_PQMa M3&Q- ^G_"0P#^O\)&08,"P *!L3H4P#]?\, _S_# DB!R,6# /[_P@,"S a M%@8#_/\,"P$ !@/M_PP#Z_\)# /\_PD:!P, P#_O\)# L* !D'$EU, _S_a M" P+ D$]], _7_# /\_PP)(@<C%@P+, & _7_# /\_PD6# L 8#[_\)a M# L "@3#4T#\?\)# /M_PD, _K_"1<,#QY/!@/U_PP#[_\)# \34P8#[_\)a M# L "83.TT#\?\)# /M_PD@# /Z_PD7# \>3P84\_\0% < % $ % $ % ( a M% ( _[_# /Z_PP+ &!P, P+# ' P "0P+ I$VU-;$[N30/\_P@,a M _O_# /I_PD, _K_"1X,"P\ '08,"P *!L3W4T#_?\(# L) "<3N$T#]?\,a M _S_# DB!R,6# /[_P@,"S %@82U4T#]?\, _S_# DB!R,6# /[_P@,"V$ a M%@P+"@ 7!@/\_PP+ 0 & P # /^_PD,"P0 %P<28TT#_/\(# L "03#$X#a M]?\, _S_# DB!R,6# LP 8#]?\, _S_"18,"P !@/O_PD,"P *!,Z3@/Qa M_PD, ^W_"0P#^O\)%PP/'D\& _7_# /O_PD,#Q-3!@/O_PD,"P )A-H3@/Qa M_PD, ^W_"2 , _K_"1<,#QY/!A3S_Q #;4X_3_S_"0P+ H$XM. _[_"0P#a M^O\)# L! !<,#QY/!@/Z_P@, _S_"0P/C%(& _S_"0P+ F$[E. _[_"0P#a M^O\)( P+ 0 7# \>3P80% ( P # /V_PD,#Q]5! <#^O\)# L "@3ZTX#a M_/\)# /X_PD, _S_"1<,#QY/!@/X_PD, _K_"0P/$U,& _K_"0P+ F$QI/a M _S_"0P#^/\)( P#_/\)%PP/'D\&%/[_$ /^_PP)(P<B# L "@3/D\+( ,a M _K_"0P/C%(&$AY/$"! 3S]0% $ % ( % ( _W_# /W_PD(!A.(3P/]_P@,a M"R ) P#^_\(# N; "0;# /[_P@,"W\ )!L3@D\#^?\,"2('$H5/$HA/$DE/a M P # L! <#_?\(# LK "0, _O_" P++0 D&Q/)3P/]_P@,"RT )!.\3P, a M P+ 0 @!P/]_PP#]_\,"2('" 8#_O\,"P !P/]_P@,"S *0P#^_\(# LYa M "<=$Q%0 _[_# /\_PD,"PH & P#^?\(%@P+, 7!P/]_PP#]_\,"2('" 82a MT4\#_O\)# /^_PD8%/O_$!0" !0! /__PP+ ' P$ # /Y_PD(!A-L4 ,!a M @,"T!0/U%_ "0, ___" P+( D&PP#__\(# N; "0;$V90 _O_# DB!Q)Ia M4!)L4!(M4 L! !,140,! @,"S *0P#__\(# LY "<=$YI0 P$ # /__P@,a M"S %P82[5 # 0 (# MA "D, ___" P+9@ G'1/"4 ,! P#__\(# M7 !<&a M$NU0 P$ " P+00 I# /__P@,"T8 )QT3ZE # 0 , ___" P+-P 7!A+M4!(1a M40/__PP#_?\)# L$ !\, _W_"!8' P$ # /Y_PP)(@<(!A)L4 /__PD4_?\0a M% ( % ( % ( % ( _S_# L <#_/\)# L( "8385$+0 ,, _K_0%$_4@D,a M"P0 'Q8,#S%5! P+_P D$U=1$F%1 _S_# DB!Q(M40/\_PD,"P@ )!-U40L!a M " 4^/\0 _3_"0P#^/\, _#_"0P/'U4$!Q8,"YL !@/V_P@,"W( )!.E40, a M P+! '$MM1 _;_" P+=P D$[Q1 P # L( <2VU$#]O\(# MA "03TU$#a M ,"PD !Q+;40N$ " 4^/\0 _[_# /Z_PD,"P, # /N_PD, _+_"0P+ 0 6a M# /V_PD,"P # ]:4PX' _3_"0P#^/\)%@P+ & _[_"0P+ F$S%2 _S_a M"0P/:E($ _[_"13X_Q #_/\)%/C_$ /X_P@,"P- 4C]3 P#^O\)# /X_PD,a M#Q]5! P#\O\(# /R_P@,#UI3#A #_O\(# ]J4@00 _[_"0P+# ,"P$ ( P+a M 0 @# L! " ,"P$ ( P/6E,.$ ), &, L P/CU($$ /^_P@,"P # ^,a M4@80% ( P # L P+!0 , _;_"0P+> ,"P$ ( P+ 0 @# ]:4PX'# L a M "83X%(# )%/[_$ /\_PD, _[_# M( PP/-U4$# L! !<'%@P+ & P a M"13^_Q #_O\)# L P/$U,&$!0" , P#^/\)# \?500'$T]3 _S_"0P+a M"P , _;_"0P#^O\)# L! " ,"T!3/U0! " ,#UI3#A3^_Q 25E,+ 0 4_O\0a M%/[_$ #,!0" !0! !04 /K_PP+ ' ^W_# /C_PD, ^?_"18(!A.=4P/Ea M_PD, ^G_# DB!R,6# /K_P@,#X94! 82;E,#Z_\,"2,'# L "83LU,+ 4a MZ?\0 ^O_"0P+ D# /I_PD,"P$ ) P#X?\)# L! !8(# LZ "4=&PP#X_\)a M# L! !8(# LZ "4, ^'_"0P+ @ 6" P+.@ E'1L3-E0#[O\,"SU5# _L5 8#a M[O\,"P( %@P#X_\)# _L5 8#Y?\)# /L_PP/[%0& ^O_# /I_PD,"P( %@<#a MY?\)# /I_PD,0%0_50L! !8,"RX # \<50@,"P )A."5 /E_PD, ^G_"0P+a M 0 6%@P++@ & ^7_"0P#Z?\)%@P+ @ 6# /E_PD,#^Q4!A3I_Q #_O\(# MAa M "8,"P )0VE5 /^_P@,"WH * P+ E$Z]4 _[_"!*X5 /^_P@,"R %Q #a M_O\(# M! "8,"P )0W85 /^_P@,"UH * P+ E$^)4 _[_"!+K5 /^_P@,a M"R %A ## #S #_/\)# L 8#_/\)# /Z_PD,"P$ %@P#^O\)# L! !<,a M#^]4"! $C %3 #_O\)# LP=0P+ ,#QQ5"! &# &S 'C (3!$.@#_a M_P P^S!,%C),:3!,MS!,VC!,^#!,'S%,4#%,7C%,ES%,I3%,N3%,R3%,YS$@a MNS.@ +'8JLK*CDPPI=(X[4PPA=BET^D A=D@33"%U(;53< *Q,,/ ,B(BQa MV$C(L=A(B-#TK4PP2D@@2C-LV !H:&@*"@H*JFAHG4(#:*AHP/_P!YU$ YB=a M10-HJ&C __ 'G4@#F)U) VBH:,#_\ .=2@-HJ&C __ #G4L#(%;DF! (2?\8a M:0&B_V"B &!H:&@I!PH*"@JJJ0>=0@.I )U( YU) R!6Y# #H@!@F$RL,&AHa M:*AH:"D'"@H*"JJI"YU" ZD G4@#G4D#F$RF,&AHA?'\,/<Q:(7P:(7S:(7Ra MH "$];'RD?#P#,C0]^;QYO/F]4P),9BF]6!H:(7Q:(7P:(7S:(7R:(7U:(7Ta MH "E]- &I?7P$L;UQO2Q\)'RR-#MYO'F\TPT,:I@:*AHA?%HA?"(F$AL\ !Ha M:(7Q:(7P:(7S:(7R:&B%]* A/6E\M *I?/0!*G_JF#&\\;RL?#%]- $F*;Ua M8,C0X^;UYO%,<S%H:(7Q:(7PH@"@ +'P8&AHA?%HA?"@ +'PJFAHD?"*H@!@a M:&B%\6B%\* !L?"JB+'P8&AHA?%HA?"@ +'PA?+(L?"%\VB1\(AHD?"F\Z7Ra M8*D#C0_2J0"-"-)H:&@I PJJ^#'S,FAHG0#2:&@I#PH*"@J%\&AH*0\%\.B=a M -)@9&)C :(#O0! W1(RT ;*$/5,*S*I0TP*,ZE A="I,H71K0= A=*M"$"%a MTTQ0,@(%0 P1 @]*,@( 33)L"@"@ +'0YM#0 N;1"JBY=#*%V+EU,H79;-@ a MH "QT.;0T +FT6 G,#LS83-R,X4SD3.B,\<SV#/C,_(S]S,%-+$T-S1/-<a MBS2C-+HTX#0&-0TU(#4S-5HU:C69-:LUO37/-?HU)#8T-D,V3#9H-GLVC3:6a M-J4VM#:]-M VY3;[-LXTFV1B8R Q(')U;BUT:6UE+65R<F]R("(; "*;5'EPa M92!A(/0R[S-K97D@=&\@<F5T=7)N('1O($1/4RZ;C>HRH@"I"YU" ZG2G40#a MJ3*=10.I.)U( ZD G4D#(%;DJ?^-_ +-_ +P^XW\ FP* "!*,Z L=B%U)B%a MU4Q0,J L="%V,BQT(79I= 8:0*%T) "YM%@($HSH "QV(74R+'8A=5,4#(@a M2C.ETAAEV(74I=-EV8753% R($HSH "EU)'83% R($HSH "EU)'8R*75D=A,a M4#(@NS.@ *74D=BETCCI H72I=/I (733% RH "QTH78R+'2A=E@(+LSH "Ea MU)'8R*75D=A,JS.@ +'4A=2$U4Q0,J L=2JR+'4A=6&U$SP,^LT4#*I0DP*a M,R!*,Z78A=2EV8753% R(!8TH "EU)'2R*75D=),4#*ETAAI H72I=-I (73a MS>8"D G0"*72S>4"L %@J4%,"C.@ *;4L=*%U(J1TLBFU;'2A=6*D=),4#(@a M%C0@2C.ET* D=+(I=&1TJ78A="EV8713% RH "QTH70R+'2A=$@:3*%V*72a M..78A=*ET^D A=-,4#*@ *;0L=*%T(J1TLBFT;'2A=&*D=),4#(@2C.EV(70a MI=F%T4Q0,J74!=70[$S -*74!=7PXZD"&&70A="0 N;13% R($HSI=3%V-#Ia MI=7%V=#C3*,T($HSI=(89=B%TJ73[#3G-679A=/-Y@*0#M 'I=+-Y0*0!:E!a M3 HS3% R!M0FU4Q0,J L=(89=2%U,BQTF75A=5,JS.@ +'2..74A=3(L=+Ea MU8753*LSI=2-X "EU8WA * L=*-X@#(L=*-XP @EC>MX@"%U*WC (753*LSa M('HUK>( A=2MXP"%U4RK,R!Z-:W@ (74K>$ A=5,JS.@ +'2C> R+'2C>$ a MI=4%U- %J41,"C.EU:343$(WH "QT@74A=3(L=(%U8753*LSH "QTD74A=3(a ML=)%U8753*LSH "QTB74A=3(L=(EU8753*LSIM3@"/ 9H "QTH74R+'2A=7@a M / '1M5FU.@UXS;*T/E,JS.@ (35R+'2A=1,JS.FU. (\!F@ +'2A=3(L=*%a MU> \ <&U";5RM#Y3*LSH "$U+'2A=5,JS.I #CEU(74J0#EU8753% RJ?]%a MU(74J?]%U8753% RYM30 N;53% RI=30 L;5QM1,4#*@ #BQTN74A=3(L=+Ea MU8758"!7-J74!=70$Z(!AM3*AM5,JS,@5S:EU 75T.VI (74A=5,JS,@5S:Ea MU3#=$.X@5S:EU3#4T.6EU-#A\,P@5S:EU3#8T,.EU-"_\- @5S:EU3#)$+2@a M ;'2Q=60K-"]B+'2Q=20H["TH &QTL75D)G0JHBQTL74D)#PCM#D-M\WGZ !a ML=+%U9"7T F(L=+%U)".\(Q,<3:@ ;'2Q=60@=#SB+'2Q=2P[$R$-H7EA.2@a M$ ;B)N,FX";AD NEX.7DI>'EY4P\-Z7@Q>2EX>7ED J%X:7@Y>2%X.;BB-#4a M8*( A>6$Y,F 1>&%YI *BN7DA>2*Y>6%Y:3@I>')@&;F$ B*..7@J(KEX87Ca MA.*&X(;A(!,W).80"XHXY>"%X(KEX87A).90"XHXY>*%XHKEXX7C8*7C1>&%a MYJ7C, U)_X7CI>))_X7B3+4WI>+0 L;CQN*EX1 0J0 XY>"%Y*D Y>&%Y4S/a M-X7EI>"%Y*D A>"%X: 01N-FXK ,I>!EX#<%..2%X*7A9>6%X4;A9N!FXV;Ba ;B-#G).80#3BI .7BA>*I .7CA>-@X +A A8Ra end -- Brad Banko ...!decvax!cwruecmp!ncoast!btb Cleveland, Ohio "The only thing we have to fear on this planet is man." -- Carl Jung, 1875-1961
hans@umd5 (Hans Breitenlohner) (02/04/87)
In article <1991@ncoast.UUCP> btb@ncoast.UUCP (Brad Banko) writes: > >Hello, again, > Well I have written a uuencode program in Deep Blue C, and here >is the executable uuencoded itself... there seems to be some problem with >John's uudecode program... it almost works to uudecode this, but it gets >lost at the end... I have sent this to John, so please don't use this to >uuencode yet (if you can get it working) until we/I hear more from John >on fixes to uudecode.bas (and this program, maybe?). > > Brad Banko > Cleveland, Ohio > ...!decvax!cwruecmp!ncoast!btb > Actually, I think it is your uuencode which is not working correctly. There should be a line with a byte count of zero (i.e. starting with either a space or an accent grave) between the last line of text and the 'end' line. While some uudecodes may not enforce this, all the uuencoded files I have looked at contain that line.
jhs@MITRE-BEDFORD.ARPA.UUCP (02/07/87)
The difficulty that Brad has been having with my uudecode seems to be caused by the format of his uuencode output, which does not include the final line containing "zero bytes" to be uudecoded. VAX implementations of uuencode seem to include such a line. This comes out as a line containing just a single space before the <RETURN>. A space is $20 (or decimal 32) in ASCII, so a uudecoder subtracts $20 and gets a byte count of zero. If it is written correctly it decides that (a) there is nothing on that line to uudecode and (b) there are no more lines, either. The next line should contain "end". I wrote the assembly language subroutine to determine that the byte count was zero and return without doing any decoding. It does however return a USR value of 0, which gets put into the M in my BASIC calling program in the line "M=USR(UUDADR)". The next line tests for M=0 as the end condition and returns control down below to the lines which handle finishing up and closing files. In Atari BASIC, if you want high speed, you have to put the critical code right at the beginning, because every time you ask BASIC to GOTO a line number, it has to search through all the stored program steps until it finds a line with that number. If you are searching for a line right at the beginning, the search takes the least possible time. That is why I put the "main loop" at the front, with just one line ahead of it to make the program start up correctly on a RUN command. I also used just the one test for a line with zero bytes in it as the end condition. I felt that this would be a fast test. If you want to, you can make it actually look for the "end" line instead by inserting the test "IF (OBUF$(1,3)="end" THEN GOTO ..." instead of or in addition to the test for M=0. -John S.
jhs@MITRE-BEDFORD.ARPA.UUCP (02/08/87)
Well, it sounds as though your efforts will prove of value to the net, by allowing us to uuencode locally. Since that is done once and decoding is done many times (i.e. by many people), I guess it is not so bad if the encoder is in Deep Blue C and is 5 times slower than the decoder. (I am assuming that encoding and decoding are about equal. Actually encoding may be a little worse because writing DOS files on 1050s is much slower than reading them, and the output file is 33% longer for encoding than for decoding.) Anyway, thanks for your benchmarking. It is gratifying to learn that I apparently did a reasonable job of structuring the thing for speed. -John S.