blob: 8082b751e650eaa4fef9e9b8d4b14e206446b51e [file] [log] [blame] [raw]
Installing MSOS 5 on the CDC 1700 Simulator
===========================================
1. Overview.
A Mass Storage Operating System Version 5 (MSOS 5) distribution tape
which will run on the CDC 1700 Simulator is available from bitsavers.org as
bits/CDC/1700_Cyber18/20100524/MSOS5_SL136.tap. At the time, CDC would have
tailored a distribution tape for the customer's specific hardware and this
tape was built for a 64KW 1784 system used by Exxon. Not all of the
peripherals included in the system are implemented on the simulator due to
lack of documentation but enough are available to perform a basic
installation.
2. Utilities
While implementing this simulator, I developed a number of tools for
manipulating SIMH .tap container files and some of the CDC MSOS -specific file
formats. These utilities are available from the simtools Github repository:
extractors/rawtap
Allows extract, create and append operations on .tap files.
extractors/cpytap
Copies a .tap file to a new .tap file while allowing file level edits;
skip file, replace file, append files and insert files. Any files
copies from the original source .tap will have their internal record
structure maintained. Files read from the local file system will be
written to the destination .tap file with a fixed record size.
converters/cosy
COSY is a compressed file format used by the CDC 1700 for source
card decks. This utility allows for the extraction of all files from
an archive or the creation of a new archive. It assumes that you
would have used rawtap to extract the archive from a .tap file.
3. Installation
3.1 Quick Installation Using Scripts
There are 2 scripts provided as part of the distribution for quickly
installing and running MSOS 5.0:
- msosInstall.simh
This script can be used to install MSOS 5.0 on a 1733-2 disk unit
(2 logical drives) from the standard installation tape as described
above. To perform an installation change to the directory you want
the install the install to occur in and copy MSOS5_SL136.tap to this
directory. If you want to install from a different tape, its name
can be passed on the command line:
cdc1700 msosInstall.simh install.tap
Start up the CDC1700 simulator using msosInstall.simh as the
configuration. The script will automatically supply the date of
installation for the initializer and the date/time for MSOS 5.0
when requested. The time, month and day will be set to their
current values from the host system. The year will be set to a
20th century year which has the same calendar as the current year
(MSOS 5.0 is not Y2K compliant).
While running this script the O/S will reboot twice and a log of
installation will be left in MSOSinstall.lpt. The final section of
the installation will be to run the installation verification
procedure. This will generate 3 errors:
1. Partition set up error
The verification procedure checks that partition 0 starts
below 0x8000. All of the installation tapes on bitsaver.org
that I've checked have partition 0 starting above 0x8000.
2. File Manager sequential file error
The installation procedure only creates disk images for a
single disk unit. The O/S is configured with 4 disk units
and a drum. This procedure will attempt to write to all
direct-access configured in the system and so will fail.
3. Fortran formatted I/O error
This error has not been investigated.
- msosRun.simh
Once installation is complete, this script may be used to run the
resulting system. It will use the same disk images created by
msosInstall.simh and will create a unique file for line printer
output based on the current date and time. Like the installation
script it will set the date/time for MSOS 5.0 to the current values
from the host system with the year set to a 20th century year with
the same calendar as the current year. As part of the start up
sequence it will patch MSOS so that the 1728 Card Reader/Punch and
1752 Drum are not accessible to programs since the simulator has
no support for these devices.
3.2 Full Installation By Hand
Installation of MSOS 5 occurs in 2 phases:
- Phase 1
In Phase 1, the distribution tape is booted and the initializer
lays down a skeleton system on the cartridge disk.
- Phase 2
In Phase 2, the skeleton system is booted from the cartridge disk
and the batch subsystem is started to read and process a sequence
of batch jobs to complete the installation.
It is important that both phases are within the same execution of the CDC
1700 Simulator since phase 1 leaves the tape correctly positioned at the
start of the batch jobs for phase 2.
The device drivers built into this version of MSOS 5 use specific
versions of the magtape and line printer controllers. The type of these
controllers must be set before attaching host data files. If the controller
types are not set correctly, phase 1 of the installation will complete
successfully but the batch subsystem will refuse to start.
Sample installation run of MSOS 5 (user input to MSOS is marked with "<==="):
CDC1700 simulator V4.0-0 Beta git commit id: 9d2079df
sim> set cpu instr=basic
sim> set cpu mode65k,64k
sim> set mt type=1732-3
sim> att mt0 MSOS5_SL136.tap
sim> set lp type=1742
sim> att lp MSOSinstall.lpt
LP: creating new file
sim> att cdd0 MSOS5-A.dsk
sim> att cdd1 MSOS5-B.dsk
CDD: creating new file
sim> boot mt0
MSOS 5.0 SYSTEM INITIALIZER
FWA OF CONTRL = 5000
DATE MM/DD/YY
07/14/88 <============================ Enter date
Q
*I,3 <================================= Distribution media is tape
*I,3
Q
*V <=================================== Start installation
*V
*V
*S,SYSMON,$3031
*S,SYSDAY,$3236
*S,SYSYER,$3832
*S,SYSLVL,$3230
*V
*V 1700 MASS STORAGE OPERATING SYSTEM - VER 5.0
*V
*V EXXON DEVELOPMENT SYSTEM
*V
*YM,LIBEDT,1
*YM,LOADSD,2
*YM,JOBENT,3
*YM,JOBPRO,4
*YM,PROTEC,5
*YM,JPLOAD,6
*YM,JPCHGE,7
*YM,JPT13,8
*YM,JCRDV4,9
*YM,JLGOV4,10
*YM,JPSTV4,11
*YM,NAMEV4,12
*YM,JPFLV4,13
*YM,AFILV4,14
*YM,RESTOR,15
*YM,RCOVER,16
*YM,BRKPT,17
*YM,ODEBUG,18
*YM,SYSCOP,19
*YM,SYSSEG,20
*YM,MIPRO,21
*YM,TDFUNC,22
*YM,EFSTOR,23
*YM,EFLIST,24
*YM,VERIFY,25
*YM,SCMM17,26
*YM,DUMMY1,27
*YM,DUMMY2,28
*YM,DUMMY3,29
*YM,DUMMY4,30
*YM,DUMMY5,31
*YM,DUMMY6,32
*YM,DUMMY7,33
*YM,DUMMY8,34
*YM,DUMMY9,35
*YM,DUMMY0,36
*S,N4,$0800
*S,END0V4,$7FFF
*S,BGNMON,$8000
*S,MSIZV4,$FFFF
*S,SECTOR,$5BFA
*
*L SYSTEM DATA PROGRAM
CS7C17
SYSDAT 0000 EXXON DEVELOPMENT SYSTEM SUMMARY-122
*L SPACE REQUEST PROCESSOR
SPACE 1C21 DECK-ID M29 MSOS 5.0 SUMMARY-136
*
* SYSTEM CORE RESIDENT PROGRAMS
*
*LP MONITOR
NMONI 8000 DECK-ID M10 MSOS 5.0 SUMMARY-136
RDISP 804D DECK-ID M23 MSOS 5.0 SUMMARY-110
RW 81FF DECK-ID M09 MSOS 5.0 SUMMARY-110
T14 82AD DECK-ID M26 MSOS 5.0 SUMMARY-110
T16 82BE DECK-ID M04 MSOS 5.0 SUMMARY-110
PARAME 82C9 DECK-ID M03 MSOS 5.0 SUMMARY-110
COMMON 833A DECK-ID M13 MSOS 5.0 SUMMARY-110
NIPROC 8361 DECK-ID M12 MSOS 5.0 SUMMARY-118
ALVOL 83F3 DECK-ID M16 MSOS 5.0 SUMMARY-110
OFVOL 8410 DECK-ID M15 MSOS 5.0 SUMMARY-110
ALCORE 841D DECK-ID M17 MSOS 5.0 SUMMARY-110
DCORE 84CB DECK-ID M19 MSOS 5.0 SUMMARY-110
PRTCDR 8634 DECK-ID M18 MSOS 5.0 SUMMARY-110
NFNR 884E DECK-ID M21 MSOS 5.0 SUMMARY-141
NCMPRQ 88C7 DECK-ID M20 MSOS 5.0 SUMMARY-110
MAKQ 88F7 DECK-ID M08 MSOS 5.0 SUMMARY-110
ADEV 8925 DECK-ID M22 MSOS 5.0 SUMMARY-132
TMINT 8A98 DECK-ID M06 MSOS 5.0 SUMMARY-116
DTIMER 8B2A DECK-ID M05 MSOS 5.0 SUMMARY-136
TOD 8B4D DECK-ID M25 MSOS 5.0 SUMMARY-110
MINT 8B9C DECK-ID M07 MSOS 5.0 SUMMARY-116
TRVEC 8CC6 DECK-ID M14 MSOS 5.0 SUMMARY-116
*LP DEBUGGING / CHECKOUT
SNAPOL 8D19 DECK-ID M02 MSOS 5.0 SUMMARY-110
DMP42X 8DD2 DECK-ID B17 PERIPH. DRIVERS 1.0B SUMMARY-106
B17332 8EA1 DECK-ID B11 PERIPH. DRIVERS 1.0B SUMMARY-106
*LP FILE MANAGER
FILMGR 8EF3 DECK-ID F01 FILE MANAGER 1.0 SUMMARY-124
RSPCV4 91DC DECK-ID F02 FILE MANAGER SUMMARY-116
SRHFIS 92CE DECK-ID F03 FILE MANAGER SUMMARY-110
*LP CORE RESIDENT DRIVERS
EFDATA 94A0 DECK-ID M27 MSOS 5.0 SUMMARY-110
DUMMY 960D DECK-ID M30 MSOS 5.0 SUMMARY-110
D1711 9630 DECK-ID B27 PERIPH. DRIVERS 1.0B SUMMARY-106
D17332 97D8 DECK-ID B34 PERIPH. DRIVERS 1.0B SUMMARY-119
D1752 9A77 DECK-ID A40 PERIPH. DRIVERS 1.0A SUMMARY-106
DPSDSK 9C81 DECK-ID C90 PERIPH. DRIVERS 1.2C SUMMARY-122
REWCK 9CB2 DECK-ID B78 PERIPH. DRIVERS 1.0B SUMMARY-106
MMEXEC 9CCD DECK-ID M01 MSOS 5.0 SUMMARY-132
D17432 9E60 DECK-ID B35 PERIPH. DRIVERS 1.0B SUMMARY-115
*LP REENTRANT FORTRAN RUNTIME LIBRARY
FORTR A0A9 DECK-ID A01 FTN 3.3 RUNTIME SUMMARY-102
Q8PRMR A1ED DECK-ID B01 FTN 3.3 RUNTIME SUMMARY-102
PARABR A217 DECK-ID B02 FTN 3.3 RUNTIME SUMMARY-102
Q8F2IR A228 DECK-ID B03 FTN 3.3 RUNTIME SUMMARY-102
ABSR A2D4 DECK-ID B04 FTN 3.3 RUNTIME SUMMARY-102
SQRTFR A2ED DECK-ID B05 FTN 3.3 RUNTIME SUMMARY-102
SIGNR A348 DECK-ID B06 FTN 3.3 RUNTIME SUMMARY-102
FXFLTR A374 DECK-ID B07 FTN 3.3 RUNTIME SUMMARY-102
EXPR A3AC DECK-ID B08 FTN 3.3 RUNTIME SUMMARY-102
ALOGR A44C DECK-ID B09 FTN 3.3 RUNTIME SUMMARY-102
TANHR A4C3 DECK-ID B10 FTN 3.3 RUNTIME SUMMARY-102
SNCSR A52F DECK-ID B11 FTN 3.3 RUNTIME SUMMARY-102
ATANR A5F9 DECK-ID B12 FTN 3.3 RUNTIME SUMMARY-102
Q8QIOR A697 DECK-ID C01 FTN 3.3 RUNTIME SUMMARY-102
BINARR A7FC DECK-ID C02 FTN 3.3 RUNTIME SUMMARY-102
IOCODR A847 DECK-ID D01 FTN 3.3 RUNTIME SUMMARY-102
INITLR A87B DECK-ID D02 FTN 3.3 RUNTIME SUMMARY-102
RSTORR A88A DECK-ID D03 FTN 3.3 RUNTIME SUMMARY-102
GETCHR A89A DECK-ID D04 FTN 3.3 RUNTIME SUMMARY-102
IPACKR A8B4 DECK-ID D05 FTN 3.3 RUNTIME SUMMARY-102
UPDATR A8F2 DECK-ID D06 FTN 3.3 RUNTIME SUMMARY-102
DECPLR A8FF DECK-ID D07 FTN 3.3 RUNTIME SUMMARY-102
INTGRR A925 DECK-ID D08 FTN 3.3 RUNTIME SUMMARY-102
SPACER A952 DECK-ID D09 FTN 3.3 RUNTIME SUMMARY-102
HOLR A96A DECK-ID D10 FTN 3.3 RUNTIME SUMMARY-102
DCHXR A9FE DECK-ID D11 FTN 3.3 RUNTIME SUMMARY-102
HXASCR AA71 DECK-ID D12 FTN 3.3 RUNTIME SUMMARY-102
AFMTOR AAC4 DECK-ID D13 FTN 3.3 RUNTIME SUMMARY-102
RFMTOR AAEE DECK-ID D14 FTN 3.3 RUNTIME SUMMARY-102
AFMTIR AB07 DECK-ID D15 FTN 3.3 RUNTIME SUMMARY-102
RFMTIR AB35 DECK-ID D16 FTN 3.3 RUNTIME SUMMARY-102
ASCHXR AB4C DECK-ID D17 FTN 3.3 RUNTIME SUMMARY-102
HXDCR AB87 DECK-ID D18 FTN 3.3 RUNTIME SUMMARY-102
FLOTIR AC17 DECK-ID D19 FTN 3.3 RUNTIME SUMMARY-102
FOUTR AC61 DECK-ID D20 FTN 3.3 RUNTIME SUMMARY-102
EOUTR ACEB DECK-ID D21 FTN 3.3 RUNTIME SUMMARY-102
EWRITR ADD3 DECK-ID D22 FTN 3.3 RUNTIME SUMMARY-102
INTI1R ADDF DECK-ID D23 FTN 3.3 RUNTIME SUMMARY-102
FORMTR ADFC DECK-ID D24 FTN 3.3 RUNTIME SUMMARY-115
Q8QFIR AFFD DECK-ID D25 FTN 3.3 RUNTIME SUMMARY-102
Q8QFLR B017 DECK-ID D26 FTN 3.3 RUNTIME SUMMARY-102
Q8QFXR B046 DECK-ID D27 FTN 3.3 RUNTIME SUMMARY-102
HEXAR B07D DECK-ID D28 FTN 3.3 RUNTIME SUMMARY-102
HEXDR B095 DECK-ID D29 FTN 3.3 RUNTIME SUMMARY-102
ASCIIR B0B2 DECK-ID D30 FTN 3.3 RUNTIME SUMMARY-102
DECHXR B0C7 DECK-ID D31 FTN 3.3 RUNTIME SUMMARY-102
AFORMR B0E7 DECK-ID D32 FTN 3.3 RUNTIME SUMMARY-102
RFORMR B103 DECK-ID D33 FTN 3.3 RUNTIME SUMMARY-102
FLOTGR B11F DECK-ID D34 FTN 3.3 RUNTIME SUMMARY-102
FLOTR B13B DECK-ID B14 FTN 3.3 RUNTIME SUMMARY-112
COMFPR B389 DECK-ID B15 FTN 3.3 RUNTIME SUMMARY-102
SGDBLR B49C DECK-ID E01 FTN 3.3 RUNTIME SUMMARY-102
Q8D2IR B4B0 DECK-ID E02 FTN 3.3 RUNTIME SUMMARY-102
DABSR B542 DECK-ID E03 FTN 3.3 RUNTIME SUMMARY-102
DSQRTR B55E DECK-ID E04 FTN 3.3 RUNTIME SUMMARY-102
DSIGNR B5DE DECK-ID E05 FTN 3.3 RUNTIME SUMMARY-102
DEXPR B60B DECK-ID E08 FTN 3.3 RUNTIME SUMMARY-102
DLOGR B6C7 DECK-ID E09 FTN 3.3 RUNTIME SUMMARY-102
DSNCSR B76D DECK-ID E11 FTN 3.3 RUNTIME SUMMARY-102
DATANR B882 DECK-ID E12 FTN 3.3 RUNTIME SUMMARY-132
Q8QDFR B958 DECK-ID E14 FTN 3.3 RUNTIME SUMMARY-102
DOUTR B974 DECK-ID E15 FTN 3.3 RUNTIME SUMMARY-102
DFLOTR BA7E DECK-ID E13 FTN 3.3 RUNTIME SUMMARY-102
DRSTRR BEDC DECK-ID E10 FTN 3.3 RUNTIME SUMMARY-102
NXTLOC BF12 NEXT AVAILABLE LOCATION
*
* SYSTEM MASS RESIDENT PROGRAMS
*
*M LIBEDT 1
LIBEDT 0203 DECK-ID M35 MSOS 5.0 SUMMARY-122
*M LOADSD 2
LOAD1 0243 DECK-ID M36 MSOS 5.0 SUMMARY-110
BRNCH1 0236 DECK-ID M37 MSOS 5.0 SUMMARY-132
PG2KRD 0398 DECK-ID O69 MSOS 5.0 SUMMARY-116
LIDRV1 03C9 DECK-ID M38 MSOS 5.0 SUMMARY-110
LCDRV1 041A DECK-ID M39 MSOS 5.0 SUMMARY-110
LMDRV1 0447 DECK-ID M40 MSOS 5.0 SUMMARY-110
LLDRV1 0466 DECK-ID M41 MSOS 5.0 SUMMARY-110
ADJOF1 0474 DECK-ID M42 MSOS 5.0 SUMMARY-110
CNVRT1 0480 DECK-ID M43 MSOS 5.0 SUMMARY-110
LSTOT1 0498 DECK-ID M44 MSOS 5.0 SUMMARY-110
LINK11 04EB DECK-ID M45 MSOS 5.0 SUMMARY-110
LOADR1 052E DECK-ID M46 MSOS 5.0 SUMMARY-116
NAMPR1 05A7 DECK-ID M47 MSOS 5.0 SUMMARY-110
RBDBZ1 0648 DECK-ID M48 MSOS 5.0 SUMMARY-110
ENTEX1 0741 DECK-ID M49 MSOS 5.0 SUMMARY-110
XFRPR1 0777 DECK-ID M50 MSOS 5.0 SUMMARY-110
STBASE 0788 DECK-ID M51 MSOS 5.0 SUMMARY-110
LNKENT 0870 DECK-ID M52 MSOS 5.0 SUMMARY-110
LNKCR1 088C DECK-ID M53 MSOS 5.0 SUMMARY-110
PATCH 08CD DECK-ID M54 MSOS 5.0 SUMMARY-110
TBSCH1 090F DECK-ID M55 MSOS 5.0 SUMMARY-110
HASH 0957 DECK-ID M56 MSOS 5.0 SUMMARY-110
TBSTR1 096F DECK-ID M57 MSOS 5.0 SUMMARY-110
PAGE 09C4 DECK-ID M58 MSOS 5.0 SUMMARY-136
PROGLD 0AB5 DECK-ID M59 MSOS 5.0 SUMMARY-110
SCAN1 0BB7 DECK-ID M60 MSOS 5.0 SUMMARY-110
CHPU1 0C7D DECK-ID M61 MSOS 5.0 SUMMARY-110
ADJOV2 0C8A DECK-ID M62 MSOS 5.0 SUMMARY-110
ADRPR1 0CA3 DECK-ID M63 MSOS 5.0 SUMMARY-110
*M JOBENT 3
JOBENT 0266 DECK-ID M64 MSOS 5.0 SUMMARY-116
T11 0112 DECK-ID M65 MSOS 5.0 SUMMARY-110
T7 0149 DECK-ID M66 MSOS 5.0 SUMMARY-110
T5 026B DECK-ID M67 MSOS 5.0 SUMMARY-110
T3 02C4 DECK-ID M68 MSOS 5.0 SUMMARY-110
*S,N1,P
*M JOBPRO 4
JOBPRO 026E DECK-ID M69 MSOS 5.0 SUMMARY-132
ONE 023D DECK-ID M70 MSOS 5.0 SUMMARY-110
TWO 0240 DECK-ID M71 MSOS 5.0 SUMMARY-110
THREE 0243 DECK-ID M72 MSOS 5.0 SUMMARY-110
* * * U N P A T C H E D E X T E R N A L S * * *
BATLST
*S,N2,P
*M PROTEC 5
UPROTK 0275 DECK-ID M73 MSOS 5.0 SUMMARY-115
JBKILL 044C DECK-ID M75 MSOS 5.0 SUMMARY-110
*M JPLOAD 6
JPLOAD 0282 DECK-ID M76 MSOS 5.0 SUMMARY-110
*M JPCHGE 7
JPCHGE 0287 DECK-ID M77 MSOS 5.0 SUMMARY-110
ASCHEX 013E DECK-ID M78 MSOS 5.0 SUMMARY-110
*M JPT13 8
T13 028C DECK-ID M79 MSOS 5.0 SUMMARY-110
*M JCRDV4 9
JCRDV4 0291 DECK-ID M80 MSOS 5.0 SUMMARY-136
*M JLGOV4 10
JLGOV4 0295 DECK-ID M81 MSOS 5.0 SUMMARY-110
*M JPSTV4 11
JPSTV4 0298 DECK-ID M84 MSOS 5.0 SUMMARY-110
*M NAMEV4 12
NAMEV4 029A DECK-ID M85 MSOS 5.0 SUMMARY-110
*M JPFLV4 13
JPFLV4 02A2 DECK-ID M82 MSOS 5.0 SUMMARY-110
*M AFILV4 14
JPF2V4 02A9 DECK-ID M83 MSOS 5.0 SUMMARY-110
*M RESTOR 15
RESTOR 02B3 DECK-ID M86 MSOS 5.0 SUMMARY-114
*M RCOVER 16
RCOVER 02B6 DECK-ID M87 MSOS 5.0 SUMMARY-110
OUTSEL 0144 DECK-ID M88 MSOS 5.0 SUMMARY-110
RDMPV4 0189 DECK-ID M89 MSOS 5.0 SUMMARY-110
MASDMP 0249 DECK-ID M90 MSOS 5.0 SUMMARY-110
*M BRKPT 17
BRKPT1 02BF DECK-ID N01 MSOS 5.0 SUMMARY-110
*M ODEBUG 18
ODBUG1 02CC DECK-ID N07 MSOS 5.0 SUMMARY-116
GETREQ 0120 DECK-ID N08 MSOS 5.0 SUMMARY-110
LHXREQ 0240 DECK-ID N09 MSOS 5.0 SUMMARY-110
DPCREQ 0300 DECK-ID N10 MSOS 5.0 SUMMARY-132
SCNREQ 03C0 DECK-ID N11 MSOS 5.0 SUMMARY-116
SETREQ 0480 DECK-ID N12 MSOS 5.0 SUMMARY-110
MBCREQ 04E0 DECK-ID N13 MSOS 5.0 SUMMARY-110
SCHREQ 05A0 DECK-ID N14 MSOS 5.0 SUMMARY-116
SPEREQ 0660 DECK-ID N15 MSOS 5.0 SUMMARY-113
CPPREQ 06C0 DECK-ID N16 MSOS 5.0 SUMMARY-110
SPPREQ 0720 DECK-ID N17 MSOS 5.0 SUMMARY-110
ADHREQ 0780 DECK-ID N18 MSOS 5.0 SUMMARY-110
SBHREQ 07E0 DECK-ID N19 MSOS 5.0 SUMMARY-110
ALCREQ 0840 DECK-ID N20 MSOS 5.0 SUMMARY-116
RELREQ 0900 DECK-ID N21 MSOS 5.0 SUMMARY-110
DACREQ 0960 DECK-ID N22 MSOS 5.0 SUMMARY-116
PTHREQ 0A80 DECK-ID N23 MSOS 5.0 SUMMARY-116
MTRREQ 0BA0 DECK-ID N24 MSOS 5.0 SUMMARY-116
MSDREQ 0C00 DECK-ID N25 MSOS 5.0 SUMMARY-116
CLUREQ 0CC0 DECK-ID N26 MSOS 5.0 SUMMARY-110
WCDREQ 0D20 DECK-ID N27 MSOS 5.0 SUMMARY-116
LASREQ 0D80 DECK-ID N28 MSOS 5.0 SUMMARY-110
DASREQ 0EA0 DECK-ID N29 MSOS 5.0 SUMMARY-116
MLUREQ 0F60 DECK-ID N30 MSOS 5.0 SUMMARY-110
DPTREQ 0FC0 DECK-ID N31 MSOS 5.0 SUMMARY-116
SLDREQ 1080 DECK-ID N32 MSOS 5.0 SUMMARY-116
CWAREQ 10E0 DECK-ID N33 MSOS 5.0 SUMMARY-132
DMHREQ 1200 DECK-ID N34 MSOS 5.0 SUMMARY-116
SMNREQ 12C0 DECK-ID N35 MSOS 5.0 SUMMARY-116
SMPREQ 1440 DECK-ID N36 MSOS 5.0 SUMMARY-116
LSPREQ 1500 DECK-ID N37 MSOS 5.0 SUMMARY-116
DSPREQ 15C0 DECK-ID N38 MSOS 5.0 SUMMARY-116
DMSREQ 16E0 DECK-ID N39 MSOS 5.0 SUMMARY-116
LSOREQ 1860 DECK-ID N40 MSOS 5.0 SUMMARY-116
CCCREQ 1980 DECK-ID N41 MSOS 5.0 SUMMARY-116
CCMREQ 1AA0 DECK-ID N42 MSOS 5.0 SUMMARY-116
CMMREQ 1BC0 DECK-ID N43 MSOS 5.0 SUMMARY-116
MMMREQ 1CE0 DECK-ID N44 MSOS 5.0 SUMMARY-116
LICREQ 1E60 DECK-ID N45 MSOS 5.0 SUMMARY-118
LIOREQ 1FE0 DECK-ID N46 MSOS 5.0 SUMMARY-116
LAMREQ 2160 DECK-ID N47 MSOS 5.0 SUMMARY-116
DDPREQ 2280 DECK-ID N48 MSOS 5.0 SUMMARY-116
LDPREQ 23A0 DECK-ID N49 MSOS 5.0 SUMMARY-116
LDOREQ 24C0 DECK-ID N50 MSOS 5.0 SUMMARY-116
DMDREQ 2640 DECK-ID N51 MSOS 5.0 SUMMARY-116
WDKREQ 27C0 DECK-ID N52 MSOS 5.0 SUMMARY-116
LSTREQ 28E0 DECK-ID N53 MSOS 5.0 SUMMARY-116
PRINT 2A60 DECK-ID N54 MSOS 5.0 SUMMARY-116
GETFLD 2B20 DECK-ID N55 MSOS 5.0 SUMMARY-110
ASHX 2BE0 DECK-ID N56 MSOS 5.0 SUMMARY-110
DMPBUF 2C40 DECK-ID N57 MSOS 5.0 SUMMARY-116
ASCDEC 2D00 DECK-ID N58 MSOS 5.0 SUMMARY-110
HXAS 2D60 DECK-ID N59 MSOS 5.0 SUMMARY-110
DECDMP 2DC0 DECK-ID N60 MSOS 5.0 SUMMARY-116
FETMM 2E80 DECK-ID N61 MSOS 5.0 SUMMARY-132
PNTMD 2FA0 DECK-ID N62 MSOS 5.0 SUMMARY-116
MASOT 3060 DECK-ID N63 MSOS 5.0 SUMMARY-116
CONFM 3180 DECK-ID N64 MSOS 5.0 SUMMARY-116
GETINT 32A0 DECK-ID N65 MSOS 5.0 SUMMARY-116
FLCVSG 3360 DECK-ID N66 MSOS 5.0 SUMMARY-116
FLCVDB 3480 DECK-ID N67 MSOS 5.0 SUMMARY-116
NAMEMS 35A0 DECK-ID N68 MSOS 5.0 SUMMARY-110
DCONV 3A20 DECK-ID N69 MSOS 5.0 SUMMARY-110
LAZY2 3B40 DECK-ID N70 MSOS 5.0 SUMMARY-110
ODDFLT 3C00 DECK-ID N71 MSOS 5.0 SUMMARY-110
ODDFTN 3CC0 DECK-ID N72 MSOS 5.0 SUMMARY-110
ECONV 4080 DECK-ID N73 MSOS 5.0 SUMMARY-110
LAZY1 4140 DECK-ID N74 MSOS 5.0 SUMMARY-110
ODFLOT 4200 DECK-ID N75 MSOS 5.0 SUMMARY-110
ODFXFL 4440 DECK-ID N76 MSOS 5.0 SUMMARY-110
*M SYSCOP 19
SYSCOP 0384 DECK-ID N77 MSOS 5.0 SUMMARY-110
*M SYSSEG 20
CO1ST 0389 DECK-ID N78 MSOS 5.0 SUMMARY-110
CO2ND 04E0 DECK-ID N79 MSOS 5.0 SUMMARY-136
CO3RD 0D80 DECK-ID N80 MSOS 5.0 SUMMARY-110
COLAST 1500 DECK-ID N81 MSOS 5.0 SUMMARY-110
*M MIPRO 21
MIPRO 03C2 DECK-ID N06 MSOS 5.0 SUMMARY-110
* * * U N P A T C H E D E X T E R N A L S * * *
CRIMPT
INDACS
TSUTIL
*M TDFUNC 22
TDFUNC 03C9 DECK-ID O67 MSOS 5.0 SUMMARY-110
*M EFSTOR 23
EFSTOR 03CD DECK-ID N04 MSOS 5.0 SUMMARY-110
*M EFLIST 24
EFLIST 03D2 DECK-ID N05 MSOS 5.0 SUMMARY-123
*M VERIFY 25
VERFY1 03F0 DECK-ID O24 MSOS 5.0 SUMMARY-110
*M SCMM17 26
SCMEXC 03F5 DECK-ID O54 MSOS 5.0 SUMMARY-117
*M DUMMY1 27
*M DUMMY2 28
*M DUMMY3 29
*M DUMMY4 30
*M DUMMY5 31
*M DUMMY6 32
*M DUMMY7 33
*M DUMMY8 34
*M DUMMY9 35
*M DUMMY0 36
*
* MASS RESIDENT DRIVERS
*
*M COSY DRIVER
DCOSY 0405 DECK-ID M34 MSOS 5.0 SUMMARY-114
NXTLOC 02F0 NEXT AVAILABLE LOCATION
*S,SCOSY,S
*S,LCOSY,P
*M 1732-3 616 MAG TAPE
D17323 040D DECK-ID B33 PERIPH. DRIVERS 1.0B SUMMARY-114
D327TR 0442 DECK-ID B36 PERIPH. DRIVERS 1.0B SUMMARY-106
NXTLOC 0565 NEXT AVAILABLE LOCATION
*S,S17323,S
*S,L17323,P
*M 1732-3 616 MAG TAPE LONG RECORD
D7323L 041C DECK-ID B38 PERIPH. DRIVERS 1.0B SUMMARY-114
NXTLOC 0539 NEXT AVAILABLE LOCATION
*S,S7323L,S
*S,L7323L,P
*M PSEUDO TAPE
DPSUDO 042A DECK-ID F04 FILE MANAGER SUMMARY-114
NXTLOC 03CD NEXT AVAILABLE LOCATION
*S,SPSUDO,S
*S,LPSUDO,P
*M 1742-30/120 LINE PRINTER
D42312 0435 DECK-ID B37 PERIPH. DRIVERS 1.0B SUMMARY-132
T5954 01AF DECK-ID B77 PERIPH. DRIVERS 1.0B SUMMARY-112
NXTLOC 023F NEXT AVAILABLE LOCATION
*S,S42312,S
*S,L42312,P
*M 1728-430 CARD READER/PUNCH - 026 FORMAT
D1728 043B DECK-ID A30 PERIPH. DRIVERS 1.0A SUMMARY-106
CR026 03A2 DECK-ID A16 PERIPH. DRIVERS 1.0A SUMMARY-106
CP026 03C2 DECK-ID A14 PERIPH. DRIVERS 1.0A SUMMARY-106
NXTLOC 0402 NEXT AVAILABLE LOCATION
*S,S1728,S
*S,L1728,P
*M 1728-430 CARD READER/PUNCH - 029 FORMAT
D1728 0446 DECK-ID A30 PERIPH. DRIVERS 1.0A SUMMARY-106
CR029 03A2 DECK-ID A17 PERIPH. DRIVERS 1.0A SUMMARY-106
CP029 03C2 DECK-ID A15 PERIPH. DRIVERS 1.0A SUMMARY-106
NXTLOC 0402 NEXT AVAILABLE LOCATION
*
* MASS RESIDENT FILE MANAGER
*
*M
DEFFIL 0451 DECK-ID F05 FILE MANAGER SUMMARY-116
FILSPC 0186 DECK-ID F06 FILE MANAGER SUMMARY-110
RPEND 0233 DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP01,S
*M
RELFIL 0457 DECK-ID F08 FILE MANAGER SUMMARY-110
RELSPC 0092 DECK-ID F09 FILE MANAGER SUMMARY-110
RPEND 0141 DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP02,S
*M
DEFIDX 045B DECK-ID F10 FILE MANAGER SUMMARY-110
SQRTFM 0098 DECK-ID F11 FILE MANAGER SUMMARY-110
FILSPC 00A8 DECK-ID F06 FILE MANAGER SUMMARY-110
RPEND 0155 DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP03,S
*M
LOKFIL 045F DECK-ID F12 FILE MANAGER SUMMARY-110
RPEND 004D DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP04,S
*M
UNLFIL 0460 DECK-ID F13 FILE MANAGER SUMMARY-110
RPEND 003D DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP05,S
*M
STOSEQ 0461 DECK-ID F14 FILE MANAGER SUMMARY-110
FILSPC 00C6 DECK-ID F06 FILE MANAGER SUMMARY-110
RPEND 0173 DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP06,S
*M
STODIR 0465 DECK-ID F15 FILE MANAGER SUMMARY-110
RPEND 008D DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP07,S
*M
STOIDX 0467 DECK-ID F20 FILE MANAGER SUMMARY-110
HASHCD 0341 DECK-ID F16 FILE MANAGER SUMMARY-110
GETKID 034C DECK-ID F17 FILE MANAGER SUMMARY-110
FILSPC 0373 DECK-ID F06 FILE MANAGER SUMMARY-110
RPEND 0420 DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP08,S
*M
EDFDMY 0472 DECK-ID F27 FILE MANAGER SUMMARY-116
FILSPC 0472 DECK-ID F06 FILE MANAGER SUMMARY-110
RPEND 00AF DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMREDF,S
*M
EDRDMY 0474 DECK-ID F28 FILE MANAGER SUMMARY-116
RTNSPC 0474 DECK-ID F19 FILE MANAGER SUMMARY-110
RPEND 00A2 DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMREDR,S
*M
RTVSEQ 0476 DECK-ID F18 FILE MANAGER SUMMARY-110
RTNSPC 018B DECK-ID F19 FILE MANAGER SUMMARY-110
RPEND 022B DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP09,S
*M
RTVDIR 047C DECK-ID F21 FILE MANAGER SUMMARY-110
RTNSPC 0115 DECK-ID F19 FILE MANAGER SUMMARY-110
RPEND 01B5 DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP10,S
*M
RTVIDX 0481 DECK-ID F22 FILE MANAGER SUMMARY-110
HASHCD 0258 DECK-ID F16 FILE MANAGER SUMMARY-110
GETKID 0263 DECK-ID F17 FILE MANAGER SUMMARY-110
RTNSPC 028A DECK-ID F19 FILE MANAGER SUMMARY-110
RPEND 032A DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP11,S
*M
RTVIDO 048A DECK-ID F23 FILE MANAGER SUMMARY-118
GETKID 0260 DECK-ID F17 FILE MANAGER SUMMARY-110
RTNSPC 0287 DECK-ID F19 FILE MANAGER SUMMARY-110
RPEND 0327 DECK-ID F07 FILE MANAGER SUMMARY-110
*S,FMRP12,S
*M
FMDUMY 0493 DECK-ID F24 FILE MANAGER SUMMARY-110
*S,FMREND,S
*S,JFILV4,S SPECIFY THE JOB FILE TABLE SPACE
*M,JFILV4+$40
*T END OF SYSTEM
* * * U N P A T C H E D E X T E R N A L S * * *
PARITY
POWERU
INITIALIZATION COMPLETED - YOU MAY AUTOLOAD
Simulation stopped, P: 5914 ( 18FF JMP* $FF)
sim> autoload cdd
sim> run 0
MSOS 5.0--PSR LEVEL 120 01/26/82
SET PROGRAM PROTECT
Simulation stopped, P: 1E13 ( 4CF0 STQ* ($F0))
sim> set cpu protect
sim> c
EXXON DEVELOPMENT SYSTEM
65K MODE
CHECKING FILES - OK
ENTER DATE/TIME MMDDYYHHMM
0714881208 <============================ Enter date/time
DATE: 14 JUL 88 TIME: 1208:00
MI <==================================== ^G (Control + G) for
manual interrupt
*BATCH <================================ Start batch subsystem
*CTO, MSOS 5.0 INSTALLATION COMPLETED - YOU MAY AUTOLOAD
Simulation stopped, P: 8592 (P 18FB JMP* $FB)
sim> q
Goodbye
Output from the batch jobs is sent to the line printer.
4. MSOS 5
4.1 Limitations
The distribution tapes for MSOS 5 were generated by CDC individually
for each customer so the one we have available (MSOS5_SL136.tap) is for a
machine initially installed at Exxon. This particular system included 4 1733-2
disk drives and a 1752 drum. The 1733-2 disks are full supported by the
simulator but the 1752 drum is not since I have not been able to locate any
documentation of the programming interface. The file manager storage is spread
out over all of the above devices so there will always be at least 1 error
detected when trying to create files. It is possible to patch the system so
that some of these devices are no longer present. Create a file "patchMSOS5"
in the directory you would normally run the emulator and add the following:
# Patch out unwanted devices
# 1752 drum
d 057C 0649
# 1733-2 unit 3
d 0589 0649
# 1733-2 unit 2
d 0570 0649
# 1733-2 unit 1
d 056F 0649
# 1728 Card Reader/Punch
d 056D 0649
d 057E 0649
d 0589 0649
#
set cpu protect
continue
When the system boots and asks the operator to "SET PROGRAM PROTECT", use ^E
to get a "sim> " prompt and execute this script with "do patchMSOS5". The
unwanted devices will be replaced with software dummy alternate device.
4.2 Using MSOS 5
The MSOS 5 reference manual contains all of this information (and more)
and is available from bitsavers.org as
pdf/cdc/1700/msos/MSOS_5/96769400C_MSOS_Version_5_Reference_Oct77.pdf.
To start using MSOS 5, use the "autoload cdd/run 0" as described above
to start execution of the MSOS 5 installation. Enable protect mode when
requested and enter the current date and time (the system is not Y2K
compliant so dates are only good through 1999).
The installation tape (MSOS5_SL136.tap) includes most optional
components; Macro Assembler, Fortran Compiler, File Manager, Sort/Merge. (So
far the only component I have found missing is RPG and there appears to be a
tape available on bitsavers.org).
Console input is only accepted once the manual interrupt character
(Control + G) has been typed and, even then, only a limited set of commands
is accepted. To execute applications from within the program library you must
start the batch sub-system and type in batch commands on the console. To
start batch and create a new job:
MI <==================================== ^G (Control + G) for
manual interrupt
*BATCH <================================ Start batch subsystem
J
*JOB <================================== Start a new batch job
J
4.3 MSOS 5 Utilities
As an example the following sequence will output the logical unit table
to the printer:
*LULIST <=============================== Load the listing program
E *E <================================== Start execution - the first
"E" is output by the loader
J
In this example, the initial "E" was an indication that the program
included some unpatched externals. At this point the following inputs are
valid:
* Causes execution regardless of unpatched externals
*E Resolves unpatched externals with core-resident entry
points and, if none are left, causes execution.
*T Causes job termination.
Using the same example we can change the logical device assignments so that
the output will be on the comment device (the console teletype):
*K,L4 <================================ Set system print unit to teletype
J
*LULIST
E10 List of unpatched externals
LOG1A
SYSID
SYSYER
SYSDAY
SYSMON
E *E <================================= Resolve externals and execute
MSOS 5.0 LOGICAL UNIT LISTING FOR EXXON DEVELOPMENT SYSTEM 01/26/82
LU. EQUIPMENT DESCRIPTION READ/WRITE CLASS CODE EQ NO
01. SOFTWARE CORE ALLOCATOR READ/WRITE NO CLASS CODE EQ 00
02. SOFTWARE DUMMY ALTERNATE DEVICE READ/WRITE NO CLASS CODE EQ 00
03. SOFTWARE DUMMY ALTERNATE DEVICE READ/WRITE NO CLASS CODE EQ 00
04. 1711 TELETYPEWRITER READ/WRITE TELETYPE EQ 01
05. COSY UNIT READ/WRITE MAGNETIC TAPE EQ 00
06. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07
07. PSEUDO TAPE UNIT READ/WRITE MAGNETIC TAPE EQ 00
08. 1733-2/856-4 DISK UNIT (4.5M) READ/WRITE MASS STORAGE EQ 03
09. 1742-120 LINE PRINTER WRITE ONLY LINE PRINTER EQ 04
10. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07
11. 1728/430 CARD READER/PUNCH READ/WRITE CARD RDR/PUNCH EQ 10
12. 1742-120 LINE PRINTER WRITE ONLY LINE PRINTER EQ 04
13. 1733-2/856-4 DISK UNIT (4.5M) READ/WRITE MASS STORAGE EQ 03
14. 1733-2/856-4 DISK UNIT (4.5M) READ/WRITE MASS STORAGE EQ 03
15. 1733-2/856-4 DISK UNIT (4.5M) READ/WRITE MASS STORAGE EQ 03
16. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07
17. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07
18. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07
19. PSEUDO TAPE UNIT READ/WRITE MAGNETIC TAPE EQ 00
20. PSEUDO TAPE UNIT READ/WRITE MAGNETIC TAPE EQ 00
21. PSEUDO TAPE UNIT READ/WRITE MAGNETIC TAPE EQ 00
22. PSEUDO DISK DRIVER READ/WRITE MASS STORAGE EQ 00
23. PSEUDO DISK DRIVER READ/WRITE MASS STORAGE EQ 00
24. PSEUDO DISK DRIVER READ/WRITE MASS STORAGE EQ 00
25. PSEUDO DISK DRIVER READ/WRITE MASS STORAGE EQ 00
26. 1752 DRUM UNIT READ/WRITE MASS STORAGE EQ 02
27. COSY UNIT READ/WRITE MAGNETIC TAPE EQ 00
28. 1728/430 CARD READER/PUNCH READ/WRITE CARD RDR/PUNCH EQ 10
29. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07
30. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
31. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
32. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
33. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
34. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
35. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
36. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07
37. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07
38. 1742-120 LINE PRINTER WRITE ONLY LINE PRINTER EQ 04
39. 1728/430 CARD READER/PUNCH READ/WRITE CARD RDR/PUNCH EQ 10
40. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
41. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
42. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
43. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
44. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
45. 1743-2 ASYN COMM CONTR READ/WRITE TELETYPE EQ 05
46. 1711 TELETYPEWRITER READ/WRITE TELETYPE EQ 01
J
4.4 Software Development Tools
The easiest way to make use of the software development tools (Macro
Assembler and Fortran Compiler) is through the batch system. You will need to
patch out at least the 1728 Card Reader/Punch for this to work (see section
4.1 above). For this description I'm going to assume the source code
(assembler or Fortran) is available on the host system (I'm assuming a Linux
or Unix derivative system). You will need the mksimtape utility available in
the simtools respository on github:
1. Create the source file (e.g. test.ftn) in upper case only.
2. Wrap the source code with compiler directives:
OPT ABC
PROGRAM XYZ
C FORTRAN PROGRAM
...
...
MON
The OPT/MON commands must be indented by 1 space. The OPT command specifies
what the compiler is to do with the input; generate listing, objects etc.
The MON command causes the compiler to return control to the operating
system once the compilation is complete.
3. Wrap the source again with batch directives:
*JOB
*FTN
OPT LAPX
PROGRAM XYZ
C COMMENT
...
...
END
MON
*CTO,COMPILATION COMPLETE
*LGO
data
*Z
This will compile the source code, send a message to the comment device
(typically the console TTY) and then load and execute the program. If the
program reads data from standard input it should follow the *LGO command.
4. The compiler/assembler expects each line of input to be in a separate
record on magtape so we need to convert the input file into fixed length
records. On Linux/Unix, dd will do this:
dd if=test.ftn of=test.blk cbs=72 conv=block
5. Write the file to a .tap container:
mksimtape test.blk:72 >test.tap
6. Now boot up MSOS5 in the simulator, attach test.tap to mt0, type ^G to
get the system's attention and type *BATCH to start the batch system
running. Listings should be sent to the line printer along with any
output from the application.
If you want to code in Macro Assembler, the operations are the same; change
*FTN to *ASSEM and change the OPT parameters. Documentation for both the Macro
Assembler and Fortran compiler are available on bitsavers.org.