Classroom Glossary Public page

Week 6: SNES 65C816 and the 16-bit Successor

The SNES 65C816 is the 16-bit successor to the 6502; the S-PPU is a tile-and-sprite engine on a different scale; the S-DSP runs the audio. This week you compare the SNES architecture against the NES (Module 3) and Game Boy (Module 5) and write the cousin-mapping document.


Reading

  • Copetti, Architecture of Consoles: Super Nintendo. Free; the canonical breadth resource.
  • snes.nesdev.org wiki, the canonical web reference for the SNES.
  • Hugg, Designing Video Game Hardware in Verilog, the chapter on the 16-bit transition. The pedagogical narrative is exactly the CON-101 cousin-mapping arc.

Lecture

Roughly three hours across two sessions. Key arc:

  • 65C816 register set and addressing modes. The 6502 family in 16-bit form.
  • S-PPU. Modes 0 through 7. Mode 7 in particular, the famous bitmap-rotation mode.
  • S-DSP. Sample-based audio versus the NES APU channel-based audio.
  • Cartridge mappers, FastROM versus SlowROM, the SNES bank-switching idioms.
  • Why the SNES outsold the Genesis and what the architecture had to do with it.

Lab pack

Lab Pack 6 walks the SNES versus NES Compare and Contrast and produces the cousin-mapping document. See Lab Pack 6: SNES vs NES Compare and Contrast.

Classroom tools

  • bsnes-plus, the SNES emulator with debugger; pre-FPGA verification.
  • PVSneslib for the Module 7 homebrew prep work.
  • The community SNES core source mirrored in the student repo under cores/snes/.

Architecture comparison sidebar

The SNES Mode-7 is hardware-rotation of a single bitmap layer; the NES had no equivalent. The SNES S-DSP is sample-based; the NES APU was channel-based. The SNES 65C816 is a 16-bit superset of the 6502; the LR35902 is a 8-bit Z80 cousin. Three architectures, three different design dialects, one family of choices. The cousin-mapping discipline you write up this week is the explicit version of the recognition you have been building all module.

Reflection prompts

  1. Mode 7 was a single layer with rotation. Why did Nintendo not ship Mode 8 with two rotated layers?
  2. If you were designing a sample-based audio system for a 1990 console with a small RAM budget, what would you copy from the SNES S-DSP and what would you change?
  3. Compare the SNES's WRAM versus the NES's WRAM. Why did Nintendo add the larger work-RAM space?

What is next

Module 7 is the most fun. You write or port an original homebrew NES ROM and flash it onto your DE10-Nano (or run it in the browser jsnes for the no-hardware path).