Super NES
{{#invoke:Category handler|main}} {{#invoke:Infobox|infobox}}
Technical specifications
Template:Main The 16-bit design of the SNES<ref>Template:Cite web</ref> incorporates powerful graphics and sound co-processors that allow tiling and simulated 3D effects, a palette of 32,768 colors, and high-quality 8-channel audio. These base platform features, plus the ability to dramatically extend them all through substantial chip upgrades inside of each cartridge, represent a leap over the 8-bit NES generation and some significant advantages over the competition such as the Sega Genesis.<ref>Template:Cite web</ref>
Central processing unit
CPU reference | |
---|---|
Processor | Ricoh 5A22, based on a 16-bit 65c816 core |
Clock rates (NTSC) | Input: 21.47727 MHz Bus: 3.58 MHz, 2.68 MHz, or 1.79 MHz |
Clock rates (PAL) | Input: 21.28137 MHz Bus: 3.55 MHz, 2.66 MHz, or 1.77 MHz |
Buses | 24-bit and 8-bit address buses, 8-bit data bus |
Additional features |
|
Video
Video reference | |
---|---|
Resolutions | Progressive: 256×224, 512×224, 256×239, 512×239 Interlaced: 512×448, 512×478 |
Pixel depth | 2, 4, 7, or 8 bpp indexed; 8 or 11 bpp direct |
Total colors | 32768 (15-bit) |
Sprites | 128, 32 max per line; up to 64 × 64 pixels |
Backgrounds | Up to 4 planes; each up to 1024 × 1024 pixels |
Effects |
|
The graphics processing unit (GPU) consists of two separate but closely tied IC packages, which may be considered as a single entity. It also contains 64 kB<ref group="lower-alpha" name="binary prefix"/> of SRAM for storing video data (VRAM), 544 bytes of object attribute memory (OAM) for storing sprite data, and 256 × 15 bits of color generator RAM (CGRAM) for storing palette data. The VRAM is actually divided into two 32 kB sections with separate address and data buses, essentially for the necessary access patterns used by BG Mode 7. The GPU is clocked by the same signal as the CPU, and generates a pixel every two or four cycles. Both NTSC and PAL systems use the same GPU chips, with one pin per chip selecting NTSC or PAL operation.<ref name="anomie_regs"/>
Images may be output at 256 or 512 pixels horizontal resolution and 224, 239, 448, or 478 pixels vertically. Vertical resolutions of 224 or 239 are usually output in progressive scan, while 448 and 478 resolutions are interlaced. Colors are chosen from the 15-bit RGB color space, for a total of 32,768 possible colors. Graphics consist of up to 128 sprites and up to 4 background layers, all made up of combinations of 8×8 pixel tiles. Most graphics use palettes stored in CGRAM, with color 0 of any palette representing transparency.<ref name="anomie_regs"/>
Sprites can be 8 × 8, 16 × 16, 32 × 32, or 64 × 64 pixels, each using one of eight 16-color palettes and tiles from one of two blocks of 256 in VRAM. Sprites may be flipped horizontally and vertically as a whole. Up to 32 sprites and 34 8 × 8 sprite tiles may appear on any one line; excess sprites or tiles would be dropped. Each sprite lies on one of 4 planes, however a lower-numbered sprite will always cover a higher-numbered sprite even if the latter is on a higher priority plane. This quirk is often used for complex clipping effects.<ref name="anomie_regs"/>
Background layers in most modes range from 32 x 32 to 64 × 64 tiles, each of size 8 x 8 or 16 x 16 pixels, with each tile on one of two planes ("foreground" and "background") and using one of 8 palettes. Tiles are taken from a per-layer set of up to 1024 (as VRAM permits) and can be flipped horizontally and vertically. Each layer may be scrolled both horizontally and vertically. The number of background layers and the size of the palettes depends on the mode:<ref name="anomie_regs"/><ref>Template:Cite web</ref>
- Mode 0: 4 layers, all using 4-color palettes. Each BG uses its own section of the SNES palette. Up to 96 colors can be displayed on the backgrounds, 24 colors per layer.
- Mode 1: 3 layers, two using 16-color palettes and one using 4-color palettes. Up to 120 colors can be displayed by first two layers and 24 colors by third layer.
- Mode 2: 2 layers, both using 16-color palettes. Each tile can be individually scrolled. Up to 120 colors can be displayed on screen.
- Mode 3: 2 layers, one using the full 256-color palette and one using 16-color palettes. The 256-color layer can also directly specify colors from an 11-bit (RGB443) colorspace. Up to 256 colors displayed by first layer and 120 colors by second layer.
- Mode 4: 2 layers, one using the full 256-color palette and one using 4-color palettes. The 256-color layer can directly specify colors, and each tile can be individually scrolled. Up to 256 colors displayed by first layer and 24 colors by second layer.
- Mode 5: 2 layers, one using 16-color palettes and one using 4-color palettes. Tile decoding is altered to facilitate use of the 512-width and interlaced resolutions. Up to 120 colors displayed by first layer and 24 colors by second layer.
- Mode 6: 1 layer, using 16-color palettes. Tile decoding is as in Mode 5, and each tile can be individually scrolled. Up to 120 colors can be displayed on screen.
- Mode 7: 1 layer of 128×128 tiles of size 8x8 from a set of 256, which may be interpreted as a 256-color one-plane layer or a 128-color two-plane layer. The layer may be rotated and scaled using matrix transformations. HDMA is often used to change the matrix parameters for each scanline to generate perspective effects.
Background layers may be individually pixelized, and layers and sprites can be individually clipped and combined by color addition or subtraction to generate more complex effects and greater color depths than can be specified directly.<ref name="anomie_regs"/>
The GPU may be instructed to latch the current pixel position at any time during image output, both by game software and by the device attached to controller port 2. The game software may then read back this latched position. The GPU may also be used for fast 16-bit by 8-bit signed multiplication.<ref name="anomie_regs"/>
Audio
Audio reference | |
---|---|
Processors | Nintendo S-SMP |
Clock rates | Input: 24.576 MHz SPC700: 1.024 MHz |
Format | 8 channel ADPCM |
Output | 32 kHz 16-bit stereo |
Effects |
|
The audio subsystem consists of an 8-bit Sony SPC700, a 16-bit DSP, 64 kB<ref group="lower-alpha" name="binary prefix"/> of SRAM shared by the two chips, and a 64 byte boot ROM. The audio subsystem is almost completely independent from the rest of the system: it is clocked at a nominal 24.576 MHz in both NTSC and PAL systems, and can only communicate with the CPU via 4 registers on Bus B.<ref name="anomie_apudsp">Template:Cite web</ref>Template:Unreliable source?<ref name="anomie_spc700">Template:Cite web</ref>Template:Unreliable source?
RAM is accessed at 3.072 MHz, with accesses multiplexed between the SPC700 (Template:Fraction) and the DSP (Template:Fraction). This RAM is used to store the SPC700 program and stack, the audio sample data and pointer table, and the DSP's echo buffer.<ref name="anomie_apudsp"/> The SPC700 runs programs (uploaded using the boot ROM program) to accept instructions and data from the CPU and to manipulate the DSP registers to generate the appropriate music and sound effects. The DSP generates a 16-bit waveform at 32 kHz by mixing input from 8 independent voices and an 8-tap FIR filter typically used for reverberation. Each voice can play its sample at a variable rate, with Gaussian interpolation, stereo panning, and ADSR, linear, non-linear, or direct volume envelope adjustment. The voice and FIR filter outputs are mixed both for direct output and for future input into the FIR filter. All audio samples are compressed using ADPCM and a linear predictive coding, a method dubbed BRR.<ref name="anomie_apudsp"/>
Hardware on the cartridge, expansion port, or both can provide stereo audio data for mixing into the DSP's analog audio output before it leaves the console.<ref name="anomie_ports"/> Since the audio subsystem is mostly self-contained, the state of the audio subsystem can be connected to, or emulated on, a host computer. Its output may be saved as an SPC700 sound format (.SPC) file, or the audio subsystem can be emulated in a stand-alone manner to play back all game music except for a few games that constantly stream their samples from ROM. Custom cartridges or PC interfaces can be used to load and play .SPC files onto a real SNES SPC700 and DSP. Template:-
Onboard RAM
Memory reference | |
---|---|
Main RAM | 128 kB<ref group="lower-alpha" name="binary prefix"/> |
Video RAM | 64 kB main RAM 512 + 32 bytes sprite RAM 256 × 15 bits palette RAM |
Audio RAM | 64 kB |
The console contains 128 kB<ref group="lower-alpha" name="binary prefix"/> of DRAM. This is mapped to various segments of Bus A, and can also be accessed in a serial fashion via registers on Bus B. The video and audio subsystems contain additional RAM reserved for use by those processors.<ref name="anomie_regs"/>
Regional lockout
Nintendo employed several types of regional lockout, including both physical and hardware incompatibilities.
Top: North American design
Bottom: Japanese and PAL region design.
The bottom cartridge also illustrates the optional pins used by enhancement chips such as the Super FX 3D chip.
On a physical level, the cartridges are shaped differently for different regions. North American cartridges have a rectangular bottom with inset grooves matching protruding tabs in the console, while other regions' cartridges are narrower with a smooth curve on the front and no grooves. The physical incompatibility can be overcome with use of various adapters, or through modification of the console.Template:Citation needed
Internally, a regional lockout chip (CIC) within the console and in each cartridge prevents PAL region games from being played on Japanese or North American consoles and vice versa. The Japanese and North American machines have the same region chip. The console CIC releases the reset signal to the rest of the system only after completing a handshake with the chip in the cartridge.Template:Citation needed This can be overcome through the use of adapters, typically by inserting the imported cartridge in one slot and a cartridge with the correct region chip in a second slot. Alternatively, disconnecting one pin of the console's lockout chip will prevent it from locking the console; hardware in later games can detect this situation, so it later became common to install a switch to reconnect the lockout chip as needed.<ref>Template:Cite web</ref>
PAL consoles face another incompatibility when playing out-of-region cartridges: the NTSC video standard specifies video at 60 Hz while PAL operates at 50 Hz, resulting in approximately 16.7% slower gameplay. Additionally, PAL's higher resolution results in letterboxing of the output image. Some commercial PAL region releases exhibit this same problem and therefore can be played in NTSC systems without issue, while others will face a 20% speedup if played in an NTSC console. To mostly correct this issue, a switch can be added to place the SNES PPU into a 60 Hz mode supported by most newer PAL televisions. Later games will detect this setting and refuse to run, requiring the switch to be thrown only after the check completes.<ref name="SNES-pal-switch">Template:Cite web</ref> Template:-
Casing
![]() |
||||
Original Japanese version (1990–1998) |
Original North American version (1991–1997) |
Original PAL version (1992–1998) |
Super Famicom Jr. (1998–2003) |
North American redesign (1997–1999) |
All versions of the SNES are predominantly gray, although the exact shade may differ. The original North American version, designed by Nintendo of America industrial designer Lance Barr<ref name="NP25" /> (who previously redesigned the Famicom to become the NES<ref name="barr-interview">Template:Cite web</ref>), has a boxy design with purple sliding switches and a dark gray eject lever. The loading bay surface is curved, both to invite interaction and to prevent food or drinks from being placed on the console and spilling as had happened with the flat surfaced NES.<ref name="NP25">Template:Cite journal</ref> The Japanese and European versions are more rounded, with darker gray accents and buttons. The North American SNS-101 model and the Japanese Super Famicom Jr. (the SHVC-101 model), all designed by Barr, are both smaller with a rounded contour; however, the SNS-101 buttons are purple where the Super Famicom Jr. buttons are gray. The European and American versions of the SNES controllers have much longer cables compared to the Japanese Super Famicom controllers.
All versions incorporate a top-loading slot for game cartridges, although the shape of the slot differs between regions to match the different shapes of the cartridges. The card-edge connector has 62 contacts; however, many cartridges only connect to the middle 46. All versions also incorporate two 7-pin controller ports on the front of the unit, and a plug for a power supply and a Nintendo-proprietary "MULTI OUT" A/V connector on the back.<ref name="anomie_ports">Template:Cite web</ref>Template:Unreliable source? The MULTI OUT connector (later used on the Nintendo 64 and GameCube) can output composite video, S-Video and RGB signals, as well as RF with an external RF modulator.Template:Citation needed Original versions additionally include a 28-pin expansion port under a small cover on the bottom of the unit<ref name="anomie_ports"/> and a standard RF output with channel selection switch on the back;<ref>Template:Cite web</ref> the redesigned models output composite video only, requiring an external modulator for RF.<ref>Template:Cite web</ref>
The ABS plastic used in the casing of some older SNES and Super Famicom consoles is particularly susceptible to oxidization on exposure to air, likely due to an incorrect mixture of the stabilizing or flame retarding additives. This, along with the particularly light color of the original plastic, causes affected consoles to quickly become yellow; if the sections of the casing came from different batches of plastic, a "two-tone" effect results.<ref>Template:Cite web</ref> The color can sometimes be restored with UV light and a hydrogen peroxide solution.<ref>Template:Cite web</ref>