The Ultimate Nintendo DS ROM Hacking Guide! (2023)

The Ultimate Nintendo DS ROM Hacking Guide! (1)

The Ultimate Nintendo DS ROM Hacking Guide! (2)

This pack contains all the programs I'll discuss here in this guide.​

It contains various useful ROM hacking tools like extractors and​

translation tools. I recommend you to download it before you​

continue! Note: To download it, click the image above.

The Ultimate Nintendo DS ROM Hacking Guide! (3)

Hello everyone, this is my entry to the GBATemp 2011 Tutorial Competition. In this guide, I will explain you about almost everything you need to know about Nintendo DS ROM hacking. So far, Nintendo DS ROM hacking is quite popular, but there are still people who don't know anything about ROM hacking. I hope that, with this guide, people will understand ROM hacking, and thus in this way the hacking area will grow.

If you've found anything incorrect in this guide, please let my know by sending me a PM, or by commenting here.
If you still have any questions, after reading this guide, feel free to ask me or the 'Tempers around.

Before I'll really start with this guide, I would like to point out a mistake that is commonly used by many people: the difference between hacking and cracking.
In simple words; hacking is a completely legal way to modify a game, while cracking is illegal, and is only used to harm things.
A few examples of hacks we are sharing here at this community are; translations, hardcore hacks, graphical hacks etc.
We 'hackers' are modifying a game, and are using our knowledge and creativity for well-intentioned acts, and for fun.

It is completely legal to upload a hack, as long as you don't distribute the whole game on the internet, only the files you modified.
There is one simple solution to do this; making patches. These files do only contain the modified parts of a game, so they don't contain anything of the game itself; only the bytes you changed, and thus the parts you created your own.

There are several patching programs like xDelta or Lunar IPS. The most common program that is used for Nintendo DS hacks is xDelta.
To create a patch, you will need both the original, unmodified, untrimmed game, and the game you have modified. If someone has downloaded your hack, he/she has to use the same program you used. The user needs to open your patch alongside an original backup game, and the patcher will insert the modified parts into the backup.

So in this way, you can upload a file with a small file size, so you will save bandwidth... And it is completely legal!
It is absolutely not allowed to post Nintendo DS ROMs anywhere, it is not allowed to post them or ask for them here!

This information is very important, be aware of what you are going to do!

The Ultimate Nintendo DS ROM Hacking Guide! (4)

In this section we are going to replace the graphics of a Nintendo DS game. A few examples of graphics are Logos, buttons, overworld sprites, character sprites, et cetera. I will only explain you how to hack the most common graphic data files. You can find these in almost every game, there are only a few games that are using another file type.

This video basically summarizes what's been done at ROM Hacking Example 1. However, if you'd like a detailed explanation of everything read it below.​

Example 1: Replacing a compressed graphic file


In this example, I will replace the "Nintendo" logo that appears at the startup of Mario Kart DS. You can all download the needed tools for ROM Hacking later, as one .rar file. The tools I will use in this example are CrystalTile and BatchLZ77. Find them on Filetrip for now.

The Ultimate Nintendo DS ROM Hacking Guide! (5)

First of all we are going to open Mario Kart DS in CrystalTile.
Click the folder button at the top bar.

The Ultimate Nintendo DS ROM Hacking Guide! (6)

Select your Mario Kart DS ROM file, and click "Open".​

The Ultimate Nintendo DS ROM Hacking Guide! (7)

Now, a list should appear containing all the files within the ROM.​

If this didn't happen, click Tools -> NDS File System or press Ctrl + N at the same time.​

The Ultimate Nintendo DS ROM Hacking Guide! (8)

Scroll down, until you see the data/Scene/Logo.carc file... Do you notice the LZ icon in front of that file?​

It means the file is compressed. It is very useful to know that, because it needs to be decompressed first, before you can edit it.​

Sometimes, you will encounter a file without a file extension, if it has a "LZ" logo in front of it, it means it is compressed.​

Every .carc file (Compressed Nintendo Archive) has a LZ77 compression, you'll need to decompress such files using a special tool.​

You can do that with CrystalTile, but I won't be using that, because sometimes CrystalTile fails to (de)compress files. I'll just use BatchLZ77 here.​

But now, we are going to take out the file of the ROM file. We are going to export it... right click the file, and click "Export".​

(Video) The Ultimate Nintendo DS ROM Hacking Guide - Example 1

Choose where you want to save the file, and click "Save".​

The Ultimate Nintendo DS ROM Hacking Guide! (9)

Now we are going to BatchLZ77... Just what I said earlier, the file is compressed, we need to decompress it.

Click "File -> Decompress Files...", go to the folder where you just saved you .carc file, and select it.
When it's done, a window will appear saying you're file has been decompressed succesfully, that should be really quick.

The Ultimate Nintendo DS ROM Hacking Guide! (10)

So now, you have two files... "Logo.carc" and "Logo.carc.decompressed".​

You could say that "Logo.carc" has been decompressed to a narc file now.​

The Ultimate Nintendo DS ROM Hacking Guide! (11)

Now we're going back to CrystalTile.​

Hit the folder button, and open up your decompressed .carc file (so "Logo.carc.decompressed").​

A new list should appear. If not, press the F2 button, or go to "Tools -> Sub-file Sort...".​

The Ultimate Nintendo DS ROM Hacking Guide! (13)

You'll see nine files in total, but actually, these are just three graphics.​

You have three extensions here, .NSCR, .NCGR, and .NCLR.​

All these .NSCR files are 'Map files', they will put the image on the right place in game.​

Sometimes, you have a puzzle instead of a complete picture (if you open it with CrystalTile).​

But once you open the graphic alongside the .NSCR file, you will see that the pieces will form a complete picture.​

However, you cannot edit a graphic alongside an .NSCR file.​

If you do, it will be messed up in-game, or the game will crash. Be careful about that.​

The .NCGR files are 'Graphic files', they contain the 'picture' of a graphic.​

Once you open it alone in CrystalTile, you will notice that the colors are messed up...​

That's why we also have .NCLR files, these are the pallete files. It will assign a picture its right colors.​

When you opened a graphic file, alongside a pallete file, you can just edit it normaly.​

It won't crash if you would modify it in this way.​

The Ultimate Nintendo DS ROM Hacking Guide! (14)

Click the button marked above, the tiled mountain, and change the 'scale' value under the​

'Tile property' tab from 400 to 100 (400% picture size to 100% picture size).​

Now, you have to select the logo_R_Nintendo_m.NCGR graphic file (don't double click it), and then press the space bar​

(or right click the file and select "Retrieve Tile adress"), (if you double click the file, the image is messed up).​

You have to do the same with the palette file (logo_R_Nintendo_m.NCLR), click it once, and press the space bar.​

Now you will see the 'Nintendo' logo correctly.​

The Ultimate Nintendo DS ROM Hacking Guide! (15)

Right click the logo that just appeared, and click copy. Now you can paste it in programs like Paint or Photoshop.​

You can make your own, custom logo now.​

Make sure that you only edit the 'black' part and not the 'blue' part, and only use white characters.​

Copy your modified logo in Paint, Photoshop or any other tool, and go to the next step.​

The Ultimate Nintendo DS ROM Hacking Guide! (16)

(Video) Nintendo DS ROM Hacking Tutorial - Changing game icons

Right click the logo in CrystalTile, and click 'Paste' (the same way as you copied the file).​

Now you can move it around, which we're not gonna do here, just double click the logo, so it will be pasted.​

The Ultimate Nintendo DS ROM Hacking Guide! (17)

Go to "File -> Save" or use the Ctrl + S shortcut to save the file. Or go to "File -> Save As" if you also want to keep the original.
You can close the logo window in CrystalTile after you saved it.

The Ultimate Nintendo DS ROM Hacking Guide! (18)

Now we're gonna recompress the file using BatchLZ77. Choose "File -> Compress Files...".​

The Ultimate Nintendo DS ROM Hacking Guide! (19)

Select the modified file you just saved.​

The program will create a new file, and its extension will be '.compressed'.​

This is your modified file in .carc-form, as you probably already figured out.​

The Ultimate Nintendo DS ROM Hacking Guide! (20)

In CrystalTile, we're going back to our Mario Kart DS ROM window.​

Right click the data/Scene/Logo.carc file again, and press "Import".​

The Ultimate Nintendo DS ROM Hacking Guide! (21)

Select your "Logo.carc.decompressed" file, and CrystalTile will replace the original file with your modified file.
The extension doesn't matter, as long as it remains a graphic file.

The Ultimate Nintendo DS ROM Hacking Guide! (22)

Finally, we're going to save the modified Nintendo DS ROM.​

If you followed all the steps correctly, the Nintendo logo has been replaced with your​

own, like the one above! The font I used here is called 'Pretendo'.​

Example 2: Changing Palette Files


In this example, we're not only going to change the graphic file, but also the palette file. The tools I will use for this example are CrystalTile, BatchLZ77, Paint.NET and ConsoleTool. It is important that you don't use Microsoft Paint for this, just use Paint.NET (free), Photoshop (shareware, but very useful), or another program. Before you're going to read this example, make sure you read the first one to make things more clearly.

This time we're going to change the Title Screen of Mario Kart DS (the Top Screen only).

Open your Mario Kart DS ROM file with CrystalTile.

Scroll down, and export the data/Scene/Title_us.carc.

Decompress the exported file with BatchLZ77.

Open the decompressed file with CrystalTile.

Right click/Retrieve Tile file for the Title_m_b.NCGR and Right click/Load Palette for the Title_m_b.NCLR file.

Right click the Title_m_b.NCLR palette file, click 'Export', and save it to some folder.

Copy the graphic that just showed up correctly, and paste it in you graphic editor.

After you edited the graphic, you have to make sure your image is in 8 bit pixel mode:

Using Adobe Photoshop
Go to 'Image/Mode/Indexed color...', and use the following settings:
Palette: Local (Perceptual)
Colors: 256
Forced: None
Transparency: Unchecked
Dither: Diffusion
Amount: 75%
Preserve Exact Colors: Unchecked
Click 'OK'.

Using Paint.NET
Click 'Save as', and select BMP and 8 Bit, save it, and open the .BMP file.

Now we have to save the palette to a file:

Using Photoshop
Go to 'Image/Color Table...', and select the 'Save...' button (use the .act extension).

Using Paint.NET
This isn't possible with Paint.NET, you will have to find a tool which creates a .act palette file.
You can use the palette editor here, for example. Open the .bmp file using 'Load Palette', and export the .act file using 'Save Palette'.
Now you'll have to open the created .act file in ConsoleTool, after you opened it, also open the .NCLR file you extracted with CrystalTile.

Compare the two files; make sure that your .act files has the same amount of colors. Delete the last color if it has more colors that the .NCLR file. Make sure the first color is the same as the one in the .NCLR file, this color will set the transparency.

Save the .act file as a .NCLR in ConsoleTool using 'File/Export'.

Replace the old .NCLR file in your ROM(Title_m_b.NCLR) with CrystalTile with the newly created .NCLR file by ConsoleTool.

(Video) Jailbreak Your Nintendo DSi In Just 12 Minutes!

Load the palette using CrystalTile, right click the Title_m_b.NCLR file and select Palette Load.

Now the colors will be messed up, this is okay, because now you have to copy the edited graphic file from you graphic editor, and paste it.

Click 'Save', and close the two windows of the .carc file (not the two of your .nds file).

Compress the 'Title_us.narc.decompressed' file with BatchLZ77, so the file 'Title_us.narc.decompressed.compressed' will be created.

Replace the old Title_us.carc in your ROM with the 'Title_us.narc.decompressed.compressed' file using CrystalTile (remember: Right Click/Import').

Save your ROM file, and test it!

The Ultimate Nintendo DS ROM Hacking Guide! (24)

The Ultimate Nintendo DS ROM Hacking Guide! (25)

In this section I am going to explain you how to replace the music and sounds of a Nintendo DS game. The tools required for this aren't perfect, so there is going to be some hex editing. If you are in search of a good, free hex editor, I'd recommend you HxD. Another good hex editing program is Hex Workshop, but this one is shareware.

Example 1: Inserting Your Own Custom Music


In this example I will use FL Studio (you can use the demo version), a hex editor (I'll use HxD here), midi2sseq, VGMTrans, CrystalTile and a midi file. Here, I will explain you how to replace the Olympus Coliseum battle music from Kingdom Hearts Re: Coded with your own battle theme.

First, we are going to extract the sound_data.sdat file out of Kingdom Hearts Re: Coded using CrystalTile. So open CrystalTile, and scroll down 'till you see "sd/sound_data.sdat".

Right click the file and select "Export", and save the file to any location.

Open VGMTrans, and drag and drop the sound_data.sdat file you just extracted to the program window.
VGMTrans will read the file, just be patient until the list containing the music shows up.

We need to extract the Olympus Coliseum battle theme, which is the file named "Herc_B". Select the file so three
files will appear at the left side.

You see those three files? The first file is the SSEQ file, the sound sequence.
These files are like .midi files, but especially made for the Nintendo DS. The second file is the SBNK file, the Sound Bank.
You can compare these with soundfonts, they assign the instruments of an SSEQ file a realistic, not midi-ish sound. Like you hear them in-game.
The third file is the SWAR file, the Sound Wave Archive. It contains a collection of SWAV files (Sound samples/Sound Waves), which are like .wav files.

We only have to extract the SBNK, as a .DLS, so right click the second file, and select "Convert to DLS".

Now you'll have to open your .midi file using FL Studio.

There should be a small window in FL Studio, named Fruity LSD. Click the grey folder button on the left top, and select the .DLS file you just extracted.

Now you'll have to replace each MIDI channel. Right click every MIDI channel, hover replace, and click 'MIDI out'. Now you will be able to change the instruments, so that they will be heard correctly in-game. You can only have 14 channels for every song you want to put into a Nintendo DS game. The file size can also not exceed the original, if this happens, you'll have to reduce the MIDI channels, delete some notes, or reduce the song length.

Export the file as a MIDI using "File/Export/MIDI File" when you're done with editing. Do not close FL Studio yet!

Open your hex editor, and open the MIDI file you just saved.

We are going to change the tempo by changing one byte. This step is really necessary. Press ctrl + F, enter "60", and set the "Data type" option to "Hex". It should find a byte very early in the file.

Change that byte to C0, so change "60" to "C0", press ctrl + S to save your file.

Now you'll have to open the MIDI file again, the one you did just change, using FL Studio.

You'll notice the tempo is twice as fast, this is just what we want. So export it as a MIDI, again.

Open the file, you just saved using the hex editor.

Press ctrl + F again, and search for that "60" byte again… Make sure the "Data Type" option is set to "Hex".

Overwrite the byte with "30", so "60" becomes "30".

Save the file. The song should sound normal now, its tempo should be recovered.

Open the folder where your latest created .midi file is located, and make sure midi2sseq is in the same folder.

Drag and drop the .midi file to the midi2sseq executable.

It will create a new .sseq, it should have the same file name as the .midi.

Unfortunately, midi2sseq isn't perfect. So we have to edit the newly generated .sseq with a hex editor.

Press ctrl + F, enter "FF C0". Again, make sure you're searching for hex data types.

Change the C0 value to C7, and ADD (not replace) a 00 byte.

My midi file has 12 channels, that means there are twelve "FF C0"s in my SSEQ.
If you got 6 channels for examples you'll have 6 "FF C0"s. You'll have to edit them, so just repeat the previous two steps, until you have edited them all.

Save your file, and open CrystalTile.

Open the sound_data.sdat you created at the beginning of this example.

Locate the "Sequences13-Herc_B.SSEQ" file in the window that just appeared.

Right click it and import the .SSEQ you made using midi2sseq. Again, you cannot exceed the file size, otherwise an error will appear.

Click the save button at the top bar.

Extract you Nintendo DS ROM using a ROM Extractor.

Go to the "sd" folder, and replace the sound_data.sdat file with the new one.

Rebuild your ROM, and test it.

Optionally, you can make your music loop. To do this, look at this tutorial. Unfortunately, I haven't really figured out to make it work, so
you'll need to do this on your own. VGMTrans can sort out all the bytes for you, I recommend it if you want to use that tutorial.

The Ultimate Nintendo DS ROM Hacking Guide! (26)

(Video) How to patch a ROM: Romhacking - easy tutorial (PC/Android/Apple)

Due to a shortage of time, I couldn't finish this section. I can only give you the needed tools for editing levels for now.

The Ultimate Nintendo DS ROM Hacking Guide! (27)

Due to a shortage of time, I couldn't finish this section. If you really want to edit text, you can download The Ultimate Nintendo DS ROM Hacking Pack. You can find the link above. Alternatively, you can use this link to figure out how to do text hacking yourself.

The Ultimate Nintendo DS ROM Hacking Guide! (28)

General ROM Hacking Tools

BatchLZ77 by DarthNemesis
This program is used for compressing and decompressing files which can be read by the Nintendo DS. To let this tool do its work, you'll just have to select the "File" option at the top bar, and select whether you want to compress or decompress a file, and select the file you want the program to (de)compress. This procedure will (usually) take a very short time, if it doesn't the program will 'freeze', but that does only mean it's busy, so just be patient. If the program failed, a text file will be opened telling you which files weren't (de)compressed successfully. If it succeeded, you will be able to use the program again.

CrystalTile by angel-team
Probably the most useful ROM Hacking tool for the Nintendo DS. It offers a wide range of features like viewing and editing graphics in an easy way, (de)compressing files (however, this feature doesn't work always), extracting single files, a Multimedia Editor, listening to music inside the ROM file (although, I haven't figured out how to make it work correctly, to be honest), a hex editor and more. Sometimes, the program could be a little unstable. Make sure you'll save your work regularly!

Mario Kart DS Course Modifier by Gericom | Discussion thread
Don't let its name misguide you; this tool does way more than modify courses. Make sure to check it out, though it is still a work in progress. This editor has support for a number of file formats:

- 3D MODELS (NSBMD); ...or rather a sort of archive containing the 3D model (the three-dimensional shape of an object), textures...
- TEXTURES (NSBTX); These files contain information that puts the texture of a 3D model on the right place, should be inside an NSBMD file.
- MODEL ANIMATIONS (NSBTP); Sometimes, a texture contains multiple 'parts'. This file decides when the texture parts should switch between each other. A few examples are blinking eyes, moving lips... Should be inside an NSBMD file.
- BMD FILES; 3D models, also seen in Gamecube games.
- DIALOG TEXT (BMG); There are many games that are using BMG files, even Wii games are using BMG's...though not every BMG file is the same, they could slightly differ from each other.
- NINTENDO PALETTES (NCLR); Palettes especially made for DS games.
- NINTENDO GRAPHICS (NCGR); Graphics like logo's, menu buttons, especially made for DS games.
- NINTENDO SCREEN RESOURCES (NSCR); Sometimes a graphic file is messed up when you open it, to see the full picture you can use these.
- KCL FILES; Collision files, if they weren't there, you would fall through the floor. Example: In The Legend of Zelda: Ocarina of Time you can walk through several walls (the walls that disappear using the Eye of Truth), that's because they have no collision.
- NKM FILES; Decides the position of an object, or where an object should be located. Some Mario Kart examples: Starting position, current position on the map, respawn position et cetera.

The editor has also support for NARC's (Nintendo Archives), CARC's (Compressed Nintendo Archives, NARC's with LZSS compression, could be decompressed using an in-build feature), and .nds files (so you won't have to extract your game first).

Project Pokémon's ROM Editor
This tool is specially designed for Pokémon games. In order to use this tool, you will first have to select your ROM using the "Choose ROM" button. After that, you must select the "Set ROM" button, so the program will extract the ROM using NDSTool. Now you can make use of several features: editing Pokémon (evolutions, attacks, data, TMs etc.), maps (wild Pokémon, events, Trainers…), moves (changing their description, type…), TMs and HMs (changing the attacks of any TM/HM), items, abilities, scripts (text) and trainers (Pokémon levels, and such). If you're done with using one feature, and you want to switch to another feature, make sure to click the "Save" button before you continue (if any)! If you're done with modifying your game, you can rebuild your ROM using the "Write ROM" button… It even has a patch maker build-in, so make use of that one, and share your hack with us!


Console Tool by lowlines
Another very useful tool which allows you to view and convert the Nintendo DS' pallet files, viewing 3D models and viewing, ripping textures, extracting single files of a Nintendo DS ROM, editing files with the built-in hex editor, viewing the files within .narc as well as .carc files (without having to decompress them), extracting and viewing 2D graphics and 2D animations! You can open files directly (files that are already extracted from the ROM), and you can open a Nintendo DS ROM file, so a list containing the files within the ROM will appear. In order to make a graphic appear in a correct way, you need to open the Nintendo DS ROM file, containing the uncompressed graphic (NCGR) and palette file (NCLR) (and, if they're there, the animation (NANR), screen (NSCR) and (NCER) cell) files. You have to click every one of them ONCE, so an icon will appear behind them, after that you'll have to double click the NCGR file.

NSBMD by kiwi.ds
This tool allows you to view and dump 3D models and textures of a Nintendo DS ROM. This tool uses the Command Line. I would recommend you to use ConsoleTool, because it is more user friendly. You can't open the program directly, you have to open it using the CMD.

Graphical ROM Hacking Tools

With this tool, you can open up and view graphics (overworld sprites) from Pokémon games, pretty much outdated IMHO. In order to view the graphics, you'll need a .txt file containing some codes (actually locations), so the program can detect the graphics. With this tool, it is possible to edit graphics, but it's a real pain. Instead of pixels, you'll need to change numbers, each referring to a single color. It's not a bad tool either, if you consider this is one of the early Nintendo DS ROM Hacking tools.

TiledGGD by barubary
This tool supports .NCGR and .NCLR files, meaning you can view graphics with it, with its right colors. Unfortunately, .NSCR files aren't supported, so some graphics will end up as puzzles. I would only recommend you this tool, if you're looking for some information for the palettes or graphics you're using. You can also use this tool to make a .bmp file out of the .NCGR and .NCLR files.

Tile Molester by SnowBro
I used this tool in the days I didn't knew CrystalTile had a graphic editor. With this tool, you can open graphics files from the Nintendo DS, and many other handhelds/consoles. You might encounter the following problems though; you'll have to make the picture show up correctly yourself, by changing some values and settings. You can't open the .NCLR palette files directly, you'll have to edit them with a hex editor, or you'll have to convert them to a supported file (using ConsoleTool, for example). I think it's best to use an alternative, because you'll probably will have many questions when using this program. I don't think it is necessary to write about this tool, just use Google in order to find the answers of your questions about this program.

Translation tools

FINAL FANTASY III Dialog editor by KengHot
With this translation tool, you can translate FINAL FANTASY III for the Nintendo DS.
First you will have to extract the FINAL FANTASY III ROM file, and locate all the .msd files.
These are the files containing the script. Take a look at the file names you'll see that each file has a letter in front of its file name.
"d" stands for dungeon, "t" stands for town "world_talk" are the dialogs of the events occurring on the world map, "eureka" are special dialogs (like battles, menu's etc.). I don't know what "f" stands for, maybe this text is unused, because it mainly contains Japanese text stings. There is only one "s", containing the dialog when you wake up.

Back to the dialog editor, first open the text .msd you'd like to modify.
Now the editor shows you the original text on the left side, and the modified text on the right side.
Once you selected a text string, you can edit it below.
Again: the original text on the left side, and a text field where you can input your translated text.
Change the "Max Chars" or "Max Lines" values if it tells you that the text won't fit.

When you're done with editing a string, click "Update" before you'll continue, after that you can select another text string.
If you're done with editing one file, click the "Save File" button.
The modified files will be saved in a folder named "output", it should be in the same folder as the executable.
Just overwrite the .msd files containing in your extracted ROM folder with the one in the "output" folder.
After that, rebuild your ROM, and test it! Unfortunately I noticed one little problem with this program…
When your sentence starts with a blank space, the program will remove it.
For example, if character one tells something to character two, first the name will be displayed with a blank space in front of it.
That space will be lost, once you edited it with the dialog editor. There may be a way to fix this, but I haven't figured it out yet, or at least tried to. Maybe you should take a look at the "xml" folder, in the same folder as the executable.
You can also open FINAL FANTASY IV text files with it, but you can't edit the dialog, because these files are a little different than the ones for FINAL FANTASY III. I know the creator (Kenghot) also made a tool for FFIV, but he hasn't released it, so you got to ask him if you want that tool.

FINAL FANTASY III Font Editor by KengHot
Editing fonts for FINAL FANTASY III has been made easy with this tool.

FINAL FANTASY Tactics A2 Script Editor by Deufeufeu
This tool can be used for translating FINAL FANTASY Tactics A2: Grimoire of the Rift.

Kingdom Hearts ReCoded by Tricky Upgrade
This tool can be used for either Kingdom Hearts Re: Coded as Kingdom Hearts 358/2 Days. It can open up decompressed .s text files. See the decompressed in there? You first have to locate the .s file, and then you'll have to decompress it with BatchLZ77, for example. You can't open every .s file, because some files do not contain any text. Open the decompressed .s file with the dialog editor using "File/Open". Now the original non-changeable text will be displayed on the left side, and the editable text on the right side. {Line Break} refers to a new text line in-game. If you're done with editing the text file, you can save it using "File/Save". Now you'll have to recompress the file again (with BatchLZ77), and replace the original .s file with the newly created file. Rebuild your ROM, and test the game!

Phoenix Wright Script Editor by Deufeufeu
Using this program, you can translate Phoenix Wright: Justice for All (the USA version, ROM number 0820). If you're running the executable for the first time, you will be asked to select the PW:JfA ROM file. Don't move the file to anywhere! Otherwise, the program will refer to the wrong location, and you won't be able to make use of it anymore. If you accidently did this, modify the file using Notepad, which should be in the same folder as the executable.

TheNewPokéText by loadingNOW
With this tool, you can translate most Pokémon games. Including: Pokémon Diamond, Pearl, Platinum, HeartGold and SoulSilver.

Music ROM Hacking Tools

Midi2SSEQ by kiwi.ds
If you want to convert your midi file to an SSEQ file, you need to use this tool. Simply drag a midi file to the .exe file. However, this tool isn't perfect, the created SSEQ file needs to be edited with a hex editor, and sometimes, the tool even crashes when converting it. If you're looking for more information, take a look at the Music Hacking section above.

NDS Sound Extractor by Nintendon
A program which is using the Command Line which can extract sound sequences and is able to convert them to .midi's (for .sseq's) and .wav's (for .swar's). Enter "LocationOfExecutable\ndssndext.exe –-help" in the command line, to view the command options for this tool.

SSEQ2Midi by kiwi.ds
This tool is basically the same as Midi2SSEQ, but it converts a SSEQ to a midi. To use this program, simply drag and drop the SSEQ file to the executable, like Midi2SSEQ. Fortunately, this program has less problems than Midi2SSEQ and does almost always guarantee a conversion without any issues.

SWAV2SWAR by Borra
A tool that is able to convert .swav files of a .swar file and vica versa. You can compare this with extracting .wav files a .RAR file (SWAR to SWAV, RAR to WAV -> SWAV to SWAR, WAV to RAR).

This tool can locate and extract SDAT files. These features can be found under "VGMToolbox/Misc. Tools/Extraction Tools/Nintendo DS". Drag and drop the .sdat or .nds file to the window, once you have selected one of the Nintendo DS features, and let it extract the sound files.

If you are going to hack some music, this program is really useful. To use it, you'll first have to extract your ROM file, and find the .sdat file (the file containing the music of the game, often called sound_data.sdat, these are often located in folders named music, sound etc.). The folder/open button doesn't work for some reason, so you have to drag and drop the file to the VGMTrans window. Be patient, and a list containing the music will appear. You can listen to them, and extract them as a midi. However, once you converted an SSEQ to a midi, it will lose its instruments. Because the instruments are contained in a different file (the SBNK file). You can convert this one to a DLS file. Open them both with FL Studio, so you can hear the music correctly. Unfortunately, this program is very unstable, and often crashes. For more detailed information, look at the Music Hacking section above. The program also features a build-in hex viewer, this one is very useful because it can spot the tempo, volume etc. of a music file.

Level Editing Programs

New Super Mario Bros. Editor by Dirbaio and Pirahnaplant | Official Forums
Ever wanted to create your own Super Mario level? You can edit New Super Mario Bros. levels for the Nintendo DS using this tool!

Super Mario 64 DS Editor by Mega-Mario | Discussion thread
To edit Super Mario 64 DS levels, you can use this tool. Even though SMB64DS' levels are fully 3D!

Nintendo DS ROM Extractors

DSBuff by WB3000
A Nintendo DS ROM extractor with several other features like trimming, patching...

DSLazy by ratx
A wonderful ROM extractor with several other features. This is one of the most popular extraction tools. It has simple GUI, so it is easy to use.

NDS Editor by kiwi.ds
A tool that is able to extract and rebuild Nintendo Archives, LZ, Nintendo DS ROM, and Sound Data files. To extract files from a Nintendo DS ROM, simply open it, so it will be listed in the program. Double click it, and you'll see the list containing the files inside the ROM. Check the files you want to extract, and press the yellow-ish button at the left top. The NDSTool This is the first Nintendo DS ROM extraction tool ever made, but it works perfectly well for almost every game. How does this tool work? Simple.

Let's say the NDSTool executable and the ROM file is located at C:/NDS/…
For extracting a Nintendo DS ROM file, open the Command Line, type: "cd C:/NDS/" (without quotes), and press enter.
After this, type: "C:/NDS/ndstool.exe -x NameOfNdsRomFile.nds -9 arm9.bin -7 arm7.bin -y9 y9.bin -y7 y7.bin -d data -y overlay -t banner.bin -h header.bin" (again without quotes) and press enter.

Wait a moment, so all the files will be extracted. Modify the extracted files, and rebuild your Nintendo DS ROM using the following method:

Go back to the Command Line, make sure you are still located at C:/NDS/.
Type the following (without quotes): "ndstool -c NameOfNewNdsRomFile.nds -9 arm9.bin -7 arm7.bin -y9 y9.bin -y7 y7.bin -d data -y overlay -t banner.bin -h header.bin" and press enter. You can also use TheNewPokeText alongside NDSTool, for easier use.

Tahaxan by Arcnor
A useful tool which can view the files within Nintendo DS ROM files. It has a nice graphic viewer, text viewer and file extractor build-in (right mouse button/extract). The graphic viewer is able to convert the Nintendo DS' graphics files to a bitmap file, and you can set your own image size, which could be useful for some graphics. Nothing much to tell you more, it is very user-friendly, so you should be able to make use of this program yourself.


(Video) Nintendo DS ROM Hacking Tutorial - Changing game titles

05/03/12: Initial Release.​

11/11/12: The layout has been fixed and is now compatible with the new forum software!​

11/17/12: Got rid of the spoiler tags, the layout is still being worked on.​


What is the best NDS rom? ›

20 Best Nintendo DS Games Ever
  • Chrono Trigger. ...
  • Advance Wars: Dual Strike. ...
  • Mario Kart DS. ...
  • Mario and Luigi: Bowser's Inside Story. ...
  • Pokémon HeartGold and SoulSilver. ...
  • Grand Theft Auto: Chinatown Wars. ...
  • New Super Mario Bros. ...
  • Castlevania: Dawn of Sorrow.
28 May 2022

How do I create a .NDS ROM? ›

Creating an NDS ROM File
  1. Step 1 : Set Platform to NDS. In Spritely, set the platform to NDS by selecting "NDS" in the "Platform" submenu of the "Project" menu:.
  2. Step 2 : Edit project. ...
  3. Step 3 : Export project. ...
  4. Step 4 : Create ROM file. ...
  5. Finished!

Can you homebrew a DS Lite? ›

The NDS can be modified freely to enhance its abilties through homebrew applications and games.

How do I archive my DS games? ›

From the HOME Menu, select System Settings, then Data Management, and then Quick Archive. Select all the software titles you would like to archive, then select Archive Data, and finally select Archive.

Are there any DS ROM hacks? ›

There's a number of ROM hacks for various DS titles that allow players to use buttons instead of touch controls; it's amazing how much this simple, single change to more traditional controls can make a game so much more accessible to play, even though touch controls may seem more intuitive, at least in theory.

Are there any DS Pokemon ROM hacks? ›

The Nintendo DS games are no different. One of the most popular versions of Pokemon even has a ROM hack available for it. So now is the time – get ready to live the old-day experience of classic Pokemon games all over again!

What emulator plays NDS files? ›

There are a variety of emulators available for playing NDS games, including DeSmuME, NO$GBA, iDeaS Emulator, OpenEmu, and Exophase DraStic DS Emulator. Some features provided by emulators include enhanced game graphics, helpful gameplay settings, and new "cheat" options.

What is Hiya CFW? ›

hiyaCFW is a custom firmware that allows running the Nintendo DSi firmware off the console SD card instead of the NAND (internal memory) chip. This is useful because the SD card is replaceable, while the internal NAND chip is weak and has the potential to break.

What is homebrew DS? ›

Homebrew, when applied to video games, refers to games produced by hobbyists for proprietary video game consoles which are not intended to be user-programmable.

What can a modded DS do? ›

What can a Modded 3DS do? - YouTube

What can you do with an R4 card? ›

The R4 (also known as Revolution for DS) is a flash cartridge for the Nintendo DS handheld system. It allows ROMs and homebrew to be booted on the Nintendo DS handheld system from a microSD card.

What is NDS bootstrap? ›

nds-bootstrap is an open-source application that allows Nintendo DS/DSi ROMs and homebrew to be natively utilised rather than using an emulator. nds-bootstrap works on Nintendo DSi/3DS SD cards through CFW and on Nintendo DS through flashcards.

Can you put DS games on a SD Card? ›

For the first part, yes. You can download a nintendo DS game onto a memory card using a special rom dumper process on your computer. For the second part, you need to have a special flash cart that allows using a microSD card on your DS.

Does archiving delete data? ›

Archiving a record makes the record inactive, while preserving the record and all associated data. You'll still be able to report on and invoice for archived data. A client, person, task, or expense category that has time or expense data tracked to it can't be deleted—archiving is the only option.

How many DS games are there? ›

A total of 1791 games released for North America.

What is the best Pokemon NDS? ›

Here's the definitive ranking of Pokemon titles for the console.
  • 8/14 Pokemon Ranger.
  • 7/14 Pokemon Trozei!
  • 6/14 Pokemon Black 2 & White 2.
  • 5/14 Pokemon Conquest.
  • 4/14 Pokemon Platinum.
  • 3/14 Pokemon Diamond & Pearl.
  • 2/14 Pokemon Black & White.
  • 1/14 Pokemon HeartGold & SoulSilver.
25 Sept 2022

Which Pokemon NDS game has mega evolution? ›

Mega Evolution is a mechanic in the Pokémon series, introduced in Pokémon X and Y. It is a temporary mega evolution that can be initiated in battle if the Pokémon is holding the Mega Stone for their species, however, only select Pokémon can undergo Mega Evolution.

Can you play Pokemon Phoenix Rising on DS? ›

Pokemon Phoenix Rising is a fan-made game using the RPG Maker XP editor. The game's aesthetics has a mixture of the graphics from the Nintendo DS games particularly from Generation IV until V. The game itself can only be played on PC as you can download and install it directly.

What is the fastest DS emulator? ›

It's official; Citra is the best of the best Nintendo DS emulators of all time!

Are emulators legal? ›

Emulators are 100% legal, as is the process of downloading them. They are no different to other programs you might download such as word processing or music player software. Downloading and uploading ROMs is illegal, however, so make sure you use your own game files.

Which DS emulator is most accurate? ›

The best Nintendo DS emulators for Android
  • DraStic DS Emulator.
  • EmuBox.
  • NDS Emulator.
  • RetroArch Plus.
  • SuperNDS.

What happens if you uninstall Unlaunch? ›

Installing or uninstalling Unlaunch may randomly brick your console! You have been warned! WARNING: An uninstall of Unlaunch may brick your Nintendo DSi.

How do I use lazy DSi Downloader? ›

Setup Guide
  1. Download the latest release of Lazy DSi File Downloader open in new window for your OS.
  2. Launch it via the instructions for your operating system listed in the release page.
  3. Hit the Next button. ...
  4. If your Nintendo DSi crashed during the verification steps above, toggle off the Memory Pit option.

What is DSiWare on 3DS? ›

DSiWare are downloadable games previously found on the Nintendo DSi's digital storefront, and currently on the Nintendo 3DS' eShop. Just like WiiWare, DSiWare titles could be paid using DSi Points.

Is homebrew legal? ›

Contact. In 1978, Congress enacted Public Law 95-458 (H.R. 1337), amending the Internal Revenue Code to allow any adult to produce beer, without the payment of tax, for personal or family use.

How do you install Moonshell on DS? ›

To Install Moonshell

Either run the EXE or Extract the ZIP file, depending on which version you download. In the extracted file is a program called 'Setup.exe' - Run this. Select the drive that represents your MicroSD card and click on [Install to ...]. Click the Update button to continue.

What is ACE3DS plus? ›

ACE3DS is an R4 compatible emulator for the Nintendo DS & 3DS system line and can emulate primarily the DS along with various 8-32 bit consoles.

Can you Unbrick a 3DS? ›

PSA: For those with 3DS units bricked by Gateway, they can now be unbricked. You need an Arduino/Raspberry Pi, a hardware mod installed in your 3DS, and a previous NAND dump from either the hardware mod or from emuNAND.

Is it easy to hack a 3DS? ›

It's actually really easy to hack your 3DS. Anyone can do it. While the risks of bricking have been minimized over the years, we are not responsible for anything that goes wrong with your device. Incorrect file placement will not brick your device, but reckless behavior might.

Is homebrewing a 3DS legal? ›

Nope, not at all. The only way to get banned on the 3DS-chain using Homebrew is if you were using cheats online in games. Nintendo is far more concerned about the Nintendo Switch, they've pretty much forgotten about the 3DS.

Are DS R4 cards illegal? ›

Playables Limited's defence counsel argued that the R4 was legal as it allowed the use of homebrew applications. However, circumnavigating Nintendo's (or any other manufacturer's) security systems is against the law in this country, and because the card needs to do so to work, it is therefore illegal.

What does the r4i gold do? ›

For your information, the r4i gold 3ds rts card is currently the best flashcart available for all the system consoles, including the latest version 3ds, 3ds xl, 2ds , dsi and ds console. It allows you to play ds backups, music and videos, which expands the features of your Nintendo consoles.

How do you use Yanbf? ›

How to use:
  1. Extract the zip files.
  2. From the DS Game Forwarder Pack, copy everything in the for SD card root folder to your SD card root.
  3. From YANBF, copy bootstrap.cia to the sd:/cias folder. ...
  4. Download the latest TWiLight Menu++ version here. ...
  5. In the 7z file, go to _nds , TWiLightMenu , and extras.

How do I use nds forwarder? ›

Part 2: NDSForwarder
  1. Open the Homebrew Launcher.
  2. In the Homebrew Launcher, open NDS Forwarder Generator.
  3. Navigate to your game's location and press A.
  4. Confirm you wish to install by selecting Yes.
  5. After it is installed, your game will now appear as a title on your HOME menu.

What is a donor ROM? ›

What is a Donor ROM? In nds-bootstrap, when a game doesn't boot, another ROM is used to “donate” it's ARM7 (and ARM7i, if available) binary to the game set to run, in place of the game's own said binary. A Donor ROM can be set using TWiLight Menu++.

Can you copy Nintendo DS games? ›

No, you can't. As the full form of the acronym ROM implies ("Read-Only Memory"), once data (in the case of cartridge-based consoles, the game itself) has been written to the chip, it's locked into a read-only state (i.e. you won't be able to write anything onto the cartridge.)

Can a 3DS play DS games? ›

Yes, you will be able to play most Nintendo DS games on your Nintendo 3DS. Exceptions are games that use the GBA Slot. Note that some Nintendo DSi games bought outside the PAL region may not be playable on a Nintendo 3DS from the PAL region.

Can you download ROMs on a DS? ›

' A ROM of the game you want to play - If you don't already have the ROM, you can find one to download by typing "[game name] from Nintendo ds" into a search engine. Only download ROMs from safe websites.

How many games can I download without switching SD card? ›

The Nintendo Switch and Switch Lite offer 32 GB of storage, while the Switch OLED offers 64 GB. Most games require about 10 GB of space, so you can store 3-6 games on the console (though some games are much larger than 10 GB).

Can I get a digital copy of a game I already own Switch? ›

With the Nintendo Switch you can purchase and download a digital copy of a physical game you own. The physical game does not give you rights to a free digital copy, and never will with Nintendo. For most Switch games a digital copy will be able to use the game save data created by your physical copy.

Can you download a Switch game if you lost the cartridge? ›

@JellySlap No, if you lose a physical game, you'll have to buy it again. If you replace it, it doesn't matter if you buy digital or physical since game save data is stored separately on Switch internal memory. On the plus side, if you replace the game, you'll be able to resume your game progress where you left off.

What was the very last DS game? ›

The last game for the Nintendo DS, Big Hero 6: Battle in the Bay, was released on October 28, 2014.

What is the rarest Pokemon game? ›

Pokémon Crystal is typically the most expensive Game Boy Pokémon game, with prices commonly running upwards of $100 on both Amazon and eBay. Its scarcity is the primary reason for this - during its run, it sold the least of any mainline Pokémon game to date, at under 6.4 million copies.

Are DS worth anything? ›

Used consoles can sell for as much as $569, which is almost what some of the top-end sealed editions sell for. Limited Edition handhelds really grow in value! Expect to pay anywhere between $72 and $349 for a refurbished Nintendo 2DS console, with bog-standard sealed consoles selling for upwards of $119.

› watch ›

Woodr4 (for the original r4) i get my flash carts:
Hi guys, Tech James here,Playing DS games on your DSi off the SD Card using the Twilight++ MenuThis video is for educational purposes only.➤ (Homebrew Playli...
There is in fact a way yes ill explain it but heres a very short version yes you just need a modded 3DS with god mode 9 read on if you want a very technical exp...

Can Citra run DS games? ›

Can I play DS games on Citra? Citra is an emulator of the handheld game console Nintendo 3DS, developed by Citra and contributors. … Citra can run almost all homebrew games and many commercial games. Citra requires OpenGL version 3.3 or later to run.

Can DraStic play 3DS games? ›

Does DraStic support 3DS? No, DraStic doesn't support 3DS games and when used with middle end Android devices, it wouldn't still support them until they are emulatable.

Where can I get ds ROMs? ›

Go to and review a list of available Nintendo DS ROMs. Choose the one you wish to play at the moment. We bet you played all these games in childhood. So now, you have a fair opportunity to relive these memories once again.

Can DeSmuME play 3DS games? ›

yes, since they are ds games, the 3ds is backwards compatible with them, so you are able to play any ds game on the 3ds.

Can phones run 3DS emulator? ›

Emulation offers an accessible and affordable way for you to play older games that may be hard to get your hands on these days. Your Android phone is capable of emulating most home and handheld consoles up to the fifth console generation, but even Nintendo's later handhelds are no sweat for a modern smartphone.

What emulators run DS? ›

DraStic DS Emulator

The emulator comes with a host of features, including screen layout customization, controller customization, support for hardware controllers, fast forward, Google Drive support, and high-end devices can enjoy some improved graphics rendering if they so choose.

Can I play 3DS on Android? ›


Our first choice is RetroArch - an emulator for Android that lets you play Nintendo 3DS games. Open-source and ad-free, this emulator is ideal for gamers who love being immersed in their game. The ability to emulate other systems besides the Nintendo 3DS will impress many of you, including SNES and others.

Why is there no 3DS emulator? ›

the 3ds was made with the sole intent of running games in 3D, where as your phone was most likely not. Couple this with the lack of safe roms (since Nintendo is cracking down) and developers really have no inclination to creating an emulator.

Is there a Nintendo 3DS emulator? ›

Citra is a free and open-source emulator of the handheld Nintendo 3DS for Windows, macOS, Linux, and Android. Citra's name is derived from CTR, which is the model name of the original 3DS. Citra can run many homebrew games and commercial games. Citra was first made available in 2014.

Is there any other 3DS emulator other than Citra? ›

There are six alternatives to Citra for a variety of platforms, including Windows, Linux, Online / Web-based, Android and iPhone. The best alternative is RetroArch, which is both free and Open Source. Other great apps like Citra are CD-i Emulator, vvctre, 3dmoo and RetroFab.

Are emulators legal? ›

Emulators are 100% legal, as is the process of downloading them. They are no different to other programs you might download such as word processing or music player software. Downloading and uploading ROMs is illegal, however, so make sure you use your own game files.

Can you put DS games on a SD card? ›

For the first part, yes. You can download a nintendo DS game onto a memory card using a special rom dumper process on your computer. For the second part, you need to have a special flash cart that allows using a microSD card on your DS.

How do I put ROMs on my DSi SD card? ›

Play DS ROMs On Your DSi With Just Your SD Card! - YouTube

Is there a 3DS emulator for PC? ›

Citra is an easy-to-use Nintendo 3ds emulator for PC. Compared to the Nintendo console, this one has enhanced 3D graphics, which offer higher resolutions. Microsoft Windows and Apple Mac OS X, as well as Linux, provides full support for this program.

Is Citra 3DS emulator good? ›

A mobile-specific conversion of the brilliant desktop program, Citra is not only the Best Android 3DS Emulator, but one of the best emulators to ever grace the Android ecosystem. If you're looking for a app to show off the power of your device, this is the one.

Do you need a 3DS to use Citra? ›

In order to run your games, Citra requires that you dump your games, game updates, DLC and other 3DS system files from a hacked 3DS. This is the only legal way to obtain these files for use in Citra. Any other method of obtaining these files is considered piracy and therefore illegal.


1. DS Romhacking Tutorial #001 - Kurzer Einstieg!
2. Homebrew on a $25 Nintendo DS Lite Handheld in 2019 | MVG
(Modern Vintage Gamer)
3. Pokemon DS Rom Editing Tutorial Pt 4.5: Text, the better way!
(Jay -San)
4. Hacking a 3DS is Easy To Do...
5. NDS Romhacking Tutorial #004 - Eigenständiger Bootscreen
6. Nintendo DS ROM Hacking Tutorial - Replacing 256 colors pictures
Top Articles
Latest Posts
Article information

Author: Mrs. Angelic Larkin

Last Updated: 01/22/2023

Views: 5919

Rating: 4.7 / 5 (67 voted)

Reviews: 90% of readers found this page helpful

Author information

Name: Mrs. Angelic Larkin

Birthday: 1992-06-28

Address: Apt. 413 8275 Mueller Overpass, South Magnolia, IA 99527-6023

Phone: +6824704719725

Job: District Real-Estate Facilitator

Hobby: Letterboxing, Vacation, Poi, Homebrewing, Mountain biking, Slacklining, Cabaret

Introduction: My name is Mrs. Angelic Larkin, I am a cute, charming, funny, determined, inexpensive, joyous, cheerful person who loves writing and wants to share my knowledge and understanding with you.