SPC700
From Wikipedia, the free encyclopedia
The SONY SPC700 is the 8-bit sound chip designed by Ken Kutaragi and used in the Super Famicom/Super Nintendo Entertainment System video game console together with a digital signal processor (DSP). The SPC700 and its companion 16-bit DSP were developed and manufactured by Sony, producer of the PlayStation. The SPC700 chip was very advanced for its time (1990) and in some ways may be said to rival today's wavetable synthesizer sound cards.
Inside the Super Famicom/SNES the SPC700 is located above the DSP, on the left side of the sound module. The sound chip contains 64KB internal RAM, and runs at 1.024 MHz. It has six internal registers, and can execute 256 opcodes. SPC700 sound samples are stored in RAM in compressed (BRR) format. The SPC700 instruction set is quite similar to that of the 6502 CPU family, but includes additional instructions, including XCN (eXChange Nibble), which swaps the upper and lower 4-bit portions of the 8-bit accumulator, and an 8-by-8-to-16-bit multiply instruction.
The SPC700's companion DSP operates similarly to modern wavetable sound cards, such as Sound Blaster Audigy. It is capable of producing 8 simultaneous voices at any relevant pitch and volume. It has support for voice panning, ADSR envelope control, echo with filtering (via a programmable 8-tap FIR), and using noise as sound source (useful for certain sound effects such as wind). It generates 16-bit stereo audio output at a sample rate of 32 kHz. Communications between the SPC700 and the DSP is carried out via memory-mapped I/O.
The SPC700 operates in a somewhat unconventional manner for a sound chip. The main SNES CPU transfers blocks of data containing commands and sound samples to the SPC700 internal memory. These commands are machine code programs, and are developed for the SPC700 in much the same way that programs are written for PCs or Macs. As such, the SPC700 can be considered as a coprocessor dedicated for sound on the SNES/Super Famicom.
The emulation-related sound format name .SPC comes from the name of this sound chip.
[edit] See also
[edit] External links
- A tutorial on using the SPC700 for the SNES is available on Wikibooks
- SNESAmp Site
- SPC700 Documentation
- SPC700 APU Manual