Not a long entry here, since all the hard work was already done by Darkstar @ http://gunkies.org/wiki/Installing_Ultrix_4.5_on_SIMH
I only wanted to add my additions (tun-tap networking and remote X11 DECwindows via Xephyr)
The main difference is the ultrix.ini configuration file, since we will be using tap0 and bridging and setting up masquerade on our Linux machine, below is my network.sh script that I run before the simh simulator starts
#Setup tap and bridge tunctl -t tap0 -u user ifconfig tap0 up brctl addbr br0 brctl setfd br0 0 ifconfig br0 10.0.2.2 netmask 255.255.255.0 broadcast 10.0.2.255 up #brctl addif br0 tap0 vboxnet0 <-- add this if you wish to integrate with VirtualBox brctl addif br0 tap0 ifconfig tap0 0.0.0.0 sysctl net.ipv4.ip_forward=1 iptables --table nat -A POSTROUTING --out-interface wlan0 -j MASQUERADE
Next is the ultrix.ini simh configuration file that I have used
; SimH 4.0 Configuration file for MicroVAX 3800 ; ; Host System : DEC MicroVAX 3800 ; Operating System : DEC Ultrix v4.5 ; Memory : 64mb ; Network config : XQ: Ethernet, 08:00:2b:04:14:02 ; Disks : RQ0: RA90, 1.2gb ; RQ1: RA90, 1.2gb ; CDROMs : RQ2: iso file ; Tape config : TQ0: TK50, 94mb ; load -r ka655x.bin ; NVRAM attach NVR nvram.bin ; CPU config set CPU 64m set CPU conhalt set CPU idle=all ; configure console to 7-bit only set TTO 7b set TTI 7b ; Disk drives set RQ0 ra90 attach RQ0 disk01.dd set RQ1 ra90 attach RQ1 disk02.dd set RQ2 CDROM attach -r RQ2 ultrix.iso set RQ3 dis ; Tape set TQ tk50 ;attach tq0 filename-to-tape-file set TQ1 dis set TQ2 dis set TQ3 dis ; Disable unused peripherals set CR dis set RL dis set TS dis ; Attach Ethernet to a network interface set xq mac=08-00-2B-AA-BB-CC attach xq tap:tap0 ; boot the system boot CPU
Explanation:
The ka620.bin is from here https://github.com/simh/simh/raw/master/VAX/ka620.bin
The ultrix.iso is from here https://musall.de/mirrors/ultrix/ultrix_os/vax/ultrix-vax-4.5-mode1.ufs.bz2 Just bunzip2 and rename to ultrix.iso
The disk01.dd and disk02.dd are made like this
dd if=/dev/zero of=disk01.dd bs=1024 count=1M dd if=/dev/zero of=disk02.dd bs=1024 count=1M
Installation
So one can pretty much follow 100% the steps in the http://gunkies.org/wiki/Installing_Ultrix_4.5_on_SIMH except in the following section where I have chosen DECwindows for OSF/Motif (1)
I have used slightly different network config because of the tap setup earlier so we will change this section accordingly
# ifconfig qe0 10.0.2.12 netmask 255.255.255.0 up # route add default 10.0.2.2 1
Once we reboot and have everything working (network) we move on to configuring the DECwindows part. For this I have changed the following file in order to load DECwindows motif /usr/lib/X11/xdm/Xsession
#!/bin/sh exec > $HOME/.xsession-errors 2>&1 case $# in 1) case $1 in failsafe) exec xterm -geometry 80x24-0-0 ;; esac esac startup=$HOME/.xsession resources=$HOME/.Xresources if [ -f $startup ]; then exec $startup else if [ -f $resources ]; then xrdb -load $resources fi exec /usr/bin/dxsession fi
Then I have created a symlink to xdm so I could call startx from root directly
# ln -s /usr/bin/X11/xdm /startx
Then if I wanted to run DECwindows just initiate startx
# ./startx
And on my Linux host I run Xephyr as follows
Xephyr -screen 980x640 -ac -query 10.0.2.12 :3
Which gives me a nice remote DECwindows environment to work with
There are some interesting VAX Ultrix resources still available online today like
https://musall.de/mirrors/ultrix/freeware/starfish.osfn.org/ultrix/ GCC 3.0.4 is there if you don’t like the DEC C compiler.
References:
http://gunkies.org/wiki/Installing_Ultrix_4.5_on_SIMH Stephen's Machine Room - https://www.youtube.com/watch?v=dwFnzGZBA6E https://musall.de/mirrors/ultrix/freeware/