Type ASSEMBLE
Source Lines : 1,017
Fixes Applied : 7
Most Recent Version : Tuesday, December 12, 1978
Last Fix ID : [HRC371DS]
Module
DMSINS (INITSUB)
Function
TO CONTROL INITIALIZATION OF THE CMS NUCLEUS.
Attributes
RESIDENT WITH NUCLEUS AT IPL TIME.
Operation
AFTER INITIAL PROGRAM LOAD (IPL) OF THE CMS NUCLEUS, CONTROL PASSES TO THE ONE-TIME INITIALIZATION PROGRAM INITSUB, WHICH IMMEDIATELY ESTABLISHES ADDRESSABILITY AND PROCEEDS AS FOLLOWS: 1. SAVES THE IPL-ED DEVICE ADDRESS. 2. CALLS ADTLKP TO LOCATE THE ACTIVE DISK TABLE FOR THE SYSTEM DISK. 3. SETS LOW-EXTEND TO X'40000'. 4. CALLS DMSFRES FOR FIRST-PASS STORAGE INITIALIZING. 5. CALLS DMSFREE TO RESERVE ALL NUCLEUS FREE STORAGE 6. CALLS READFST TO READ IN ALL S-DISK FST'S. 7. CALLS DMSFRET TO RETURN ALL NUCLEUS STORAGE 8. CALLS DMSFREE TO GET NUCLEUS FREE STORAGE FOR SSTAT. 9. CREATES THE SSTAT FROM 'S2' FILES ON S-DISK 10. USES CP-DIAGNOSE TO DETERMINE CHARACTERISTICS OF A DYNAMIC DISK (IF PRESENT). 11. CHECKS IF THE D-DISK HAS A VALID CMS-LABEL AND DECIDES IF A FORMAT OR ACCESS IS REQUIRED. 12. CHECKS TO SEE IF A Z-DISK IS REQUIRED. 13. TYPES VERSION IDENTIFICATION MESSAGE. 14. READS THE FIRST COMMAND AND IF IT WAS 'SAVESYS, ISSUES A DIAGNOSE TO CP USING THE INPUT LINE AS THE PARAMETER LIST. GOTO 10. 15. IF THE FIRST COMMAND WAS ANYTHING ELSE A. ACCESS THE YDISK (IF PRESENT) B. Load the GCC runtime library into high HRC371DS memory and update a pointer in NUCON with HRC371DS its address. HRC371DS C. Load REXX into high memory and establish it HRC371DS as a nucleus command. Now all EXECs can be HRC371DS written in REXX. HRC371DS D. Access the user's A disk. HRC371DS E. Stack a plist LIFO for "PROFILE EXEC" HRC371DS (if present and if "ACCESS ( NOPROFILE" was HRC371DS not entered as the first command) HRC371DS F. Stack a plist LIFO for "SYSPROF EXEC" HRC371DS (if present and if "ACCESS ( NOPROFILE" was HRC371DS not entered as the first command) HRC371DS G. Access the D disk or, if not formatted, HRC371DS stack a plist LIFO to format the D disk HRC371DS (if present) HRC371DS HRC371DS Thus the command EXEC SYSPROF will be executed HRC371DS before the PROFILE EXEC is executed. Eventually, HRC371DS we may first stack a "RELEASE A" command so that HRC371DS we can ensure that SYSPROF EXEC S is executed... HRC371DS HRC371DS 16. SETS VALUE OF BLIP TIMER. 17. DETERMINES VIRTUAL MACHINE SIZE AND ALLOCATES 2 PAGES OF LOADER TABLES IF MACHINE SIZE IS NOT OVER 320K. 3 PAGES ARE OTHERWISE ALLOCATED But if the machine is 4MB or larger, allocate HRC371DS 64 pages of loader tables. HRC371DS 18. CALLS DMSFRES FOR FINAL STORAGE INITIALIZING 19. GOTO INIT.
Calls to Other Routines
DMSFRES, DMSFREE, DMSFRET, READFST, DMSINT, DMSDIOR, DMSCAT