SNESdev Wiki: Difference between revisions
From SNESdev Wiki
Jump to navigationJump to search
(→Sound: Add link to S-DSP registers page) |
(Added DSP Coprocessor Pinout, capitalized some stuff) |
||
Line 4: | Line 4: | ||
=== General === | === General === | ||
* [[Memory map]] | * [[Memory map|Memory Map]] | ||
* [[ROM header]] | * [[ROM header|ROM Header]] | ||
* [[CPU vectors]] | * [[CPU vectors|CPU Vectors]] | ||
* [[SNES Development Manual]] | * [[SNES Development Manual]] | ||
* [[65C816]] - SNES main CPU, part of the S-CPU | * [[65C816]] - SNES main CPU, part of the S-CPU | ||
Line 15: | Line 15: | ||
=== Registers === | === Registers === | ||
* [[MMIO registers]] | * [[MMIO registers|MMIO Registers]] | ||
* [[PPU registers]] | * [[PPU registers|PPU Registers]] | ||
* [[DMA registers]] | * [[DMA registers|DMA Registers]] | ||
=== Pinouts === | === Pinouts === | ||
Line 23: | Line 23: | ||
* [[CPU pinout]] | * [[CPU pinout]] | ||
* [[PPU pinout]] | * [[PPU pinout]] | ||
* [[WRAM pinout]] | * [[DSP Pinout|DSP Coprocessor Pinout]] | ||
* [[Cartridge connector]] | * [[WRAM pinout|WRAM Pinout]] | ||
* [[Controller connector]] | * [[Cartridge connector|Cartridge Connector]] | ||
* [[Controller connector|Controller Port]] | |||
=== Peripherals === | === Peripherals === | ||
* [[Standard controller]] | * [[Standard controller|Standard Controller]] | ||
* [[Mouse]] | * [[Mouse]] | ||
* [[Multitap]] | * [[Multitap]] | ||
* [[Super Scope]] | * [[Super Scope]] | ||
* [[NTT Data Keypad]] | * [[NTT Data Keypad|NTT Data Keypad]] | ||
* [[Copier]] | * [[Copier]] | ||
* [[Turbo File Twin]] | * [[Turbo File Twin]] | ||
Line 50: | Line 51: | ||
=== Sound === | === Sound === | ||
* [[S-SMP]] - SNES SHVC-SOUND chip includes the S-SMP / SPC-700 CPU and S-DSP | * [[S-SMP]] - SNES SHVC-SOUND chip includes the S-SMP / SPC-700 CPU and S-DSP | ||
* [[SPC-700 instruction set]] | * [[SPC-700 instruction set|SPC-700 Instruction Set]] | ||
* [[S-DSP registers]] | * [[S-DSP registers|S-DSP Registers]] - NOt to be confused with the DSP-x Coprocessors | ||
* [[DSP envelopes]] | * [[DSP envelopes|DSP Envelopes]] | ||
* [[BRR samples]] | * [[BRR samples|BRR Samples]] | ||
=== Expansions === | === Expansions === | ||
Line 64: | Line 65: | ||
=== Formats === | === Formats === | ||
* [[ROM file formats]] | * [[ROM file formats|ROM File Formats]] | ||
* [[Save file formats]] | * [[Save file formats|Save FIle Formats]] | ||
* [[SPC file format]] - for music that can run entirely from the SPC. [https://wiki.superfamicom.org/nintendo-music-format-(n-spc) reference] | * [[SPC file format|SPC File Format]] - for music that can run entirely from the SPC. [https://wiki.superfamicom.org/nintendo-music-format-(n-spc) reference] | ||
* [[SNSF file format]] - for music that needs the main CPU as well. [https://www.vgmpf.com/Wiki/index.php/SNSF reference], [https://snsf.caitsith2.net/snsf%20spec.txt spec] | * [[SNSF file format|SNSF File Format]] - for music that needs the main CPU as well. [https://www.vgmpf.com/Wiki/index.php/SNSF reference], [https://snsf.caitsith2.net/snsf%20spec.txt spec] | ||
== Examples and Guides == | == Examples and Guides == | ||
Line 85: | Line 86: | ||
=== 65c816 guides === | === 65c816 guides === | ||
* [[65c816 for 6502 developers]] | * [[65c816 for 6502 developers|65C816 for 6502 Devs]] | ||
* [[Using X as a pointer]] | * [[Using X as a pointer|Using X as a Pointer]] | ||
* [[MVN and MVP block copy]] | * [[MVN and MVP block copy|MVN and MVP Block Copy]] | ||
* [[Register sizes in ca65]] | * [[Register sizes in ca65|Reg. Sizes in CA65]] | ||
* [[Signature byte]] - supplying a parameter byte for BRK/COP interrupts or WDM | * [[Signature byte]] - supplying a parameter byte for BRK/COP interrupts or WDM | ||
=== Emulation === | === Emulation === | ||
* [[Emulator tests]] | * [[Emulator tests|Emulator Tests]] | ||
* [[Tricky-to-emulate games]] | * [[Tricky-to-emulate games|Tricky-to-Emulate Games]] | ||
* [[Uncommon graphics mode games]] | * [[Uncommon graphics mode games|Games with Uncommon Graphics Modes]] | ||
=== Video === | === Video === | ||
* [[VBlank routine]] | * [[VBlank routine|VBlank Routine]] | ||
* [[SNES PPU for NES developers]] | * [[SNES PPU for NES developers]] | ||
* [[Scrolling a large map]] | * [[Scrolling a large map]] | ||
* [[Drawing window shapes]] | * [[Drawing window shapes]] | ||
* [[HDMA examples]] | * [[HDMA examples|HDMA Examples]] | ||
* [[Reading and writing PPU memory]] | * [[Reading and writing PPU memory]] | ||
* [[Mode 7 perspective effects]] | * [[Mode 7 perspective effects|Mode 7 Effects]] | ||
* [[Starting HDMA mid-frame]] | * [[Starting HDMA mid-frame]] | ||
* [[Variable width fonts]] | * [[Variable width fonts|Variable Width Fonts]] | ||
* [https://undisbeliever.net/snesdev/registers/inidisp.html#extended-vblank Extending vblank ] | * [https://undisbeliever.net/snesdev/registers/inidisp.html#extended-vblank Extending vblank ] | ||
Revision as of 13:52, 30 December 2024
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
- APU pinout
- CPU pinout
- PPU pinout
- DSP Coprocessor Pinout
- WRAM Pinout
- Cartridge Connector
- Controller Port
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 - NOt to be confused with the DSP-x Coprocessors
- 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 Devs
- Using X as a Pointer
- MVN and MVP Block Copy
- Reg. 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 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