SPEAK.M(V)                   5/30/74                   SPEAK.M(V)







NAME

     speak.m - voice synthesizer vocabulary



SYNOPSIS

     struct {

             int n;

             struct {

                     int key;

                     int phon;

             } entry[vocab.n];

             int m;

             char strings[vocab.m];

     } vocab



DESCRIPTION

     This type of file is created and used only  by  speak.   The

     keys  are  the  words,  word  fragments  and  letters of the

     vocabulary.



     The ith  key  is  stored  as  a  null-terminated  string  at

     &vocab.strings[entry[i].key].    Its   phonetic   string  is

     similarly stored at &vocab.strings[entry[i].phon].  The keys

     are  ordered  lexicographically.   The  contents  of certain

     parts  of  vocab   are   invariant:   vocab.entry[0].key   =

     vocab.entry[0].phon = vocab.strings[0] = 0.



     Each key is maintained exactly as  entered  into  speak,  so

     that  fragments are recognized by an initial `%' and letters

     by an initial `*'.



     Each phoneme of a phonetic string is maintained in vs  code.

     A  `%' in a phonetic string is represented as octal 001, and

     all following characters are kept literally.



SEE ALSO

     speak (VI), vs (VII)



BUGS

     The coding 001 for `%' precludes the  use  of  phoneme  3-1,

     which is no particular loss on the model 5 Vortrax, but will

     pinch on the model 6.  0200 would be a safe choice.