Experimental music from very short C programs
category: code [glöplog]
OK. .who is first to do macguyver?
Quote:
OK. .who is first to do macguyver?
Hmm... just a guess, but I think you're too late, and Richard Dean Anderson is already no longer a virgin.
someone wrote a script to make videos from it
http://pastebin.com/335PPFRc
http://pastebin.com/335PPFRc
updated my buzz machine to take text input, added some modes and commands, and a console soundcard emulator mode (sincstep). http://www.buzzmachines.com/machineinfo.php?id=1046
p01 won this thread.
here is the script https://gitorious.org/0xa/shiftop/trees/master used to generated the videos here: http://0xa.kuri.mu/2011/10/09/bitop-videos/
poi wins
Pretty awesome. And now we wait for ryg to shorten it to 150 bytes ;)
Err.... ...&0 => 0, or am I missing something?
I wrote up some theory and stuff http://countercomplex.blogspot.com/2011/10/some-deep-analysis-of-one-line-music.html
Great theory and stuff!!
"Walking Machines"
(1:28 at 22khz, longish preload)
L: -31+(q=((y=t*[21,16,25,19][t>>16&3]>>4)&0)+((y&y>>6)+((t>>15)<<5)))&0+((q-1)&128-64)+((d=(((u=t&0x3fff)&0+((u+1<<(18+(t>>12&1*6)))/u)&255)/(u>>8))&120-64)<<3) | R: q+d-15
(only first 11 seconds for fast loading time)
L: -31+(q=((y=t*[21,16,25,19][t>>16&3]>>4)&0)+((y&y>>6)+((t>>15)<<5)))&0+((q-1)&128-64)+((d=(((u=t&0x3fff)&0+((u+1<<(18+(t>>12&1*6)))/u)&255)/(u>>8))&120-64)<<3) | R: q+d-15
It uses this really awesome drum generator:
((((u=t&0x3fff)&0+((u+1<<(18+(t>>12&1*6)))/u)&255)/(u>>8))&240-128)
Same, but faster stronger and better:
((((u=t&0xfff)&0+((u+1<<(18+(t>>10&1*6)))/u)&255)/(u>>8))&240-128)*3
"Walking Machines"
(1:28 at 22khz, longish preload)
L: -31+(q=((y=t*[21,16,25,19][t>>16&3]>>4)&0)+((y&y>>6)+((t>>15)<<5)))&0+((q-1)&128-64)+((d=(((u=t&0x3fff)&0+((u+1<<(18+(t>>12&1*6)))/u)&255)/(u>>8))&120-64)<<3) | R: q+d-15
(only first 11 seconds for fast loading time)
L: -31+(q=((y=t*[21,16,25,19][t>>16&3]>>4)&0)+((y&y>>6)+((t>>15)<<5)))&0+((q-1)&128-64)+((d=(((u=t&0x3fff)&0+((u+1<<(18+(t>>12&1*6)))/u)&255)/(u>>8))&120-64)<<3) | R: q+d-15
It uses this really awesome drum generator:
((((u=t&0x3fff)&0+((u+1<<(18+(t>>12&1*6)))/u)&255)/(u>>8))&240-128)
Same, but faster stronger and better:
((((u=t&0xfff)&0+((u+1<<(18+(t>>10&1*6)))/u)&255)/(u>>8))&240-128)*3
who will do the first cheap 303 emu?
in 303 bytes, preferrably.
I have this in 283 bytes. (c64)
Nice to come back after 2 weeks and see this thread is still alive... :)
@torus: gwEm did 128byte virtual 303 years ago (It's only 128b+Heather! ;).
I don't know exactly what a 303 is able to do, so i'm not sure how you'll rate it.
I don't know exactly what a 303 is able to do, so i'm not sure how you'll rate it.
Wow, that's some amazing work you guys did there. And finally I've got some time to try trendy thing. Now I need to figure out how to implement different "instruments". Oh and did anyone try to sinth vocals?
hey! this thingamabob would make a fucking great party-compo!
please viznut or anyone else feeling like it talk to the revision orgas to make it happen!
please viznut or anyone else feeling like it talk to the revision orgas to make it happen!
of course there could be the fear of damaging the PA ;)
used some ideas from this thread in this 256b intro for linux.
as long as orgas don't play it at 100% volume it won't damage anything.
It also would be a good idea to normalize and fix the dc offset.
There needs to be made an offline tool that can generate it from a single line of text file. Then you can just play them back like regular music file. By this point the language also has to be specified. Text file can have ignored comment lines, setting lines (hz rate, lenght) and a second code line for the right channel.
The offline tool should also count the number of characters used for code generation and display it. 100 char song that sounds like a 1000 char song is much more awesome. (or divide the final vote by number of chars)
It also would be a good idea to normalize and fix the dc offset.
There needs to be made an offline tool that can generate it from a single line of text file. Then you can just play them back like regular music file. By this point the language also has to be specified. Text file can have ignored comment lines, setting lines (hz rate, lenght) and a second code line for the right channel.
The offline tool should also count the number of characters used for code generation and display it. 100 char song that sounds like a 1000 char song is much more awesome. (or divide the final vote by number of chars)