| #define phDELETED 14 | #define phDELETED 14 | ||||
| #define phINVALID 15 | #define phINVALID 15 | ||||
| // phoneme properties | |||||
| // bits 16-19 give place of articulation | |||||
| #define phARTICULATION 0xf0000 | |||||
| #define phUNSTRESSED 0x02 | |||||
| #define phVOICELESS 0x08 | |||||
| #define phVOICED 0x10 | |||||
| #define phSIBILANT 0x20 | |||||
| #define phNOLINK 0x40 | |||||
| #define phTRILL 0x80 | |||||
| #define phPALATAL 0x200 | |||||
| #define phBRKAFTER 0x4000 // [*] add a post-pause | |||||
| #define phNONSYLLABIC 0x100000 // don't count this vowel as a syllable when finding the stress position | |||||
| #define phLONG 0x200000 | |||||
| #define phLENGTHENSTOP 0x400000 // make the pre-pause slightly longer | |||||
| #define phRHOTIC 0x800000 // bit 23 | |||||
| #define phNOPAUSE 0x1000000 | |||||
| #define phPREVOICE 0x2000000 // for voiced stops | |||||
| // phflags | |||||
| #define phFLAGBIT_UNSTRESSED 1 | |||||
| #define phFLAGBIT_VOICELESS 3 | |||||
| #define phFLAGBIT_VOICED 4 | |||||
| #define phFLAGBIT_SIBILANT 5 | |||||
| #define phFLAGBIT_NOLINK 6 | |||||
| #define phFLAGBIT_TRILL 7 | |||||
| #define phFLAGBIT_PALATAL 9 | |||||
| #define phFLAGBIT_BRKAFTER 14 // [*] add a post-pause | |||||
| #define phARTICULATION 0xf0000 // bits 16-19 | |||||
| #define phFLAGBIT_NONSYLLABIC 20 // don't count this vowel as a syllable when finding the stress position | |||||
| #define phFLAGBIT_LONG 21 | |||||
| #define phFLAGBIT_LENGTHENSTOP 22 // make the pre-pause slightly longer | |||||
| #define phFLAGBIT_RHOTIC 23 | |||||
| #define phFLAGBIT_NOPAUSE 24 | |||||
| #define phFLAGBIT_PREVOICE 25 // for voiced stops | |||||
| #define phFLAGBIT_FLAG1 28 | |||||
| #define phFLAGBIT_FLAG2 29 | |||||
| #define phFLAGBIT_LOCAL 31 // used during compilation | |||||
| #define phFLAG1 0x10000000 | |||||
| #define phFLAG2 0x20000000 | |||||
| #define phLOCAL 0x80000000 // used during compilation | |||||
| // phoneme properties | |||||
| #define phUNSTRESSED (1 << phFLAGBIT_UNSTRESSED) | |||||
| #define phVOICELESS (1 << phFLAGBIT_VOICELESS) | |||||
| #define phVOICED (1 << phFLAGBIT_VOICED) | |||||
| #define phSIBILANT (1 << phFLAGBIT_SIBILANT) | |||||
| #define phNOLINK (1 << phFLAGBIT_NOLINK) | |||||
| #define phTRILL (1 << phFLAGBIT_TRILL) | |||||
| #define phPALATAL (1 << phFLAGBIT_PALATAL) | |||||
| #define phBRKAFTER (1 << phFLAGBIT_BRKAFTER) | |||||
| #define phNONSYLLABIC (1 << phFLAGBIT_NONSYLLABIC) | |||||
| #define phLONG (1 << phFLAGBIT_LONG) | |||||
| #define phLENGTHENSTOP (1 << phFLAGBIT_LENGTHENSTOP) | |||||
| #define phRHOTIC (1 << phFLAGBIT_RHOTIC) | |||||
| #define phNOPAUSE (1 << phFLAGBIT_NOPAUSE) | |||||
| #define phPREVOICE (1 << phFLAGBIT_PREVOICE) | |||||
| #define phFLAG1 (1 << phFLAGBIT_FLAG1) | |||||
| #define phFLAG2 (1 << phFLAGBIT_FLAG2) | |||||
| #define phLOCAL (1 << phFLAGBIT_LOCAL) | |||||
| // fixed phoneme code numbers, these can be used from the program code | // fixed phoneme code numbers, these can be used from the program code | ||||
| #define phonCONTROL 1 | #define phonCONTROL 1 |