Configuring PDP10 Tops-10 for online use

I installed my very own PDP10 Tops-10 system up and running on simh, but to make it work like a 1970’s timesharing system I needed to configure it to support remote users on “teletypes” attached to the system. Of course, using simh the teletypes are really just telnet sessions, but if you are planning to use real devices like VDUs or teletypes on serial or dialup lines then they need configuring in the guest Tops-10 monitor as dataset lines. Even if you are using telnet and there is no need to make the dataset change, you might want to change other monitor build parameters such as default search lists and this covered below as well.

If you are using the pre-configured Tops-10 disk packs then you don’t need to do the MONGEN, you simply have to ensure that your simh startup script attaches the dz port multiplexor, ideally to a user tcp port such as 2020. If you wish you could attach it to the default telnet port of 23, but this will require super user privs on your host system.

If, like me, you prefer to have things your way then MONGEN is the way to go. Fortunately, like the Tops-10 install, there is a recipe online for this which I largely followed verbatim.

TOPS-10 v7.04 Mongen (enabling dataset lines)
Configuration Log

Created by @asun.net

The attached log shows TOPS-10 v7.04 mongen procedures that set
DZ-11 TTY lines as dataset lines. Dataset lines are useful for
dial-up (with hangup detection) timesharing. In contrast, the
default installation TOPS-10 monitor sets these TTY lines as
hardwired which is what you want if you are using telnet for
connections.

The mongen procedures here closely follow the "TOPS-10 Software
Installation Guide."

The simh "attach -am dz 2020" includes the simulator's host port
which emulates dial-up access. DZ-11 lines are accessible via:
telnet localhost 2020
After invoking telnet, wait a few seconds, then send a carriage
return.

The configuration procedures reference the following resources:

Simh simulator by Bob Supnik;
http://simh.trailing-edge.com/

Digital Equipment Corporation, "TOPS-10 Software Installation
Guide,"
AA-P512C-TB, October 1988

Click to access MIG704.pdf

This document is also the Monitor Installation Guide (MIG).

The log uses the following conventions:
Control-E (^E) escapes to the simh simulator
Control-Z (^Z) and/or control-C (^C) terminates most TOPS-10
utilities

Script started on Tue 07 May 2002 04:09:21 PM EDT
$ cat pdp10.cfg
set tim y2k
attach rp0 /mnt/asun/t10.dsk
attach -am dz 2020
boot rp0
$ ./pdp10 pdp10.cfg

PDP-10 simulator V2.9-9
Listening on socket 5
Modem control activated
Auto disconnect activated
BOOT V4(76)

BOOT>
[Loading from DSKB:SYSTEM.EXE[1,4]]

KS10 07-Oct-88
Why reload: new
Date:
Time:
Startup option: go
[Rebuilding the system search list from the HOM blocks]

[Rebuilding the active swapping list from the HOM blocks]

[Rebuilding the system dump list from the HOM blocks]

KS10 16:09:44 CTY system 4097
Connected to Node CENTRA(0) Line # 42
.LOGIN 1,2
.R OPR

[CCPWFD Waiting for file daemon to start]
%%TTY STOMPER - Starting
OPR>
16:09:57 -- Message from the Accounting System --
Account validation is not required

16:09:58 -- Begin auto take file --
File: SYS:SYSTEM.CMD[1,4]

16:09:58 -- End auto take file --
17 lines processed
OPR>
OPR>exit

.r setsrc

*cp [10,7,mon]

*^Z

EXIT

.run mongen

Write MONGEN.MIC (YES,NO) : n
MONGEN for 704 monitors

MONGEN will generate any known TOPS-10 configuration. For
information about which configurations are supported, please
refer to the SPD.

/HELP (PROMPT,SHORT,LONG) ]: prompt
Which GEN (SYS,F) : s
Output(DSK:SYSCNF.MAC):
DECsystem10 (KL,KS) : ks
System name : PDP10
CPU0 serial number (1-10000) : 4097
Exclude monitor overhead from user run time (YES,NO) : y
Account verification (YES,NO) : n

Autoconfigured device options:
Include Ethernet service (NO,YES,PROMPT): n
Prompt for RP0x/RM0x Massbus disks (NO,YES): n
Include TM02/TM03 magtapes (NO,YES,PROMPT): y
Include UNIBUS/LP20 printers (NO,YES,PROMPT): y
Include UNIBUS/CD20 card readers (NO,YES,PROMPT): n

Local terminal configuration:
DZ-11 TTY lines (0-32) : 32

OPR octal line number (CTY,0-37) : cty
Data set lines
0-37

Number of Jobs (1-511) : 127
Maximum pages of core for each job (0,0-16384) :
Total amount of system core in K (512-4096) : 1024
Clock ticks per second (60,50) : 60
Allow jobs to be locked in core (YES,NO) :
Guaranteed number of pages for unlocked jobs (0,0-16384) :
Number of pages reserved for locking jobs in Exec Virtual Memory (10,0-?) :
Number of high priority interrupt queues (0,0-15): 15
Meter (NO,YES) :
KASER (NO,YES) :
MPXSER (YES,NO) :
PSISER (YES,NO) :
IPCF (YES,NO) : ?
? Type one answer followed by carriage return
IPCF (YES,NO) [
Do you want to load the Inter-Process Communication Facility software?
IPCF allows jobs and/or system processes to communicate with each other.
IPCF is required for the operation of MCS-10 and GALAXY-10.]:
ENQ/DEQ (YES,NO) :
Disk sets (ALL) :
Configure non-autoconfigured hardware (NO,YES) :
Number of KMC/DUP Lines (0,0-2) :
Number of PTYs (20,1-476) :

Network software (YES,NO) : n

Decimal "symbol,value"

Octal "symbol,value"

SIXBIT "symbol,value"

Type "device-mnemonic,PI-channel" for special devices

Type "device-mnemonic,PI-channel,no.-of-devices"

Type "device-mnemonic,PI-channel,highest-ac-to-save"

Type "ersatz-device,P,Pn,search-list-type"

Type "command-name,dispatch,flags,unique-bits,PRVTAB-name"

Terminal class :

Additional terminals for classes:

Class to extend :

System default terminal type (TTY) :
File DSK:SYSCNF.MAC Closed

Which GEN (SYS,F) : f
Output(DSK:F.MAC):
Feature set (KL10,KS10) : ks10
Standard settings (YES,NO) : ?
? Type one answer followed by carriage return
Standard settings (YES,NO) [
Type YES to use the standard DEC-supported feature test settings. Type NO
to change or define the feature test settings to non-standard values.]:
File DSK:F.MAC Closed

Which GEN (SYS,F) : ^Z

EXIT

.compile/compile f,s
MACRO: F
MACRO: S

EXIT

.compile/compile devprm,dteprm,netprm,d36par
MACRO: DEVPRM
MACRO: DTEPRM
MACRO: NETPRM
MACRO: D36PAR

EXIT

.compile/compile syscnf+<common,comdev,commod>
MACRO: COMMON
MACRO: COMDEV
MACRO: COMMOD

EXIT

.r link

*sys2/save/noinitial/hash:13k = /locals -
#common,comdev,commod,tops10[10,7,mon,ks]/search-
#/patch:200/counters/go
[LNKRLC Reloc. ctr. initial value current value limit value
.LOW. 0 64443 344000
.HIGH. 344000 607657 720000
.INIT. 740000 764722 771000
.TWIC. 771000 772401 1000000
Absolute code loaded]

EXIT

.r opr

OPR>set ksys now
OPR>
16:21:53 -- Event KSYS queued, request #4 --

16:21:53 -- Timesharing is over --
Wait for "KSYS processing complete" message before SHUTDOWN

16:21:53 -- Waiting for BATCON to start for KSYS logouts --

OPR>
;;SYSTEM: - Timesharing is over!

16:21:55 -- KSYS processing completed --

OPR>exit

.dir sys2*

SYS2 EXE 1252 <057> 7-May-02 704(33461) DSKB: [10,7,MON]

.kjob
[LGNJSP Other jobs same PPN]
Job 2 User OPR [1,2]
Logged-off CTY at 16:22:33 on 7-May-102
Runtime: 0:00:23, KCS:1700, Connect time: 0:12:48
Disk Reads:9803, Writes:4086, Blocks saved:0

.
Simulation stopped, PC: 000001 (SOJG 6,1)
sim> set fe stop
sim> go
BOOT>sys2.exe[10,7,mon]
[Loading from DSKB:SYS2.EXE[10,7,MON]]

PDP10 07-May-02
Why reload: new
Date:
Time:
Startup option: go

PDP10 16:23:13 CTY system 4097
Connected to Node CENTRA(0) Line # 42
.LOGIN 1,2
.R OPR

[CCPWFD Waiting for file daemon to start]
%%TTY STOMPER - Starting
OPR>
16:23:27 -- Message from the Accounting System --
Account validation is not required

16:23:28 -- Begin auto take file --
File: SYS:SYSTEM.CMD[1,4]

16:23:28 -- End auto take file --
17 lines processed

OPR>set ksys now
OPR>
16:24:35 -- Event KSYS queued, request #4 --

16:24:35 -- Timesharing is over --
Wait for "KSYS processing complete" message before SHUTDOWN

16:24:35 -- Waiting for BATCON to start for KSYS logouts --

OPR>
;;SYSTEM: - Timesharing is over!

16:24:36 -- KSYS processing completed --

OPR>exit

.kjob
[LGNJSP Other jobs same PPN]
Job 2 User OPR [1,2]
Logged-off CTY at 16:24:45 on 7-May-102
Runtime: 0:00:00, KCS:9, Connect time: 0:01:31
Disk Reads:503, Writes:0, Blocks saved:0

.
Simulation stopped, PC: 000001 (SOJG 6,1)
sim> set fe stop
sim> go
BOOT>
Simulation stopped, PC: 706440 (SOJGE 2,706437)
sim> quit
Goodbye
$ exit

script done on Tue 07 May 2002 04:24:57 PM EDT

About Quentin

Im just a normal bloke.
This entry was posted in Retro Computing and tagged , , , , . Bookmark the permalink.

2 Responses to Configuring PDP10 Tops-10 for online use

  1. Doctor Forbin says:

    Hi. Do you know the syntax for creating a directory for a user (a UFD) under [1,1] and than deleting the UFD? I use to have it but have forgotten the syntax

    • Quentin says:

      It’s in the FAQ under how do I create an SFD. Essentially you do this:


      .r credir

      Create directory: [,,BCPL]
      Created DSKB0:[27,100,BCPL].SFD/PROTECTION:775
      Create directory: ^Z

      .dir

      HELLO BAS 1 7-Feb-18 DSKB: [27,100]
      BCPL SFD 1 28-Mar-18
      Total of 2 blocks in 2 files on DSKB: [27,100]

Leave a Reply