Lexicon V1.0
(c) Copyright 1995 Ian Clarke

************************************************************
**   READ 'INSTRUCTIONS' CHAPTER BEFORE USING LEXICON!!   **
**     IT IS >>NOT<< OBVIOUS HOW TO USE THIS PROGRAM      **
************************************************************

***Table of Contents***
(Use a search to locate each section)
	Introduction
        Instructions
        	Setting up the system
        	Using the lexicon accessory
        	Using the configuration program
        	Tips
        Current Limitations
        Background
        The Future
        Legal Information
		Disclaimer
		Freeware
	Authors address
	Final Message


***Introduction***

	What does Lexicon do?
Lexicon permits the use of the mouse to simulate keyboard commands,
such as ordinary characters like: "AM7+=$ etc, non standard keys such
as HELP and UNDO and combinations of Control, Alternate, and shift
keys with ordinary characters.

	How can a MOUSE do that?
By doing what mouses (or mice?) do best - drawing shapes!  With Lex
(Lexicon) installed you can simulate any key or combination of keys by
holding down the right mouse button while you 'draw' a shape on the
screen, Lexicon will use a clever system to match this symbol with one
in it's library (they do not even have to be exactly the same), and
simulate the appropriate key being pressed, your computer will not
know the difference!

	What good is this?
While the keyboard is great for inputting long strings of data (such
as this text) into the computer, it is not so great at single
keystrokes which often require some elaborate finger athletics (try
[Control]+[Shift]+[Alternate] and 'P' with one hand to see what I
mean!).  Keyboard shortcuts end up not being so short after all. This
is particularly annoying when you are working with the mouse.  In
addition, menus which use the mouse are also quite cumbersome, try to
get to an item too quickly and you may easily select the wrong one!
Lexicon is extremely flexible, you could in theory use it to replace
the entire keyboard, however it is best to let the keyboard do what it
does best.

	Can I Edit the library?
EDIT IT?! You can create HUNDREDS of new ones if you want!!  Using the
Configuration program (LEXCONF.PRG) you can edit the library, add to
it, delete from it, and create new ones

	Will it work on my computer?
If it's a TOS compatible computer (i.e. Atari, or emulator) capable of
a minimum resolution of 640 X 200 and displaying 4 colours, it should.
 LEXCONF.PRG works best in medium resolution (640 X 200 with 4
colours) but will work in higher resolutions if necessary.  It should
run in 512K, the accessory takes up about 70k.

	How much does it cost?
NOTHING!!  You don't even have to feel guilty for not paying because
this program is not Shareware, it's Freeware!!  All I ask for is that
you write to me to tell be how much you like/dislike my program and
maybe how I could improve it, is that too much to ask?


***Instructions***

	Setting up the system.
Firstly you must set up Lex, to do this simply copy LEXICON.ACC to the
root directory of your boot drive (a disk if you have no hard drive,
or it's normally C: if you do) then copy DEFAULT.LEX to the same
place, if you can't find DEFAULT.LEX rename one of the other .LEX
files to DEFAULT.LEX and use it.  LEXICON.ACC loads this file when the
computer is first booted, it contains the 'library' of commands.

	Using the Lexicon accessory.
Now you must reboot your computer, the 'LEXICON' accessory will appear
in the DESK menu, but selecting this will have no effect.  To see if
Lex is there press the two mouse keys at the same time (pressing the
left mouse key slightly before the right will ensure success).  An
alert box will appear.
To try Lex out you should really know what is in the file, so we will
try NUM.LEX.  From the alert box select 'Reload' and select 'NUM.LEX'
from the LEXICON directory with the file-selector.  Lex will now adopt
this new library.
NUM.LEX contains the digits 1,2,3,4,5,6,7,8,9, and 0.
Load up a GEM based text editor, (Lex will work with any GEM program).
Create a new file if one is not already open.  Test things out by
typing a few numbers and then deleting them, now you are ready to go!
Press and HOLD DOWN the right mouse button, and pull it straight down
a couple of inches, now release it.  Hopefully a '1' will appear.  You
will notice that when you press the right mouse button the mouse
changes to a cross.  If the wrong number appears don't worry, remember
that when you create your own library Lex will become accustomed to
your 'mouse-writing'.

	Using the configuration program.
Before using LEXCONF.PRG switch off the accessory by pressing both
buttons at once and selecting 'OFF' in the alert box.
Load LEXCONF.PRG.  You will be presented with a file-selector to
choose a .LEX file to work with, you could begin a new one by
selecting 'Cancel', but we will have a look at one of the supplied
.LEX files, so select NUM.LEX.
When the main screen appears you will see several obvious commands
along the right hand side of the screen.  On the left you will see two
grey boxes, the first has the name of this 'Pattern' and the one below
it has the key which is selected.  These will be 'One' and '1'
respectively.
Below this you will see a large white box with a strange squiggle in
the middle of it.  This is a representation of the mouse movements
required to invoke that keypress.  Use the Next and Previous buttons
on the right to look at the other 'squiggles', some look more like the
supposed numbers than others.  You can change the 'Description' and
the 'Keypress' by clicking on the respective grey boxes, look at the
messages at the bottom of the screen when you do this.  To change the
'squiggle' simply draw a new one inside the box while holding down the
right mouse button.  You can also move from one pattern to another by
drawing them outside of this white box (again holding down the right
mouse button).  This can be used to test the library.
If you draw a pattern which is too similar to another one an alert box
will appear warning you of this, you can toggle this on and off with
the button above the large white box.

	Note on Configuration program:
** The ADD button when pressed will actually create a copy of the
current pattern, it's description and it's associated keypress, UNLESS
this is the last pattern in the library, in which case a blank pattern
will be created.  The reason for this is to allow rapid duplication of
patterns.


	Tips
** When drawing your shapes, the size is irrelevant, as is the speed
with which you draw the shape, but it is important that the pace is
the same ie. if you draw a line downward it is important that you draw
it all at about the same speed, if you slow down half way down the
line it may not be recognised (unless you did the same when creating
the library).  This is because Lex 'samples' the position of the mouse
at regular intervals based on time, not distance travelled.
** When creating a library certain shapes may give you trouble, For
example in creating the NUM.LEX library whenever I tried to get the
number three, I would get nine. When this happens try creating another
pattern which presses the same key (Use the ADD button - see note
above), and draw the shape again, maybe slightly differently.  Now
either of those shapes will respond.  You will notice that there are
more than one version of some numbers in the NUM.LEX file.
** If a pattern still gives trouble, try changing it completely.  If
it's a letter try using the other case, ie. if 'R' doesn't work, try
'r'.  You can use this in addition to the original.
** Practice drawing shapes

***Current Limitations***
** Lex will only work within GEM programs (ie. Those with a menu bar)
** The accessory will ignore any more than 100 patterns even though
the configuration program can create libraries with more.  This is due
to memory constraints.  In reality 100 patterns would be quite
excessive anyway.
** If you get an alert box saying 'Error 8' when you try to access the
file selector, you are probably using an extended selector, and Lex
has not reserved enough memory.  Lex does work with Selectric (a
popular file selector extension) but who knows what the future may
bring.  Either remove the file selector or don't use the 'Reload'
option.
** Lex can tend to interfere with 'redraws' slightly, causing small
pieces of your mouse pointer to be left behind, I cannot find a
solution to this at this time, suggestions are welcome, but it is a
very minor problem.  Sometimes the menu will fail to drop down after
using Lex, or a redraw will not be completed, clicking the left mouse
button will fix this.

***Background***
Lexicon was written in GFA Basic.  V1.0 was completed on the 5th of
July 1995. The idea for it is original as far as I know but if
someone thought of this type of thing before (and I don't mean
handwriting recognition) then my apologies to them.
Other programs which I have released include 'Genart', a 'quirky' (a
comment by the ST Review team) pattern generator, 'The Neural Network
Construction Kit', A foray into Artificial Intelligence, and it's
successor - 'The C Neural Network Toolkit'.  The N.N.C.K. is available
from Floppyshop and does not need programming experience, Genart is
also available from Floppyshop.  The C.N.N.T.K. can be found on some
bulletin boards or you can get it from me.  I mainly program in C but
use GFA Basic whenever possible.  I am 18 and hoping (Summer 1995) to
get into Edinburgh University to do Artificial Intelligence and
Computer Science in September.  I have almost every issue of ST Review
ever printed and am currently a devout reader of the new "Atari
World", it's even better than ST Review was!

***The Future***
If I get enough of a response from this program (i.e. one or more
letters) then I will continue development, if not, I won't, so I'm
counting on YOU to put pen to paper, now!!
If you (plural) do provide a response here are some of the features
you can look forward to:
* A Fix of that bloody redraw bug (although I don't have a clue how to
do it, any programmers who have experienced this thing before please
please help!)
* Improved recognition routine (although the present one is pretty
good already!)
* Automatic change of library based upon what program you have loaded
* Many other things I have yet to think of.

***Legal Information***
	Disclaimer
While every effort has been made to ensure this program functions
correctly, this set of programs is used at your own risk,  the author
cannot be held responsible for any loss or damage of data or hardware
or otherwise as a result of using this program.

	Freeware
This program is Freeware.  This means that this package (which
includes the accessory, the configuration program, the documentation
and any other files) remains the copyright of Ian Clarke, Balsoon
House, Bective, Navan, Co. Meath, Ireland.
I, the author, grant permission for this program to be duplicated and
used freely provided that 1)None of the included files are seperated
altered in any way  2)No charge is made for this program (This does
not apply to 'Public Domain' libraries who charge only for the service
of copying this software).

Authors Address:
		Ian Clarke
		 Balsoon House,
		  Bective,
		   Navan,
		    Co. Meath,
		     Ireland.

Phone: 046 21510
Fax:   046 21130

Thanks to:

Atari, GFA Datamedia, Moby, Works, Everest.

Just one final message:

 ***  *  *  ***   ***    **   ***   *****
*     *  *  *  *  *  *  *  *  *  *    *
***   *  *  ***   ***   *  *  ***     *
   *  *  *  *     *     *  *  *  *    *
***   ****  *     *      **   *  *    *

 ***  *  *   **   ***   ****  * * *   **   ***   ****   *
*     *  *  *  *  *  *  *     * * *  *  *  *  *  *      *
 **   ****  ****  ***   ***   * * *  ****  ***   ***    *
   *  *  *  *  *  *  *  *     * * *  *  *  *  *  *
***   *  *  *  *  *  *  ****   ***   *  *  *  *  ****   *