Handling X-window display for VMS running on Charon-VAX

Handling X-window display for VMS running on Charon-VAX

Description

This article describes how to start a DECwindow / CDE login box for VMS running on Charon-VAX. The pre-requisite for this setup is that UCX is installed, configured and started in VMS; and the display server is on Linux which can communicate with VMS over TCP/IP. We will concentrate on the following topics:

  • Files on VMS to be modified
  • Using VMS fonts
  • Proper key mapping
  • Install X display server package like Xephyr on CentOS

Step-by-step guide

In VMS, there are two ways to get the login box, and both ways need TCP/IP connection

  1. Use xdmcp
    1. Enable xdmcp on UCX configuration. This will be available in newer UCX version only
  2. Modify the file SYS$MANAGER:DECW$PRIVATE_APPS_SETUP.COM (may need to copy from the .TEMPLATE), add the following lines at the session "do_default:"
    1. $define/sys/nolog decw$default_transport tcpip
    2. $decw$appsnode=="192.168.1.2" ! this is the address of the PC
    3. $decw$device=="network" ! this can be anything except NONE
    4. $decw$appsserver==1 ! this should be 1 for X-windows on Linux

Fonts on PC are different from VMS. There are two ways to handle fonts

  1. Enable font server on VMS by
    1. editing the file DECW$PRIVATE_SERVER_SETUP.COM
    2. change DECW$START_FONT_SERVER to "TRUE" ($DECW$START_FONT_SERVER=="TRUE")
    3. In the X-server command, add “-fp tcp/<ip of VMS>:7100”
  2. Copy all the fonts from VMS to Linux and put them into the folder /usr/share/X11/fonts. Go into the folder and run command "mkfontdir". Then create a softlink at /etc/X11/fontpath.d to link to the folder.

Keymap is different as the old server use LK keyboard. To map the keys

  1. Disable "printscrn" by editing the file /usr/share/X11/xkb/keycodes/evdev, and then add //in front of <PRSC>=107;
  2. Create a keymap text file with content below
    1. keycode 107 = F13
    2. keycode 78 = F14
    3. keycode 110 = Menu
    4. keycode 67 = KP_F1
    5. keycode 68 = KP_F2
    6. keycode 69 = KP_F3
    7. keycode 70 = KP_F4
    8. keycode 71 = Help
    9. keycode 86 = comma
  3. Enable the keymap (must run every time before starting X-server) by xmodmap <the key map file name>

On Linux

  1. Install X11 related packages, e.g. xorg-x11-server-Xephyr
  2. Enable ports 6000-6100 and 7100 in firewall of Linux
  3. Start the X display server by command like this for xdmcp configuration
    1. /usr/bin/Xephyr :1 –ac –query 192.168.1.3 – from 192.168.1.2 -screen 1280x1024x8 –once –fullscreen &
    2. add -fp tcp/192.168.1.2:7100 if font server is being used
  4. Start the X display server by command like this for non-xdmcp configuration (passive mode)
    1. /usr/bin/Xephyr :1 –ac –listen tcp -from 192.168.1.2 –once -screen 1280x1024x8 – fullscreen &


Related articles



© Stromasys, 1999-2025  - All the information is provided on the best effort basis, and might be changed anytime without notice. Information provided does not mean Stromasys commitment to any features described. 
Need fast, reliable migration? We have done it countless times. Talk to an expert