SNESdev Wiki: Difference between revisions

From SNESdev Wiki
Jump to navigationJump to search
(→‎Reference: APU registers are already covered, maybe we need an article about SPC700 (and its registers and operation, and maybe its instructions))
(→‎Sound: Add link to S-DSP registers page)
 
(37 intermediate revisions by 4 users not shown)
Line 8: Line 8:
* [[CPU vectors]]
* [[CPU vectors]]
* [[SNES Development Manual]]
* [[SNES Development Manual]]
* [http://www.6502.org/tutorials/65c816opcodes.html 65C816 Opcodes]
* [[65C816]] - SNES main CPU, part of the S-CPU
* [[Tools]]
* [[Tools]]
* [[Timing]]
* [[Timing]]
* [[Errata]]
* [[Errata]]
* [[Glossary]]


=== Registers ===
=== Registers ===
Line 31: Line 32:
* [[Multitap]]
* [[Multitap]]
* [[Super Scope]]
* [[Super Scope]]
* [[NTT Data Keypad]]
* [[Copier]]
* [[Turbo File Twin]]
* [[Voyager-kun/Mr. Voice]]
* [[Sufami Turbo]]


=== PPU ===
=== PPU ===
Line 42: Line 48:
* [[Color math]]
* [[Color math]]


=== SPC700 ===
=== Sound ===
* [[SPC700]]
* [[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 ==
Line 58: Line 82:
* [[Division]]
* [[Division]]
* [[DMA examples]]
* [[DMA examples]]
* [[Blargg SPC upload]] - Playing an SPC rip on SNES hardware


=== 65c816 guides ===
=== 65c816 guides ===
Line 64: Line 89:
* [[MVN and MVP block copy]]
* [[MVN and MVP block copy]]
* [[Register sizes in ca65]]
* [[Register sizes in ca65]]
* [[Signature byte]] - supplying a parameter byte for BRK/COP interrupts or WDM


=== Emulation ===
=== Emulation ===
Line 71: Line 97:


=== Video ===
=== Video ===
* [[VBlank routine]]
* [[SNES PPU for NES developers]]
* [[SNES PPU for NES developers]]
* [[Scrolling a large map]]
* [[Scrolling a large map]]
* [[Shaped windows]]
* [[Drawing window shapes]]
* [[HDMA examples]]
* [[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]]
* [[Extending vblank]]
* [https://undisbeliever.net/snesdev/registers/inidisp.html#extended-vblank Extending vblank ]


== Links ==
== Links ==
Line 84: 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
* [https://www.romhacking.net/community/548/ Anomie's SNES documents] at RHDN
* [https://www.nesdev.org/obelisk-6502-guide/ Obelisk 6502 introduction] - good reference for 6502, applies to 65C816 as well


== MediaWiki ==
== MediaWiki ==

Latest revision as of 05:52, 2 November 2024

SNES Development Wiki

Reference

General

Registers

Pinouts

Peripherals

PPU

Sound

Expansions

Formats

Examples and Guides

General

SNES hardware

65c816 guides

Emulation

Video

Links

MediaWiki