Whats a DECserver?

A DECserver is a terminal server, it allows to connect remote terminals to a host over LAN network. Normally every terminals is connected over RS232 connection to a port on the host computer. But this direct connection style needs one cable per terminal, and limits the distance between terminal and host.

A terminal server acts like a relais: terminals are connected to a local terminal server, the data traffic between terminals and host is routed over LAN.

DECservers also have a Wikipedia entry.

Here we talk about a "DECserver 200/MC":

decerver200mc_front

He looks like little MicroVAX in a BA23 case.

decerver200mc-back

The backside is more interesting than the front. What you see:

  1. You can connect 8 terminals over serial ports, there are standard 25 pin DSUB males.
  2. For connection to the LAN it has an AUI port, in which you plug an Ethernet tranceiver.
  3. The big red square button is for total reset: Press it while you power on, and the DECserver forgets all his settings. After that, the baudrate on al ports is 9600 baud.
  4. There is no power switch! Just plug it into line power ... DECservers never get switched off.

The protocol used between DECserver and the host is LAT - "Local Area transport". This DEC protocoll supported by PDP-11, VAX and Alpha operating systems, and also on many other platform. Modern Linuxes still support it.

And there's a 2nd protocol involved: MOP - DEC's Maintenance Operation Protocol. The DECserver has no static onboard firmware, it boots over network. So in the same local network there has to be a MOP server, which will allow the DECserver to load its firmware.

Today DECservers are almost obsolete, since we live mostly in a TCP/IP world, and if we want to connect a physical text terminal to a remote host, we'd rather use a Telnet-compatible terminal server instead of a LAT server.

But at least for one application a DECserver is fine: to connect physical terminal to a simulated VAX the way DEC intended. Maybe I try this later, for now I show how to connect  a terminal to an modern Ubuntu.

Connecting a VT220 to Ubuntu

When we use our Linux, we sit the most time before an terminal window. With an DECserver, you can use an real terminal instead of a simulation!

There are lots of instructions on the web on how to connect a DECserver to Linux. I couldn't resist to mash them up into one more page about it:  So here is a walk-though on how to connect an old VT220 to Linux ... I used a Ubuntu 10.4 LTS.

1. Setup

  1. Connect terminal at 9600 baud to Port J1 (console), use normal null modem cable.
  2. reset the DECserver: Press the S1 button and hold, power ON (clear to factory defaults)
  3. Verify, that the fans are rotating! A DECserver usually dies, because it's fans block and then the power supply burns up.
  4. Connect to your Ethernet: use an AUI with twisted pair connector. With a little luck you can buy an AUI on eBay for less then $10.
  5. The final setup could look like this:

decerver_vt220_setup

6. Switch the DEC server ON.
You should on the console something like

Local -901- Initializing DECserver "08-00-2B-23-3A-7A" -- ROM BL20, H/W Rev D.A
Local -902- Waiting for image load
Local -912- Load failure, time

 

2. Allow the DECserver to boot from Ubuntu MOP server

The DECserver needs to load its firmware over MOP protocol. So you must install a MOP server and install the firmware file.

  1. Contrary to some Internet instructions, installation of DECnet is NOT necessary.
  2. DECserver and Ubuntu machine must be on the same subnet, no routing!
  3. Open the Synaptic Paket manager and install the paket "mopd".
    Choose interface "eth0".
  4. You need the firmware file. It's name is "PR0801ENG.SYS" (all uppercase!).
    You can download it from ftp://ftp.update.uu.se/pub/pdp11/ds/ or contact me.
  5. Install the firmware file at the right place. The MOP daemon "mopd" has a directory in wich all files must be placed. Call "man mopd" to read about it. For Ubuntu 10, the directory is "/srv/tftp/mop". So do
    $ sudo mkdir -p /srv/tftp/mop
    $ cp PR0801ENG.SYS  /srv/tftp/mop/PR0801ENG.SYS
  6. Start the mop daemon on your ethernet port.
    Normally mopd is running after installation. "kill -9" it and start it again in the foreground and in debug mode:

    # mopd -d eth0
  7. Power ON the DECserver. On the terminal you should see:

    decerver_output_imageloaded
  8. Press ENTER, and enter an arbitrary username:
    decerver_output_locallogin
  9. The user interface is VMS-like and quite comfortable.
    The prompt is "Local>", and HELP is your friend:
    decerver_output_localhelp

 

3. Setup LAT for Ubuntu

The LAT protocoll enables remote login over over the DECserver. Read more about it here.

  1. Install LAT: From Synaptic paket manager, install paket "latd".
  2. Controlling the LAT demon:
    Start with
    $ sudo latcp -s
    and stop with
    $ sudo latcp -h

Thats all!


4. Connect from Terminal over DECserver to Ubuntu host

The DECserver command to connect to a LAT enabled host is just "CONNECT servicename",
with servicename defaulting to hostname ... the name of your linux machine.

You can redefine the LAT servicename, by deleting it and adding a new service:

$ sudo latcp -D -a linux1
$ sudo latcp -A -a LINUX1 -i "LAT login service on host linux1"

(Here old and name are both "linux1". For other options, see "man latcp".)

Now here I log on my Ubuntu host "linux1" into my account "joerg":

decerver_output_ubuntulogin

Now you can do everything you would do in a normal terminal window:

Compare the emulation ...

ubuntu_terminal_session

... with the real thing:

decerver_vt220screen