My complete SGI Ultra64 dev set + manual scans + dev software
Hello Youtubes!
Err, that's not right.
Hello Assemblergames!
Several years ago I was kindly given a complete and functional SGI/Nintendo Ultra64 dev machine, and I noticed right away that the internet was a little short of information on it. At least, consistent, factual information. So I thought I'd post what I know about mine here. And because it's complete I can go beyond pictures. I also have scans of the entire dev manual and a dump of the software install tape. Can someone confirm if I'm permitted to post those things here?
In the mean time, here's the story.
Back in August of 2008 I was browsing Craigslist here in Vancouver for old weird computer stuff when something very unusual caught my eye. The ad was titled "FREE - Nintendo 64 development system." The internet said there was two different types of N64 dev kit, one in an SGI and one stand-alone. In either case I was interested. I sent the owner an email saying how happy I'd be to pick it up, and as soon as he confirmed it was still available I hurried as fast as I could toward Commercial drive to get it.
What I found when I got there exceeded my wildest expectations. It was a complete SGI Indy-based Ultra64 machine. It had the SGI monitor, keyboard, mouse, IRIX discs, even the mousepad. But it also had all the Nintendo parts. The thick dev manuals, the controller and breakout board, and the software to run it all.
The owner was an ex-developer, having worked for a now defunct games company. When the company was winding down he had called Nintendo to ask if they wanted their old dev machine back. Being a first gen N64 dev machine at a time when the Gamecube was already out, they told him to keep it. And that's what he did. He packed it up and took it home with him. There it sat in his closet for the next ~6 years until the missus insisted it go.
He told me all about how he used that very machine to make games. He said that when they first got their machine, it had a very hand-made dev card in it, which was later replaced by the more professional one that's now in it. He also said that in both cases, the cards ran so hot that the computer would regularly crash. And so included in the package was a 120mm AC fan from Radio Shack which they'd bought and the cereal box shroud they'd made to draw heat out of the computer.
And he really was willing to give it away for free. So I thanked him profusely, and together a friend and I lugged the whole kit back to my house.
Here's a photo of its first run on my desk alongside my PC. It's running one of the included tech demos, and the output of the 64 is routed back into the SGI's video capture card so that it can be displayed on-screen.
Here we see the Tandy/Raisin-Bran joint cooling solution.
This is the inside of the machine. It's a somewhat middle spec Indy, with a 175MHz R4400 CPU, but only 32 megs of RAM. The original Seagate Barracuda hard drive has been replaced at one point by a 9 gig IBM. It's running IRIX 6.2. Both expansion slots are taken up by the dev board.
Here is the rev 2 Ultra 64 development board. Or should I say, DEVELOPMNET. The two chips on the right of the heatsinked CPU are the RAMBUS memory, while the 8 chips to the left are standard DRAM used as a cartridge emulator. This is where games under development are stored when running on the card. Sadly they only total 16 megabytes (128 megabits) and so this dev kit wasn't usable for the last few N64 games developed. No Majora's Mask here. Also no way to connect the expansion pak.
Backside of the board showing hand modifications, and the pair of GIO32 slot connectors for interfacing with the SGI.
The elusive controller breakout board. According to the manual, the first devkits came with prototype N64 controllers with telephone jack style plugs that could connect straight to the dev board. Later on these were replaced with production-style controllers that interface through the above adapter.
Backside of the adapter.
And even more important, the dev manual. This is over 600 pages of detailed tech info. A friend of mine kindly ran each and every page through his automatic document feeding scanner for me and provided me with a PDF.
You can download a copy of the entire manual from http://www.jax184.com/projects/ultra64/Nintendo%20Ultra64%20Programming%20Manual+Addendums.pdf
This contains the following:
Nintendo 64 Programming Manual - NU6-06-0030-001G of October 21,1996
Z-Sort Microcode User's Guide - NUS-06-0164-001A January 9th 1998
So if it wasn't clear already, this is a very different kit from the later units that resemble production N64s. While those units were basically standard N64 with flash cartridges that needed to be plugged into a PC, this early Ultra64 kit is mounted inside the computer on which the work is performed. It's an all-in-one solution. And the SGI Indy wasn't an arbitrary choice for host machines. SGI worked with Nintendo on the development of the N64, and both the SGI and the N64 use a MIPS CPU. This made software development easier.
The downside, as mentioned above, is that it can't be expanded the way the later dev kit could. This, combined with the cost of buying an SGI Indy, no doubt lead to the creation of the second devkit. Even so I'm happy to have such a cool unit to play with.
Is there anything I can do to help fill in the gaps about this rare machine? And does anyone know if it's okay for me to post the dev manual and software?