.HELP



                                HELP File for

                              FRANK'S READER - V12

                       Copyright (c) 1991, Frank F. Yates


   This file is the main documentation for Frank's Reader. It is designed as
   a tutorial, which you can read thru from beginning to end to learn about
   the Reader. It is a structured file which you can use the Reader to view,
   but you can use any convenient text viewer or editor to see it until you
   are ready to use the Reader itself. If you prefer hard copy, it could be
   be printed, but it is not designed for that. There are no page ejects.


.GETTING STARTED

   To learn about the Reader, I suggest that you use the Reader itself to
   examine this file, and test out each feature as it is explained here.
   To start the Reader, go to the directory where the HELP file is located
   and start the reader on it: R HELP

   The first thing you might want to do in the Reader is to press F1 and
   study the Command List that will be displayed. This list is hard coded
   in the program and is always available for reference except when the Reader
   is asking you for something specific, such as a file name or a mark
   definition. To exit the Command List, press ENTER to return to the 
   Selection List or Text display, whichever you were viewing.

   The next thing you might want to take a look at is the Parameters Menu (P)
   to see what is available there, maybe experiment with the colors. Then
   continue reading the HELP file to the end.

.
.              ----------- DETAILS OF READER COMMANDS -----------

Each of the Reader commands has a separate section following this one.
That is to make this file a convenient on-line reference. If you need quick
information about a particular command or parameter while you are using the 
reader, just open the HELP file and scan the list of Headers to pick out the 
section you want.

Most of the Reader commands are "Hot Keys"; just touch the key and it goes.
The only exceptions to that are the two "DOS" commands, which are really
more gateways than commands. You have to press ENTER after a DOS command, but 
this is what you usually do anyway, so that should seem natural. Normally you 
won't see a cursor anywhere on the Reader screens. This is because you are 
only going to touch one key at a time, and you don't need a cursor. If you DO 
see a cursor flashing somewhere, that is a giveaway that you are expected to 
enter a line of something and then press ENTER. This will happen when you are 
entering a DOS command or when the Reader is asking you for something, 
otherwise not.

.1-9           Header Line Number Listed

The number keys 1 thru 9 may be used to control the number of the header line
which is displayed in the LIST mode. When the data consists of messages or other
modules with a multi-line header structure, it will be helpful upon occasion
to list a header line other than the first.


.ESC           Exit the Reader

This is the command for exiting the Reader. Remember it, because there are 
only two graceful ways to turn the Reader off. This is one of them. The other
is to enter a null line twice in a row when the Reader is asking you for an
input file name. At that point it figures that if you don't want to look
at any file you probably don't want the Reader at all, so it quits.

.F1            HELP      Display the list of commands.

Many programs these days use F1 to summon on-line help, so Reader does too.
What you get in this case is a short list of the commands, sort of a reminder
list. If this isn't enough at the time, open this Help file and read the more
detailed explanations which are here.

When you are ready to leave the HELP menu, just press ENTER, or you could 
enter a Reader command here if you want to.

.ENTER         Toggle between List and Text Displays

The ENTER key is a Hot Key most of the time for the Reader. It is a toggle to
change the display mode between the Selection List and the Text of the selected
module. If you see a cursor flashing somewhere though, the Reader may be
asking you a question which will require an entered line to answer, terminated
by ENTER.

.SPACE Bar     Start or Stop Scrolling of Selection List or Text

When you are viewing the Selection List, pressing the Space Bar will start 
the reading of additional data from the input file. New modules will be added 
to the bottom of the list, and old modules will be scrolled off the top in the
normal mode. Pressing the Space Bar again will stop the scrolling.

If you have specified "KM=Yes" then scrolling will stop when the list of 
headers is full. You will have to delete some modules in order to read more 
data from the input file.

When you are viewing the text of the selected module, the Space Bar controls
scrolling of the text.

The scrolling speed of either display is controlled by the SPEED parameter,
which may be adjusted via the PARMS Menu or via the Parameter file (FR.PAR).

.HOME          Rewind the Input File

The HOME key closes the current input file, re-opens it, and begins the reading
of new data from the beginning of the file. The input will be added to the
bottom of the list of modules in memory, so in effect the file is "wrapped".
You can cycle thru it as many times as you wish by pressing HOME at the
End-of-File. Or, you can start over at any point. You don't have to go to
the end first.

.END           Delete all data in memory

This will completely erase your list of data modules. It does not affect the
input or output files. This command is useful in at least the following three
circumstances.

>> If you are about to switch to an unrelated input file and want to clear out
   the old data.

>> If you have looked at everything on the list and want to read new data
   into an empty screen.

>> If you are running short of string space, perhaps causing the reading of
   new data to stop. Pressing the END key is a quick way to free up lots of
   space.

.UP Arrow      Select the previous module, or scroll text up one line

The UP and DOWN arrow keys are used in both the Selection List and the Text 
modes. On the List display they control message selection. On the Text 
display they scroll the viewed text up or down one line for each key-press.

.DOWN Arrow    Select the Next module, or scroll text down one line

The UP and DOWN arrow keys are used in both the Selection List and the Text 
modes. On the List display they control message selection. On the Text 
display they scroll the viewed text up or down one line for each key-press.

.LEFT Arrow    Display Text of the Previous Module

The Left and Right Arrow keys permit you to jump from module to module viewing
text without going to the Selection List.

.RIGHT Arrow   Display Text of the Next Module

The Left and Right Arrow keys permit you to jump from module to module viewing
text without going to the Selection List.

.Page-Up       View the previous page of text (if any)

If a module is less than 24 lines in length, you will see it all when it is 
first selected, however some modules will be longer than that. The fastest way
to see more text is to "page" thru it with the Page-Down and Page-Up keys.

.Page-Down     View the next page of text (if any)

If a module is less than 24 lines in length, you will see it all when it is 
first selected, however some modules will be longer than that. The fastest way
to see more text is to "page" thru it with the Page-Down and Page-Up keys.

.D             Delete a Module

This command deletes the selected module from memory. It does not affect the 
input file, only Reader's working storage. If you want to delete all the 
current data and start with a clean slate, press END instead.

.I             Select or Change the INPUT file

When you press "I" the Reader will close your present input file (if any)
and ask you for the name of a new input file. You can reply with the name
of the file you want to see next, which may include the complete path
specification for files in other directories, or on other drives.

If you enter a null line (just ENTER), the Reader will display the names
of the files in the current directory, and ask you again for the file name.
If you enter a second null line, the Reader will terminate.

You can look at the contents of other directories while at the input file
name prompt by entering the path to that directory terminated with a 
backslash (\). You can do this as many times as you wish and finally enter
the name of a file for input.

Alternatively, of course, you could issue DOS directory commands from most
places in the reader before the "I" command. This is not quite as convenient,
but allows you to specify file masks. (eg. .DIR \BBS\*.R to see all the files
in the BBS directory which are of type "R").

.K             CLOSE the Input File

This command is provided so that you can free the input file prior to 
modifying it with an external program, such as your editor. The letter K was 
chosen because it sounds like "close" a little, and because it is located on 
the keyboard just below the "I" which opens the input file. The letter "C" was 
deliberately avoided because it is too commonly used to denote "Copy". The 
Reader does not have a "copy" function at this time, but may have one later.

.O             Select or Close the Output File

The "Output" file is the one the Reader will write to when you issue a Save 
command (press the letter S). Its name is displayed on the right side of the 
top line of the Selection List. You may change this file any time by the "O" 
command.

The first action taken when you issue "O" is to close the current output file.
This is required prior to opening a new output file. If you only want to close
the current output file but not open a new one, enter a null line when the
Reader asks you for the file name. Closing the file flushes the most recent
lines out of memory and releases the file. This is necessary to do if you are
going to read or write to that file with another program.

The output file (if any) is closed automatically when you exit the reader 
normally (ESC), so you need not think about closing it unless you are accessing
it via DOS commands while the Reader is still running.

You will note that the optional services provided for the Output (O) command
are different than those provided for the Input (I) command. This arrangement
has evolved out of the needs experienced when using these commands.

.P             PARAMETER MENUS

The "P" command takes you to the Reader Parameter Menus, where you see the
current values of all the controllable parameters, and can change them if you
choose. The first of three menus allows you to select which of the other
two menus you wish to see, the one for adjusting colors, or the one for all
other parameters.

.S             SAVE the selected module

Pressing the letter "S" saves the currently selected module, message, section,
or whatever to the current Output file. You may issue this command while you 
are looking at the Selection list, or while looking at text.

The output file name is displayed on the top of the Selection List. You can 
select, change, or close the output file by the "O" command. If you have not 
selected an output file prior to issuing a save command, the Reader will ask 
you at that time for the Output file name.

.DOS COMMANDS  How they work

From any of the Reader main displays (LIST, Text, Welcome, Help) you may
issue commands directly to DOS by prefixing them with a period ".". When you
press the period key, a cursor will appear in the System Message area at the
bottom of the screen. At that point the Reader is expecting a DOS command
line, and an ENTER when it is complete. The command you enter will be executed
and control will then be returned directly to where you issued the command 
from. If you enter just the "." with no command specified, you will "Shell" to
DOS, where you can perform complex operations involving multiple DOS commands.
When you are ready to return to the Reader, enter "exit" at a DOS prompt.

The Reader has a warning prompt that it will issue before executing any DOS
command to verify that you have not hit the "." by accident. This prompt can
be disabled if you like by the parm "DOSCheck=No".
.
.              ----------- DETAILS OF READER PARAMETERS ---------

These parameters all have internal defaults in the Reader. You can specify
the values of any of them at startup via the FR.PAR file if you wish. This
is desirable particularly if you have a color display because the internal 
default colors are all black and white. Finally, you may change any parameter 
on-line from the Reader via the "P" command, which brings up the Parameter 
Menus. The first menu just allows you to select one of the other two menus,
one for checking and setting the color options, and the other for all other
parameters.

The parameters are either Keywords or Flags. A "Keyword" is a structure of the 
form "parm=value" (with no internal spaces) which assigns a numeric or 
character value to a parameter. A "Flag" can have only two values, "Yes" or 
"No". To change a flag, you just enter the first two letters of the parameter 
name (or more) and its value will be reversed. The same is true from the 
Parameter File (FR.PAR). Including a Flag Variable name there will set the 
startup value to "Yes" whereas otherwise it would have been "No".

.COLORS        FC, BC, HFC, HBC, MFC, MBC, SFC, SMC

There are eight color options that you may choose for the Reader Display
The colors are controlled by numbers.

You don't have to memorize the color numbers or look them up because the 
actual colors are displayed with the numbers on the PARMS menu. What you see 
is what you get. Foreground colors may be in the range of 0 to 15, and 
background colors in the range 0 to 7. The background colors 8 thru 15 are
duplicates of the colors 0-7, but for foreground colors you get 16 different
choices.

The color symbols that you may assign numbers to are the following;

   FC, BC    List or Text display, foreground and background
   HFC, HBC  Highlighted (selected) items, foreground and background
   MFC, MBC  Menus, foreground and background
   SFC, SBC  System message colors, foreground and background

.MARK=mark     Select the current Header Mark

The "Header Mark" is the character or characters which are used by the Reader
to identify the beginning of a new data module. When it finds the Mark at the
beginning of a line of text, it knows that that the previous module has ended 
and a new one has begun. The marks are entirely arbitrary, you may choose 
anything you wish, and they may vary from file to file. It is only necessary 
that in any one file the selected mark does not appear at the beginning of any 
line which is not a header. A Mark may contain special characters, small 
letters or capitals, numbers, and blanks (leading, trailing, or embedded).
On the PARMS Menu the current Mark is displayed between two angles > < so
you can tell where the blanks are, if any.

When the Reader opens a new input file it searches its list of default marks
(which you gave it in your Parameter file, FR.PAR) to see which one 
corresponds with the beginning of the first line of the new file. If it finds 
a match, it will use that mark for that file, and you will never hear about 
it. If the Reader does not identify a mark, it will display a few lines from 
the new file and ask you to tell it what Mark to use.

Aside from the above, you may change the active Mark at any time on the Parms
Menu. You might want to do this, for example, if you had two or more different
sets of marks in a file to demark different groupings of the data.

.LL=n          Length of the Selection List

This is a keyword parmater, which determines the length of the Selection List
and also the number of modules which are stored in memory at any given time.
LL may have a value in the range of 1 to 19. Normally 19 would be used, so as
to get the greatest overview of the file contents. If you are viewing a file
which has unusully large modules however, for some files you may want to use
a shorter list. The internal storage capacity of the Reader is limited to just 
over 500 full length lines. If some of the lines are short, it will hold more. 
This number of lines must be divided among the modules in the list.

There are two ways you can keep track of the amount of internal storage being
used and yet available. You can turn on the optional line count header prefix
by parameter "SC", and you can observe the current Free Space in bytes 
displayed in the lower left corner of the Selection List display (FS= xxxxx).
When the Free Space gets under 8,000 bytes (enough for 100 lines of text) the
Reader will stop reading input data, and you will have to delete one or more
modules from the current list before you can read more from the input file.
If this happens frequently on a given dataset, you may want to shorten the 
list using the "LL" parameter, which will allow each module to be larger.

.SPEED=n       Scrolling Speed (for Selection List or Text scrolling)

The range of the Speed parameter is 1 to 10000000 (1E7). You may enter the 
digits or the exponential form. There is a wide range of speed control because 
of the difference in the speed of various computers and the different 
preferences of users. The slowest is 1, and the fastest is 1E7 (10000000). The 
default is 150, a number which the author likes.

.AM=Y/N        Automatic Mark Recognition Flag

If Yes, the first line of each input file is examined to see if it begins
with one of the default Header Marks. If so, that mark becomes the active
Mark for the file. If the AM Flag is No, then the current Mark (whether set
automatically or manually) remains in effect until changed manually or until
the AM Flag is set to Yes and a new file is opened. The automatic mode is
probably the most useful, but there are times when it is desirable to control
the mark manually. At such times, turn the AM flag off.

.EXPERT=Y/N    Expert Mode Flag, first of the Yes/No flags

The rest of the parameters are flags, which have the value "Yes" or "No"
They all default to "No" but may be turned on either in the Parameter file
or on-line. You just enter the first two letters (or more) of the flag name
and the current setting of the flag is reversed. This is called a "Toggle".

The Expert flag, if Yes, disables two "Check-Points", where ordinarily the
Reader would ask you to verify that you want to perform a command action.
One is the issuance of a DOS command, and the other is exiting the Reader
by pressing the ESC key. Both are powerful commands, so the Check-Points
may help you avoid accidents. However if you would rather accept a certain
risk in order to have your commands take immediate effect, you may set the
Expert Flag to Yes.

.KM=Y/N        Keep Modules

The "Keep Modules" flag ("Yes" or "No") determines whether or not data modules 
once loaded into memory will be kept until manually deleted. The default is 
No, which allows modules to scroll off the top of the header list as new 
modules are read into the bottom position. This mode is convenient for 
looking thru a large file to pick out items of interest. The other mode 
"Yes" requires positive action on your part to delete a module from memory. 
This mode is useful if you want to make some decision with respect to every 
module in the file, missing nothing.

.MUSIC=Y/N     Enable the musical tunes at Sign-On and Sign-Off

You may like these little tunes, or you may want to turn them off, 
particularly if others are sleeping nearby, so the Music Flag is provided
for this purpose.

.SC=Y/N        Show Count     (Optional prefix to the Selection List entries)

When the SC flag is Yes, the line count of each module is displayed in the 
Selection List as a prefix to each entry. This is useful when the modules 
are of widely varying sizes and you want to know how big each is.

This prefix affects only the Reader Selection List display. It does not affect 
the text display, and it does not affect the format of any modules which are
saved to another file.

.SM=Y/N        Show Mark      (Optional prefix for module headers)

When the SM flag is Yes, the Header Identification Mark is displayed in the 
selection list as a prefix to the module Headers. In some cases the Mark is 
desirable in the display. You can turn it on if you want to.

This prefix affects only the Selection List display. It does not affect 
the text display, and it does not affect the format of any modules which are
saved to another file.

.
.              --------------- OTHER INFORMATION ---------------

The following sections describe the principal Reader Displays and other design
features. Finally, some suggestions are offered as to ways in which the Reader
might be used in various applications.

.WELCOME SCREEN              and Input File Selection

If you start the Reader without specifying an input file, it will play a 
little tune and put up the Welcome Screen. This is for new users, and for
old users who are tired and need encouragement.

From the Welcome screen you can enter any Reader Command, look at the Help 
(F1), adjust some parameters (P), do something with DOS (.dos command), or 
just proceed by pressing ENTER as it tells you. The next thing you will see 
then is a request for the name of an input file.

If you can't think of the name of a file right off, just enter a null name
(PRESS ENTER) and Reader will show you the contents of the current directory
and ask again for a file name. If you decide that you really didn't want to
use the Reader right then, enter another null line, and the program will 
terminate.

If you are interested in foreign directories (anything other than the 
currently active directory), just enter the path name to that directory as
a file name (terminated with a final backslash \) and the Reader will show
you the names of the files in that directory. You may continue looking at
file directories this way until you find a file you want to process.

.SELECTION LIST              List of Headers of the active Modules

As soon as you have selected an input file, the Reader will load modules from
the input file until the module list is full. The maximum length of the list
is specified by a parameter (LL), which is initially 19. You will see the 
headers of these modules, and at the top of the screen in a different color 
you will see the name of the file you are accessing and the name of the Output 
file that you have selected (if any). All "Saves" go to the Output file.

One of the headers will be highlighted, indicating the "selected" module. This
is the one that you will see the text of if you press ENTER. You may select
a different module from the list by using the UP and DOWN arrow keys. If you
press the DOWN arrow from the bottom header, Reader will scroll the entire
list up by one and read a new module into the bottom position. You may start
continuous scrolling thru the file by pressing the SPACE Bar, and stop it
by pressing SPACE again. Modules scrolled off the top of the screen are 
discarded from memory, and are inaccessible unless you start over again from
the beginning of the file, which you can do by pressing the "Home" key.

If you want to prevent modules from being scrolled off the top of the list,
you can do this by going to the Parms Menu (P) and entering "KM", for
"Keep Modules". You will see the parameter value change from "No" to "Yes",
and after that you must delete modules to make room for new ones if you need 
it. Entering "KM" again toggles the mode back to the initial condition.

.TEXT DISPLAY                Text of the selected module

If you press the ENTER key while viewing the Selection List, you will see the 
text of the selected module, or the beginning of it (if a long module).
The first 23 lines of the module (module) will be displayed. If the display
is complete, you will hear a faint "tick" from the computer speaker, and see
"---end---" displayed as a system message at the bottom of the screen.

If there is more text, unseen, you may get to it by using the Up and Down
arrow keys, Page-Up/Page-Down, or scrolling with the SPACE Bar.

.PARAMETER MENUS             Parameter Values and On-Line Changes

The Reader has a number of adjustable parameters. They are all optional.
The Parameter file "FR.PAR" controls the initial values of parameters when
the Reader is started. See the INSTALLATION section of the READ.ME file for 
details about the installation of the FR.PAR file.

While on-line with the Reader, you may review and change the adjustable
parameters via the "P" command and the Parameter Menus which it calls up.
See the earlier section "DETAILS of READER PARAMETERS" in this HELP file.

.DATA FORMATS                of the Input and Output files

The Reader operates exclusively upon ASCII text files. No hidden control 
characters are used. This means that you can create and modify the input and 
output files from the Reader using your familiar text Editor. There are lots 
of good text editors. If you don't have a favorite, I recommend "SLED" by Sam 
Wilmott, which is available on most BBS's. SLED is shareware for $15, but 
unfortunately Sam's whereabouts are unknown, so there is no way you can send 
him the money. Hopefully he will show up some day and claim his just rewards.

What makes a text file "structured" for the Reader is the insertion of
"Header Marks" into the file, either by hand, by the program which produces
the file, or by a program which re-formats a data file obtained from another
source. A Header Mark is any character or short string of characters which
is placed at the beginning of each Header line to identify it as such, and by
convention is not allowed to appear at the beginning of any other line in the
file. In the case of this HELP file, the Header Mark being used is a period 
".". This is a nice mark because it is not obtrusive, and it does not normally
appear at the beginning of a line.

.INPUT FILE                  How to Select the Input File

The input file for the Reader can be selected in a variety of ways, and it can 
be changed at any time during reader operation by the "I" command. The name of 
the current input file is displayed on the top line of the Selection List. If 
the top line shows "IN:" with no file name, then no file is open for input.
There may still be data in the Reader list left over from a previous file.

When a new input file is selected, data is read from the new file and added to 
the current list until the list is full. If you want to scratch the old loaded 
data before opening a new file, or at any time, this can be done by the "END" 
key.

1. If you know the name of the file you want, specify that as the first
   parameter from the command line when you start the Reader (ie. >R file).

2. If you are not sure of the name, you can start the reader without
   specifying a file. The Reader will play a little tune and put up its
   Welcome Screen. If you press ENTER from this screen it will ask you for
   the input file name. You can enter the file name at this prompt, or if
   you are not sure, a null line will get you a list of the files in the
   current directory, from which you can choose a name.

3. You can take input from any file in any directory on any drive in your
   system. Just include the full path with the file name.

4. While at the file name prompt you may list the contents of another 
   directory by entering the path to that directory, ending in "\".

5. If you select your current Output file for input, the Reader will
   automatically close it for you first. No file can be open simultaneously
   for input and for output from the Reader.

.OUTPUT FILE                 More about the Output (Save) File

The Reader "Output" file is optional. It is needed only if you execute a
"Save" command during your session. The output file may be specified in the
following ways:

>> You can specify it as the second parameter from the command line when you
   start the Reader (eg: >R infile outfile)

>> You can use the "O" command at any time to select, change, or close the
   output file. When you enter "O" the Reader first closes the current output
   file (if any). Then it asks you for a new output file name. If you reply
   with a null line, Reader operation will resume without any output file
   open.

   This might be something you would want to do in some cases. It would be
   necessary prior to invoking an editor on the output file for example, or
   you might want the extra protection it would give you in case of a system
   crash. It would also prevent you from accidentally saving additional
   modules to the file after you are finished with it.

   If after an "O" command you give the Reader a valid new file name, it will
   open that file for subsequent saves. You will see the change in the Top
   Line of the Selection List Display.

>> Ordinarily you would would not want to specify your input file for output.
   It is always safer to write to an entirely new file, and then scratch the
   old input file after you have checked your work. To help prevent accidental
   writes to the input file, the Reader will ask you if you are sure that you
   want to do this whenever you specify the input file name for output. If you
   reply Yes, then Reader will close the file for input and open it for
   output. The currently loaded messages or modules will remain, and you can
   save them to another file if you wish.

.LARGE FILES                 How they are handled

The processing of a small file is relatively easy. You can display all of the
headers at once, the entire file. If the file is large, you cannot display all 
of the headers at once, and you cannot even load all of the data into memory 
at once. A strategy is needed to cope with this problem. The strategy which is
employed in Frank's Reader Version 9 is as follows:

A 19 module open-ended buffer is used. This is a nice size because all of the 
headers can be displayed at once, and there is still room on the display 
screen for other information which is needed. When you open a new file the 
buffer is filled with data and then reading stops. The input file remains 
open, but there is no more room in the buffer.

To read further into the large file you have to scratch some of the existing 
loaded data modules. Two ways are provided to do this. The default is simply 
to let them scroll off the top of the list while new modules are added to the 
bottom. This works very well if you are looking thru a file and picking out 
interesting things as you go. Just Press the Space Bar to start or stop 
scrolling in the file.

Sometimes however you want to make some positive disposition of each and every 
module. To provide for this, a parameter "KM" (Keep Modules) can be set to 
Yes. This will stop the discard of modules from the top of the list. You must 
manually delete modules to make room for more to be read in from the file.
Typically you will look at the modules from the top of the list down and copy 
the ones you want to keep to one or more output files, and then delete them 
from the list. The modules that you decide to discard, you just delete without 
saving. When the list is empty, scroll in some more data, and in this way 
work your way thru the entire large file. The file can be any size because 
there were never more than 19 modules loaded into memory at any one time.

.LARGE MODULES               How they are handled

A small module can be displayed entirely on the computer screen. The Reader
will display the first 23 lines from each module that is selected. If there 
are more than 23 lines in a module (often the case), you can use the standard
keys to examine it. UP and DOWN arrow keys will move the text up or down one
line at a time. Page-Up and Page-Down keys will page thru the text with no 
overlap. In addition, scrolling was provided, similar to that for the Headers.
Just press the SPACE Bar to start and stop the scrolling. The scrolling speed,
applicable to both Headers and Text, is an adjustable parameter.

Large modules can be a problem because of the space they require in storage.
See the next section on string space.

.STRING SPACE                Memory for the active data modules

The Reader can store about 500 lines of text in memory, divided among the
active modules. The remaining free-space is computed frequently, and 
displayed as a system message of the form FS: nnnnn where "nnnnn" is the 
number of bytes of free string space remaining. If this number gets too small, 
the Reader will stop reading new data until you free up space by deleting some 
modules. This will not be a problem unless some of the modules are unusually 
long. If you are encountering free space problems, you may want to turn on the 
Line Count Prefix (SC) so you can see which modules are creating the problem.

If you need to process a file which has a lot of large modules in it, you may
want to shorten the length of the module list (parameter "LL"). This will
allow each module to contain more lines. First you must delete modules to
a number not greater than the new limit that you are going to set, then change
the "LL" parmeter to the smaller limit and resume processing.

.
.PROCESSING METHODS          Part 1,  Document Editing

>> The most convenient way to use Frank's Reader when preparing a document
   is to start with the Reader as your operating platform from which to
   review the document as it emerges, and invoke your editor to make additions
   and changes as required. For example, as I am revising this HELP file for
   Version 10, I am running the Reader to look thru the document to see what
   needs to be changed. When I see something, I close the input file with
   the "K" command, and shell to my editor (called "ED") with ".ED HELP".

   When I complete the indicated change, I exit the editor and return to
   the Reader to have another look. First, I scratch the old data with "END",
   and then load the revised version with "I HELP". I just repeat this cycle
   as many times as is required. The Reader gives you an overview and sense
   of structure and perspective that you just don't get using the text editor
   by itself.

>> You could use your editor as the first program, and shell to the Reader
   for periodic reviews, but I think I like the first way better.

>> You can use the Reader to re-arrange the order in which the modules occur.
   Just write them out to a different file in the desired order. If the file
   has more than 19 modules, you might want to split it into parts first.


.PROCESSING METHODS          Part 2,  Selection and Sorting

>> To Re-order the modules in a file, write them to a new file in the desired
   order, deleting each as it is written out, so that the input list is
   consumed and every module is copied just once and only once. If you don't
   delete each after you write it out, you run the risk of doing one twice
   or of missing one altogether.

>> To sort a large file into several smaller files, you probably should turn 
   off the scrolling discard (KM=Yes), and work thru the file one module at a 
   time, changing the output file as often as you have to.

>> You can use the Reader to collect selected modules of information from a
   variety of different files and to combine them into a new output file.
   You can retain some of the modules in memory if you wish, since the 
   input operation is additive (new input goes to the bottom of the current
   list). Otherwise, you can use the new output file as the collection pot
   and wipe your Reader list clean (END key) before reading each new file.

.PROCESSING METHODS          Part 3,  Getting Messages from CompuServe

Compuserve transmits its messages primarily in ASCII. Other transmission
modes are available, but they are outside the scope of this document.
You just turn on the "Capture" feature of your communication program and
issue the appropriate commands to cause the messages to be sent. The best
command is probably "MES;SEL;ALL;ALL" because that puts the messages in
order by thread and by section. For details and help on working with
CompuServe Forums, go to the Practice Forum (GO PRACTICE), read the files
available there, read the messages, and talk with the SYSOPS. They make it
all seem easy.

Once you have captured a file of Compuserve Messages, it is possible to view
that file directly from Frank's Reader. It would be better to edit out the
messages to a separate file however to reduce the size of the file and so that
the file would begin with a message. If line 1 is the beginning of a message
then FR can automatically recognize the file format. Otherwise you will have
to enter the Header Mark to be used (#: for Compuserve).

Previous releases of FR needed to have the message headers re-formatted by
the associated program "FIXCIS". With Version 12 this is no longer necessary,
though you may do so if you prefer that format for your database.


.PROCESSING METHODS          Part 4,  Getting Messages from PCBoard BBSs

From PCBoard Bulletin Board Systems you have a variety of options. Probably
the easiest is to issue the "R A Z" command directly to PCBoard. It will
collect together all the new messages from the conferences which you have 
selected, compress them, and download them to you using the protocol which you 
have chosen. After this file has been received it must be "un-zipped" before
it can be used with the Reader. You may want to set up a batch procedure to
do this.

The Header Mark for PCBoard files is "Date:", which string appears at the
beginning of every message. 

Alternatively, if you have a Mail Reader such as the "Silly Little Mail Reader",
you can use that to receive the messages from PCBoard thru a Mail Door. If you
"save" some or all of the messages from SLMR then FR can process the save files
(which SLMR can not do).


.PROCESSING METHODS          Part 5,  Replying to Messages

>> When replying to Messages it is convenient to just open the Reader Output 
   to a file called "REPLY" in the appropriate directory. Then scan thru the 
   input data and save the interesting messages.

>> Once you have your REPLY file containing the messages that you want to
   reply to, use your text editor to convert them into return messages.
   The exact treatment required depends upon what services your BBS or
   Information Service provides.

>> For CompuServe replies, you can insert message routing commands into
   your REPLY file and send the whole thing up in one ASCII Upload. See
   "FAST.DOC" in Library 1 of the PRACTICE FORUM for details.

>> For PCBoard BBS systems with a Mail Door, you can do the same thing by
   using "Reply Utilities" (REPUTIL4.ZIP). Just prefix each message with
   a line defining to whom the message goes, the conference, etc. as described
   in the REPUTIL4 package, then convert the batch of messages into a
   compressed "REP Packet" (using a BAT procedure) and upload the REP Packet
   into the BBS Mail Door.

>> For other BBSs, it will be necessary to break out each message into a
   separate file and upload them one at a time into the Message Editor,
   entering the routing information by hand for each message.

