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 or click here for the c source file.

No real idea about c or gcc on Solaris, but this worked...

bash-3.00# gcc -o timage timage.c
bash-3.00# ./timage
Usage: timage from-nrmt to-file


bash-3.00# ./timage /dev/rmt/0cn dsm_image
256 records, blocksize 512
36 records, blocksize 1024
877 records, blocksize 1024
310 records, blocksize 1024
/dev/rmt/0cn: I/O error
child pipe read R: Error 0
bash-3.00#


Running the simh PDP11 simulator and booting from the DSM-11 tape image

bash-3.00# /export/home/simh/machines/pdp11

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:

%BLKWT %BN %CRF %CRF1 %CURSOR %D %DH %DIAL
%DO %DOC %E %EB %ED %EDI %EDIEDT %EDIFIL
%EDIINS %EDILST %EDIMAC %EGD %ER %ET %FGC %FGR
%FGR1 %FGR2 %FGR3 %FGR4 %FGT %FL %G %G1
%G2 %G3 %G4 %GCH %GD %GE %GEDIT %GGP
%GL %GL1 %GLO1 %GLO2 %GLOMAN %GR %GRT %GRTINI
%GRTR %GRTS %GS %GS1 %GSEL %GSEL1 %GTI %GTO
%GUCI %H %HD %HDR %HDR1 %HELP %HELPED %HELPH
%HELPMEN %IOS %IOS1 %JOB %LIB %LNKMP %MENLIS %MENU
%MTCHK %NAKED %OD %OVR %P %PC %PCMP %PCOMP
%PCOPY %PCR %PD %PDEL %PEXC %PFL %PL %PP
%PR %PRIO %PS %PSD %PSE %PSEDIT %PSEL %PXR
%RCE %RCMP %RCOPY %RD %RDX %RM %RM1 %RML
%RR %RS %RSE %RSEL %STRTAB %SUM %SUM1 %SUM2
%SUM3 %SUM4 %SUM5 %SUMSEL %SY %SYR %SYSROU %T
%TDN %UTL %VAR %WU ACTJOB ALLOCAT ATTACH AUPAT
AUPAT0 AUPAT1 AUPAT2 BACKCRE BACKCRF BACKCRG BACKFL BACKHELA
BACKHELP BACKJRN BACKLOGO BACKMGA BACKMM BACKMMGO BACKMNT BACKONE
BACKPRT BACKSET BACKSTR BACKUNJR BACKUP BACKUPDO BACKUPPR BACKVARS
BACKVERI BACKVRS2 BBTAB BCS BLDMP BLDMP1 BOOTCOPY BSC
BSCBIT BSCEBC BSCHLT BSCMON BSCPE BSCPEB BSCPER BSCQUE
BSCRCV BSCSTA BSCSTR BSCXMT CARE CONFIG CREATPQ CTK
CTK0 CTK1 CTK2 CTKDAT CTKUTL DAT DBT DBTALLY
DDP DDPCIR DDPCON DDPLNK DDPSRV DDPUTL DDR DEJRNL
DEJRNL1 DEJRNL2 DESPOOL DETACH DGAM DISKMAP DISKPREP DISKSIZ
DISMOUNT DPBBSET DPBEGIN DPFMT30 DPFORMAT DPINIT DPLABGET DPNEWL
DPSYCOPY DPTEST DPUTILOD DSKTRACK FASTDBT FASTGTO FASTIC FIX
FIXDATA FIXDATA1 FIXGD FIXMAP FIXMAP1 FIXPTR FIXPTR1 FIXROU
GC GC1 GLBPLACE IC IC0 IC1 IC2 IC3
IC4 INSTALL JOBTAB JRNALL JRNCOPY JRNCOPY1 JRNCOPY4 JRNDEALL
JRNDKEND JRNGETST JRNINIT JRNL JRNLSHOW JRNRECOV JRNSTART JRNSTOP
JRNSTU KTR KTR1 KTRUDA LABEL LABELMT LABSHO LMAP
LOAD LOADR LOCKTAB MAKESDP MAPMOUNT MAPM1 MBP MBP1
MBP1H MBP2 MBPH MDAT MMD MOUNT MOUNTX MSUROU
MUX MUX1 MUXDEF PARTAB PARVEC PARVEC0 PATCH PATFL1
PATFL2 PATFL3 PATFL4 PATFL5 PCHIST PCHIST1 PCHISTP PEEK
REPTAB REST RESTDO RESTDOMG RESTMAGU RESTMAS RESTMNT RESTRESB
RESTRTNS RJD RMAP RMBLD RMDIS RMSHO RMLOAD RTHELP
RTHIST RTHIST1 RTHISTP SAVBOOMK SAVBOOT SDCCOPY SDP SETHOST
SGAUTO SGBUFF SGBUFFH SGDATA SGDEVS SGDISK SGDMC SGLOAD
SGMAGT SGMEM SGOPTH SGOPTS SGPART SGSOFT SGSUB SPL
SPLALL SPLINI SPLREM SPLSTR SSD STA STU STU1
STU2 STU3 STU4 STUBLD STUBLD2 STUBLDH STUCSR STUDIST
STUSETPV STUSPL SWREG SYCOPY SYS SYSDEF SYSGEN SYSROU
SYSTAB SYSTAB0 SYSTAB1 SYSTAB15 SYSTAB2 SYSWAIT SYTOTAPE TAPCOPA
TAPECOPY TIM TRANTAB TRANTB1 TTTG TTTSHO UCIADD UCIEDIT
UCILI UCITAB UCITRAN UNLOAD UTL V3TAPEGL V3UTILS VER

Transferring the system globals:
SYS % %EDI %EDIHELP %HELP11 %MENU %Q

 

Now copying the system image onto your new disk,
making it a bootable DSM-11 Version 3.3 system disk...

 

DL0 is now a bootable DSM-11 Version 3.3 system disk.
You may dismount the distribution magnetic tape now.

Do you wish to proceed directly to SYSGEN ? <Y>

System generation for DIGITAL Standard MUMPS

Type ? for HELP at any time

PART 1: SYSGEN
-------

1.1 Would you like extended help [Y OR N] ? <N>

1.2 Enter the configuration identifier <1>

1.3 Do you wish to Auto-configure the current system [Y OR N] ? <Y>

Configuring Host System . . .

Processor Type: PDP-11/83

Memory Size: 256 KB

Processor/Memory Options:

Floating Point Unit
Extended Instuction Set
22 Bit Addressing
Cache

Name Vector CSR Unit Type Description

DKA 220 177404 RK11 Disk Controller
0 RK05 Disk Drive
1 RK05 Disk Drive
2 RK05 Disk Drive
3 RK05 Disk Drive
4 RK05 Disk Drive
5 RK05 Disk Drive
6 RK05 Disk Drive
7 RK05 Disk Drive

DMA 210 177440 RK611 Disk Controller
0 RK06 Disk Drive
1 RK06 Disk Drive
2 RK06 Disk Drive
3 RK06 Disk Drive
4 RK06 Disk Drive
5 RK06 Disk Drive
6 RK06 Disk Drive
7 RK06 Disk Drive

RHA 254 176700 RH11 Disk Controller
0 RM03 Disk Drive
1 RM03 Disk Drive
2 RM03 Disk Drive
3 RM03 Disk Drive
4 RM03 Disk Drive
5 RM03 Disk Drive
6 RM03 Disk Drive
7 RM03 Disk Drive

DLA 160 174400 RL11 Disk Controller
0 RL01 Disk Drive
1 RL01 Disk Drive
2 RL01 Disk Drive
3 RL01 Disk Drive

DUA 124 172150 MSCP Disk Controller
0 RD54 Disk Drive
1 RD54 Disk Drive
2 RD54 Disk Drive
3 RX50 Disk Drive

MTA 224 172520 Device not supported

MUA 130 174500 TMSCP Tape Controller
0 TK50 Tape Drive
1 TK50 Tape Drive

DXA 264 177170 Device not supported

LPA 200 177514 LP11 Line Printer Controller

XHA 270 174440 DEQNA Ethernet Controller

YZA 300 160100 DZV11 Asynch Multiplexor Controller

YZB 310 160110 DZV11 Asynch Multiplexor Controller

YZC 320 160120 DZV11 Asynch Multiplexor Controller

YZD 330 160130 DZV11 Asynch Multiplexor Controller

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

3 LP11-0

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
>

>D ^SSD

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.

DDP shutting down ... DDP shutdown complete

... JOB # 2 HAS BEEN KILLED

READY TO HALT

Exit

Simulation stopped, PC: 007702 (INC R3)
sim> quit
Goodbye
bash-3.00#


Then booting from the installed disk - an RL02 pack

bash-3.00# /export/home/simh/machines/pdp11

PDP-11 simulator V3.8-1
sim> at rl0 dsm_working_rl.dsk
sim> boot rl0

Booting DSM-11...

DSM-11 Version 3.3
Now running the baseline system.

Please enter today's date <28-Sep-98>
Is today Monday ? <Y>
Please enter time [ HH:MM:SS ] > 11:47
Is this 11:47 AM in the Morning ? <Y>

Start up the default system (1) [Y/N] ? <Y>

Re-configuring memory...
Memory re-configured

Mounting SYS as Volume Set number S0
Volume 1 on DL0 has 4800 blocks 3259 available.
Total in volume set: 4800 blocks 3259 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
>