Home New Tutorials Programs
1-R4DS Setup 2-Software Space Invaders
Old Tutorials DSEmu
1-Setup 4-Sound 7-FIFO
2-Framebuffer 5-SRAM 8-Interrupts
3-Keys 6-Filesystems 9-Microphone
10-Extended Rotation Background

Homebrew Nintendo DS Development Tutorial Part 1

This is the first of a new set of tutorials on developing homebrew applications for the Nintendo DS. I'm leaving my old tutorials up, even though they are out of date, as they still have good relevant information. Eventually they'll be superceded by these new ones.

For the new tutorials I'm concentrating on using the newer hardware options available for running Homebrew instead of the older WifiME tricks. I'm using the Revolution for DS (R4DS) card which allows running homebrew applications on any of the old and new DS systems.


To run self developed code on the DS you need to be able to somehow transfer the executable to the device. As mentioned above I'm using the R4DS. This is a card that slots into the standard DS game cartridge slot in the rear of the device. It has a slot to put a MicroSD card which is used to hold the applications.

The R4DS comes with a USB card reader that can be used to copy Nintendo DS applications onto it from the PC. This will work on any operating system (Mac OS X, Linux and Windows) and operates just like any other standard card reader or mass storage device.

Setting up the R4DS

The MicroSD card that is used in the R4DS needs to have some files copied onto it containing the R4DS kernel software. This is the program that first runs when you turn on the DS with the R4DS and MicroSD card inserted. The latest kernel software should be downloaded from the R4DS download page. It is in .rar format so you'll need to open it with WinRAR or a similar tool for your operating system.

Copy all the files from the kernel .rar file onto the MicroSD card, in the exact directory structure that is contained in the .rar file.

Testing the R4DS

After you've copied the kernel files over, copy this hello_world.nds file into the root directory of the MicroSD card. Remove the card from the PC (using the safe hardware removal option to ensure all the data has been written to the card), place it in the R4DS, and insert the R4DS into the Nintendo DS.

Turning on the DS will now boot into the R4DS kernel program. Select the left hand icon (the Pacman one) on the bottom screen. This will show a list of available programs to run from the root directory of the MicroSD card. These are all the .nds files on the card.

Use the arrow keys to select the hello_world.nds file and press the A button to run it. For this example you don't need a SAV file (for saved games) so press X for ignore if you are asked. The hello_world program should now be running.


Using a device like the R4DS is much easier than the previous approach of dealing with WiFi transfers, copying to a GBA cartridge, etc. Now installing existing homebrew is as simple as copying the .nds file to the MicroSD card and putting it in the R4DS.

The R4DS also has the ability to play music files, read text files and view images. See the documentation for more details.

The next tutorials will go into installing the development software and then onto writing programs.