COMSPRO 
COMMON
          CTEXT  COMSPRO - PROJECT PROFILE FILE STRUCTURE.
          BASE   D
*         COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992. 
          SPACE  4,10 
***       PRO - PROJECT PROFILE FILE STRUCTURE AND EQUIVALENCES.
*         D. A. HIVELEY      71/11/06.
*         G. R. GREENFIELD   76/04/15. (MODIFIED) 
          SPACE  4,10 
***       PROJECT PROFILE FILE FORMAT.
* 
* 
*         AS THE STRUCTURE OF THE PROJECT PROFILE FILE CHANGES, 
*         A CORRESPONDING FILE NAME CHANGE MAY ALSO OCCUR TO MAKE 
*         IT EASIER FOR SITES TO CONVERT FROM ONE SYSTEM TO ANOTHER.
*         ALTHOUGH THE FILE NAME *PROFILA* IS REFERENCED THROUGHOUT 
*         THE SYSTEM, THE PROJECT PROFILE FILE NAME CORRESPONDING TO
*         THE APPROPRIATE LEVEL IS AS FOLLOWS - 
* 
*            SYSTEM          PROJECT PROFILE FILE 
* 
*            KRONOS 2.1.2    PROFILO
*            NOS 1.0         PROFILA
*            NOS 1.1         PROFILA
*            NOS 1.2         PROFILB
*            NOS 1.3         PROFILB
*            NOS 1.4         PROFILB
*            NOS 2.0         PROFILB
*            NOS 2.1         PROFILB
*            NOS 2.2         PROFILC
* 
* 
*         THIS FILE IS A 3 LEVEL TREE STRUCTURED FILE. LEVELS 
*         0-2 ARE DIRECTORY LEVELS, AND LEVEL-3 THE DATA LEVEL. 
* 
*         THE ZERO-LEVEL CONTAINS A FIXED AMOUNT OF DATA CONCERNING 
*         THE HISTORY OF THE FILE, AND THE FIRST CHARGE NUMBER (AND 
*         CORRESPONDING RANDOM INDEX) OF EACH LEVEL-1 BLOCK.  THE FIRST 
*         PRU OF THIS DIRECTORY RESIDES AS SECTOR ONE OF THE FILE AND 
*         POINTS TO THE NEXT PRU OF THIS DIRECTORY. 
* 
*         THE NEXT LEVEL (PRIMARY) OF THE TREE CONTAINS ALL VALIDATED 
*         CHARGE NUMBERS WITH CORRESPONDING RANDOM ADDRESSES POINTING 
*         TO THE LEVEL-2 BLOCKS. ALSO, EACH CHARGE NUMBER ENTRY 
*         CONTAINS ADDITIONAL INFORMATION PERTAINING TO ALL 
*         PROJECTS ASSOCIATED WITH THIS CHARGE NUMBER, SUCH AS SRU
*         MULTIPLIER INDICES. 
* 
*         A RECORD IN LEVEL-2 OF THE TREE CONTAINS ALL VALID PROJECT
*         NUMBERS FOR THE CORRESPONDING CHARGE NUMBER.  ALONG WITH EACH 
*         PROJECT NUMBER IS A RANDOM ADDRESS POINTING TO THE LEVEL-3
*         BLOCKS. 
* 
*         LEVEL-3 BLOCKS CONTAIN ALL PROJECT PROFILE INFORMATION
*         ASSOCIATED WITH THIS PARTICULAR CHARGE NUMBER AND PROJECT 
*         NUMBER. TWO PROJECT NUMBER ENTRIES ARE PACKED PER BLOCK.
* 
*         ALL RECORDS ARE LESS THAN ONE PRU IN LENGTH AND ARE LINKED
*         THROUGH THE CONTROL WORDS IF THE DATA OF A GIVEN LEVEL
*         EXCEEDS ONE PRU.
* 
*         DATA IN ALL LEVELS IS IN ALPHABETICAL ORDER (LOWEST ITEM
*         FIRST), WITH THE EXCEPTION OF LEVEL-3 BLOCKS. 
* 
*         DATA FORMAT - 
* 
*         THE FIRST WORD OF EACH DIRECTORY LEVEL BLOCK HAS THE
*         FOLLOWING FORMAT- 
* 
*T        12/DL,12/WIB,12/WPE,12/NOE,12/FWAD
* 
*                DL   =  DATA LEVEL 
*                WIB  =  WORDS IN BLOCK 
*                WPE  =  WORDS PER ENTRY
*                NOE  =  NUMBER OF ENTRIES
*                FWAD =  FIRST WORD ADDRESS OF DATA 
* 
* 
*         LEVEL-0 BLOCK FORMAT. 
* 
* 
*T CONTROL 12/0, 12/WIB, 12/2, 12/NOE, 12/3 
*T,       24/, 18/CREATION DATE, 18/LAST MOD DATE 
*T,       42/0, 18/R.A. NEXT LEVEL-0
*T,ENTRY1 60/CHARGE NUMBER
*T,       42/0, 18/R.A. LEVEL-1 
*  ENTRY2 (SAME AS ENTRY1)
*  .     .
*  .     .
*  .     .
*  ENTRYN (SAME AS ENTRY1)
* 
*                R.A. = RANDOM ADDRESS OF LINKED BLOCK. 
* 
* 
*         LEVEL-1 BLOCK FORMAT. 
* 
* 
*T CONTROL 12/1, 12/WIB, 12/5, 12/NOE, 12/3 
*T,       60/ 
*T,       42/0, 18/R.A. NEXT LEVEL-1
*T,ENTRY1 60/CHARGE NUMBER
*T,CSRW   1/D, 5/, 12/PCL, 12/PC, 6/M1, 6/M2, 6/M3, 6/M4, 6/AD
*T,CDTW   18/CD, 18/CEX, 24/RESERVED
*T,CLCW   6/ISL,6/IR1,6/IR2,6/IR3,6/IR4,6/IR5,6/IR6,6/IR7,6/IR8,6/
*T,CMUW   42/MU, 18/R.A. LEVEL-2
*  ENTRY2 (SAME AS ENTRY1)
*  .     .
*  .     .
*  .     .
*  ENTRYN (SAME AS ENTRY1)
* 
*                D = CHARGE DEACTIVATE FLAG.
*                PC = PROJECT COUNT.
*                CD = CHARGE CREATION DATE. 
*                PCL = PROJECT COUNT LIMIT. 
*                M1 - AD = SRU MULTIPLIER INDICES.
*                CEX = CHARGE EXPIRATION DATE.
*                ISL = INSTALLATION SRU LIMIT INDEX.
*                IR1 - IR8 = INSTALLATION LIMIT INDICES.
*                MU = MASTER USER.
* 
* 
*         LEVEL-2 BLOCK FORMAT. 
* 
* 
*T CONTROL 12/2, 12/WIB, 12/3, 12/NOE, 12/3 
*T,       60/ 
*T,       42/0, 18/R.A. NEXT LEVEL-2
*T,ENTRY1 60/PROJECT NUMBER (FIRST  10 CHARACTERS)
*T,       60/PROJECT NUMBER (SECOND 10 CHARACTERS)
*T,       1/A, 41/, 18/R.A. LEVEL-3 
*  ENTRY2 (SAME AS ENTRY1)
*  .     .
*  .     .
*  .     .
*  ENTRYN (SAME AS ENTRY1)
* 
*                A = 0, IF LEVEL-3 BLOCK POINTED TO HAS 1 ENTRY.
*                  = 1, IF LEVEL-3 BLOCK POINTED TO HAS 2 ENTRIES.
* 
* 
*         LEVEL-3 BLOCK FORMAT. 
*         CONSISTS OF TWO ENTRIES- EACH OF THE FOLLOWING FORMAT.
* 
* 
*  ENTRY1 
*T CONTROL 12/3, 12/NE, 12/UN, 6/, 18/R.A. FIRST OV 
*T,PRJW   60/PROJECT NUMBER (FIRST  10 CHARACTERS)
*T,       60/PROJECT NUMBER (SECOND 10 CHARACTERS)
*T,PCHW   60/CHARGE NUMBER
*T,PCDW   18/CD, 18/PEX, 24/
*T,PTMW   1/D, 23/, 18/TI, 18/TO
*T,PPNW   42/PFN, 16/, 2/PCR
*T,PPUW   42/PUN, 18/ 
*T,PPPW   42/PPW, 18/ 
*T,PENW   42/EFN, 18/ 
*T,PEUW   42/EUN, 18/ 
*T,PEPW   42/EPW, 18/ 
*T,PCGW   6/ISV, 18/LCDATE, 36/RESERVED 
*T,PMSW   30/SML, 30/SMA
*T,PUDW   24/0, 18/LUDATE, 18/LUTIME
*T,PISW   30/SIL, 30/SIA
*T,PIRW   30/LR1, 30/AR1
*T,       30/LR2, 30/AR2
*T,       30/LR3, 30/AR3
*T,       30/LR4, 30/AR4
*T,       30/LR5, 30/AR5
*T,       30/LR6, 30/AR6
*T,       30/LR7, 30/AR7
*T,       30/LR8, 30/AR8
*T,       60/RESERVED 
*T,PUNW   42/USER NUMBER 1, 18/0
*  .     .
*  .     .
*  .     .
*T,       42/USER NUMBER N, 18/0
* 
*  ENTRY2 (SAME AS ENTRY1)
* 
*                NE = WORD POINTER TO NEXT ENTRY IN BLOCK.
*                UN = NUMBER OF USER NUMBERS IN PROJECT.
*                OV = RANDOM ADDRESS OF OVERFLOW BLOCK. 
*                CD = PROJECT CREATION DATE.
*                D = PROJECT DEACTIVATE FLAG. 
*                LCDATE = LAST CHANGE DATE BY A PROFILE UPDATE RUN. 
*                LUDATE = LAST UPDATE DATE BY OVERLAY *0AU*.
*                LUTIME = LAST UPDATE TIME BY OVERLAY *0AU*.
*                PEX = PROJECT EXPIRATION DATE. 
*                TI = TIME IN.
*                TO = TIME OFF. 
*                PFN = PROLOGUE FILE NAME.
*                PCR = PROLOGUE CHARGE REQUIRED OPTION. 
*                PUN = PROLOGUE USERNAME. 
*                PPW = PROLOGUE PASSWORD. 
*                EFN = EPILOGUE FILE NAME.
*                EUN = EPILOGUE USERNAME. 
*                EPW = EPILOGUE PASSWORD. 
*                ISV = SRU VALIDATION LIMIT INDEX.
*                SML = SRU MASTER USER LIMIT. 
*                SMA = SRU MASTER USER ACCUMULATOR. 
*                SIL = SRU INSTALLATION LIMIT.
*                SIA = SRU INSTALLATION ACCUMULATOR.
*                LR1 - LR8 = INSTALLATION LIMIT REGISTERS.
*                AR1 - AR8 = INSTALLATION LIMIT ACCUMULATORS. 
*                USER NUMBER ENTRIES INITIALIZED TO 1.
* 
* 
*         OVERFLOW BLOCK FORMAT (LEVEL-3).
* 
* 
*T CONTROL 12/*OV*, 30/, 18/R.A. NEXT OV
*T,       42/USER NUMBER N+1, 18/0
*  .     .
*  .     .
*  .     .
*T,       42/USER NUMBER N+62, 18/0 
          SPACE  4
 CSRW     EQU    1
 CDTW     EQU    2
 CLCW     EQU    3
 CMUW     EQU    4
          SPACE  4
 PRJW     EQU    1
 PCHW     EQU    3
 PCDW     EQU    4
 PTMW     EQU    5
 PPNW     EQU    6
 PPUW     EQU    7
 PPPW     EQU    8
 PENW     EQU    9
 PEUW     EQU    10 
 PEPW     EQU    11 
 PCGW     EQU    12 
 PMSW     EQU    13 
 PUDW     EQU    14 
 PISW     EQU    15 
 PIRW     EQU    16 
 PUNW     EQU    25 
          SPACE  4
 PRUS     EQU    77B         MAXIMUM NUMBER OF WORDS IN ANY BLOCK 
 CNWE     EQU    2           NUMBER OF WORDS PER ENTRY - LEVEL 0
 CMWE     EQU    5           NUMBER OF WORDS PER ENTRY - LEVEL 1
 PNWE     EQU    3           NUMBER OF WORDS PER ENTRY - LEVEL 2
 PMWE     EQU    PRUS/2      NUMBER OF WORDS PER ENTRY - LEVEL 3
                             (NOTE- TWO ENTRIES PER BLOCK)
 NUNS     EQU    PMWE-PUNW   NUMBER OF USER NUMBERS PER ENTRY - 
                             LEVEL 3 (NOT INCLUDING OVERFLOW BLOCKS)
 .A       SET    PRUS-3      NUMBER OF NON-CONTROL WORDS AVAILABLE
                             IN A DIRECTORY LEVEL BLOCK 
 CNLC     EQU    .A/CNWE     NUMBER OF ENTRIES PER BLOCK - LEVEL-0
 CMLC     EQU    .A/CMWE     NUMBER OF ENTRIES PER BLOCK - LEVEL-1
 PNLC     EQU    .A/PNWE     NUMBER OF ENTRIES PER BLOCK - LEVEL-2
 CBLP     EQU    CNLC*CNWE   MAXIMUM BLOCK SIZE - LEVEL-0 
                             (NOT INCLUDING CONTROL WORDS)
 CMLP     EQU    CMLC*CMWE   MAXIMUM BLOCK SIZE - LEVEL-1 
                             (NOT INCLUDING CONTROL WORDS)
 PBLP     EQU    PNLC*PNWE   MAXIMUM BLOCK SIZE - LEVEL-2 
                             (NOT INCLUDING CONTROL WORDS)
          SPACE  4
 PPFN     MICRO  1,,*PROFILC* 
 PPWD     MICRO  1,,*SECURUS*  PROFILA PERMANENT FILE PASSWORD
 PUSN     MICRO  1,,*SYSTEMX*  PROFILA PERMANENT FILE USER NUMBER 
  
          BASE   *
          ENDX
