Ok, since I can’t code from the living room anymore, I’ve moved the Dreamcast into my room and hooked it up to the capture card. This way I can debug stuff without having run all around the apartment. Anyway, I found a spindle of old cds, so I figured I’d take some screenshots of my old Dreamcast work. So as not to fill up everyone’s friends pages, click below to read the rest of this post (I’m learning how to use LJ! yay!)
Ok folks, I have here the very first Dreamcast code I ever wrote. This is a CD dated January 6, 2001, and it contains a port of my BASIC interpreter, as well as an extremely early beta of my AP C++ midterm.
Here we have the Dreamcast port of my C99 Project. This is introduces the libc99 text library, the foundation of DreamZZT, FrotzDC, and a few other of my projects. This particular version is linked against libdream, the predecessor to Dan Potter’s KallistiOS.
Also on this disc is a very early version of my AP C++ midterm, which was an ASCII-based adventure (like ZZT). When I say early, I mean early. All it shows are a few objects moving around at a constant velocity, no user interactivity or anything. I will try to dig up a later version of midterm to show you all later.
The next project chronologically is DreamZZT. The first public release of DreamZZT 1.0 happened on April 27th, 2001, which also happens to be either jayyy‘s birthday or Brian’s birthday, and I feel bad because I can’t remember which. DreamZZT 1.0 is basically the evolution of my AP C++ Midterm (and final), and doesn’t use the same file format as ZZT. After realizing how much 1.0 sucked, and finding kvance‘s documentation of the ZZT file format, DreamZZT 2.0 was born. DreamZZT 2.0 is a complete rewrite, and was capable of loading ZZT games, but with a very low amount of compatibility.
Here is the custom boot screen logo I’ve used on all my Dreamcast releases since DreamZZT 2.0:
Here we have the title screen for DreamZZT 2.0:
One of the big “features” of DreamZZT 2.0 was that it could use JPEG images instead of ASCII to draw the boards, allowing you to be much more artistic. Here is the multiplayer map from DreamZZT 2.0-RC5, which was rendered in Bryce3D:
That’s actually based on a Half-life map I made, but I have no idea where that went to. It was a cool map…
Anyway, because I had complete control over the engine, I was able to do things normal ZZT couldn’t, and to show off these features, I started a game called The Adventures of Hax0r and Quax0r. The basic plot was that your friend Brian (Quax0r) had been abducted by the RIAA for hacking, and you (Hax0r / James) had to rescue him. Yeah, it’s lame, but it was funny at the time.
Here we have the title screen:
And the cause of Brian’s abduction:
It showed off some fun features of DreamZZT 2.0, such as renaming the Ammo to “Spitwads”, changing the color of the player and other objects, teleporting objects around the board, and having objects trigger switching between boards, and of course the JPEG overlays. Most of these features have been removed from DreamZZT 3.0, but hopefully at some point I’ll add them again, and come up with another equally-lame demo to show them off.
The final screenshot for today is a little Tetris game I wrote to test the libc99 text library. For reasons I’ll never understand, people actually still download this. It even has an entry on DCEmulation’s homebrew software site.
There are actually two versions of this. There’s the one I released for the public, and then there’s one that plays an MP3 in the background and pops up random inside jokes on the side of the screen. It’s lame, and will never see the light of day again. So for this screenshot, I’m using the public version:
Anyway, the next project chronologically is DCBlap, which I don’t have any CDs of up here, so I’ll save that for another day