$Id: INSTALL,v 1.4 1994/02/24 15:03:05 a904209 Exp a904209 $

This package as distributed should compile with either Sun's /bin/cc or GCC
on SPARCStations, for linux, SGI and NeXT machines.

For other platforms you will need to re-write (or modify)
"hplay.c". The upper levels call this module with arrays of 16-bit linear
samples, at a rate determined by a global variable exported by this module.
The discussion of SPARC issues below may help.

For linux use makefile.linux and look at README.linux - I (nick) have got no
way of testing this.

For NeXT use makefile.next and look at README.NeXT    - I (nick) have got no
way of testing this.

For SGI I believe that a (modified?) version of makefile/Makefile discussed
below will work, but have not got full information or a ready prepared makefile.
Again I have no way of testing.

If you have a SPARCStation :

You will need to have run "make install" in /usr/demo/SOUND, or
you will need to modify -I and -L options passed to the compile and link
stages.

I recommend GCC, future versions may use GCC extensions (dynamic arrays)
to avoid some of the malloc/free operations.

If you have GNU make and GCC 2.3.3 .. 2.4.5 then GNUmakefile should
do what you need, but check it first - you may want to turn off -Wall
for a clean compile.

Alternatively you can use Sun's /bin/make and /bin/cc via "makefile".

In either case "Makefile" is "included" to provide the actual dependancies.
You will need to compile with optimization turned on, or (on older/cheaper
machines) you may not be able to synthesize speach as fast as it is said.
(If this happens you will get pauses between "sentences".)


For best speed in parwave.c all arthmetic is done in "float",
but with strict IEEE-754 compliance turned off.
This is fastest because in general (for SPARCs or at least some of them ...)

  - There is no integer multiply hardware
  - There IS floating point multiply hardware
  - Floating point multiply hardware cannot handle "double" in one pass.
  - Some of IEEE-754 options (e.g. denormals) are handled via software traps.

The computations in parwave.c should dominate the cpu requirements
of the other levels.


    -r rate-in-Hz    : default 8000Hz
    -u ulaw_file
    -l linear file

    [+|-]a           : Turns on or off /dev/audio, default is on if rate is legal.
    [+|-]s           : Turns on or off speaker    (default no change)
    [+|-]h           : Turns on or off headphones (default no change)
    -g gain-frac     : Adjusts gain 0.0 .. 1.0

def_pars.c now accepts
    -q                 : turns on warnings
    -c num-cascade     : Switches to CASCADE_PARALLEL with number of cascaded formants
    -f mSec-per-frame  : Sets frame length
    -I                 : Impulsive source (default is "NATURAL")
    -F number          : f0_flutter value


SPARCStation-10 can play audio at rates other than 8000Hz, so if -r is
used with an acceptable rate it still plays.
If you have '10 then "man 4 dbri" explains legal rates.

