Winner of Revision 2014: a very colourful Atari VCS 2600 demo
It's been a while since I posted something #demoscene related, so today I'm sharing this very colourful and smoothly running #Atari demo with you. There's even something in it for #Amiga and #Commodore64 fans.

Video published on youtube on 22 Apr 2014 by MEGA - Museum of Electronic Games & Art.
ATARI VCS 2600 Demo by #XAYAX. It achieved 1st place at Revision 2014 easter party in the oldschool demo competition.

Code: #SvOlli
Music: #Skyrunner
Graphics: #Deft, #Titus, #Veto, #SvOlli

A 32/30k ROM using F8SC bankswitching (PAL)

#RevisionDemoparty #Revision2014
As you know, the Atari VCS 2600 has been (and is) an iconic video computer system. Compared to more modern systems like the Amiga or even the C64 it was rather limited. However, great software has been written for. This week we have demo for you that will blow your mind!
The video capabilities of the 2600's video chip "Stella" were quite limited - there was no frame buffer, as memory was prohibitively expensive at those days. The video chip had 40 bit of resolution for a video line - and it had to be programmed anew for each video line! I.e. using CPU cycle counting the video chip registers are being manipulated at the right time, sometimes in the middle of the video line, to get the right effects.

This makes it even more amazing what XAYAX has done with this very machine. See the demo [1] and be blown away!

To learn more about the 2600 video chip, see the visual6502 pages [2] and look at slides 39+ of their presentation [3]. A good programmer's view of the video chip is presented in Warren Robinett's discussion of his best-selling title "Adventure" for the Atari 2600 [4,5].

Below we have more information on programming, even including links to the schematics of the Stella video chip [6,7,8]. The Ultimate Talk on 28C3 gives a great overview on the VCS, the history, the games and technology [9]. Of course we have already covered the 2600 in other posts [10-16].

The demo mentions that "no illegal instructions [were] used in this demo". In this time it was common to use "illegal" instructions of the 6502 processor core to get a better timing. The 6502 logic had "undefined" opcodes, but clever programmers had found out that these instructions did not do nothing, but, due to incomplete decoding logic, sometimes combined the effects of two other opcodes for example. One example is LAX, which loads the Accumulator and the X register at the same time, a feature not available as "legal" opcode. These illegal opcodes were only available in the NMOS versions, and were removed in the later CMOS versions. Because illegal opcodes can make the code more efficient, it is even more amazing, that the demo did not use any!

So, after watching the demo, what do you think about the achievement?

[1] Demo XAYAX - Bang! (ATARI VCS 2600 demo)



2600 schematics

2600 programming

The ultimate 2600 talk
[9] The Atari 2600 Video Computer System: The Ultimate Talk [28C3]

Our posts:


Shared publiclyView activity