_
| \
| \
| | \
__ | |\ \ __
_____________ _/_/ | | \ \ _/_/ _____________
| ___________ _/_/ | | \ \ _/_/ ___________ |
| | _/_/_____ | | > > _/_/_____ | |
| | /________/ | | / / /________/ | |
| | | | / / | |
| | | |/ / | |
| | | | / | |
| | | / | |
| | |_/ | |
| | | |
| | c o m m u n i c a t i o n s | |
| |________________________________________________________________| |
|____________________________________________________________________|
...presents... redbox.c
by Javaman
__//////\ -cDc- CULT OF THE DEAD COW -cDc- /\\\\\\__
Est. 1984 \\\\\\/ cDc paramedia : text #379-07/24/2001 \////// Est. 1984
__ _ _ __ _ _ __ _ _ __ _ _ __
|__heal_the_sick__raise_the_dead__cleanse_the_lepers__cast_out_demons__|
/* redbox.c */
/* Written by Javaman */
#include /* Yes, this code compiles. */
#include /* gcc -o redbox redbox.c -lm */
#include /* Don't forget to link in the math library. */
#include /* This code requires linux and sound support */
#include
#include
#include
#include
#include
#define QUANTIZE 16
#define CHANNELS 1
int main(void)
{
int n; /* Were things really better back in the day? I seem to */
unsigned long int i; /* not be able to let go of the past, tend */
int sound_fd, status; /* to revel on previous experiences, just */
unsigned long int bufsize, arg; /* because it is ... comfortable. */
unsigned short int *buf; /* ... as pathetic as a middle-aged */
unsigned int samplerate = 32000; /* corporate drone watching tapes */
unsigned long int samples = samplerate * .330; /* of his old football */
sound_fd = open("/dev/dsp", O_RDWR); /* games from back in the day, */
if (sound_fd < 0) { /* when "your mother and I were dating." But the */
perror("/dev/dsp"); exit(1); /* warm fuzzy of nostalgia, */
} /* knowing that yes, you accomplished something, makes the world */
bufsize = samples * sizeof(unsigned short int); /* feel a bit easier */
buf = (unsigned short int *) malloc(bufsize); /* to deal with, and */
arg = QUANTIZE; /* eventual death acceptable, almost as though we */
status = ioctl(sound_fd, SOUND_PCM_WRITE_BITS, &arg); /* have made */
if (status == -1) { /* indelible marks upon the history of */
perror("SOUND_PCM_WRITE_BITS ioctl failed"); /* whatever. */
exit(1); /* But a sigh usually caps off the standard cock- */
} /* stroking session of the BBS-dayz bullshit, when we had */
if (arg != QUANTIZE) { /* only 32 baud modems. Maybe it's that */
perror("unable to set quantize rate"); /* I need to know */
exit(1); /* how little I knew, how young I was, to re- */
} /* assure myself of the growth that I have (?) experienced, */
arg = samplerate; /* magic marker lines with my handle and the date, */
status = ioctl(sound_fd, SOUND_PCM_WRITE_RATE, &arg); /* maybe */
if (status == -1) { /* a dial-in or two on some sort of collective */
perror("SOUND_PCM_WRITE_RATE ioctl failed"); /* parental */
exit(1); /* doorjam belonging to history herself. It could be */
} /* a quest for immortality, for power -- all expressions of sexual */
arg = CHANNELS; /* drives -- or maybe a hug for my inner child. */
status = ioctl(sound_fd, SOUND_PCM_WRITE_CHANNELS, &arg); /* But I */
if (status == -1) { /* am not by any means someone who has any clue */
perror("SOUND_PCM_WRITE_CHANNELS ioctl failed"); /* about */
exit(1); /* anything, other than distilled problems which */
} /* can be expressed in purely logical situations, which is */
printf("Bufsize: %i\n", bufsize); /* almost a moot point when dealing */
for (i = 0; i < samples; i++) { /* with complex systems such */
buf[i] = 0; /* as human interaction. Feeling... like a jazz */
} /* note on life, thoughts from the crowds, interacting, loving? */
for (n = 0; n < 5; n++) { /* each one special in its own way. */
for (i = (n * .066 * samplerate); i < (samplerate * /* It has */
(.033 + .066*n)); i++) { /* been said that empathy is what */
buf[i] = (unsigned short int) /* sets us apart from the */
((cos(2*M_PI*1700*i/samplerate) + /* animals, but does */
cos(2*M_PI*2200*i/samplerate)) * 10000); /* anyone give a */
} /* rat's ass about other people when their own lives are at a */
} /* crossroads? Nihilism. The opposite of hippiedom? The cyclical */
printf("Generating tones...\n"); /* nature of the thread, which */
status = write(sound_fd, buf, bufsize); /* should just be trashed, */
if (status != bufsize) { /* but that is okay. Vibes can be recorded, */
perror("wrote wrong number of bytes"); /* saved, reflected */
} /* upon, cherished possibly, forgotten probably. */
status = ioctl(sound_fd, SOUND_PCM_SYNC, 0); /* but it can be hoped */
if (status == -1) { /* that someone, years from now, reads this, */
perror("SOUND_PCM_SYNC ioctl failed"); /* and imagines the */
} /* the writer, back in the day, reminiscing on when the sounds */
return 0; /* and the medium actually meant freedom of thought, and, */
} /* possibly, a shot at eternal life. */
.-. _ _ .-.
/ \ .-. ((___)) .-. / \
/.ooM \ / \ .-. [ x x ] .-. / \ /.ooM \
-/-------\-------/-----\-----/---\--\ /--/---\-----/-----\-------/-------\-
/lucky 13\ / \ / `-(' ')-' \ / \ /lucky 13\
\ / `-' (U) `-' \ /
`-' the original e-zine `-' _
Oooo eastside westside / ) __
/)(\ ( \ WORLDWIDE / ( / \
\__/ ) / Copyright (c) 2001 cDc communications and the author. \ ) \)(/
(_/ CULT OF THE DEAD COW is a registered trademark of oooO
cDc communications, 1369 Madison Ave. #423, NY, NY 10128, USA _
oooO All rights reserved. Edited by Omega. __ ( \
/ ) /)(\ / \ ) \
\ ( \__/ Save yourself! Go outside! Do something! \)(/ ( /
\_) xXx BOW to the COW xXx Oooo