Customizing MSOS 5 For the CDC 1700 Simulator | |
============================================= | |
1. Overview | |
Each MSOS 5 customer was provided with at least 2 sets of distribution | |
materials for MSOS 5 (on punched cards or magnetic tape): | |
1. A full distribution of all possible system modules for all supported | |
hardware confugurations (the Fortran library on the other hand is | |
tailored for a particular installation). | |
2. A distribution tailored for a specific installation. It only contains | |
device drivers for a specific configuration and may or may not include | |
modules from the Fortran run-time library. | |
Unfortunately none of the full distribution kits have survived so we will | |
have to make use of a tailored distribution. This means that we will only be | |
able to remove device drivers and make small modifications to a running system. | |
System customization consists of making modifications to 1 or 2 | |
source-level components: | |
1. The system skeleton which describes which is read by the initializer and | |
defines which components should be loaded into the system image and | |
specifies which components should be loaded on the library disk. The | |
skeleton is also able to define global values by the system. | |
2. SYSDAT. This an assembler source file which describes the peripheral | |
configuration including interrupts and equipment addresses. Optional | |
components, such as file manager, may have dedicated sections of SYSDAT. | |
The system skeleton may be extracted and edited by an application called SKED. | |
This is a very primitive line editor but, fortunately, most of the changes are | |
in SYSDAT. SYSDAT is usually provided as the last file present on a tailored | |
magtape distribution. Unfortunately I have been unable to use MSOS tools to | |
extract a useable version from a magtape so I wrote Unix tools to manipulate | |
magtape containers and compress/decompress COSY format files (rawtap & cosy). | |
Each customization builds on the previous version to change setting and/or | |
change MSOS drivers. Each customization is driven by a simh script, takes an | |
existing installation tape (typically MSOS5_SL136.tap) and generates a new | |
installation tape (MSOS5-Install.trap). When SYSDAT needs to be modified, a | |
sysdat.asm file is present which needs to be converted to fixed size (80 | |
characters) records and written to a magtape container: | |
dd if=sysdat.asm of=sysdat.asm.blk cbs=80 conv=block | |
rawtap -c sysdat.tap -r 80 sysdat.asm.blk | |
To perform a customization, a running installation generated by | |
msosInstall.simh is required. If necessary, create sysdat.tap as described | |
above (customizations 2 - 5) and run the simulator: | |
cdc1700 msosCustomX.simh <install tape> | |
where X is 1 to 5 depending on which customization is required. <install tape> | |
does not need to be specified if it is MSOS5_SL136.tap in the current | |
directory. The script will run through the customization steps and generate a | |
new install tape (MSOS5-Install.tap). msosInstall.simh can be used with this | |
tape to create a customized system. | |
Each customization directory includes msosCustomX.simh as well as sysdat.asm | |
and sysdat.tap (customization 1 does not require sysdat changes so it only | |
contains msosCustom1.simh. | |
2. Customization 1 | |
This customization changes the creation date of the OS which is | |
output to the console when the system boots. The changes are in-line in | |
msosCustom1.simh. SYSMON, SYSDAY and SYSYER modified by SKED. The values are | |
the month, day and year in ASCII (high byte first). | |
3. Customization 2 | |
This customization also changes the name of the system from "EXXON | |
DEVELOPMENT SYSTEM" to "SIMH DEVELOPMENT SYSTEM". Note that the SYSDAT module | |
name still includes "EXXON DEVELOPMENT SYSTEM" since there is no way to delete | |
a module and include a new one, only the ability to replace an existing module | |
is available. | |
4. Customization 3 | |
The default installation from MSOS5_SL136.tap sets up all four disk | |
drives as well as the drum for file storage. I have been unable to find a | |
method for initializing the disk space for anything other than the the | |
library disk (CDD0/CDD1). This customization changes the file manager | |
configuration to only use the library disk for storage. This change gets rid | |
of one of the verification errors. | |
5. Customization 4 | |
This customization gets rid of the 1743-2 Asynch communications | |
controller drive. There is no documentation for this device and it appears to | |
be used for the TIMESHARE option for which there are no good tapes available. | |
6. Customization 5 | |
This customization adds support for a 10336 real-time clock which | |
interrupts at ~60Hz. After all of the above modifications, an example run of | |
the system: | |
MSOS 5.0--PSR LEVEL 120 04/19/17 | |
SET PROGRAM PROTECT | |
SIMH DEVELOPMENT SYSTEM | |
65K MODE | |
CHECKING FILES - OK | |
ENTER DATE/TIME MMDDYYHHMM | |
0508891516 | |
DATE: 08 MAY 89 TIME: 1516:00 | |
MI | |
*BATCH | |
J | |
*JOB | |
J | |
*K,L4 | |
J | |
*LULIST | |
E10 | |
LOG1A | |
SYSID | |
SYSYER | |
SYSDAY | |
SYSMON | |
E *E | |
MSOS 5.0 LOGICAL UNIT LISTING FOR SIMH DEVELOPMENT SYSTEM 04/19/17 | |
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. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07 | |
31. 1732-3/616-92 MAG TAPE READ/WRITE MAGNETIC TAPE EQ 07 | |
32. 1742-120 LINE PRINTER WRITE ONLY LINE PRINTER EQ 04 | |
33. 1728/430 CARD READER/PUNCH READ/WRITE CARD RDR/PUNCH EQ 10 | |
34. 1711 TELETYPEWRITER READ/WRITE TELETYPE EQ 01 | |
J | |
7. RPG II and Cobol Installation | |
While installation materials for both RPG II and Cobol are available | |
on bitsavers.org (141_PRODUCT_SET.tap contains both) they are built to run | |
in core partition 3 which does not exist in the standard distribution tape | |
(MSOS5_SL136.tap). There does not appear to be sufficient documentation | |
available to add another partition. |