i960 Unix Workstation – HDS / Neoware @WorkStation

(This is a guest post by Antoni Sawicki aka Tenox)

Around 1998/99 or so I was involved in a large deployment of Windows NT TSE (Terminal Server Edition) with Citrix Metaframe, for a Forbes top-100 listed corporation. The general population were using plain boring Neoware thin terminals with ICA client for their daily tasks.

Unidentified generic Neoware thin client pic stolen from ParkyTowers

Managers and higher ups were using “high end” Neoware “workstations”. Actually named “@workStation Prima”. They had options for TV and AV capture cards, teleconferencing, streaming and multi screen. However no one really used these advanced features and the expensive workstations didn’t provide any extra functionality or value in practice. Just bigger, fancier and made you look more important in the corporate rat race.

For the more perceptive observer however they did have some interesting curiosities hiding inside the pizza box. Firstly they were rocking Intel i960 !

Secondly if you pressed the odd “Don’t login” button at the ICA screen, you would land at a full blown desktop with some apps, games and a terminal with local shell. The OS (named netOS) was some proprietary i960 UNIX. Because it did feature mostly GNU apps I assumed it simply must have been an embedded Linux distro and didn’t make much of it.

Neoware netOS 3.2 Desktop
netOS @workstation advanced TV/AV/streaming options

Fast forward almost 30 years, Rico scored a copy of Neoware netOS install media and some people even got it installed. Out of nostalgia, I also wanted to do some archeology here and play with i960 iron. Bought one of these Neoware @workstation terminals at eBay and got the OS copied to my tftp/nfs server and booted it up.

Good memories and fun with ICA and XDMCP terminal. But I wanted to see what else can be done with the i960 iron. I started looking at the OS kernel and tools. Upon closer inspection of the binaries, turns out these are not Linux at all (also i960 doesn’t have MMU so it could not run it anyhow), instead it seem to be 4.4-BSD based.

AFAIK an official SDK was never publicly available. But applications like NEdit, XScreensaver and even Netscape Navigator shipped with the OS so they must have been ported to netOS internally. Fortunately with help of LLM I was able to do some reverse engineering and map out the binary format and syscall interface. GCC 2.95 did support i960 ISA and Binutils 2.11 was able to produce somewhat compatible binary format. i960-intel-nindy is the closest triplet (nindy is the i960 ROM monitor). The rest was history. An unofficial netOS SDK was born in an evening.

Aclock on i960 UNIX

For now it can compile just the simplest C apps, but I will expand it more. I want to port SimCity!

Last but not least the “premium workstation” has an IDE port and allows installation of a hard disk for local boot. This makes it lot less of a network booted terminal and more of a proper workstation. I slapped on an industrial IDE DOM, fdisk/newfs and got the OS copied to it using provided script:

Now I have a full blown i960 UNIX graphical workstation with local OS and SDK. Hopefully one day it can self host its own toolchain!

netOS documentation is available from https://tenox.pdp-11.net/os/netos/Documentation/
netOS sdk https://github.com/tenox7/netos-sdk

Update: now we have rshd, telnetd and even busybox !!

studio:/Users/tenox> telnet 192.168.1.11
Trying 192.168.1.11...
Connected to 192.168.1.11.
Escape character is '^]'.
netOS telnetd - exit or ^D to quit
NETOS> busybox sh

BusyBox v1.00 (2026.09.27-09:42+0000) hush - the humble shell v0.01 (testing)
Enter 'help' for a list of built-in commands.

~ # version
Server Code Version: 3.2-D (Build 560)
PLCC Boot PROM Version: 3.1.1-E (Build 12)
netOS Version: 3.2 netOS for the Enterprise with ICA
~ # 

TTY City – Micropolis (SimCity) For The Terminal!

(This is a guest post by Antoni Sawicki)

In the past I did some and some more work on SimCity/Micropolis to bring it to vintage computing. This old DUX SimCity / Micropolis works remarkably well, but because of the TCL/TK and X11 UI, platform availability is quite limited. I have previously also ported Micropolis to Windows NT (RISC) as WinTown.

But thats not enough! I wanted to run SimCity on a vintage Unix without dependency on X11 and TCL/TK. The game graphics (basically a map) is quite simplistic and structured. I was wondering if text mode rendering would work. Quite a while ago I winged up a quick ncurses based map/city viewer and it was quite promising! Fast forward to today… Behold TTY City!

The game is quite usable and playable. In a modern terminal it even supports mouse with panig and simple animations. Earthquakes look pretty cool!

The monochrome terminals are little more difficult, but I’d say is playable.

Here is a picture from an actual DEC VT420! Not bad!

When perfecting the letters and characters, I had this idea… what if modern terminal amenities could be used… like Unicode Emojis perhaps? After all you can have these 🌲🌳🌴🌵 and these 🏠🏡🏢🏭 in rendered in a terminal❗

Behold Unicode Emoji Terminal SimCIty!

Available from: https://github.com/tenox7/ttycity – there are no releases or packages yet, as it’s work in progress but expect it to be available for most modern and vintage operating systems!

PRs welcome!

Have fun with Virtualization!

VNC Brave

(This is a guest post by Antoni Sawicki aka Tenox)

Previously I have cobbled up this FIrefox+VNC Docker container – “VNCFOX” to address some shortcomings of web browsing on vintage computers.

It worked quite good but I did not particularly like some of the Firefox/Mozilla foundation controversies and policies. Started looking for alternatives, but the situation was quite grim. Ladybird Browser is still in active development. Chrome exterminated Ad Blockers. Brave was over bloated with crapware.

TIL Brave has released “Origin” version which is minimal and void of all the garbage features, but still has a fully functional Ad Block! Normally Origin asks for a one time license purchase, however Linux version is free. Since Docker is Linux… a perfect fit for the use case! VNCBRAVE was born.

https://github.com/tenox7/vncbrave

https://hub.docker.com/r/tenox7/vncbrave

Running:

docker run -d \
    --name vncbrave \
    -p 5900:5900 \
    tenox7/vncbrave:latest

You may also want to create a volume to store settings, cache etc.

docker volume create vncbrave
docker run -d \
    --name vncbrave \
    -v vncbrave:/home/vncbrave/.config/BraveSoftware \
    -p 5900:5900 \
    tenox7/vncbrave:latest

In practice is so nice that I wrote this article on HPUX 10.20 with VUE desktop:

VNCBRAVE – Brave Origin with VNC Server as Docker Container

I also added routing of Brave active tab title in to VNC “Desktop Name” so it shows in the client window if supported.

I also typically switch to compact mode to save some real estate and make some other settings like solid background color, tab suspension and aggressive ad blocking.

A collection of TightVNC ports for old OS is available here.

If you can, please suport folks at Brave with one time license purchase!

Brave macOS LAN Access

(This is a guest post by Antoni Sawicki)

This is one of these “note to myself” and hopefully it will help someone else as the internets and robots are not very helpful.

Problem: on a Mac, Brave Browser will not connect to anything on the LAN. 192.168.x.x, 10.x.x.x, etc. Maybe with exception of the router / default gateway.

You tried everything, disabling shields, changing https/ssl/tls options, flags, advanced network settings. Nothing helps. The internet and AI tells you this is how Brave is, secure by default nonsense, nothing can be done about it. Well BS. This is how to actually fix it:

System Settings → Privacy & Security → Local Network → “Brave Browser ON”.

Thats it! After you toggle it, Brave will be able to connect to anything on the LAN, even without HTTPS if you allow it.

SABRE Fighter Plane Simulator for Windows NT RISC

(This is a guest post by Antoni Sawicki aka Tenox)

SABRE is a little known flight / fighter combat simulator set around F-86 and MiG-15 jet fighters and Korean War. Developed by Dan Hammer and originally hosted at sabre.cobite.com. It was available for Linux and Windows. While GPL the Windows source code was not widely available for download, but Dan eventually released it on his website. Someone put it on github. There has been an Alpha AXP version floating around. But no MIPS, PowerPC, Itanium or ARM.

I got to work and with help of robots was able to downgrade VS2008 code to compile on VS4 and got it built for Alpha AXP, MIPS and PowerPC! It’s surprisingly fast and high FPS even on slowest machines! Great game for your NTii!

SABRE Fighter Plane Simulator running on Alpha AXP Windows NT 4.0

https://github.com/tenox7/sabreNT

Also, if you don’t have NT RISC hardware to try it, it works on NT MIPS QEMU. There also is a port to MacOS including Apple Silicon.

OpenTTD Windows NT RISC

(This is a guest post by Antoni Sawicki aka Tenox)

A couple of years ago 1984 aka Nitton Åttiofyra ported OpenTTD to Alpha AXP Windows NT. This was a monumental work and we’re extremely grateful for this!

However I was not fully satisfied with this, as I could not run it on MIPS or PowerPC. This port required Visual Studio 6.0, which is not available for either of these platforms. Downgrading the code to compile with older visual C was quite a lot of work for which I did not have time.

Fortunately now we have a tireless army of robots to perform code rewrites. With help of LLM I got it to build on Visual C 4.0. Now available for all NT RISC platforms!

OpenTTD running on Windows NT MIPS on QEMU

Download from here.

Have fun with virtualization!

WinTown – Micropolis (SimCity) for NT RISC

(This is a guest post by Antoni Sawicki aka Tenox)

If you ever wanted to play SimCity on a NT RISC machine, your dreams finally came true!

WinTown aka Micropolis aka SimCity running on NT MIPS

The initial port happened some time last year but it was quite buggy and not fully playable. This release fixes all major bugs. Most importantly however it wraps around the original Unix SimCity C code from DUX instead of re-implementing it. Only the Win32 / GDI, dialogs, etc is custom Windows code.

Rlease 0.6 binaries: https://github.com/tenox7/wintown/releases/tag/0.6

Supports Alpha AXP, MIPS, PowerPC, Itanium (IA64) and ARM. Currently targets NT 4.0 and above, but work is being made to make it run on NT 3.1.

Github Repo: https://github.com/tenox7/wintown

Please report bugs and contribute, PRs welcome!

OpenVMS 7.3 VAX on SIMH via Docker – With VNC to DEC Windows

(This is a guest post by Antoni Sawicki aka Tenox)

I wanted to recompile the new smg$routines version of aclock for vax/vms and started messing with SIMH VAX emulator. Thought it would be cool to be able to run it as a Docker container. Here it is:

https://hub.docker.com/r/tenox7/openvms73

https://github.com/tenox7/docksimhvaxvms

To run, simply:

docker run -it --rm tenox7/openvms73:latest

If you want to telnet to it add -p 23:23.

If you want to persist state of the OpenVMS image add -v .....:/data.

Login as system / system

Have fun with virtualization!

UPDATE: Now it also includes a built-in VNC server that does XDMCP Query to the DEC Windows X-Server. Just VNC in to the container! VNC Password is "vncvms"

UPDATE: Because it’s fun with virtualization…

Insignia SoftPC running on OpenVMS on SIMH VAX in Docker
Mosaic 4 on OpenVMS 7.3 VAX

Other software installed:

  • Mosaic & Mosaic 4
  • Netscape 3
  • Word Perfect 5
  • DEC Flight Simulator
  • SoftPC
  • DEC Write
  • NEdit 5
  • ALL-IN-1 (login as office / office and type manager for profile)
ALL-IN-1

Q: How to run ALL-IN-1 ?
A: login as office/office (set host 0 in decterm).

OpenVMS 9.2-3 x64 now has local console on OPA0

(This is a guest post by Antoni Sawicki aka Tenox)

I perviously covered x64 OpenVMS release on VMware. This was insanely cool achievement for the operating system. While it had no practical ramification there was one small annoyance. The OS console was on a serial port. In VMware it meant another VM connected via named pipe.

Now OpenVMS x64 supports (limited?) local console on OPA0. To enable it you have to type opa0 before boot in the bootmgr prompt:

Once the system boots your will be greeted with a login prompt on the local VGA console!

Does it support clear screen, cursor movement, etc? Yes! You can even run a text editor locally!

The default terminal size is 80×24. You can make it bigger by typing

$ set term /width=140 /page=70

This means we can have aclock on x64 OpenVMS local console!

Prior aclock binaries for VMS were compiled using Unix Curses library. To celebrate all this, I have created a new version using the native SMG$ screen management routines. So this is now a truly native VMS app. The binary is here. The source code here.

Have fun with virtualization!