Demoscene - The Art of the Algorithms
April 9, 2012 1:18 PM   Subscribe

Wired called them, digital graffiti and John Carmack spoke of them at QuakeCon 2011 but they remain little known. A recently released full-length documentary (download) gives a portrait of the creative digital subculture from 80s to the present day.

Previously: The 'demoscene', Please insert disk 2, I am bit tired of blobby things, though, 96k of hilarity, The Demoscene is alive and kicking and Live Coded Demoscene.

via

The demoscene began as part of the warez scene, where small introductions (shortened to intros) were added to the cracks, later combined into a single word, cracktros. These intro became more complex until some were not longer being added to the front of cracked games but released in their own right.

Members have been documenting the scene in various way for some time, creating databases of demos, such as pouet and the Commodore 64 scene db, creating news sites like scene.org and bitfellas. Preserving demos, with projects like the three volume mindcandy collection (previously and also) or online with demoscene.tv and capped.tv. Others like Tamas Polgar have been giving presentation's The Complete History of the Demoscene from 2005 and The Art of Pixels: from sprites to Photoshop from 2006.

mefi's own Jason Scott produced a series of posts in 2007 giving an overview of the scene: Rhizome did something similar in 2010 With the Finnish broadcasting company, YLE produced a documentary series, made by the artists themselves covering the 90s-00s, also broadcast in 2010. Music has always been a large part of the scene since the days of the SID (previously) and the chiptune scene with radio stations such as Nectarine (previously) SceneSat Radio and kohina just playing demo tracks alongside archives such as KeyGen Jukebox, MOD Archive or Chiptune and CD compilations like Demo Vibes.

With others taking a more reflective look at remix culture in the Demoscene (slides), how the demoscene fits into the larger culture, asking if demos are the working class of Computer Art?, producing academic research and starting organisations, questioning the current state and future of the scene. Subjects much discused at demoparties.

This weekend sees two of the larger parties take place, The Gathering and Revision. Assembly (earlier, previously) another of the well known parties take place in the summer. Normally weekend long events, where demosceners gather to socialise, watch the latest demos, compete in the various competitions and attend talks covering aspects of demo creation. Many of the techincal presentation's are available online, giving a look into the techincal process of creating demos, either in general terms: or for particular platforms, such as the C-64: WebGL and JavaScript: or modern PC rendering: and some videos of typical intros and demos:

1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012
posted by Z303 (37 comments total) 137 users marked this as a favorite
 
...this is pretty damn awesome. I wish I'd finished my post on Jack Tramiel after this one, so I could link to it for the C64 demos.
posted by mephron at 1:21 PM on April 9, 2012


Yes I saw the sad news on twitter just as I was finishing this
posted by Z303 at 1:28 PM on April 9, 2012


Demons are forever by Doctor Mabuse Orgasm Crackings for OCS/ECS Amiga's (pouet)

The first demo I ever saw. Trust me, this shit was amazing to 1988 me.

I went on to contribute some bits and pieces to the Amiga demo scene, but nothing major. Probably the highpoint of my "scene" career was contribuiting some stuff to Grapevine, the LSD diskmag.
posted by Artw at 1:40 PM on April 9, 2012


Holy shit, this is like a lifetime of glowy watching here! Thanks!
posted by ignignokt at 1:41 PM on April 9, 2012


No Atari ST demo scene? There were many more, but the names escape me.

These demos inspired many people to learn programming. My friends and I spent all our free time learning assembly language and disassembling these demos to figure out how they did their tricks. It was the most fun I ever had at a computer and is a big part of why I'm a programmer today, 20-some years later.

Demos, for their part, did their best to make it hard for hackers to disassemble. I still remember how the Cuddly Demos did its anti-debugger protection: the code was all compressed so that it would fit on a single floppy disk. On top of that, it was encrypted. The decryption and decompression occurred inside a loop that ran just after boot time. Prior to entering the loop, the CPU was synced up to the monitor's video beam. On the Atari ST, the CPU ran at an exact multiple of the rate at which pixels were drawn on screen (something like 4 or 8 pixels per clock cycle). The trick was to know exactly where the video beam was. You could find the horizontal position of the video beam by reading a register from the video chip, and then you had to wait the right number of clock cycles for that horizontal position to be at the start of a CPU instruction (on the 68k all instructions took at least 4 clock cycles). The trick was to use self-modifying code to jump into the right part of a sequence of noop instructions, and to let the noops (which, IIRC, were some of the only 2-cycle instructions there were) perform the delay. Then the decryption and decompression proceeded by doing some hard-to-time instructions and then updating the decription key from the video beam's position.

A similar trick was used to overscan an image into the overscan regions (the part of the screen on the top, left, bottom, and right that normally only showed a single color). Drawing in the overscan region was pretty mindblowing the first time you saw it because it was always off-limits. Nowadays LCDs go all the way to the edges, but the Atari ST had about an inch of overscan (on a 12 inch monitor!) that was unusable except for showing a solid color. The video chip had a bug that you could exploit, though! If you toggled it between PAL and NTSC modes at just the right time (before the right overscan, for example) then it would just keep drawing. By setting up timers to fire once per scan line, syncing the CPU to the video beam, waiting for the right amount of time, and doing the toggle, you could overscan all four sides.

There was a lot of other clever tricks that were used, but these were my favorites because they exploited the hardware in ways that the Atari's designers had never intended. The video beam syncing trick appeared in commercial software in the form of Spectrum 512, which was a drawing program that let you draw images in up to 512 colors. The hardware wouldn't allow more than 16 simultaneous colors, but by changing the color lookup table on the fly, they could show more than 16 colors in a single scanline!
posted by jewzilla at 1:47 PM on April 9, 2012 [6 favorites]


No Atari ST demo scene?

/does not revive Amiga/ST feud out of deference to Tramiel.
posted by Artw at 1:48 PM on April 9, 2012 [1 favorite]


No Atari ST demo scene?

I actually had an ST and learnt 68000 because of demos. I remember sync scrolling, overscan tricks and timer B all too well. So it wasn't a slight, I thought the post was long enough already. On my demoscene tumblr I have posted ST demos and I nearly include a link to Flix's ST demo history on this post.
posted by Z303 at 1:58 PM on April 9, 2012 [1 favorite]


It's fairly simple, but LSD's 30-minute "Jesus on E's" [sic] has always been one of my favourite demos.
posted by Auz at 1:59 PM on April 9, 2012 [1 favorite]


Thanks, Z303! Great post :)
posted by jewzilla at 2:01 PM on April 9, 2012


Every once in a while I think, "I wonder what the demo scene looks like these days" and spend some time with Google trying to find out. Thanks for doing my homework for me this time, Z303! This is a great post.
posted by straight at 2:23 PM on April 9, 2012


I was at an event with an Engish professor of computing science from a German university, and he said that his best students were those from the demo scene; they knew the intricacies of how a computer works so much better than those with more conventional education. and were highly motivated to learn more, faster. They made good processor designers, sometimes truly outstanding ones.

He was quite downbeat about the scene's progress, though; he was seeing far fewer demo writers and they weren't up to the same standards as ten years earlier.
posted by Devonian at 2:26 PM on April 9, 2012


Thanks for this post. Many happy memories - looks like it was a lot of work putting it together too. ATARI ST!
OH MY GOD JESUS ON E'S!!!
posted by debord at 2:31 PM on April 9, 2012


Monster post on a great topic. You're a credit to the community, Z303.
posted by BlackLeotardFront at 2:39 PM on April 9, 2012


Wow, people still make Amiga demos. :-)

The GL/DX demos always seemed a bit too abstracted for me. Part and parcel of the demoscene were the cool tricks you could play with the graphics hardware. Generating vertex buffers for use by a library doesn't quite seem fair.

I wonder if anyone has gone ahead and hacked a modern PC gfx card directly in a bizarre way for a demo. That would be worth seeing...
posted by smidgen at 3:24 PM on April 9, 2012


I wonder if anyone has gone ahead and hacked a modern PC gfx card directly in a bizarre way for a demo.

A modern GPU is very complex, it'll be interesting once more Raspberry Pi's are out in the wild. They are a nice machine for demos.

The closest I've seen at this point is lft's demos using microcontroller: Craft, Turbulence and Parallelogram or Peridiummmm by SVatG
posted by Z303 at 3:37 PM on April 9, 2012 [2 favorites]


Went to Siggraph and ... "How'd they do that?"
Later
Went to Siggraph and ... "Why'd they do that?"
posted by hexatron at 3:49 PM on April 9, 2012 [1 favorite]


Fantastic post. I love demos a lot -- I've always thought that the sheer mad skill it took to do so much with so little code was a modern wizardry, a kind of holy technodruid wonderment. I've always been a hobbyist coder, occasionally making a few bucks from it, but I come from a command-line, greenscreen, 16K RAM background, and the elegance and power of procedural stuff amazes me.

It may not impress as much as it did when it first came out upwards of a decade back, but kkrieger, in 97,280 bytes OMG, still blows my mind.
posted by stavrosthewonderchicken at 4:22 PM on April 9, 2012


I was going to link lft's Turbulence but Z303 beat me to it; it made quite a splash in the Parallax user community. It was very impressive how lft came to the very, as he says, 'peculiar' P8X32A and leapfrogged what people who had been working with it for years, including its developers. (The creation of the Propeller is itself the stuff of demoscene glory, and Turbulence includes a shout out to Chip Gracey, its designer.)
posted by localroger at 4:45 PM on April 9, 2012


I love how much meat there is on the bones of this post, but... not mentioning quite & orange's cdak is almost criminal. Easily the best thing I've seen since Debris.
posted by Ryvar at 5:34 PM on April 9, 2012


Actually let me both include a link and be very, very specific: I'm talking about the party version, here.

I had a chance a few months back to spend a solid 10-15 minute block with kb of farbrausch just spitballing how in the hell they pulled off various aspects of cdak, with obvious emphasis on the audio side. He'd picked up on the 80s-era Casio keyboards vintage (certainly more than I ever could do), but still couldn't figure it.

A few weeks later I found this.
posted by Ryvar at 5:42 PM on April 9, 2012 [5 favorites]


"I wonder if anyone has gone ahead and hacked a modern PC gfx card directly in a bizarre way for a demo. That would be worth seeing..."

The good news is, the dark times of the 2000-2005 triangle renderers are over. A few ways in which they are over:

Firstly, stuff like Agenda Circling Forth actually use the graphics card in non-poly ways (it's actually a super optimized voxel renderer, and looks spectacular for it). Then, of course, there is the current fad of raytracing and/or raymarching, which are again mostly raw code rather than vertex lists.

If raw cpu cycles are your thing, the best place to look is the 1k and 4k stuff - Almost all of the 1k demos out there actually render just one quad, and then use the GPU as a CPU and hack the shit out of it that way, and many of the 4k demos now do this as well. (I did a 1k mandelbulb renderer for flashback party this way, but I can't find it on pouet now - boo!). Try, for example code is my pron by nuance.

Of course, I'd be remiss to fail point out - despite not using the graphics card - puls by rrola, a pc demo in 256 bytes :). Of course, the 256byte version runs in dos fullscreen, tho, so will only work on XP, not win7. Sad.
posted by jaymzjulian at 5:57 PM on April 9, 2012 [1 favorite]


Oh, I forgot to mention my current favourite PC demo ever, Ballad of a Cluster Bomb, which does use polys from time to time, but has a great shader cpu provided look.
posted by jaymzjulian at 5:59 PM on April 9, 2012


The Moleman 2 documentary was screened on Friday at the Revision demoparty in Saarbrücken, Germany (I saw it there). Nice post! Any UK-based folks (as the OP seems to be...) who are interested in this sort of thing should rumble on down to Sundown 2012 near Exeter in September (and bring your demos, of course :-)). It'll be awesome!
posted by puppygalore at 6:39 PM on April 9, 2012


"I wonder if anyone has gone ahead and hacked a modern PC gfx card directly in a bizarre way for a demo. That would be worth seeing..."

Modern GPUs are actually pretty complex. They don't just chug polygons they can actually perform all kinds of general purpose computing, often much faster then the main CPU. But they're highly parallel.
posted by delmoi at 10:10 PM on April 9, 2012


Modern GPUs are actually pretty complex. They don't just chug polygons they can actually perform all kinds of general purpose computing, often much faster then the main CPU. But they're highly parallel.

Its a few years old now but this google tech talk gives a overview of a modern(ish) GPU:
Graphics Processors, Graphics APIs, and Computation on GPUs
posted by Z303 at 12:10 AM on April 10, 2012


Firstly, stuff like Agenda Circling Forth actually use the graphics card in non-poly ways
Techincal details on Agenda Circling Forth, the particle system and its also covered in Smashes talk from Assembly 2010 and recent GDC talk.
posted by Z303 at 12:23 AM on April 10, 2012


and I just remembered Iñigo Quilez's presentation: Rendering Worlds With Two Triangles

and two pouet threads: Raymarching Beginners' Thread and Raymarching Toolbox Thread
posted by Z303 at 12:31 AM on April 10, 2012


and the lack of coffee is showing, with a link this time: Rendering Worlds With Two Triangles
posted by Z303 at 2:25 AM on April 10, 2012


Fantastic post! I've been following the demoscene on and off since the C64 era. I've always been fascinated by the hacks they used to pull some of these off...
posted by alvarete at 2:48 AM on April 10, 2012


I used to love watching these in the 90s, but it was a bit of a pain in the ass to actually get them to work. There were lots of older DOS demos that were cool, but a lot of them required the gravis ultrasound, or something. Then you had GL demos for windows that your computer was always just a little too slow for.

I love the fact they're all up on youtube these days too, unfortunately these kinds of videos can sometimes be hard to compress without artifacts, since you have videos generated at the pixel level, for a still image it's something you'd use a PNG for, but there's no PNG equivalent for video on youtube (and of course the files would be huge as well)
posted by delmoi at 3:48 AM on April 10, 2012


That's why the PC demoscene was always slightly puzzling to me - it muddied the waters around the pure technical feat of extracting improbable visuals from a fixed platform like an A500 or ST 512 by exploiting low-level hardware tricks. The PC playing field was never level, in that sense.

That said, as the scene matured away from copper bars and sine-scrolly intros toward stuff like 9 Fingers, arguably the technical side was becoming de-emphasized in favour of more aesthetically coherent visuals and overall production values. Savant-like coding skills were still required, but in service of delivering the overall vision, rather than as the main focus.
posted by phl at 4:24 AM on April 10, 2012


Modern GPUs are actually pretty complex. They don't just chug polygons they can actually perform all kinds of general purpose computing, often much faster then the main CPU. But they're highly parallel.

Professors at our university buy machines with an NVIDIA GPU that doesn't even have a video output. The card is used to run bioinformatics programs that used to require a rack of supercomputers.
posted by straight at 8:28 AM on April 10, 2012


You already got both Second Reality PC and the Second Reality C64 remake in the list, but this one was missing:

2007: Desert Dream by Resource & Chorus (pouet) - remake of the Desert Dream demo by Kefrens on the Amiga in 1993.
posted by ymgve at 7:02 AM on April 11, 2012


Fantastic post! Thanks for putting this together.

I remember, circa 1996, seeing a live-render of rippling fabric in a demo. I didn't quite grasp the skill required, but my friend was in awe, and looking back, there was probably nothing like it in commercial games or whatnot.
posted by filthy light thief at 3:05 PM on April 11, 2012


Thanks for this post. I still haven’t worked through it yet. I had forgotten all about this and hadn’t seen a demo in something like 20 years. It’s odd, because now, to me, computer graphics scream "big business", "ad", you’re trying to sell me something. I’d forgotten this aspect of it.
posted by bongo_x at 12:47 AM on April 13, 2012


Correcting the whole 'No Atari ST demo scene?' thing.

I can't believe I missed out YM Rockerz, a chiptune supergroup. On the coding side : Atari Demo Coding Page,MCoder's ST demo sourcecode and Oxygene's Atari Demo ToolChain and some examples of ST, STe, Falcon and TT demos:

1985 1986 19871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012posted by Z303 at 6:02 PM on April 14, 2012 [3 favorites]


Nice. Thanks for that.

Not mentioned anywhere in this thread yet: Machines of Madness by dubious, which took 1st in PC Demo @ Assembly '96, and if I remember correctly was one of the first realtime phong/bump/specular implementations (see 1:47). It was actually a clever hack that only worked if the light was sourced from the camera, but it still left my 16-year-old jaw on the floor.
posted by Ryvar at 8:04 PM on April 18, 2012


« Older It Gets Better at BYU   |   This is a strange thing. This is a look, a style... Newer »


This thread has been archived and is closed to new comments