home *** CD-ROM | disk | FTP | other *** search
/ Frozen Fish 1: Amiga / FrozenFish-Apr94.iso / bbs / cbm / nduk-v37.lha / V37 / include / devices / narrator.i < prev    next >
Text File  |  1991-11-27  |  4KB  |  134 lines

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