/******************************************************************************
**
** beep.c -- Makes system beeps.
** Chris J, Oct 2004; cej@nightwolf.org.uk
**
** BUILD/INSTALL INSTRUCTIONS:
** 1. gcc -O2 -Wall -W beep.c -o beep
** 2. strip beep
** 3. Copy 'beep' to /bin or /sbin
** 4. chmod 755 /bin/beep (or /sbin/beep)
**
** USING:
** 1. With no parameters, makes a single 'beep'
** 2. With parameters, makes multiple beeps sleeping between each one:
**        beep 200 400 1000 200
**    Makes five beeps, with pauses of 200, 400, 1000 and 200 milliseconds
**    respectively.
**
******************************************************************************/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

int main (int argc, char **argv)
{
	int i;

	if (argc == 1) {
		putchar ('\007');
	} else {
		for (i = 1; i < argc; i++) {
			putchar ('\007');
			fflush(stdout);
			usleep ((atoi(argv[i]) == 0 ? 1 : atoi(argv[i])) * 1000);
		}
		putchar ('\007');
		fflush(stdout);
	}
	return 0;
}

