Date: May 3, 2012
Author(s): Rob Williams
Want to play your Sega Dreamcast games but don’t want to haul the console out of the closet? You’re in luck, because there exists an outstanding emulator that I recently became addicted to: nullDC. This article covers all you need to know about it, including how to get started. So what are you waiting for? SoulCalibur is waiting.
As a gamer, one of the worst experiences is finding out that your favorite console is reaching its end-of-life stage. Yet, it’s inevitable. Also inevitable is the fact that fans will create an emulator to make sure that the platform never dies. Luckily, pretty-well every console prior to and including the Sega Dreamcast have stellar emulator options available. That = a lot of gaming potential.
Nearly five years ago, I wrote a how-to entitled “Game Emulation in Linux“, which as the title implies, talked about getting various emulators working under the OS along with a gamepad. At the end, I stated, “The only other system I really wanted to see an emulator for, but didn’t, was the Sega Dreamcast. I guess we can’t have it all!” This sentiment was directed at Linux, but the truth was that the options were ultra-limited for Windows as well.
As it’s been a while since I last gave any Dreamcast emulator a test, I decided to once again seek out the available options and see how they fared. To my surprise, I found two popular choices: DEMUL and nullDC. For various reasons, I didn’t have luck with DEMUL at all, after a couple of nights of testing. nullDC on the other hand, I had working no problem, so that’s the focus of this article. Unfortunately for Linux and OS X users, neither of these emulators are designed for either OS – though Wine might be an option on the Linux side.
It’s open-source. Want to contribute? You can!
The most important factor that sets an emulator apart from the rest is how well it works. In the case of nullDC, my overall experience has been amazing – much better than I anticipated. In all of the games I tested with nullDC (about 80), each one that worked delivered the same audio I’d expect to get from the console, and for the most part, the same could be said about the graphics. There are occasions where texture glitches occur or fonts may not render ideally through the emulator as they would on the console, but so far I haven’t encountered any problem too notable.
You might have noticed that I mentioned “each one that worked” above, and that’s because not all games are going to work with nullDC. The limiting factor is WinCE. If a game happens to use it, then it will not work in nullDC. It’s worth noting that DEMUL does support WinCE, so that is one thing that does set the two emulators apart. Select games that run on WinCE and subsequently won’t operate in nullDC are Resident Evil 2, Armada, 4×4 Evolution, Matt Hoffman’s Pro BMX, POD SpeedZone and Ducati World.
If you’re familiar with emulators, chances are you know how tedious it can be to find the right plugin for each module of a console, such as graphics, audio, gamepad and so forth. This is one area where nullDC shines (or doesn’t, depending on your view), as it pre-bundles all of the plugins right inside of the main package. That means that you’ll be able to get going fairly quickly without having to hunt down different plugins from a bunch of different websites. The downside, however, is that if one plugin doesn’t really agree with you, then you are somewhat out of luck. I’ve been unsuccessful in trying to find alternate plugins for nullDC.
nullDC doesn’t have much of an official website, but rather is hosted via Google’s ‘code’ project hosting here. You’ll want to download the non-NAOMI version of the emulator, and then extract it. There’s no installer for this emulator, so wherever you extract it is where it will run from.
Like most emulators, nullDC requires a BIOS to operate, and adding to the similarity, it’s the one thing that doesn’t come included with the program. The reason for this is that the developers don’t want to risk angering Sega’s lawyers, and I don’t blame them. A quick Google search for ‘nullDC BIOS’ will yield quick results, or for a safe download I recommend grabbing it here. You will need to place the BIOS and other files in the archive into the ‘data’ folder within the nullDC folder.
Once that’s done, nullDC should load up without a hitch. If it complains about not being able to find the BIOS, double-check that it was extracted to the proper folder (‘data’) and also that its naming scheme is appropriate (‘dc_boot.bin’).
Your first stop should be Options > Select Plugins. The first four options can be left alone; it’s the “Maple” section that’s to be tackled. Maple is the plugin for gamepads, VMUs and other things. For some reason, I couldn’t get my Xbox 360 gamepad to work with the default plugin here, so I changed it to “PuruPuru Dreamcast Controller”. For extra save space, I added a second VMU to the first gamepad, and then two more to my nonexistent second gamepad.
At this point, there’s just one more important thing to take care of: gamepad configuration. To handle this, you need to go to Options > Maple > Port A > and then use the configuration tool for whichever plugin you’re using. Here’s the configuration screen for PuruPuru and also how I have my Xbox 360 gamepad setup for it:
With gamepad configuration dealt with, you’re effectively done and ready to go. You might however want to spend a couple of minutes looking through the various tweaks in the Options menu, such as changing the default region or altering some of the graphics modes. Two options I personally enable are Per Triangle under the Sort section in the PowerVR menu, and also Extra Geom under the Aspect Ratio section in the same menu. The latter option helps reveal more of the game on each side, effectively making 4:3 games run with a widescreen ratio. This is not done by stretching, but rather revealing the extra area that the console itself would crop out. You will see some garbage on the sides on occasion, but the widescreen effect once in a game that supports it is generally worth it.
nullDC has the tendency to crash on occasion, so once all of your configuration tasks are handled, I’d recommend closing down the program and reopening it before loading up a DC game, just in case.
Prior to running a game, it’s important that you boot into the system BIOS in order to setup your VMUs (memory cards). To do this, you click on System, Start and then No Disk. Just like on the real console, you’ll be able to go into the File menu and format the faux VMUs.
With that done, this is where things begin to get a little complicated. Whereas an emulator like ePSXe has the ability to run a game right off of the CD, nullDC doesn’t. This is due to the fact that the Dreamcast uses GD-ROMs, not CD-ROMs. Ripping your own games isn’t an easy process either, so your best bet is to seek out proper CDI, MDS, NRG, GDI or CHD rips. There are likely a hundred different sites out there that host these image files, so they won’t be hard to find. Be careful with the sites you do land on, and always use your better judgement.
Note: Before downloading ISOs of Dreamcast games, it’s important that you understand your local laws. To err on the side of caution, stick to downloading ISOs of games you own a physical copy of.
Below is a showcase of some of the games I’ve run through nullDC. In all cases, I ran the games with the “Extra Geom” setting enabled as mentioned earlier. In some titles, this doesn’t bode too well, but it’s never detrimental to gameplay (and can be disabled just as easy as it was enabled). The first two games below, San Francisco Rush 2049 and Tony Hawk’s Pro Skater are two examples where the setting makes no difference; all you will see is black outside of the game area. The remainder of the games happened to work fine with the setting however, resulting in some nice widescreen action.
San Francisco Rush 2049
Tony Hawk’s Pro Skater
Sonic Adventure 2
Dead or Alive 2
Jet Set Radio
Capcom vs. SNK 2
In most cases where the graphics don’t look stellar, it’s not likely nullDC at fault, but rather the fact that the objects are static (not vector). In effect, they are being stretched due to the higher resolution. Fonts and various icons tend to show off this problem well, but it’s a minor issue in the grand scheme.
In the time I’ve used nullDC so far, my experience has been good, and I’m thankful that such a robust solution exists. It’s not the most stable emulator out there, but I’ve only ever had it crash on me when switching discs or on a rarer occasion, when configuring a plugin. I’ve never had it crash while inside of a game, even when running one for a couple of hours.
As good as nullDC is, there are two problems that might keep people from using it. First is the lack of WinCE support, which some popular games do support. Second is the fact that the “extPlugin” doesn’t seem to work. That means no BBA (broadband adapter), dial-up or modem emulation. For this reason, nullDC is not likely appropriate to connect to a private Phantasy Star Online server, or the net in general.
Though I’ve never been successful with getting DEMUL to run, that’s another emulator well-worth checking out. If I ever manage to get it running, I might follow-up with an article on it and compare it to nullDC. For Dreamcast fans though, having these options is amazing, given it took so long to get them. Huge kudos to the devs of both projects for helping to keep one of the best consoles ever (imo) alive.
Have a comment you wish to make on this article? Recommendations? Criticism? Feel free to head over to our related thread and put your words to our virtual paper! There is no requirement to register in order to respond to these threads, but it sure doesn’t hurt!
Copyright © 2005-2019 Techgage Networks Inc. - All Rights Reserved.