FlUtils Suite : User Notes

The FlUtils suite consists of a set of useful but independent
utilities for the Psion Series 3. This file gives brief notes on
installing and using the applications.

Copyright

The software and data in the application suite is Freeware and is not
public domain. You may copy and use it provided no commercial
transaction is involved. This software is provided "as is", and is
used at your own risk.

Installation

To install all utilities: copy Flutils1.als and Flutils2.als into any
\APP directory, all the *.fl0, *.fl1 and *.fl2 files into any \OPO
directory and *.pic and *.opd into any \OPD. Each program may be
stored on separate local drives if you wish. Install Flutils1.als and
Flutils2.als on the system screen, and the utilities should appear
under these icons.

Each utility is independent. If you don't require an individual
utility, simply delete it and its data files. Do not delete
Flutils.fl0 as this is a library shared by a number of the utilities.

Note: *.fl1 utilities appear in the list under the Flutils1.als icon,
*.fl2 under Flutils2.als. If you wish to move a utility from one list
to the other, simply rename the file accordingly.

Ascii

Files: Ascii.fl1

Description: Simple Ascii table

Displays a dialog containing the Series 3 characters set, from codes
32 to 256 inclusive. Moving the highlight and pressing "Enter" zooms
in on a line, allowing the code for a particular character to be
pinpointed. "Esc" zooms out a level, or exits.

Batman

Files: Batman.fl2

Description: Real time battery checker

Displays and constantly updates the battery levels, as reported by
the operating system. Written as a single OPL procedure so will
continue to run even if the SSD doors are opened, allowing the backup
battery to be rotated. Press "Esc" to exit.

Warning: Avoid accidentally leaving Batman running. It will run
indefinitely and the S3 will not be able to auto power off.

Filter

Files: Filter.fl2

Description: Simple text file filter

Allows the new-line convention to be set and unnecessary spaces to be
stripped from plain text files.

The new-line markers can be changed to either "Unix" ($0a) or "DOS"
($0d,$0a) format. Any $0d characters in the input file are ignored,
and the remaining input treated as "Unix" format.

"Leave" spaces setting outputs space and tab characters exactly as
they appear in the input file. "Drop EOLN" removes trailing spaces at
the end of lines. "Squeeze" drops trailing spaces and replaces
consecutive spaces within a line with a single one.

Simply set the source and destination files, choose the new-line and
spaces option and press "Enter". The source and destination files
_must_ be different. The input file will be echoed to the screen as
the filtering progresses.

Graph

Files: Graph.fl1

Description: Graphical and statistical calculator

The largest and most complicated program in the suite, Graph aims to
provide the functionality of graphical and statistical calculators.
It is able to store and plot up to three simultaneous equations and
perform regression calculations on sample data.

Note: In order to make direct use if the EVAL function, Graph uses a
Calc memory. Before the application will run, M9 must be named "X".
If this not done, Graph will display an error and exit.

File menu - maintenance of sample data files.

Once opened or created, data files can be viewed or edited with the
"Edit" option. This has its own menu including "Function" which
applies a function to all the X and Y values in the data file (eg.
taking the ln() of the values to plot log graphs and performing
logarithmic regression).

"Plot" plots data files on the current graph, after the graph "Range"
and type (under the "Settings" option) have been set. 

Statistics menu - calculate and display statistics from current
sample data file.

Displays various statistics from the current data file. A linear
regression line can also be plotted on the graph and its equation
saved to one of the three equation memories.

Analysis menu - calculations based on graph equations (not very
accurate yet, I'm afraid).

Graph menu - controls graphical display and plots equations.

"Range" controls the X and Y size of the graph, and the interval of
the scale markers.

"Polar" controls the minimum and maximum "theta" for polar equation
plotting.

"Graph" allows the definition and plotting of up to three equations.
Each equation can be either cartesian or polar, or can be ignored for
the current chart. Graph plots can be aborted with the "Esc" key.

"Trace" displays a cursor that can walk a plotted equation line. It
has its own menu that includes a zoom option, that rescales the graph
centred on the current cursor position.

"Clear" clears the current graph and redraws the axis.

Special menu - miscellaneous items.

"Settings" controls various options: the detail in the line graph
plotting; the type of graph plotted from the sample data, either X/Y
scatter graph or frequency graphs of either the X or Y values; and
the form or frequency graphs if selected, either bar chart or line
graph (when frequency graphs are plotted, the range of the individual
bars is determined by the X scale in the "Ranges" dialog).

"Exit" quits the Graph program.

Hex

Files: Hex.fl2

Description: Hexadecimal file viewer and editor

Allows any file to be viewed in either a pure hexadecimal or mixed
Ascii and Hex display ("T" toggles between displays).  

If opened in "Read/Write" mode, individual bytes in the file can be
altered (alterations are written directly to disk so avoid editing
files on Flash SSD). "Edit" and "Jump to" dialogs accept any integer
valued expression, use "%" and "&" prefixes for Ascii and Hexadecimal
values.

"Find" option can search for binary strings. Find string is read as a
simple Ascii string, unless a "<" is found. If found, the "<" starts
a simple byte valued expression, terminated with a ">". Values can be
in decimal (eg. "<32>") or hex (eg. "<&ff>"). To search for a "<"
character, enter "<<>".

Press "Menu" for other options.

Pixel

Files: Pixel.fl2

Description: Picture file editor

A simple picture file editor with two editing buffers, copy/paste and
magnify mode. Cursor is moved using arrow keys, "Space" applies
current tool, "Enter" begins selecting a range at the current point.
Press "Menu" for options. Pixel is not quite finished off but it is
small and functional.

Timer

Files: Timer.fl1

Description: General purpose stopwatch

Provides twin 100 hour timers operating like a chess clock, each with
a private lap time display. Currently active option keys are
displayed at the bottom of the screen. Being based on the system
time, timers will continue to run even when the S3 is switched off.
However accuracy is lost each time a timer is restarted.

Warning: Avoid accidentally leaving Timer running. It will run
indefinitely and the S3 will not be able to auto power off. To
prevent this, Timer includes a sleep mode ("Menu" key). When
sleeping, the clock continues to run but the display is not updated,
allowing the S3 to turn off safely.

Units

Files: Units.fl1, Units.odb

Description: Programmable units conversion calculator

Units can either be used directly or from within Calc. In stand alone
mode, simply enter the source and destination units, and the amount
you want to convert, the press "Enter". Press "Esc" to quit. To use
the units within Calc load the Units.fl1 module. This provides the
function conv:(from$,to$,value).

Unit types must be defined and be compatible for conversion to
succeed. Units will only be recognised if an exact match, either full
name or abbreviation, is found in the database. All length units can
be suffixed with "2" and "3" for area and volume units respectively
(eg. "in2" for square inches).

The units database, Units.odb, can be edited with the Data
application. Each record defines a unit and has four fields: the full
name (plural), an abbreviation, a type number and a value.

Some type numbers are reserved: 0-temperature, 1-length, 2-area,
3-volume. The standard database also uses types: 4-mass, 5-power.
Conversion will only succeed if the type numbers are compatible
(Units will automatically convert length units to area or volume
units when a "2" or "3" suffix is entered by the user).

Unit sizes are defined either as an absolute number of base units or
as a multiple of a compatible unit. Current base types are: length-m,
area-m2, volume-m3, mass-kg, power-watts. Relative sizes are defined
as a floating number followed by a "*" and a compatible type (eg.
feet="12*in", cc="1*cm3"). Chains of such relative definitions are
permitted (eg. yards="3*ft" when ft="12*in") provided no cycles are
present.

Warning: Do not alter the type 0 (temperature) records - temperature
conversion is a built in primitive.

Yearview

Files: Yearview.fl1, Yearview.pic

Description: Yearview for S3 (not S3a) Agenda files

Displays a year planner and allows individual days' appointments to
be inspected (editing is not possible). Select the Agenda file, the
year, the dividing time between AM and PM appointments and a filter
pattern. Yearview will display all the timed appointments and
day-notes for the year that match the pattern.

Each day is represented by a square. Two ticks at the bottom of the
square indicate the presence of AM and PM appointments respectively.
A box in the upper-left corner shows a one off day-note. Repeated
day-notes appear in the top right corner. This box will be filled if
the repeat frequency is annual.

Once plotted, the year view can be walked using the cursor keys and a
day's appointments viewed with the "Enter" key. Psion left and right
move by a weekly and Psion up and down by month-by-date increments.
Highlights mark the day of the week and the month, and selected date
is shown in the top left of the screen. Press "Menu" for options.

When drawing the year and viewing an individual day's appointments,
Yearview needs to open the agenda file for reading. These operations
are not possible if Agenda currently has the file open. However, once
the plot is complete, the agenda file can be loaded into Agenda once
more and the completed year view left open (of course any updates to
the Agenda will not show on the Yearview until it is redrawn).

Note: Yearview cannot yet display repeated month-by-day items.

Feedback

If you have any comments, bug reports or suggestions about the
programs in this application suite, please let me know.

David Rushall, "Markers End", Mounts Lane, Newnham, Northants, UK,
NN11 6ES.

I can also be contacted by Email until Autumn 1994: dr@cs.man.ac.uk



