Commit | Line | Data |
---|---|---|
c6e3fd22 WH |
1 | /* speakup_dtlk.h - header file for speakups DoubleTalk driver. */ |
2 | ||
3 | #define SYNTH_IO_EXTENT 0x02 | |
4 | #define SYNTH_CLEAR 0x18 /* stops speech */ | |
5 | /* TTS Port Status Flags */ | |
6 | #define TTS_READABLE 0x80 /* mask for bit which is nonzero if a | |
13d825ed AF |
7 | * byte can be read from the TTS port |
8 | */ | |
c6e3fd22 | 9 | #define TTS_SPEAKING 0x40 /* mask for SYNC bit, which is nonzero |
13d825ed AF |
10 | * while DoubleTalk is producing |
11 | * output with TTS, PCM or CVSD | |
12 | * synthesizers or tone generators | |
13 | * (that is, all but LPC) | |
14 | */ | |
c6e3fd22 | 15 | #define TTS_SPEAKING2 0x20 /* mask for SYNC2 bit, |
13d825ed AF |
16 | * which falls to zero up to 0.4 sec |
17 | * before speech stops | |
18 | */ | |
c6e3fd22 | 19 | #define TTS_WRITABLE 0x10 /* mask for RDY bit, which when set to |
13d825ed AF |
20 | * 1, indicates the TTS port is ready |
21 | * to accept a byte of data. The RDY | |
22 | * bit goes zero 2-3 usec after | |
23 | * writing, and goes 1 again 180-190 | |
24 | * usec later. | |
25 | */ | |
c6e3fd22 | 26 | #define TTS_ALMOST_FULL 0x08 /* mask for AF bit: When set to 1, |
4d0bdcb1 AS |
27 | * indicates that less than 300 bytes |
28 | * are available in the TTS input | |
29 | * buffer. AF is always 0 in the PCM, | |
30 | * TGN and CVSD modes. | |
31 | */ | |
c6e3fd22 | 32 | #define TTS_ALMOST_EMPTY 0x04 /* mask for AE bit: When set to 1, |
13d825ed AF |
33 | * indicates that less than 300 bytes |
34 | * are remaining in DoubleTalk's input | |
35 | * (TTS or PCM) buffer. AE is always 1 | |
36 | * in the TGN and CVSD modes. | |
37 | */ | |
c6e3fd22 WH |
38 | |
39 | /* data returned by Interrogate command */ | |
40 | struct synth_settings { | |
41 | u_short serial_number; /* 0-7Fh:0-7Fh */ | |
42 | u_char rom_version[24]; /* null terminated string */ | |
43 | u_char mode; /* 0=Character; 1=Phoneme; 2=Text */ | |
44 | u_char punc_level; /* nB; 0-7 */ | |
45 | u_char formant_freq; /* nF; 0-9 */ | |
46 | u_char pitch; /* nP; 0-99 */ | |
47 | u_char speed; /* nS; 0-9 */ | |
48 | u_char volume; /* nV; 0-9 */ | |
49 | u_char tone; /* nX; 0-2 */ | |
50 | u_char expression; /* nE; 0-9 */ | |
51 | u_char ext_dict_loaded; /* 1=exception dictionary loaded */ | |
52 | u_char ext_dict_status; /* 1=exception dictionary enabled */ | |
53 | u_char free_ram; /* # pages (truncated) remaining for | |
13d825ed AF |
54 | * text buffer |
55 | */ | |
c6e3fd22 WH |
56 | u_char articulation; /* nA; 0-9 */ |
57 | u_char reverb; /* nR; 0-9 */ | |
58 | u_char eob; /* 7Fh value indicating end of | |
13d825ed AF |
59 | * parameter block |
60 | */ | |
c6e3fd22 WH |
61 | u_char has_indexing; /* nonzero if indexing is implemented */ |
62 | }; |