*DECK DB$SR64 
USETEXT UTMPTTX 
USETEXT MD10CTX 
USETEXT MDBCMTX 
USETEXT CUGBATX 
      PROC DB$SR64; 
    BEGIN 
 #
  *   DB$SR64 - INITIALIZE FOR A RESTART         PAGE  1
  *   M D SAXE                                   DATE  06/25/76 
  *   A. W. LO                                   DATE  05/08/77 
  *   J. G. SERPA - MDU 2.3 ENHANCEMENTS         DATE  07/25/80 
  *   KIM H. NGUYEN                              DATE  11/09/84 
  
  DC  PURPOSE 
  
      CLEAR FLAGS, POINTERS AND CMM BLOCKS THAT ARE NEEDED FOR A
      RESTART.
  
  DC  ENTRY CONDITIONS
  
      AT LEAST 1 SCHEMA MUST HAVE BEEN EITHER CREATED OR MODIFIED.
  
  DC  EXIT CONDITIONS 
  
      REQUIRED FLAGS, POINTERS AND CMM BLOCKS HAVE BEEN CLEARED.
  
  DC  CALLING ROUTINES
  
      DB$STD - SYNTAX TABLE DRIVER
  
  DC  CALLED ROUTINES 
  
 #
      XREF
        BEGIN 
 #                                                                     #
        PROC DB$NO;          # STD NO RETURN                           #
        PROC DB$UALB;        # ALLOCATE MANY BLOCKS                    #
 #                                                                     #
        END 
  
      ITEM I;                #SCRATCH ITEM                             #
  
  
  
#     B E G I N   D B $ S R 6 4   E X E C U T A B L E   C O D E .      #
  
  
 #
  DC  DESCRIPTION 
  
      INITIALIZE FOR RESTART
 #
      AREANAM = " ";
      ARNMLEN = 0;
      ARNMLNW = 0;
      CCLFLAGS[0] = 0;
      CCLPROCNAME = " ";
      CHARGE  = " ";
      CHARGELEN = 0;
      FILENAM = 0;
      JOBFAM = " "; 
      JOBPW = " ";
      JOBUN = " ";
      SBNMLEN = 0;           # SUBSCHEMA NAME LENGTH IN CHARACTERS #
      SCHNAME = " ";
      SCNMLEN = 0;
      SUBNAME = " ";
      MODERR = 0; 
      NEWSCH = 0; 
      PCUTNDX = 0;           # INDEX INTO PRE-CONSTRAINT USE TABLE   #
      SCFILE = FALSE; 
      SCHDIRP = 0;           # POINTER USED TO INDEX SCHEMA DIRECTORY#
      SCHINCR = 0;
      SCFATAL = 0;
      SCINPRG = 0;
      VERSNAM = " ";
      UNITLIM = 0;
      UPDLIM = 0; 
      AREACHGF = FALSE; 
      EOTFLAG = FALSE;
      TAPEFLAGS[0] = 0; 
      TRACKTYPE = FALSE;
      DENSITY = 0;
      CURFILTYP = 0;
      VERSORD = 0;
  
 #
      INITIALIZE MDPFINFO 
 #
      P<GETENTRY> = LOC(MDPFWORD[0]); 
      FOR I = 0 STEP 1
        UNTIL FILETYPE"LASTFILE" * DFPFENTLEN - 1 
      DO
        BEGIN 
        GETUNSIG[I] = 0;
        END 
  
 #
      INITIALIZE THE SCHEMA INFORMATION TABLE.
 #
      P<GETENTRY> = LOC(MDSCINFO);
      FOR I = 0 STEP 1
        UNTIL DFMDSCINSZ - 1
      DO
        BEGIN 
        GETUNSIG[I] = 0;
        END 
 #
*     ALLOCATE MEMORY BLOCKS
 #
      DB$UALB;
 #
      INITIALIZE COUNTERS 
 #
      AREACNT = 0;
      CSTDCNT = 0;
      PROCCNT = 0;
      PWCOUNT = 0;
      VERSCNT = 0;
  
      DB$NO;
  
      END                                                                SR15 
      TERM                                                               SR15 
