SNESdev Wiki: Difference between revisions
From SNESdev Wiki
Jump to navigationJump to search
(Remove MediaWiki links that aren't relevant to standard contributors.) |
(→Sound: Add link to S-DSP registers page) |
||
(62 intermediate revisions by 6 users not shown) | |||
Line 6: | Line 6: | ||
* [[Memory map]] | * [[Memory map]] | ||
* [[ROM header]] | * [[ROM header]] | ||
* [[CPU vectors]] | |||
* [[SNES Development Manual]] | * [[SNES Development Manual]] | ||
* [[65C816]] - SNES main CPU, part of the S-CPU | |||
* [[Tools]] | * [[Tools]] | ||
* [[Timing]] | |||
* [[Errata]] | * [[Errata]] | ||
* [[Glossary]] | |||
=== Registers === | === Registers === | ||
Line 21: | Line 25: | ||
* [[WRAM pinout]] | * [[WRAM pinout]] | ||
* [[Cartridge connector]] | * [[Cartridge connector]] | ||
* [[Controller connector]] | |||
=== Peripherals === | === Peripherals === | ||
* [[Standard controller]] | * [[Standard controller]] | ||
* [[Mouse]] | * [[Mouse]] | ||
* [[Multitap]] | |||
* [[Super Scope]] | |||
* [[NTT Data Keypad]] | |||
* [[Copier]] | |||
* [[Turbo File Twin]] | |||
* [[Voyager-kun/Mr. Voice]] | |||
* [[Sufami Turbo]] | |||
=== PPU === | === PPU === | ||
* [[Backgrounds]] | |||
* [[Tilemaps]] | |||
* [[Tiles]] | |||
* [[Sprites]] | |||
* [[Palettes]] | |||
* [[Windows]] | |||
* [[Offset-per-tile]] | * [[Offset-per-tile]] | ||
* [[Color math]] | |||
=== 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. [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] | |||
== Examples and Guides == | == Examples and Guides == | ||
=== General === | |||
* [[Tutorials]] | |||
=== SNES hardware === | === SNES hardware === | ||
* [[Init code]] | * [[Init code]] | ||
* [[VBlank interrupts]] | |||
* [[Booting the SPC700]] | * [[Booting the SPC700]] | ||
* [[Controller reading]] | * [[Controller reading]] | ||
* [[Multiplication]] | * [[Multiplication]] | ||
* [[Division]] | * [[Division]] | ||
* [[DMA examples]] | |||
* [[Blargg SPC upload]] - Playing an SPC rip on SNES hardware | |||
=== 65c816 guides === | === 65c816 guides === | ||
Line 42: | Line 88: | ||
* [[Using X as a pointer]] | * [[Using X as a pointer]] | ||
* [[MVN and MVP block copy]] | * [[MVN and MVP block copy]] | ||
* [[Register sizes in ca65]] | |||
* [[Signature byte]] - supplying a parameter byte for BRK/COP interrupts or WDM | |||
=== Emulation === | === Emulation === | ||
* [[Emulator tests]] | |||
* [[Tricky-to-emulate games]] | * [[Tricky-to-emulate games]] | ||
* [[Uncommon graphics mode games]] | * [[Uncommon graphics mode games]] | ||
=== Video === | === Video === | ||
* [[VBlank routine]] | |||
* [[SNES PPU for NES developers]] | * [[SNES PPU for NES developers]] | ||
* [[Scrolling a large map]] | * [[Scrolling a large map]] | ||
* [[ | * [[Drawing window shapes]] | ||
* [[HDMA examples]] | |||
* [[Reading and writing PPU memory]] | |||
* [[Mode 7 perspective effects]] | * [[Mode 7 perspective effects]] | ||
* [[Starting HDMA mid-frame]] | * [[Starting HDMA mid-frame]] | ||
* [[Variable width fonts]] | * [[Variable width fonts]] | ||
* [ | * [https://undisbeliever.net/snesdev/registers/inidisp.html#extended-vblank Extending vblank ] | ||
== Links == | == Links == | ||
Line 60: | Line 112: | ||
* [https://problemkaputt.de/fullsnes.htm Fullsnes] - Nocash's SNES hardware document | * [https://problemkaputt.de/fullsnes.htm Fullsnes] - Nocash's SNES hardware document | ||
* [https://wiki.superfamicom.org/ Superfamicom.org SNES Development Wiki] | * [https://wiki.superfamicom.org/ Superfamicom.org SNES Development Wiki] | ||
* [https://en.wikibooks.org/wiki/Super_NES_Programming Super NES Programming Wikibooks] | |||
* [https://superfamicom.org/ Superfamicom.org SNES cartridge database] | * [https://superfamicom.org/ Superfamicom.org SNES cartridge database] | ||
* [https://snescentral.com/ SNES Central] - game database and PCB images | |||
* [https://www.romhacking.net/community/548/ Anomie's SNES documents] at RHDN | |||
== MediaWiki == | == MediaWiki == | ||
Line 66: | Line 121: | ||
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] | * [https://www.mediawiki.org/wiki/Special:MyLanguage/Help:Contents User's Guide] | ||
* [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ] | * [https://www.mediawiki.org/wiki/Special:MyLanguage/Manual:FAQ MediaWiki FAQ] | ||
* [[:Category:Deletion requests|Deletion requests]] |
Latest revision as of 05:52, 2 November 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
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