1 #ifndef DEVICES_NARRATOR_H
    2 #define DEVICES_NARRATOR_H
    3 
    4 /*
    5 	narrator.device include
    6 
    7 	Copyright © 2002 The MorphOS Development Team, All Rights Reserved.
    8 */
    9 
   10 #ifndef EXEC_IO_H
   11 # include <exec/io.h>
   12 #endif
   13 
   14 #pragma pack(2)
   15 
   16 
   17 #define NDB_NEWIORB   0
   18 #define NDB_WORDSYNC  1
   19 #define NDB_SYLSYNC   2
   20 
   21 #define NDF_NEWIORB   (1<<NDB_NEWIORB)
   22 #define NDF_WORDSYNC  (1<<NDB_WORDSYNC)
   23 #define NDF_SYLSYNC   (1<<NDB_SYLSYNC)
   24 
   25 
   26 #define ND_NoMem        -2
   27 #define ND_NoAudLib     -3
   28 #define ND_MakeBad      -4
   29 #define ND_UnitErr      -5
   30 #define ND_CantAlloc    -6
   31 #define ND_Unimpl       -7
   32 #define ND_NoWrite      -8
   33 #define ND_Expunged     -9
   34 #define ND_PhonErr      -20
   35 #define ND_RateErr      -21
   36 #define ND_PitchErr     -22
   37 #define ND_SexErr       -23
   38 #define ND_ModeErr      -24
   39 #define ND_FreqErr      -25
   40 #define ND_VolErr       -26
   41 #define ND_DCentErr     -27
   42 #define ND_CentPhonErr  -28
   43 
   44 
   45 #define DEFPITCH     110
   46 #define DEFRATE      150
   47 #define DEFVOL       64
   48 #define DEFFREQ      22200
   49 #define MALE         0
   50 #define FEMALE       1
   51 #define NATURALF0    0
   52 #define ROBOTICF0    1
   53 #define MANUALF0     2
   54 #define DEFSEX       MALE
   55 #define DEFMODE      NATURALF0
   56 #define DEFARTIC     100
   57 #define DEFCENTRAL   0
   58 #define DEFF0PERT    0
   59 #define DEFF0ENTHUS  32
   60 #define DEFPRIORITY  100
   61 
   62 
   63 #define MINRATE   40
   64 #define MAXRATE   400
   65 #define MINPITCH  65
   66 #define MAXPITCH  320
   67 #define MINFREQ   5000
   68 #define MAXFREQ   28000
   69 #define MINVOL    0
   70 #define MAXVOL    64
   71 #define MINCENT   0
   72 #define MAXCENT   100
   73 
   74 
   75 struct narrator_rb
   76 {
   77 	struct IOStdReq  message;
   78 	UWORD            rate;
   79 	UWORD            pitch;
   80 	UWORD            mode;
   81 	UWORD            sex;
   82 	UBYTE           *ch_masks;
   83 	UWORD            nm_masks;
   84 	UWORD            volume;
   85 	UWORD            sampfreq;
   86 	UBYTE            mouths;
   87 	UBYTE            chanmask;
   88 	UBYTE            numchan;
   89 	UBYTE            flags;
   90 	UBYTE            F0enthusiasm;
   91 	UBYTE            F0perturb;
   92 	BYTE             F1adj;
   93 	BYTE             F2adj;
   94 	BYTE             F3adj;
   95 	BYTE             A1adj;
   96 	BYTE             A2adj;
   97 	BYTE             A3adj;
   98 	UBYTE            articulate;
   99 	UBYTE            centralize;
  100 	char            *centphon;
  101 	BYTE             AVbias;
  102 	BYTE             AFbias;
  103 	BYTE             priority;
  104 	BYTE             pad1;
  105 };
  106 
  107 
  108 struct mouth_rb
  109 {
  110 	struct narrator_rb voice;
  111 	UBYTE              width;
  112 	UBYTE              height;
  113 	UBYTE              shape;
  114 	UBYTE              sync;
  115 };
  116 
  117 
  118 #pragma pack()
  119 
  120 #endif /* DEVICES_NARRATOR_H */