UUcoder 1.21
============


+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+  John Allen 1994 - 1996.  This application is Freeware and is    +
+ supplied on the understanding that:                               + 
+                                                                   + 
+ 1. The source code is not altered in any way                      +
+ 2. Any copies made contain all of the files in the directory      +
+ 3. It is not sold for a profit                                    +
+ 4. It is not included on any disc costing more than 2 or any     +
+    CD Rom costing more than 20 without my prior permission       +           +                                                                   +
+                                                                   +
+ Please contact me before adding it to a PD library so that I can  + 
+ supply an up to date version.                                     + 
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


UUcoder codes and decodes uuencoded files such as might be sent and 
received via Usenet newsgroups on the Internet.  It works totally on 
the RISC OS desktop and is designed to work only under RISC OS 3.10 and 
later versions.

As well as decoding single files it will also turn a series of messages 
containing sections of a uu encoded file (such as might be found in 
newsgroups with'binaries' in the title) into a single decoded file.  

Likewise it will split long coded files into short sections to send in 
separate messages.

If a file does not contain uuencoded data UUcoder will check whether it 
contains Mime base64 code, if so it will decode it.  At present UUcoder 
will not decode multi-part base64 files.

UUcoder saves and loads files to and from the Scrap directory so will 
run much better on a machine with a hard disc, but then Internet (or at 
least Demon) would be a pain on a machine which only had floppy drives.

The following files should be included in the UUcoder directory:

!Boot
!Help
!History
!Run
!RunImage
!Sprites
!Sprites22
Resources directory containing: Mapping, Messages, Sprites, Sprites22, 
                                Templates

Use 
===

Double click on the UUcoder icon in the Filer window.  This installs 
UUcoder on the iconbar and opens the main coding and decoding window.

Clicking on the UUcoder icon on the iconbar will re-open the main 
coding and decoding window if it has been closed.  If the window is 
already open it will bring it to the top of any other windows that are 
open.

UUcoder is designed to be simple to use.  To decode: drop a file on the 
decode icon and to code drop it on the code icon.  The resulting file 
can then be dragged where ever it is required.  The instructions below 
are more detailed an explain the more advanced features:


To decode a file or series of files:

1. Use the Choices window (opens from the menu) to set whether any 
PC-style file extension should be preserved on decoding.  This is 
useful if the decoded file will eventually be used on a PC or the Risc 
PC 486 card.  Options set can be saved to use as default on future 
sessions with UUcoder by clicking select on the 'Save' con or used just 
this time by clicking 'Use'.  

2. Drag a file containing uuencoded data to the decode icon at the 
bottom right of the main window.  There's no need to edit the header 
off the file, just use the whole file.  UUcoder will detect whether it 
is a complete uuencoded file or give a prompt for the next file in a 
series.  Continue dragging the series of coded files to the decode icon 
until UUcoder detects the end of the uuencoded data.  The files must be 
dragged in order.

3. UUcoder decodes the complete uuencoded file.

3. Edit the supplied name as appropriate, then drag the file icon to a 
Filer directory display or to another application.  Alternatively enter 
the full pathname of the file and click select on the 'OK' icon.  
Additionally you can double-click select over the file icon to load it 
into an appropriate application (if known to RISC OS at the time of 
clicking). 


To encode a file:

1. Use the Choices window (opens from the menu) to set up the way that 
UUcoder should code the file.  Select the split file option if you 
think that the resulting file will be longer than the maximum length of 
an e-mail message (it can be as low as 60k on some parts of the 
Internet).  With this option you should set the maximum file length 
that your system allows.  These options can be saved to use as defaults 
on future sessions with UUcoder by clicking select over the 'Save' icon 
or used just this time by clicking 'Use'.  This dialogue box also 
allows you to set default file names for the resulting encoded file.  
These can be full filepaths if you wish.

2. Drag the file you wish to encode to the code icon at the top right 
of the main window.  If the file is being sent to someone with a PC 
rather than an Arc it should be named with the appropriate file PC file 
extension, using a "/" instead of a ".".  This ensures that the PC user 
gets a correctly typed file when it is decoded.  For example a gif file 
"mum" should be called "mum/gif" before dragging it to UUcoder.  It 
will be uuencoded with the PC file name of "mum.gif".  If there is not 
a PC style file extension UUcoder will save the RISC OS filetype with 
the file so that its RISC OS filetype will be restored if it is decoded 
by UUcoder.

3. UUcoder will encode the file.

4. Edit the file name supplied by UUcoder to the name you wish to save 
the file under, and drag the file icon to a Filer directory display or 
to another application.  Alternatively enter the full pathname and 
click select on the 'OK' icon.  If you have the split option set, and 
the file is longer than the maximum length, UUcoder will split the file 
and keep presenting new part-files for you to save until the whole file 
has been saved.


Features 
========

* UUcoder will accept coded files direct from other applications so, 
for example, you can use the 'Save File' option of TTFN to decode files 
by dragging them to the UUcoder decode icon rather than saving them on 
disc first.

* UUcoder will save coded files to other applications so, for example, 
you can insert an encoded file (or section of file) into a message 
being composed by TTFN.

* UUcoder will also transfer decoded files directly to and from other 
applications which accept direct transfer.  Note that there is a bug in 
Translatr which means it will not accept .jpg files unless you edit one 
line in Translatr's !Run file.  The line that reads: 

          Set Translator$Scrap <Wimp$Scrap>

should be changed to point to a different file such as: 

          Set Translator$Scrap <Wimp$Scrap>2

* Double clicking a decoded file will attempt to load it into an 
application that accepts that filetype.  Note that some applications 
(e.g. Spark) do not take possession of files loaded this way so it is 
vital that the file is processed and saved elsewhere before UUcoder is 
closed down - as all UUcoder working files in the Scrap directory are 
deleted on closedown.

* Closing the main window part way through any operation will destroy 
the unsaved data (as per Acorn's guidelines).  To keep the data while 
closing the UUcoder main window, hold the shift key down when closing 
it.  This will iconise the window on the pinboard allowing it to be 
reopened by double clicking select on the window icon.

* UUcoder uses solid sprite dragging if you have it enabled on your 
machine.

* UUcoder will put the RISC OS filetype at the end of any file it codes 
(except files which already have PC file extensions).  When decoding 
files UUcoder will check whether there is a RISC OS filetype given 
after the file and will use it to filetype the decoded file.

* UUcoder will translate PC-type file extensions to RISC OS filetypes 
according to the host machines DOSMap settings and (if no DosMap 
setting exists) with supplied translations in the file 
Resources.Mapping.  This means that output files can be double clicked 
to load them into image translators such as ChangeFSI, Translatr or 
FYEO2 (.jpg, .gif and tif), an MPEG viewer (.mpg) or a de-archiver such 
as Spark (.arc .tar and .zip).

* Interactive Help is supported for the main window, dialogue boxes and 
menus.

* Combines and decodes files which have been downloaded on a PC where 
lines end <CR><LF> rather than <LF> in RISC OS.

* If UUcoder is given a file to decode which does not contain uucode it 
will check whether the contents are Mime base64 code and, if so, decode 
it.  At present this only works for the first section of base64 data in 
a file and will not reconstruct multi-part messages.


Background
==========

UUcoded files are put on the Internet in a wide range of forms.  This 
means that it is not always easy to detect the start and end of 
sections of code which need to be combined before decoding.  UUcoder 
makes intelligent guesses but I would welcome examples of files where 
UUcoder does not produce a valid output file.  In cases of doubt you 
can edit 'END' as the line after the last coded line of a file, this 
clearly signifies to UUcoder that it has reached the end of a section 
and to request another file.



Any comments, queries, donations or bug reports to:

John Allen.

E-mail: john@bramber.demon.co.uk 
Arcade: #917 
Silicon Village: 819991215
