All 54 examples organized by topic. For a progressive learning path, see Learn SNES Development.
Display text on screen using background tiles and fonts.
| Example | Description |
|---|---|
| Hello World | Your first ROM: PPU setup, tiles, palette, tilemap |
| Text Module Test | Text positioning, formatting with consoleDrawText |
Background layers, scrolling, and video modes.
| Example | Description |
|---|---|
| Mode 0 — 4-Layer 2bpp Background | Mode 0: four 2bpp background layers (Kirby parallax) |
| Mode 1 Example | Mode 1 multi-layer backgrounds (4bpp + 2bpp) |
| Mode 1 BG3 High Priority -- HUD Layer Over Backgrounds | BG3 priority bit for overlay effects |
| Mode 1 LZ77 | LZ77-compressed background data |
| Continuous Scroll | Streaming scroll with dynamic tile loading |
| Mixed Scroll | Multiple BG layers at different scroll rates |
| Mode 3 — 256-Color Background | Mode 3: 256-color (8bpp) single layer |
| Mode 5 — Hi-Res 512×256 Background | Mode 5: hi-res 512×256 (16-color) |
| Mode 7 -- Rotation and Scaling | Mode 7 rotation and scaling |
| Mode 7 Perspective -- Pseudo-3D Ground Effect | Pseudo-3D perspective (F-Zero style) |
Sprite display, animation, and OAM management.
| Example | Description |
|---|---|
| Simple Sprite -- Your First OAM Sprite | Basic OAM setup, sprite display |
| Animated Sprite -- Direction States and Sprite Sheets | Frame animation, sprite sheets, H-flip |
| Dynamic Sprite -- VRAM Streaming for Animated Sprites | VRAM streaming, dynamic tile uploads |
| Object Size -- All 6 SNES Sprite Size Modes | OBJSEL size configurations (8x8 to 64x64) |
| Metasprite | Multi-tile composite sprites |
Visual effects using HDMA, color math, and hardware windows.
| Example | Description |
|---|---|
| Fading Example | Brightness control, screen transitions |
| Mosaic -- PPU Pixel Block Effect | Mosaic pixelation effect |
| HDMA Wave | HDMA scanline wave distortion |
| HDMA Gradient | HDMA color gradient per scanline |
| HDMA Helpers Demo | High-level HDMA effect library (wave, ripple, iris) |
| Gradient Colors -- HDMA Color Gradients | HDMA + CGRAM color gradients |
| Parallax Scrolling | HDMA parallax scrolling |
| Color Addition Transparency | Color math (add/subtract blending) |
| Window -- HDMA Triangle Masking | Hardware window masking |
| Transparent Window -- Color Math + HDMA | Color math + HDMA windowed transparency |
Controller input: joypads, mouse, and Super Scope.
| Example | Description |
|---|---|
| Two Players Example | Joypad reading, two-player movement |
| SNES Mouse | Mouse detection, cursor, sensitivity |
| Super Scope | Light gun detection, PPU H/V counters |
Music and sound effects via SNESMOD (Impulse Tracker format).
| Example | Description |
|---|---|
| SNESMOD Music Example | SPC700 music playback, transport controls |
| SNESMOD Sound Effects | Sound effects alongside music |
Tile-based maps, streaming, and collision.
| Example | Description |
|---|---|
| Dynamic Map | Dynamic tile map streaming |
| Slope Mario | Slopes and tile-based collision |
Memory mapping and persistence.
| Example | Description |
|---|---|
| HiROM Demo -- Understanding SNES Memory Mapping | HiROM vs LoROM memory mapping |
| Save Game -- SRAM Persistence | SRAM battery-backed saves |
Fundamental game mechanics.
| Example | Description |
|---|---|
| Collision Detection Demo | Bounding-box sprite collision detection |
Complete game projects combining multiple subsystems.
| Example | Description |
|---|---|
| Breakout | Breakout clone: sprites, input, game logic, scoring |
| LikeMario | Platformer with scrolling, animation, physics |
| Map and Objects | Map engine with interactive objects |
| Tetris | Tetris with Korobeiniki music, multi-line clear |
Cartridge coprocessors that extend the SNES beyond its base hardware.
The SA-1 is a second 65816 CPU running at 10.74 MHz (3x main CPU speed), sharing I-RAM with the main CPU for inter-processor communication.
| Example | Description |
|---|---|
| examples_enhancement_sa1_hello | Boot diagnostic: SA-1 init, I-RAM handshake, register verification |
| examples_enhancement_sa1_starfield | 128-dot Lissajous murmuration driven by SA-1 math |
The SuperFX is a custom RISC processor (GSU) with built-in pixel PLOT, hardware multiply, and direct framebuffer access for 3D and bitmap effects.
| Example | Description |
|---|---|
| examples_enhancement_superfx_hello | Boot + SRAM + FMULT hardware tests |
| examples_enhancement_superfx_3d | Rotating wireframe cube (Star Fox style 3D) |