DSLinux : the FAQ


I. BASICS

I.1 - What is nds ?

It's an acronym for the Nintendo DS. (DS means Dual Screen.) The Nintendo DS is a portable handheld game console sold since 2004.
For more info : http://en.wikipedia.org/wiki/Nintendo_DS
Also See (more technical) : http://www.darkain.com/nintendo_ds/faq.php

I.2 - What is DSLinux ?

DSLinux is the project to run Linux on DS. The goal is to use every hardware component of the DS.

I.3 - Is it legal ?

Yes. If you're a citizen of USA, note that the DSLinux project respects the DMCA.

I.4 - Can I use DSLinux to play ripped games ?

No. And we are against piracy.

II. FEATURES

II.1 - Is DSLinux usable now ? With all the DS's features ?

DSLinux is still in development ; some stuff works and some dosen't. For example, we have a shell and the touchscreen functioning. The wifi doesn't work (yet).

II.2 - Is it possible to run all Linux software ?

If it's a text app that runs in console you will probably be able to run it, but for graphical apps, it's improbable.
All programs will have to be recompiled for DSLinux and the DS processor.

II.3 - If I use DSLinux, can I still play official games ?

You can play official games before and after running DSLinux. You just have to reboot the console.

III. INSTALL

III.1 - Where is DSLinux stored ?

DSlinux is stored on a GBA Flash Cart or a GBA MP.
  1. On a GBA Flash Cart : The cartridge (commonly called 'cart') is plugged into the gba cartridge. A GBA flash cart is a rewritable GBA Cart. You write to it using a GBA or a separate programmer.
  2. On a GBA MP : The GBA MP uses the GBA slot to access the DS. The GBA MP uses CompactFlash Type I storage

    III.2 - Which methods can I use to run Linux on my DS ? Howto boot DSLinux ?

    There are three methods :
    1. PassMe
    2. FlashMe
    3. WifiMe
    Each one has his advantages and limits.
    1. the 'PassMe' method : It's a card (called 'PassMe' or sometimes 'MagicKey') placed between the nds and an original nds game. In this case, the NDS boots on a flash cart where there is Linux.
      For more info to use this method : http://www.dslinux.org/index.php?showtopic=430
    2. the 'WifiMe' method : You need a Wifi card. You have to install specific drivers for your card. After that, start the ds and choose 'DS Download Play'. The DS will download a virtual PasseMe from the computer, which allow the nds to load DSLinux from the FlashCart. At every boot, you need to use your computer to load DSLinux. Note that you need a really specific card and the driver exists only for Windows2000 or XP.
      For more info to use this method : http://www.aaronrogers.com/nintendods/wifime.php
    3. the 'FlashMe' method : You need (a PassMe OR a Wifi card : one time) AND a gbamp (every time). This method change the firmware (a basic operating system into the nds) of the DS. After that, the DS allow you to choose to see a demo on the gbamp. The demo will be DSLinux so the DS will load it.
      • with a PassMe : Start the DS with the PassMe to flash the firmware. After doing it, you'll never need the PassMe. At each boot, the console will ask you if you want boot DSLinux or the standard Nintendo OS.
        For more info to use this method : http://ds.gcdev.com/dsfirmware/
      • with the wificard : You have to use the WifiMe method to flash the firmware as with the PassMe. After that, it's like doing the 'FlashMe' method with a PassMe.

    III.3 - What is the difference between a .ds.gba and .nds file ?

    The .ds.gba file is created to be written on a gba flash card.
    The .nds file has several uses :
    1. with an emulator (like iDeaS, dsemu, dualis).
    2. with WirelessMultiBooting (aka wmb) : it's the 'WifiMe' method.
    3. with GBAMoviePlayer (aka gbamp). Originally, gbamp is a cartridge sold by Nintendo allowing to play MPEG3 and MPEG4 (for GameBoyAdvance and DS). There are several versions of the gbamp built by different companies. Their gbamps are not equal (in price, features and ability to hack it).
    You can find the latest version of the .gba and .nds files at http://kineox.free.fr/DS/

    III.4 - How do I copy the .ds.gba onto my flash cart ?

    You must plug your USB<>GBA cable (multiboot) or your USB programmer into your computer. Open up the software that came with your cart (or the program 'littlewriter' if your cart is supported) and either work out how to flash it or refer to your documentation, as each cart is different.
    LittleWriter homepage : http://mapage.noos.fr/dadywriter/
    Note that all tools and drivers are designed for Windows.

    Linux users could try flinker : it works with Flash2Advance (not ultra). Perhaps using a CompactFlash is a better choice (as CompactFlash can be detected as an IDE drive) for Linux users.
    Flash2Advance page : http://www.gameboy-advance.net/fal_soft/gba_flash_2_advance_linux.htm

    III.5 - What is the difference between a hacked gbamp and a 'stock' gbamp ?

    The hacked gbamps have a new firmware installed by the user.
    Hacked gbamp FAQ : http://www.dslinux.org/index.php?showtopic=618
    How to do it : http://www.ndshb.com/modules.php?name=Content&pa=showpage&pid=26

    IV. MISC.

    IV.1 - Is there any place I can go to find more information on the DS ?

    Sure, if you take a look at the bottom of any page on the forum you will see a number of links related to the Nintendo DS and its development. Read especially the pinned topics (the upper of each section).
    Also, there are even more links on the post at http://www.dslinux.org/index.php?showtopic=2Don't forget to use the 'Search' function in the forum before you post ! The answer was probably posted before you wonder about it !

    IV.2 - Why are all of the methods to install DSLinux are called 'SomethingMe'?

    The first method was called 'PassMe' by Natrium42. After that, the others developpers have keeped the 'XxxMe' style when they found new methods to boot the DS. Don't use the 'XxxMe' for other use because it is not logically correct and it can confuse new users.