Sun SPARCStation 20

Introduced in 1989 Sun SPARCStation series of computers was popular among smaller UNIX machines. They allowed to use Unix-type operating system on a small computer with effective CPU and larger amount of memory. The last model of this series was SPARCStation 20 released in 1994 or 95 (developed under codename "Kodiak"). It has a nice expansion capabilities using horizontally mounted boards while preserving a small "pizza-box" type casing. SPARCStation 20 can have multiple CPUs to support large computations and maximum amount of RAM was 512MB - unimaginable in mid-1990s. These computers were used in applications where larger processing power was needed - in graphics, rendering, or computer simulation. Later many expansions came in, including 200MHz CPUs.
 According to this article, quad-CPU SPARCStation 20s were used to render the famous Toy Story movie (another photo from Reddit).

Manufacturer Sun

Origin USA
Year of unit 1995
Year of introduction 1994-5
Class Sun SPARC (sun4m)
CPU SuperSPARC 390Z56G (390Z55)
Speed 50MHz?
RAM 192MB (32x6)
ROM Sun boot ROM
Graphics Sun TurboGX graphics card
(2D acceleration, 8-bit)
Sound ...exists
System expansion bus Sun MBus (for CPU)
Sun SBus (expansions)
Floppy/removable media drives 1x 1.44MB? 3.5" FDD
1x SCSI CD-ROM drive


Hard disk: IBM 4.3GB, SCSI, SCA

Power supply:

Peripherals in collection:
 - Original keyboard and mouse

Other boards:


Graphics board
Non-standard expansions: None
Operating system(s): Sun Solaris 2.6

My unit has been used in some software development company. It ended in my hands from e-waste with BSD on its hard disk. I formatted it and put a fresh inastll of Solaris 2.6 with Common Desktop Environment as well as Sun StarOffice 5.1. Afte reworking RTC chip to support external battery it works.

Contents: Starting, usage Configuration Upgrades Links


The computer contains a chip, M48T18, which has embedded a Lithium non-rechargeable battery. The procedure to rework it to use normal CR2032 battery is described in Sun Ultra1 page.

If the unit still doesn't start, it should be checked using serial port debugging. Prepare another PC with serial port and terminal software, even HyperTerminal can do its job. Remove CPU board. You will find two jumpers (not the one closer to PSU!)  named J0801 and J0802, they are responsible for deciding is serial port RS485 or RS232. Move the jumpers closer to power supply to switch serial ports to RS232 mode.
Now connect the another PC. Look for "A/B" connector on the rear, connect its pin 7 to serial port's GND line and pin 2 to PCs "Rx". You are ready. Set PC's terminal to 9600baud, 8-bit, no parity, 1 stop bit and turn the Sun on.

The first thing you should see is the following:

Power-ON Reset

This appears almost instantly on reset signal/power on. Then it will start tests like:

   SMCC SPARCstation 10/20 UP/MP POST version VRV3.45 (09/11/95)
CPU_#0 TI, TMS390Z55(5.x) 1Mb External cache
CPU_#1 ******* NOT installed *******
CPU_#2 ******* NOT installed *******
CPU_#3 ******* NOT installed *******
<<< CPU_00000000 on MBus Slot_00000000 >>> IS RUNNING (MID = 00000008)
MMU Context Table Reg Test
MMU Context Register Test
MMU TLB Bit Pattern Tests
MMU Flush Tests
. . .

and watch for results.





Continuing the previous section, if the battery is bad (and usually is) it will stuck for a while in "Setting Real Time Clock" and then:

Starting real time clock...
Incorrect configuration checksum;
Setting NVRAM parameters to default values.
Setting diag-switch? NVRAM parameter to true

It means that you have to replace or rework NVRAM and configure it like Sun Ultra1, but with System ID 72. As with this Sun, you can always call the boot prompt by holding Stop+A at boot (at white screen). Installing operating system doesn't look different than in Sun Ultra1 and you should be also careful not to damage your hard disk by erasing its own geometry tables.

There is a common misconception about place from which this computer can boot. Some sources inform that SPARCStation can't boo from partitions larger than 2GB. This is not true, it cannot boot from partitions which are placed past the first 2GB on a drive. So by carefully partitioning the disk when installing OS (and moving the swap somewhere else, as it goes as first or second by default) it is possible to have root partition bigger than 2GB.

It is possible to install Solaris 2.4 up to 9 (it is 2.4, 2.5, 2.6, 7, 8, 9, they dropped "2." with version 7) but for a good performance 2.5 or 2.6 is enough. It is theoretically possible to get Linux or BSD on it, but with their bloated X environments it will not go well as CPU and memory are limited.





A typical upgrade in this Sun is RAM. It can get maximum 64MB in one stick, so 128MB sticks will not work. Be careful where you put the RAM - check in a service manual for banks order as RAM must be in continuous banks. If not, the boot prompt will not detect any error, but the system will panic.

To upgrade CPU, not only a new CPU board is needed, but in many cases, especially non-Sun CPUs like Ross ones, it is also needed to replace the EPROM.

If the CD drive doesn't work, another CD drive or recorder may be freely used to boot and install OS. Hard disk is an ordinary SCA drive used e.g. in some servers. Remember only to make drive label and then partition, not low-level format it.

There are two methods of upgrading video performance: First is adding video memory in a common SIMM like typical Sun's memory expansions. The second one is installing a separate video board with own accelerator chip and memory.




Links: - General information - Service manual - A much upgraded version in a blog post - Someone tried BSD on it - Service guide with drawings - Information about expansions - Faq about old Sun systems - Sun Graphics boards FAQ - Table of Sun systems