Using COM3 and COM4 in OpenVMS

Usually an Alpha system has one or two serial ports. The first port is often used as a serial console. AlphaVM currently supports only serial console. Thus, there is only one serial port left for other purposes. Often it is desired to have more serial lines. Therefore, since the 1.6 release our implementation supports additional COM3 and COM4. The guest OS (OpenVMS or Tru64) has to be configured to use these additional ports. The serial drivers have to be loaded.

The additional serial lines are serial ISA devices, the same as COM1 and COM2. Our implementation registers the devices in the ISA configuration table. When a serial driver is loaded, it uses the information from the ISA configuration table.

Below are the instructions.

$ ana /sys
clue config


FFFFFFFF.8145BFD8 0 FFFFFFFF.83110000 C 0 MOUS
FFFFFFFF.8145C050 1 FFFFFFFF.83110000 1 1 KBD
FFFFFFFF.8145C0C8 2 FFFFFFFF.83110000 4 SRA: 2 Console Serial Line Driver
FFFFFFFF.8145C140 3 FFFFFFFF.83110000 3 TTA: 3 Serial Port
FFFFFFFF.8145C1B8 4 FFFFFFFF.83110000 6 DVA: 4 Floppy
FFFFFFFF.8145C230 5 FFFFFFFF.83110000 7 LRA: 5 Line Printer (parallel port)
FFFFFFFF.8145C2A8 6 FFFFFFFF.83110000 5 6 00000000.334D4F43 (COM3)
FFFFFFFF.8145C320 7 FFFFFFFF.83110000 E 7 00000000.344D4F43 (COM4)

Generic:
$ MCR SYSMAN
SYSMAN> IO CONNECT TTcn: /DRIVER=SYS$YSDRIVER /ADAPTER=<TR> /NODE=<Slot/Node> –
/VECTOR=<IRQ*4>/CSR=%x<ADDR>

In clue config
XBUS TR is 5
Node/Slot is 6 for COM3 and 7 for COM4.
Irq=5 for COM3 and 14 for COM4
CSR of XBUS is FFFFFFFF.83110000

$ MCR SYSMAN
IO CONNECT TTB0: /DRIVER=SYS$YSDRIVER /ADAPTER=5 /NODE=6 /VECTOR=20 /CSR=%xFFFFFFFF83110000
IO CONNECT TTC0: /DRIVER=SYS$YSDRIVER /ADAPTER=5 /NODE=7 /VECTOR=56 /CSR=%xFFFFFFFF83110000

or

mc sysman IO CONNECT TTB0: /DRIVER=SYS$YSDRIVER /ADAPTER=5 /NODE=6 –

/VECTOR=20 /CSR=%xFFFFFFFF83110000

mc sysman IO CONNECT TTC0: /DRIVER=SYS$YSDRIVER /ADAPTER=5 /NODE=7 –

/VECTOR=56 /CSR=%xFFFFFFFF83110000

To make it permanent

edit type DKA0:[SYS0.SYSCOMMON.SYSMGR]SYCONFIG.COM
$ sysman := $’f$edit(“sys$system:sysman.exe”,”upcase”)’
$ sysman IO CONNECT TTB0: /DRIVER=SYS$YSDRIVER /ADAPTER=5 /NODE=6 –
/VECTOR=20 /CSR=%xFFFFFFFF83110000
$ sysman IO CONNECT TTC0: /DRIVER=SYS$YSDRIVER /ADAPTER=5 /NODE=7 –
/VECTOR=56 /CSR=%xFFFFFFFF83110000

Creating an OpenVMS Hobbyist System

Michael Duffy has done a great job of recording a video, where he shows how to install AlphaVM, configure it and install OpenVMS on it.

Remarks from EmuVM:

  • AlphaVM-Basic is used in this video. The procedures will be similar for AlphaVM-Pro. For AlphaVM-Pro one may want to set the CPU server to JIT3 to achieve the best performance.
  • For the installation from an ISO image, we recommend to use a CDROM emulation instead of a disk emulation.

Tru64 UNIX

Tru64 UNIX is an operating system designed and developed by Digital Equipment Corporation to run on their Alpha AXP hardware. The system was introduced in 1992 for the DEC MIPS stations and DEC Alpha AXP systems. The original desige was based on Open System Foundation (OSF). The OS was originally called OSF/1 AXP. In 1995 it was renamed to Digital UNIX and in 1998 Tru64. The last maintenance release was released in 2010. Support continued until 2012.

Our product AlphaVM-Pro is an Alpha hardware emulator that allows to create a virtual AlphaServer system. It is designed to run Tru64. Tru64 runs on the virtual system in the same way as it runs on the real hardware. AlphaVM emulates a specific type of Alpha system, specified in the configuration file. Tru64 therefore “thinks” it runs on the real system of the specified type. It allows to run the layered product software and the application software unchanged.

Often it is asked whether AlphaVM emulates Tru64. It is not true, AlphaVM emulates hardware, where Tru64 runs. It may look like Tru64 runs directly on x86-64 hardware. However, there is an intermediate emulation layer implemented by AlphaVM running on Windows or Linux.

OpenVMS

OpenVMS is an operating system that was designed and developed by Digital Equipment Corporation to run on their VAX hardware. The system was introduced in 1977 as VMS standing for Virtual Memory System. It was renamed to OpenVMS in 1992. The word “open” in the name refers to support of some open standards like POSIX. It also refers to that the system runs on multiple hardware platforms (VAX and Alpha AXP) at that time.

The operating system was ported to Alpha AXP hardware in 1991, to Intel Itanium in 2001. Currently it is being ported to x86-64 by VMS Software Inc.

Our product AlphaVM-Pro is an Alpha hardware emulator that allows to create a virtual AlphaServer system. It is designed to run OpenVMS/AXP. OpenVMS runs on the virtual system in the same way as it runs on the real hardware. AlphaVM emulates a specific type of Alpha system, specified in the configuration file. OpenVMS therefore “thinks” it runs on the real system of the specified type. It allows to run the layered product software and the application software unchanged.

Often it is asked whether AlphaVM emulates OpenVMS. It is not true, AlphaVM emulates hardware, where OpenVMS/AXP runs. It may look like OpenVMS runs directly on x86-64 hardware. However, there is an intermediate emulation layer implemented by AlphaVM running on Windows or Linux.

Porting or rewriting Tru64 software

Sometimes it happens that an organization is stuck with old software running on the Tru64 operating system on Alpha hardware. Usually such an organization suffers from some of the following problems.

  • The hardware is old, the ownership costs and failure risks are high.
  • The old software cannot easily be modified and extended
  • The programmers with the skills in Tru64 and the programming language are hard to find
  • The software cannot easily be integrated into the modern settings or cannot interchange data with modern software peers.
  • The software performance cannot be increased, because it is running on slow old hardware.
(more…)

Porting or rewriting OpenVMS software.

Sometimes it happens that an organization is stuck with old software running on the OpenVMS operating system on VAX, Alpha or Integrity hardware. Usually such an organization suffers from some of the following problems.

  • The hardware is old, the ownership costs and failure risks are high.
  • The old software cannot easily be modified and extended
  • The programmers with the skills in OpenVMS and the programming language are hard to find
  • The software cannot easily be integrated into the modern settings or cannot interchange data with modern software peers.
  • The software performance cannot be increased, because it is running on slow old hardware.
(more…)

Tru64 emulator

AlphaVM does not actually emulate Tru64 (aka Digital UNIX, DEC Unix, OSF/1). AlphaVM emulates the DEC Alpha system hardware. As the result Tru64 runs on the virtual hardware unmodified.

In fact, for the user it may look like Tru64 runs on the Intel x86-64 based hardware. AlphaVM is a software layer that makes it possible.

(more…)

OpenVMS emulator

AlphaVM does not actually emulate OpenVMS. AlphaVM emulates the DEC Alpha system hardware. As the result OpenVMS runs on the virtual hardware unmodified. Since the emulated hardware is Alpha, it is OpenVMS/AXP that runs on AlphaVM.

In fact, for the user it may look like OpenVMS runs on the Intel x86-64 based hardware. AlphaVM is a software layer that makes it possible.

(more…)

AlphaVM is an Alpha emulator

AlphaVM is software that emulates an DEC/Compaq/HP Alpha system. In other words, AlphaVM is software that creates a virtual Alpha system. AlphaVM is a whole system emulator: it emulates the whole hardware system including the CPU, the core logic chipset, the storage and network controllers, the disks, the tapes, etc. AlphaVM run on Intel Xoen based hardware. Thus, the emulated CPU architecture is different from the host CPU architecture. It makes this product makes it different from virtualization solutions like VMware or Hyper-V, that virtualize systems with the same guest and host architectures.

(more…)