(Updated 2015-12 : SunOS, NextStep)
Actual copies from the video framebuffer memory on the FPGA board.
Check-out the videos on the “TEMLIB” channel on YouTube.

Linux RedHat 4.2


Linux Debian 4.0

(Very slow)

Linux Aurora 1.0

(Very slow)

NetBSD 5.1


OpenBSD 5.3

(wrong colours …)

SunOS 4.1.4

SunOS SunView
SunOS SunView
SunOS OpenLook

NextStep 3.3




12 thoughts on “Screenshots

  1. Very, very cool! You’ve basically built a good old sparcstation in FPGA. I still have a few sparcstations in my basement, running linux. Really an amazing achivement!


    • I have never tried to run Solaris nor SunOS. So I don’t really know.

      – Solaris can run on QEMU, using OpenBIOS, so it may be possible to run it also with TEMLIB, which re-uses OpenBIOS (and not Sun’s original firmware). As-is, Solaris could not start X11 because the graphic board is not emulated well enough (TCX). But it could be possible to imitate another video board, a simpler one, with minimal effort (CG3).

      – If you can make SunOS boot with QEMU, there is some hope that it could run on TEMLIB as well (And tell me if it works…). QEMU is quickly evolving, the information on the Web may be out of date.

      Ideally, after all the bugs are sorted out, TEMLIB should be able to run all the Sun4m operating systems, including SunOS, Solaris and NextSTEP.

      I don’t know what you want to do with SunOS. If you need to run very old software, QEMU is a good solution, with a recent PC it will be faster than the FPGA, and faster than an authentic Sun4m workstation.

  2. ” If you can make SunOS boot with QEMU, there is some hope that it could run on TEMLIB ”
    Yes. SunOS 4.1.4 boots on qemu 1.4.0 as a ss5 with the SPARCstation rom (not openBios) but with the -nongraphic flag.

    Here’s a link to sunos 4.1.4 on qemu:

    Here’s a link to the install media:

    Here’s a link to the SPARCstation 5 boot ROM:

    So, as you said, all you would need to boot and runs Sunos would be to add would be a cg3/cg6/bwtwo compatible frame buffer to your TEMlib fpga design. Please, please, please 🙂



    • Unlike QEMU, TEMLIB cannot use Sun ROMs because there are a few details that need to be initialised on the board before starting (see the patch in openbios_r4.tgz).
      Additionally, QEMU can use the original BIOS because it emulates some odd hardware which are not implemented on TEMLIB, for example the RAM EDC (parity bits) registers, used by Sun’s BIOS at startup to check memory.

      So, the best solution would be to manage to get SunOS boot with OpenBIOS. I will try a bit to see how it behaves… There were some fixes last year, mainly for NextSTEP (which still does not work), but now Solaris can boot, so we are probably not far off.

      TEMLIB’s current video card is TCX, but it does not feature any hardware acceleration. It works with Linux, whose X11 driver was not accelerated, but not with Solaris and latest NetBSD, which use all of the board features.
      The alternative would be a CG3, which is an authentic non accelerated framebuffer, already supported by QEMU and OpenBIOS. QEMU supports both TCX and CG3 precisely to be compatible with as many OSes as possible.
      (CG6 is too complex and undocumented, BWTWO is a bit too vintage but doable: OpenBIOS currently only supports 256 colours and 24bits truecolor, but TEMLIB’s framebuffer already supports 2 colours BW)

      You have some time? Are you worried that some critical 20 years old hardware is about to die?

          • That’s interesting.
            It does seem complete though, there is no detailed description of all the registers.
            Reading the accelerated NetBSD drivers could help fill the gaps, the NetBSD developer seems to have the docs.

            Anyway, I have to finish a new release, with some bugfixes and a few enhacements, practically fixing _all_ OSes. TCX and CG3 are already in QEMU and OpenBIOS, this is enough for Sun4m OSes, and the fact that we use main memory for the framebuffer (instead of VRAM on a SBUS card), gives tolerable performance.

  3. I’ve got time. I’ve been enjoying running old hardware on FPGAs. I have a PDP 11/34 with one RP06 and for RL02s running RSTS V7.07C on a de0nano cyclone IV from

    And I’ve be playing old arcade games on FPGA hardware with the help from the guys at

    I wanted to run my first workstation on an FPGA. It was a sun 3/80 (68030) running SunOS 4.1.1. The closest thing I could find was your SPARCstation 5 running Linux. I was hoping it would be a small amount of your time to get SunOS 4.1.4 working with a bwtwo. And then I could focus on getting it to run on the bemicro CV. It’s $50 from Arrow electronics and it has 128MB of DD3 DRAM.

    • I have tried SunOS : It hangs just the same way on QEMU (with OpenBIOS) and on the FPGA. This looks like a problem with memory management, there were a few patches last year, but I guess this is not enough. You will have to be patient !

      Note that current QEMU can directly support X display for SunOS using the “-vga cg3” option, without needing remote network display.

      For a 68030 FPGA workstation, there is the “apollo-core” CPU, but it seems a closed-source development specifically for Amiga fans.
      There are many cool projects around with FPGAs now. And FPGAs large enough are not insanely expensive anymore.

    • The Bemicro CV doesn’t have any perpherials so factor in that cost and headache to add them. May as well get a Cyclone V GX starter kit or a Xilinx Spartan 6 board which would be most similar with the SP605 board which is known to work.

      The Bemicro CV board looks basically like a breakout + ram.

      I helping with a partial port so far to the Cyclone V GX board from terasic its $180ish USD.

Leave a Reply

Your email address will not be published. Required fields are marked *