The MAME emulation team is in serious need of additional Indy ROM images! Please don't re-flash your original EPROM without first confirming its version and reading out a copy of it with a programmer to be submitted to the collection. They currently have images B2, B4, B6, B7, and B10. All others are needed for archival. If your ROM version is not one of these, please get in touch with the MAME team.
There are two ways to get the ROM file, depending on if the EPROM has been removed from the system already or not. If it hasn't, see dexter1's post below mine for an easy way to dump the ROM from the console. If the chip is out of the system, instructions on reading and saving your ROM image with an EPROM programmer are in Addendum 1 on my second post.
Need an upgraded EPROM but don't want to go through the whole process? Send me a PM. I have a small supply of pre-programmed chips that I can provide for $5+shipping.
I recently upgraded the PROM in my Indy in order to support R5000 processors. This is a fairly straightforward process, but it is possible to make mistakes. If you attempt the instructions presented below, please be sure you read and understand them fully before proceeding. While I'm happy to provide assistance on the process, I can't be held responsible if you break something on your Indy while trying the upgrade.
Required Equipment
An EPROM programmer. I personally like the TL866ii Plus. They're available on Amazon or eBay, usually for around $45-$60 USD. Other models will likely work, but may involve different methods. This tutorial's instructions are explicitly for this programmer. Previous models in the TL866 series should also work.
A 27C4096-120 (or faster) EPROM. eBay sellers usually have them for $2-$3 USD each, but may only sell in batches of 5 or more.
The updated ROM image for the Indy. Although this is available on the Internet with some searching, that version will not work with the TL866ii Plus without modification. (We'll discuss why that ROM image doesn't work below.) Instead, I recommend using the prepared ROM in the attachments.
Basic tools and other supplies, including a Phillips screwdriver, a socket driver or pliers, and opaque tape to cover the EPROM window.
Optional Equipment
An R5000-series CPU module, as that's the main reason to perform this upgrade.
A UV EPROM eraser. I bought a cheap model from Amazon. I recommend this, as it will be the only way other than flashing multiple chips to correct any mistakes you may make in the flashing process.
An IC removal tool. This isn't strictly necessary, but it helps for removing the existing EPROM from the Indy. You can also use a flathead screwdriver, but I don't recommend it. It's very easy to break something and IC removal tools are inexpensive.
High-percentage isopropyl alcohol. This is only really needed if you're re-using an EPROM that's already had a sticker on it, or if you made a mistake and need to erase the chip. Cleaning the window with alcohol lets more UV through and speeds up the erasure process.
For Linux and MacOS systems, Wine. FOSS software does exist for the TL866-series of programmers, but I still recommend running the Windows application via Wine at this time. If you're using the software through Wine, you'll also need the setupapi.dll file available here: https://github.com/radiomanV/TL866/tree/...ne/TL866II. Some tweaks may be required for MacOS. Unfortunately, I'm currently unable to test the software on a Mac.
Let's Program an EPROM!
Download and extract the software and drivers for the TL866ii Plus from the link above. Install the software and approve the driver installation when prompted.
Insert your 27C4096-120 or equivalent EPROM into the programmer. Be sure to match the notch in the chip with the direction indicated on the programmer when inserting the chip. Then, lower the lever to lock the chip into place. Finally, plug the programmer into your computer via USB.
Load the software. On first boot, you may receive a message stating that the programmer firmware is out of date.
If you see this, after closing the prompt, select "Tools -> Reflash Firmware". You'll receive a dialog box that looks like the one below. Select "Reflash" and wait for the process to complete. At this point, close the dialog box and the software. You can then reload it.
With the programmer firmware up to date, you'll be greeted with the main window upon closing the software.
Click on the large button below the words "Select IC" in the top left of the main window. This will open a dialog box allowing you to select the type of chip being used in the programmer. Depending on the manufacturer of your particular EPROM, you may be able to find their variant of the 27C4096 in the list of vendors and names. If not, I recommend just selecting the AMD version, the AM27C4096 @DIP40. The specific model is only relevant for a check that we'll disable in the next step. The image will still burn properly. One you have the chip selected, click "Select".
In the bottom left of the main programmer window, uncheck the checkbox labeled "Check ID". This will allow the programmer to read, write, and verify data on the chip even if it isn't an exact match to the manufacturer. The rest of the settings can be left at their defaults.
At this point, we need to make sure that the EPROM is blank before we program it. To do this, in the main programmer window, go to "Device -> Blank Check". Click the "Blank" button to begin. If the chip is not blank, you will see a message like the one below. In this case, you will need to use a UV EPROM eraser or select an alternate chip to program.
If the chip is blank, you will instead see a window resembling the one below. At this point, you can select "Cancel" to exit the dialog.
We're almost ready to program the EPROM! Extract the indy_rom_011.tar.gz file from the attachment, which should be named indy_rom_011.bin. Then, in the programmer window, select "File -> Open" and select the .bin ROM file you just extracted. A new dialog box resembling the one below will appear. Leave all settings at their defaults.
In case you didn't obtain the file from the attachments below (and, ideally, just for good measure), we should make sure that the data is correct before we burn the EPROM. Using the scrollbar on the right side of the main programmer window, scroll down and look at the "ASCII" column. Eventually, you should find readable text, like the example below.
If, instead, the text appears to be jumbled, like in the example below, then the ROM file you have needs to be byte swapped in order to work with this programmer. Byte-swapping the Indy ROM file is currently outside the focus of this tutorial, but instructions will likely be included at a later date.
With this done, go to "Device -> Program". A dialog box like the following one will appear. Upon clicking the "Program" button, the device will begin the programming process. This will take a few minutes. Upon completion, a verification pass will be run. You should receive messages like the ones below indicated successful programming and verification. Once complete, you can click "Cancel" to close the dialog box.
At this point, you can close the programmer software and disconnect the programmer device from your computer's USB port. Then, raise the lever to allow the removal of your newly-burned EPROM.
In order to preserve the data burned to the EPROM, a sticker or piece of opaque tape should be placed over the window on the top of the EPROM. This prevents any potential strong UV light from erasing the data on the chip. While this isn't generally much of a concern unless you're burning EPROMs out in the sun or shining bright lights inside your Indy, it's still best practice.
Note: the chip in the image below is the original, re-flashed EPROM from my Indy. The 27C4096 is a newer, equivalent EPROM to this one.
Installing the EPROM in Your Indy
Now that we have an actual EPROM burned, it needs to be installed into the Indy. To start, remove the cover from the top of your Indy. This can be done by applying a small amount of downward pressure on the black clip on the back of the Indy, while applying forward pressure on the blue tab on the cover. The cover will slide forward, revealing internals similar to the ones below.
Note: my Indy has a SCSI2SDv6 installed in the top left. Yours will likely have a SCSI hard drive and sled in its place.
In order to install the new EPROM, the graphics board (in the bottom left) will need to be removed. This will vary depending on the model of graphics board installed in your Indy. In the case of this 24-bit module, two of the long standoffs and one screw need to be removed. Also, the two lugs on the sides of the 13W3 connector also need to be removed. With the board out of the way, the EPROM below is revealed, just beneath the two graphics board connectors. I've left the EPROM window clear in this example picture for better illustration. In a stock Indy, this will be covered by a white or yellow label indicating the EPROM version.
Using an IC extractor tool, carefully wedge each end of the tool underneath one of the short sides of the EPROM. Gently pull up until the chip is unseated from its socket.
With the stock EPROM removed, the socket below is ready to accept the newly-burned chip. Again, be sure to align the notch in the chip with the notch in the socket when inserting the new EPROM. If you install it backwards, it's possible that damage to either the EPROM or the motherboard could occur. On my Indy, the notch on the socket is toward the inside of the board. However, be sure to verify this on your own board.
With the new EPROM in place, you can reverse the disassembly steps to reinstall the graphics board and close the Indy. Plug it in, and if all goes well, the light will turn green and you'll hear the lovely startup chime!
To confirm the upgrade to the PROM, you can halt the boot process and enter the Command Monitor. Type the version command. You should receive the following result: PROM Monitor SGI Version 5.3 Rev B10 R4X00/R5000 IP24 Feb 12, 1996 (BE)
... and that's the installation! If you run into any issues during the process, or have any questions, please post them below. I'll try to help out with issues as best as I can.
(VW 320) (VW 540) (VW 550) (Prism Rackmount)
(This post was last modified: 07-11-2019, 10:31 PM by kaigan.)