Guide to Homebrew for beginners

Discussion in 'NDS - Emulation and Homebrew' started by DrOctapu, Jul 14, 2009.

Jul 14, 2009
  1. DrOctapu

    Member DrOctapu Magnificent Bastard

    Dec 23, 2008
    United States
    <!--sizeo:5--><span style="font-size:18pt;line-height:100%"><!--/sizeo--><b><u>The Beginners' Guide to Homebrew for the Nintendo DS</u></b><!--sizec--></span><!--/sizec-->
    Hi! I didn't see one of these, so I made one. This should cover most questions you will have while using homebrew software.
    Use ctrl+f to skip to a chapter, just put in the words in the "[]"s. (I don't know what they're called <img src="style_emoticons/<#EMO_DIR#>/tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />)
    <!--sizeo:0--><span style="font-size:12pt;line-height:100%"><!--/sizeo--><b><u>Table of Contents</u></b><!--sizec--></span><!--/sizec-->
    Chapter 1: What are flashcarts? [FLACAR]
    Chapter 2: Where can I get one? [WHERE]
    Chapter 3: I have one, now what? [NOWWHAT]
    Chapter 4: Where can I find homebrew games and applications? [WHEREHB]
    Chapter 5: Can I play retro games on it? [EMULATE]
    Chapter 6: Can I use GBA games on it? [EXPPACKS]
    Chapter 7: How do I make games?
    <!--sizeo:0--><span style="font-size:12pt;line-height:100%"><!--/sizeo--><b><u>An Brief Introduction to Flashcarts</u></b><!--sizec--></span><!--/sizec--> [FLACAR]
    Flashcarts ,or adapters, are cartridges for the Nintendo DS that read memory from a Micro SD card. In the beginning, a special device was needed to "borrow" the key from a commercial game, and that key would be used to run Nintendo DS homebew from a slot-2 device. Later, a slot-1 exploit was found that eliminated the need for that device, and allowed us to use a regular cartridge. This is what most of us use now. However, the DS lacks the memory to run GBA games, which had internal memory, natively on a Slot-1 card. This will be covered in Chapter 6.
    <!--sizeo:0--><span style="font-size:12pt;line-height:100%"><!--/sizeo--><b><u>Where to buy</u></b><!--sizec--></span><!--/sizec--> [WHERE]
    You can buy flashcarts at a variety of places. GameByGame, DealExtreme, and ElectroBee are a few examples. Deal extreme carries a variety of cartridges, at a modest price. The Acekard 2 is a great card, with an awesome price. For as low as 14$, this card makes a great beginner cart, with a variety of features, an up-to-date interface, and a good compatibility with game "Backups". The R4, however, is a cart that was popularized during the beginning of slot-2 cards. It, unfortunately, is still known as the cart for beginners. DO NOT buy an R4DS. They are all fake. There is no such thing as an R4-i or and R4 SDHC. These have a chance of breaking your ds, as they are made by companies that don't exactly do their best for quality. There are so many knock-offs, it's hard to find their respective firmwares. The cyclods is a popular choice for people who like features, but so is the Supercard DS-1. The supercard, however, is MUCH cheaper. I'm not going to bother with links, as a quick search will bring up their websites.
    <!--sizeo:0--><span style="font-size:12pt;line-height:100%"><!--/sizeo--><b><u>Firmware</u></b><!--sizec--></span><!--/sizec--> [NOWWHAT]
    Firmware is the interface that lets you load games. Some carts, such as the R4 and Acekard 2, have a Firmware made by the fanbase, the R4's is called YSmenu and the Acekard's is called AKAIO (Acekard-All-In-One). To install firmware, simply copy the folder's contents to the root, or follow the instructions for your specific card, but for the most part, copying to the root works fine. Some cards use Moonshell by Moonlight as the interface. Moonshell can play DPG files and some assorted music and display some pictures. Moonshell can be run on any card, and is definitely essential to the multimedia fanatic. Moonshell can be difficult to install, but that's a whole other tutorial.
    <!--sizeo:0--><span style="font-size:12pt;line-height:100%"><!--/sizeo--><b><u>Homebrew Software</u></b><!--sizec--></span><!--/sizec--> [WHEREHB]
    Some various sites that host homebrew are this one,,, and provides some up-to-date coverage of the homebrew scene. I'd reccomend that you try DSLinux (Advanced to install and run sometimes), MiniVmacDS (Mac emulator, youtube has a good pack on it that can be ran out of the box.), StillAliveDS (T4ils' brilliant creation, a portal clone.), and Moonshell 2 (Media Player, convert videos with SUPER or Search around a bit and you're to find stuff that's relevant to your interests. (Music app.) (RTS game, bomberman clone, clubhouse games clone thing.)
    dev-fr (French development site) (Ds programming site)
    <a href="" target="_blank"></a> (PDA app, programming libraries on other page)
    <a href="" target="_blank"></a> (Various music applications)
    <a href="" target="_blank"></a> (Development forum, releases.)
    <a href="" target="_blank"></a> (halo for ds.)
    <a href="" target="_blank"></a> (Wikipedia's list, prety good, actually.)
    <a href="" target="_blank"></a> (VI SITTER HÄR I VENTEN OCH SPELAR LITE DOTA)
    <a href="" target="_blank"></a> (News site, english.)
    <a href="" target="_blank"></a> (RACE! Neo pocket emulator)
    <a href="" target="_blank"></a> (Home of the famous neoflash compos.)
    <!--sizeo:0--><span style="font-size:12pt;line-height:100%"><!--/sizeo--><b><u>Emulating the Nes, Gameboy, Snes, Gameboy Color, Neo Geo, Neo Geo pocket, etc.</u></b><!--sizec--></span><!--/sizec--> [EMULATE]
    The NES and tons of you other favorites can be emulated with ease on the ds.
    The list of Emulators is as follows:
    Nes: NesDS (preferred), NesterDS (one rom at a time)
    SNES: SNESDS (low compatibility), SnemulDS (Preferred)
    Colecovision: ColecoDS (Made by AlekMaul, great interface.)
    Gameboy and Gameboy color: Lame boy (runs both, great emulator with high compatibility.)
    ScummVM: ScummVM ds (Only one, haven't tried it.)
    Neo Geo + Neo Geo pocket: NeoPOP (Doesn't work for me. Pocket), RACE!Ds (Great emulator, low speed. Pocket), NeoDS (Play Metal slug and King of Fighters anywhere! Neo Geo home console and arcade)
    Sega Genesis: PicodriveDS (only one I know of.)
    Sega Master System + GameGear: DSmasterplus (Haven't tried it, made by alekmaul, cool interface.), SMS advanced (Haven't tried it either.)
    MSX: PenkoDS (Haven't Tried)
    Atari 2600: StellaDS (Great emulator)
    Atari ST: StyxDS(Doesn't work for me.)
    and a variety of others.
    Links can be found with a quick google search.
    Now, to use these, you're going to need roms. GBAtemp does not condone piracy, so I can not post links. But googling "NES roms" or "SNES roms" will get you good results. To use Neo DS you're going to have to convert the roms, so put them all in a folder with the converter then run the converter, you'll also be needing a BIOS rom. Can't go in to much detail here though, as BIOS roms are mainly illegal to my knowledge. And, no, there are not any GBA emulators on the ds, sorry. EDIT: NEODS tutorial here: <a href="" target="_blank"></a>
    <!--sizeo:0--><span style="font-size:12pt;line-height:100%"><!--/sizeo--><b><u>GBA on DS</u></b><!--sizec--></span><!--/sizec--> [EXPPACKS]
    To use Gba roms and homebrew on the ds, you're going to need an EZflash 3-in-1 or a GBA flashcart. The simple choice is the EZflash. It's 20$ and works with most carts, AKAIO can flash the games to the cart directly, but others may need to use GBAexploader by rudolph, all you've got to do is select the rom file and it's save file. You can also use an Expansion pack to get Linux with a GUI on your ds. The GUI requires an EZflash or another expansion pack, but the rest runs fine normally. Keep in mind that the ezflash causes some homebrew to not work, so you'll have to take it out occasionally with stillalive ds and such.
    <!--sizeo:0--><span style="font-size:12pt;line-height:100%"><!--/sizeo--><b><u>Making Games</u></b><!--sizec--></span><!--/sizec--> [CODE]
    Unless you've got prior experience (GameMaker doesn't count) your out of luck. Don't bug programmers with requests for software, and don't go "LOL HOW DOES I MAKES GAME FOR DS?!?!? LOLOLOLOLOLOL!!!!!111one!!eleven!1". That pisses people off, and tells them that whatever you make will be trash. There are ports of python and lua to ds, but they're buggy. And BRAINF*CK DS does as the name implies.
    On the off chance that you do have experience, there are a few librarys that can help. The best one for beginners is supposedly PAlib, and devkitpro is the tool most people use. has palib and devkitpro linked.
    There is also a DS gamemaker, but it kind of sucks <img src="style_emoticons/<#EMO_DIR#>/tongue.gif" style="vertical-align:middle" emoid=":P" border="0" alt="tongue.gif" />.
    Some tutorials:
    <a href="" target="_blank"></a>
    <a href="" target="_blank"></a>
    <a href="" target="_blank"></a>
    <a href="" target="_blank"></a>
    <a href="" target="_blank"></a>
    <a href="" target="_blank"></a> (Contains source)
    Please post any questions you have. I'll be glad to answer them and add things I missed in, as long as they aren't programming questions, I only use python currently.
  2. warbird

    Member warbird GBAtemp Regular

    May 25, 2007
    First of all, this is a good start, although I think this has been covered in various other threads.
    It would be nice if you added some more links to homebrew, applications and games.
    Resources are here on this very page. Look at the stickies.
    Some of the sections, like the programming section, just sucks (imo.. sorry)
    Try to add some links to programming tutorials etc for people who want to try to program for the DS. There are lots of resources out there.

    All in all, a good start for an introductory guide, but not complete by far.
  3. DrOctapu

    Member DrOctapu Magnificent Bastard

    Dec 23, 2008
    United States
    Added in some links. Feel free to post any links that I should add.

Share This Page