I Just Saw Real Magic on the C64
2025-02-05 - [53] 11:22
New Demo by lftkryo
lftkryo has DONE IT AGAIN and broke my brain with a Commodore 64 demo. It doesn't look like much for folks who don't know the internals of the C64 or don't read the screen at the beginning before the demo runs, but for those who know, it's amazing! I'm excited for the explanation video/post at some point. The demo is called "NINE" and is linked below.
A Previous Demo by lftkryo
For those who don't know who lftkryo is, they make amazing C64 demos that really shouldn't be possible. The first demo I have seen of theirs was "A Mind Is Born", which is only 256 bytes in size. For context, if you take the raw text of this post starting from "# I Just Saw Real Magic on the C64", you can only get to the text "beginning before" before 256 bytes have been used. That's only a little more than 50 words total of this post. In those 256 bytes, graphics AND good music are produced in this demo for about 2 minutes and 22 seconds. That demo is linked below.
NINE Is a REALLY GOOD Magic Trick
Back to NINE. The C64 can handle 8 sprites, but this demo shows 9. That is the entire premise of this demo. The use of a Magician as the main character is an incredibly apt one. In many of my favorite magic tricks, something impressive and seemingly impressive is shown without too much context, where you can think "That was impressive, but I think I can come up with some possible solutions for how that's possible", then the magician, one at a time, will show you how each and every possible solution you thought of will not work by the time the trick is done.
In this demo, you can think "Maybe there are some interesting background tricks being done for at least one of the numbers", then the numbers expand past the edge of the background... "Well, some numbers at that point are still within the background, so maybe some more clever background tile tricks are being done", now the numbers all extend out of the background further... Yupp, those definitely seem like sprites... "Maybe scanline shinanigans are happening during horizontal blank!", oh look, the magician floated all of the numbers above the background edge and at points they all are on the same scanline... This leaves me thinking that there HAS to be 9 sprites on the screen at the exact same time in the most "boring" sense of the idea of 9 sprites being on the screen... no shinanigans at play, just the impossible happening... If this demo was called EIGHT and only showed 1 through 8, it would be a cute tech demo of someone finding a way to make essentially a "Hello, World!" for the C64 when you're learning to program for it, but this demo is simply "Hello, World!, but actually impossible".
There is a solution, and hopefully lftkryo releases it soon! This demo is pure magic, just like their other demos are!
Update
Martin Piper released 2 videos about NINE that looks into how it was done. They will be linked below. At the time of writing this update, I have not watched either video yet, but will within the next day or so.
Okay... I just watched both videos (It's about 2025-02-06T07:30:00Z right now) and the parts of the solution I understood are very clever, both when the numbers extend out and when the numbers are clumped together at the top of the screen. I can't pretend that I understand everything, but I'm impressed with what I learned. Still, this is a wonderful magic trick!
Contact/Reply
If you would like to reply to this post, feel free to send me an email.