!pr1
!lm12
!rm75
Speaking of Speech..................................Bill Morgan

Just thought I'd tell you a little about the way I played around with a speech program like Bob's.  I couldn't find the disk with the exact code, but here's what I remember about it.  I wanted a brief Applesoft program which would say the numbers 0 through 9 when a number key was pressed.

To do this, first record your voice on tape, reciting the ten numbers.  Then play the tape into your Apple, using the RECORD routine in Bob's program.  Now, by using the system monitor to examine memory, it's easy to scan through the buffer and see where each word begins and ends.  The gaps between words will be long stretches of "00 ... 00", with a few stray bytes of noise along the way.  Words will be stretches of random-looking values.  It's interesting to see the difference between a word like "two", which starts abruptly and trails off, and one like "eight", which starts more slowly and ends suddenly.

Now you can use the monitor move command to remove the gaps between words.  Move the data for "one" to the very beginning of the buffer, and note its start and end addresses.  Then move "two" down to the space just after "one", and note the addresses.  Carrying on like this, you can compress the number data into about half the space of the original recording.

Assemble the playback portion of Bob's program at $300.  All you should need is lines 1760-1950 (plus the needed .EQ's), with an RTS substituted for the JMP FINISH at line 1920.  To say a number, all your Applesoft program has to do is get the starting and ending addresses of a word from an array, POKE the addresses into locations 60-63, and CALL 768.

