DECnet on a VAX
Using DECnet under VMS is of course much easier then using it under Linux. But you have to deal with that vintage VMS/VAX stuff. VMS is a very rich and comfortable operating system, but some of its concepts are now rather unfamiliar.
This tutorial is valid for simulated and physical VAXes.
The simulated VAX becomes node address 2.20, and is named “SIMVAX”.
The physical VAX 3200 is node 2.21 and is named “VX3200”.
Setup a VAX emulation with SimH
Before trashing the physical VAX, I setup a SimH-Simulation.
Explaining SimH is far beyond the scope of this tutorial.
Here is the startup file:
; See also: http://www.wherry.com/gadgets/retrocomputing/vax-simh.html
; simulates my uVAX, 3200 (label on box says "uVAX II/GPX")
load -r ../../../emulation/simh/ka655x.bin
; I have 2x 8MB
set cpu 16m
; save NVR in file
attach nvr nvram.bin
; I have aTK50
set TQ0 enable
set TQ0 WRITEENABLE
set TQ TK50
set TQ1 disable
set TQ2 disable
set TQ3 disable
; I have one RD54
set RQ0 enable
set RQ0 writeenable
set RQ0 RD54
set RQ1 disable
set RQ2 disable
set RQ3 cdrom
attach RQ0 vms5.2-1.durd_54
attach RQ3 ../../../os/openvms/openvms-vax-7.3.iso
; no rl01/02
set rl disable
; Network on UBUNTU
set xq enabled
; MAC-ID for DECnet addr 2.20
set xq mac=AA-00-04-00-14-08
attach xq0 eth0
echo ### Booting VAX CPU ....
echo ### After the >>> prompt enter:
echo ### >>> b dua0 /r5:1
set console telnet=23
You see that the network card’s MAC-ID is already defined by a DECnet node address. The VAX gets DECnet node address “2.20”, so the MAC-ID is AA-00-04-00-14-08.
I let this simulation run on an Ubuntu host, here “linux1”:
Attention: Due to limitations of SimH’s network drivers, the simulated VAX can not connect to the machine it is running on. So if the simulated VAX “SIMVAX” runs onUbuntu installation “linux1”, there will be no network connection between SIMVAX and linux1. All other connection (SIMVAX - linux2, linux1 - linux2, etc) will work well.!
You start the simulated vax by running something like
$ sudo ~/simh/vax uvax.vaxsim
Then you have to start a VT100-emulation and connect it over telnet to SimH’s host machine. The simulated VAX will then start running.
Setup a physical VAX
On the physical VAX, no MAC-ID setup is necessary. But you have to connect it to your network.
The VAX 3200 network adapter is a DEQNA, the connector on the BA23 box is a “AUI” SubD -connector. It is “10baseT”, meaning running at 10MBit/sec. To connect it to modern ethernet, a “Medium Attachement Unit” (MAUI) is required, this is the grey box on the picture. It is an 1$ eBay item.
Booting the VAX from console
After the (physical or virtual) VAX is powered on, it self-tests and then waits for a boot-command. On the >>> prompt type
and wait until you’re able to “Login:”. Then login as SYSTEM, you should get the “$” prompt.
There are two tools to use:
We do only minimal configuration: set name and node address of local host, and define some other node addresses. The DECnet term for “localhost” is “executor”.
I show the input for the virtual VAX “simvax”. For the physical “vx3200”, you have to exchange “simvax” with “vx3200” and “2.20” with 2.21”
1) Stop DECnet
$ run sys$system:ncp
2) Setup a new DECnet configuration
DECnet-VAX network configuration procedure
Then scroll through the generated script files, and agree to execute it.
3) Clear all existing node settings with NCP:
$ run sys$system:ncp
NCP has a permanent and a volatile configuration database, so you must both CLEAR and PURGE .
4) Use NCP to define other DECnet nodes
We will add three nodes (2 Ubuntu, 1 other VAX) to the VAX’s name table:
$ run sys$system:ncp
I found this necessary sometimes ...
6) Enter the new SIMVAX node into other DECnet nodes
In this test setup, all nodes must have a list of all other nodes (until I understand more about DECnet administration).
This means editing “/etc/decnet.conf” on Linux nodes,
“NCP>define node ...”
on VMS nodes.
Just look at another machine with the “directory” command. For example, look onto my Eclipse installation on Ubuntu node “linux2”.
Beware: If you doing this on a simulated VAX running under SimH on “linux1”, you can not access “linux1” itself! But other nodes (like “linux2”) must be reachable.
$ dir linux2"joerg joerg"::[home.joerg.eclipse]
Directory LINUX2"joerg password"::HOME:[JOERG.ECLIPSE]