P8XNICCC: ST-NICCC 2000 demo on P1!
Wuerfel_21
Posts: 5,107
in Propeller 1
Here's the famous ST-NICCC 2000 demo by Oxygene, running on a P1 @80MHz with NTSC output ladder and an SD card.
This, just like the original demo, isn't _really_ doing any 3D rendering. Instead, prerendered 2D vector data is streamed in from disk and that is rendered.
Because the P1 doesn't have enough memory to buffer a full screen, let alone two, the vector graphics are rendered line-by-line as they're scanned out to the TV. This is why the more complex screens have horizontal distortion.
Additionally, the memory used to hold the geometry also isn't quite big enough, so some screens (really just the text at the beginning) have missing polys, too.
There's also no music, due to a combination of lack of memory and sheer lazyness.
Thanks to heaven6502 for describing the file format used: http://arsantica-online.com/st-niccc-competition/
Instructions for compiling:
- Have latest flexspin git build installed (or 5.0.3 when it comes out)
- Adjust the constants in platform.spin to suit your board
- Run the following commands:
flexspin -c VJET_v01_composite.spin flexspin -c VJET_v01_rendering.spin flexspin -O2,~remove-bss P8XNICCC.spin- Copy P8XNICCC.SCN to the root of your SD card
- Run the compiled P8XNICCC.binary as usual
zip
513K
Comments
Relatedly, here's a video of the original Atari ST version. Less glitchy, but SLOOW, haha:
And 8-bit Atari (after several heavy upgrades) can do this better than ST
Now, what's left is Bad Apple, yet another thing made on "all", including Atari 400
And P2NICCC
Well, I've been thinking about that (and video playback in general). I've got some ideas in my head, which if they work out (huge "if"), would allow absurdly fast SD read + pixel unpack/dither. But I haven't really worked on that at all, too busy working on the game™. Except I haven't been working much on that lately, either, too busy oversleeping and procrastinating. Eh, it is what it is.
Just needs someone with a P2 to port over VJET. Drop in P2 FSRW, and it should JustWork™.