Posted on September 10, 2023
VNC on Digital UNIX 4.0E
One of the operating systems I have setup on my DECpc AXP 150 (aka Jensen) is Digital UNIX 4.0E (which I believe is the last Digital branded release). I found a version of VNC for OSF/1 (the original name of Digital, later Tru64 UNIX) version 3.2. I decided to see how easy it would be to get working.
The version I found came from an old backup I recovered a number of years ago. The file name is vnc-3.3.2r3_alpha_osf1_3.2.tar.Z. I opened it up on my PC and read the included readme file. This revealed that to use the recommended vncserver script to start the Xvnc server binary correctly, I’d need Perl installed on the system.
I think when I set up the OS, I installed almost everything I could as disk space wasn’t a problem. So I checked if any version of Perl was already installed. Unfortunately it was not, but I quickly found reference to a build for Digital UNIX 4.0B and up that was originally hosted on Digital’s ftp site. I ended up finding a mirror of this and obtained a copy of PERL5004SETLD.tar.gz. As the file name suggests, this was a setld compatible kit, making installation a breeze with the setld -l . command after extraction.
After sorting the Perl dependency, I extracted the VNC binaries and Perl script to a location on the path and also copied the classes for the included Java VNC viewer as apparently I had some old version of Java installed on the system that must have been included with the base OS kit. I haven’t tried the viewer though, as at the time of setting everything up, I didn’t have any other systems up that were running a VNC server.
At this point I tried running vncserver which started fine on port 5901. I used VNC Viewer on my Windows 11 laptop to connect and was greeted with twm running an xterm rather than the more familiar DECWindows or CDE interfaces. I was shocked it actually did anything properly first time if I’m honest, but this left me to figure out how to get to the usual CDE desktop (which is what I currently had the local graphics console set up with).
After a bit of digging I found that VNC will create a .vnc folder in the home directory for the user and within that directory there is an xstartup file which specifies what the VNC server should start. I replaced the default contents with the line “/usr/dt/bin/Xsession &”, killed the running server with “vncserver -kill :1” and started a fresh one.
That did the trick and I was looking at CDE through VNC Viewer on my laptop 😀
There are a couple oddities/issues though. The colours are a little off, with the greys being darker than they appear on the VGA output. I’m not too worried about this and imagine it’s just a palette setting for the remote connection or something like that. The other slightly more troublesome thing is that backspace doesn’t seem to work and ends up printing rubbish instead. I’m not sure why at the moment, so if anyone reading this knows, please leave a comment below! I’ve not taken much time to dig into it as this was more of an experiment to see if it still worked and how it performed than something I plan to use regularly on this machine. It could just be that the viewer is so much newer compared to the server. As can be seen in the screenshot, the console shows some warnings relating to X which could also be involved I guess, but they don’t seem to cause much of an issue at the moment.
Overall, getting VNC running was much less painful than I expected at first. The trickiest bit really was figuring out how to get it to start CDE which didn’t take too long thankfully. I don’t expect to use this too often but am glad to finally have it set up and to see it perform so well. I’ll likely try it with a more period correct version of the VNC viewer at some point and see if it has the backspace issue too.