Skip to content

DS-Homebrew/GodMode9i

Repository files navigation


A full access file browser for the DS and DSi consoles :godmode:
Build status on GitHub Actions localization status on Crowdin

GodMode9i is a full access file browser for the Nintendo DS, Nintendo DSi and the Nintendo 3DS's TWL_FIRM.

Drive menu File list NDS file menu

Features

  • Dump Game Boy Advance cartridges on the original Nintendo DS and Nintendo DS Lite consoles.
  • Dump Nintendo DS/DSi cartridges on Nintendo DSi and Nintendo 3DS consoles (if GodMode9i is run on the console SD card).
    • They can also be dumped on the original Nintendo DS and Nintendo DS Lite consoles, if running from a Slot-2 flashcard.
    • DS/DSi cartridge save data can be dumped on the original Nintendo DS and Nintendo DS Lite consoles using the save data of GBA cartridges.
  • Restore save files to DS and GBA cartridges.
  • Copy, move, delete, rename files/folders and create folders.
  • Mount the NitroFS of NDS files, DSiWare saves, and FAT images.
  • View and edit the contents of files with a hex editor.
  • Calculate the SHA-1 hash of files.
  • Browse files on supported flashcards when running GM9i from the NAND or SD Card.
    • Acekard 2(i)
    • N-Card
    • R4 (Original, no SDHC)
    • R4(i) Ultra (r4ultra.com)
  • Browse files on the internal NAND of Nintendo DSi consoles.
  • Browse files on the SD Card when running GM9i from any DS-mode flashcard. (Requires TWiLight Menu++ with Slot-1 SD/SCFG access enabled, and TWLMenu++ installed on the flashcard.)
  • Translated to many different languages. Join the Crowdin project to contribute more!

Building

If you don't want to compile yourself but you still want to get the latest build, please use our TWLBot github repository

In order to compile this application on your own, you will need devkitPro with the devkitARM toolchain, plus the necessary tools and libraries. devkitPro includes dkp-pacman for easy installation of all components:

 $ dkp-pacman -Syu devkitARM general-tools dstools ndstool libnds libfat-nds

Once everything is downloaded and installed, git clone this repository, navigate to the folder in which it was cloned, and run make to compile the application. If there is an error, let us know.

Custom Fonts

GodMode9i uses the same FRF font files as GodMode9. To create an FRF font use GodMode9's Python script or you can find some in the resources/fonts folder in this repository.

When loading GodMode9i will try to load /gm9i/font.frf on your SD card and if that fails will load the default font. To change the default font when building GodMode9i, replace data/font_default.frf with your font.

Credits

  • RocketRobz: Main Developer.
  • Evie/Pk11: Contributor.
  • zacchi4k: Logo designer.
  • Edo9300: Save reading code from his save manager tool.
  • endrift: GBA ROM dumping code from duplo, used for 64MB ROMs.
  • JimmyZ: NAND code from twlnf (with writing code stripped for safety reasons).
  • zoogie: ConsoleID code (originating from dumpTool).
  • devkitPro: devkitARM, libnds, original nds-hb-menu code, and screenshot code.
  • d0k3: Developer of GodMode9 for the Nintendo 3DS, which this is inspired by.
  • 門真 なむ (Num Kadoma): k6x8 font used for the default font's Kanji and 美咲ゴシック font in resources folder

Translators