# Super FX

The Super FX is a coprocessor on the Graphics Support Unit (GSU) added to select Super Nintendo Entertainment System (SNES) video game cartridges, primarily to facilitate advanced 2D and 3D graphics. The Super FX chip was designed by Argonaut Games, who also co-developed the 3D space rail shooter video game Star Fox with Nintendo to demonstrate the additional polygon rendering capabilities that the chip had introduced to the SNES.

## History

The Super FX chip design team included engineers Ben Cheese, Rob Macaulay, and James Hakewill. While in development, the Super FX chip was codenamed "Super Mario FX" and "MARIO". "MARIO", a backronym for "Mathematical, Argonaut, Rotation, & Input/Output", is printed on the face of the final production chip. The chip's name would lead to an urban legend that "Super Mario FX" was a video game in development for the SNES.
Because of high manufacturing costs and increased development time, few Super FX based games were made compared to the rest of the SNES library. Due to these increased costs, Super FX games often retailed at a higher MSRP compared to other SNES games.
According to Argonaut Games founder Jez San, Argonaut had initially intended to develop the Super FX chip for the Nintendo Entertainment System. The team programmed an NES version of the first-person combat flight simulator Starglider, which Argonaut had developed for the Atari ST and other home computers a few years earlier, and showed it to Nintendo in 1990. The prototype impressed the company, but they suggested that they develop games for the then-unreleased Super Famicom due to the NES's hardware becoming outdated in light of newer systems such as the Sega Genesis/Mega Drive and the TurboGrafx-16/PC Engine. Shortly after the 1990 Consumer Electronics Show held in Chicago, Illinois, Argonaut ported the NES version of Starglider to the Super Famicom, a process which took roughly one week according to San.

## Function

The Super FX chip is used to render 3D polygons and to assist the SNES in rendering advanced 2D effects. This custom-made RISC processor is typically programmed to act like a graphics accelerator chip that draws polygons to a frame buffer in the RAM that sits adjacent to it. The data in this frame buffer is periodically transferred to the main video memory inside of the console using DMA in order to show up on the television display.
The first version of the chip, commonly referred to as simply "Super FX", is clocked with a 21.4 MHz signal, but an internal clock speed divider halves it to 10.7 MHz. Later on, the design was revised to become the Super FX GSU (Graphics Support Unit); this, unlike the first Super FX chip revision, is 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 pinout, and their internal clock speed. As a result of changing the package from 100 to 112 pins when creating the GSU-2, more external pins were available and assigned for addressing. As a result, a larger amount of external ROM or RAM can be accessed.

## Usage

Star Fox uses the chip for the rendering of hundreds of simultaneous 3D polygons. It uses scaled 2D bitmaps for lasers, asteroids, and other obstacles, but other objects such as ships are rendered with 3D polygons. Super Mario World 2: Yoshi's Island uses the chip for 2D graphics effects like sprite scaling and stretching.
Game cartridges that contain a Super FX chip have additional contacts at the bottom of the cartridge that connect to the extra slots in the cartridge port that are not otherwise typically used. Therefore, Super FX games cannot be plugged into cartridge adapters which predate the release of Super FX games. This includes cheat devices, such as the Game Genie.

## List of games

| Title | Release date | SuperFX version | Frequency | μArch | ROM size | Work RAM size | Save RAM size |
| Star Fox (PAL: Starwing) | February 1993 | Mario Chip | 10.5 MHz (21 MHz / 2) | 16 bit RISC CPU | 08 MBit | 256 KBit | None |
| Dirt Racer | May 1995 | GSU-1 | 21 MHz | 16 bit RISC CPU | 04 MBit | 256 KBit | None |
| Dirt Trax FX | June 1995 | GSU-1 | 21 MHz | 16 bit RISC CPU | 04 MBit | 512 KBit | None |
| Stunt Race FX (JP: Wild Trax) | May 1994 | GSU-1 | 21 MHz | 16 bit RISC CPU | 08 MBit | 512 KBit | 64 KBit |
| Vortex | September 1994 | GSU-1 | 21 MHz | 16 bit RISC CPU | 04 MBit | 256 KBit | None |
| Doom | September 1995 | GSU-2 | 21 MHz | 16 bit RISC CPU | 16 MBit | 512 KBit | None |
| Super Mario World 2: Yoshi's Island | August 1995 | GSU-2-SP1 | 21 MHz | 16 bit RISC CPU | 16 MBit | 256 KBit | 64 KBit |
| Winter Gold | November 1996 | GSU-2 | 21 MHz | 16 bit RISC CPU | 16 MBit | 512 KBit | 64 KBit |

### Unreleased games

* Comanche (gameplay looks the same to Super FX voxel demo, but there is no direct connection between both)
* FX Fighter (originally titled Fighting Polygon)
* Power Slide [Wikidata] (developed at the same time as Dirt Racer)
* Star Fox 2 (eventually released with the Super NES Classic Edition in 2017)
* Transformers: Generation 2 (abandoned during development)
* Yoshi Racing [Wikidata] (prototype that later evolved into Croc: Legend of the Gobbos)

## Gallery

* Variants of the Super FX chip, sorted chronologically
* MARIO CHIP 1
* MARIO CHIP 1 (COB)
* GSU-1
* GSU-2
* GSU-2-SP1