| 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. |