home *** CD-ROM | disk | FTP | other *** search
/ Geek Gadgets 1 / ADE-1.bin / ade-dist / at-inc-bin.lha / os-include / devices / narrator.i < prev    next >
Text File  |  1993-10-15  |  4KB  |  132 lines

  1.     IFND DEVICES_NARRATOR_I
  2. DEVICES_NARRATOR_I    SET 1
  3. **
  4. **    $VER: narrator.i 1.7 (12.3.91)
  5. **    Includes Release 40.15
  6. **
  7. **    V37 Narrator device ASM include file
  8. **
  9. **    Copyright 1990, 1991 Joseph Katz/Mark Barton.
  10. **    All rights reserved.
  11. **
  12. **    This include file (narrator.i) may be freely distributed
  13. **    as long as the above copyright notice remains intact.
  14. **
  15.  
  16.     IFND    EXEC_IO_I
  17.     INCLUDE "exec/io.i"
  18.     ENDC
  19.  
  20.  
  21. *        ;------    Default values, user parms, and general constants
  22.  
  23. DEFPITCH    EQU    110        ;DEFAULT PITCH
  24. DEFRATE    EQU    150        ;DEFAULT RATE
  25. DEFVOL        EQU    64        ;DEFAULT VOLUME (FULL)
  26. DEFFREQ    EQU    22200        ;DEFAULT SAMPLING FREQUENCY
  27. NATURALF0    EQU    0        ;NATURAL F0 CONTOURS
  28. ROBOTICF0    EQU    1        ;MONOTONE PITCH
  29. MANUALF0    EQU    2        ;MANUAL SETTING OF PITCH
  30. MALE        EQU    0        ;MALE SPEAKER
  31. FEMALE        EQU    1        ;FEMALE SPEAKER
  32. DEFSEX        EQU    MALE        ;DEFAULT SEX
  33. DEFMODE    EQU    NATURALF0    ;DEFAULT MODE
  34. DEFARTIC    EQU    100        ;DEFAULT ARTICULATION 100%
  35. DEFCENTRAL    EQU    0        ;DEFAULT PERCENTAGE OF CENTRALIZATION=0
  36. DEFF0PERT    EQU    0        ;DEFAULT F0 PERTURBATION
  37. DEFF0ENTHUS    EQU    32        ;DEFAULT F0 ENTHUSIASM (in 32nds)
  38. DEFPRIORITY    EQU    100        ;DEFAULT SPEAKING PRIORITY
  39.  
  40.  
  41. *        ;------    Parameter bounds
  42.  
  43. MINRATE    EQU     40        ;MINIMUM SPEAKING RATE
  44. MAXRATE    EQU    400        ;MAXIMUM SPEAKING RATE
  45. MINPITCH    EQU     65        ;MINIMUM PITCH
  46. MAXPITCH    EQU    320        ;MAXIMUM PITCH
  47. MINFREQ    EQU    5000        ;MINIMUM SAMPLING FREQUENCY
  48. MAXFREQ    EQU   28000        ;MAXIMUM SAMPLING FREQUENCY
  49. MINVOL        EQU      0        ;MINIMUM VOLUME
  50. MAXVOL        EQU     64        ;MAXIMUM VOLUME
  51. MINCENT    EQU      0        ;MINIMUM DEGREE OF CENTRALIZATION
  52. MAXCENT    EQU    100        ;MAXIMUM DEGREE OF CENTRALIZATION
  53.  
  54. *        ;------    Driver error codes
  55.  
  56. ND_NotUsed    EQU     -1        ;
  57. ND_NoMem    EQU     -2        ;Can't allocate memory
  58. ND_NoAudLib    EQU     -3        ;Can't open audio device
  59. ND_MakeBad    EQU     -4        ;Error in MakeLibrary call
  60. ND_UnitErr    EQU     -5        ;Unit other than 0
  61. ND_CantAlloc    EQU     -6        ;Can't allocate the audio channel
  62. ND_Unimpl    EQU     -7        ;Unimplemented command
  63. ND_NoWrite    EQU     -8        ;Read for mouth shape without write
  64. ND_Expunged    EQU     -9        ;Can't open, deferred expunge bit set
  65. ND_PhonErr    EQU    -20        ;Phoneme code spelling error
  66. ND_RateErr    EQU    -21        ;Rate out of bounds
  67. ND_PitchErr    EQU    -22        ;Pitch out of bounds
  68. ND_SexErr    EQU    -23        ;Sex not valid
  69. ND_ModeErr    EQU    -24        ;Mode not valid
  70. ND_FreqErr    EQU    -25        ;Sampling freq out of bounds
  71. ND_VolErr    EQU    -26        ;Volume out of bounds
  72. ND_DCentErr    EQU    -27        ;Degree of centralization out of bounds
  73. ND_CentPhonErr    EQU    -28        ;Invalid central phon
  74.  
  75.  
  76. *        ;------ Bit/field definitions of "flags" field of IORB.
  77.  
  78. NDB_NEWIORB    EQU    0        ;Use new IORB flag
  79. NDB_WORDSYNC    EQU    1        ;Generate word sync messages
  80. NDB_SYLSYNC    EQU    2        ;Generate syllable sync messages
  81.  
  82. NDF_NEWIORB    EQU    (1<<NDB_NEWIORB)
  83. NDF_WORDSYNC    EQU    (1<<NDB_WORDSYNC)
  84. NDF_SYLSYNC    EQU    (1<<NDB_SYLSYNC)
  85.  
  86.  
  87. *        ;------ Write IORequest block
  88.  
  89.  STRUCTURE NDI,IOSTD_SIZE
  90.     UWORD    NDI_RATE        ;Speaking rate in words/minute
  91.     UWORD    NDI_PITCH        ;Baseline pitch in Hertz
  92.     UWORD    NDI_MODE        ;F0 mode
  93.     UWORD    NDI_SEX            ;Speaker sex
  94.     APTR    NDI_CHMASKS        ;Pointer to audio channel masks
  95.     UWORD    NDI_NUMMASKS        ;Size of channel masks array
  96.     UWORD    NDI_VOLUME        ;Channel volume
  97.     UWORD    NDI_SAMPFREQ        ;Sampling frequency
  98.     UBYTE    NDI_MOUTHS        ;Generate mouths? (Boolean value)
  99.     UBYTE    NDI_CHANMASK        ;Actual channel mask used (internal use)
  100.     UBYTE    NDI_NUMCHAN        ;Number of channels used (internal use)
  101.     UBYTE    NDI_FLAGS        ;New feature flags
  102.     UBYTE    NDI_F0ENTHUSIASM    ;F0 excursion factor
  103.     BYTE    NDI_F0PERTURB        ;Amount of F0 perturbation
  104.     BYTE    NDI_F1ADJ        ;F1 adjustment in ±5% steps
  105.     BYTE    NDI_F2ADJ        ;F2 adjustment in ±5% steps
  106.     BYTE    NDI_F3ADJ        ;F3 adjustment in ±5% steps
  107.     BYTE    NDI_A1ADJ        ;A1 adjustment in decibels
  108.     BYTE    NDI_A2ADJ        ;A2 adjustment in decibels
  109.     BYTE    NDI_A3ADJ        ;A3 adjustment in decibels
  110.     UBYTE    NDI_ARTICULATE        ;Transition time multiplier
  111.     UBYTE    NDI_CENTRALIZE        ;Degree of vowel centralization
  112.     APTR    NDI_CENTPHON        ;Ptr to ASCII central phon code
  113.     BYTE    NDI_AVBIAS        ;AV bias
  114.     BYTE    NDI_AFBIAS        ;AF bias
  115.     BYTE    NDI_PRIORITY        ;Priority while speaking
  116.     BYTE    NDI_PAD1        ;For alignment
  117.     LABEL    NDI_SIZE        ;Size of Narrator IORequest block
  118.  
  119.  
  120. *        ;------    Mouth read IORB
  121.  
  122.  STRUCTURE MRB,NDI_SIZE
  123.     UBYTE    MRB_WIDTH        ;Mouth width
  124.     UBYTE    MRB_HEIGHT        ;Mouth height
  125.     UBYTE    MRB_SHAPE        ;Compressed shape (height/width)
  126.     UBYTE    MRB_SYNC        ;Sync events
  127.     LABEL    MRB_SIZE
  128.  
  129.  
  130.     ENDC    ; DEVICES_NARRATOR_I
  131.  
  132.