The Silicon Graphics O2, codename Moosehead, is an entry-level Unix workstation introduced in 1996 by Silicon Graphics, Inc. (SGI) to replace their earlier Indy. Like the Indy, the O2 uses a single MIPS microprocessor and was intended to be used mainly for multimedia. Its larger counterpart was the SGI Octane. The O2 was SGI's last attempt at a low-end workstation.
O2 features a proprietary high-bandwidth Unified Memory Architecture (UMA) that connects the various system components. The O2 is a highly-integrated system, with CPU, graphics accelerator, memory, SCSI controller, and I/O all incorporated into a single system module, which can be slid out of the chassis with the flip of a lever. A PCI bus is bridged onto the UMA with one expansion slot available. The O2 has a designer case and a modular design, with space for two Ultra SCSI drives mounted on special sleds (only one in the later R10000/R12000 models) and an optional video capture / sound module mounted on the far left side. Further information on the design and construction of the O2 can be found in SGI service manuals on Techpubs. Detailed breakdown pictures and an IRIX hinv dump can be found here.
An O2's unique system ID (MAC address) is stored on the small PCI riser card that connects the PCI card holder to the motherboard. If this riser card is swapped, the corresponding black plastic badge on the rear of the case should be swapped as well to preserve consistency.
WARNING: The O2 system module should NEVER be removed or installed while the power cord is connected. Doing so can permanently damage the motherboard.
The O2 comes in two distinct CPU flavours; the low-end MIPS 180 to 350 MHz R5000- or RM7000-based units and the higher-end 150 to 400 MHz R10000- or R12000-based units. The 200 MHz R5000 CPUs with 1 MB L2-cache are generally noticeably faster than the 180 MHz R5000s with only 512 KB cache. There is a hobbyist project that has successfully retrofitted a 600 MHz RM7xxx MIPS processor into the O2.
There is also a hobbyist project that has successfully retrofitted a 600 MHz R7000 MIPS processor into the O2. In theory faster CPUs at 900MHz any beyond are possible, but this would require the public release of the O2 PROM source code which at present is not available and probably never will be.
A recall of some early versions of the RM7000A 350Mhz CPU is thought to have hastened the removal of the O2 from SGI's product line.
There are eight DIMM slots on the motherboard and memory on all O2s is expandable to 1 GB using proprietary 239-pin SDRAM DIMMs. The Memory & Rendering Engine (MRE) ASIC contains the memory controller. Memory is accessed via a 133 MHz 144-bit bus, of which 128 bits are for data and the remaining for error-correcting code (ECC). This bus is interfaced by a set of buffers to the 66 MHz 256-bit memory system.
Original SGI-branded O2 DIMMs are either single-sided (SS) with memory chips on only one side of the module or double-sided (DS), and are color-coded to assist in identification. 3rd party DIMMs may or may not follow these conventions. Knowing the current memory configuration is important as DIMMs must be installed according to a number of specific rules.
- The DIMMs in slots 1 and 2 make up Bank A. DIMMs in slots 3 and 4 make up Bank B, and so on.
- A bank of two slots must have a DIMM in each slot or be empty (except for slots 1 and 2, Bank A, which must always be populated.)
- The two DIMMs in any bank must be of the same size and type.
- The largest size DIMMs must be in Bank A.
- DIMM banks must be filled sequentially, beginning with bank A.
- Equal or smaller size DIMMs must be in Bank B, and so on.
- Do not skip banks, or the memory will not be recognized.
To install high density (128 MB) DIMMs, PROM revision 4.4 or higher is required. With older PROM revisions maximum memory is 256 MB. For IRIX 6.3 there are patches to upgrade the PROM as described in "Silicon Graphics® O2® Workstation Memory Installation Instructions", for IRIX 6.5 PROM images come with the operating system and overlays CD sets.
The CRM chipset that SGI developed for the O2 shares OpenGL calculations with the CPU. Due to the unified memory architecture, video memory is shared with main memory, and there is effectively an 'unlimited' amount of texture memory. Another useful feature is that any incoming video data from the Audio/Video option can be mapped directly as an OpenGL texture without having to perform a copy or move.
ICE (Image Compression Engine — a dedicated 64-bit R4000-based processor containing a 128-bit SIMD unit running at 66 MHz, which is used to accelerate various image and video operations)
The O2 Video system supports two simultaneous input video streams and one output video stream which can be separated into two outputs, one carrying pixel information, the other carrying alpha (key) information.
Using the O2 Video system, it is possible to capture live video into the computer's memory which can then be displayed in a graphics window on the screen or further processed by an application. It is also possible to generate video output from images in memory, which can be displayed on a standard video monitor, or recorded to a VTR. Using the VL programming library, a program can capture video in either the RGB or YCrCb color spaces, and either full or reduced size formats, and in a format usable for input to the compressor/decompressor, display on the graphics screen, or as an input to a graphics processing and/or texture operation.
SGI offered two video options for the O2/O2+: the AV1 interface and the AV2 interface.
The AV1 interface supports Composite and S-Video (Y/C) (both analog), and Digital I/O via the Camera/Digital Video port. The analog I/O jacks are for use with standard analog video equipment, supporting both PAL and NTSC video formats. There are a variety of controls available that allow the user or programmer to set various parameters used for the decoding and encoding of the video signals. The digital input of the AV1 is for use with the O2Cam Digital System Camera, or can be connected to an optional digital video input and output adapter to interface to standard SMPTE259M serial digital video devices.
The AV2 interface supports two ITU-601 (CCIR-601) serial digital video input connectors and two similar output connectors, as well as GPI input and output and analog (black burst) sync input and loop through.
I/O functionality is provided by the IO Engine ASIC. The ASIC provides a 33-bit PCI-X bus, an ISA bus, two PS/2 ports for keyboard and mouse, and a 10/100 Base-T Ethernet port. The PCI-X bus has one slot, but the ISA bus was present solely for attaching a Super I/O chip to provide serial and parallel ports.
The O2+ is a special variant of the SGI O2 with a purple/grey color scheme, top of the line multimedia, CPU and memory. It was produced in very low quantities and has remained a valuable item for collectors, selling for many times the going rate for O2s on average.
IRIX versions 6.3 and 6.5 (up to the latest overlay - 6.5.30) are supported on this machine, however, only in 32-bit mode, due to the nature of the O2's internal architecture. For CPU-specific versions, see also: IRIX for O2.
Besides the default CD-based Installation, the O2 also supports network installation.
The Toshiba CD-ROM drives in the O2 commonly throw a small white plastic gear from the tray motor. Symptoms include the tray either refusing to open or refusing to stay closed. This problem is relatively easy to fix by opening the CD-ROM drive and pushing the gear back onto the motor shaft, then adding a small amount of glue to keep the gear in place. To avoid damaging the tray mechanism during ordinary use, do not push it closed: use the "inject" command instead.
To quote kjaer in a Nekochan forum post https://web.archive.org/web/20170821000034/http://forums.nekochan.net/viewtopic.php?f=3&t=16726667 "...there is a pressfit nylon pinion on the transport motor that opens and closes the drive tray, and also raises and lowers the optical pickup assembly (moves it closer to the disc after the tray closes, and moves it away from the disk before the tray opens). This pinion splits when it ages, and when this happens the static friction between pinion and spindle is no longer sufficient to hold the torque required to lift the optical pickup. The drive interprets this as a mis-load and ejects the tray." A further discussion with images can be found https://web.archive.org/web/20170820231441/http://forums.nekochan.net/viewtopic.php?f=3&t=16727779#p7360973
The O2's proprietary memory modules are highly susceptible to dirt and shock, particularly during shipping. The symptoms of a bad memory contact include random memory errors and a total inability to boot, with a solid red or blinking amber LED at startup. Careful cleaning and re-seating of memory will typically solve such problems, though the DIMMs should also be carefully inspected for missing surface-mount components, which can be easily knocked-off via mishandling.