OpenVMS CDE Desktop Remote X session GUI (on AXPbox)
Published: 26-01-2021 | Author: Remy van Elst | Text only version of this article
Table of Contents
Gaming on OpenVMS over the network, Tetris from 1995
Last year November, I posted on a new OpenVMS related project, AXPbox, the open source Alpha emulator, a fork of es40 by Tomáš Glozar. Last week I put together the first official release of AXPbox, one of the changes being in the network code, making it more stable, thus being able to run a remote X session. Meaning, you can run the CDE desktop and enjoy everything the OpenVMS GUI has to offer.
This article shows you how to run the CDE GUI in a remote X session, including switching between the old Motif look and the new DECWindows and how to run Tetris.
Consider sponsoring me on Github. It means the world to me if you show your appreciation and you'll help pay the server costs.
You can also sponsor me by getting a Digital Ocean VPS. With this referral link you'll get $100 credit for 60 days.
VSI offers a hobbyist program where you can get an OpenVMS license for free, and this guide is a great fit for hobbyists. I know of no OpenVMS server deployment where a GUI is actually used in day to day operations. (Most clusters I'm aware of run Rdb or oracle databases).
If you install OpenVMS you will be asked if you want to install the GUI, during the installation. If you've answered NO there, you can download the PDF from the VSI product site to install it in your OpenVMS installation.
You can find my installation guide for OpenVMS with networking here, it sets up a networked OpenVMS installation in AXPbox which is my basis for this guide.
The GUI runs in a remote X session. On linux I prefer to use Xephyr, which is what I'll use in this guide. On Windows you can use xming, here on this topic you can find a few pictures of their settings.
The network in AXPbox is not as stable as it can be, it took me a few times, rebooting AXPbox, before I got a stable GUI. But, when I had one, it was rock solid.
In this guide I assume the IP of the OpenVMS machine to be
10.0.2.25 and the IP
of the linux machine running the X server
Starting the GUI
On your linux machine fire up an X server with Xephyr:
Xephyr -screen 1024x768 :1 -ac -listen tcp
On your OpenVMS machine you must first enable the remote display to your local linux machine's X server:
Replace the IP address by your local linux machine. The
server=1 part must match
:1 display number on your X server.
Start the CDE desktop login manager with the following command:
If you run VSI OpenVMS 8.4-2, this is the login screen:
If you run HP OpenVMS 8.4 or 8.3, the logo is different (screenshot is from Tomáš):
If you run COMPAQ OpenVMS 7.3 (on Alpha), the logo is from Compaq:
After entering a correct username and password, a blue screen with one line of
Starting the New Desktop for OpenVMS) pops up while the desktop is
When you're logged in, the desktop appears with a help window. This is how it looks for me:
Click around and open up a few programs. There is not much pre-installed, you have a terminal, file manager, text editor, calendar, clock and a few more utilities. Here is a screenshot with some programs open:
On the first login my user password was expired and the login manager prompted me to set a new password. One of the nice features, well thought out, was to choose a new password right then and there:
This is were you all came for, gaming on OpenVMS. Digiater hosts the OpenVMS freeware archive, which includes Tetris. A simple game, but it's both precompiled and works well enough over this remote X session to be usable.
Lets make a folder and fire up
FTP to download the file from Digiater.
Create a new folder to download Tetris into:
$ create /directory [.tetris]
Go into the folder:
$ set def [.tetris]
Download the executable via FTP:
$ ftp ftp.digiater.nl 220---------- Welcome to Pure-FTPd [privsep] [TLS] ---------- 220-You are user number 2 of 12 allowed. 220-Local time is now 06:59. Server port: 21. 220-Only anonymous FTP is allowed here 220 You will be disconnected after 15 minutes of inactivity. Connected to www.digiater.nl. Name (www.digiater.nl:system): anonymous 230 Anonymous user logged in
Don't forget binary and passive, otherwise you will get an error:
FTP> binary 200 TYPE is now 8-bit binary FTP> passive on Passive is ON.
Get the archive:
FTP> get /openvms/freeware/v40/tetris312/tetris_axp.exe 200 PORT command successful 150-Connecting to port 49191 150 57.0 kbytes to download 226-File successfully transferred 226 0.858 seconds (measured here), 58.3 Kbytes per second local: SYS$SYSROOT:[SYSMGR.TETRIS]tetris_axp.exe;1 remote: openvms/freeware/v40/tetris312/tetris_axp.exe 58310 bytes received in 00:00:00.00 seconds (2289.00 Gbytes/s) FTP>
Exit FTP with
CTRL+Z and open up a file manager to navigate to that new folder. Click tetris to launch,
or open up a terminal and fire it up from there (
run tetris_axp.exe). Below are two screenshots:
If you've launched Tetris via a DECterminal, you will be shown the scores:
The screenshot shows the time being 2018, but that is due to my HP hobbyist license only being valid in 2018, I had to set the time on OpenVMS back. But I assure you, it was 2021 when I took the screenshot.
For more gaming on OpenVMS, here is a guide on compiling DOOM.
DECWindows vs Motif
Over the years there have been different GUI's for OpenVMS. Quoting part of Wikipedia:
- The original graphical user interface for VMS was a proprietary windowing system known as the VMS Workstation Software (VWS), which was first released for the VAXstation I in 1984. It exposed an API called the User Interface Services (UIS). It ran on a limited selection of VAX hardware.
- In 1989, DEC replaced VWS with a new X11-based windowing system named DECwindows. It was first included in VAX/VMS V5.1. Early versions of DECwindows featured an interface built on top of a proprietary toolkit named XUI. A layered product named UISX was provided to allow VWS/UIS applications to run on top of DECwindows.
- In 1991, DEC replaced XUI with the Motif toolkit, creating DECwindows Motif. As a result, the Motif Window Manager became the default DECwindows interface in OpenVMS V6.0, although the XUI window manager remained as an option.
- In 1996, as part of OpenVMS V7.1, DEC released the "New Desktop" interface for DECwindows Motif. The New Desktop consisted of a significant subset of the Common Desktop Environment. On Alpha and Itanium systems, it is still possible to select the older MWM-based UI (referred to as the "DECwindows Desktop") at login time. The New Desktop was never ported to the VAX releases of OpenVMS.
Here is the text editor in the old Traditional Desktop / Motif style:
The same text editor in the "modern" New Desktop / DECWindows style:
To select the other desktop as the default desktop, perform the following steps.
If the file
SYS$MANAGER:DECW$PRIVATE_APPS_SETUP.COM does not exist, copy it from
COPY SYS$MANAGER:DECW$PRIVATE_APPS_SETUP.TEMPLATE SYS$COMMON:[SYSMGR]DECW$PRIVATE_APPS_SETUP.COM
SYS$MANAGER:DECW$PRIVATE_APPS_SETUP.COM and add a symbol definition for
DECW$START_NEW_DESKTOP. In that file it is already there, but commented out.
Remove the exclamation point (
!) from the beginning of the line to
EDIT /EDT SYS$MANAGER:DECW$PRIVATE_APPS_SETUP.COM
You'll enter a line editor. To switch to visual mode, type
by Return. You can use the arrow keys to scroll down.
Exit visual mode with
CTRL+Z, then type
exit to save the file.
If you want the New Desktop as the default:
DECW$START_NEW_DESKTOP == "TRUE"
If you want the traditional desktop as the default:
DECW$START_NEW_DESKTOP == "FALSE"
Restart DECwindows using the following command:
Built in GUI program commands
On my local installation, network is not as stable as it could be, so often I do not open a full CDE desktop session, but just fire up the programs I want.
This results in a black background and only the program open in the X session, no window borders like in the screenshot below:
You can also use an alternative command to fire up a desktop session. First find
out what's behind the logical name
$ show log cde$sessionmain "CDE$SESSIONMAIN" = "mcr cde$system_defaults:[bin]dtsession" (LNM$SYSTEM_TABLE)
Fire up that command:
$ mcr cde$system_defaults:[bin]dtsession
dtsession is the CDE login manager, also available on linux.
You can prefix any command with
spawn/nowait/input=nl: to run it in the background,
so you can start multiple commands without running a desktop. An example to start
the file manager in the background:
SPAWN/NOWAIT/INPUT=NL: RUN SYS$SYSTEM:VUE$MASTER
Here is a list of most of the GUI commands:
- CDA Viewer:
- Message Panel:
- Print Screen:
- Session Manager:
Via the VSI site, Using DECwindows Motif for OpenVMS PDF.
Below are a few more screenshots of different programs, to give you a nostalgic feeling of how the OpenVMS GUI looks, if you don't want to setup everything yourself but still want to enjoy the looks.
More session manager
Clock and Calendar
Control panel and extended calendar
Notepad (not EVE)
EVE editor with split (2 files at once)
EVE editor with the save dialog open
Tags: alpha , axpbox , blog , cde , dec , es40 , gui , openvms , vax , vms
Bookreader with the clock help