A beginner-friendly "Hello World" Nintendo DS homebrew application that displays text on the console and renders a simple sprite on the top screen.
See UBUNTU_INSTALL.md for detailed Ubuntu/Linux installation instructions.
See MACOS_INSTALL.md for detailed macOS installation instructions.
nds-hello/
├── source/
│ └── main.c # Application source code
├── Makefile # Build configuration
├── UBUNTU_INSTALL.md # Ubuntu installation guide
├── MACOS_INSTALL.md # macOS installation guide
└── README.md # This file
-
Install devkitPro first (see installation guides above)
-
Set environment variables (if not already set):
export DEVKITPRO=/opt/devkitpro export DEVKITARM=$DEVKITPRO/devkitARM export PATH=$DEVKITPRO/devkitARM/bin:$DEVKITPRO/tools/bin:$PATH
-
Build the project:
cd nds-hello make -
Output: Creates
nds-hello.ndsin the project directory
- Copy
nds-hello.ndsto your PicoDS micro SD card - Boot your Nintendo DS
- Navigate to the file and run it
- melonDS: Open the
.ndsfile directly - DeSmuME: Open the
.ndsfile directly
| Button | Action |
|---|---|
| START | Exit application |
- Displays "Pikachu Hello World!" text on the bottom screen console
- Renders a simple 32x32 sprite on the top screen
- Shows control instructions
Run: source ~/.bashrc (Ubuntu) or source ~/.zshrc (macOS)
Ensure devkitPro is installed: dkp-pacman -S nds-dev
The sprite demo uses 16-color format. For more complex graphics, consider using converted sprite sheets with proper palette configuration.
Once you've verified this works:
- Try modifying the sprite graphics in
main.c - Add button input handling
- Explore the libnds examples in
/opt/devkitpro/libnds/examples - Learn about sprite animation, audio, and touch input
- libnds Documentation: https://libnds.devkitpro.org/
- devkitPro Wiki: https://devkitpro.org/wiki/
- GBAtemp NDS Homebrew Forum: https://gbatemp.net/forums/nds-homebrew.60/
Created for Nintendo DS Homebrew Development