28
Brewing the Nintendo DS from the comfort of the home, Part 1
No comments · Posted by Matthew Bowra-Dean in Personal Project
A little while ago I was looking to start doing some hobbyist embedded programming. I’d fallen in love with the challenges embedded platforms present in software development thanks in part to both the course I did on hardware architecture and assembly language last trimester and the contract work I’ve been doing in the uni holidays.
Luckily for me the Nintendo DS has a fairly mature homebrew scene so back in April I bought the new DSi hoping all the eager software pirates out there would be quick to crack the firmware and enable the running of unofficial software on it. Unfortunately this hasn’t really happened but fortunately enough, a few DS SLOT-1 device manufacturers were able get versions of their devices out that would support DS homebrew on the DSi. None of the extra DSi features or power are available but it’s better than nothing.
So, on to the meat of the story. The Nintendo DS is a very capable little beast. It has two CPUs; an ARM7 clocked at 33MHz which is mainly used for interacting with the hardware; and an ARM9 clocked at 67MHz which does most of the processing grunt work. You also have 4MB of RAM to play with not including the VRAM and numerous caches. The DSi one ups all of this; doubling the clock speed of the processors and quadrupling the size of the RAM. Unfortunately this is unusable to homebrew developers at the moment as only the “DS mode” has been cracked meaning the clock speeds and available RAM are constrained to the DS’ capabilities.
Using the fantastic devkitPro toolchain I was quickly able to get a build environment up and going and through the tutorials here and here I was able to get a handle on the libnds library provided by devkit. So I’ve decided to start hacking on a dice roller. One of my loves in life is pen and paper roleplaying games and a recent game of Scion is beginning to get out of hand with the amount of 10-sided dice I am having to roll. In the interest of having something to waffle on about and impress random strangers on the internet with I am going to chronicle my attempts here (with BSD licensed source of course). Hopefully someone gets something out of this other than me.
No comments yet.
Leave a Reply
<< Brewing the Nintendo DS from the comfort of the home, Part 2
