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 where X is 1 to 5 depending on which customization is required. 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.