The State of DS Homebrew (it rocks!) 83
Justin writes "PSP homebrew always seems to get all the attention, but the DS homebrew scene is surprisingly active and robust as well. Modojo has an in-depth feature examining DS homebrew, including such things as PDA applications, indie games, and ScummVM DS (for oldschool LucasArts adventure games). From the article: 'My initial reaction to homebrew was little more than a shrug. I summed up the entire idea very simply with: Why? Why waste time on exploring less than impressive independent titles and old emulators when there is already so much new and interesting content for the DS? Luckily, at that time I couldn't have imagined the amazing world of homebrew I was denying myself.'"
Notes & Questions? (Score:5, Informative)
Notes:
"Basically, the way home homebrew and ROMS work is that you have to put something in the DS game slot at top to redirect execution to the CF or SD card adapter that carries the SD or CF memory card and various software in the GBA slot at bottom. Max Media Launcher, which goes in the DS game slot, seems to have a very good success rate at booting ROMs and homebrew when combined with the M3 SD X (what about the M3 CF X?).
Other products exist to redirect execution that fit in the DS game slot at the top, although ones like PassKey require that you fit a game into the device and then the conjoined entity into the DS game slot. You can also use wifi to do this (or potentially serve up applications), but you need a wireless access point with a certain chipset to do this (does the USB Wifi Max router enable this?). You can also flash the firmware on the DS, but this option seems complex for little gain when you can just put in the Max Media Launcher, plus I believe it voids the warranty."
Sources:
http://www.iso420.com/nds/dmax/ [iso420.com]
http://www.iso420.com/nds/m3sdx/ [iso420.com]
wasn't quite there for me yet (Score:5, Informative)
With that said, I saw this [engadget.com] on engadget last week. It looks promising for a simple *UNOBTRUSIVE* homebrew experience. Which is what I want
Re:Notes & Questions? (Score:5, Informative)
Re:Why Bother? (Score:3, Informative)
When the open source community understands the importance of actually *reaching* people, and bringing the products *to* them, they will have a better understanding of why so few home users use Linux-based OS's or FireFox, or OpenOffice.
Re:Notes & Questions? (Score:2, Informative)
Re:wasn't quite there for me yet (Score:3, Informative)
Most of the carts that you stick into it now have the form-factor of a GBA game *or less*. The device on
Engadget only has built-in flash, which isn't as hot as my gigabyte SD chips filled with music
Direct USB connection and claims of not requiring flashing are great, though. Hope they release one
that can have a CF/SD/mini-SD card of your choice.
Be careful what you choose... (Score:3, Informative)
Nintendo DS has tightened the screws only once (Score:3, Informative)
Sony has shown itself to be much more active than Nintendo at locking out homebrew. GBA homebrew from 2001 on a flash card from 2001 still works on the DS Lite. Nintendo has had about six releases of the DS firmware, numbered v1 through v6 by the homebrew scene, and only v4 (released nearly a year ago) tightened the screws on DS homebrew. Sony, on the other hand, has had PSP firmware 1.0, 1.5, 1.51, 1.52, 2.0, 2.01, 2.5, 2.6, 2.7, and 2.8, each update timed to fix holes in the previous version.
That's what rental is for. (Score:3, Informative)
Given that you quoted a price in US currency, I'll assume that you're eligible for GameFly DS [gamefly.com]. Or for games published by Nintendo, you might want to go to a DS Download Station at your local Best Buy store.
DSLinux (Score:5, Informative)
From TFA:
DS Linux is a port of the Linux operating system to the Nintendo DS. The project hopes to bring the full capability of Linux to the DS, but is still in the developmental stages. The project supports a full keyboard on the touchscreen, and will allow users to send and read email, chat online, and play text-based games. (emphasis mine)
We are actually a bit further than that. Two IRC clients are available (tinyirc and bitchX). BSDgames and other text games are mostly working. The article forgot to mention highlights such as working wifi support, ssh/scp, an algebra system (mathomatic [wikipedia.org]), and text-based web browsing. (To be fair, they contacted us for an interview before writing the article but it seems we were to busy to respond :P)
The biggest limitation is the lack of an MMU, which means neither paging nor swapping is possible. Hence DSLinux is a port of uClinux to the DS, not of the vanilla kernel. Our current kernel version is 2.4.16-hsc0 with an awful lot of patches and lots of new drivers to support the hardware of the Nintendo DS itself and various add-on devices (mostly storage devices using CF or SD cards).
At the moment we are stuck with 4MB RAM, which makes things a bit tricky. There is work going on to expand the available RAM from 4MB to up to 32MB for storage devices that sport on-board RAM, for example the Supercard. We also have someone on the team capable of building custom RAM expansion carts for the DS's GBA slot. Once we have more memory we'll have much more possibilities (there's talk about a GUI, for example, but that is still far off). Accessing RAM through the GBA slot involves gcc modifications, which have already been made. We still have to rewrite some of the assembly code in the kernel and the C library (uClibc). You can read more about this here [dslinux.org] if you are interested.
As you can see, this project is quite fun and challenging. Tasks on the TODO list [dslinux.org] range from shell scripting and cross-compiling applications to hacking ARM assembly in the Linux kernel. Progress is slow because we only have 3 very active developers at the moment (myself included), and some people who occasionally send patches. There is a lot of work to do. Get in touch if you are interested in helping out.
Re:Three-headed touchscreen monkeys!! (Score:4, Informative)
No, it wouldn't. The problem with touchscreen is that it only can do left-clicks, no right clicks. While right-click isn't needed to master any of the LucasArts games, I find it quite important for fluid gameplay, since it removes a lot of unneeded clicking. And another very fundamental problem is that a touchscreen can't do "hover", either you click somewhere or the device has no idea where your pointer is, which means you can't hover and move around like with your mouse to find out which objects you could interact with. ScummVM solves this by letting you toggle via Dpad between over, left and right click, but it really doesn't feel all that good. Last not least there is of course also a resolution problem, LucasArts games are VGA 320x200, DS only has 256x192, not that critical, but yet another annoyancy to add to the list.
ScummVMDS is still a great little tool, but the NintendoDS is really not a very good device for LucasArts games.
Re:wasn't quite there for me yet (Score:5, Informative)
I bought a DS Lite a couple of months ago, and decided to get one of the homebrew enabler devices for it.
This is how they work.
What you've got to have is basically three things. One, you need some memory. This memory can be flash, a harddrive, ram, it doesn't matter. Most solutions I've seen either use flash that can only be upgraded with a special usb interface, or they use a standard sd card / cf card / mmc card interface. Two, you need an application ( an OS if you will) that will read this memory and select files in the memory to run. Three, you need to trick the DS into thinking it's allowed to run DS code. If the ds doesn't authenticate itself for running ds code on startup, then you'll be stuck running GBA code only.
The solution I bought is two things, a mini-sd card memory interface and the OS built into a gba cartridge, and a seperate DS authenticator that goes into the DS slot. How does the authenticator work? Well you've got three choices. You either flash your ds so it doesn't do a security check, put in a piece of hardware that uses a seperate commercial cartridge to fake the security check, or you use a newer device that knows how to do the security check all on it's own. I bought the newer type of device, and it fits into the ds slot without protruding at all.
The gba cartridge i bought is from a company called SuperCard. There are other manufacturors, mainly the people who make the movie player, a company called m3. Supercard makes three different cartridges for sd type cards. One for SD, one for mini-sd, and one for micro-sd a.k.a. trans-flash. The sd version protrudes a little from a normal DS, while the mini-sd will fit perfectly into a normal DS. The micro-sd version wasn't available yet when I purchased mine, it fits perfectly into the DS-Lite without protruding. It came out a week after i bought mine. Since I have a DS-Lite, I was just a lil annoyed.
Anyways, it works great. Every commercial rom I've tried works, and as a result I bought mario and luigi partners in time (I didn't realize it was similar to SuperMario RPG), and a casino game, and decided super princess peach was garbage. I can also use my DS now to play mp3s, videos (after a lone encoding process that I do while I sleep), and tv shows. And of course, there's all the homebrew stuff as well. When I start school in september I'll be seeing if I can do some programming of it on my own.
Re:wasn't quite there for me yet (Score:4, Informative)
With something like SuperKey [supercard.cn] and a SuperCard lite, which uses MicroSD, you won't have anything hanging out of a NintendoDS lite, it as the same size as a normal NDS Module and does no longer require to plug an original module in, like a PassMe does and it doesn't require flashing the NintendoDS either.
Re:DSLinux (Score:2, Informative)
Our current kernel version is 2.4.16-hsc0
Doh, it's actually 2.6.14-hsc0...
My experience with DS homebrew (good and bad) (Score:4, Informative)
Step 1. Ordered a SuperPassKey and SuperCard SD off the web. The SuperPassKey goes in the DS card slot at the top between the DS and a game. The SuperCard goes in the GBA slot in the bottom and holds an SD card up to 1 GB in size. The SD card must be FAT16, I think. You can also get an adapter for a CF card.
Step 2. Went to the SuperCard SD home page (eng.supercard.cn) and downloaded a firmware update and a program called SC that patches ROMs and other homebrew to work with the SuperCard. (Unfortunately, this step isn't mentioned in the packaging.)
Step 3. Got some homebrew working. My favorites are MoonShell (read
Step 4. I got tired of the SuperPassKey sticking out of the top, so I downloaded FlashMe and flashed the DS. Not only do I not have to use SuperPassKey anymore, but FlashMe also gets rid of that warning screen when you boot up. This program has gotten hard to find on the net, though.
I haven't tried ScummVM DS yet, since it the current version can have some problems with SD cards. Also, I was hoping to get to play some Genesis and SNES games, but those emulators are still works-in-progress.
On the whole, the state of DS Homebrew is great from the standpoint of a user -- the hardware is easy to use, and there's a lot of useful and fun software. The online documentation for various things can be confusing, though, so beware. It helps that the DS can run programs designed for the Game Boy Advance, too. My only disappointment so far has been the Genesis and SNES emulators, but I'm sure they'll eventually work around their challenges.
For Those Interested in DS Homebrew (Score:4, Informative)