Jump to content
IGNORED

Atari 2600 demo competition


Sdw

Recommended Posts

The Sillyventure Atari demo party in Poland last weekend had a dedicated compo for 2600 demos.

Four entries competed, but I've only been able to find three of them released online.

 

1st place: ISO by JAC!

http://pouet.net/prod.php?which=58044

 

2nd place (my entry): Sphaera Stellarum by Noice

http://pouet.net/prod.php?which=58034

 

3rd place: Minute and a Bit by Tjoppen

http://pouet.net/prod.php?which=58038

 

Links contains both download to the ROMs and video recordings ready for viewing!

  • Like 7
Link to comment
Share on other sites

I think one of the requirements should be "works on real hardware". Also, I'm quite jealous of those coders that seem to allow multiple colors on the same playfield row :P

Allow tracing in z26 (-tt) and enable it when the code you want to analyze what is currently displayed. Or use Stella's debugger. Or play with ALT+ZXCVBN while the demo is displayed.

 

Together that should give you a pretty good idea how everything is displayed. How the display is setup outside the kernel is another story...

Link to comment
Share on other sites

I think one of the requirements should be "works on real hardware". Also, I'm quite jealous of those coders that seem to allow multiple colors on the same playfield row :P

 

All demos work perfectly fine on real hardware, I've run them personally using my Harmony cart.

Link to comment
Share on other sites

Sadly, we're still missing an upload of "xSqueeker" (see http://pouet.net/res...ich=438&when=11 ). Perhaps we should pester the guy (Szuwarek) or Grey/MSB.

And yeah, the demos do work on the real thing (mine at least). I remember clearly because I had to fix a VBLANK mistake to stop the screen scrolling (oops).

Here's a short summary of how my effects work, in the hope of more/better future prods:

 

Text scroller: Just a frame buffer drawn using an asymmetric playfield

Twister: Mostly tables and clever use of the priority flag in CTRLPF. HMxx values are computed on the fly

Rotozoomer: A one-line buffer (two bytes, GRP0/GRP1) computed on the fly, x and y coords accumulate dx and dy respectively and are compared to form each pixel. Optimization could have allowed 24 horizontal pixels I think

Plasma: In each line, look up leftmost pixel in table and stick in COLUBK, then do 10x ADC #Imm + STA COLUBK, where the #Imms are modified during VBLANK (self-modifying code). Stagger and interlace for 22 horizontal samples

Pinwheel: 768 bytes of bitmap data form eight frames of one quadrant of the shape, mirrored horizontally and vertically (sort of). The few cycles left over were enough for the greet graphics

Edited by Tjoppen
Link to comment
Share on other sites

I've just run all three demos with jStella without any problems - I will probably look at them tonight on my 2600/Harmony.

 

Very impressive work - though I can't help but think that this ability is being wasted on what are essentially pretty pictures when you guys could be making new games instead.... ;-)

Link to comment
Share on other sites

Seeing these got me motivated to restart some Atari 2600 hacking, which I first tried out about a year ago. Damn, it's fun to try coming up with ideas for effects on a machine that is this limited. So with a little luck, expect a Camelot demo soon. I need to find someone who can make a tune btw.

Link to comment
Share on other sites

  • 5 years later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...