Installing 2.11BSD: Kermit
The physical PDP-11/44 is not connected to the outside world at the moment. So we install "Kermit", in a two-phase boostrap process.
We do this still under SimH!
But there remain some problems to be solved!
Kermit is the well-known communication program. It transfers files over serial connection.
For 2.11BSD on PDP-11, there are two precompiled version:
A big C-Kermit (so named because it’s sources are all in C), and a small “G-Kermit” (Gnu license).
For c-kermit, see http://www.columbia.edu/kermit/ck80binaries.html#decunix
For g-kermit, see http://www.columbia.edu/kermit/gkermit.html#down
Bootstrap small G-Kermit
To transfer a kermit image to PDP-11 the first time, do this:
- Convert the binary image in to a text representation on PC side:
uuencode gku100.pdp11-bsd-2.11 gku.txt
- On PDP-11 side,
# cd /usr/bin
# cat gku.txt
- On PC side, let your terminal emulator send “gku.txt”, as if it is typed-in by hand.
- On PDP-11 side, hit ^D.
Konvert the text back to a binary image:
- Done, the original “gku100.pdp11-bsd-2.11” is there
chmod a+x gku100.pdp11-bsd-2.11
Bootstrap big C-Kermit with G-Kermit
Set SimH to 8bit transmission and telnet.
sim> set tti 8b
sim> set tto 8b
sim> set cons telnet=23
Execute G-kermit in receive mode, inhibit streaming mode (slow over telnet)
# gku* -r -S
Well so much for theory!
I worked with kermits 15 years ago and rememberd it as very reliable. So I was surprised by the problems I experienced now:
- Kermit to SimH on the same WinXP machine over telnet made a big hang up in the fast streaming mode.
If I called gkermit as “gku100 -r -S” with streaming mode inhibited, I got an unusable slow connection: typical 85 chars/per second! Over TCP/IP on a local machine! THis is because the telnet protocol has same delay heuristics in it, the kermit manual warn about this
- I was unable do get any transfer started, if SimH’s tti and tto were in 7bit mode.
- Worst of all: I could not start any transfer on the real 11/44!
I bought the C-Kermit manual, I hope they have same debugging hints.