Interesting things to do to
Sun
hardware.
My little Sun SPARCstation IPX. Quite slow, although it's been upgraded with a Weitek Power-UP CPU and 64MB DataRAM SBus board to run about as fast as IPX's can go really. Mine now runs NetBSD, and in order to keep it running, it's benefitted from a couple of small hardware hacks.
I doubt there's an IPX that hasn't had a flat NVRAM battery by now. Thankfully I took heed of some good advice a long time ago, and dumped the contents of the NVRAM to parchment (enter .idprom at the "ok" prompt and write down the output) prepared for this day.
The Sun NVRAM FAQ is the authoritative guide to repairing all old Suns with this problem and although it claims that attaching a new battery to the existing NVRAM isn't worth the hassle, I had an eventful time trying to get a replacement chip to work 100%. (I notice there's now a note at the top of the FAQ stating that new chips of this specific type do not work properly anyway, so I wasn't going completely mad then!)
For this trick you will need:
Follow the instructions in the FAQ to expose the two metal connectors between the battery pack and chip and solder a new 3V battery to them. Here's the finished article as installed in my IPX.
When I still had an SPARCstation SLC, the NVRAM chip died without me having chance to backup the contents. Helpfully, someone on comp.sys.sun.hardware gave me a small C program that when given the 4-digit code off of the NVRAM barcode, would generate the serial number, host id and hardware MAC address.
I'm unable to credit the original author, but make it available here for anyone else:
Okay I lie, this was purely cosmetic, and because it doesn't crash very often (blatant plug for the incredibly portable, stable OS!), it's not seen very much but looks cool nonetheless.
I read this guide (particularly section 5.1) ages ago on how to alter in hardware the original Sun Framebuffer logo, and thought this would be cool to do to my IPX.
However, the onboard CG6 doesn't have a separate EEPROM (There's no matching chip anywhere on the motherboard) and both SBus slots are filled so I couldn't fit an SBus CG6 either. The guide states that in the case of no oem or framebuffer-defined logo, the logo displayed is from the OBP, so I thought I would have a go at hacking that.
Using a binary dump of the EPROM acquired by either temporarily removing and reading the chip from your own machine or using a copy from a site such as Craig Dewick's Sun Shack, I applied the same logic for finding the logo in the binary data as for finding it in the CG6 EEPROM, and after noting down the magic offset, using dd(1), extracted 10770 bytes of what I hoped was the logo data. This was converted back into an arbitrary image format (PPM is simple enough) and when viewed was the original Sun OBP logo. Jackpot!
Taking an appropriate logo and converting it into the necessary format using the cg6logo tools found in the guide above, using dd(1) again, I spliced the new logo data into the OBP binary dump at the offset noted previously, overwriting the original logo. This image was burnt onto a brand new AMD 27C020 EPROM and then plugged into the IPX in place of the original.
One IPX with a BSD Daemon logo.
Admittedly I was on a roll, one wasn't enough, I had to do another. Nothing quite as tricky, as the other machines use straight SBus CG6's so just a case of following the instructions.
The only problem was the necessary soldering skills needed to remove the original EEPROM from the SBus card. I have a few CG6 framebuffers, but prefer not to trash them with my clumsy soldering, until one day I found this card sat in my Sun SPARCstation 20, note the EEPROM is socketed! (The card appears to be tagged "Aries Research", so probably came from a Sun clone.)
It was then a simple case of following the aforementioned guide to patch a new bitmap into the dumped EEPROM image, buying and burning a replacement PLCC chip equivalent to the current one (150ns 27C256), which gave me a Tux logo when tested in my Ultra 170 Enterprise.
Now I'm just trying to let the hardware rest for a bit, I'm curious about the origins of the logo on the SX framebuffer in my SPARCstation 20, if it comes from the VSIMM I think I'll leave well alone. No big socketed chips on that!