                    SOFTSWITCH 6.4 DEMO GUIDE

INTRODUCTION

     SoftSwitch provides alternative input capabilities for the
IBM and compatible personal computers (PC), allowing it to be
controlled by one or more adaptive ("ability") switches.

THIS "DEMONSTRATION" VERSION USES A 2 OR 3 BUTTON MOUSE TO 
EMULATE THE SWITCHES.  WITH APPROPRIATE SWITCH ADAPTERS, 
SOFTSWITCH CAN NORMALLY BE CONFIGURED FOR 1-8 SWITCHES. 

     SoftSwitch is primarily intended for anyone who has
difficulty operating the computer's keyboard or mouse.  This
could be anyone from a young child to an older person who has
restricted use of their fingers.  It could be someone
recuperating from an accident, or someone with a physical or
intellectual disability.  SoftSwitch can also be used where
access to a full keyboard is unnecessary or undesirable.

     SoftSwitch works in parallel with your existing keyboard or
mouse, allowing supplemental or co-operative use.  It can be
configured to provide either keystrokes equivalent to your
keyboard, or mouse operations equivalent to your mouse, depending
on the program you wish to control. You should think of
SoftSwitch as a tool by which you can make a wide range of DOS
programs available to switch users.  These programs would
otherwise be inaccessible.


USING SOFTSWITCH

     In order for SoftSwitch to work with your programs, you will
need to run the driver prior to running your program.  When you
first run the driver it loads into your computer's memory and
remains resident.  The driver takes up about 24 Kbytes of system
memory until you explicitly remove it or reset/power off your
computer.

      You may run the driver as many times as you like to change
the emulation mode to suit your particular program. The driver
may be loaded from the DOS prompt, from a DOS batch file, or via
a menu program if you are using one.

Loading the SoftSwitch driver

     The simplest way to active the driver is type it's name at
the DOS prompt.  If you include the drive letter and directory it
should work no matter what drive or directory you are in.  On a
hard drive, type the following,

                         C:\SS\SS <return>        

     The examples in the remainder of this manual use full path
names and assume drive C:.  You should make adjustments as
appropriate.

Using a mouse to emulate switches

     The SoftSwitch demo allows mouse buttons to be used instead
of adaptive switches; thus, a switch adapter is not required. 
The mouse buttons correspond to Switch A and Switch B.  A third
button if present, moves the cursor left.

     In order to use a mouse in this way, your mouse driver must
be loaded prior to loading the Softswitch driver. Any two or
three button mouse using any interface (serial, bus or PS/2) can
be used.

     To use your mouse to emulate switches, load the SoftSwitch
driver as follows:

               SS /O  or  SS /O=X

     where X is the number of switches you wish to emulate (1-3).

     In order to minimise conflicts, regular use of your mouse
buttons is not available and mouse movements are ignored.  You
can use the mouse buttons as SoftSwitch switches without
restrictions except that you cannot emulating a mouse.

Using Morse code to generate keystrokes

     SoftSwitch provides a method of generating keystrokes with
one or two switches by using Morse code.  Traditionally, Morse
codes are generated using combinations of short and long switch
presses (dots and dashes). Standard Morse codes are used for the
alphanumeric characters with extra codes to cover the remaining
keys on the IBM extended keyboard.

     Morse code with a single switch is similar when using
SoftSwitch.  A short switch press generates a dot and a long
switch press generates a dash.  The time period that separates a
dot and a dash is called the transition time.  This can be
changed to suit the user. 

     When using two switches, the dot is generated by switch A
and the dash generated by switch B.  This allows quicker Morse
entry and is ideal for two way switches such as sip and puff
switches.

     The Shift, CapsLock, Ctrl, and Alt keys are supported with
dedicated Morse codes.  The Shift, Ctrl, and Alt codes work for
the next regular key code only.  The CapsLock code holds Shift on
until the CapsLock code is entered again.  In addition, a
Function code is included to allow access to the function keys
and other keys.  This toggles like the CapsLock code.  A list of
Morse codes supported by SoftSwitch is given in Appendix 1.

     To enable Morse code, install the driver as follows:

                    C:\SS\SS /O /X

     This command will load the driver for single switch Morse
with the transition time between dot and dash set to about a
third of a second.

     The number of switches and the transition time can be set by
installing the driver as follows:

                    C:\SS\SS /O /X=mnS

where m is the number of switches, either 1 or 2 and n is a
number between 1 and 9 to set the transition time in
approximately one eighth of a second steps.  The transition time
can also be set using a configuration file.

     The letter S (included with or without the m or n
parameters) activates a status bar in the top right corner of the
screen.  The status bar will indicate the current status of the
Shift, Ctrl and Alt keys with the letters S, C and A
respectively.  It will also show whether the function keys (F)
are active.

Using the Onscreen Keyboard

     The SoftSwitch driver can install an onscreen keyboard. 
This displays a virtual keyboard on your screen on top of the
currently running program.  You can use switches, the keyboard
cursor keys, a mouse, or any other pointing device that provides
signals equivalent to a mouse, to highlight and select one of the
keys and return it to the running program.  This allows you to
type text, numbers and special characters using SoftSwitch
instead of using a keyboard.  For single switch users, the
onscreen keyboard can also be set up to scan.

     The Onscreen keyboard will work best when the screen is in a
40 column or more text display mode rather than a graphics
display mode.  If you call up the keyboard while in a graphics
display mode, the keyboard will still operate, but it will not
properly restore the screen when you remove the keyboard.

     If you wish to use a mouse to move the highlight ("point-
and-click"), include the /N option and install as follows:

                    C:\SS\SS /N /K

     To display the keyboard, hold down the Shift key on the
keyboard and pressing Space.

     You can use the keyboard cursor keys and space bar or mouse
movements and the left mouse button to move to and select a key.  

     There is a dwell option available so that you don't have to
select keys.  A short time after moving to a key, the key will be
automatically selected as long as you don't move off the key. 
This allows you to move across keys to the one you want.  To
enable the dwell option, install the driver as follows:

               C:\SS\SS /N /K*x

     where x is a number to set the dwell time between 1 and 9. 
The number sets the dwell in 1/4 seconds.

Scanning

     Three modes of scanning are provided.  These are referred to
as automatic scanning, press to scan and release time scanning.  

     With automatic scanning, the highlight bar will
automatically scan at a set rate as soon as the keyboard is
displayed.  You press the switch to select a key when the bar
reaches the desired key.  

     With press to scan, you hold the switch on to scan and
release it when you reach the desired key.  

     With release time scanning, you press the switch for a short
time then release to move the highlight bar.  When the desired
key is reached, you press the switch and hold for a longer time
(wait for the beep), then release to select the key.

     To enable automatic scanning, install the driver as follows.

                    C:\SS\SS /O /K=x

     where x is a number to set the scanning rate between 0 and
9.  The number sets the scan rate in 1/4 seconds.  A value of 0
effectively disables scanning.  Setting /K=1 causes the highlight
to move every 1/4 second, whereas setting /K=8 causes the
highlight to move every 2 seconds.

     When the keyboard is displayed, the highlight will move
vertically at the rate set.  Wait until the highlight is on the
line you want, then press the switch.  The highlight will now
change colour and move across the line.  When it reaches the
desired key, press the switch a second time to return that key. 
If you miss the desired key, wait until the highlight reaches the
end of the line.  It will then go back to vertical scanning and
you can repeat the process.

     To enable press to scan, install the driver as follows.

                    C:\SS\SS /O /K-x

     When the keyboard is displayed, the highlight will be
stationary.  Press and hold the switch to move vertically at the
rate set.  Wait until the highlight is on the line you want, then
release the switch.  The highlight will now change colour.  Press
and hold again to move across the line.  When the highlight
reaches the desired key, release the switch again to return that
key.  If you miss the desired key, wait until the highlight
reaches the end of the line.  It will then go back to vertical
scanning and you can repeat the process.

     To enable release time scanning, install the driver as
follows:

                    C:\SS\SS /O /K#x

     When the keyboard is displayed, the highlight will be
stationary.  Press and release the switch quickly to move
vertically.  When the highlight is on the line you want, press
the switch, wait for the beep then release the switch.  The
highlight will now change colour.  Press and release quickly
again to move across the line.  When the highlight reaches the
desired key, press, hold and relecse the switch again to return
that key.  If you release too soon and miss the desired key,
continue until the highlight reaches the end of the line.  It
will then go back to vertical movement and you can repeat the
process.

     If you wish to select an alternative colour scheme, install
the driver as follows.

     C:\SS\SS /K=xy  or /K-xy  or /K#xy  or /K*xy

     where x sets the scanning rate or dwell time as above and Y
is a letter between A and E to set the colour scheme as follows.

          A    -    monochrome (black and white only)
          B    -    standard colour scheme
          C..J -    alternate colour schemes

The number x can be omitted if not required, but if included
should precede the letter.  These commands can be repeated after
the driver is loaded to change either the scan rate, dwell time
or colour scheme.

     The colour schemes from A through to F use the standard
sixteen colours available in text and graphics screen modes which
include both low and high intensity colours.  The colour schemes
from G through to J are similar except that they only use low
intensity colours.

     When using the onscreen keyboard, four special keys are
provided to allow you to access all the possible keys on a
standard keyboard.  Initially, lower case characters and numbers
are displayed.  Select the Shift key to access capital letters
and special symbols.  The shift effect will be cancelled after
selecting the next keystroke.  If you wish to lock shift, select
Shift twice in a row.  A lock indicator S will appear in the
lower right portion of the keyboard.  Press Shift again to
cancel.

     Select the Functn key to get function keys and cursor
movement keys.  This will remain locked until Functn is selected
again.  Select Ctrl and Alt to get control and alternate keys. 
These apply for the next key selected only unless locked as for
the Shift key (with lock indicators C and A).  Shift, Ctrl and
Alt keys can also be selected in combination with the Functn key
to access these effects with function keys and cursor keys.

     While the Onscreen keyboard is displayed, all other program
activity is paused, just as if you had pressed the Pause key.  If
the application was waiting for a keystroke anyway, as for
example, a word processor, this will not be apparent.  However,
if the application was performing some other function while
checking to see if a key has been pressed, that other activity
will be paused while the Onscreen keyboard is displayed.

     Sometimes the onscreen keyboard can obscure a vital part of
the display.  If you wish to temporarily view all of the screen,
select  on the onscreen keyboard to clear it from the display. 
Press any switch, key, or mouse button, or move the mouse to
restore the onscreen keyboard.

     Press Esc on the keyboard to remove the onscreen keyboard
from the display.

Using and calibrating a proportional joystick

     SoftSwitch allows a proportional joystick to be used instead
of a switch.  This is useful because a switch adapter is not
required.  The joystick buttons correspond to Switch A and Switch
B.  Joystick movements may be translated into mouse movements.

     A standard games port supports two proportional joysticks. 
The driver will automatically find and use a connected primary or
secondary joystick when no adapter is present. If a proportional
joystick is found, you will be asked to calibrate it for use with
SoftSwitch by moving it to the centre position then moving it
left, right up and down.  Follow the instructions on screen.  If
your joystick has adjusters for joystick movement, make sure
these are centred before starting the calibration.  If your
joystick has an auto-fire capability, make sure this is turned
off.  Finally, if your joystick has the capability to self-centre,
make sure this is enabled, especially for mouse emulation.

     Calibration is only required when the driver is first
loaded.  The calibration settings will be stored in a file SS.PJC
in the current directory. The calibration will be loaded from
this file each time you install the driver with a proportional
joystick.

     If for any reason you wish to re-calibrate the joystick,
either delete the calibration file or run the driver as follows.

     SS /J!    or   SS/J!A    or   SS/J!B

Using a joystick to emulate a mouse

     To use a Joystick as a mouse, you must load your mouse
driver program first.  This is loaded in a similar way to the
SoftSwitch driver.  The two drivers work in tandem, and without
the mouse driver, SoftSwitch cannot provide mouse emulation.

     Before loading the SoftSwitch driver, load your mouse driver
in the usual way. The SoftSwitch driver is loaded by typing,

                         C:\SS\SS /M /J

     The usual load message will appear indicating that the
driver is loaded.  In addition, a message will be displayed
indicating that mouse emulation is enabled.  You should now be
able to run and use your mouse supported program using either
your mouse or joystick. Switch A and Switch B correspond to the
left and right mouse buttons.  

     A few DOS programs support a mouse directly without using a
separate mouse driver program.  In these cases, SoftSwitch mouse
emulation will not work.


Appendix 1 - Morse codes

     Morse code uses combinations of short and long switch
presses referred to as dots and dashes respectively.  When
spoken, the dot is called a dit and the dash a dah.  This also
helps to give the correct timing.  A dah is three times the
length of a dit, and there should be the equivalent of a dit
spacing between parts of the same character.  There should be
three dit spacing between Morse characters.

     SoftSwitch provides four selectable sets of keystrokes.  The
Morse codes that are available from the standard set are given
below.

.      e         -      t
..     i         .-     a         -.     n         --     m
...    s         ..-    u         .-.    r         .--    w
-..    d         -.-    k         --.    g         ---    o
....   h         ...-   v         ..-.   f         ..--   Space
.-..   l         .-.-   Enter     .--.   p         .---   j
-...   b         -..-   x         -.-.   c         -.--   y
--..   z         --.-   q         ---.   ,         ----   .
.....  5         ....-  4         ...-.  Shift     ...--  3
..-..  Ctrl      ..-.-  Alt       ..--.  Caps      ..---  2
.-...  Function  .-..-  Esc       .-.-.  Tab       .-.--  \
.--..  [         .--.-  ]         .---.  /         .----  1
-....  6         -...-  ;         -..-.  =         -..--  -
-.-..  '         -.-.-  `         -.--.  Left      -.---  Right
--...  7         --..-  Up        --.-.  Ins       --.--  Del
---..  8         ---.-  Down      ----.  9         -----  0
...... Backspace         

     The Morse codes available when either the Shift or Caps Lock
code is active are given below.

.      E         -      T
..     I         .-     A         -.     N         --     M
...    S         ..-    U         .-.    R         .--    W
-..    D         -.-    K         --.    G         ---    O
....   H         ...-   V         ..-.   F         ..--   Space
.-..   L         .-.-   Enter     .--.   P         .---   J 
-...   B         -..-   X         -.-.   C         -.--   Y
--..   Z         --.-   Q         ---.   <         ----   >
.....  %         ....-  $         ...-.  Shift     ...--  #
..-..  Ctrl      ..-.-  Alt       ..--.  Caps      ..---  @
.-...  Function  .-..-  Esc       .-.-.  BackTab   .-.--  |
.--..  {         .--.-  }         .---.  ?         .----  !
-....  ^         -...-  :         -..-.  +         -..--  _
-.-..  "         -.-.-  ~         -.--.  Home      -.---  End  
--...  &         --..-  PgUp      --.-.  Ins       --.--  Del
---..  *         ---.-  PgDn      ----.  (         -----  )
...... Backspace

     The Morse codes available when the Function code is active
are given below.

.      e         -      t
..     i         .-     a         -.     n         --     m
...    s         ..-    u         .-.    r         .--    w
-..    d         -.-    k         --.    g         ---    o
....   h         ...-   v         ..-.   f         ..--   Space
.-..   l         .-.-   Enter     .--.   p         .---   j
-...   b         -..-   x         -.-.   c         -.--   y
--..   z         --.-   q         ---.   ,         ----   .
.....  F5        ....-  F4        ...-.  Shift     ...--  F3
..-..  Ctrl      ..-.-  Alt       ..--.  Caps      ..---  F2
.-...  Function  .-..-  Esc       .-.-.  Tab       .-.--  \
.--..  [         .--.-  ]         .---.  /         .----  F1
-....  F6        -...-  ;         -..-.  =         -..--  -
-.-..  '         -.-.-  `         -.--.  Left      -.---  Right
--...  F7        --..-  Up        --.-.  F11       --.--  F12
---..  F8        ---.-  Down      ----.  F9        -----  F10
...... Backspace

     For convenience, the character and number codes are given in
order below.

.-    A        ....  H        ---   O        ...-  V
-...  B        ..    I        .--.  P        .--   W
-.-.  C        .---  J        --.-  Q        -..-  X
-..   D        -.-   K        .-.   R        -.--  Y
.     E        .-..  L        ...   S        --..  Z
..-.  F        --    M        -     T
--.   G        -.    N        ..-   U

.---- 1        ..--- 2        ...-- 3        ....- 4
..... 5        -.... 6        --... 7        ---.. 8
----. 9        ----- 0

     A space can also be generated by pressing and holding the
switch.  Further spaces can be generated by keeping the switch
held pressed.


Appendix 2 - Terminology

     Some specific terminology is used in this manual in an
attempt to avoid confusion.

Ports

     This term is used to describe a means by which the computer
can be connected to the outside world.  This gives rise to terms
like the keyboard port, printer port, mouse port, serial port,
games port etc. In physical terms, a port translates to a
connector, usually on the rear panel of the computer.  Generally,
different types of connectors are used to minimise the
possibility of plugging in equipment incorrectly.

Joysticks

     The are two general types of joysticks available for
computers.  The switch type joystick provides simple on or off
control - there is no in between.  For example, suppose a program
uses the joystick to control the movement of a car.  Pushing the
joystick left would cause the car to turn left at one set rate.

     The proportional joystick has the capability to provide
control proportional to how far you move the joystick.  In the
example above, pushing a little left would turn the car a little
left.  Pushing farther left would turn more (just like a steering
wheel).

     On the IBM PC, the games port is intended for a proportional
joystick. Sometimes the games port is referred to as a joystick
port.


Appendix 3 - Using SoftSwitch with WordPerfect for DOS

     SoftSwitch works well with WordPerfect but it may be
necessary to configure both SoftSwitch and WordPerfect to get the
best results.  Some suggestions are given below.

     Make sure you have setup WordPerfect to use MOUSE.COM as the
mouse driver.  If using single switch scanning, you will need to
enable separate cursor indication by using the /M=B command line
option.

     You may need to change the colours used by the onscreen
keyboard, or WordPerfect to give the best results.  Specifically,
if you have enabled any of the 512 character fonts, including the
underline, italic or small caps fonts, you should use one of the
Softswitch colour schemes from G through to J for the onscreen
keyboard.


Appendix 4 - SoftSwitch Messages

     The following messages may be displayed. 

1. Information messages

     The following messages are displayed for information
purposes only and will appear as a result of normal operations.

SoftSwitch Driver ver 6.4, Jan. 1996 installed.
(C) J. Simmons 1992-1996.  All rights reserved.

Driver using proportional joystick on games port  (/J option)

Driver using 2 (or 3) switches on mouse           (/O option)

Driver not using switches                         (/N option)

Default Configuration loaded

SoftSwitch driver removed from memory.

     Message displayed when driver is removed from memory using
     the /R or /U option on the command line.

SoftSwitch was not previously installed.

     Message displayed when an attempt was made to remove
     SoftSwitch from memory when it was not previously installed.


2. Problem messages

     The following messages will be displayed as a result of some
problem arising while using the driver.  Where appropriate,
possible remedial action is suggested.

ERROR: Unable to verify that SoftSwitch is connected to parallel
port.
             Driver not loaded.- use /n to load without switches.

     Message displayed if you attempt to load driver without
     SoftSwitch connected, or there is some problem with the port
     you are using.  The port type and number may be different,
     or omitted if no command line option is included to specify
     the port.  You can use the /N option to prevent port
     checking if you wish to use the onscreen keyboard with a
     mouse and don't need the switches.

ERROR: Unable to detect your mouse driver.

     Message displayed if the driver is run with the /M or /O
     option and cannot detect that you have previously loaded
     your mouse driver.  Ensure that your mouse driver is loaded
     prior to loading the SoftSwitch driver.  The mouse driver
     may not load unless your mouse is connected.  You may also
     need to specify the port to which your mouse is connected.

Invalid option specified on the command line. (try SS/?)

     Message displayed if an invalid option (ie. a / followed by
     a single character) was specified on the command line when
     invoking the SoftSwitch driver.  The invalid switch is
     ignored.


Appendix 5 - System Requirements

     SoftSwitch will work only on an IBM compatible PC.  The
system requirements are as follows:

     Class:         XT, AT, 386, 486

     Processor:     Intel 8088, 80x86 family

     Memory:        The driver consumes up to 20k RAM max when
                    loaded depending on installation options.

     Disk:          The driver consumes about 22 Kbytes on disk.
                    Entire package including driver,
                    demonstration programs and utilities consumes
                    about 3 Mbytes.  Driver can be run from a
                    floppy disk, but a hard disk is required to
                    store and run the demonstration programs from
                    the menu system provided.

     Display:       The driver itself does not depend on the
                    display card.  The onscreen keyboard will
                    work with all display cards in text modes. 
                    Some of the programs will work with any
                    graphics card, but many require VGA.  A VGA
                    or SVGA is highly recommended.


                       ORDERING SOFTSWITCH

     SoftSwitch was written by Australian programmer John Simmons
(jsim@melbpc.org.au). In North America, the full version which
includes a detailed manual and instructions for making switch 
adapters on disk, may be purchased from Kaitlin Computer 
Consultants for $45 U.S. Adapters can be made from parts readily 
available at an electronics store such as Radio Shack.

               Kaitlin Computer Consultants
               18 Stephanie Ave.
               Nepean, Ontario K2E 7A9
               Canada
              [or email kaitlin@magi.com]

Bug reports to jsim@melbpc.org.au or kaitlin@magi.com.