Preparation
First off, you’re going to need a couple of things:
- The version of simh that’s available at Richard Cornwell’s fork (https://github.com/rcornwell/sims).
- A working C compiler (like GCC, we’re using Linux as an example).
- The tape images from the PDP-10 GitHub page (https://github.com/PDP-10/panda) and the TOPS-20 7.0 install tape, BB-H137F-BM (available from http://pdp-10.trailing-edge.com/tapes/bb-h137f-bm.tap.bz2 or http://bitsavers.org/bits/DEC/pdp10/magtape/dec_distribs/TOPS-20/BB-H137F-BM.tap.gz).
- The following configuration file seems to work (copy the following block and paste it into your editor of choice):
set console wru=034 set cpu kl10b 4096k set cty rsx20 set tua rh20 set rpa rh20 set rpa0 rp07 set rpb rh20 set tua0 lock at tua0 -f e11 bb-h137f-bm.tap at rpa0 panda.rp load -c mtboot.exb
Installation
With all of that out of the way, we’re largely going to be following the TOPS-20 Model KL10B Installation Guide for the first part of the installation. Build simh and copy the binaries in the BIN/ folder to someplace within your PATH. Type in pdp10-kl and then go at the sim> prompt and it should present to you with this:
BOOT V11.0(315) MTBOOT>
Type in /L and /G143 at MTBOOT to bring up the disk formatter:
MTBOOT>/l [BOOT: Loading] [OK] MTBOOT>/g143
The disk formatter instructions should be as follows:
[FOR ADDITIONAL INFORMATION TYPE "?" TO ANY OF THE FOLLOWING QUESTIONS.] DO YOU WANT TO REPLACE THE FILE SYSTEM ON THE SYSTEM STRUCTURE? Y DO YOU WANT TO DEFINE THE SYSTEM STRUCTURE? Y HOW MANY PACKS ARE IN THIS STRUCTURE: ON WHICH "CHANNEL,CONTROLLER,UNIT" IS LOGICAL PACK # 0 MOUNTED? 0,-1,0 DO YOU WANT THE DEFAULT SWAPPING SPACE? Y DO YOU WANT THE DEFAULT SIZE FRONT END FILE SYSTEM? Y DO YOU WANT THE DEFAULT SIZE BOOTSTRAP AREA? Y DO YOU WANT TO ENABLE PASSWORD ENCRYPTION FOR THE SYSTEM STRUCTURE? N WHAT IS THE NAME OF THIS STRUCTURE? PS [STRUCTURE "PS" SUCCESSFULLY DEFINED]
At this point, TOPS-20 will bring up some messages that we don’t need to worry about. When RUNNING DDMP appears, hit Ctl-C to bring up the basic monitor prompt. And then do then type G MTA0: twice at the MX prompt.
NO SYSJOB NO EXEC MX>GET FILE MTA0: ? MX>GET FILE MTA0:
Wait a minute or two and it type S at the MX> prompt:
MX>START
We should be presented with this (ignore all BUGCHK messages):
TOPS-20 Command processor 7(4143) @
Type in ENA, run MTA0: and LOAD MTA0:, and then exit:
@ENA $RUN MTA0: DLUSER>LOAD MTA0: DONE. DLUSER>EXIT
And then start DUMPER:
$RUN MTA0: DUMPER>TAPE MTA0:
Here’s where we break from the manual. All we needed to do was get DUMPER running since what we’re doing is restoring a disk image. Hit Ctl-\ to bring up the simh prompt and type:
sim> at tua0 panda.tap sim> c
We now have returned to DUMPER and type the following after the DUMPER> prompt:
DUMPER>TAPE MTA0: DUMPER>REWIND DUMPER>PROTECTION TAPE DUMPER>CREATE DUMPER>FILES DUMPER>RESTORE TOPS20:<*>*.*.* PS:<*>*.*.*
What we told it to do was to use MTA0: as a tape drive, rewind the image, keep the permissions from the tape image, create directories while restoring, print out the files it’s restoring, and restore to the disk image from the tape image.
This may take awhile. Come back after a few hours.
Testing the restored image
At the DUMPER> prompt, type EXIT to return to the monitor:
DUMPER>EXIT
You can check the disk image here by typing DIR PS:<*>*.* but it’s not really needed either.
Type in the following to start shutting down the monitor, Ctl-E CEASE NOW and type enter to confirm:
$^ECEASE NOW
You should see something like this message when it’s shut down:
OPERATOR - Wait for the message "Shutdown complete" before entering commands to PARSER. $LOGOUT Killed Job 1, User OPERATOR, Account OPERATOR, TTY 205, at 21-Feb-2020 09:30:32, Used 0:01:46 in 7:04:22 Shutdown complete
Halt the simulated front end by typing in set cty stop and then go:
sim> set cty stop sim> go **HALTED**
Clear the simulator’ “memory” and load in the disk bootstrap:
sim> d 0-77777 0 sim> reset sim> load -c boot.exb sim> go
You should be presented with the following prompt:
BOOT V11.0(311) BOOT>
Hit ENTER, and a spew of messages will appear. Type in login operator dec-20 to log into the system prompt.
@login operATOR
Use ^ECEASE NOW again to bring down the system. Any changes that need to be made while the monitor is running standalone should be loaded at the BOOT> prompt with the following:
BOOT>/e BOOT>dbugsw/2 BOOT>147(esc)g
And that should be all for now. I will update this page for Ethernet when I figure that out.