#!/bin/sh # requires simh # based on the SDF unix50th script udir=$HOME/unix/unix repo=$HOME/unix/unixes if [ ! -d "$udir" ] then mkdir -p "$udir" fi check() { if [ -d "$udir/$1" ] then printf '%s' "Perform a fresh install of $1? [y/n] " read ans case "$ans" in y) cp -RPp "$repo/$1" "$udir" ;; *) ;; esac else cp -RPp "$repo/$1" "$udir" fi } boot() { if [ ! -d "$udir/$1" ] then printf '%s\n' "You need to do a fresh install" sleep 2 return 0 else cd "$udir/$1" printf '%s\n' "To EXIT press CTRL-E and type 'q'" printf '\n' sleep 2 "$machine" "$1-boot.ini" fi } while true do clear printf '%s\n' "[a] UNICS (Version Zero) PDP-7 1969" printf '%s\n' "[b] First Edition UNIX PDP-11/20 1971" printf '%s\n' "[c] Fifth Edition UNIX PDP-11/40 1974" printf '%s\n' "[d] Sixth Edition UNIX PDP-11/45 1975" printf '%s\n' "[e] Seventh Edition UNIX PDP-11/70 1979" printf '%s\n' "[q] QUIT" read ans case "$ans" in a) check v0 machine=pdp7 boot v0 ;; b) check v1 machine=pdp11 boot v1 ;; c) check v5 machine=pdp11 boot v5 ;; d) check v6 machine=pdp11 boot v6 ;; e) check v7 machine=pdp11 boot v7 ;; q) exit 0 ;; *) ;; esac done