Skip to content

Instantly share code, notes, and snippets.

@PixelSergey
Last active November 5, 2025 21:40
Show Gist options
  • Select an option

  • Save PixelSergey/73d0a4bc1437dbaa53a1d1ce849fdda1 to your computer and use it in GitHub Desktop.

Select an option

Save PixelSergey/73d0a4bc1437dbaa53a1d1ce849fdda1 to your computer and use it in GitHub Desktop.
Dump games with godmode9

Dumping games with Godmode9

Dumping games is the act of taking a game from your system or gamecart and copying it into a readable format onto your SD card. Dumping is perfectly legal if you keep the dumps to yourself, however sharing these dumps is piracy and is illegal.

This guide will teach you how to dump games from various formats and for various purposes. Only follow the section(s) relevant to you!


Dumping a game cartrige as a .3ds file

  1. Insert your gamecart into your console
  2. Boot your console while holding (START) to launch Godmode9
  3. Navigate to [G:] GAMECART
  4. Press (A) on the .3ds file in the drive
  5. Select the Copy to /gm9/out option
  6. Press (START) to save and reboot
  7. Your dump will be in the /gm9/out folder on the SD card
@PixelSergey
Copy link
Author

PixelSergey commented Dec 15, 2019

Would it be possible to build a .nds game as a cia?

Unfortunately, NDS games are designed to only launch from the cartridge slot. It is therefore impossible to make them into an installable CIA file.
However, workarounds exist. The best, most stable one is to buy a flashcart for $8-20. Flashcarts can pretend to be a cartridge and natively run your dumped games. If you do not want to use money, the next best option is an app called TWiLightMenu. Although slower and not as stable, this app will let you run NDS games for free on your 3DS. The above link (NDS Forwarder CIAs for your HOME Menu) is quite old, and I recommend you use TWiLightMenu instead.

@ehx-v1
Copy link

ehx-v1 commented Mar 1, 2020

Since DSiWare never launches from cartridge, does that mean there's another .nds subformat for that? Might be worth looking into as an intermediate step towards CIAs.

@PixelSergey
Copy link
Author

Since DSiWare never launches from cartridge, does that mean there's another .nds subformat for that? Might be worth looking into as an intermediate step towards CIAs.

DSiWare is distributed by Nintendo as CIAs on the 3DS and as .app files on the DSi. The 3DS .cia file contains the .app. A .app file is exactly the same format as a .nds file, except renamed.
The reason that DSiWare .apps are installable and regular .nds games are not is that .nds games are hardcoded to read from the cartridge slot, whereas DSiWare apps are designed to be run from the console.

It is possible to convert a DSiWare .app to a 3DS-installable .cia using simple tools. It is not possible to do that with a regular .nds game; however, it is possible to run them using the methods I listed above. In particular, TWiLightMenu will re-route all (or many) of the calls done by the game from the cartridge slot to the SD card.

@ehx-v1
Copy link

ehx-v1 commented Jul 9, 2020

Since DSiWare never launches from cartridge, does that mean there's another .nds subformat for that? Might be worth looking into as an intermediate step towards CIAs.

DSiWare is distributed by Nintendo as CIAs on the 3DS and as .app files on the DSi. The 3DS .cia file contains the .app. A .app file is exactly the same format as a .nds file, except renamed.
The reason that DSiWare .apps are installable and regular .nds games are not is that .nds games are hardcoded to read from the cartridge slot, whereas DSiWare apps are designed to be run from the console.

It is possible to convert a DSiWare .app to a 3DS-installable .cia using simple tools. It is not possible to do that with a regular .nds game; however, it is possible to run them using the methods I listed above. In particular, TWiLightMenu will re-route all (or many) of the calls done by the game from the cartridge slot to the SD card.

Makes sense, thanks. So that basically means converting .nds into .app requires generating a patch that hardcodes what TWiLightMenu does in memory...

@PixelSergey
Copy link
Author

Makes sense, thanks. So that basically means converting .nds into .app requires generating a patch that hardcodes what TWiLightMenu does in memory...

Exactly! And at that point, it is easier to use TWiLightMenu for all games, rather than to develop a patch for each separate game.

@pauleeeeee
Copy link

Great guide - thank you - any way to dump installed games from an SD card to .cia format on a computer using a command line tool or something like that? I have a 64GB SD card pre-installed with a bajillion games but it is so full that dumping the .cia files with Godmode9 sounds like a chore...

@ehx-v1
Copy link

ehx-v1 commented Jul 16, 2020

Makes sense, thanks. So that basically means converting .nds into .app requires generating a patch that hardcodes what TWiLightMenu does in memory...

Exactly! And at that point, it is easier to use TWiLightMenu for all games, rather than to develop a patch for each separate game.

What I was thinking is, since TWiLightMenu is capable of doing that in memory, it might be possible to create that patch using a generic script that performs the same changes but hardcoded. I'm not very familiar with the .xdelta format's structure or how exactly TWiLightMenu works internally though, so I have no idea how easy or hard something like that would be to auto-generate.

@imnotanog
Copy link

hello, Ive recently tried a method of building a cia from 3ds but, when i loaded the game, all my saves were gone. This game is Legend Of Zelda Majoras Mask.

@Hypnotron
Copy link

hello, Ive recently tried a method of building a cia from 3ds but, when     
i loaded the game, all my saves were gone. This game is Legend Of 
Zelda Majoras Mask.

Try using Checkpoint to dump your saves.

@ehx-v1
Copy link

ehx-v1 commented Aug 16, 2020

hello, Ive recently tried a method of building a cia from 3ds but, when i loaded the game, all my saves were gone. This game is Legend Of Zelda Majoras Mask.

Save files need to be dumped separately. This is also true for extdata. As @Hypnotron mentioned, Checkpoint is a tool that helps with both.

@ktgvv
Copy link

ktgvv commented Jul 8, 2021

Does anyone know what's the difference between Build CIA (standard) and Build CIA (legit) (in Dumping a system title as a .cia file)?

A legit cia refers to a cia that has a "universal" signature. That means it can be played even on a stock system. Unfortunately, building a legit .cia only works for titles that have been universally signed by Nintendo, i.e. games that came pre-installed on the system when you bought it.
A standard cia is just a normal installable game or application.
It is usually recommended to simply build a standard cia, as legit cias only work for a small number of apps and there isn't a point in installing them, as you need CFW to do that in the first place.

Source? 🙂

@PixelSergey
Copy link
Author

Does anyone know what's the difference between Build CIA (standard) and Build CIA (legit) (in Dumping a system title as a .cia file)?

A legit cia refers to a cia that has a "universal" signature. That means it can be played even on a stock system. Unfortunately, building a legit .cia only works for titles that have been universally signed by Nintendo, i.e. games that came pre-installed on the system when you bought it.
A standard cia is just a normal installable game or application.
It is usually recommended to simply build a standard cia, as legit cias only work for a small number of apps and there isn't a point in installing them, as you need CFW to do that in the first place.

Source? 🙂

Sorry, don't have a source, just plenty of experience in the field. I'm quite certain this is correct, but do correct me if im wrong 😛

@XTheThespian
Copy link

Question. I have the latest Luma CFW on 11.15
I am trying to randomize Pokémon y from my physical cart using PK3ds. Which of these do I need to follow to use PK3ds? Is it “extracting romfs from a 3ds game cart”?

@PixelSergey
Copy link
Author

Question. I have the latest Luma CFW on 11.15 I am trying to randomize Pokémon y from my physical cart using PK3ds. Which of these do I need to follow to use PK3ds? Is it “extracting romfs from a 3ds game cart”?

Yes, exactly. You will need both RomFS and ExeFS for pk3DS, it seems :)

@lucasbrown
Copy link

Hi. I'd like to upscale Pokémon Omega Ruby and Alpha Sapphire's textures. I'd prefer to dump all of their textures at once, rather than playing the game through the Citra emulator and dumping textures manually.

Is extracting the RomFS using a physical Nintendo 3DS the only way to dump all of the textures at once? Would I be able to modify the dumped texture files after or would a post process be required?

@PixelSergey
Copy link
Author

@lucasbrown

Hi. I'd like to upscale Pokémon Omega Ruby and Alpha Sapphire's textures. I'd prefer to dump all of their textures at once, rather than playing the game through the Citra emulator and dumping textures manually.

Is extracting the RomFS using a physical Nintendo 3DS the only way to dump all of the textures at once? Would I be able to modify the dumped texture files after or would a post process be required?

You don't have to extract them on the 3DS. If you have the .3ds or .cia file on your PC, try using NINFS :)
You will, however, need the arm9 bootrom and seeddb from your 3DS - check the NINFS' README.md file for instructions on that.
If you don't want to use NINFS, then you can simply follow one of the sections above, selecting all of the RomFS files you need and dumping them at once.

I don't know what format Pokémon textures and models are stored in. The specifics will be different for every game. Try extracting them first and, if they are encoded in some way, look online for tools developed for your specific games.

@lucasbrown
Copy link

@PixelSergey

You don't have to extract them on the 3DS. If you have the .3ds or .cia file on your PC, try using NINFS :)
You will, however, need the arm9 bootrom and seeddb from your 3DS - check the NINFS' README.md file for instructions on that.
If you don't want to use NINFS, then you can simply follow one of the sections above, selecting all of the RomFS files you need and dumping them at once.

Excellent, thank you!

I don't know what format Pokémon textures and models are stored in. The specifics will be different for every game. Try extracting them first and, if they are encoded in some way, look online for tools developed for your specific games.

Understood. Thanks again.

@PixelSergey
Copy link
Author

PixelSergey commented Jan 29, 2022

@SleepyFishYT

how to convert cxi to zip ?

A .cxi file essentially contains the executable portion of a .3ds file. You can't convert it directly to a .zip.
The instructions under Extracting RomFS from a .cia/.3ds/.nds file should apply to a .cxi file as well. That should let you extract all the files.

@MakashiDev
Copy link

MakashiDev commented Mar 24, 2022

IMG_1553

Can't see search titles option, I can only see title manager

@PixelSergey
Copy link
Author

Can't see search titles option, I can only see title manager

I am not sure what causes this, but your godmode9 might be too old/outdated. Try updating it and following the instructions again carefully.

@PW5190
Copy link

PW5190 commented Feb 21, 2023

Hmm, I can understand that I can use GodMode9 on my 3DS to dump DSiWare titles as either a .app or a .nds format, but how do I backup DSiWare save files? These are important, too. I want to keep on playing them with the save in Twilight Menu rather than just starting over.

@PixelSergey
Copy link
Author

Hmm, I can understand that I can use GodMode9 on my 3DS to dump DSiWare titles as either a .app or a .nds format, but how do I backup DSiWare save files? These are important, too. I want to keep on playing them with the save in Twilight Menu rather than just starting over.

A save manager like Checkpoint should be able to do this

@Kugelwilhelm
Copy link

Kugelwilhelm commented Apr 27, 2023

What do I do after I dumped files from an cxi file.
I simply want to install the game, so I guess I have to create a cia file now.
Can anyone tell me how?

Edit: Nevermind. I found, that you can simply build a cia from the cxi.

@Pikrioling
Copy link

@MakashiDev I have the same problem as this guy, and I just updated Godmode9.

@ehx-v1
Copy link

ehx-v1 commented May 10, 2023

@MakashiDev @Pikrioling Taking a wild guess here, maybe it's been renamed to "Search for files" in recent versions?

@Pikrioling
Copy link

@ehx-v1 actually, you press Open Title Manager, then select the title you want to do stuff with by pressing A, select Open Title Folder, selcet the .tmd file and then press TMD File Options.... There press Mount CXI/NDS to drive, enter path go to the file/folder you want to copy, press A (or R + A if you're copying a folder) and select Copy to 0:/gm9/out. The Romfs should be there after it's done.

@ehx-v1
Copy link

ehx-v1 commented May 15, 2023

@Pikrioling Ah, so that means "Open Title Manager" is the new "Search titles".

@AlcalineAlice
Copy link

I am not sure what causes this, but your godmode9 might be too old/outdated. Try updating it and following the instructions again carefully.

I am encountering the same issue as the person above, and I double checked and my Godmode is up to date. Perhaps there's been a mistake by whoever writes the guide.

@ehx-v1
Copy link

ehx-v1 commented Jul 10, 2023

@AlcalineAlice It seems that Godmode9 did some restructuring and the guide is slightly out of date now. Check the discussion right above your comment.

@MangakaJ96
Copy link

IMG_5766 Is there a way that I can extract the ROMs from the CIA files of my legal virtual console GB/GBC games?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment