SGI Indy
The Silicon Graphics Indy is a graphics workstation from 1993 that packs a lot of features in a small "pizza-box" form-factor that was popular at the time. The Indy is the lower-end successor to the Indigo workstation (the higher-end successor was Indigo2) and has built-in video capture hardware — it also shipped with an IndyCam, a webcam-like camera that was intended for video conferencing. The Indy was succeeded by the O2 workstation in 1996.
Table of contents
Hardware configurations ↵^
The available Indy configurations differ only by the installed processor and graphics options, the motherboard and chassis are the same across the entire product line.
There was a variant of the Indy called Challenge S, which was basically an Indy without graphics and any audio/video I/O. It's not possible to convert a Challenge S into an Indy, as its motherboard is missing a lot of components.
There were two kinds of power supplies for the Indy — the older Nidec one (SGI P/N 9430813) and the newer Sony one (SGI P/N 060-0008-001). The Sony PSU is allegedly more reliable and quieter, but has worse ventilation, since its fan doesn't run all the time, which may be an issue for some higher-end Indy configurations in hotter climate.
Processor options ↵^
Processor | Clock speed [MHz] | L1 cache I/D [kB] | L2 cache I+D [kB] | Module part number |
---|---|---|---|---|
R4000 | 100 | 8/8 | none | 030-8100-00x |
R4000 | 100 | 8/8 | 1024 | 030-8245-00x |
R4400 | 100 | 16/16 | 1024 | 030-8260-00x |
R4400 | 150 | 16/16 | 1024 | 030-8201-00x |
R4400 | 175 | 16/16 | 1024 | 030-8205-00x |
R4400 | 200 | 16/16 | 1024 | 030-0882-00x |
R4600 | 100 | 16/16 | none | 030-8236-00x |
R4600 | 133 | 16/16 | none | 030-0752-00x |
R4600 | 133 | 16/16 | 512 | 030-8252-00x |
R5000 | 150 | 32/32 | none | 030-0991-00x |
R5000 | 150 | 32/32 | 512 | 030-0986-00x |
R5000 | 180 | 32/32 | 512 | 030-0985-00x |
Some processor options require a PROM upgrade to work. The R4400/200 processor needs PROM version "July 15, 1994" or later, the R4600/133 needs "Sept 28, 1994" or later, and the R5000 processors need "February 12, 1996" or later.
The PROM can be upgraded to a newer version only by using an external EPROM programmer, since it's stored in an older UV-erasable EPROM chip (M27C4002-12FI, a 256Kx16 device with 120ns access time).
Memory options ↵^
The Indy motherboard has 8 sockets for industry-standard 72-pin FPM (fast page mode) SIMMs with parity. Use 60ns or 70ns SIMMs (60ns is faster).
The maximum configuration is 256MB (eight 32MB sticks) and the minimum is 32MB (eight 4MB sticks). Sticks must always be installed in groups of four equal sticks. Fill the slots nearest to the power supply first.
Graphics options ↵^
Indy has two different families of graphics options that attach to its GIO32bis bus: Newport (XL) and Express (XZ). Both implement OpenGL 1.0 (plus SGI extensions).
There are two different Newport (XL) graphics boards: XL8 (8-bit color, part number 030-8124-00x) and XL24 (24-bit color, part number 030-8131-00x). A dual-head XL8 configuration is possible, but requires a special dual-head board (part number 030-0899-00x), since it's not possible to just plug in two XL cards.
The Express (XZ) graphics come in only one form: a two-board set (part number 030-8234-00x + 030-8235-00x). The advantage over the XL boards is that XZ does geometry calculations in hardware instead of on the main CPU. However, in an R5000 Indy, the CPU is faster than the geometry engine on the XZ graphics, so the XL boards are preferable in this case (unless you also need depth-buffering [e.g. when doing 3D CAD], in which case the XZ board takes the lead again). No dual-head option is available for XZ graphics, most likely because of physical constraints (i.e. size of the boards and their heat dissipation).
The PROM version must be "June 20, 1994" or later to support XZ graphics.
None of the graphics options on the Indy support hardware texturing.
Audio/Video I/O options ↵^
The Indy comes with quite a few built-in multimedia I/O ports:
- 1/8" jacks for: line in, line out, headphones, microphone, speakers,
- composite video input,
- S-video input,
- connector for the IndyCam camera.
Apart from the built-in options above, the following two GIO video cards were available:
- Indy Video (part number 030-8138-00x) — provides uncompressed analog video I/O with composite and S-video ports.
- Cosmo Compress (part number 030-8139-00x) — provides MJPEG compression and decompression, connects to the Indy Video board via an internal ribbon cable.
Dallas RTC chip replacement ↵^
As in all other systems using these all-in-one Dallas RTC modules, the module's battery eventually fails. On the Indy, this also erases the Ethernet MAC address of the system (sets it to ff:ff:ff:ff:ff:ff
).
The RTC module is a DS1386-8K-150, which is no longer produced, but is still available from various Chinese sellers (the faster -120 variant is also compatible). However, note that buying a used module may not give you the full 10-year battery life, so it might be more prudent to follow one of the many online guides to replace the internal battery with a CR2032 socket and using replaceable standard batteries instead.
In any case, once you replace the module or the battery, you will need to program the MAC address into the memory of the RTC module.
To reprogram the MAC address, follow these steps:
- Press esc, then 5 to enter the Command Monitor.
- On the command prompt enter
resetenv
to put a clean set of PROM environment variables into the new Dallas RTC chip. - After that, enter
setenv OSLoadFilename /unix
so that the PROM knows where the IRIX kernel is located on the drive (resetenv
doesn't always do this automatically). - Locate a sticker on the back of the system (where the ports are) that has the original MAC address assigned to the machine written on it (the address should always start with
08:00:69:...
) - To program the MAC address
08:00:69:c0:ff:ee
, enter the following:fill -w -v 0x08 0xbfbe04e8
fill -w -v 0x00 0xbfbe04ec
fill -w -v 0x69 0xbfbe04f0
fill -w -v 0xc0 0xbfbe04f4
fill -w -v 0xff 0xbfbe04f8
fill -w -v 0xee 0xbfbe04fc
- Optionally, enter
dump -w -x 0xbfbe04e8
to verify the values. - Optionally, set the time and date using the
date
command. - Type
init
to reboot, and you're done!
Note that while it may look tempting to use setenv
to set the eaddr
variable containing the Ethernet MAC address, it will not work (at least on the latest PROM version) — it will complain that the variable is read-only. You must use the longer procedure described above.
My Indy ↵^
My Indy is rather low-end, with just a 100MHz R4600 CPU (with no L2 cache!), 32MB of RAM, an XL8 graphics card, and IndyCam.
I've also been given some spare parts, probably enough to build another Indy.
Pictures ↵^
Documents ↵^
- Indy Workstation Owner's Guide (PDF, 3.6MB)
- GIO64 Bus Specification (PDF, 224kB)
- MC (Memory Controller) ASIC Specification (PDF, 177kB)
- DMUX1 ASIC Specification (PDF, 89kB)
- HPC3 ASIC Specification (PDF, 184kB)
- IOC2 ASIC Specification (PDF, 50kB)
- Virtual DMA Specification (PDF, 272kB)
- Newport graphics REX3 (Raster Engine) ASIC Specification (PDF, 336kB)
- Newport graphics VC2 (Video Controller) ASIC Specification (PDF, 138kB)
- Newport graphics RB2 (RAM Buffer) ASIC Specification (PDF, 33kB)
- Newport graphics RO1 (ReOrganizer) ASIC Specification (PDF, 32kB)
- Newport graphics XMAP9 ASIC Specification (PDF, 70kB)
Firmware ↵^
- SGI Indy PROM 070-9101-011 (raw binary dump, 512kB) — raw dump of the M27C4002-12FI UV-erasable EPROM containing the latest version of the Indy PROM with R5000 support. I've dumped this using a TL866CS programmer and the open-source minipro tool ("M27C4002@DIP40" was specified as the device type).
Links ↵^
- SGUG Forums — Indy Power Supply information by Elf — an excellent collection of information about Indy PSUs (both Sony and Nidec), including pinouts, ripple measurements, etc.