The Dreamcast was the best and last console Sega ever made. Its short life of less than three years on the market (originally released in November 1998) was marked by good reviews for the console itself and many of its games. None of this was enough to make a difference, especially against the onslaught of the PlayStation 2.
In the aftermath, a cult following for the Dreamcast grew, and rapidly alongside it came a homebrew development scene determined to give this still technically powerful console a second life.
Cryptic Allusion helped pioneer and foster the Dreamcast homebrew scene. The founder of this firm, Dan Potter, was influential in creating KallistiOS, an unofficial toolkit that helps programmers write code for the game console. (Today, KallistiOS is maintained as an open-source, free software project by a team of volunteers.)
In 2001, months after Sega officially stopped selling the Dreamcast, Cryptic Allusion put together a disc of Dreamcast games and demos created by themselves and other homebrew developers. This disc, titled DC Tonic, was given away at that year’s E3 to critical acclaim.
In 2003, Cryptic Allusion released the game for which they became best known: Feet of Fury, a Dance Dance Revolution clone developed with KallistiOS. Its professional-level production values helped to extend interest in the Dreamcast’s afterlife among the homebrew community.
But from that point on, Cryptic Allusion gradually shifted away from the Dreamcast. Activity within the entire Dreamcast homebrew scene was declining, as well. Though Cryptic Allusion is still presently working on a new Dreamcast title, a remake of an Amiga platformer featuring a Samurai duck called Donk!, they have been focusing more on making games for the Mac and Windows. Apparently, developing for dead game consoles isn’t that profitable.
Potter runs Cryptic Allusion from Austin, Texas, with his business partner, Roddy Toomim, as an independent game development company that comprises of just the two of them.
The Escapist: What are your technical backgrounds? What do you guys do for a living?
Roddy Toomim: I’m a techie by nature, but I couldn’t code my way out of a wet paper bag in a Gulf Coast rainstorm. Dan’s the man behind the code, but we’ve taken on a couple of coder interns in recent months to help us complete Donk!, as well as a couple of art interns.
In real life, I’m a software tester for a company that creates and markets slot machines. I suppose that puts me in the “gaming” business, but not exactly where I want to be just yet.
Dan Potter: I began working with computers when I was about 6, when my dad brought home the “first pieces” from the TI employee store. I haven’t really stopped since then; I’ve been working in the industry professionally for about 14 years now.
My current job is in the transport and analysis of flight data for commercial carriers – think “black boxes” – for accident prevention and procedural improvements [like] more comfortable flights, less fuel usage, etc.
TE: What’s the appeal of the Dreamcast for you guys? Basically, why have you even bothered with making games for this dead system that wasn’t all too popular to begin with?
RT: [It’s] the last Sega-made console. Ever. It’s got too much appeal as a piece of gaming history to just let it die, you know?
Dan was mostly responsible for the reverse engineering of the machine. He likes to tell people that he had minimal involvement in the project to figure out the guts of the Dreamcast, but he’s a smart guy. Smarter than me by far. At least as far as math/code goes. Don’t let him tell you different!
DP: Let’s not distort the record here. I actually had very little to do with the reverse engineering part of it. I tried really hard on a few areas and just didn’t really get anywhere. There are some even smarter guys, mostly in Sweden, who did most of that. I helped nudge it along in a few places – by friendly competition, if nothing else. But they did the bulk of the work. My main contribution was to put it all together in one place and make a friendly package to let people get in there and use the knowledge. After awhile, I was really only stewarding that effort.
The most modern version of KallistiOS includes a lot of code from my hands, but I’d bet about half of it was contributed by [others in] the community. If you include all the add-on libraries, my contribution shrinks even further.
RT: I may have to butt heads with you here about the popularity of the system. I believe it was successfully marketed to a burgeoning demographic of core gamers. In that sense, it was a great console and a successful launch, which was only helped by being released almost a year prior to the PlayStation 2.
Sega’s focus on the hardcore player made them a failure in the general marketplace, though, so most people see the console as a complete flop. I suppose that means it depends on how you view the console’s place in the genealogy of gaming to determine its position in the grand scheme of multimedia. I won’t go into this any further; I feel like I’ll be talking politics, attempting to defend something that doesn’t really need to be defended. The Dreamcast can just “be” for now, and I’ll be OK with it.
TE: How would you describe the current state of the Dreamcast homebrew scene?
RT: I’m a little embarrassed to answer this question: I don’t really keep up with the homebrew scene. That’s Dan’s job! I just focus on what needs to be done to complete our projects, and if we need to communicate with people, I take care of keeping those lines open.
DP: I don’t particularly keep up with it either. As far as I can tell, though, there’s not a whole lot left of it these days. The most active discussion goes on with some of the forums like DCEmu, but I don’t know how much practical output those produce. Most of the more hardcore discussion takes place on mailing lists, like the KOS Development List, and there’s just not a whole lot of life there these days. A few questions pop up now and then, but it’s not like it used to be.
TE: So how much access to the Dreamcast hardware did this community manage to figure out? Can you guys pretty much program a game that is as technically good as the kind that commercial developers made for the system?
DP: In some ways we are more advanced than the commercial development kits, but given my limited knowledge of what they can do, I can’t answer too definitively. Someone inside Sega once told me some of the Dreamcast engineers had looked at the [KallistiOS] code and were pretty impressed with it.
I think there’s certainly enough low-level tools to do a decent game now. But it comes down to the normal bottlenecks for developers on any platform: access to resources and just using the tools to push something out.
TE: What tools do you guys use in homebrewing for the Dreamcast?
DP: These days, we actually make a lot of use of standard PC development tools – Visual Studio on the PC side of things, Xcode on the Mac. Most of the code work is done with a toolkit called Tiki, which is the result of factoring out a lot of pieces of Feet of Fury and porting them to be more modern C++ and focused more on a PC-ish environment. I had written this thing to port Feet of Fury actually, and someone ported it back to the Dreamcast, so now we use that for most things. It’s much easier to develop and debug on a PC.
When we actually build for the Dreamcast, we use a free software tool chain from GNU along with KallistiOS, which includes a ton of ported extras, like Xiph’s Ogg Vorbis libraries.
Tiki has actually been picked up and ported to a lot of platforms now, including the Dreamcast, GP32, Nintendo DS, Windows, Linux, Mac. It’s worth looking at if you’re looking for something simple to get going, because it serves the purpose of something like SDL, but without a lot of the bureaucratic overhead I think of when I think of SDL.
TE: What do you think is the biggest challenge about programming the Dreamcast?
DP: The biggest challenge these days is, oddly enough, acquiring parts. The best tools to work with are a brand-new Dreamcast and a broadband adapter. Both are nearly impossible to obtain these days. Thankfully, I have a big stack of Dreamcasts to cannibalize as pieces if others die. [The Dreamcast] was a neat little machine, but – I hate to say it – not very durable in the long run.
At one time, I had built a “Frankenstein Dreamcast” with flash ROM, an IDE interface, and hooks for an ISA network adapter, though I never quite got around to building all the logic for that. It was a really neat project, but it just got to be too much of a time sink for me to really justify it for its own sake, especially as how I doubt anyone would’ve picked it up and mass-produced it for other developers.
From a technical standpoint, it’s a pretty powerful machine with some great tools out there now, but if you’re not up to par on your debugging and other hackery, you won’t get very far.
TE: Could you share some advice – technical or otherwise – with others who are interested in homebrewing for the Dreamcast?
RT: Learn C++!
DP: Yeah, that and, really, just get in there and do it. There’s no amount of book learning or studying that is going to prepare you for it. The more experience you have outside the cushy sandbox that is modern PCs, the better.
TE: What do you think is needed now to help advance the homebrew scene for the Dreamcast?
RT: I don’t see the homebrew scene really opening up unless Sega decided to get involved with KallistiOS to help it along, filling in the gaps and, in the process, recreating it as a true dev-kit. I don’t see this happening in the near future, but I suppose an old Dreamcast engineer could pop up somewhere. I want to point out that I do not know of anyone out there even considering this. Don’t think of it as a rumor.
DP: I don’t think even Sega getting involved with KallistiOS would help much. What would advance the homebrew scene for the Dreamcast would be a revival of the Dreamcast itself, and I don’t see that happening for another 10 years or so. At that point, it’ll be retro and, thus, cool again.
Most people who are interested in hacking on consoles just to hack on consoles have long since moved on to other things.
TE: So would you like to see Sega return to the hardware scene, or see the Dreamcast return in some form?
RT: I would personally love to see Sega return to hardware, but I don’t think that will happen for another two or three generations, if at all.
The Dreamcast is technically still “out there” in the few arcades that still exist in this country: You’ll find classics like Crazy Taxi, Capcom vs. SNK, and tons more. The NAOMI is the arcade version of the Dreamcast, and it’s just a souped-up version of the home hardware. This was Sega’s biggest missed opportunity, in my opinion. They could have done what Nintendo was attempting with the Mario Kart arcade game, or Sony’s Tekken series, when taking into consideration arcade/home connectivity.
DP: Sega is no good at marketing hardware anymore. Sorry, guys, it’s true. The Saturn was a total flop outside Japan, and, while the Dreamcast did pretty good, it got trounced by Sony’s PlayStation 2 marketing.
Old consoles had a lot of very custom hardware in them, and you really had to re-learn how to code in a lot of instances. Look at today’s console lineup: basically, all PPC cell processors with various combinations of off-the-shelf video hardware and such. Modern arcade boards are more or less just a consumer console crammed into a JAMMA form factor.
So, in that sense, no, I don’t expect nor would I like to see Sega return to the hardware scene. I like them doing what they did during the Dreamcast era: making fun games. Hardware is just not all that interesting anymore.
Howard Wen (www.howardwen.com) now regrets having traded in his Dreamcast at GameStop.