August 31st, 2006, 22:38 Posted By: wraggster
Today its our honour to interview the coder of Picodrive DS, which is a Genesis/Megadrive emulator for the Nintendo DS.
DCEmu Can you tell us where were you born, where you live,etc.?
RyanB:I was born in central KY, USA, and continue to live there.
DCEmu What qualifications do you have?
RyanB:I have a Bachelor's degree in Computer Science with a minor in Mathematics, and just started my Master's in CS. My day job is being
the sole PC admin for a small/medium business, where I handle everything from managing our LTSP install to developing and maintaining intranet web apps.
DCEmu What made you get into computers/consoles?
RyanB:My parents got me an Apple IIe when I was a kid, figuring it would "last through college". Obviously it didn't, but that followed up with
PC-clones and trusty old BASIC, which is what got me interested in programming. As for consoles, my first (and for a long time only) was the NES.
DCEmu What projects/coding have you done previous to your Genesis Emulator for the Nintendo DS?
RyanB:Mostly stuff for school and work that wouldn't be of interest to most people, or small personal projects. Things like compilers, video
processing algorithms, large web apps, 3D engines, general OSS stuff, and Linux kernel hacking.
DCEmu What inspired you to code a Genesis Emulator to the Nintendo DS and what difficulties did you have getting it to run properly ?
RyanB:People complaining about the lack of a good one, mostly. I think there were one or two Genesis emulator ports, but they ran at about 1fps.
Thankfully I had a great codebase to work from with Dave's Picodrive, so really the only issues I had initially were figuring out DS-specific things like graphics and FAT access.
DCEmu Can Full Speed and Full Compatability be accessed with your emulator in the future ?
RyanB:I think 30fps is a reasonable goal, though that may be able to be surpassed. Compatibility is already pretty good, although memory usage in the latest version appears to have broken some 3MB ROMs. The next release should have some support for large ROMs on Supercards and in appended mode (and hopefully save states for appended mode as well). I know everyone has been asking about sound, but realistically it's probably not going to happen unless it's running on ARM7 (running it on ARM9 semi-works, but drags emulation down to 6fps), and moving it over is not going to be an easy task.
DCEmu Whats the good and bad points about developing for the Nintendo DS?
-developing for a portable console is just cool
-writing and improving low-level code is very educational
-with devkitPro you have a very familiar development toolchain if you've already used GCC
-difficult to debug (though I think masscat has picked up the wireless gdb stub project, which is good)
-difficult to use both processors to their fullest
-limited hardware resources
DCEmu What got you interested in development for the DS?
RyanB:I fooled around with GBA homebrew at the very beginning of that kind of thing, and had some previous experience hacking around on ARM stuff and it's an architecture I like. I owned a DS at launch, and sort of paid attention to what was going on with the initial efforts to get code running, but didn't really get in to it myself until after I
found out about devkitPro/libnds.
DCEmu Do you have any projects, that you would like to start for the DS?
RyanB:I have a couple of ports I'm interested in doing, right now I'm mostly waiting for libfat to get dirent support so that I don't have to rewrite file code. I don't really want to talk about them though and inadvertently discourage someone else from working on them, or get anyone's hopes up. I'd also like to do some original things outside of
DCEmu What would you like to see ported to the DS and what is realistically the limit to what can be done?
RyanB:I think someone talked a while back about working on a port of Cave Story to the GBA, I'd like to see that actually finished and the source put up, as I think a DS version would be nice as well (to take advantage of the added resolution and buttons, for example). Realistically I think all kinds of things are possible, as resourceful
homebrew developers have shown time and time again. Of course there's certain technical limits to what can be done from a processing standpoint, but what that imposes as far as what can be done overall I would be hesitant to say, since human ingenuity can get around that to a small degree.
DCEmu How could the DS Scene be improved ?
I think there just needs to be some more documentation, collaboration, and momentum. There seem to be some new resources coming around that might help, but at the moment there's not really any good "bottom-up" documentation on programming DS-specific things such as video hardware, sleeping, and so on.
DCEmu Whats your favourite games from each console you have owned ?
RyanB:NES: High Speed
Game Gear: Sonic Triple Trouble
Genesis: Sonic the Hedgehog
SNES: Chrono Trigger
GBA: Ninja Five-0
PSX: Vagrant Story
N64: Super Mario 64
DC: Soul Calibur
PS2: Tekken Tag Tournament
Gamecube: Paper Mario: The Thousand Year Door
Xbox: SSX 3
DS: Osu! Tatakae! Ouendan!
PC (not a console, but I'm including it anyway): N
DCEmu Finally which of the Next Gen Consoles interest you the most and why ?
RyanB:Although I was pretty close to buying a 360 a little while ago, I realized I don't really spend that much time playing new games anymore
and chose not to. I think what they've been talking about with XNA and hobbyist development is interesting, but I'll wait and see what really happens with it. The PS3 kind of falls in to the same category. I'm pretty interested in the Wii as there seems to be some focus on more casual gaming there, and I'll probably wind up buying one at launch or preordering if Nintendo ever announces a date.
Thanks for the interview
For more information and downloads, click here!
There are 3 comments - Join In and Discuss Here