brendan@otc.otca.oz.au (06/08/90)
How To Write a Rap / House(glorified disco) / Disco Song -------------------------------------------------------- LYRICS: Simply take one word or phrase from each of the three columns below, in order to make one line. Repeat randomly four times. Repeat process again twice to make chorus. Repeat last line 17 times. Don't worry if they don't make sense. Column 1 Column 2 Column 3 Move it Triple Beat The City Streets Get Up Body Heat You'll be Humpin Pump It Up Feel the Beat Before the Night is Over Get Down Get Around Shake your Meat Shake it The Joint Is Jumpin Bustin Loose Pump the Jam Feet are Stompin Disco Heat BACKBEAT: Program a drum machine in neverending 4/4 time. Add occasional snare. BODY: Add monotonous bass in one key. Overlay with puncy sounding synth. Get previously unknown singer to talk the lyrics so as not to test the range of the vocal chords. PRODUCTION: Put above ingredients together on master tape. Press discs. Give the label a suitably techno-funk sounding name, like "Mixmastermeatbeaters". Sell 5 million copies to unsuspecting public. Win MTV Award. The sad thing is the public will *think* you've been creative... Better still, this process can be automated via a lyric C program, a random synth base and music generator, and the discs mastered directly by computer control. This relieves the composer of decisions regarding which phrases and notes to use in production. By pressing the <RET> key, more than 100 CD's a week can be generated. This I have done, below is a sample composition guaranteed to make megabucks: ----- "Get down" by Mixmastermeatbeaters Get down the joint is jumpin' you'll be humpin' Shake it feet are stompin' in the city streets Pump the jam feel the beat with disco heat Move it get around 'til the night is over (chorus) Get down to triple beat shake your meat Pump it up get around in the city streets Pump the jam to triple beat you'll be humpin' Shake it get body heat 'til the night is over Get up the joint is jumpin' you'll be humpin' Pump it up feet are stompin' I'm bustin loose (chorus) Get down to triple beat shake your meat Pump it up get around in the city streets Pump it up get around in the city streets Pump it up get around in the city streets Pump it up get around in the city streets etc.. ----- Note that this is indistinguishable from the human generated version. For those who wish to compose themselves, the program appears in the next posting. I hope for a cut in the royalties :-) !----------------------------------------------------------------------- #include <stdio.h> #include <time.h> #include <ctype.h> static char col1[6][30] = { "Move it", "Get up", "Pump it up", "Get down", "Shake it", "Pump the jam" }; static char col2[6][30] = { " to triple beat ", " get body heat ", " feel the beat ", " get around ", " the joint is jumpin' ", " feet are stompin' " }; static char col3[6][30] = { "in the city streets\n", "you'll be humpin'\n", "'til the night is over\n", "shake your meat\n", "I'm bustin loose\n", "with disco heat\n" }; main() { int chor[2][3]; int i,j,getpid(); long now; /* Generate random seed */ now = time(&now) / rand(); srand(getpid() + (int)((now >> 16) + now + time(&now))); /* Generate chorus and title */ for (i = 0; i < 2; i++) for (j = 0; j < 3; j++) chor[i][j] = rand() % 6; printf ("\n\"%s\" by Mixmastermeatbeaters\n\n",col1[(chor[0][0])]); /* Print out song */ verse(); chorus(chor); verse(); chorus(chor); lastline(chor); printf("-----\n"); } chorus(chor) int chor[2][3]; { int i; printf("\n(chorus)\n"); for (i = 0; i < 2; i++) { printf("%s",col1[(chor[i][0])]); printf("%s",col2[(chor[i][1])]); printf("%s",col3[(chor[i][2])]); } printf("\n"); } verse() { int i; for (i = 0; i < 4; i++) { printf("%s",col1[rand()%6]); printf("%s",col2[rand()%6]); printf("%s",col3[rand()%6]); } } lastline(chor) int chor[2][3]; { int i; for (i = 0; i < 17; i++) { printf("%s",col1[chor[1][0]]); printf("%s",col2[chor[1][1]]); printf("%s",col3[chor[1][2]]); } printf("\n"); } !----------------------------------------------------------------------- Brendan Jones ACSnet: brendan@otc.otca.oz R&D Contractor UUCP: {uunet,mcvax}!otc.otca.oz!brendan Services R&D Phone: (02)2874676 Fax: (02)2874990 |||| OTC || Snail: GPO Box 7000, Sydney 2001, AUSTRALIA -- Edited by Brad Templeton. MAIL your jokes (jokes ONLY) to funny@looking.ON.CA Attribute the joke's source if at all possible. A Daemon will auto-reply. Jokes ABOUT major current events should be sent to topical@looking.on.ca Anything that is not a joke submission goes to funny-request@looking.on.ca