
A history of the Amiga, part 8: The demo scene - shawndumas
http://arstechnica.com/gadgets/2013/04/a-history-of-the-amiga-part-9-the-demo-scene/
======
ChuckMcM
Ah the memories. I was heavily involved with the Bay Area Developer GRoupE :-)
We had BADGE meetings initially at Stanford Linear Accelerator and then later
at Stanford. We used to head to the Oasis for the after the meeting meeting.
As a lot of the original Amiga developers (pre-Commodore) were based out of
Los Gatos (the original home of Amiga when Commodore bought them) many would
come to those meetings and share various insights with us.

At one point we decided to host a demo contest (which Tom Rokicki pronounced
with a long 'e' sound) it was the hottest ticket in the Bay Area for a while,
we even had Commodore and Newtek offering up gear for prizes. Some amazing
stuff watching people pull every ounce of performance they could out of the
chips.

------
lucb1e
I really shoulda been born 20 years earlier. I've read a lot about the C64,
demoscene, the high times of usenet, etc., but it was all before my time...
Nowadays the hottest thing in the computer world are iPhones and Facebook,
neither of which I'm a fan of.

~~~
bane
It's never too late to join in, the demoscene is always looking for people to
participate and compete! Start small, organize some friends and try and make a
small intro. Get a few groups of friends together and host a basement party
and compete. Check out the facebook page I linked to elsewhere here and try
and attend a local party. They're gobs of fun.

~~~
lucb1e
See, Facebook again ;-)

I don't think it's possible to get "a few groups" of sceners together in the
Netherlands. It's even hard to find people enthusiastic about FOSS, though
there are some more of those.

~~~
skrebbel
How about you attend Outline then, two weeks from now?

<http://outlinedemoparty.nl/>

It's a very welcoming place for the newly interested, I assure you.

~~~
tripzilch
I should really go to a demoparty again, some time (you do remember me from my
scene days, right skrebbel? like you I had a different nickname back then).

Do demoparties also have Javascript compos nowadays? Building a 4k usually
took me about 6 months, add some extra to that because I've been out of it for
~10 years ...

I always prefer the "limited" compos because you don't usually need a team
(hard to come by, helps if they're local) and because IMO it shows more of the
scene spirit: pushing the boundaries. I mean, a PC demo nowadays can pretty
much do anything, and even back in the day I felt it was too much freedom.

Are there still parties not all the way down in Eindhoven? :) I'm still
located all the way up North :) Although if I'm heading somewhere for 3-4
days, NL is small enough. I do need some peeps to meet up with there and have
a good time, cause I doubt I can get my local friends to clear their schedule
on short notice like that :P

~~~
skrebbel
Don't worry, I know who you are :-) Hi!

I believe that there's an oldschool party in Northern Germany every summer,
too: <http://nordlicht.demoparty.info/>

That said, I won't be able to make it to Outline myself, unfortunately.

------
Uchikoma
I still remember my first sin scroller, copper bars and the easy water mirror
effects with a negative bitplane offset.

I wonder if there is a site that explains copper bars, vertical bars, endless
blob, glenz vectors etc.? Would be interesting to read about that again.

~~~
quincunx
Ooh! I know this one!

Copper bars: Copper wait-until-screen-vpos-hblank, change $dff180 (bankground
screen color)

Vertical bars: create a single horizontal 1D bitmap (pref. hold-and-modify);
set BLPxMOD to negative the number of bytes of a single row (so the same row
of pixels repeats over and over again) and animate the 1D bitmap - there's a
nice demo that does this under the pre-tense of an undocumented instruction
(the joke being there's no need for an undocumented instruction)

endless blob: to draw endless BOBs, allocate as many framebuffers as memory
will reasonably allow and flip through them, drawing a BOB on each framebuffer
with some sine path motion as it is about to be displayed, net effect is the
BOBs keep on coming and flowing perpetually like millions.

Glenz vectors: use blitter to draw lines & blit into bitplanes with polygon
filling mode, you'd need at least three bitplanes, one for the silhouette of
the shape, one for the front-facing faces and one for the back-facing faces,
then set up the palette so it's "just right" for the combination of planes to
give a semi-transparent effect.

A site that goes into old school amiga demo techniques would be awesome! Would
love to read up about even basic stuff like dot record breaking techniques &
bitmap rotation and zooming techniques (eg. Brian the Lion intro screen comes
to mind, as do the rotating platforms in Turrican 3)

~~~
Uchikoma
I remember those too :-) Great!

Zooming I mostly did with applying Bresenham to drawing bitmaps instead of
lines (And then obviously repeating lines with BLPxMOD).

That site would be awesome.

~~~
Narishma
Well, it's not exactly what you want, but there's this site about how to do
old school effects in software on a modern PC.

<http://insolitdust.sourceforge.net/code.html>

------
evolve2k
Wow I never really knew what these were as a kid but always found the demo
intros amazing. I had an Amstrad 6128 at the time and a cracked version of
Bloodwynch (<http://en.wikipedia.org/wiki/Bloodwych>) had the most amazing
demo with an incredible sound track.

I used to just load the demo and listen to that track over and over, it was
awesome.

Which I could find it now.

~~~
tripzilch
Did you check youtube? A lot of old demos are recorded there.

I should put my 4k's up myself, except that the best one (featuring a real-
time software synth in ~1100 bytes of the 4096), I've only recently been able
to get it to run on someone's ancient win98 laptop :) No luck with the DOS-box
emulator, so far...

------
Audiophilip
Just a sidenote: as for the name of the community, demosceners themselves
refer to it as "demoscene", in one word.

~~~
skrebbel
That doesn't make it correct, though. We're mostly Europeans who learned
English as a second language.

You'll find many specific half-English terms in the demoscene, in fact. One of
my favourites is the role of "Graphician", which would be called "Graphics
artist" in any other place. The term is inspired by "Musician", I suppose,
though I like to think it's actually a play on "Magician".

~~~
D9u
I also remember it being called "Demoscene," (one word) as far back as the mid
1990's.

------
gnosis
Perhaps the following question should have its own Ask HN topic, but: Why
isn't there a Linux demoscene?

~~~
bane
In my opinion there have been two great non-commercial (counter-commercial)
software movements: The Cracker/Demoscene and the Open Source/Free Software
Movement. Both movements came out of solving the same problem, commercial
software is expensive and not as available (in several different senses of the
word) as each movement would like. How both movements attempted to solve that
problem is where that difference lies:

The Open Source/Free Software Movement:

1) Prevent software from being closed in the first place with various
licensing schemes

2) Recreate closed commercial software with open alternatives

3) Share the guts of what you've done with others

The Cracker/Demoscene (for those that don't know, the demoscene is a spinout
of the software cracking scene):

1) For software you want to use, crack the copy protection on it so licensing
is irrelevant

2) Do it in as creative a way as possible

3) Compete with other groups of people trying to do the above, that means
trade secrets

Over time, these core philosophies dictated how the movements operated.

They're both social movements in a sense, but very different kinds of
movements:

I also remember attending a few Linux User Group (LUG) meetings. A bunch of
folks crowded quietly into a rented room, there were a few lectures, a bit of
Q&A, discussions over various Linux distros, shared tips, lots of config
discussions. A few people might show off how their desktops were configured or
provide a demonstration of a properly configured piece of software and give a
tour of the code. At some point some code might be copied and distributed on
floppies (and later CD-Rs). Very collaborative, even if it didn't really
excite the senses. Leaving a LUG so you could go home and try a tweak in some
X.conf file wasn't exactly mind-blowing. It felt kinda like school. It was all
very _Yin_.

Contrast with going to small demo parties in my teens and the sense of
friendly competition was simply awesome. It was brash and bold, artistic
flourishes were rewarded, and groups that could come up with something novel
kept those secrets close to their chest as it was their competitive edge. The
typical party was loud, intense, and touched the senses, you worked on your
discipline (coding, music, graphics) till you dropped or the competition
started, at the competition a bunch of people piled into a room and tried to
blow each other's minds. Clever hacks were rewarded with praise and tales of
glory. It was like a street racing community or playing hooky so you could
watch two kids have a fight. It's the friendliest kind of war. The demoscene
is very _yang_.

Getting together with your demo group or attending a demo party was _exciting_
and fun, you weren't really trying to change the world, just carve out a
meaningful piece of it for you and your friends. The goals of the scene were
completely orthogonal to the goals of the open source movement. And there has
historically been very little overlap between the two groups of people. In
practice this has meant that demosceners find themselves fed into the
commercial software world, which is where they're most comfortable anyway,
while open source folks have gravitated towards service and system integration
companies. A few times, in organizations with hundreds or thousands of
software folks, I've asked the question of who there participates in the
demoscene and not gotten a single affirmative answer (though a few are aware
of it), while most of my old demoscene friends work in closed-source
commercial software and games.

It's kind of a shame, lots of the problems the open source movement has about
front end design and interfaces and well...the human facing part of
software...might be better met by demosceners on the job.

I think it's undisputed that the open source/free software movement has been
the most impactful, I'm not using a demoscene derived OS and demoscene tooling
has usually been very hacky. But I like to think it's been very influential.
I've often used demoscene productions as ways of pushing development teams to
change their perceptions about what a computer is capable of. I remember one
case where we were hitting a performance problem in a piece of code, the
developers (all with backgrounds in free software) were insisting that a
single system just couldn't manage more objects. I showed them Blunderbuss [1]
which fortunately is a beautiful demo _and_ has a nice behind the scenes
writeup [2][3] with this gem:

 _Particle count. I want more. I want to be able to render sand or smoke or
dust with particles. That means millions. 1 million would be a good start._

It was meant to embarrass a little bit but also to inspire. It's a totally
difference kind of software, with totally different goals than what we were
doing, but the point was there. Get creative, get clever, get a little "right
brained". Find bottlenecks, find efficiencies. Small speedups are for late
stage optimization, huge speedups are what I was looking for. They eventually
pulled it off and found ways to dramatically speed their code up, but I had to
keep a blunderbuss to their head the entire time.

[1] <http://www.youtube.com/watch?v=ezltebzdgjI>

[2]
[http://directtovideo.wordpress.com/2009/10/06/a-thoroughly-m...](http://directtovideo.wordpress.com/2009/10/06/a-thoroughly-
modern-particle-system/)

[3] <http://directtovideo.wordpress.com/2009/10/06/blunderbuss/>

~~~
skrebbel
Nice writeup!

Also, I never knew that "yin" meant boring and "yang" meant super awesome!

~~~
bane
I guess it depends on from what angle you look at it. Yin has been far better
for my paychecks over the years, and that's pretty awesome IMHO!

~~~
skrebbel
Hah, you win :)

------
wtracy
Is there any kind of a demoscene community alive today in the SF area?
Everything I can find seems Europe-centric.

~~~
ekorz
This party is not in SF, but I'm sure you could click around and discover some
west coast folks who attend: <http://atparty-demoscene.net/>

Also, see Pouet.net for all things demoscene.

------
Luyt
DHH had this to say about the demo scene, in an interview with Randal
Schwartz:

Q: Really? What made you not want to be a programmer? This is curious.

A: "I had a bunch of friends who I loved dearly, but in many ways were
exhibiting all the traditional programmer stereotype themes of being just
overly focused on things I didn't think mattered and at that time programming
perhaps also was a little bit different. Growing up, programming was assembler
and C. I had a lot of friends in what was called the 'demo scene', which is
mostly an European thing where you had all these guys on the Commodore 64 and
on the Amiga writing these really awesome visual displays of various kinds,
and all that stuff was usually in assembler. I had absolutely zero interest in
learning or doing anything with assembler, it just didn't make any sense to me
at all.

I only really got interested in programming when I stumbled across languages
that made sense to me on the level that makes sense to me, which is at the
very least high level languages like Java, PHP, or whatever have you, anything
that's above the 'I have to dick around with pointers' or I actually have to
move memory spaces around; that stuff has absolutely zero interest to me at
all.

I didn't start programming until I was in my late twenties, and even then I
didn't start programming because I wanted to be a programmer. I started
programming because I wanted a few programs. And that was apparently the
easiest way to get there because the other way of getting programs is that you
actually have to talk to programmers, which is surprisingly painful at times.
I found that the easiest way was just to pick it up and learn it myself."

~~~
Keyframe
just replace assembly/C in his complaint with math. That's what he is talking
about, he doesn't know math / doesn't want to learn it and use it, which is
what most of demo coding is about.

------
ekianjo
Good memories. Later day Amiga demos like Arte from Sanity were very memorable
and enjoyable. Very far away from simple intros with a couple of effects, they
became closer and close to full blown video clips, albeit all rendered in real
time.

~~~
Narishma
What do you mean by "later day"? Amiga demos are still being produced to this
day.

~~~
ekianjo
WHat I mean by "later day" refers to the end of the Amiga life as a commercial
machine, i.e. mid 90s. I know very well Amiga demos are still being made to
this day, but there is much less demo scene involvement in the Amiga now than
then.

------
bane
For those interested <https://www.facebook.com/groups/NAScene/>

It's pretty heavy on East Coast demosceners right now, but North American
Party announcements pretty regularly go up.

------
camus
My gosh , i still have the hardwired amiga demo on disks ! it was amazing back
then !

<http://www.youtube.com/watch?v=2CGOh-jb4QM>

EDIT : is some demo code source available somewhere ? i knew a site back then
, but it went offline.

