It is very easy to install OpenBSD/vax on the SIMH VAX simulator. All you need is a reasonably fast machine, enough disk space for a 1.5GB disk image and a floppyXX.fs file from the OpenBSD/VAX distribution. Assuming you're going to run SIMH on an OpenBSD system, install the emulators/simh package from ports. Decide on an appropriate location for your OpenBSD/vax SIMH environment and at that location, create a file openbsd.simh with the following contents:
For OpenBSD >5.8, replace "at xq0 tap:tun0" with "at xq0 tap:tap0".set cpu 128m at nvr openbsd.nvram deposit rq qtime 1000000 set rq0 ra92 at rq0 openbsd.ra0.disk set rq1 cdrom at rq1 /dev/rcd0c set rq2 cdrom at rq2 floppy58.fs at xq0 tap:tun0 boot cpu exit
This configures SIMH to simulate a VAX with a whopping 128 MB of memory, a RA92 1.5GB disk, a CD-ROM unit to hold CD1 of your CD-ROM set, another CD-ROM unit to boot from, and a DELQA Qbus Ethernet controller attached to the tun0 interface. You might need to replace /dev/rcd0c with the name of the raw device corresponding to your real CD-ROM unit.
By default pressing ^E will interrupt the emulation; if you're accustomed to the emacs editing keys, you might like to remap this (e.g. adding set console wru=1e sets it to ^6, ascii code 0x1e). If you prefer a larger disk, replace set rq0 ra92 with e.g. set rq0 rauser=15000 (where 15000 is the size in MB). See the SIMH documentation for more details.
Before starting SIMH, you will need to configure the network. In most cases, the following bridge-based configuration will give best results:
Create the network interface, set it into layer 2 mode if necessary, and bring it up:
Bridge it to your ethernet interface and enable the bridge:# OpenBSD <=5.8 # ifconfig tun0 create # ifconfig tun0 link0 # ifconfig tun0 up # OpenBSD >5.8 # ifconfig tap0 create # ifconfig tap0 up
By setting appropriate permissions on /dev/tun0 or /dev/tap0 you can avoid running SIMH as root.# OpenBSD <=5.8 # ifconfig bridge0 create # ifconfig bridge0 fwddelay 4 # ifconfig bridge0 add em0 add tun0 # ifconfig bridge0 up # OpenBSD >5.8 # ifconfig bridge0 create # ifconfig bridge0 fwddelay 4 # ifconfig bridge0 add em0 add tap0 # ifconfig bridge0 up
802.11 wireless interfaces cannot use bridge(4) without WDS support; in this case you can use BPF to connect to the network. Skip the above ifconfig lines and replace the "at xq0 tap:tun0" or "at xq0 tap:tap0" line with a line like this, replacing iwn0 with your actual network interface as necessary:
at xq0 iwn0
Copy the relevant vax/floppyXX.fs file to the location of your OpenBSD/vax SIMH environment. Now fire up SIMH. At the boot prompt you should type boot dua2:, after which SIMH should boot into the normal OpenBSD installation program:
After you've finished the installation, restart SIMH, but now type:# simh-vax openbsd.simh VAX simulator V3.9-0 NVR: buffering file in memory Eth: opened OS device tun0 Loading boot code from /usr/local/lib/simh/vax/ka655x.bin KA655-B V5.3, VMB 2.7 Performing normal system tests. 40..39..38..37..36..35..34..33..32..31..30..29..28..27..26..25.. 24..23..22..21..20..19..18..17..16..15..14..13..12..11..10..09.. 08..07..06..05..04..03.. Tests completed. >>>boot dua2: (BOOT/R5:0 DUA2 2.. -DUA2 1..0.. >> OpenBSD/vax boot [1.16] << >> Press enter to autoboot now, or any other key to abort: 0 > boot bsd
to boot from your newly installed disk image. You'll need a little patience upon your first boot, since generating the SSH host keys can take quite a bit of time. But it will eventually boot through and present you with a friendly login prompt:>>>boot dua0:
When you are done installing any additional packages, you might want to remove the lines referring to your real CD-ROM unit and floppyXX.fs from your openbsd.simh file.OpenBSD/vax (noname.my.domain) (console) login: