[comp.sys.cbm] UUxfer - UUencode or decode on a C64

an207@cleveland.Freenet.Edu (David DeSimone) (01/08/91)

This is a short, simple C64 program that does just what it says.  It
allows you to UUencode or UUdecode on a Commodore 64 using standard SEQ
files.

I use this program because I have to call my host computer using a 7E1
connection.  Because of this, Kermit is the only file transfer protocol
that works for me.  It is a fact that Kermit only works efficiently when
it is sending text files.  Binary files can take up to twice as long to
transfer when using Kermit.  Uuencoding, however, adds only a 35%
overhead, so binary files transfer faster when they are encoded, and
then decoded on the C64.  This program is all ML, so it is fast.

DIRECTIONS:

The program offers three options:  Encode, Decode, or Quit.  I forgot to
put a directory option in, but I use use a DOS wedge for my disk
functions anyway.

If you choose to encode some files, you are asked for the filename
pattern to use.  Use standard Commodore wildcards.  For instance, "*"
will encode all files on the disk.  You will be asked for the source and
destination drive numbers.  They can be the same number if you use only
one disk drive, but be sure you have enough disk space.  This also
applies if you encode to another disk, because the files will be 35%
larger after encoding.

If you choose to decode some files, type in the filename pattern of the
files to be decoded.  For instance, "*=S" will read all SEQ files on the
disk and decode them.  Again you are asked for source and destination
drives.

NOTE:  The encoded files, and the files to be decoded will be in TRUE
ASCII!!  Encoded files are already in TRUE ASCII, and files to be
decoded must be in this form.  When you send the files over your modem,
you MUST NOT perform any sort of ASCII translation on the files, or they
will appear as JUNK on the other end!  You have been warned!

And now, here is the program!

begin 644 uuxfer
M 0@+" H GC(P-C$    @&P^3" [5U5A&15(@5C$N,"!"62#&55I:62#&3U@-
M#2C%*2#5U45.0T]$10THQ"D@U=5$14-/1$4-*-@I(,58250-#<-/34U!3D0Z
M(  @D0_)1= )(!L/Q0T 3(D(R430"2 ;#\0- $RG"LE8\ 3) ]#;(!L/V T 
M; *@(!L/#<5.5$52($9)3$4@4$%45$523B!43R!%3D-/1$4Z#3H J1"B3: 0
M(+L/\ 3)_] #3 T(C740(!L/#<5.5$52(%-/55)#12!$4DE612!.54U"15(Z
M( "M0Q @70W)__#0C4,0(!L/#<5.5$52($1%4U1)3D%424].($12259%($Y5
M34)%4CH@ *U$$"!=#<G_\)Z-1! @S@WPEB ;#PW73U)+24Y'+BXN#0T (%@.
MH "Q^ZK(L?L@TO_*T/<@&P\@+3X@ *  KG80RLK*RKEA$"#2_\C*T/:I#2#2
M_ZD"KD,0J""Z_Z  L?NF^Z3\Z- !R""]_R# _ZD#KD00J""Z_ZUV$*)AH! @
MO?\@P/^B R#)_R ;#V)E9VEN(#8T-"  H "Q^ZK@#I "H@[(L?O)(- $J2W0
M',DOT 2I+= 4R4&0$,E;D C)P9 (R=NP!"E_"2 @TO_*T-.I#2#2_R#,_Z("
M(,;_H@ @Y/^=>A#HI)#0!. MD/&&8(1A(,S_IF"I )UZ$)U[$*5@\&:B R#)
M_Z5@&&D@(-+_H "B +EZ$)5BZ,C@ ]#U1F)F8V9D9F5&8F9C9F1F949C9F1F
M949C9F1F949D9F5&9&9E1F5&9:( M6(8:2 @TO_HX 30\\1@D+BI#2#2_R#,
M_Z5AT -,[ FB R#)_R ;#R -96YD#0 @S/^I B##_ZD#(,/_()8.SGD0\ -,
M-PE,#0@@&P\-Q4Y415(@1DE,12!0051415).(%1/($1%0T]$13H-.@"I$*)-
MH! @NP_P!,G_T -,#0B-=1 @&P\-Q4Y415(@4T]54D-%($12259%($Y534)%
M4CH@ *U#$"!=#<G_\-"-0Q @&P\-Q4Y415(@1$535$E.051)3TX@1%))5D4@
M3E5-0D52.B  K400(%T-R?_PGHU$$" ;#PW#4D5!5$4@T\71($]2(-#2QR!&
M24Q%4S\@*-,OT"DZ(  @D0_)4] +A0(@&P_3#0!,C O)4- +A0(@&P_0#0!,
MC O) ]#;3 T((,X-\/@@&P\-UT]22TE.1RXN+@T- *D"KD,0J""Z_Z  L?NF
M^Z3\Z- !R""]_R# _ZD C7<0C7@0H "Q^ZK(L?L@TO_*T/>I#2#2_R"D#J $
MN7H0V:$)T/.($/6I (UX$* $R+EZ$/![R2#0]LBY>A#P<<D@\/;(N7H0\&?)
M(-#VR+EZ$/!=R2#P]J( R4&0$LE;L 0)@- *R6&0!LE[L (I7YUA$.C(N7H0
MT.".=A @&P\@("T^( "B +UA$"#2_^CL=A#0]*D-(-+_H "Y2!"=81#HR, $
MT/2.=A"E IU>$- C(!L/$L72TL_2("TM(,Y/($9)3$5.04U%DB  J0(@P_],
M!P^I ZY$$*@@NO^M=A"B8: 0(+W_(,#_(*0.K7H0..D@\%F%8*(#(,G_H &B
M +EZ$#CI()5BZ,C@!-#R!F4&909E)F0&929D!F4F9"9C!F4F9"9C!F4F9"9C
M)F(&929D)F,F8J( M6(@TO_&8/ 'Z. #T/+PMB#,_TRI#*D#(,/_(*0.H "Y
M>A#9APK0#<C  ]#SJ?^->!!,V NI B##_R ;#Q+%TM+/TB M+2#%3D0@3D]4
M($9/54Y$ $P'#R"6#LYY$/ #3*(+3 T(A6 @_@_@(/ $BB#2_\ @\ 28(-+_
M()$/R0/0 ZG_8,D-T ^F8. (D.S@$+#H(-+_BF#)%- 1IF#PVR#2_Z)@J0H@
M*1!,<@VH..DPD,C)"K#$JJ5@"H5A"@H896&%88H896'PL<D0L*V%8)@@TO],
M<@VI JY#$*  (+K_KG40Z(JB3* 0(+W_(,#_H@(@QO^I (UY$*G*A?NI$(7\
MH" @. Z(T/J@!" X#HC0^B X#LDBT/F@ 2 X#LDB\ 61^\C0]" X#M#[B)B@
M )'[.&7[A?N0 N;\[GD03 $.(.3_II#0 \D 8&AH(,S_J0(@P_^IRH7[J1"%
M_*UY$&"@ +'[J, +D *@"['[R2#0!8C0]Z !F*JQ^\D@T 2I+= &R2_0 JDM
MF6 0B-#JN440G6$0Z,C !]#TCG808*  L?LX9?N%^Y "YOQ@H@(@QO^B *UW
M$- @(.3_I)",=Q#)() (G7H0Z.!/D.?@ /#CJ0"=>A!,S/]H:"#,_ZUX$/ (
MJ0(@P_],3PT@&P\2Q=+2S](@+2T@Q4Y$($]&($9)3$62( "I B##_ZD#(,/_
M()$/R0/0 TP-",D-T/(@TO],3PUHJFBHI0-(I0)(A@*$ Z  Y@+0 N8#L0+P
M1LD!\"/) O CIIK@ ] 3JJT8T$I*BK *R<&0!LG;L (I?R#2_TPK#Z(@T GF
M M "Y@.Q JKF M "Y@.Q JB*(-+_B-#Z\+"ZI0*\ 0&= 0&$ J4#O (!G0(!
MA -@CK4/C+</I<:%S/#Z>*7/\ ZESJ33D=&I (7/J0*%S5@@Y/^B_Z#_R0!@
MC>H/CNX/C.\/H@ @D0_) _ IR0WP*,D4T B*\.[*J130%,D@D.7)8) $R:"0
MW>#_\-F=___H(-+_T-"I_V @TO^*8*(@R620":(PZ63HR62P^8XG$. @\ *B
M,,D*D FB,.D*Z,D*L/D),*BI &"-0A"@"*D &#8 B# +*LU"$)#U[4(0L/!@
+  @(+E55+%,L5R0 
 
end

>From cs4344af@evax.utarl.edu Sun Dec 30 02:49:12 1990
Received: from evax.arl.utexas.edu by po.CWRU.Edu with SMTP (5.61+ida+/CWRU-1.7.1)
	id AA09386; Sun, 30 Dec 90 02:49:12 -0500 (from cs4344af@evax.utarl.edu for /usr/local/bin/m2mbox /u/48/an207/mbox)
Received: by evax.utarl.edu (5.57/Ultrix2.4-C)
	id AA08252; Sun, 30 Dec 90 01:48:54 CST
Date: Sun, 30 Dec 90 01:48:54 CST
>From: cs4344af@evax.utarl.edu (Fuzzy Fox)
Message-Id: <9012300748.AA08252@evax.utarl.edu>
To: an207@cleveland.freenet.edu

begin 644 uuxfer
M 0@+" H GC(P-C$    @&P^3" [5U5A&15(@5C$N,"!"62#&55I:62#&3U@-
M#2C%*2#5U45.0T]$10THQ"D@U=5$14-/1$4-*-@I(,58250-#<-/34U!3D0Z
M(  @D0_)1= )(!L/Q0T 3(D(R430"2 ;#\0- $RG"LE8\ 3) ]#;(!L/V T 
M; *@(!L/#<5.5$52($9)3$4@4$%45$523B!43R!%3D-/1$4Z#3H J1"B3: 0
M(+L/\ 3)_] #3 T(C740(!L/#<5.5$52(%-/55)#12!$4DE612!.54U"15(Z
M( "M0Q @70W)__#0C4,0(!L/#<5.5$52($1%4U1)3D%424].($12259%($Y5
M34)%4CH@ *U$$"!=#<G_\)Z-1! @S@WPEB ;#PW73U)+24Y'+BXN#0T (%@.
MH "Q^ZK(L?L@TO_*T/<@&P\@+3X@ *  KG80RLK*RKEA$"#2_\C*T/:I#2#2
M_ZD"KD,0J""Z_Z  L?NF^Z3\Z- !R""]_R# _ZD#KD00J""Z_ZUV$*)AH! @
MO?\@P/^B R#)_R ;#V)E9VEN(#8T-"  H "Q^ZK@#I "H@[(L?O)(- $J2W0
M',DOT 2I+= 4R4&0$,E;D C)P9 (R=NP!"E_"2 @TO_*T-.I#2#2_R#,_Z("
M(,;_H@ @Y/^=>A#HI)#0!. MD/&&8(1A(,S_IF"I )UZ$)U[$*5@\&:B R#)
M_Z5@&&D@(-+_H "B +EZ$)5BZ,C@ ]#U1F)F8V9D9F5&8F9C9F1F949C9F1F
M949C9F1F949D9F5&9&9E1F5&9:( M6(8:2 @TO_HX 30\\1@D+BI#2#2_R#,
M_Z5AT -,[ FB R#)_R ;#R -96YD#0 @S/^I B##_ZD#(,/_()8.SGD0\ -,
M-PE,#0@@&P\-Q4Y415(@1DE,12!0051415).(%1/($1%0T]$13H-.@"I$*)-
MH! @NP_P!,G_T -,#0B-=1 @&P\-Q4Y415(@4T]54D-%($12259%($Y534)%
M4CH@ *U#$"!=#<G_\-"-0Q @&P\-Q4Y415(@1$535$E.051)3TX@1%))5D4@
M3E5-0D52.B  K400(%T-R?_PGHU$$" ;#PW#4D5!5$4@T\71($]2(-#2QR!&
M24Q%4S\@*-,OT"DZ(  @D0_)4] +A0(@&P_3#0!,C O)4- +A0(@&P_0#0!,
MC O) ]#;3 T((,X-\/@@&P\-UT]22TE.1RXN+@T- *D"KD,0J""Z_Z  L?NF
M^Z3\Z- !R""]_R# _ZD C7<0C7@0H "Q^ZK(L?L@TO_*T/>I#2#2_R"D#J $
MN7H0V:$)T/.($/6I (UX$* $R+EZ$/![R2#0]LBY>A#P<<D@\/;(N7H0\&?)
M(-#VR+EZ$/!=R2#P]J( R4&0$LE;L 0)@- *R6&0!LE[L (I7YUA$.C(N7H0
MT.".=A @&P\@("T^( "B +UA$"#2_^CL=A#0]*D-(-+_H "Y2!"=81#HR, $
MT/2.=A"E IU>$- C(!L/$L72TL_2("TM(,Y/($9)3$5.04U%DB  J0(@P_],
M!P^I ZY$$*@@NO^M=A"B8: 0(+W_(,#_(*0.K7H0..D@\%F%8*(#(,G_H &B
M +EZ$#CI()5BZ,C@!-#R!F4&909E)F0&929D!F4F9"9C!F4F9"9C!F4F9"9C
M)F(&929D)F,F8J( M6(@TO_&8/ 'Z. #T/+PMB#,_TRI#*D#(,/_(*0.H "Y
M>A#9APK0#<C  ]#SJ?^->!!,V NI B##_R ;#Q+%TM+/TB M+2#%3D0@3D]4
M($9/54Y$ $P'#R"6#LYY$/ #3*(+3 T(A6 @_@_@(/ $BB#2_\ @\ 28(-+_
M()$/R0/0 ZG_8,D-T ^F8. (D.S@$+#H(-+_BF#)%- 1IF#PVR#2_Z)@J0H@
M*1!,<@VH..DPD,C)"K#$JJ5@"H5A"@H896&%88H896'PL<D0L*V%8)@@TO],
M<@VI JY#$*  (+K_KG40Z(JB3* 0(+W_(,#_H@(@QO^I (UY$*G*A?NI$(7\
MH" @. Z(T/J@!" X#HC0^B X#LDBT/F@ 2 X#LDB\ 61^\C0]" X#M#[B)B@
M )'[.&7[A?N0 N;\[GD03 $.(.3_II#0 \D 8&AH(,S_J0(@P_^IRH7[J1"%
M_*UY$&"@ +'[J, +D *@"['[R2#0!8C0]Z !F*JQ^\D@T 2I+= &R2_0 JDM
MF6 0B-#JN440G6$0Z,C !]#TCG808*  L?LX9?N%^Y "YOQ@H@(@QO^B *UW
M$- @(.3_I)",=Q#)() (G7H0Z.!/D.?@ /#CJ0"=>A!,S/]H:"#,_ZUX$/ (
MJ0(@P_],3PT@&P\2Q=+2S](@+2T@Q4Y$($]&($9)3$62( "I B##_ZD#(,/_
M()$/R0/0 TP-",D-T/(@TO],3PUHJFBHI0-(I0)(A@*$ Z  Y@+0 N8#L0+P
M1LD!\"/) O CIIK@ ] 3JJT8T$I*BK *R<&0!LG;L (I?R#2_TPK#Z(@T GF
M M "Y@.Q JKF M "Y@.Q JB*(-+_B-#Z\+"ZI0*\ 0&= 0&$ J4#O (!G0(!
MA -@CK4/C+</I<:%S/#Z>*7/\ ZESJ33D=&I (7/J0*%S5@@Y/^B_Z#_R0!@
MC>H/CNX/C.\/H@ @D0_) _ IR0WP*,D4T B*\.[*J130%,D@D.7)8) $R:"0
MW>#_\-F=___H(-+_T-"I_V @TO^*8*(@R620":(PZ63HR62P^8XG$. @\ *B
M,,D*D FB,.D*Z,D*L/D),*BI &"-0A"@"*D &#8 B# +*LU"$)#U[4(0L/!@
+  @(+E55+%,L5R0 
 
end


--
begin 644 .signature
G5&AI<R!S<&%C92!I;G1E;G1I;VYA;&QY(&QE9G0@8FQA;FLN#0H:
 
end