Dectalk Linux Question
Jacob Schmude
jschmude at adelphia.net
Sat Apr 3 14:50:51 EST 2004
Hi Kirk
Yes, this makes sense. I've modified my local copy of the
speechd-up code some more, and have gotten partially successful results.
What I've done is to implement a check feature that checks if the current
character sent is a flush character and, if it is, to shut the thing up.
It's these results that prompt me to ask a question.
You said the softsynth driver handles output like all other
synthesizer drivers, that is, to send a shut-up command at the beginning
of any new text. However, after using the hardware synth driver for the
dec express and the softsynth driver, don't they behave in exactly the
opposite manner? For instance, I've now gotten the softsynth driver to
interrupt when new text appears on the screen, and to be able to read the
whole screen. However, while the softsynth driver sends a flush on all
new text, the decexp driver doesn't appear to exhibit this behavior. I
say this because, with the decexp driver, screen changes do not cause an
interrupt. I'll use the progress message in fdformat as an example, the
decexp driver will monotonously read *every* percent that comes its way.
However, the softsynth driver will interrupt itself and read only the
current percentile. In fact, it would appear to me that the decexp driver doesn't send a flush at the beginning
of every new text, but on a key press. This contrasts with the softsynth
driver's seeming behavior, to send no flushes on key presses and flushes
at the beginning of new text.
I've examined the log that speechd-up can produce, and it does not
appear to see any flush characters head its way on key presses. It only sees them when new text appears, and it doesn't
seem to matter what the buffer size is set to.
Regards
On Fri, 2 Apr 2004, Kirk Reiser wrote:
> Hi Jacob: Thank you for your endevours at this. Your results are
> quite interesting. The softsynth however handles the output like all
> synths do though, that is to send a synth flush character (in this
> case ctrl-x) at the start of any new text being sent out. It also
> sends the flush character whenever a kp-enter or shift/control/alt are
> touched. If whatever device that is reading the softsynth device
> reads the device in chunks that is as much as it wants at a time there
> will be no new flush characters at the beginning of subsequent reads
> because that is not newly sent data. So if the speechd-up driver only
> flushes it's buffers when it gets a flush character from the softsynth
> driver the data should be handled correctly. If it can only handle
> certain buffer sizes of data then it should only read that much data
> from the driver at a time.
>
> Does this make sense?
More information about the Speakup
mailing list