awesome-dsdev icon indicating copy to clipboard operation
awesome-dsdev copied to clipboard

Resources for homebrew NDS development

Awesome DS Development

An opinionated, curated list of awesome NDS/DSi development resources and tools. Inspired by the awesome list.

Contents

  • Documentation
    • Datasheets
  • Software Development
    • Toolchains
    • Libraries
      • Graphics
      • Audio
      • Other
  • Open-source Homebrew
    • Games
    • Applications
    • Demos
    • Other
  • Emulators
  • Historical

Community

  • GBAdev Discord - while GBA-centric, it contains a small sub-section for NDS development.
  • devkitPro Forums - the best place for getting support pertaining to the devkitARM toolchain.

Documentation

Datasheets

Software Development

Toolchains

  • devkitARM - the community standard toolchain, maintained by the devkitPro organization.
    • devkitPro and devkitARM are trademarks of Dave Murphy. This document is not endorsed by or connected to devkitPro.
  • BlocksDS - a newer toolchain, maintained by AntonioND.

Libraries

Graphics

  • NightFox's Lib (MIT) - high-level wrapper for tilemaps, sprites and collision maps, using the 2D engine.
  • Nitro Engine (MIT) - high-level wrapper for the 3D engine; models, textures, text, GUI, physics.

Audio

  • maxmod (BSD) - highly capable and efficient ARM7 .MOD/.S3M/.XM/.IT-compatible playback engine, written in ASM.
  • libxm7 (MIT) - .MOD/.XM playback engine.

Other Libraries

  • dsi_sdmmc (MIT) - custom DSi TMIO/SDMMC driver.
  • dsmi (LGPLv2.1) - MIDI interfacing library (via DSerial Edge or dswifi).
  • posprintf - tiny, limited sprintf()-like library written in ARMv4 ASM.

Open-source Homebrew

As this list is written with developers in mind, this section only lists such programs whose codebases have clear licensing terms.

Games

  • MegaZeux (GPLv2+) - text-mode-inspired PC game engine
  • ScummVM (GPLv3+) - point-and-click adventure game engine
  • Spelunky DS (GPLv3 + proprietary assets)
  • WordleDS (GPLv3+)

Applications

Demos

Other Homebrew

Emulators

Historical

These are links to files and sources which are noteworthy from a historical perspective, but have been superseded.