As part of the overall plan for the Super Nintendo Entertainment System, rather than include an expensive CPU that would still become obsolete in a few years, the hardware designers made it easy to interface special coprocessor chips to the console. Rather than require a console upgrade, these enhancement chips were included inside the plug-in game cartridges. The presence of an enhancement chip is most often indicated by the presence of 16 additional pins on the cartridge card edge.[1]
Contents |
The Super FX chip is a 16bit supplemental RISC CPU developed by Argonaut Games that was included in certain game cartridges to perform functions that the main CPU could not feasibly do.[2] It was typically programmed to act as a graphics accelerator chip that would draw polygons to a frame buffer in the RAM that sat adjacent to it.
In addition to rendering polygons, the chip was also used to assist the SNES in rendering advanced 2D effects. Super Mario World 2: Yoshi's Island used it for advanced graphics effects like sprite scaling and stretching, huge sprites that allowed for boss characters to take up the whole screen, and multiple foreground and background parallax layers to give a greater illusion of depth.
This chip went through three revisions, first starting out as a chip-on-board epoxy glob-top in the earliest Star Fox cartridges, labeled as Mario Chip-1 (Mathematical, Argonaut, Rotation & I/O). Within a year, the chip was given a more conventional surface-mount package with the designation GSU-1, commonly called the Super FX. Both versions are clocked with a 21 MHz signal, but an internal clock speed divider halved it to 10.5 MHz. Later on, the design was revised to become the GSU-2, known as the Super FX 2 which was still 16bit,but Unlike the earlier Super FX chips, this version was able to reach 21 MHz. All versions of the Super FX chip are functionally compatible in terms of their instruction set. The differences arise in how they are packaged, their pin out, and their internal clock speed.[3]
The CX4 chip, often incorrectly called the C4, is a math coprocessor that was used by Capcom to perform general trigonometric calculations for wireframe effects, sprite positioning and rotation. It is known for its role in mapping and transforming wireframes in the final scenes of Capcom's second and third Mega Man X series games.[2]
A CX4 self-test screen can be accessed by holding the 'B' button on the second controller upon system start-up in both Mega Man X2 and Mega Man X3.[4] In both the PlayStation 2 and Nintendo GameCube versions of Mega Man X Collection, this self-test screen is still accessible in Mega Man X2 (although differently accessed due to the remapped controller configuration), but not in Mega Man X3, because Mega Man X Collection features the 32-bit CD version of the game and not the SNES version.
The CX4 chip has been emulated in several popular SNES emulators, such as ZSNES and Snes9x, allowing both games to be playable with those emulators given that the user has their ROM images. In June 2011, bsnes added low-level emulation of the CX4 chip, significantly improving emulation accuracy compared to the high-level emulation approach used by previous emulators.[5]
This series of fixed-point digital signal processor chips allowed for fast vector-based calculations, bitmap conversions, both 2D and 3D coordinate transformations, and other functions.[6] Four revisions of the chip exist, each physically identical but with different microcode. The DSP-1 version, including the later 1A and 1B bug fix revisions, was most often used; the DSP-2, DSP-3, and DSP-4 were used in only one title each.[7]
The DSP-1 is the most varied and widely used of the SNES DSPs, appearing in over 15 separate titles. It is used as a math coprocessor in games such as Super Mario Kart and Pilotwings that require more advanced Mode 7 scaling and rotation. It also provides fast support for the floating point and trigonometric calculations needed by 3D math algorithms. The later DSP-1A and DSP-1B serve the same purpose as the DSP-1, however, several bugs were corrected in these later chips.
The DSP-2 can only be found in the SNES port of Dungeon Master. Its primary purpose is to convert Atari ST bitmap image data into the SNES bitplane format. It also provides dynamic scaling capability and transparency effects.
Assistant chip used in only one game for the Japanese Super Famicom, a turn-based strategy game titled SD Gundam GX. The chip assisted with tasks like calculating the next AI move, Shannon-Fano bitstream decompression, and bitplane conversion of graphics.
A DSP used in only one game cartridge, Top Gear 3000. It primarily helped out with drawing the race track, especially during the times that the track branched into multiple paths.
The chip used inside the Super Game Boy peripheral possessed a core identical to the Z80-derived CPU in the handheld Game Boy. Because the Super NES was not powerful enough for software emulation of the Game Boy, circuitry equivalent to an entire handheld console had to sit inside of the cartridge.[8]
This chip was made by MegaChips exclusively for Nintendo Power cartridges. The cartridges were equipped with flash ROMs instead of mask ROMs, and were designed to hold games downloaded from specialized kiosks for a fee. The chip managed communication with the kiosks to download ROM images, and provided an initial menu to select which of the downloaded games would be played. Some titles were available both in cartridge and download form, while others were download only. The service was closed on February 8, 2007.[9]
A sprite manipulation chip used exclusively in the Super Scope game Metal Combat: Falcon's Revenge, the sequel to Battle Clash.[2]
The S-DD1 chip is a powerful ASIC decompressor made by Nintendo for use in some Super Nintendo Entertainment System Game Paks.[2] Designed to handle data compressed by ABS Lossless Entropy Algorithm, a form of arithmetic coding developed by Ricoh, its use was necessary in games where massive amounts of sprite data had to be compressed with a 32-megabit data limit in mind. This data is decompressed on-the-fly by the S-DD1 and given directly to the picture processing unit.
The S-DD1 mediates between the Super NES's core CPU (the Ricoh 5A22) and the game's ROM via two buses. However, the controlling 5A22 processor may still request normal, uncompressed data from the game's ROM even if the S-DD1 is already busy with a decompression operation. This form of parallelism allows sprite data to be decompressed while other types of data are quickly passed to the main CPU.
Star Ocean and Street Fighter Alpha 2 were the only games that used this chip. It also served as a copy protection chip that made these titles extremely difficult to emulate.
A real-time clock chip used in one game, Daikaiju Monogatari II.[2]
The Super Accelerator 1 (SA-1) chip was used in a number of SNES games, including the popular Super Mario RPG: Legend of the Seven Stars.[10]
Similar to the 5A22 CPU in the SNES console, the SA-1 contains a processor core based on the 65C816 with several programmable timers.[2] The SA-1 does not function as a slave CPU for the 5A22; both can interrupt each other independently.
The SA-1 also features a range of enhancements over the standard 65C816:
A data decompression chip designed by Epson that was used in a few games by Hudson. Far East of Eden Zero also contains a real-time clock chip accessed via the SPC7110.[2]
The ST series of chips were used by SETA Corporation to enhance AI functionality.
Used for general functions and handling the AI of opponent cars in F1 ROC II: Race of Champions.[11]
Used for AI functionality in the shogi board game Hayazashi Nidan Morita Shogi. Likely based on the same microcontroller core as the ST010.[8]
Used for AI functionality in Hayazashi Nidan Morita Shogi 2. It was a 21 mhz 32bit processor with 21 mips, far exceeding even the SA-1 and Super FX 2 in performance.[8]