#include #include #include #include #include #define TIME_UP 100 #define TIME_DOWN 700 #define TIME (TIME_UP+TIME_DOWN) static int nint(double d) { if (d < 0) return(d-.5); else return(d+.5); } static void write_sample(int s) { if (s < -32767) s = -32767; if (s > 32767) s = 32767; putchar((s>>8)&0xff); putchar(s&0xff); } static double noise(void) { static int didinit = 0; if (! didinit) { srandom(time(0)+getpid()); didinit = 1; } return((((random()&0x00ffffff)/(double)0x00ffffff)-.5)*2); } static double volume(int age) { if (age < TIME_UP) { return(age/(double)TIME_UP); } else { return((TIME-age)/(double)TIME_DOWN); } } int main(void); int main(void) { int i; for (i=0;i