GameCube
The GameCube (marketed as Nintendo GameCube, codenamed Dolphin) was a home video game console developed by Nintendo and ArtX from approximately 1997[1] to 2001.
A standard GameCube with its controller. | |
Initial Release Date | September 14, 2001 (JPN) |
---|---|
SDK | Dolphin SDK |
Hardware Notes
More information: Gekko, GX, Flipper, GameCube technical specifications (Wikipedia)
The GameCube has three main components; a CPU (Gekko), a GPU (GX), and a system ASIC (Flipper).
The CPU is a semi-custom derivative of the PowerPC 750, also notably used (under the marketing name "PowerPC G3") in several late 90s-early 2000s Macs. It is a superset of later PPC750 variants, with additional instructions for accelerated media and graphics processing. Some newer PowerPC 750-based Macs can also use these instructions if the correct HID register bits are set.
The GPU is fully custom; it was developed by ArtX, a startup which spun off from the Silicon Graphics Nintendo 64 hardware development team. ArtX was bought out by ATI in 2000, just as the GPU design was being completed; as such, the GameCube has ATI branding, although its hardware has no relation to ATI products preceding it. After purchasing ArtX, ATI used their GPU technology in Radeon video cards starting with the acclaimed R300 series, making the GameCube's GPU an ancestor of modern PC GPUs.
The system ASIC (similar to the chipset on a PC motherboard, implementing peripheral interfaces and other system functions) is fully custom, having been co-developed by ArtX and Nintendo.
The GameCube has three banks of RAM; a main 24MB general-purpose bank, a slow 16MB bank intended primarily for use as an audio buffer, and a 3MB VRAM bank which is embedded within the GPU.
The GameCube's architecture would later evolve into that of the Wii and Wii U.
Software Notes
More information: Dolphin SDK, GameCube Boot Process, NROM
The Nintendo-developed Dolphin SDK was used to build all officially released GameCube software.
There were two official distribution channels for GameCube software; discs, and preinstalled software.
The GameCube's disc format, known internally as NROM, uses a custom filesystem and a basic XOR encryption scheme tied to the disc's BCA to prevent unauthorized reading and copying. However, the discs are otherwise physically identical to miniDVD discs, which in turn are reduced-size standard DVDs; therefore, if the GameCube's disc drive is hacked using an external device to disable the security mechanism, it can read standard miniDVD and DVD discs. Some PC DVD drives can also read GameCube discs, although software such as RawDump is necessary to access their contents. Early in development, the GameCube used full-size discs equivalent to DVDs.
The GameCube's capacity for preinstalled software is limited to a ROM chip attached to the EXI interface, which the CPU boots from by default. This ROM chip contains a boot program which will initialize the system, play the boot animation and start the inserted disc or display the console menu. A XOR encryption scheme is also used on the ROM data.
The GameCube has no proper operating system; the boot program does not keep executing after it launches a game or expose any "BIOS" functions, and all code which runs once a game has been started is loaded from the game disc. The Dolphin SDK includes an "OS" library with some basic functions for system features such as thread/memory management.
Controller
Main article: GameCube Controller
The GameCube's controller went through 5 chipset revisions (numbered DS1 through DS5), and several more casing revisions.
The earliest known GameCube controller prototype from 1999 is a bare board with no casing; later prototypes added a casing resembling the final but with a Start button in place of the D-pad, and a later variant was almost identical to the final but with minor differences such as a bean-shaped B button.
Development Hardware
Development Consoles
At least 8 GameCube development consoles were made.
Arthur
Main article: Arthur
This is mentioned in Dolphin SDK header files as being a GameCube development platform. Since this was the codename of the PowerPC 750 processor itself, this was likely a generic name for PowerPC 750 development boards used during very early development.
Minnow
Main article: Minnow
This is mentioned in the Dolphin SDK documentation as being an early prototype development system without graphical capabillities, used for internal system bring-up only. A Minnow is a small fish, which might be eaten by a Dolphin.
Dolphin Development Hardware (DDH)
Main article: Dolphin Development Hardware
DDH consoles were used starting in 1999-2000, and are believed to have been the first GameCube development console distributed outside of Nintendo. The DDH console resembles a small PC tower. It has an internal hard drive which can be attached to a PC with a special SCSI interface to copy games for debugging. Later DDH consoles were rebadged with the name "Nintendo GameCube Development System".
NPDP-GDEV
Main article: NPDP-GDEV/GBOX
The NPDP-GDEV (Nintendo Pseudo Disc Pack-GDEV, with GDEV possibly being "GameCube Dev") console was used from around 2000. It has a slot to load games from NPDP cartridges, as well as the ability to load games directly from a PC with optical disc emulation. The GDEV has 48MB of main RAM, while a standard GameCube has 24MB.
NPDP-GBOX
Main article: NPDP-GDEV/GBOX
The NPDP-GBOX console is similar to the NPDP-GDEV, without the ability to load games from a PC.
NR Reader
Main article: NR/NPDP Reader
The NR Reader console is nearly identical to a standard GameCube, but comes in a unique teal colour and has a modified disc drive which reads NR discs rather than NROM discs. NR discs can be written to by developers to test games in an environment identical to that of a standard console.
NPDP Reader
Main article: NR/NPDP Reader
The NPDP Reader console is similar to the NR Reader, but in a red colour and with the disc drive entirely replaced by an NPDP cartridge slot.
TDEV
Main article: TDEV
The TDEV (Tiny Dev[2]) console is similar to the NR Reader, but in a brown colour and with additional functionality to connect to a host PC for debugging and optical disc emulation. It also has 48MB of main RAM.
Other Development Hardware
Barnacle
Main article: Barnacle
The Barnacle is a device which attaches to one of the GameCube's EXI channels, and causes the system to boot from it rather than the internal ROM chip. It was used within Nintendo during development and testing of the GameCube's boot program. It also supports serial debug output. A Barnacle is something which you might find in the sea, attaching to a host Dolphin.
Memory Card Emulator
Main article: Memory Card Emulator
The Memory Card Emulator is a device which attaches to a Memory Card slot and emulates the functionality of a Memory Card. It was used by game developers to verify that their game could pass Nintendo's certification requirements for Memory Card handling.
EXI-to-USB Adapter
Main article: GameCube EXI-to-USB Adapter
The EXI-to-USB Adapter is a device which provides a connection from a GameCube development console's memory card slot to a PC for debugging.
NR Disc
NR Discs (possibly "Nintendo Recordable") are blank NROM discs with a special authentication key which makes them only compatible with NR Reader and NR Writer drives. They were used by game developers as blank discs (equivalent to a DVD-R) to burn disc images onto so that they could be tested on an NR Reader.
NPDP Cartridge
NPDP Cartridges are hard drives contained in a special casing which are compatible with the NPDP-GDEV/GBOX and NPDP Reader. They serve the same purpose as NR Discs, but can be rewritten and password-protected (a special boot program created by Nintendo IRD was used on NPDP cartridges). The hardware which reads NPDP Cartridges emulates them as standard GameCube discs.
NR Writer
The NR Writer is a modified DVD-R burner which can write to NR Discs.
NPDP Writer
The NPDP Writer is a special device which can write to NPDP Cartridges. At least two variants of the NPDP Writer exist; the NPDP-SW variant which writes a single NPDP Cartridge, and the NPDP-GW variant which can write up to eight.
Nintendo Test Discs
The Nintendo Test Discs were test-pressing discs created around 1999, when Nintendo was planning to use a full-size disc format for the GameCube.2 of these discs are known to contain test video files which consist entirely of a colour bar pattern.
Unknown Devices
The names "Orca", "Marlin", and "Walrus" are also known to be the names of GameCube development hardware, but it is currently unknown what these devices are.
Orcas are particularly strong Dolphins.
Marlins attack Dolphins.
Walruses are water-loving animals, like Dolphins.
Gallery
- ↑ While most sources report that the GameCube's development began in 1998, version control info from Dolphin SDK header files indicates that development began in late 1997 or earlier.
- ↑ wiidump.7z/RVL_NDEV-0_33-patch-060304.en/RVL_EMU_QuickStart.en.pdf