#include <errno.h>
#include <math.h>
#include <stdio.h>
#include <string.h>
#define FREQ 440.0
#define RATE 900.0
#define DURATION 16000
static const char audio_dev[] = "/dev/dsp";
int main(int argc, char *argv[])
{
FILE *audio_fd;
unsigned char sample;
float f;
int i, j;
if (!(audio_fd = fopen(audio_dev, "w")))
{
fprintf(stderr, "%s: open %s: %s\n", *argv, audio_dev, strerror(errno));
return 1;
}
for (i=DURATION, f=0.0; i--; f += (FREQ/RATE))
{
sample = sin(f)*128.0 + 128;
fputc(sample, audio_fd);
}
fclose(audio_fd);
return 0;
}