SNESdev Wiki
From SNESdev Wiki
Jump to navigationJump to search
SNES Development Wiki
Reference
General
- Memory map
- ROM header
- CPU vectors
- SNES Development Manual
- 65C816 - SNES main CPU, part of the S-CPU
- Tools
- Timing
- Errata
- Glossary
Registers
Pinouts
Peripherals
- Standard controller
- Mouse
- Multitap
- Super Scope
- NTT Data Keypad
- Copier
- Turbo File Twin
- Voyager-kun/Mr. Voice
- Sufami Turbo
PPU
Sound
- S-SMP - SNES SHVC-SOUND chip includes the S-SMP / SPC-700 CPU and S-DSP
- SPC-700 instruction set
- S-DSP registers
- DSP envelopes
- BRR samples
Expansions
- DSP-1 - also includes DSP-2, DSP-3, DSP-4
- SA-1
- Super FX (GSU)
- MSU-1
- Super Game Boy
- CX4 used in Mega Man X2/X3
Formats
- ROM file formats
- Save file formats
- SPC file format - for music that can run entirely from the SPC. reference
- SNSF file format - for music that needs the main CPU as well. reference, spec
Examples and Guides
General
SNES hardware
- Init code
- VBlank interrupts
- Booting the SPC700
- Controller reading
- Multiplication
- Division
- DMA examples
- Blargg SPC upload - Playing an SPC rip on SNES hardware
65c816 guides
- 65c816 for 6502 developers
- Using X as a pointer
- MVN and MVP block copy
- Register sizes in ca65
- Signature byte - supplying a parameter byte for BRK/COP interrupts or WDM
Emulation
Video
- VBlank routine
- SNES PPU for NES developers
- Scrolling a large map
- Drawing window shapes
- HDMA examples
- Reading and writing PPU memory
- Mode 7 perspective effects
- Starting HDMA mid-frame
- Variable width fonts
- Extending vblank
Links
- SNESdev Forum - NESDev subforum
- Fullsnes - Nocash's SNES hardware document
- Superfamicom.org SNES Development Wiki
- Super NES Programming Wikibooks
- Superfamicom.org SNES cartridge database
- SNES Central - game database and PCB images
- Anomie's SNES documents at RHDN