Hacker News new | past | comments | ask | show | jobs | submit login
Second Reality for Apple II (deater.net)
117 points by EvanAnderson on Nov 18, 2023 | hide | past | favorite | 46 comments



I do plan to release a "final" version that improves a bit in places. There's no video of it yet but if you view the in-browser-emulator at archive.org you can see disk2 the full length 3d-flying sequence is finished (the party version cuts out about 2/3 the way though).

The challenges of trying to be on the demoscene while holding down a full-time job ;)


This is amazing. Brings back so many memories! I think I've first got this demo (the original one) from the CD-ROM included with the Gravis UltraSound. Blew my mind. And now still does, on 1 MHz!


Impressive when you realize the architectural limitations they're working against: compared to the C64, the Apple II has, in classic Apple fashion, no affordances towards multimedia (e.g. no fast RAM for video) and no meaningful special-purpose graphics/audio hardware, and this is on top of Woz's hacks. It looks like they're using timing interrupts from the Mockingboard.

Part of the humor is poking fun at that, and being awed at being able to do something recognizable at all.


Keep in mind the Apple II was designed in 1977 by a cash-strapped college dropout from off-the-shelf parts. Fast RAM for video didn’t exist. Classic Apple multimedia parsimony was a thing, but it came later.


> from off-the-shelf parts

This was the most serious constraint. Aside from the 6502 CPU, its memory, and the ROMs, everything on the original Apple II was constructed from simple, off-the-shelf logic ICs. No custom ICs besides the ROM; no highly integrated parts besides the CPU. You can still buy all the parts to build one yourself.

Later versions of the Apple II replaced increasing amounts of the discrete logic with custom ICs, but the basic principles of operation (and the limitations that came with them) remained the same.


Building an Apple II from scratch would be an interesting project.


It's totally feasible, too. Here's some information from someone who used to sell kits:

http://www.willegal.net/appleii/appleii-kit.htm


IIRC, you even got the schematics in the manual.


It sort-of did have fast RAM for video! The chips used could do 2e6 bytes/second, or thereabouts, of which the CPU could demand just ~1e6 (or near enough), at predictable regular intervals. The remainder is entirely free for the video system! (This was a very common arrangement for the 6502, as it has predictable data bus accesses.)

I'm not especially familiar with the Apple II's graphics capabilities, but it sounds like all its various modes need ~1 byte/microsecond for the visible period, so this would work out.


Yeah, I had to chuckle at how cheerfully half-assed some of the bits are. No judgment, the good parts are really good and some of those scenes really are completely impossible to even approximate on the Apple II, so why not have a bit of fun with it? The equivalent of showing up to a car race wearing a cardboard box with FERRARI sharpied on it, since you know you can't win anyway.


There was one other way to play music on an Apple II besides a Mockingboard sound card.

You could do it with a Novation Apple-CAT II modem:

https://en.wikipedia.org/wiki/Novation_CAT#The_Apple-CAT_II

I wish I could remember the name of the software that would play music on it, but I can't. I'm positive there was also a way to use the tone generator with a speaker so you could do more than play music over a phone line.


Behind the Scenes: Future Crew putting the finishing touches on Second Reality a week before release...

https://www.youtube.com/watch?v=LIIBRr31DIU


3 minutes into the video, not a single Perkele heard. I'm impressed!

(I was also thoroughly impressed by Second Reality itself when I found it on a BBS in the early 90s. I couldn't believe anyone could be _that_ good at coding. It pushed the envelope in almost every dimension)


I’m not sure how he made this but my first idea would be to build all this as GIFs or render it into images/frames, then create a tool to generate Apple II compatible code to render arbitrary images in sequence.

I’m guessing sitting down and manually writing a bunch of Applesoft BASIC wasn’t the solution.

I still have an Apple IIc. Love it!


Well, the page briefly explains each effect. Many are indeed just a couple prerendered frames page flipped in a loop.


As a general rule, old hardware (prior to the late 1990s or so) doesn't have nearly enough memory bandwidth to render full-screen video to the framebuffer at max frame rates. Some combination of partial updates, interlacing (i.e. staggered updates across multiple frames), lower-res/color depth/tiled graphics and hardware-specific tricks is essentially unavoidable if you want smooth video. You can see this very clearly in the plasma effect where they only render every other line.


you might find it a challenge to render arbitrary images in sequence at an acceptable resolution and framerate. 1Mhz is not a lot of hertz.


some more of the effects (or better attempts at them) should be possible. The tunnel, the bouncing dots, the bounce effect with the polar bear image. A lot got thrown together at the extreme last minute to hit the Demosplash deadline.



The C64 is also 1MHz. The real problem is, the Apple II has nothing. It's a CPU and a ROM, basically, as described in other comments here.


I got the same good chill running down my spine watching this as when I watched Second Reality 30 years ago. I think how they mirrored the music so well caused my brain to just fill in the pieces of the graphics. I was especially impressed at the attention to detail down to the font in the end credits. Hats off, this made my day.


Certainly impressive. The two-frame looping animations are quite hilarious (in a good way).


What are they booting? It says "Dos 3.3" but it has the cd command, directories and backslash separators.


It's a fake BIOS/DOS bootscreen to parody the startup of the original DOS demo (the c64 version of the demo does something similar).

It says DOS3.3 as a joke, because Apple DOS3.3 was a real, long-running operating system for the Apple II that predates MSDOS.

The actual demo runs no operating system at all, it's a custom bootsector designed by qkumba that can load arbitrary tracks off of a raw Disk][ floppy and is much faster than DOS3.3 or ProDOS and also requires very little memory overhead.


Thanks. I remember AppleDOS 3.3, and I remember it had no concept of directories (you had to use ProDOS for that, which didn't use the cd command anyway).



But as far as I know Apple DOS does not have directories (PRODos has), and neither have the cd command.


Ah, I misunderstood what you were asking. You mean the interface right at the start of the video, right? I don't know what that is, I assume some sort of custom firmware and/or hardware?


And I thought it was impressive to see Second Reality cloned on the C64.

This is going to be a quite enjoyable watch tomorrow.


I'm more impressed by the tricks done in the low res graphics mode than anything else here.


I can almost physically hear those old chips screaming for mercy! Well done.


Changing to subdirectories under Apple DOS 3.3? Wha...?



Folks if you liked this, please consider attending Demosplash (where this was unveiled this year). I attended this year but attendance was pretty low (even for American demoscene standards).

Sometimes it feels like Demoscene is slowly dying post COVID, lets not let that happen.

The folks running Demosplash have been fighting the good fight for years but if no one shows up then it gets harder to keep events like this going.

If you are near Pittsburgh, PA in November please consider attending. 30$ gets you two days of awesome demos, a chance to play and tinker with a huge collection of vintage hardware and even dinner on both nights(plus all the snacks and cake you can eat!). And if you got a student ID you get your ticket for less than half the price!

[1]:http://www.demosplash.org


I really second this. Even if your participation is virtual. The party organizers are really accommodating of just about anything that's entered, which means the barrier to entry isn't super high, and there's multiple categories of things you can enter, even just an mp3 of some music you're sequencing, or an image you are painting in some interesting way, somewhere is fine.

It can be really fun to go, and in person can be a real blast. I'll also echo that since the party is run by CMU's computer club, the collection of vintage hardware you can mess with is absolutely unreal.


Whaaaaaat! I attended CMU and didn't know this was a thing. I tried my best to turn all of my dorm-mates in Schlag on to the demoscene for months! I don't know how much or if any of it stuck, but I can feel assured that "Elysium" and "Odyssey" and "Second Reality" were exposed to a new generation, if only for a few minutes.

Well, anyway, rock on fellow Tartan(s). Thanks for keeping the demoscene hacker spirit alive!


If you know people near CMU that would be interested in attending, please let them know for next Nov. Non-CMU people are welcome as well(I'm not CMU affiliated but they are super welcoming regardless).


I'm not CMU connected either and can confirm the party organizers, volunteers, and attendees have been great the few times I've made it in person. They really just want to do cool stuff and have fun with computing equipment.


I don't know in the US but don't worry the demoscene is very much alive in Europe! Lots of big and smaller events all year long. I am personally going to Revision (where about a thousand people gather every Easter) and Evoke almost every year..the rest of the time there's often other demoparty you can watch live online


Thats good to hear. Demosplash is one of the largest demoparties in the US and I think attendance numbers were less than 30 people this year? (I don't have an exact number but thats what it felt like).

That tells you what the state of demoscene gatherings are in the US.


yes, some people ask why I rushed this out the door rather than finishing it later and releasing at some other party. But I really wanted to support Demosplash, and as a US scener I try to release something nice there each year.

I really would have liked to be there in person this year but things came up. November is awkward timing for me, both with the college schedule but also because it often overlaps with the big Supercomputing Conference that happens around the same time.

And as why not release at a European demoparty: most of the crowd there don't really appreciate/understand the Apple II limitations, but also with Covid over they expect you to show up in person and bring along working hardware (sourcing a local Apple II, especially an NTSC one with a compatible power supply would be a challenge).


I thought about going but wasn't sure if it was actually happening or not. There were almost no updates on the website, Facebook, or Twitch in the time leading up to it and during the weekend. This is actually the first confirmation I'm hearing that it actually happened.


please, more attendees. I can't eat all those pretzels and cake myself


Second Reality was truly a technical marvel and arguably represented the pinnacle of the PC demo scene. It’s amazing how much influential it has been and how it continues to endure some 30 years later. Not too shabby for a group of teenagers from Finland.

(And now I feel extra old realizing the original Second Reality was released 30 years ago.)

Aside: I first watched Second Reality on my PC at the time which was a 386/40DX. I must have watched it 100 times at least. When I upgraded to a 486/66DX2 the first thing I did upon booting it up was to watch Second Reality. I was amazed at how much I had been missing before; everything ran smoother and elements that had been truncated before were now visible. Yet even when it was on my old hardware it was still completely presentable. It’s a credit to the Future Crew coders that it could run so well on such disparate hardware.

Another aside: the Second Reality source code was released on GitHub for its 20th anniversary: https://github.com/mtuomi/SecondReality

There was a great 5-part blog series to decipher it: https://fabiensanglard.net/second_reality/


I didn’t notice many things when upgrading from a 486 to a P5-90, but the upgrade an 8-bit Soundblaster clone to a Gravis Ultrasound was incredible.


I would guess that that 486 speeds were the terminal velocity for Second Reality’s performance. That was the high end when it originally came out.

Don’t get me started on the GUS. That was such an incredible sound card for its time.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: