Skip to content

Developer Information

wwylele edited this page Feb 16, 2015 · 13 revisions

This is a very incomplete overview of useful information to get started with 3DS development. Please add anything that's missing :)

3DS Hardware/Software

Homebrew

Here are some early homebrew demos:

  • yeti3DS - A port of the open-source software renderer yeti3D engine
  • Smealum's GPU demo - A very simple demo that uses the PICA200 GPU
  • GameYob - A GameBoy/GBC emulator for the 3DS
  • blargSNES - A SNES emulator for the 3DS
  • 3DSCraft - A Minecraft clone for the 3DS
  • ftPony - A FTP server for transferring files to the 3DS.

The above homebrew demos are all git repositories so you have to compile them from source in order to run them on Citra. If you want to immediately get started on development, the Ninjhax Starter Kit provides some compatible homebrews (test ROMs).

Here are some tools useful for homebrew development:

  • devkitARM - This can also be used to build/debug homebrew
  • CTR User Library - Library for writing usermode arm11 code for the 3DS
  • Aemstro - Set of tools used to disassemble and assemble shader code for DMP's MAESTRO shader extension used in the 3DS's PICA200 GPU
  • Error codes - This python script will (hopefully) decode any error codes you might encounter.
  • 3DS Game Database - Contains data on all 3DS games, their title IDs, update versions, etc.
Clone this wiki locally