Interview with Sgstair of the DSTunnel project
Could you please introduce yourself and the DSTunnel project.
I’m Stephen (aka sgstair), and am reasonably well known in the GBA/DS homebrew arena. I’m a primarily self-taught programmer and I mainly specialize in low-level coding and interfacing to hardware. When I’m not programming I also dabble in digital and analog electronics, and above all am constantly trying to increase my knowledge of math, graphics, programming, and basicly everything else I can get my hands on. The DSTunnel project aims to be a reasonably simple way to play non-internet-enabled DS multiplayer games over the internet.
You are well known in the DS homebrew community for your work on DS wifi. For those that don’t know, what does it do?
In short, the DS Wifi Library is a software interface that homebrew programmers can use to program the DS to use the internet. The long answer is it’s a device driver that talks to the DS’s wifi hardware and allows it to send and receive data, as well as a software layer that implements certain widely used internet protocols to enable easy network programming - it can allow homebrew developers to add internet support to their applications, and eventually (doesn’t do this yet) will allow a peer-to-peer wireless network for easy multiplayer gaming.
What have you done with the DS wifi bounty?
Pay bills, mainly
Why have you chosen to create applications for Nintendo consoles rather than the PSP or the “easy to hack” Xbox?
2 Reasons, mainly.
1) The DS is a great device, I’ve got 2, and they’re my most played consoles
2) Nintendo makes great hardware. Compared to all the other systems out there to develop for, Nintendo systems are the most elegant and have the best designed hardware I’ve seen.
What is it like working on the DS compared to the GBA?
It’s very similar in a lot of respects - it’s a dual processor machine but most of the action goes on in the primary processor. The only things that get tricky are the things that have to be sent from one CPU to the other.
Besides that, the hardware is a bit different obviously (because of 3d acceleration, 2 screens) - but a lot of it is the same or at least very similar.
Of all the projects you have worked on which has been your favourite?
My favorite project so far has been working on my GBA emulator (sGba) - it’s got a lot of problems, and is due for a rewrite, but it was a lot of fun to put together.
Why did you decide to tunnel the DS?
The driving force behind wanting to tunnel the DS is the desire to play Ouendan multiplayer
What development stage is DStunnel currently in?
Alpha level at best… the situation looks about like this at the moment:
I’ve written a proof of concept program that is partly successful (does not successfully tunnel any game, but completes part of the required “handshake”)
The present app is very buggy though, and a complete rewrite of the tunnel app will be done before I get any further.
There have been other attempts to tunnel the DS but none have been successful. Are you confident that your program will work? Why?
Yes, I’ve heard of the other attempts that have been made. Am I confident that my attempt will be successful? Yes, I am confident it will work, though there is still the chance for failure.
The big difference between my app and the previous attempts is that my app talks to the DS on a lower “level” than other applications can.This is also why there’s a very strict hardware requirement at the moment.(right now, a RT2500 chipset based wifi card must be installed with custom drivers to use the program - though this may change some in the future)
This project sounds quite different from other tunnelling attempts. What will the interface be like?
That’s not been decided yet
For the time being the program has a command line interface, and once the concept has been shown to be solid, a more user-friendly interface will be added.
What bugs have you found in the program other than timing problems?
Oh, a bundle of them, hehe…
The current version of the program is being scrapped for this reason alone
:)
Are there any legal implications of the program?
None that I am aware of, at the moment.
Do you have a date in mind for a public release?
Not yet. Presently the project is on hold, as I’ve decided to try to get one project done at a time (a novel concept…)
So, progress on the DSTunnel project will resume after the next version of the wifi lib is released.
For nearly two years now people have been looking forward to being able to play games such as Super Mario 64 DS online. Do you feel any pressure on you to make this work?
Of course
However, the driving force for my work is usually self-motivation… so pressure doesn’t usually help much.
How large do you predict your online community will be?
I have no idea at this point.
Could your application be used to play homebrew games online?
I suppose, though it’d be easier to just use the dswifi lib to make internet-enabled apps
What are your plans for after the DS tunnel project?
Oh, I’ve got a very long list of projects lined up, none that I want to say anything about at the moment though.
Is there any thing else you would like to say to the readers at ds-gamer.com?
Yes- I know everyone who’s been following the DSTunnel project is terribly news-deprived, because there hasn’t been any info about it for a long time now.
For those of you, who are interested, watch my blog at blog.akkit.org - it will be updated for sure when development gets started up again, and also contains info about my progress on other projects (and other random stuff that gets posted there)