APPENDIX F
SPEECH SYNTHESIZERS

Vocal-Eyes is very easy to get along with.  By that we mean it works with
many voice synthesizers.  Vocal-Eyes was not written for a specific
synthesizer but takes advantage of each synthesizer's unique features. 
Some screen readers only work with one synthesizer and others require
you to get a completely different version for each synthesizer you wish to
use.  In our minds, this is not acceptable.  Here are the synthesizers
Vocal-Eyes directly supports:

- Sounding Board by GW Micro
- All Accent boards by Aicom Corporation
- All artic boards compatible with SONIX.COM and TTS.COM and the
     TransPort by Artic Technologies
- Apollo by Dolphin Systems
- Braille 'n Speak by Blazie Engineering
- DECtalk by Digital Equipment Corporation
- Portable DECtalk by The Childrens Hospital
- MultiVoice by Childrens Hospital
- DECtalk PC by Digital Equipment Corporation
- Echo PC and GP by Street Electronics
- Internal ECHO PCII, PC+, MC and 1000 by Street Electronics
- DoubleTalk PC & LT by RC Systems
- Audapter by Personal Data Systems
- ASP by Automated Speech Functions
- Personal Speech System versions A and B by Votrax
- Prose 4000 by Speech Plus Incorporated
- LiteTalk by Microtalk
- Reading Edge by Xerox & Digital
- Votalker by Votrax

Did you see your synthesizer in this list?  If not, all is not lost.  There is a
Generic option which will probably work.  Many of you may say, "Sure it
will work but I will not be able to use any of its features such as rate,
pitch, volume and most of all the silence command."  Fear not, you can
set up what Vocal-Eyes should send for each of the ten possible rates,
ten volume levels, ten pitch levels, twenty-six tones, silence string and
even an initialization string.  Chances are, we already fully support the
synthesizer you are using.  But if not, as you can see, you can customize
the generic option to your individual synthesizer.  If your synthesizer
supports all of the above commands and it interfaces through a parallel or
serial port, Vocal-Eyes will use them.

When you first start up Vocal-Eyes, it scans memory for your synthesizer
driver.  First, Vocal-Eyes will search for the Sounding Board software.  If
it does not find it, it will look for one of the supplied synthesizer drivers. 
Each of these drivers will be discussed in detail later in this appendix.

The Sounding Board is the only synthesizer which does not require one of
the supplied drivers.  If you are using a synthesizer other than the
Sounding Board, the corresponding driver must be loaded prior to loading
Vocal-Eyes.  If no synthesizer was found, you will get the message:

Synthesizer driver not loaded

and Vocal-Eyes will not be loaded.  If you are using the Sounding Board,
issue the commands to get it going.  If you are using another synthesizer
load the proper driver.  Now rerun Vocal-Eyes and this time it will work. 
Notice you do not have to tell Vocal-Eyes itself what port your synthesizer
is connected through.  Vocal-Eyes gets all the information it needs directly
from the synthesizer driver automatically.

Below is a list of each synthesizer and what is required in order to use it
with Vocal-Eyes.  Also, any unique features relating to each synthesizer
will be discussed.  If you require any further information relating to your
synthesizer, please refer to your synthesizer's owners manual.

SOUNDING BOARD

The Sounding Board is by far the best choice if you require an extremely
responsive synthesizer.  Every feature Vocal-Eyes supports is handled by
the Sounding Board.  In fact, the Sounding Board hot keys can be used to
enhance Vocal-Eyes performance.  Fastforward and Rewind work great. 
If you press either the increase or decrease hot keys for the rate or
volume, Vocal-Eyes will automatically adjust the screen voice setting
accordingly.  The only hot key which will not work with Vocal-Eyes is the
punctuation hot key.  This is because Vocal-Eyes uses a much more
sophisticated punctuation scheme.  Vocal-Eyes therefore automatically
disables this hot key.  Feel free to setup and use all of the hot keys as
you see fit.

The Rate, Volume, Pitch and Tone commands all map exactly into the
Sounding Board commands.  For example a Vocal-Eyes rate of seven
matches exactly rate seven of the Sounding Board.

In order to use the Sounding Board, you must load the programs
SBLOAD.COM and SB.COM.  These programs are supplied with the disk
you received with your Sounding Board.  However, the very latest version
is also on your Vocal-Eyes disk.  Vocal-Eyes requires version 2.5 or
greater.  If you try and use Vocal-Eyes with an earlier version of the
Sounding Board software, you will get an error message and Vocal-Eyes
will not be loaded.  Simply replace the version you were using with the
version supplied on your Vocal-Eyes disk.

Therefore, assuming you don't require any Sounding Board command line
parameters, you would have to type the following at the DOS prompt:

SBLOAD
SB

Now simply start Vocal-Eyes in the usual manner.  Vocal-Eyes will take
over from here.

If you are using macros and have the MACRO.COM program loaded you
will notice when you enter Review Mode by pressing the fast review key,
not only do the macro keys no longer work, the Sounding Board hot keys
no longer work either.  If you enter via the Review hot key, both the
macro and the Sounding Board hot keys work as always.  This is done
intentionally for those using macros.

NON SOUNDING BOARD USERS

As we said earlier, all synthesizers except the Sounding Board require a
supplied driver.  Although we are referring to these as drivers, you do not
load them in the CONFIG.SYS.  These are actually .COM files which are
loaded directly from the DOS prompt.  The following lists all device
drivers and what synthesizers they are to be used with.

All ACCENT synthesizers ACCENT.COM
Apollo I (external) APOLLO.COM
Apollo I (internal) INAPOLLO.COM
Artic boards which use SONIX.COM and TTS.COM ARTIC.COM
Artic TransPort ACCENT.COM
ASP VEASP.COM
Audapter AUDAPTER.COM
Braille 'n Speak BNSPEAK.COM
DECtalk DECTALK.COM
DECtalk PC DECPC.COM
DoubleTalk PC & LT DBLTALK.COM
Echo PC or Echo GP ECHOPC.COM
Echo PC (new release) NEWECHO.COM
Internal Echo PCII, PC+, MC or 1000 INTECHO.COM
LiteTalk LITETALK.COM
MultiVoice MVOICE.COM
Prose 4000 PROSE4.COM
Personal Speech System version A PSSA.COM
Personal Speech System version B PSSB.COM
Portable DECtalk PDECTALK.COM
Reading Edge READEDGE.COM
Votalker ARTIC.COM
All other synthesizers GENERIC.COM

The appropriate device driver must be loaded before you load Vocal-Eyes. 
The following describes the available command line parameters which can
be used for any of the above drivers.

/? (help)

If you issue this command on any of the above drivers, that driver will
display all valid command line parameters to the screen.  The information
will not be voiced unless you have already loaded Vocal-Eyes.  Each
synthesizer may contain different information depending on its individual
capabilities.  This command can be issued any time.  For example,

DECPC /?

This will display all the available command line parameters for the DECtalk
PC synthesizer.  After each screen full of information, you will be
prompted to "Press any key for more."  Simply tap any key for the next
screen full of information.

/!Cn or /!Ln  (Port assignment)

Certain synthesizers require you to specify the port which they are
connected to.  If this is the case, you must include this command on the
command line.  If you do not specify this parameter and your particular
synthesizer requires it, you will get the following error message.

Speech port not specified!
For a list of valid command line parameters
issue a /? after the driver name

Don't worry if you get this error message.  Simply issue the command
again, including the port assignment command or issue the /? for the
syntax of the necessary command(s).

The /!C or /!L parameter informs Vocal-Eyes where to find your
synthesizer.  Enter this parameter by typing /! and then following it with
either a C or an L (C standing for COM port and L for LPT port) and a
number designating the number of the port.  /!C1, for instance, informs
Vocal-Eyes that your synthesizer is connected to COM1.  /!L3, on the
other hand, designates LPT3 as the appropriate port.  You can specify any
of the three LPT ports one through three or any of the four COM ports
one through four.  

Drivers which require a port assignment are:

All Accent synthesizers, external Apollo, ASP, Audapter, Braille 'N Speak,
DECtalk, Portable DECtalk, MultiVoice, Echo PC, Personal Speech System,
LiteTalk, Reading Edge, Transport, and Generic.

Drivers which do not require a port assignment are:

Internal Apollo, Artic cards, DECtalk PC, Votalker, DoubleTalk PC & LT,
Internal Echo, and Prose 4000.  If you specify a port on any of these
drivers, it will be ignored.

/!Bn  (Baud rate assignment)

This parameter informs Vocal-Eyes the baud rate of your synthesizer.  If
you are using a parallel synthesizer, or one which did not require a port
assignment, this command will be ignored.  If you do not specify this
parameter, the device driver will default to 9600 BAUD.  If you wish to
use the command, use one of the following forms:

/!B1 = 1200 baud
/!B2 = 2400 baud
/!B3 = 300 baud
/!B4 = 4800 baud
/!B9 = 9600 baud

/!Pn  (Parity assignment)

This parameter tells Vocal-Eyes the parity required by your speech
synthesizer.  If you are using a parallel synthesizer, or one which does not
require a port assignment, this command will be ignored.  Enter N for No
parity, O for Odd parity or E for Even parity after the /!P.  For example,
/!PO would signal odd parity and /!PN would signal no parity.  If you do
not use this parameter, the device driver will default to no parity.

/!Dn  (Data bits assignment)

This parameter informs Vocal-Eyes the number of data bits required by
your speech synthesizer.  If you are using a parallel synthesizer, or one
which does not require a port assignment, this command will be ignored. 
Enter /!D7 for 7 data bits or /!D8 for 8 data bits.  If you do not use this
parameter, the device driver will default to 8 data bits.

/!Sn  (Stop bits assignment)

This parameter tells Vocal-Eyes the number of stop bits required by your
speech synthesizer.  If you are using a parallel synthesizer, or one which
does not require a port assignment, this command will be ignored.  Enter
/!S1 for 1 stop bit or /!S2 for 2 stop bits.  If you do not use this
parameter, the device driver will default to 1 stop bit.

EXCEPTION DICTIONARY

With Vocal-Eyes, even if your synthesizer does not directly support an
exception dictionary, you can still set one up.  Each driver supports a user
exception dictionary.  Those of you familiar with the Sounding Board will
feel at home with this feature as it was modeled after your synthesizer's
exception dictionary.

Of course no matter which voice synthesizer you are using, there will
always be unusual words, specialized terms, proper names, and symbols
that it will not pronounce exactly as you might like.  For that reason,
we've given you an ability to add your own custom dictionaries of
exceptional words.  You must first create a standard ASCII file containing
the exceptional word(s) and a mis-spelling of the word(s) that sounds
proper.  For example, if you would like to have the abbreviation "lb" to be
spoken as "pounds" and the roman numeral VI to be spoken as "6", enter
these four lines in an ASCII file:

lb
pounds
vi
6

Note:  Upper or lower case is not important.

Enter the correct spelling that is mis-pronounced on the first line, and the
mis-spelling that sounds better on the following line.  Give this file a
meaningful name, and save it on disk.  How about "VE.DIC."  You'll
probably find the exception dictionary feature quite useful for
abbreviations, roman numerals, acronyms, and proper names.

As was said earlier, this file must be in a standard ASCII format.  If you
are using a word processor, make sure you pick this option when saving. 
If you are using Noteworthy, simply save it as you would save any file.  

There are a few rules about what can and can not be in this file.

1) Each entry must take two lines in the file, the correctly spelled word on
line one and the misspelled word on line two.

2) The first line (correctly spelled word) can ONLY contain letters A-Z and
the apostrophe.  No other symbols are allowed.

3) The second line (misspelled word) can contain any standard printable
characters including spaces.

Let us see how to use the feature.

When you first startup your specific synthesizer driver for your current
session, it will attempt to load the dictionary file called "VE.DIC" by
default.  If the file exists, it will automatically be loaded and used. 
Nothing is required other than to load the specified driver as you have
always done.

However, if you wish to load a file with a different name you will need to
use the following command line parameter:

Parameter:  /Efilename

The synthesizer driver will load an ASCII file containing new rules for text-
to-speech translation by using the "E" parameter.  "filename" can be any
valid DOS file specification, including drive and directory information.  For
example, if you are using an ECHO PC synthesizer and you want to load a
dictionary file called 'LOTUS.DIC' on the C: drive under the directory
called 'LOTUS', you could issue the command:

ECHOPC /EC:\LOTUS\LOTUS.DIC

After the dictionary is loaded successfully, the driver will confirm its
acceptance of the new rules with a message.  Remember, by default, the
first time the driver is issued it will look for a file called "VE.DIC" on the
DOS default log path, and load it, if it's located there.  The number of
new rules that can be added depends on a buffer setting.  The default
buffer size will accommodate approximately thirty to forty entries.

If there is a problem while trying to load the dictionary, you will receive
one of the two error messages:

* Dictionary load error *
* Dictionary format error *

The Dictionary load error means the driver could not find the specified file
name or the file was too large for the supplied buffer.  Verify the file
exists and your buffer is large enough to hold the supplied dictionary.

The format error indicates that you did not follow the above rules while
creating the dictionary file.  Verify that the file is in ASCII format and the
two entries contain valid characters.

Previously, we said the default buffer size would allow around thirty to
forty entries.  This number of course depends on the size of the words
you are defining but it also depends on the buffer size.  The drivers
allocate 512 characters of storage for dictionary entries by default. 
Depending on the size of each entry, this allocation will accommodate up
to approximately forty entries.  The arithmetic here is 512 divided by
twelve equals forty-two.  We are using six characters as the average
word size, and we are doubling that to encompass the mis-pronounced
word and the properly pronounced substitute.  Should you find this
allocation to be too small, use the exception dictionary buffer parameter
to increase the size of the buffer as needed.

To adjust the buffer size, use the following command:

Parameter:  /!Ex

Notice the ! (exclamation point).  As always, since this command contains
the exclamation point it can only be issued the first time you startup your
driver each session.  The x is a number between zero and forty-nine.  The
number determines how many 512 character chunks to allocate as part of
the buffer.  The default is one or 512 characters.

For example, if you wanted to triple the number of possible entries, the
command would read like this:

DBLTALK /!E3

The "E" in this parameter stands or "exception", and the number
corresponds to some multiple of 512 characters.  Notice that the
dictionary buffer can be set to zero characters.  This is because if you do
not wish to use an exception dictionary file, you should not be penalized
by taking valuable memory.  Therefore if you are not using an exception
dictionary, use the command:

DBLTALK /!E0

This will set the buffer size to zero, freeing up a valuable 512 characters. 
Of course, you will not be able to load any exception dictionary. 

You can, if you wish, combine both commands to increase the buffer size
and load the actual file on one command line.  Because you will be issuing
the /!Ex parameter, this must be done the first time the driver is loaded
each session.  For example:

DBLTALK /!E5 /EWP

This will load the DoubleTalk driver and increase the exception dictionary
buffer to five times 512 bytes or two and a half kilobytes.  It will then
load the file WP.DIC.

Parameter: /U

This command can be used to remove the synthesizer driver from
memory.  If you want to completely remove Vocal-Eyes from memory,
you can use the following commands.  Substitute your own synthesizer
driver if you're not using a DECTalk PC.  

VE /U
DECPC /U

The first of these commands will remove Vocal-Eyes itself.  You must
remove it before you can remove the synthesizer driver.  After Vocal-Eyes
has been removed, the second line will remove the synthesizer driver,
DECtalk PC in this case.

You can only remove the driver if nothing is loaded after it.  This means
you must uninstall anything loaded after the driver before you can
uninstall the driver itself.  As shown above, this is why you must first
remove Vocal-Eyes.  If the driver can not uninstall itself because you have
loaded something after it and have not removed it, the driver will give you
an error message and ignore the /U command.

REFRESH COMMAND

The final command line parameter allows you to fine-tune how the driver
communicates to your synthesizer.  The driver is constantly sending
commands to your synthesizer.  However, with interruptability enabled
with Vocal-Eyes, those commands may not be noticed by the synthesizer. 
Therefore, the driver will occasionally send the entire command sequence
every so often to ensure the synthesizer is in the correct mode.  Actually,
after every ten silence commands this happens.  If you are using a
synthesizer which takes some time to digest the new commands, you
may notice an annoying pause at certain times.  Therefore, the following
command can be used to disable this feature.  Be aware however, it may
be possible for your synthesizer to get stuck in, let's say,  a wrong rate or
pitch.  Normally, this is not a problem unless you have your keyboard and
screen voices different from each other.  If they are the same, your
synthesizer should always be in the correct mode.

Parameter /!Rx (x=0 or 1)  0=disable, 1=enable.  The default is enable. 
This means Vocal-Eyes will occasionally send out the entire command
sequence to the synthesizer to guarantee it is set properly.

To cause the driver to disable this feature, issue the following command
line parameter when the driver is first loaded each session:

AUDAPTER /!C1 /!R0

The 'R' stands for refresh and the 0 disables the feature.  If your
synthesizer issues a slight pause about every ten keystrokes, you might
want to give this command a try.

When you have typed in the name of your driver followed by whichever
switches are appropriate--don't forget to press ENTER after typing in the
complete command-- a message should be printed to the screen and also
spoken through your synthesizer.  The message contains the name of the
synthesizer and the version number of the device driver.  If you do not
wish to hear this message, add a ; (semicolon) to the end of the command
line parameter.  This signals the driver not to speak the initial message. 
For example:

ECHOPC /!C1 /!B4 /!E5 /!R0 /EBADWORDS;

This will load the device driver for the external echo synthesizer using
COM1 at 4800 baud, 8 data bits, 1 stop bit and no parity.  The exception
dictionary buffer is increased to 2-1/2K and the exception dictionary
BADWORD.DIC is loaded.  Finally the refresh command has been
disabled.  The welcome message will be printed to the screen but will not
be spoken since the command line ended with the ;.

PSSB /!L1

This will load the device driver for the Personal Speech System version B
synthesizer using LPT1.  Since this is being used on a parallel synthesizer,
there is no need to specify the baud, data bits, stop bits or parity.  The
initial message will be printed to the screen and spoken.

PROSE4

This simply starts up the driver for the Prose 4000 synthesizer.  This is a
synthesizer which does not require a port assignment.

Now that you understand all of the commands available for each of the
synthesizer drivers, lets talk specifically about each of the drivers in turn.

INDEXING

Vocal-Eyes supports a feature called indexing.  Indexing basically is a two
way communication between the voice synthesizer and Vocal-Eyes.  This
two way communication allows Vocal-Eyes to determine exactly what
word the synthesizer is speaking at any particular moment.  Why is this
important?  If you are using the read to end feature of Vocal-Eyes and
your synthesizer supports indexing, you will notice when you cancel the
read to end with the ESCAPE key, Vocal-Eyes routes the applications
cursor to the last word you heard.  If your synthesizer does not support
indexing, the cursor will be anywhere from a few lines to many lines
below what you last heard.  Since Vocal-Eyes does not know what the
synthesizer is speaking, it can't move the cursor to the last spoken word. 
Indexing is also used if you are using the visual tracking feature located
on the screen menu.  This feature will highlight each word as it is being
spoken.  Without the synthesizer telling Vocal-Eyes what word is being
spoken, there is no way the highlighted word would be synchronized with
the spoken word.  Not all synthesizers support indexing.  The following
list will describe each synthesizer in detail including whether it supports
indexing or not.

ACCENT.COM

(Supports indexing)

As we said, this should be used if you plan on using any of the ACCENT
synthesizers or the TransPort.  The accent boards support all ten rates,
pitch values, and volumes but they do not support all twenty-six possible
tone settings.  They only support ten possible tones.  Therefore, Vocal-
Eyes tones A through D are mapped into the accent's tone zero.  Vocal-
Eyes tones E through L are mapped into the accent's tones one through
eight respectively.  Finally Vocal-Eyes tones M through Z are mapped into
the accent tone nine.  This means all tones between M and Z will sound
the same.  The same is true for tones A through D.  All other features
work as expected.

Before you can use the internal accent, you have to load the Aicom
device driver.  Please refer to your accent user's manual for a complete
description of this process.  All necessary accent files should be loaded
before you attempt to load the ACCENT.COM driver.  By default, the
internal Accent synthesizer intercepts LPT3.  This means you should
supply /!L3 on the ACCENT command line.  If the data bits do not match,
the driver will not function properly and you may notice a severe delay
between keystrokes and speaking and/or garbage characters being
spoken.  

The Artic TransPort emulates all Accent commands.  Therefore, use this
driver for the TransPort synthesizer as well.

Note:
The external Accent synthesizer will probably default to seven data bits. 
However, the ACCENT.COM driver for Vocal-Eyes defaults to eight data
bits.  Therefore, you must either adjust the Accent itself or issue a /!D7
on the ACCENT.COM command line.  Please make sure the data bits are
identical.

APOLLO.COM

(does not support indexing)

This driver will work with the external Apollo I synthesizers.  The
synthesizer itself does not require any setup.  Simply execute the APOLLO
driver.  The Apollo supports the ten rate levels and ten pitch settings but
does not support the volume or tone settings.

The Apollo synthesizers do not support any handshaking.  This means
when the 8K buffer in the synthesizer fills, any new data will be lost.  It is
suggested that you not try and send more than 8,000 characters to the
synthesizer at one time.  With true handshaking, the synthesizer will
signal to the computer that its internal buffer is full so to stop sending
data.  As the synthesizer speaks, the buffer slowly empties.  When there
is enough room for more data, the synthesizer will tell the computer to
start sending data again.  Without this ability, the computer has no idea
when the synthesizer buffer is full.  Again, this will only be a problem if
you send more than 8K of data to the synthesizer at once.

INAPOLLO.COM

(does not support indexing)

This driver will work with the internal Apollo I synthesizers.  The
synthesizer itself does not require any set-up.  Simply execute the
INAPOLLO driver.  The Apollo supports the ten rate levels and ten pitch
settings but does not support the volume or tone settings.

This driver will work for the default settings of the standard desktop
internal.  However, you can adjust the port address on this board.  Also,
the Toshiba model has a different address yet.  Therefore, you may have
to include the following command line parameter to specify the correct
speech base address.

/!Bx x=0-2  (0=308HEX, 1=318HEX, 2=Toshiba model)

By default, Vocal-Eyes will assume you are using the desktop with the
standard address of 308HEX.  If you have changed the address to 318H,
you must supply:

INAPOLLO /!B1

If you are using the internal Toshiba version, you must supply:

INAPOLLO /!B2

The Apollo synthesizers do not support any handshaking.  This means
when the 8K buffer in the synthesizer fills, any new data will be lost.  It is
suggested that you not try and send more than 8,000 characters to the
synthesizer at one time.  With true handshaking, the synthesizer will
signal to the computer that its internal buffer is full so to stop sending
data.  As the synthesizer speaks, the buffer slowly empties.  When there
is enough room for more data, the synthesizer will tell the computer to
start sending data again.  Without this ability, the computer has no idea
when the synthesizer buffer is full.  Again, this will only be a problem if
you send more than 8K of data to the synthesizer at once.

You do not have to specify a speech port.

ARTIC.COM

(does not support indexing)

This is to be used for all ARTIC synthesizers which support the
SONIX.COM and TTS.COM.  Newer ARTIC cards combine these two
programs into one.  Every card produced by ARTIC is capable of being
used by Vocal-Eyes.  However, you may have to purchase their software
interface which allows non-Artic products to function with the board.

Also, the Votalker board from Votrax should use this driver.  You will
recall, the Votalker also uses SONIX.COM and TTS.COM.

Before you can load the ARTIC.COM driver, you must first load the above
two programs.  Assuming you do not require any command line
parameters the following can be typed from the DOS prompt:

SONIX
TTS

If you try and load the ARTIC.COM driver before loading the above two
files, the driver will print "SONIX not loaded!"  Simply load SONIX and
TTS and reload ARTIC.COM.  Those of you familiar with PORTTALK.COM
will be happy to know it is not required with Vocal-Eyes.  The
ARTIC.COM driver will support all of Vocal-Eyes' features.

This driver does not require you to specify a speech port.

AUDAPTER.COM

(supports indexing on serial version only)

This driver is to be used with the Audapter synthesizer.  The Audapter
supports all ten rate, pitch, and volume commands as well as all twenty-
six tone settings.

BNSPEAK.COM

(supports indexing on later Braille 'n Speaks)

This driver is to be used with the Braille 'n Speak from Blazie Engineering. 
Many of the speech features of the Braille 'n Speak have been added over
time.  Depending on which ROM you have from Blazie you may or may
not have all the features required by Vocal-Eyes.  If you have an old ROM,
you may want to contact Blazie Engineering for an upgrade.  With this
BNSPEAK.COM driver, you can set it up for two versions, one which only
supports the silence command and one which supports all commands
including indexing.  The default is for all commands.  However, if you
have an old ROM, you may get garbage spoken when Vocal-Eyes tries to
issue a command your Braille 'n Speak does not support.  If this is the
case, you should issue the following command:

BNSPEAK /!V0

when you first load the driver.  This will instruct the driver that you have
an older ROM and to only use the silence command.  If you do not issue
this command or issue a /!V1 the driver will assume you have the latest
ROM which supports all rate, volume, pitch, and tone commands as well
as indexing.

In order for the Braille 'n Speak to be used as an external synthesizer, you
first must enable the serial port and place it into what is called "Speech
box mode."  The following can be used to enable the Braille 'n Speak:

First perform a warm reset to ensure that you have the default settings:

Dots 1, 2, 3, 4, 5, 6-chord
Dots 1, 2, 3, 4, 5, 6-chord

Next enable the speech port:

P-chord
Dots 2, 6
Y

Next enable the Speech Box Mode

Dots 3, 4, 5-chord
Dots 1, 2, 3, 4, 5, 6
E-chord

At this point, you can load the BNSPEAK.COM driver.  If you wish to
adjust the rate, pitch, or volume you should use Vocal-Eyes to do so
unless you have setup the driver with the /!V0 command.  If you have
issued /!V0 on the command line, you will have to use the Braille 'n Speak
to adjust these settings.

If you have any further questions relating to the Braille 'n Speak, please
refer to your Braille 'n Speak Users Guide.

DECTALK.COM

(does not support indexing)

This will allow you to use the well-known DECtalk voice synthesizer.  This
synthesizer probably has the most pleasing voice quality but is by no
means a very responsive synthesizer.  However, Vocal-Eyes uses it to its
full potential.  We are sure you will be pleased with the results.  If you like
the DECtalk quality voice but don't like the unresponsiveness, you may
want to consider the DECtalk PC.  Of all the DECtalk synthesizers, the
DECtalk PC is the most responsive.

Since the DECtalk is a completely self-contained external synthesizer, you
don't have to load any additional software other than the DECTALK.COM
driver.

It supports all ten rates and pitch settings but does not support any of the
volume settings.  Changing the volume from within Vocal-Eyes will have
no effect at all.  To adjust the volume, you must use the volume control
on the DECtalk itself.  Also, we decided to map the six different voices
the DECtalk offers into the tone settings.  Therefore, Vocal-Eyes tones A-
H will use Huge Harry.  Tone I will use Perfect Paul.  Tone J will use Frail
Frank.  Tone K will use Rough Rita.  Tone L will use Beautiful Betty. 
Finally tones M through Z will use Kit the Kid.

The DECtalk is probably the most complicated speech synthesizer
available.  Because of this, it seems to respond somewhat more slowly
than other synthesizers.  For example, you may silence the speech but the
DECtalk may keep talking for a few seconds before it stops speaking. 
Rest assured, Vocal-Eyes told the DECtalk to stop speaking the moment
you requested it to.

PDECTALK.COM

(does not support indexing)

This will allow you to use the Portable DECtalk voice synthesizer.  This
synthesizer uses the same voice as the original DECtalk and has the same
characteristics.

Since the Portable DECtalk is a completely self-contained external
synthesizer, you don't have to load any software other than the
PDECTALK.COM driver.

It supports all ten rates, pitch and volume settings.  Also, we decided to
map the ten different voices the Portable DECtalk offers into the tone
settings.  Therefore, Vocal-Eyes tones A through H will use Huge Harry. 
Tone I will use Perfect Paul.  Tone J will use Frail Frank.  Tone K will use
Rough Rita.  Tone L will use Beautiful Betty.  Tone M will use Kit The Kid. 
Tone N will use Uppity Ursula.  Tone O will use Doctor Dennis.  Tone P
will use Whispering Wendy.  Finally tones Q through Z will use Variable
Val.

The Portable DECtalk is slightly different from the original DECtalk.  First,
it is capable of speaking at a much faster rate.  You will notice rate nine
for the original DECtalk does not speak nearly as fast as the Portable
DECtalk rate nine.

The other difference is a flaw in the Portable DECtalk itself.  It has a
feature which will automatically powerdown the DECtalk if no character
has been received through the serial port within a configurable time.  This
is to conserve battery power.  Once a character is received, it was
suppose to power up and continue on normally.

However, if the Portable DECtalk is in the process of speaking something
but nothing has been sent to it through the serial port for some time, it
will shut down and not finish speaking the remainder of the text.  The
PDECTALK driver will disable this feature when it is first loaded. 
However, if you power down the Portable DECTalk and power it back up
again, the auto-powerdown feature may be re-enabled.  Therefore, you
should never power down the Portable DECtalk unless you are finished
with it.

The Portable DECtalk is among the most complicated speech synthesizers
available.  Because of this, it seems to respond somewhat more slowly
than other synthesizers.  For example, you may silence the speech but the
DECtalk may keep talking for a few seconds before it decides to stop
speaking.  Rest assured, Vocal-Eyes told the DECtalk to stop speaking the
moment you requested it to.

DECPC.COM

(supports indexing)

We recommend you use version 4.1C or greater of the DECtalk PC
software from Digital Equipment Corporation.  Although 4.1 will work,
they have made some improvements in the 4.1C version.

This will allow you to use the internal DECtalk PC voice synthesizer.  This
is the latest DECtalk voice synthesizer on the market.  It is more
responsive than all the other DECtalk synthesizers.  However, you will
find it still is not as responsive as other synthesizers such as the Sounding
Board.

You must first load the software that came with your DECtalk PC.  Please
follows its instruction manual for details.  Once this software is up and
running, you can simply execute the DECPC.COM program supplied on
your Vocal-Eyes disk.  You do not need to specify any command line
parameters.

The DECtalk PC supports all ten rates, pitch, and volume settings.  We
have mapped the ten different voices into the tone settings.  Therefore,
Vocal-Eyes tones A through H will use Huge Harry.  Tone I will use
Perfect Paul.  Tone J will use Frail Frank.  Tone K will use Rough Rita. 
Tone L will use Beautiful Betty.  Tone M will use Kit the Kid.  Tone N will
use Uppity Ursula.  Tone O will use Doctor Dennis.  Tone P will use
Whispering Wendy.  Finally tones Q through Z will use Variable Val.

DBLTALK.COM

(supports indexing)

This is used for the internal DoubleTalk PC and external DoubleTalk LT
synthesizers.  The DoubleTalk supports all ten speech rates, pitch, and
volume settings.  However, it only supports two tone settings.  Vocal-
Eyes tones A through M are mapped into the first tone setting and Vocal-
Eyes tones N through Z are mapped into the second.

You will notice using a rate of nine will cause the DoubleTalk PC to talk
much faster but use a much higher pitch.  This is sort of a hyper-rate.  If
you do not feel comfortable with this rate, feel free to slow it down to a
standard rate.  This is only true for rate nine.

If you are using the DoubleTalk PC, no other software is needed and you
should not specify a speech port on the command line.  The driver will
find the board automatically.  This driver is also used if you are using the
external DoubleTalk LT.  If you specify a speech port, the driver will
assume you are using the LT on the specified port and not bother looking
for the internal PC.  This driver is actually capable of searching for both
the internal and external versions automatically.  If you issue the
DBLTALK.COM driver with no speech port specified, it will first scan for
the internal.  If it does not find it, it will scan all serial ports for the
external.  The driver will use which ever it finds.  If neither is located, you
will get an error message.

ECHOPC.COM

(does not support indexing)

Although this is called ECHOPC.COM it can be used with the Echo GP as
well but it should not be used with the latest release of the ECHO PC.  If
you are using the newest release of the ECHO PC, you should use the
NEWECHO.COM driver discussed later.

The older ECHO PC & GP synthesizers, like the DECtalk, are a completely
self-contained external synthesizer.  You don't have to load any software
other then the ECHOPC.COM driver.

The Echos support all ten pitch settings and volume settings.  However, it
only offers two speech rates.  Therefore, Vocal-Eyes speech rates zero
through four will issue the slower of the two speeds and rates five
through nine will issue the faster of the two.  Also, the Echos do not
support any of the tone settings.  Changing the tone value in Vocal-Eyes
will have no effect at all on the speech.

Unlike the DECtalk, the external Echos will stop speaking immediately
when requested to.  However, they have a side effect of squeaking or
"hiccuping."  This can be annoying if you are using interruptability.  You
may wish to turn interruptability off when working with Echo.

INTECHO.COM

(does not support indexing)

This driver will work with the Echo PCII, PC+, MC, or 1000.  All four of
these are treated the same.  The only difference is the machines they
work on.

In order to use these synthesizers, you need to load the program
TALK.EXE.  This is supplied with your synthesizer.  Please refer to your
synthesizer manual if you have any questions on how to load this
program.  If you try and load the INTECHO.COM driver prior to loading the
TALK.EXE program, the driver will print "The ECHO software was not
found."  Simply load TALK.EXE and reload INTECHO.COM.

One of the options the TALK program offers is the ability to choose the
key you would like to use to silence the speech.  Do not assign a key for
this feature.  Allow Vocal-Eyes to handle this.

These synthesizers support all ten rates, pitch settings, and volume levels. 
However, they do not support any of the tone settings.  Vocal-Eyes' tone
options will have no effect at all.

These synthesizers require the complete attention of the machine while
they are speaking text.  Therefore, you may notice some sluggishness
while using any of these synthesizers.

These synthesizer do not require a port assignment.  Vocal-Eyes will
automatically find the synthesizer.

NEWECHO.COM

(does not support indexing)

This driver will work with the latest release of the Echo PC.

This synthesizer supports all ten rates, pitch settings and volume levels. 
However, it does not support any of the tone settings.  Vocal-Eyes' tone
options will have no effect at all.

This synthesizer has a very small buffer and therefore you may notice
some sluggishness while using it.

LITETALK.COM

(supports indexing on the serial version only)

The LiteTalk is very much like the DoubleTalk LT synthesizer.  Like the
DoubleTalk LT, the LiteTalk supports all ten speech rates, pitch, and
volume settings.  However, it only supports two tone settings.  Vocal-
Eyes tones A through M are mapped into the first tone setting and Vocal-
Eyes tones N through Z are mapped into the second.

You will notice using a rate of nine will cause the LiteTalk to talk much
faster but use a much higher pitch.  This is sort of a hyper-rate.  If you do
not feel comfortable with this rate, feel free to slow it down to a standard
rate.  This is only true for rate nine.

MVOICE.COM

(does not support indexing)

This will allow you to use the MultiVoice voice synthesizer.  This
synthesizer uses the same voice as the original DECtalk and has very
similar characteristics.

Since the MultiVoice is a completely self-contained external synthesizer,
you don't have to load any software other than the MVOICE.COM driver.

It supports all ten rates, pitch, and volume settings.  Also, we decided to
map the ten different voices the MultiVoice offers into the tone settings. 
Therefore, Vocal-Eyes tones A through H will use Huge Harry.  Tone I will
use Perfect Paul.  Tone J will use Frail Frank.  Tone K will use Rough Rita. 
Tone L will use Beautiful Betty.  Tone M will use Kit The Kid.  Tone N will
use Uppity Ursula.  Tone O will use Doctor Dennis.  Tone P will use
Whispering Wendy.  Finally tones Q through Z will use Variable Val.

The MultiVoice is slightly different from the original DECtalk.  First, it is
capable of speaking at a much faster rate.  You will notice rate nine for
the original DECtalk does not speak nearly as fast as the MultiVoice rate
nine.

The DECtalk class of synthesizers are among the most complicated
speech synthesizers available.  Because of this, the MultiVoice seems to
respond somewhat more slowly than other synthesizers.  For example,
you may silence the speech but the MultiVoice may keep talking for a few
seconds before it decides to stop speaking.  Rest assured, Vocal-Eyes told
it to stop speaking the moment you requested it to.

PROSE4.COM

(supports indexing)

This should be used if you wish to use Vocal-Eyes with the PROSE-4000
synthesizer.  Even though this is an internal synthesizer, nothing else is
required to be loaded.  The PROSE4.COM contains all necessary
information.  If you have the PROSE.COM utility, you should not use it. 
This would interfere with PROSE4.COM.

All ten rates, pitch settings and volume levels are supported.  However,
the PROSE does not support the tone settings.  Therefore, changing
Vocal-Eyes' tone settings will have no effect at all.  

Like the DECtalk, if you silence the speech it may take a moment for the
Prose to stop speaking.  Rest assured Vocal-Eyes sent the proper
commands to the PROSE.  Sometimes, it takes it a moment or so to
actually silence the speech however.

A speech port assignment is not required for this synthesizer.  However, if
you have changed the on-board IRQ from the default of two or have
changed the speech port address from the default of 300 HEX, you must
supply a command to the driver indicating the change.

/!Ix - x = 2-7.  This parameter will supply to the PROSE4 driver which
IRQ the Prose 4000 has been setup for.  By default the driver will assume
IRQ two.  This is the default for the Prose 4000 board.  If you have
changed the IRQ from two, you must supply this parameter.  For example,
if the IRQ has been changed to seven, you must supply:

PROSE4 /!I7

/!Bx - x = 0-4.  (0=300HEX, 1=308HEX, 2=310HEX, 3=318HEX,
4=320HEX) This parameter will supply to the PROSE4 driver the speech
base address.  By default the driver will assume 300 HEX.  This is the
default for the Prose 4000 board.  If you have changed the base address
from 300 HEX, you must supply this parameter.  For example, if the
speech address has been changed to 318 HEX, you must supply:

PROSE4 /!B3

If necessary, you can combine both the IRQ command and the speech
base address.  This driver does not require a port address.

PSSA.COM

(does not support indexing)

This is a self contained external synthesizer so nothing other then
PSSA.COM needs to be loaded.

This should be used for the Personal Speech System version A only.  This
is a relatively old synthesizer and was not really designed for the blind
community.  You will notice as you speed the voice up, the voice
becomes very choppy and difficult to understand.  It supports all ten
rates, pitch settings, and volume levels.  However, it does not support
any tone settings.  Changing Vocal-Eyes' tone option will have no effect
whatsoever.

PSSB.COM

(does not support indexing)

This is just like the PSSA.COM except it is for Personal Speech System
version B. It has the same features and limitations as version A.

READEDGE.COM

(does not support indexing)

This will allow you to use the DECtalk synthesizer of the Reading Edge. 
This synthesizer uses the same voice as the original DECtalk and has very
similar characteristics.

In order to use the Reading Edge as a voice synthesizer, you must first set
it up using the keypad for "receive from screen reader."  Once this is
done, you can treat it as an external synthesizer.

It supports all ten rates, pitch, and volume settings.  Also, we decided to
map the ten different voices the DECtalk offers into the tone settings. 
Therefore, Vocal-Eyes tones A through H will use Huge Harry.  Tone I will
use Perfect Paul.  Tone J will use Frail Frank.  Tone K will use Rough Rita. 
Tone L will use Beautiful Betty.  Tone M will use Kit The Kid.  Tone N will
use Uppity Ursula.  Tone O will use Doctor Dennis.  Tone P will use
Whispering Wendy.  Finally tones Q through Z will use Variable Val.

The Reading Edge is slightly different from the original DECtalk.  First, it is
capable of speaking at a much faster rate.  You will notice rate nine for
the original DECtalk does not speak nearly as fast as the Reading Edge
rate nine.

The DECtalk is probably the most complicated speech synthesizer
available.  Because of this, it seems to respond somewhat more slowly
than other synthesizers.  For example, you may silence the speech but the
Reading Edge may keep talking for a few seconds before it decides to
stop speaking.  Rest assured, Vocal-Eyes told the DECtalk to stop
speaking the moment you requested it to.

VEASP.COM

(does not support indexing)

This driver is to be used with the ASP synthesizer.  It supports all of the
Vocal-Eyes commands.

GENERIC.COM

(does not support indexing)

This can be used if the synthesizer you are using is not directly supported
with its own driver.  The synthesizer must, however, be communicated to
through one of the four COM ports or three LPT ports.

You will need to setup your synthesizer as required in its users manual. 
Once all its required software is loaded, simply load the GENERIC.COM
driver.

At this point, you should be able to use your synthesizer with Vocal-Eyes. 
However, you will not have any control over the rate, pitch, volume, tone
and worst of all, you will not be able to silence the voice from Vocal-Eyes.

If your synthesizer supports any of these features, you can tell the generic
driver how to use it.  When you first load GENERIC.COM, it looks for a
file called "GENERIC.DAT."  If this file does not exist, it will default to not
supporting any features at all.  However, if it does exist, the information
will be used giving Vocal-Eyes control it normally would not have.

The format of the GENERIC.DAT file is very important.  There is not much
room for error.  First of all, the file must be in a standard ASCII format.  It
must contain exactly fifty-nine lines.  The first ten lines relate to the ten
rate commands, followed by the ten pitches, ten volumes, twenty-six
tones, silence string, initialization string and finally a list of punctuation
characters that can be sent to the synthesizer.  This all adds up to fifty-
nine lines.  Even if your synthesizer does not support all features, you
must make an entry for all fifty-nine lines.  If there is a problem in the
format of the file, the GENERIC driver will print "Format error in
GENERIC.DAT" and abort the load process.  You should correct the
problem and attempt to load the driver again.

In the following example, we will create a GENERIC.DAT driver for the
Sounding Board.  Of course, this is not needed for the Sounding Board but
it will make a good demonstration.

The first ten lines of the file relate to rates zero through nine.  Each rate
command must be on a line by itself.  First you need to figure out what
command your synthesizer needs for the ten rates.  The Sounding Board
uses CTRL-ER0-9.  Therefore, the first ten lines of your file would look like
this:

/5/R0
/5/R1
/5/R2
/5/R3
/5/R4
/5/R5
/5/R6
/5/R7
/5/R8
/5/R9

You are probably wondering what the /5/ is used for at the beginning of
each line.  Many word processors or text editors will not let you place
ESCAPE or control characters directly in a file.  Therefore, whenever you
wish to enter one of these codes, use the format:

/n/

Where n is the ASCII value of the character you wish entered.  For
example, to enter an 'ESCAPE Control-Z A' as one of your entries, the
following line could be used:

/27//26/A

The /27/ is the ASCII value of the ESCAPE.  /26/ is the ASCII value of
Control-Z and of course the A can be enter directly.  What if you really
wanted to enter a "/" in your string?  Simply place two slashes together. 
For example:

/5////6/B

This line would place a Control-E (/5/) followed by a / (//) followed by a
Control-F (/6/) and finally a B (B).

So in our Sounding Board example, the /5/ is simply the required Control-E
character.

Now that we have defined the first ten lines as the rate, the next ten lines
need to define pitches zero through nine.  The Sounding Board requires
CTRL-EP0-9.  Therefore, the following would be lines eleven through
twenty.  

/5/P0
/5/P1
/5/P2
/5/P3
/5/P4
/5/P5
/5/P6
/5/P7
/5/P8
/5/P9

Now, we need to define the ten possible volumes zero through nine.  The
Sounding Board requires CTRL-EV0-9.  Therefore, the following would be
lines twenty-one through thirty: 

/5/V0
/5/V1
/5/V2
/5/V3
/5/V4
/5/V5
/5/V6
/5/V7
/5/V8
/5/V9

The next twenty-six lines need to define the twenty-six possible tones A
through Z.  The Sounding Board requires CTRL-EA-Z.  Therefore, the
following would be lines thirty-one through fifty-six: 

/5/TA
/5/TB
/5/TC
.
.
.
/5/TX
/5/TY
/5/TZ

The next line in the GENERIC.DAT file should be the string which, when
sent to the synthesizer, will silence the speech.  On the Sounding Board
this is CTRL-X.  Therefore, the following would be line fifty-seven in our
GENERIC.DAT file.

/24/

Remember, /24/ simply means ASCII 24 which is a CTRL-X.

The next line contains the initialization string.  This string will only be sent
to your synthesizer one time.  You can use this feature to make sure
certain settings are always set the way they should be.  The Sounding
Board really does not require such a string.  Therefore, leave this line
completely blank.  Line fifty-eight in our GENERIC.DAT file will simply be
a blank line.

The final line holds all the punctuation characters which can be sent to
the synthesizer.  On the Sounding Board this is every character. 
However, for example, the Personal Speech System uses both the !
(exclamation point) and the @ (at sign) for command strings.  If you send
these characters, the synthesizer will give an error.  So for the final line
fifty-nine, you would type the following if you are using the Personal
Speech System:

 ~`()_^-{}|:[]"?\;,.'

Notice the leading space.  Make sure you include this character.  You
should try and send as many punctuation characters as possible so your
synthesizer can use them for intonation.  Notice the @ and ! have been
left out.  There are a few others which have been left out since they also
can be used as command characters.  Sounding Board users could have
included each and every punctuation character.

Now that you have all fifty-nine lines typed in your file, save the file in a
standard ASCII format.  If you have no format errors, each time you load
GENERIC.COM, it will load the GENERIC.DAT file and use the information
specified.

It may take a bit to get this file setup but once it is done, you will no
longer have to worry about it and your synthesizer will work forever.
