
                    Electronic Mail / Bulletin Board Browser
                    ========================================

                   Stewart Brodie , University of Southampton
                 Department of Electronics and Computer Science


INTRODUCTION:
=============

  I needed a way of reading mail/bulletin board articles at leisure. Since I
download a lot of software from Newcastle, I also needed a quick and easy
way of reconstituting the uucode.  So I wrote a desktop editor which was
capable of displaying messages in Edit and capable to rejoining split
uucode.

Please copy this software freely, but keep it all together with all
documentation and send any changes back to me so that an official version
can be kept up-to-date.

PURPOSE:
========

  The purpose of this program is to allow a user of a UNIX system to read a
copy his or her mail folder from a place where an Archimedes can load it.
  In my case at Southampton, I have to download my folders onto MS-DOS discs
which I read back in my hall of residence with an MS-DOS disc reader.

See note about Restamp below.

INSTRUCTIONS:
=============

  To use, run the application and it will install an icon on the icon bar.
Then just drag a folder file onto the icon. The program will attempt to
load the file and will then scan it picking out the relevant headers and
setting up pointers. This may take some time in a large file. Progress is
displayed via the hourglass percentage call. If after loading the program
discovers  that a line terminator other than CR,LF has been used, it will
reload the file substituting CR,LF for whatever terminator (CR;LF or LF,CR)
is used. (This is inefficient but easier to program except for LF,CR which
is just replaced globally)

  Once the scan is complete, a window will be opened. By default it is at
full size and takes over much of the desktop. If this is not to your liking,
then load the Templates file into !FormEd, drag the window to the position
that you would like it to appear by default and then save the file being
very careful not to alter anything else.
  
  Up to ten messages can be accomodated in the window at a time. If there
are more than 10 messages in the file then the NEXT button at the top of 
the window will be available. Once on the next page, you can of course use
the PREV button to go back a page. The number of messages in the file is
displayed at the top of the window next to the buttons and the name of the
folder file.

EXPORTING MESSAGES:
===================

  To view a message, drag it to a text editor eg. Edit.  This will result
in the message being sent to Edit either by Memory Data Transfer or by the
<Wimp$Scrap> protocol. Memory data transfer is only used in certain easy
cases, since the options explained below affect how the file is exported.

  If you prefer, you may double click on the item. This will save the file
as <Wimp$Scrap> and then broadcast a DataOpen message so that Edit can load
it. On receipt of the DataLoadAck message, ELM will delete the scrap file.

  In both cases, any part of the message may be picked up from the status
field to the subject field

OPTIONS: 
========

  There are four options available in the window. They are also now on the
menu and their status can be toggled there. They are:

1) Keep headers when exporting messages

  When you export messages you have the option of either stripping the 
headers off, or leaving them on to look out. (Defaults to off). NOTE that
this only removes the headers from the front of the file. If this was a
forwarded message, the headers from the originator would still be present.

2) Convert CR,LF to LF

  UNIX seems to keep end of line characters as the CR,LF pair. Although
useful from BASIC's point of view in decoding the files, Edit displays CRs
as [0d] characters. This option will remove all the CRs from the outgoing
file. If you have a text editor or word processor that recognises and 
caters for CR,LF (eg. Pipedream) then you don't need this option.  Data
transfer is not used if this option is on, which is the default.

3) Stamp/Retype existing files

  It is convenient to be able to double-click on a folder icon to load it.
When set, this option will stamp the incoming file as type &7ef - Mailfile.

  It is important to realise that if this option is on, the source file must
come from a filing system which understands *SetType.

4) Reconstruct multipart message

  When downloaded large files from Newcastle's info-server for example, the
reply comes as mail in several chunks. These normally need to have the 
headers removed and be concatenated in the right order for sending (usually)
into Spark. When this option is set, dragging ANY PART of what the program
thinks is a multi-part file will result in one file being output in the
correct format. Note that this option (when a program is detected) forces
the Convert CR,LF to LF to on, and Keep Headers to off for the duration of
the transfer.  Data transfer protocol is not used with this option. Defaults
to on. Now should recognise stuff from lancs.pdsoft but operation cannot be
guaranteed for that as it has not been tested yet. If there is a problem
with the file, the program outputs as much of the file as is present. It
looks for the first part, then Part 2, Part 3 until no more can be found. If
one is missing, the reconstruction stops.

BUGS:
=====

  If a task-to-task transfer is performed and there is not enough machine
memory left for the receiver to put the data, Edit ( & Pipedream ) tends to
crash with the usual "fatal internal error of type 5" excuse for quitting.
  This isn't my fault.

  Sometimes, the text of the numbering icons disappears!

FILES:
======

!Boot,
!Help,
!Run,
!RunImage,
!Sprites,
Templates,
Messages  - all pretty obvious
Mail      - subdirectory for conveniently holding copies of folders.

The 'mail' subdirectory should be present as the program attempts to open it
on the desktop when it loads.  Comment this line out in the !Run file if you
don't want this to happen.

CONTACT:
========

E-mail is: snb90@uk.ac.soton.ecs (until July 1993)

I can be reached by snail-mail at the address below. 
Stewart Brodie
15 Dowding Road
Biggin Hill
Kent
TN16 3BE

DISCLAIMER:
===========

I can accept no responsibility for the loss or corruption of data due to the
use of my program.  It may get confused if there are lines beginning with
the text 'From' although UNIX mailer should have inserted > characters to
prevent this.  I make no guarantees whether the reconstruction will always
function as expected - sometimes extra newlines are inserted by UNIX mailer
for some reason. If this should happen, try using Edit to examine what has
happened by pressing F5 and going to lines 1000,2000,3000 etc.

VERSIONS:
=========

If you make any alterations to my software, please mail me about it so that
I can update my version numbers accordingly. Current (released) versions
info:

1.00 : First edition
       Message Info window added so that you can see the full subject field
       of the message and the sender field and the date field

1.01 : All references to Unix's ELM mailer removed since this may breach
       copyright or other trademark regulations.
       Sprites redesigned to be smarter.
       Size of message now included in the Info window
       Total size of file now in Info window
       Double click on Mailfile causes !Mailer to run and load file
       Double click on non-existent message doesn't cause Address Exception
       Suitable error message when there isn't enough memory
       Title of window is now the folder's full pathname
