version 0.09

May.24.2000, fixed piles o' bugs, and patched speakup forward to kernel
2.3.99-pre8 (at least).  (Andy)

sometime before May 24th, 2000, wrote several new drivers.  (Kirk)

version 0.08

18/11/1999, Finally nailed down and fixed a bug with the serial
drivers filling their buffer and causing the kernel to hang.  Of
course, once again I've totally rewritten the serial drivers.  (Kirk)

10/11/1999, Fixed the end of buffer water mark so the kernel wouldn't
over run the buffer when a process was put to sleep but there was
already enough chars in the loop to over write end of buffer and trash
the system.  (Kirk)

29/10/1999, Added code to the drivers to test the kernel version, so
we could include the proper wait_queue tags for 2.2.x vs 2.3.x. (Kirk)

27/10/1999, fix small bug which made the reading cursor not get stored
when switching between allocated consoles.  (Kirk)

08/10/1999, Totally rewrote all drivers to follow fixed format.  No
more will we have drivers which don't look anything like the other
drivers.  (Kirk)

15/09/1999, Rewrote synth drivers and kernel to support command line
loading of synth ports at boot time.  (Andy)

14/09/1999, Rewrote portions of the speakup_ltlk.c driver to fix a
problem with the DoubleTalk LT losing the first character sent to it
after a null character.  Seems to be a problem only with the LT, not
being able to deal with characters immediately following NULLs.
(Kirk)

10/08/1999, Completed writing absolute go to function for speakup
reading cursor.  (Andy)

04/08/1999, Completed routines for speaking punctuation and
non-character assigned keys, such as shift/control/alt.  (Andy)

02/08/1999, Added routines to kernel.c and speakup to allow capturing
of keystrokes when they're hit.  This allows us to speakup characters
which are typed for cursor control detection and pronouncing chars
which are not in the allowable punctuation set.  (Andy)

23/07/1999, Added routine speakup_check() to help track cursor
movement for cursor position pronunciation.  It isn't working yet.
(Kirk)

16/07/1999, Rewrote serial probe in ltlk driver to deal with autobaud
versions of the LiteTalk and DoubleTalk LT.  (Andy)

05/07/1999, Fixed a problem with characters like tick and dash which
don't get passed through to the synth even though they don't get
spoken.  They are needed to get the synth to handle some words
correctly.  (Kirk)

25/06/1999, Fixed a bug I missed which caused speakup to not read the
last character on a line with say_curr_line().  (Kirk)

25/06/1999, Fixed a bug which caused speakup to miss the end of
wrapped around words to the next line.  (Kirk)


version 0.07 

18/06/1999, Rewrote the Speakout driver to make it more inline with
the current driver design.  This driver hasn't been tested yet.  An
exercise for John.  (Andy)

17/06/1999, Finished rewriting and testing the new version of load_spk
utilities to handle multiple synths. This intailed redesigning the
entire way synth control protocals are stored and passed back and
forth between configuration files and the ioctl() handler. (Andy)

31/05/1999, Finished writing the driver for the Accent SA and
Transport external synthesizers.  (Kirk)

20/05/1999, Rewrote portions of the DTLK and LTLK drivers to fix slow
responce and choppiness of the output with say_curr_line and
say_screen. (Kirk)

18/05/1999, Finished the make config changes to make it easier to
include various synths before compiling the kernel.  This included a
lot of changes to make files and config.in files as well as the
config.hlp and maintainers documents.  We have moved speakup to its
own subdirectory under linux/drivers/char and will place all future
files in there. (Kirk)

17/05/1999, Placed newline characters at the end of all strings in
speakup.c to facilitate proper output with the Speakout driver. (Kirk)

13/05/1999, Finished writing and testing the ACNTPC driver for the
Accent PC synthesizer. (Kirk)

11/05/1999, Finished writing and testing the LTLK driver for the
LightTalk synthesizer. (Andy)

version 0.06

07/04/1999, Hunted down and squashed a bug which caused the system to
lock up when X11 allocated another console.  Now, you want to talk
about weird bugs? (Kirk and Andy)

05/04/1999, Fixed a small bug where the reading cursor structure was
floating when switching from console to console. (Kirk)

05/03/1999, Finally got repeat function to work correctly.  It didn't
want to give the proper repeat value on say_word and say_line. (Kirk)

4/27/1999, Changed the two shut up functions to sync the reading
cursor with the console cursor. (Kirk)

4/25/1999, Added a say hex and ASCII value function. (Brian)

4/22/1999, Added our own punctuation handling.  This will give us
consistancy across various synthesizers.  It also allows us custom
punctuation sets.  We have four levels currently, NONE, SOME, MOST,
ALL.  The some and most can be user defined, this will eventually
become a configuration option with loadspk. (Kirk)

4/19/1999, Added a repeat count function so that speakup doesn't read
all of a repeating sequence of characters like dashes or equal signs.
(Kirk)

4/15/1999, Rewrote the synth driver to be smaller and utilize
buffering all the time.  This entailed a total rewrite of the driver.
It works much better than the older style driver.  We won't try to be
compatible with external drivers anymore.  That caused us much grief!
(Kirk)

Version 0.05

03/01/1999, Modified the kernel code and wrote a number of functions
for loading and dumping speakups configuration settings.  The two
client programs are loadspk and dumpspk, see the accompanying README
and INSTALLATION files for details. (Andy)

Version 0.04

12/23/1998, Added park reading cursor function.  It toggles on and off
like the speakup off function. (Kirk)

12/10/1998, added code to announce cursor function calls.  This is to
help me try and figure out how and what to say when.  (Kirk)

12/08/1998, Added a check in say character to beep when the colour
attribute changes. (Kirk)

12/08/1998, rewrote say previous and next word to wrap around at the
end of lines and beep when going from line to line.  (Kirk)

12/07/1998, Fixed a little bug which read the bottom half of a
character which was higher than 0x7f.  It makes make menuconfig work a lot
nicer. (Kirk)

12/07/1998, Added some new functions to read from reading cursor to
bottom of screen, read from top of screen, read from left edge of
screen to reading cursor and read from reading cursor to right edge of
screen.  These are basically stub functions which call two general
purpose functions say_screen_from_to() and say_line_from_to().  (Kirk)

version 0.03

11/19/1998, Added say phonetic character function. I have temporarily
bound it to InsKeyPad-2. (Kirk)

11/19/1998, Added pronunciation of caps, num and scroll lock on and
off in keyboard.c. (Andy)

11/18/1998, Fixed the bug which made speakup say the entire current
word even if it wrapped over the end of line.  I also made
say_curr_word read the word to the right if you have your reading
cursor on the space just to the left of the word.  Makes it a little
nicer for reading links in lynx. (Kirk)

version 0.02

11/11/1998, fixed a little problem with the attr byte not being
correct when speakup_update() was called.  (Kirk)

11/11/1998, fixed consoles which are not the foreground console
speaking while they're updating their screens.  (Kirk)

11/11/1998, put in the GPL stuff and revised the documentation. (Kirk)

11/10/1998, Rewrote the say_screen function to be super faster than it
was. (Kirk)

11/10/1998, started to scratch in the soft parked system for reviewing
around the screen.  This is mostly to prevent the reading cursor from
moving whenever the screen clock or something gets updated. (Kirk)

11/09/1998, rewrote sections of dtlk.c to do away with writing out
inside cli()/sti() statements.  Now we time out after 4 usec and
assume we missed the bit drop on the rdy bit because of an interrupt.
Seems to work pretty well except the damn thing reads garbage until
the bogomips line.  Sure is more responsive normally though. (Kirk)

11/05/1998, got the total shut_up routine to work correctly.  In
vc_allocate() we were allocating a new structure every time it was
called.  It was supposed to be everytime a new console was
successfully allocated. (Kirk)

11/04/1998, Wrote colour attribute routine say_attrib().  I have
temporarily assigned it to the keypad-period. (Kirk)

11/02/1998, vmalloc() didn't work, to early in the boot process.  So
took our 8192 byte buffer directly by using kmem_start. (Kirk)

10/29/1998, Increased dtlk buffer to 8192 bytes by moving to vmalloc()
and vfree() instead of get_free_page()/free_page().  We have moved
from one PAGE_SIZE to two. (kirk)

10/29/1998, changed spk_shut_up to use bit 8 for total shut up instead
of a seperate variable.  Works independantly for each console
now. (kirk)

