The following files and information are presented as an historical record only. They should never be used for any commerical projects!
Digital Standard Mumps for the PDP11 (DSM-11) is an operating system, programming language, and database all rolled together.
It was used extensively in the UK in the health service and also in financial back-office systems.
See the downloads page for individual files.
Copying original DEC tapes for use with simh
(These notes are more of a reminder for myself than anything else!)
As an example, these notes apply to copying a DSM-11 SYSTO tape. DSM-11 was DEC's version of MUMPS for the PDP11. The tape I have is V3.3.
I have a DEC TSV07 tape drives with a single ended SCSI interface connected to a SUN SPARC Server running Solaris 10.
The SUN Server 'sees' the tape drive as /dev/rmt/0c and as /dev/rmt/0cn (the no-rewind option).
Use 'export TAPE=/dev/rmt/0c ' to avoid having to specify it all the time to the mt command.
mt rew - will rewind the tape mt offline - will rewind and unload the tape
tcopy /dev/rmt/0cn > file_name is a useful command to investigate what is on the tape. Use /dev/rmt/0cn - the n option avoids rewinding the tape each time. Keep repeating the command as you work through the tape.
dd if=/dev/rmt/0c of=image_file_name bs=40960 The default block size is 512, but specifying a much bigger size will make sure we get it all.
The most useful program is found here: http://inwap.com/pdp10/usenet/timage.c
No real idea about c or gcc on Solaris, but this worked...
Running the simh PDP11 simulator and booting from the DSM-11 tape image
PDP-11 simulator V3.8-1 sim> sim> att tm dsm_image sim> att rl0 dsm_working_rl.dsk RL: creating new file Overwrite last track? [N] Y sim> boot tm
Booting DSM-11... DSM-11 Version 3.3 Now running the baseline system.
Begin DSM-11 Version 3.3 system installation
Answer with a question mark (?) any time you wish more information.
Please enter today's date [ DD-MMM-YY ] ? > 28-SEP-98
and time [ HH:MM:SS ] ? > 11:42
Install DSM-11 on which disk unit ? > ? Possible units are: DK0 (RK05 unit 0) DK1 (RK05 unit 1) DK2 (RK05 unit 2) DK3 (RK05 unit 3) DK4 (RK05 unit 4) DK5 (RK05 unit 5) DK6 (RK05 unit 6) DK7 (RK05 unit 7) DL0 (RL01 unit 0) DL1 (RL01 unit 1) DL2 (RL01 unit 2) DL3 (RL01 unit 3) DM0 (RK06 unit 0) DM1 (RK06 unit 1) DM2 (RK06 unit 2) DM3 (RK06 unit 3) DM4 (RK06 unit 4) DM5 (RK06 unit 5) DM6 (RK06 unit 6) DM7 (RK06 unit 7) DR0 (RM03 unit 0) DR1 (RM03 unit 1) DR2 (RM03 unit 2) DR3 (RM03 unit 3) DR4 (RM03 unit 4) DR5 (RM03 unit 5) DR6 (RM03 unit 6) DR7 (RM03 unit 7) DU0 (RD54 unit 0) DU1 (RD54 unit 1) DU2 (RD54 unit 2)
Type the 2-character controller type, and the unit number, like this: "DK0" for RK05 unit 0, or "^" to go back.
Install DSM-11 on which disk unit ? > DL0 Do you wish to run a comprehensive test for bad blocks on this disk ? [Y/N] > Y
Test pattern 177777 octal ? [Y/N] > Y Test pattern 125252 octal ? [Y/N] >
Each test consists of writing a test pattern on the entire disk, then verifying that it can be read back without errors. Any block which gives errors (even recoverable errors) will automatically be entered in the bad-block table on the disk, and will not be used by DSM11. If you answer 'Y', you will be able to choose, optionally, one or more of the following test patterns: 177777 octal (all one bits) 125252 octal (alternating one and zero bits) 052525 octal (alternating zero and one bits) 000000 octal (all zero bits)
Test pattern 177777 octal ? [Y/N] > Y Test pattern 125252 octal ? [Y/N] > Y Test pattern 052525 octal ? [Y/N] > Y Test pattern 000000 octal ? [Y/N] > Y
(You may hit the "ESC" key at any time to determine the number of blocks processed so far)
11:42:27 Begin test pattern 177777
11:42:28 Begin test pattern 125252
11:42:30 Begin test pattern 052525
11:42:31 Begin test pattern 000000
11:42:34 Testing complete
RL01 Unit 0 Bad Block Table
The Bad Block Table is empty
Do you know of any other bad blocks on this disk ? [Y/N] > N
What would you like the new label of this disk to be ? (up to 22 characters, enclosed in quotes) ? > DSM11 Like this: "THE NEW LABEL" What would you like the new label of this disk to be ? (up to 22 characters, enclosed in quotes) ? > "DSM-11"
What 3-character uppercase name do you wish to give this volume set ? SYS Now initializing DL0 for use as DSM-11 volume... Loading the DSM-11 Version 3.3 system utilities onto the system disk:
1.4 Do you wish to modify this configuration information [Y OR N] ? <N>
PART 2: DISK INFORMATION -------
Disk information supplied by AUTOCONFIGURE
PART 3: SYSTEM DEVICES -------
System Device information supplied by AUTOCONFIGURE
PART 4: CONFIGURE DMC/DMR-11's and DDP -------
4.5 How many DSM nodes are connected to DEQNA #0 > 2
PART 5: SOFTWARE CONFIGURATION -------
5.1 Do you wish to use the STANDARD SOFTWARE OPTIONS [Y OR N] ? <Y>
PART 6: ASSIGN DEVICE NUMBERS -------
The following single line device assignments have been made:
Device Number Controller-Number
PART 7: SOFTWARE OPTIONS -------
SEQUENTIAL DISK PROCESSOR support: Included
JOURNAL support: Included With 2 buffers
SPOOLING support: Not Included
INTERJOB COMMUNICATIONS support: Included With 16 communication channels and a 64 byte default ring buffer size
LOADABLE or USER DRIVER SPACE support: Not Included
MAPPED ROUTINES support: Not Included
UCI TRANSLATION TABLES support: Included
MOUNTABLE DATABASE VOLUME SETS support: Included
Total System Exec size: 85.42 K Bytes
PART 8: MEMORY BUFFER ALLOCATION -------
Number of 512 byte DDP buffers: 40
Default terminal RING BUFFER size: 64 Bytes
Total space allocated to RING BUFFERS: 3328 Bytes
Total number of 1 K byte DISK-TAPE cache buffers: 68
PART 9: SYSTEM DATA STRUCTURES -------
Space allocated for DISK-MAP and BAD BLOCK TABLE: 9472 Bytes Space allocated to UCI TRANSLATION TABLE: 1280 Bytes Space allocated to GLOBAL VECTOR TABLE: 4096 Bytes Space allocated to DDP structures: 10752 Bytes
Space allocated to the LOCK TABLE: 512 Bytes
Number of mountable DATABASE VOLUME SETS: 7
PART 10: JOB PARTITION DEFINITION --------
PARTITIONs are allocated in 1024 byte increments.
The following PARTITIONs have been defined:
JOURNAL system job 1 KB GARBAGE COLLECTOR system job 1 KB Job #1 (to guarantee one 9 K byte PARTITION) 9 KB
Default partition size: 9 K Bytes
Space remaining for PARTITION allocation: 34.00 K bytes
The remainder of memory is assigned to the DYNAMIC PARTITION POOL
PART 11: DATABASE PARAMETERS --------
WRITE CHECK after WRITE on disks: Not Included
System default global characteristics are:
8 Bit Subscripts: Yes Journaling: No Collating sequence: Numeric
PART 12: BASIC SYSTEM PARAMETERS --------
Default UDA disks that are dual-ported. NONE
View buffer device protection: Included
ZUSE command protection: Included
LOGIN SEQUENCE CHARACTERS: echoed
Default APPLICATION INTERRUPT key: 3 (CTRL/C)
Default PROGRAMMER ABORT key: 25 (CTRL/Y)
Time delay for POWER FAIL RESTART: 40 seconds
Time delay for TELEPHONE DISCONNECT: 15 seconds
Number of significant DIGITS for DIVISION: 12
12.9 Is the LINE FREQUENCY 60 HZ [Y OR N] ? <Y> N
12.10 Enter the 3-character Programmer Access Code (PAC) > xxx\xxx\XXX
Please enter your initials > KRM
Enter comment (max. 200 chars.) >
The system global ^SYS has been built by SYSGEN. ^SYS is a reserved global and should not be altered.
If you wish to customize your new configuration by modifying:
. Terminal speed settings or other parameters . Magnetic tape default format . UCI's or database VOLUME SETS . TIED TERMINAL table . UCI translation table . Default GLOBAL CHARACTERISTICS/PLACEMENT . Routine maps
then login to the manager's UCI and type "D ^SYSDEF"
You do not have a startup command file, Do you wish to remain in baseline mode ? <N>
Begin defining a new startup command file.
Configuration ? <1> 1 Apply patches to memory [Y OR N] ? <N> Start up the Journal [Y OR N] ? <N> Startup Distributed Database Processing [Y OR N] ? <N> Start the Caretaker background job [Y OR N] ? <Y> Enter the Printer Number for system error messages <1> Automatic logging of DSM errors [Y OR N] ? <N> Mount additional disk volumes [Y OR N] ? <N> Make this the new startup file for configuration 1 [Y OR N] ? <Y>
Re-configuring memory... Memory re-configured
Mounting SYS as Volume Set number S0 Volume 1 on DL0 has 4800 blocks 3261 available. Total in volume set: 4800 blocks 3261 available.
Building terminal control blocks...
Caretaker is now running as job number 2.
DSM-11 Version 3.3 1 is now up and running! Exit
DSM-11 Version 3.3 Device #1 UCI: mgr:xxx <NOPGM>:1 G ^xxx Exit
DSM-11 Version 3.3 Device #1 UCI: MGR:XXX >
1 JOB IS CURRENTLY LOGGED IN. LOGINS ARE NOW DISABLED.
1. Display Logged-In Jobs 2. Perform Timed Shutdown 3. Terminate All Jobs, Perform Immediate Shutdown
ENTER OPTION > 3
THE FOLLOWING JOBS ARE STILL LOGGED IN:
JOB # PRINCIPAL DEVICE ROUTINE
2 1 CTK0
DO YOU WISH TO KILL THESE JOBS AND SHUT DOWN NOW (10 SECONDS TO ANSWER) [ Y/N ] ? <Y> ...Caretaker stopped.