User Tools

Site Tools


Action unknown: copypageplugin__copy
cdc:nos2.source:opl.opl871:deck:acpd

Deck ACPD

Library Member Format: MODIFY

Listing Sections

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M00S00001.acpd    +++|          IDENT  ACPD
00002  M00S00002.acpd    +++|          SST
00003  M00S00003.acpd    +++|          ENTRY  ACPD
00004  M00S00004.acpd    +++|          ENTRY  PAP
00005  M00S00005.acpd    +++|          ENTRY  RFL=
00006  M00S00006.acpd    +++|          SYSCOM B1
00007  M00S00007.acpd    +++|          TITLE  ACPD - ANALYZE PERFORMANCE DATA.
00008  M00S00008.acpd    +++|*COMMENT  ACPD - ANALYZE PERFORMANCE DATA.
Line S00009 Modification History
M01 (Removed by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00009  M01S00009.281l803 ---|          COMMENT  COPYRIGHT CONTROL DATA CORPORATION, 1983.
Line S00001 Modification History
M01 (Added by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00010  M01S00001.281l803 +++|          COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00011  M00S00010.acpd    +++|          SPACE  4,10
00012  M00S00011.acpd    +++|**        MPAR - MULTIPLE PRECISION ARRAY.
00013  M00S00012.acpd    +++|*
00014  M00S00013.acpd    +++|* NAME    MPAR   LEN,PREC,LMP
00015  M00S00014.acpd    +++|*
00016  M00S00015.acpd    +++|*         ENTRY  *NAME*   = NAME OF DATA ITEM.
00017  M00S00016.acpd    +++|*                *LEN*    = NUMBER OF ENTRIES OF DATA ITEM.
00018  M00S00017.acpd    +++|*                *PREC*   = PRECISION OF ITEM IN PP WORDS.
00019  M00S00018.acpd    +++|*                *LMP*    = POINTER TO LENGTH MULTIPLIER.
00020  M00S00019.acpd    +++|*
00021  M00S00020.acpd    +++|*         EXIT   *NAME*   = ORDINAL OF ITEM IN THE CORRESPONDING TABLE.
00022  M00S00021.acpd    +++|*                *P.NAME* = PRECISION OF THE ITEM.
00023  M00S00022.acpd    +++|*                *L.NAME* = LENGTH OF THE ITEM.
00024  M00S00023.acpd    +++|*
00025  M00S00024.acpd    +++|*         NOTE   *MPAR* TABLE FORMAT IS
00026  M00S00025.acpd    +++|*T        24/NAME,3/TP,6/LMP,4/ICM,11/PREC,12/LEN
Figure

011122223262729LENPRECICMLMP303233353659LMPTPNAME

00027  M00S00026.acpd    +++|*
00028  M00S00027.acpd    +++|*         WHERE
00029  M00S00028.acpd    +++|*
00030  M00S00029.acpd    +++|*         *TP*   TYPE OF BLOCK (HEADER, FAST, MEDIUM, SLOW
00031  M00S00030.acpd    +++|*                OR SNAPSHOT LOOP).
00032  M00S00031.acpd    +++|*         *ICM*  INDICATES THAT THE FOLLOWING GROUP OF DATA ELEMENTS
00033  M00S00032.acpd    +++|*                (UP TO THE NEXT DEFINITION OF *ICM*) IS EITHER A
00034  M00S00033.acpd    +++|*                SINGLE OR MULTIPLE ELEMENT ENTRY.
00035  M00S00034.acpd    +++|*
00036  M00S00035.acpd    +++|*         WARNING - IF ARRAY LENGTH IS NOT EQUAL TO ONE. THE ELEMENT
00037  M00S00036.acpd    +++|*         PRECISION MUST NOT BE GREATER THAN TWO.
00038  M00S00037.acpd    +++|
00039  M00S00038.acpd    +++|          PURGMAC MPAR
00040  M00S00039.acpd    +++|
00041  M00S00040.acpd    +++|          MACRO  MPAR,NAME,LEN,PREC,LMP
00042  M00S00041.acpd    +++|          NOREF  .IC,.TYPE,BL
00043  M00S00042.acpd    +++| .1       IFC    EQ,$NAME$$
00044  M00S00043.acpd    +++|          CON    0
00045  M00S00044.acpd    +++| .1       ELSE
00046  M00S00045.acpd    +++| .2       IFC    EQ,$PREC$$
00047  M00S00046.acpd    +++|          ERR                PRECISION NOT SPECIFIED
00048  M00S00047.acpd    +++| .2       ENDIF
00049  M00S00048.acpd    +++|          IFNE   LEN,1,1
00050  M00S00049.acpd    +++|          ERRNG  2-P.NAME    OFFSET CALCULATION ERROR
00051  M00S00050.acpd    +++|          IFEQ   BL,0,1
00052  M00S00051.acpd    +++| .IC      SET    0
00053  M00S00052.acpd    +++| NAME     EQU    .IC
00054  M00S00053.acpd    +++| .IC      SET    .IC+1
00055  M00S00054.acpd    +++| P.NAME   EQU    PREC 0
00056  M00S00055.acpd    +++| L.NAME   EQU    LEN 0
00057  M00S00056.acpd    +++|          VFD    24/4L_NAME,3/.TYPE,6/LMP,4/.ICM,11/P.NAME,12/L.NAME
00058  M00S00057.acpd    +++| BL       SET    BL+P.NAME*L.NAME
00059  M00S00058.acpd    +++| .1       ENDIF
00060  M00S00059.acpd    +++|          ENDM
00061  M00S00060.acpd    +++|          SPACE  4,10
00062  M00S00061.acpd    +++|**        DDSC - DATA DESCRIPTION.
00063  M00S00062.acpd    +++|*
00064  M00S00063.acpd    +++|* NAME    DDSC   SDL,DTY,WFA,WFP
00065  M00S00064.acpd    +++|*
00066  M00S00065.acpd    +++|*         ENTRY  *NAME* = ORDINAL OF ITEM IN THE CORRESPONDING
00067  M00S00066.acpd    +++|*                         *MPAR* TABLE.
00068  M00S00067.acpd    +++|*                *SDL*  = SELECTION BIT.
00069  M00S00068.acpd    +++|*                *DTY*  = DATA TYPE OF ITEM.
00070  M00S00069.acpd    +++|*                *WFA*  = WEIGHT FACTOR INSTRUCTION.
00071  M00S00070.acpd    +++|*                *WFP*  = WEIGHT FACTOR POINTER.
00072  M00S00071.acpd    +++|*
00073  M00S00072.acpd    +++|*         EXIT   *DDSC* ENTRY CONTAINS A POINTER TO THE DECODED
00074  M00S00073.acpd    +++|*                DATA BUFFER *DBUF*, WHERE THE DATA OF THE ITEM
00075  M00S00074.acpd    +++|*                IS DECODED AND STORED.
00076  M00S00075.acpd    +++|*
00077  M00S00076.acpd    +++|*         NOTE - *DDSC* ENTRY FORMAT IS
00078  M00S00077.acpd    +++|*
Line S00078 Modification History
M01 (Removed by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
00079  M01S00078.252l678 ---|*T        1/S,2/D,3/WI,14/WFP,4/ICM,18/LEN,18/FW
Figure

0171829FWLEN3035363940535456575859LENICMWFPWIDS


Line S00001 Modification History
M01 (Added by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
00080  M01S00001.252l678 +++|*T        1/S,3/D,3/WI,13/WFP,4/ICM,18/LEN,18/FW
Figure

0171829FWLEN3035363940525355565859LENICMWFPWIDS

00081  M00S00079.acpd    +++|*
00082  M00S00080.acpd    +++|*         WHERE
00083  M00S00081.acpd    +++|*
00084  M00S00082.acpd    +++|*         *S*    IS *SDL*.
00085  M00S00083.acpd    +++|*         *D*    IS *DTY*.
00086  M00S00084.acpd    +++|*         *WI*   IS *WFA*.
00087  M00S00085.acpd    +++|*         *ICM*  SINGLE/MULTIPLE ELEMENT ENTRY INDICATOR.
00088  M00S00086.acpd    +++|*         *LEN*  LENGTH OF THE DATA ELEMENT.
00089  M00S00087.acpd    +++|*         *FW*   POINT TO THE DECODED DATA BUFFER WHERE
00090  M00S00088.acpd    +++|*                THE VALUE OF THE DATA ELEMENT IS STORED.
00091  M00S00089.acpd    +++|*
00092  M00S00090.acpd    +++|*         WARNING - THE *MPAR* TABLE HAS TO BE DEFINED BEFORE
00093  M00S00091.acpd    +++|*         *DDSC* TABLE CAN BE DEFINED. THE RELATIVE POSITION
00094  M00S00092.acpd    +++|*         OF THE DATA ITEMS IN *DDSC* TABLE MUST BE THE SAME
00095  M00S00093.acpd    +++|*         AS IN *MPAR* TABLE.
00096  M00S00094.acpd    +++|
00097  M00S00095.acpd    +++|          PURGMAC DDSC
00098  M00S00096.acpd    +++|
00099  M00S00097.acpd    +++|          MACRO  DDSC,NAME,SDL,DTY,WFA,WFP
00100  M00S00098.acpd    +++|          NOREF  .L,.FW,L._NAME,P._NAME
00101  M00S00099.acpd    +++|          IFGT   P._NAME,5
00102  M00S00100.acpd    +++| .L       SET    P._NAME/5*L._NAME
00103  M00S00101.acpd    +++|          ELSE
00104  M00S00102.acpd    +++| .L       SET    L._NAME
00105  M00S00103.acpd    +++|          ENDIF
Line S00104 Modification History
M01 (Removed by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
00106  M01S00104.252l678 ---|          VFD    1/SDL,2/DTY,3/WFA,14/WFP,4/0,18/.L,18/.FW
Line S00002 Modification History
M01 (Added by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
00107  M01S00002.252l678 +++|          VFD    1/SDL,3/DTY,3/WFA,13/WFP,4/0,18/.L,18/.FW
00108  M00S00105.acpd    +++| .FW      SET    .FW+.L
00109  M00S00106.acpd    +++|          ENDM
00110  M00S00107.acpd    +++|          SPACE  4,10
00111  M00S00108.acpd    +++|**        DSPT - DISPLAY TEXT DEFINITION.
00112  M00S00109.acpd    +++|*
00113  M00S00110.acpd    +++|* NAME    DSPT   MSGE,SBTL,WORD,BITA,BITL
00114  M00S00111.acpd    +++|*
00115  M00S00112.acpd    +++|*         ENTRY  *NAME* = ORDINAL OF ITEM IN THE CORRRESPONDING
00116  M00S00113.acpd    +++|*                         *DDSC* TABLE.
00117  M00S00114.acpd    +++|*                *MSGE* = DISPLAY TEXT.
00118  M00S00115.acpd    +++|*                *SBTL* = POINTER TO SUBBLOCK TITLES.
00119  M00S00116.acpd    +++|*                *WORD* = WORD COUNT IN MULTITPLE-WORD ENTRY.
00120  M00S00117.acpd    +++|*                *BITA* = BEGIN BIT POSITION FOR NON-WORD-BOUNDARY
00121  M00S00118.acpd    +++|*                         ITEMS.
00122  M00S00119.acpd    +++|*                *BITL* = BIT LENGTH.
00123  M00S00120.acpd    +++|*
00124  M00S00121.acpd    +++|*         EXIT   *DSPT* BUILDS *DSPTENT* TABLE AND *DSPTTXT* TABLE.
00125  M00S00122.acpd    +++|*                THE *DSPTTXT* TABLE CONTAINS TEXTS USED IN THE REPORT.
00126  M00S00123.acpd    +++|*                THE *DSPTENT* ENTRY FORMAT IS
00127  M00S00124.acpd    +++|*
00128  M00S00125.acpd    +++|*T               9/NAME,6/WORD,6/BITA,6/BITL,9/SBTL,6/LN,18/BC
Figure

01718232429BCLNSBTL30323338394445505159SBTLBITLBITAWORDNAME

00129  M00S00126.acpd    +++|*
00130  M00S00127.acpd    +++|*                WHERE *LN* IS THE LENGTH IN CHARACTER OF THE TEXT,
00131  M00S00128.acpd    +++|*                AND *BC* IS THE BEGIN CHARACTER POSITION OF THE
00132  M00S00129.acpd    +++|*                TEXT IN *DSPTTXT* TABLE.
00133  M00S00130.acpd    +++|
00134  M00S00131.acpd    +++| M2       MICRO  1,,**
00135  M00S00132.acpd    +++| .BC      SET    0
00136  M00S00133.acpd    +++|
00137  M00S00134.acpd    +++|          PURGMAC DSPT
00138  M00S00135.acpd    +++|
00139  M00S00136.acpd    +++|          MACRO  DSPT,NAME,MSGE,SBTL,WORD,BITA,BITL
00140  M00S00137.acpd    +++|          NOREF  .EC,.LN,.L,.BC,SBT
00141  M00S00138.acpd    +++|          NOREF  .WC,.CC,.RC,.I
00142  M00S00139.acpd    +++|          IFC    EQ,$SBTL$$
00143  M00S00140.acpd    +++| SBT      SET   777B
00144  M00S00141.acpd    +++|          ELSE
00145  M00S00142.acpd    +++| SBT      SET   SBTL
00146  M00S00143.acpd    +++|          ENDIF
00147  M00S00144.acpd    +++| M1       MICRO  1,,MSGE
00148  M00S00145.acpd    +++| .EC      SET    .EC+1
00149  M00S00146.acpd    +++| .LN      MICCNT M1
00150  M00S00147.acpd    +++| M        MICRO  1,,*"M2""M1"*
00151  M00S00148.acpd    +++| .L       MICCNT M
00152  M00S00149.acpd    +++|          USE    /DSPTENT/
00153  M00S00150.acpd    +++|          VFD    9/NAME,6/WORD,6/BITA,6/BITL,9/SBT,6/.LN,18/.BC
00154  M00S00151.acpd    +++| .BC      SET    .BC+.LN
00155  M00S00152.acpd    +++|          USE
00156  M00S00153.acpd    +++|          USE    /DSPTTXT/
00157  M00S00154.acpd    +++|          IFNE   .LN,0
00158  M00S00155.acpd    +++| .WC      SET    .L/10
00159  M00S00156.acpd    +++| .CC      SET    .WC*10
00160  M00S00157.acpd    +++| .RC      SET    .L-.CC
00161  M00S00158.acpd    +++| M2       MICRO  .CC+1,.RC,*"M"*
00162  M00S00159.acpd    +++| .I       SET    1
00163  M00S00160.acpd    +++|          DUP    .WC
00164  M00S00161.acpd    +++| MSG      MICRO  .I,10,*"M"*
00165  M00S00162.acpd    +++|          DATA   10H"MSG"
00166  M00S00163.acpd    +++| .I       SET    .I+10
00167  M00S00164.acpd    +++|          ENDD
00168  M00S00165.acpd    +++|          ELSE
00169  M00S00166.acpd    +++|          DATA   10H"M2"
00170  M00S00167.acpd    +++|          ENDIF
00171  M00S00168.acpd    +++|          USE
00172  M00S00169.acpd    +++|          ENDM
00173  M00S00170.acpd    +++|          SPACE  4,10
00174  M00S00171.acpd    +++|**        SMGT - SUBBLOCK REPORT TITLE DEFINITION.
00175  M00S00172.acpd    +++|*
00176  M00S00173.acpd    +++|*         SMGT   MSGE,CNT,STC
00177  M00S00174.acpd    +++|*
00178  M00S00175.acpd    +++|*         ENTRY  *MSGE* = SUBBLOCK REPORT TITLE.
00179  M00S00176.acpd    +++|*                *CNT*  = NUMBER OF ENTRIES IN THE SUBBLOCK.
00180  M00S00177.acpd    +++|*                *STC*  = STARTING NUMBER. IGNORED IF *CNT* IS OMITTED.
00181  M00S00178.acpd    +++|*
00182  M00S00179.acpd    +++|*         EXIT   *SMGT* BUILDS A TABLE OF DISPLAY TEXT,
00183  M00S00180.acpd    +++|*                TEN CHARACTERS, LEFT JUSTIFIED, BLANK FILLED
00184  M00S00181.acpd    +++|*                FOR EACH ENTRY.
00185  M00S00182.acpd    +++|
00186  M00S00183.acpd    +++|          PURGMAC SMGT
00187  M00S00184.acpd    +++|
00188  M00S00185.acpd    +++| SMGT     MACRO  MSGE,CNT,STC
00189  M00S00186.acpd    +++|          NOREF  .ST,.SM
00190  M00S00187.acpd    +++| MM       MICRO  1,,MSGE
00191  M00S00188.acpd    +++| .IF      IFC    NE,$CNT$$
00192  M00S00189.acpd    +++| .ST      SET    STC
00193  M00S00190.acpd    +++|          DUP    CNT
00194  M00S00191.acpd    +++| .IF1     IFLT   .ST,10B
00195  M00S00192.acpd    +++| MC       OCTMIC .ST,1
00196  M00S00193.acpd    +++| .IF1     ELSE
00197  M00S00194.acpd    +++| MC       OCTMIC .ST,2
00198  M00S00195.acpd    +++| .IF1     ENDIF
00199  M00S00196.acpd    +++| MG       MICRO  1,,$"MM""MC"$
00200  M00S00197.acpd    +++| .ST      SET    .ST+1
00201  M00S00198.acpd    +++|          DATA   10H"MG"
00202  M00S00199.acpd    +++| .SM      SET    .SM+1
00203  M00S00200.acpd    +++|          ENDD
00204  M00S00201.acpd    +++| .IF      ELSE
00205  M00S00202.acpd    +++|          DATA   10H"MM"
00206  M00S00203.acpd    +++| .SM      SET    .SM+1
00207  M00S00204.acpd    +++| .IF      ENDIF
00208  M00S00205.acpd    +++|          ENDM
00209  M00S00206.acpd    +++|          SPACE  4,10
00210  M00S00207.acpd    +++|**        DEF - DEFINE CONSTANT.
00211  M00S00208.acpd    +++|*
00212  M00S00209.acpd    +++|*         DEF   NAM#VAL#;
00213  M00S00210.acpd    +++|*
00214  M00S00211.acpd    +++|*         ENTRY  *NAM* = CONSTANT NAME.
00215  M00S00212.acpd    +++|*                *VAL* = CONSTANT VALUE.
00216  M00S00213.acpd    +++|*
00217  M00S00214.acpd    +++|*         EXIT   *DEF* DEFINES SYMBOLIC CONSTANTS USED BY BOTH
00218  M00S00215.acpd    +++|*                SYMPL AND COMPASS PROGRAMS.
00219  M00S00216.acpd    +++|*
00220  M00S00217.acpd    +++|*         WARNING - *DEF* CAN ONLY BE USED TO DEFINE INTEGER CONSTANTS.
00221  M00S00218.acpd    +++|*         NON-INTEGER CONSTANTS HAVE TO BE CONVERTED TO INTEGER BEFORE
00222  M00S00219.acpd    +++|*         *DEF* CAN BE USED.
00223  M00S00220.acpd    +++|
00224  M00S00221.acpd    +++|          PURGMAC DEF
00225  M00S00222.acpd    +++|
00226  M00S00223.acpd    +++| DEF     MACRO  VALUE
00227  M00S00224.acpd    +++|          NOREF  .BB
00228  M00S00225.acpd    +++| .NAM     MICRO  1,,#_VALUE
00229  M00S00226.acpd    +++| .BB      MICCNT .NAM
00230  M00S00227.acpd    +++| .BB      SET    .BB+2
00231  M00S00228.acpd    +++| .VAL     MICRO  .BB,,;_VALUE
00232  M00S00229.acpd    +++| .VAL     MICRO  1,,#".VAL"
00233  M00S00230.acpd    +++| ".NAM" EQU ".VAL"
00234  M00S00231.acpd    +++| DEF      ENDM
00235  M00S00232.acpd    +++|          SPACE  4,10
00236  M00S00233.acpd    +++|**        COMMON DECKS.
00237  M00S00234.acpd    +++|
00238  M00S00235.acpd    +++|*CALL     COMCMAC
00239  M00S00236.acpd    +++|*CALL     COMSPRD
00240  M00S00237.acpd    +++|*CALL     COMSCPS
00241  M00S00238.acpd    +++|*CALL     COMSEJT
00242  M00S00239.acpd    +++|*CALL     COMSSSD
00243  M00S00240.acpd    +++|*CALL     COMSSCD
00244  M00S00241.acpd    +++|          LIST   X
00245  M00S00242.acpd    +++|*CALL     COMSCPD
00246  M00S00243.acpd    +++|*CALL     COMUCPD
00247  M00S00244.acpd    +++|          LIST   *
00248  M00S00245.acpd    +++|          TITLE
00249  M00S00246.acpd    +++|ACPD      SPACE  4,10
00250  M00S00247.acpd    +++|***       ACPD - ANALYZE PERFORMANCE DATA.
00251  M00S00248.acpd    +++|*
00252  M00S00249.acpd    +++|*         THIS ENTRY POINT IS NEEDED IN ORDER FOR THE
00253  M00S00250.acpd    +++|*         ABSOLUTE BINARY RECORD NAME TO MATCH WITH THE
00254  M00S00251.acpd    +++|*         DECK NAME *ACPD*. IT CONTAINS ONLY A JUMP
00255  M00S00252.acpd    +++|*         INSTRUCTION TO TRANSFER TO THE MAIN SYMPL
00256  M00S00253.acpd    +++|*         PROGRAM *ACPDM*.
00257  M00S00254.acpd    +++|
00258  M00S00255.acpd    +++|
00259  M00S00256.acpd    +++| ACPD     BSS    0           TRANSFER ADDRESS FROM THE LOADER
00260  M00S00257.acpd    +++|          EQ     =XACPDM     TO SYMPL MAIN PROGRAM
00261  M00S00258.acpd    +++|          TITLE  PAP - PROCESS ACPD PARAMETERS.
00262  M00S00259.acpd    +++|*         *PAP* DATA DEFINITIONS.
00263  M00S00260.acpd    +++|          SPACE  4,10
00264  M00S00261.acpd    +++| DS       DATA   0LSUMMARY   SECONDARY DEFAULT VALUE OF S
Line S00262 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00265  M01S00262.v23l617 ---| DN       DATA   777777B     SECONDARY DEFAULT VALUE OF N
Line S00001 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00266  M01S00001.v23l617 +++| DN       DATA   0L9999999   SECONDARY DEFAULT VALUE OF N
00267  M00S00263.acpd    +++|
00268  M00S00264.acpd    +++|
00269  M00S00265.acpd    +++| TARG     BSS    0
00270  M00S00266.acpd    +++| FN       ARG    FN,FN       INPUT FILE
00271  M00S00267.acpd    +++| L        ARG    L,L         REPORT FILE
Line S00268 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00272  M01S00268.v23l617 ---| S        ARG    S,S,400B    SUMMARY FILE
Line S00002 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00273  M01S00002.v23l617 +++| S        ARG    DS,S,400B   SUMMARY FILE
00274  M00S00269.acpd    +++| LO       ARG    LO,LO       LIST OPTION
Line S00270 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00275  M01S00270.v23l617 ---| IN       ARG    IN,IN       INTERVAL LENGTH IN MINUTES
Line S00003 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00276  M01S00003.v23l617 +++| IN       ARG    IN,IN,400B  INTERVAL LENGTH IN MINUTES
00277  M01S00004.v23l617 +++| IC       ARG    IC,IC,400B  INTERVAL RECORD COUNT
Line S00271 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00278  M01S00271.v23l617 ---| N        ARG    N,N,400B    NUMBER OF FILES
Line S00005 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00279  M01S00005.v23l617 +++| N        ARG    DN,N,400B   NUMBER OF FILES
00280  M00S00272.acpd    +++| BT       ARG    BT,BT       BEGINNING TIME
00281  M00S00273.acpd    +++| ET       ARG    ET,ET       ENDING TIME
00282  M00S00274.acpd    +++| BD       ARG    BD,BD       BEGINNING DATE
00283  M00S00275.acpd    +++| ED       ARG    ED,ED       ENDING DATE
00284  M00S00276.acpd    +++|          ARG
00285  M00S00277.acpd    +++|
Line S00278 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00286  M01S00278.v23l617 ---| ERC      CON    ERM1        ERROR CODE
Line S00006 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00287  M01S00006.v23l617 +++| ERC      CON    0           ERROR CODE
00288  M00S00279.acpd    +++| ERF      CON    FATAL       FATAL ERROR
00289  M00S00280.acpd    +++| EFL      CON    0           ERROR NAME
00290  M00S00281.acpd    +++|
00291  M00S00282.acpd    +++| PAR      BSS    0           PERROR PARAMETER LIST
00292  M00S00283.acpd    +++|          VFD    60/ERC
00293  M00S00284.acpd    +++|          VFD    60/ERF
00294  M00S00285.acpd    +++|          VFD    60/EFL
00295  M00S00286.acpd    +++|
00296  M00S00287.acpd    +++| VARG     BSS    0
00297  M00S00288.acpd    +++|          DATA   0LFN
00298  M00S00289.acpd    +++|          DATA   0LL
00299  M00S00290.acpd    +++|          DATA   0LS
00300  M00S00291.acpd    +++|          DATA   0LLO
00301  M00S00292.acpd    +++|          DATA   0LIN
Line S00007 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00302  M01S00007.v23l617 +++|          DATA   0LIC
00303  M00S00293.acpd    +++|          DATA   0LN
00304  M00S00294.acpd    +++|          DATA   0LBT
00305  M00S00295.acpd    +++|          DATA   0LET
00306  M00S00296.acpd    +++|          DATA   0LBD
00307  M00S00297.acpd    +++|          DATA   0LED
00308  M00S00298.acpd    +++|PAP       EJECT
00309  M00S00299.acpd    +++|**        PAP - PROCESS *ACPD* PARAMETERS.
00310  M00S00300.acpd    +++|*
00311  M00S00301.acpd    +++|*         *PAP* VALIDATES *ACPD* PARAMETERS, AND CONVERTS
00312  M00S00302.acpd    +++|*         PARAMETERS IN DISPLAY CODE NUMBER TO BINARY.
00313  M00S00303.acpd    +++|
00314  M00S00304.acpd    +++| PAP      SUBR               ENTRY/EXIT
00315  M00S00305.acpd    +++|          SB1    1
00316  M00S00306.acpd    +++|          SA1    ACTR
00317  M00S00307.acpd    +++|          SA4    ARGR
00318  M00S00308.acpd    +++|          SB4    X1          NUMBER OF ARGUMENTS
00319  M00S00309.acpd    +++|          SB5    TARG
00320  M00S00310.acpd    +++|          RJ     ARG
00321  M00S00311.acpd    +++|          NZ     X1,PAP12    IF ERROR
00322  M00S00312.acpd    +++|          SA5    FN
00323  M00S00313.acpd    +++|          ZR     X5,PAP11    IF NO DATA FILE
00324  M00S00314.acpd    +++|          SA5    LO
00325  M00S00315.acpd    +++|          LX5    6
00326  M00S00316.acpd    +++|          SX4    X5-1RZ
00327  M00S00317.acpd    +++|          ZR     X4,PAP1     IF *Z* OPTION
00328  M00S00318.acpd    +++|          NZ     X5,PAP11    IF INCORRECT OPTION
Line S00319 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00329  M01S00319.v23l617 ---|
00330  M01S00320.v23l617 ---|*         CHECK FOR *S* AND *N* PARAMETERS.
00331  M01S00321.v23l617 ---|
00332  M01S00322.v23l617 ---| PAP1     MX0    2*6
00333  M01S00323.v23l617 ---|          SA2    TARG+2      CHECK *S* PARAMETER
00334  M01S00324.v23l617 ---|          BX2    X0*X2
00335  M01S00325.v23l617 ---|          BX3    X0-X2
00336  M01S00326.v23l617 ---|          NZ     X3,PAP3     IF *S* NOT SPECIFIED
00337  M01S00327.v23l617 ---|          SA2    S
00338  M01S00328.v23l617 ---|          BX3    X0*X2
00339  M01S00329.v23l617 ---|          NZ     X3,PAP2     IF *S* SPECIFIED WITH VALUE
00340  M01S00330.v23l617 ---|          SA4    DS          SET SECOND DEFAULT VALUE
00341  M01S00331.v23l617 ---|          BX6    X4
00342  M01S00332.v23l617 ---|          SA6    A2
00343  M01S00333.v23l617 ---|          EQ     PAP3        GO CHECK *N* PARAMETER
00344  M01S00334.v23l617 ---|
00345  M01S00335.v23l617 ---| PAP2     SX6    1R0         CHECK IF S=0
00346  M01S00336.v23l617 ---|          LX3    6
00347  M01S00337.v23l617 ---|          BX6    X6-X3
00348  M01S00338.v23l617 ---|          NZ     X6,PAP3     IF *S* SPECIFIED WITH FILE NAME
00349  M01S00339.v23l617 ---|          SA6    A2+
00350  M01S00340.v23l617 ---|
00351  M01S00341.v23l617 ---| PAP3     SA2    TARG+5      CHECK *N* PARAMETER
00352  M01S00342.v23l617 ---|          BX2    X0*X2
00353  M01S00343.v23l617 ---|          BX3    X0-X2
00354  M01S00344.v23l617 ---|          ZR     X3,PAP4     IF *N* SPECIFIED
00355  M01S00345.v23l617 ---|          SX6    B1          SET FIRST DEFAULT VALUE
00356  M01S00346.v23l617 ---|          SA6    N
00357  M01S00347.v23l617 ---|          EQ     PAP6        GO CHECK NEXT PARAMETER
00358  M01S00348.v23l617 ---|
00359  M01S00349.v23l617 ---| PAP4     SB7    B1          CONVERT TO DECIMAL
00360  M01S00350.v23l617 ---|          SA5    N
00361  M01S00351.v23l617 ---|          NZ     X5,PAP5     IF *N* SPECIFIED WITH VALUE
00362  M01S00352.v23l617 ---|          SA3    DN          SET SECOND DEFAULT VALUE
00363  M01S00353.v23l617 ---|          BX6    X3
00364  M01S00354.v23l617 ---|          SA6    A5
00365  M01S00355.v23l617 ---|          EQ     PAP6        GO CHECK NEXT PARAMETER
00366  M01S00356.v23l617 ---|
00367  M01S00357.v23l617 ---| PAP5     RJ     DXB         CONVERT DISPLAY TO NUMBER
Line S00008 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00368  M01S00008.v23l617 +++| PAP1     SA5    N           CONVERT *N* PARAMETER
00369  M01S00009.v23l617 +++|          SB7    B1+         ASSUME DECIMAL CONVERSION
00370  M01S00010.v23l617 +++|          RJ     DXB
00371  M00S00358.acpd    +++|          NZ     X4,PAP11    IF ERROR
Line S00359 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00372  M01S00359.v23l617 ---|          SA6    A5
00373  M01S00360.v23l617 ---|
00374  M01S00361.v23l617 ---| PAP6     SA5    IN
00375  M01S00362.v23l617 ---|          RJ     DXB
00376  M01S00363.v23l617 ---|          NZ     X4,PAP11    IF ERROR
00377  M01S00364.v23l617 ---|          SA6    A5
Line S00011 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00378  M01S00011.v23l617 +++|          ZR     X6,PAP11    IF ZERO VALUE ENTERED
00379  M01S00012.v23l617 +++|          SA6    A5+         SET *N* VALUE
00380  M01S00013.v23l617 +++|          SA1    IN
00381  M01S00014.v23l617 +++|          SA5    IC
00382  M01S00015.v23l617 +++|          ZR     X5,PAP2     IF *IC* NOT SPECIFIED
00383  M01S00016.v23l617 +++|          ZR     X1,PAP2     IF *IN* NOT SPECIFIED
00384  M01S00017.v23l617 +++|          SX6    ERM14       * IN AND IC PARAMETER CONFLICT.*
00385  M01S00018.v23l617 +++|          EQ     PAP13       PROCESS ERROR
00386  M01S00019.v23l617 +++|
00387  M01S00020.v23l617 +++| PAP2     NZ     X5,PAP3     IF *IC* SPECIFIED
00388  M01S00021.v23l617 +++|          SA5    IN
00389  M01S00022.v23l617 +++|          SX6    6
00390  M01S00023.v23l617 +++|          ZR     X5,PAP4     IF *IN* NOT SPECIFIED
00391  M01S00024.v23l617 +++| PAP3     RJ     DXB
00392  M01S00025.v23l617 +++|          NZ     X4,PAP11    IF ARGUMENT ERROR
00393  M01S00026.v23l617 +++|          ZR     X6,PAP11    IF ARGUMENT ERROR
00394  M01S00027.v23l617 +++| PAP4     SA6    A5          SET *IN* OR *IC* VALUE
00395  M00S00365.acpd    +++|
00396  M00S00366.acpd    +++|*         CHECK FOR *BT* AND *ET* PARAMETERS.
00397  M00S00367.acpd    +++|
00398  M00S00368.acpd    +++|          SB2    B1+B1
00399  M00S00369.acpd    +++|          MX0    8*6
00400  M00S00370.acpd    +++|          SA5    BT-1
00401  M00S00371.acpd    +++|
00402  M00S00372.acpd    +++| PAP7     SA5    A5+B1
00403  M00S00373.acpd    +++|          ZR     X5,PAP8     IF PARAMETER NOT SPECIFIED OR ZERO
00404  M00S00374.acpd    +++|          LX5    2*6
00405  M00S00375.acpd    +++|          BX2    -X0*X5
00406  M00S00376.acpd    +++|          SB3    X2-2R24
00407  M00S00377.acpd    +++|          GE     B3,PAP11    IF HOUR .GE. 24
00408  M00S00378.acpd    +++|          SB3    X2-2R00
00409  M00S00379.acpd    +++|          NG     B3,PAP11    IF HOUR .LT. 00
00410  M00S00380.acpd    +++|          LX5    2*6
00411  M00S00381.acpd    +++|          BX2    -X0*X5
00412  M00S00382.acpd    +++|          SB3    X2-2R60
00413  M00S00383.acpd    +++|          GE     B3,PAP11    IF MINUTE .GE. 60
00414  M00S00384.acpd    +++|          SB3    X2-2R00
00415  M00S00385.acpd    +++|          NG     B3,PAP11    IF MINUTE .LT. 00
00416  M00S00386.acpd    +++|          MX4    -6
00417  M00S00387.acpd    +++|          LX5    6
00418  M00S00388.acpd    +++|          BX2    -X4*X5
00419  M00S00389.acpd    +++|          SB3    X2-1R6
00420  M00S00390.acpd    +++|          GE     B3,PAP11    IF SECOND .GE. 6X
00421  M00S00391.acpd    +++|          SB3    X2-1R0
00422  M00S00392.acpd    +++|          NG     B3,PAP11    IF SECOND .LT. 0X
00423  M00S00393.acpd    +++|          LX5    6
00424  M00S00394.acpd    +++|          BX2    -X4*X5
00425  M00S00395.acpd    +++|          SB3    X2-1R9
00426  M00S00396.acpd    +++|          LX5    2*6
00427  M00S00397.acpd    +++|          GT     B3,PAP11    IF SECOND .GT. X9
00428  M00S00398.acpd    +++|          SB3    X2-1R0
00429  M00S00399.acpd    +++|          NG     B3,PAP11    IF SECOND .LT. X0
00430  M00S00400.acpd    +++|          LX5    2*6
00431  M00S00401.acpd    +++|          BX2    -X0*X5
00432  M00S00402.acpd    +++|          NZ     X2,PAP11    IF TIME TOO LONG
00433  M00S00403.acpd    +++| PAP8     SB2    B2-B1
00434  M00S00404.acpd    +++|          GT     B2,PAP7     IF NOT DONE
00435  M00S00405.acpd    +++|
00436  M00S00406.acpd    +++|*         CHECK FOR *BD* AND *ED* PARAMETERS.
00437  M00S00407.acpd    +++|
00438  M00S00408.acpd    +++|          SB2    2
00439  M00S00409.acpd    +++|          SA5    BD-1
00440  M00S00410.acpd    +++|
00441  M00S00411.acpd    +++| PAP9     SA5    A5+B1
00442  M00S00412.acpd    +++|          ZR     X5,PAP10    IF PARAMETER NOT SPECIFIED OR ZERO
00443  M00S00413.acpd    +++|          LX5    2*6
00444  M00S00414.acpd    +++|          BX2    -X0*X5
00445  M00S00415.acpd    +++|          SB3    X2-2R99
00446  M00S00416.acpd    +++|          GT     B3,PAP11    IF YEAR .GT. 99
00447  M00S00417.acpd    +++|          SB3    X2-2R70
Line S00418 Modification History
M01 (Removed by) ns2786
Seq #  *Modification Id* Act 
----------------------------+
00448  M01S00418.ns2786  ---|          NG     B3,PAP11    IF YEAR .LT. 70
00449  M01S00419.ns2786  ---|          LX5    2*6
Line S00001 Modification History
M01 (Added by) ns2786
Seq #  *Modification Id* Act 
----------------------------+
00450  M01S00001.ns2786  +++|          PL     B3,PAP9.1   IF YEAR .GE. 70
00451  M01S00002.ns2786  +++|          SB3    X2-2R33
00452  M01S00003.ns2786  +++|          GT     B3,PAP11    IF YEAR .GT. 33
00453  M01S00004.ns2786  +++|          SB3    X2-2R00
00454  M01S00005.ns2786  +++|          NG     B3,PAP11    IF YEAR .LT. 00
00455  M01S00006.ns2786  +++| PAP9.1   LX5    2*6
00456  M00S00420.acpd    +++|          BX2    -X0*X5
00457  M00S00421.acpd    +++|          SB3    X2-2R12
00458  M00S00422.acpd    +++|          GT     B3,PAP11    IF MONTH .GT. 12
00459  M00S00423.acpd    +++|          SB3    X2-2R01
00460  M00S00424.acpd    +++|          NG     B3,PAP11    IF MONTH .LT. 01
00461  M00S00425.acpd    +++|          LX5    2*6
00462  M00S00426.acpd    +++|          BX2    -X0*X5
00463  M00S00427.acpd    +++|          SB3    X2-2R31
00464  M00S00428.acpd    +++|          GT     B3,PAP11    IF DAY .GT. 31
00465  M00S00429.acpd    +++|          SB3    X2-2R01
00466  M00S00430.acpd    +++|          NG     B3,PAP11    IF DAY .LT. 01
00467  M00S00431.acpd    +++|          MX3    -6
00468  M00S00432.acpd    +++|          BX4    -X3*X2
00469  M00S00433.acpd    +++|          SB3    X4-1R9
00470  M00S00434.acpd    +++|          GT     B3,PAP11    IF DATE .GT. X9
00471  M00S00435.acpd    +++|          SB3    X4-1R0
00472  M00S00436.acpd    +++|          NG     B3,PAP11    IF DATE .LT. X0
00473  M00S00437.acpd    +++|          LX5    2*6
00474  M00S00438.acpd    +++|          BX2    -X0*X5
00475  M00S00439.acpd    +++|          NZ     X2,PAP11    IF DATE TOO LONG
00476  M00S00440.acpd    +++| PAP10    SB2    B2-B1
00477  M00S00441.acpd    +++|          GT     B2,PAP9     IF NOT DONE
00478  M00S00442.acpd    +++|          EQ     PAPX        RETURN
00479  M00S00443.acpd    +++|
Line S00444 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00480  M01S00444.v23l617 ---|*         ERROR.
Line S00028 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00481  M01S00028.v23l617 +++|*         PROCESS ARGUMENT ERROR.
00482  M00S00445.acpd    +++|
00483  M00S00446.acpd    +++| PAP11    SB2    FN          GET ARGUMENT NAME
00484  M00S00447.acpd    +++|          SB2    A5-B2
00485  M00S00448.acpd    +++|          SA4    B2+VARG
00486  M00S00449.acpd    +++|
00487  M00S00450.acpd    +++| PAP12    MX0    2*6
00488  M00S00451.acpd    +++|          BX6    X0*X4
00489  M00S00452.acpd    +++|          SA6    EFL
Line S00453 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00490  M01S00453.v23l617 ---|          SA1    PAR         ISSUE *ACPD ARGUMENT ERROR - XX* MESSAGE
Line S00029 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00491  M01S00029.v23l617 +++|          SX6    ERM1        * ACPD ARGUMENT ERROR - XX.*
00492  M01S00030.v23l617 +++|
00493  M01S00031.v23l617 +++|*         PROCESS ERROR.
00494  M01S00032.v23l617 +++|
00495  M01S00033.v23l617 +++| PAP13    SA6    ERC         SET ERROR CODE
00496  M01S00034.v23l617 +++|          SA1    PAR         SET PARAMETER ADDRESS
00497  M00S00454.acpd    +++|          RJ     =XPERROR    NO RETURN
00498  M00S00455.acpd    +++|          SPACE  4,10
00499  M00S00456.acpd    +++|*         COMMON DECKS
00500  M00S00457.acpd    +++|
00501  M00S00458.acpd    +++|*CALL     COMCARG
00502  M00S00459.acpd    +++|*CALL     COMCDXB
00503  M00S00460.acpd    +++|
00504  M00S00461.acpd    +++|          END    ACPD
00505  M00S00462.acpd    +++|*WEOR
00506  M00S00463.acpd    +++|PRGM ACPDM;
00507  M00S00464.acpd    +++|# TITLE ACPDM - ANALYZE PERFORMANCE DATA.  #
00508  M00S00465.acpd    +++|
00509  M00S00466.acpd    +++|      BEGIN  # ACPDM #
00510  M00S00467.acpd    +++|
00511  M00S00468.acpd    +++|#
00512  M00S00469.acpd    +++|***   ACPDM - ANALYZE PERFORMANCE DATA.
00513  M00S00470.acpd    +++|*
00514  M00S00471.acpd    +++|*     ANALYZE PERFORMANCE DATA COLLECTED BY *CPD*.
00515  M00S00472.acpd    +++|*
Line S00473 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00516  M01S00473.v23l617 ---|*     CONTROL STATEMENT FORMAT.
Line S00035 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00517  M01S00035.v23l617 +++|*     COMMAND FORMAT.
00518  M00S00474.acpd    +++|*
00519  M00S00475.acpd    +++|*     ACPD(P1,P2,...,PN)
00520  M00S00476.acpd    +++|*
00521  M00S00477.acpd    +++|*     WHERE PI IS ANY OF THE FOLLOWING.
00522  M00S00478.acpd    +++|*
00523  M00S00479.acpd    +++|*     OPTION       DEFAULT       DESCRIPTION
00524  M00S00480.acpd    +++|*
00525  M00S00481.acpd    +++|*     FN=LFN1      SAMPLE        DATA FILE NAME.
00526  M00S00482.acpd    +++|*     L=LFN2       OUTPUT        REPORT FILE NAME.
00527  M00S00483.acpd    +++|*     S=LFN3       0             SUMMARY FILE NAME.
00528  M00S00484.acpd    +++|*                                IF NO EQUIVALENCE, *S* IS ASSUMED
00529  M00S00485.acpd    +++|*                                TO BE *SUMMARY*.
00530  M00S00486.acpd    +++|*     IN=NNN       6 MINS        INTERVAL LENGTH IN MINUTES.
Line S00036 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00531  M01S00036.v23l617 +++|*                                IF THE IC PARAMETER IS SPECIFIED AND
00532  M01S00037.v23l617 +++|*                                IN IS NOT, THE IC VALUE IS USED
00533  M01S00038.v23l617 +++|*                                INSTEAD OF THE IN PARAMETER DEFAULT
00534  M01S00039.v23l617 +++|*                                TO SPECIFY THE REPORT INTERVAL.  USE
00535  M01S00040.v23l617 +++|*                                OF BOTH THE IN AND IC PARAMETERS
00536  M01S00041.v23l617 +++|*                                RESULTS IN AN ERROR.
00537  M01S00042.v23l617 +++|*     IC=NNN       0 RECORDS     INTERVAL RECORD COUNT.  SPECIFIES THE
00538  M01S00043.v23l617 +++|*                                NUMBER OF SAMPLE FILE RECORDS PER
00539  M01S00044.v23l617 +++|*                                REPORT INTERVAL.  USE OF BOTH THE IN
00540  M01S00045.v23l617 +++|*                                AND IC PARAMETERS RESULTS IN AN ERROR.
00541  M00S00487.acpd    +++|*     N=NNN        1 FILE        NUMBER OF FILES TO PROCESS.
00542  M00S00488.acpd    +++|*                                IF NO EQUIVALENCE, *ACPD* WILL PROCESS
00543  M00S00489.acpd    +++|*                                UNTIL EOI OF *LFN1* IS REACHED.
00544  M00S00490.acpd    +++|*     LO=Z         0             LIST OPTION. IF LO=Z, ELEMENTS
00545  M00S00491.acpd    +++|*                                WITH ZERO VALUES WILL BE PRINTED.
00546  M00S00492.acpd    +++|*                                IF LO=0 (DEFAULT), THESE ELEMENTS
00547  M00S00493.acpd    +++|*                                WILL NOT BE PRINTED. *Z* IS THE
00548  M00S00494.acpd    +++|*                                ONLY VALID OPTION.
00549  M00S00495.acpd    +++|*     BT=HHMMSS    0             BEGINNING TIME. IF *BT* IS OMITTED,
00550  M00S00496.acpd    +++|*                                PROCESSING WILL BEGIN AT THE
00551  M00S00497.acpd    +++|*                                CURRENT DATA FILE POSITION. IF *BT*
00552  M00S00498.acpd    +++|*                                IS SPECIFIED, PROCESSING WILL
00553  M00S00499.acpd    +++|*                                BEGIN AT THE FILE CONTAINING THE
00554  M00S00500.acpd    +++|*                                RECORD WHOSE TIME EQUALS TO *BT*.
00555  M00S00501.acpd    +++|*     BD=YYMMDD    0             BEGINNING DATE. IF *BD* IS OMITTED,
00556  M00S00502.acpd    +++|*                                *BD* WILL BE ASSUMED THE DATE OF THE
00557  M00S00503.acpd    +++|*                                FILE WHERE THE DATA FILE IS
00558  M00S00504.acpd    +++|*                                CURRENTLY POSITIONED.
00559  M00S00505.acpd    +++|*     ET=HHMMSS    0             ENDING TIME. *ACPD* WILL TERMINATE
00560  M00S00506.acpd    +++|*                                WHEN THE RECORD WHOSE TIME EQUALS
00561  M00S00507.acpd    +++|*                                TO *ET* IS REACHED.
00562  M00S00508.acpd    +++|*     ED=YYMMDD    0             ENDING DATE. *ED* AND *ET* FORM THE
00563  M00S00509.acpd    +++|*                                ENDING TIME. IF *ED* IS SPECIFIED BUT
00564  M00S00510.acpd    +++|*                                *ET* IS OMITTED, THE ENDING TIME IS
00565  M00S00511.acpd    +++|*                                ZERO HOUR OF DAY *ED*. IF *ED* IS
00566  M00S00512.acpd    +++|*                                OMITTED BUT *ET* IS SPECIFIED, *ED*
00567  M00S00513.acpd    +++|*                                IS SET TO THE VALUE OF *BD*. IF BOTH
00568  M00S00514.acpd    +++|*                                *ED* AND *ET* ARE OMITTED, *ACPD* WILL
00569  M00S00515.acpd    +++|*                                TERMINATE IF THE FOLLOWING OCCURS :
00570  M00S00516.acpd    +++|*                                -NUMBER OF FILES SPECIFIED IN THE
00571  M00S00517.acpd    +++|*                                 *N* PARAMETER ARE PROCESSED.
00572  M00S00518.acpd    +++|*                                -AT EOI OF THE DATA FILE.
00573  M00S00519.acpd    +++|*
00574  M00S00520.acpd    +++|*     SUMMARY FILE FORMAT.
00575  M00S00521.acpd    +++|*
00576  M00S00522.acpd    +++|*     THE SUMMARY FILE HAS TWO TYPES OF RECORD, THE HEADER BLOCK
00577  M00S00523.acpd    +++|*     RECORD AND THE DATA BLOCK RECORD.
00578  M00S00524.acpd    +++|*     THE HEADER BLOCK RECORD IS THE HEADER RECORD OF THE DATA
00579  M00S00525.acpd    +++|*     FILE IN THE UNPACKED FORMAT.
00580  M00S00526.acpd    +++|*     EACH DATA BLOCK RECORD CONTAINS VALUES OF THE DATA BLOCK
00581  M00S00527.acpd    +++|*     ELEMENTS IN ONE REPORT INTERVAL.
00582  M00S00528.acpd    +++|*     THE DATA BLOCK RECORD HAS TWO EQUAL LENGTH PARTS. THE
00583  M00S00529.acpd    +++|*     FIRST PART CONTAINS THE AVERAGE VALUES OF THE DATA BLOCK
00584  M00S00530.acpd    +++|*     ELEMENTS. THE SECOND PART CONTAINS THE STANDARD DEVIATIONS
00585  M00S00531.acpd    +++|*     OF EACH DATA BLOCK ELEMENTS.
00586  M00S00532.acpd    +++|*     THE LOOP SAMPLE TIMES AND THE SNAPSHOT ELEMENTS DO NOT
00587  M00S00533.acpd    +++|*     HAVE STANDARD DEVIATIONS (0).
00588  M00S00534.acpd    +++|*     THERE IS AN EOR BETWEEN TWO CONSECUTIVE RECORDS.
00589  M00S00535.acpd    +++|*
00590  M00S00536.acpd    +++|*     MESSAGES.
00591  M00S00537.acpd    +++|*
00592  M00S00538.acpd    +++|*        -ACPD ARGUMENT ERROR - XX.
Line S00539 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00593  M01S00539.v23l617 ---|*           ERROR DETECTED IN CONTROL STATEMENT SYNTAX.
Line S00046 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00594  M01S00046.v23l617 +++|*           ERROR DETECTED IN COMMAND SYNTAX.
00595  M00S00540.acpd    +++|*
00596  M00S00541.acpd    +++|*        -BT/BD NOT FOUND.
00597  M00S00542.acpd    +++|*           *BT*/*BD* GREATER THAN THE TIME OF THE LAST DATA RECORD.
00598  M00S00543.acpd    +++|*
00599  M00S00544.acpd    +++|*        -CPD/ACPD VERSIONS MISMATCH.
00600  M00S00545.acpd    +++|*           *CPD* AND *ACPD* VERSIONS ARE NOT COMPATIBLE.
00601  M00S00546.acpd    +++|*
00602  M00S00547.acpd    +++|*        -DATA BLOCKS MISSING.
00603  M00S00548.acpd    +++|*           EXPECTED DATA BLOCKS FOLLOWING HEADER BLOCK NOT FOUND.
00604  M00S00549.acpd    +++|*
00605  M00S00550.acpd    +++|*        -DATA ELEMENT NAME UNDEFINED - XXXX.
00606  M00S00551.acpd    +++|*           DATA ELEMENT XXXX IS NOT DEFINED IN COMMON DECK COMSCPD.
00607  M00S00552.acpd    +++|*
00608  M00S00553.acpd    +++|*        -DATA FILE POSITIONED AT *EOI*.
00609  M00S00554.acpd    +++|*           DATA FILE IS INITIALLY POSITIONED AT EOI.
00610  M00S00555.acpd    +++|*
00611  M00S00556.acpd    +++|*        -DATA FILE EMPTY.
00612  M00S00557.acpd    +++|*           DATA FILE IS EMPTY.
00613  M00S00558.acpd    +++|*
00614  M00S00559.acpd    +++|*        -DATA FILE CONTENT ERROR.
00615  M00S00560.acpd    +++|*           DATA FILE GENERATED BY *CPD* IS NOT IN THE EXPECTED
00616  M00S00561.acpd    +++|*           FORMAT.
00617  M00S00562.acpd    +++|*
00618  M00S00563.acpd    +++|*        -DATA FILE NOT AT BEGINNING OF A FILE.
00619  M00S00564.acpd    +++|*           AT THE BEGINNING OF PROCESSING, THE DATA FILE IS
00620  M00S00565.acpd    +++|*           POSITIONED EITHER AT THE MIDDLE OF A RECORD, OR
00621  M00S00566.acpd    +++|*           AT THE BEGINNING OF A DATA BLOCK RECORD.
00622  M00S00567.acpd    +++|*
00623  M00S00568.acpd    +++|*        -DATA FILE NOT FOUND - XXX.
00624  M00S00569.acpd    +++|*           DATA FILE XXX IS NOT LOCAL TO THE JOB AT THE TIME *ACPD*
00625  M00S00570.acpd    +++|*           IS RUNNING.
00626  M00S00571.acpd    +++|*
00627  M00S00572.acpd    +++|*        -DATA FILE NOT IN CHRONOLOGICAL ORDER.
00628  M00S00573.acpd    +++|*           DATA FILE IS NOT IN THE INCREASING ORDER OF TIME OF THE
00629  M00S00574.acpd    +++|*           RECORDS.
00630  M00S00575.acpd    +++|*
00631  M00S00576.acpd    +++|*        -IN LESS THAN FILE WRITE TIME.
00632  M00S00577.acpd    +++|*           REPORT TIME INTERVAL LESS THAN FILE WRITE TIME
00633  M00S00578.acpd    +++|*           (*FW*) OF *CPD*.
00634  M00S00579.acpd    +++|*
Line S00047 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00635  M01S00047.v23l617 +++|*        -IN AND IC PARAMETER CONFLICT.
00636  M01S00048.v23l617 +++|*           THE IN AND IC PARAMETERS WERE BOTH SPECIFIED ON THE *ACPD*
00637  M01S00049.v23l617 +++|*           COMMAND.
00638  M01S00050.v23l617 +++|*
00639  M00S00580.acpd    +++|*        -N EXCEEDS NUMBER OF FILES.
00640  M00S00581.acpd    +++|*           NUMBER OF FILES REQUESTED GREATER THAN NUMBER OF FILES
00641  M00S00582.acpd    +++|*           ON THE DATA FILE.
00642  M00S00583.acpd    +++|*
00643  M00S00584.acpd    +++|*
00644  M00S00585.acpd    +++|*     NOTE.
00645  M00S00586.acpd    +++|*
00646  M00S00587.acpd    +++|*     TO BUILD *ACPD*, DO THE FOLLOWING :
00647  M00S00588.acpd    +++|*
00648  M00S00589.acpd    +++|*         - MODIFY(Z)/*EDIT,ACPD
00649  M00S00590.acpd    +++|*         - COMPASS(I,S=NOSTEXT)
00650  M00S00591.acpd    +++|*         - SYMPL(I)
00651  M00S00592.acpd    +++|*         - LDSET(LIB=SRVLIB,PRESET=ZERO)
00652  M00S00593.acpd    +++|*         - LOAD(LGO)
00653  M00S00594.acpd    +++|*         - NOGO(ACPD,ACPD,$RFL=$)
00654  M00S00595.acpd    +++|*
00655  M00S00596.acpd    +++|#
00656  M00S00597.acpd    +++|
00657  M00S00598.acpd    +++|#
00658  M00S00599.acpd    +++|****  PRGM ACPDM - XREF LIST BEGIN.
00659  M00S00600.acpd    +++|#
00660  M00S00601.acpd    +++|
00661  M00S00602.acpd    +++|      XREF
00662  M00S00603.acpd    +++|        BEGIN
00663  M00S00604.acpd    +++|        PROC DATBLK;                 # PROCESS DATA BLOCK #
00664  M00S00605.acpd    +++|        PROC HEADER;                 # PROCESS HEADER BLOCK #
00665  M00S00606.acpd    +++|        PROC INITLZ;                 # INITIALIZE *ACPD* #
00666  M00S00607.acpd    +++|        PROC MESSAGE;                # ISSUE DAYFILE MESSAGE #
00667  M00S00608.acpd    +++|        PROC RPCLOSE;                # CLOSE FILES #
00668  M00S00609.acpd    +++|        END
00669  M00S00610.acpd    +++|
00670  M00S00611.acpd    +++|#
00671  M00S00612.acpd    +++|****  PRGM ACPDM - XREF LIST END.
00672  M00S00613.acpd    +++|#
00673  M00S00614.acpd    +++|
00674  M00S00615.acpd    +++|      DEF LISTCON    #0#;            #TURN OFF COMMON DECK LISTING #
00675  M00S00616.acpd    +++|
00676  M00S00617.acpd    +++|*CALL     COMUCPD
00677  M00S00618.acpd    +++|
00678  M00S00619.acpd    +++|#
00679  M00S00620.acpd    +++|*     LOCAL VARIABLES.
00680  M00S00621.acpd    +++|#
00681  M00S00622.acpd    +++|
00682  M00S00623.acpd    +++|      ITEM DTDC       B;             # DATA BLOCK DECODED FLAG #
00683  M00S00624.acpd    +++|      ITEM HDDC       B;             # HEADER BLOCK DECODED FLAG #
00684  M00S00625.acpd    +++|      ITEM I          I;             # FOR LOOP CONTROL #
00685  M00S00626.acpd    +++|      ITEM LSTM       U;             # TIME OF LAST RECORD #
00686  M00S00627.acpd    +++|      ITEM EDTM       B;             # ENDING TIME EXPIRED FLAG #
00687  M00S00628.acpd    +++|
00688  M00S00629.acpd    +++|
00689  M00S00630.acpd    +++|
00690  M00S00631.acpd    +++|
00691  M00S00632.acpd    +++|
00692  M00S00633.acpd    +++|#
00693  M00S00634.acpd    +++|*     BEGIN *ACPDM* PROGRAM.
00694  M00S00635.acpd    +++|#
00695  M00S00636.acpd    +++|
00696  M00S00637.acpd    +++|      INITLZ(HDDC,DTDC,EDTM);        # INITIALIZE *ACPD* #
00697  M00S00638.acpd    +++|
00698  M00S00639.acpd    +++|      SLOWFOR I=1 STEP 1 WHILE (I LQ P$N) AND (NOT EDTM)
00699  M00S00640.acpd    +++|      DO
00700  M00S00641.acpd    +++|        BEGIN  # PROCESS ONE FILE #
00701  M00S00642.acpd    +++|        HEADER(EDTM,HDDC,LSTM);      # PROCESS HEADER BLOCK #
00702  M00S00643.acpd    +++|        IF (NOT EDTM)                # NOT EOI #
00703  M00S00644.acpd    +++|        THEN
00704  M00S00645.acpd    +++|          BEGIN
00705  M00S00646.acpd    +++|          DATBLK(EDTM,DTDC,LSTM);    # PROCESS DATA BLOCK #
00706  M00S00647.acpd    +++|          END
00707  M00S00648.acpd    +++|
00708  M00S00649.acpd    +++|        END  # PROCESS ONE FILE #
00709  M00S00650.acpd    +++|
00710  M00S00651.acpd    +++|      IF (P$L NQ NULL)               # REPORT FILE SPECIFIED #
00711  M00S00652.acpd    +++|      THEN
00712  M00S00653.acpd    +++|        BEGIN  # CLOSE REPORT FILE #
00713  M00S00654.acpd    +++|        RPCLOSE(OFFA);
00714  M00S00655.acpd    +++|        END
00715  M00S00656.acpd    +++|
Line S00657 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00716  M01S00657.v23l617 ---|      MESSAGE(" ACPD COMPLETED.",3);
Line S00051 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
00717  M01S00051.v23l617 +++|      MESSAGE(" ACPD COMPLETE.",3);
00718  M00S00658.acpd    +++|      END  # ACPDM #
00719  M00S00659.acpd    +++|      TERM
00720  M00S00660.acpd    +++|PROC ACMSTA((STA),(FWA),(DTY),(BCL),(WFP));
00721  M00S00661.acpd    +++|# TITLE ACMSTA - PRINT TOTAL STATISTICAL VALUES.  #
00722  M00S00662.acpd    +++|
00723  M00S00663.acpd    +++|      BEGIN  # ACMSTA #
00724  M00S00664.acpd    +++|
00725  M00S00665.acpd    +++|#
00726  M00S00666.acpd    +++|**    ACMSTA - PRINT TOTAL STATISTICAL VALUES.
00727  M00S00667.acpd    +++|*
00728  M00S00668.acpd    +++|*     PRINT PERCENTAGE, STANDARD DEVIATION, AND AVERAGE
00729  M00S00669.acpd    +++|*     OF ONE DATA ELEMENT FOR THE ENTIRE *ACPD* RUN.
00730  M00S00670.acpd    +++|*
00731  M00S00671.acpd    +++|*     PROC ACMSTA((STA),(FWA),(DTY),(BCL),(WFP))
00732  M00S00672.acpd    +++|*
00733  M00S00673.acpd    +++|*     ENTRY      STA = STATISTICAL VALUE TO BE COMPUTED.
00734  M00S00674.acpd    +++|*                FWA = ADDRESS OF THE DATA ELEMENT IN TABLE *DDSM*.
00735  M00S00675.acpd    +++|*                DTY = DATA TYPE.
00736  M00S00676.acpd    +++|*                BCL = BEGINNING COLUMN TO PRINT THE VALUE.
00737  M00S00677.acpd    +++|*                WFP = WEIGHT FACTOR.
00738  M00S00678.acpd    +++|*
00739  M00S00679.acpd    +++|*     EXIT       THE AVERAGE, STANDARD DEVIATION, AND PERCENTAGE
00740  M00S00680.acpd    +++|*                OF THE DATA ELEMENT FOR THE ENTIRE RUN ARE PRINTED.
00741  M00S00681.acpd    +++|#
00742  M00S00682.acpd    +++|
00743  M00S00683.acpd    +++|#
00744  M00S00684.acpd    +++|*     PARAMETER LIST.
00745  M00S00685.acpd    +++|#
00746  M00S00686.acpd    +++|
00747  M00S00687.acpd    +++|      ITEM STA        U;             # STATISTIC TO BE COMPUTED #
00748  M00S00688.acpd    +++|      ITEM FWA        U;             # DATA ELEMENT ORDINAL #
00749  M00S00689.acpd    +++|      ITEM DTY        U;             # DATA TYPE #
00750  M00S00690.acpd    +++|      ITEM BCL        U;             # BEGINNING COLUMN #
00751  M00S00691.acpd    +++|      ITEM WFP        R;             # WEIGHT FACTOR #
00752  M00S00692.acpd    +++|
00753  M00S00693.acpd    +++|#
00754  M00S00694.acpd    +++|****  PROC ACMSTA - XREF LIST BEGIN.
00755  M00S00695.acpd    +++|#
00756  M00S00696.acpd    +++|
00757  M00S00697.acpd    +++|      XREF
00758  M00S00698.acpd    +++|        BEGIN
00759  M00S00699.acpd    +++|        FUNC SQRT R;                 # SQUARE ROOT FUNCTION #
00760  M00S00700.acpd    +++|        PROC WRITEV;                 # WRITE DATA ELEMENT #
00761  M00S00701.acpd    +++|        END
00762  M00S00702.acpd    +++|
00763  M00S00703.acpd    +++|#
00764  M00S00704.acpd    +++|****  PROC ACMSTA - XREF LIST END.
00765  M00S00705.acpd    +++|#
00766  M00S00706.acpd    +++|
00767  M00S00707.acpd    +++|      DEF LISTCON    #0#;            # TURN OFF COMMON DECK LISTING #
00768  M00S00708.acpd    +++|
00769  M00S00709.acpd    +++|*CALL     COMUCPD
00770  M00S00710.acpd    +++|
00771  M00S00711.acpd    +++|#
00772  M00S00712.acpd    +++|*     LOCAL VARIABLES.
00773  M00S00713.acpd    +++|#
00774  M00S00714.acpd    +++|
00775  M00S00715.acpd    +++|      ITEM VL         R;             # TEMPORARY STORAGE #
00776  M00S00716.acpd    +++|
00777  M00S00717.acpd    +++|      ARRAY MAXVAL [0:0] P(1);       # MAXIMUM VALUE #
00778  M00S00718.acpd    +++|        BEGIN  # ARRAY MAXVAL #
00779  M00S00719.acpd    +++|        ITEM MAXR       R(00,00,60);  # REAL VALUE #
00780  M00S00720.acpd    +++|        ITEM MAXI       I(00,00,60);  # INTEGER VALUE #
00781  M00S00721.acpd    +++|        END  # ARRAY MAXVAL #
00782  M00S00722.acpd    +++|
00783  M00S00723.acpd    +++|      ARRAY MINVAL [0:0] P(1);       # MINIMUM VALUE #
00784  M00S00724.acpd    +++|        BEGIN  # ARRAY MINVAL #
00785  M00S00725.acpd    +++|        ITEM MINR       R(00,00,60);  # REAL VALUE #
00786  M00S00726.acpd    +++|        ITEM MINI       I(00,00,60);  # INTEGER VALUE #
00787  M00S00727.acpd    +++|        END  # ARRAY MINVAL #
00788  M00S00728.acpd    +++|
00789  M00S00729.acpd    +++|      ARRAY TOTVAL [0:0] P(1);       # TOTAL REPORT VALUE #
00790  M00S00730.acpd    +++|        BEGIN  # ARRAY TOTVAL #
00791  M00S00731.acpd    +++|        ITEM TOTR       R(00,00,60);  # REAL VALUE #
00792  M00S00732.acpd    +++|        ITEM TOTI       I(00,00,60);  # INTEGER VALUE #
00793  M00S00733.acpd    +++|        END  # ARRAY TOTVAL #
00794  M00S00734.acpd    +++|
00795  M00S00735.acpd    +++|      SWITCH STAT:STVAL              # STATISTIC #
00796  M00S00736.acpd    +++|             PCSS:PCST,              # PERCENTAGE #
00797  M00S00737.acpd    +++|             SDSS:SDST,              # STANDARD DEVIATION #
00798  M00S00738.acpd    +++|             AVSS:AVST;              # AVERAGE #
00799  M00S00739.acpd    +++|
00800  M00S00740.acpd    +++|      LABEL PRSTAT;                  # PRINT TOTAL STATISTICS #
00801  M00S00741.acpd    +++|
00802  M00S00742.acpd    +++|
00803  M00S00743.acpd    +++|
00804  M00S00744.acpd    +++|
00805  M00S00745.acpd    +++|#
00806  M00S00746.acpd    +++|*     BEGIN ACMSTA PROC.
00807  M00S00747.acpd    +++|#
00808  M00S00748.acpd    +++|
00809  M00S00749.acpd    +++|      P<DDSM>=LOC(DBUF[DCHL + DCDC*DCDL*2]);
00810  M00S00750.acpd    +++|      GOTO STAT[STA];
00811  M00S00751.acpd    +++|
00812  M00S00752.acpd    +++|#
00813  M00S00753.acpd    +++|*     COMPUTE AND PRINT TOTAL PERCENTAGE.
00814  M00S00754.acpd    +++|#
00815  M00S00755.acpd    +++|
00816  M00S00756.acpd    +++|PCSS:                                # PERCENTAGE #
00817  M00S00757.acpd    +++|      IF (WFP EQ 0)
00818  M00S00758.acpd    +++|      THEN
00819  M00S00759.acpd    +++|        BEGIN
00820  M00S00760.acpd    +++|        TOTR[0]=0.0;
00821  M00S00761.acpd    +++|        END
00822  M00S00762.acpd    +++|
00823  M00S00763.acpd    +++|      ELSE
00824  M00S00764.acpd    +++|        BEGIN
00825  M00S00765.acpd    +++|        TOTR[0]=(DDSM$SM[FWA]/(ACNS*WFP))*100.0;
00826  M00S00766.acpd    +++|        END
00827  M00S00767.acpd    +++|
00828  M00S00768.acpd    +++|      MAXR[0]=DDSM$PX[FWA];          # MAXIMUM PERCENTAGE #
00829  M00S00769.acpd    +++|      MINR[0]=DDSM$PN[FWA];          # MINIMUM PERCENTAGE #
00830  M00S00770.acpd    +++|      GOTO PRSTAT;
00831  M00S00771.acpd    +++|
00832  M00S00772.acpd    +++|#
00833  M00S00773.acpd    +++|*     COMPUTE AND PRINT TOTAL STANDARD DEVIATION.
00834  M00S00774.acpd    +++|#
00835  M00S00775.acpd    +++|
00836  M00S00776.acpd    +++|SDSS:                                # STANDARD DEVIATION #
00837  M00S00777.acpd    +++|      VL=DDSM$SM[FWA]/ACNS;
00838  M00S00778.acpd    +++|      TOTR[0]=SQRT(DDSM$SQ[FWA]/ACNS - VL*VL);
00839  M00S00779.acpd    +++|      MAXR[0]=DDSM$SX[FWA];          # MAXIMUM STANDARD DEVIATION #
00840  M00S00780.acpd    +++|      MINR[0]=DDSM$SN[FWA];          # MINIMUM STANDARD DEVIATION #
00841  M00S00781.acpd    +++|      GOTO PRSTAT;
00842  M00S00782.acpd    +++|
00843  M00S00783.acpd    +++|#
00844  M00S00784.acpd    +++|*     COMPUTE AND PRINT TOTAL AVERAGE.
00845  M00S00785.acpd    +++|#
00846  M00S00786.acpd    +++|
00847  M00S00787.acpd    +++|AVSS:                                # AVERAGE #
00848  M00S00788.acpd    +++|      VL=DDSM$SM[FWA];
00849  M00S00789.acpd    +++|      IF (DTY EQ FLPC)               # REAL FORMAT #
00850  M00S00790.acpd    +++|      THEN
00851  M00S00791.acpd    +++|        BEGIN
00852  M00S00792.acpd    +++|        TOTR[0]=VL/ACNS;
00853  M00S00793.acpd    +++|        MAXR[0]=DDSM$AX[FWA];        # MAXIMUM AVERAGE #
00854  M00S00794.acpd    +++|        MINR[0]=DDSM$AN[FWA];        # MINIMUM AVERAGE #
00855  M00S00795.acpd    +++|        END
00856  M00S00796.acpd    +++|
00857  M00S00797.acpd    +++|      ELSE                           # NOT REAL FORMAT #
00858  M00S00798.acpd    +++|        BEGIN
00859  M00S00799.acpd    +++|        TOTI[0]=VL/ACNS;
00860  M00S00800.acpd    +++|        MAXI[0]=DDSM$AX[FWA];        # MAXIMUM AVERAGE #
00861  M00S00801.acpd    +++|        MINI[0]=DDSM$AN[FWA];        # MINIMUM AVERAGE #
00862  M00S00802.acpd    +++|        END
00863  M00S00803.acpd    +++|
00864  M00S00804.acpd    +++|#
00865  M00S00805.acpd    +++|*     PRINT TOTAL STATISTICS.
00866  M00S00806.acpd    +++|#
00867  M00S00807.acpd    +++|
00868  M00S00808.acpd    +++|PRSTAT:                              # PRINT STATISTIC VALUES #
00869  M00S00809.acpd    +++|      WRITEV(TOTVAL[0],DTY,BCL+1,9,NLFC);
00870  M00S00810.acpd    +++|      WRITEV(MAXVAL[0],DTY,BCL+10,10,NLFC);
00871  M00S00811.acpd    +++|      WRITEV(MINVAL[0],DTY,BCL+20,10,LFDC);
00872  M00S00812.acpd    +++|      RETURN;
00873  M00S00813.acpd    +++|      END  # ACMSTA #
00874  M00S00814.acpd    +++|
00875  M00S00815.acpd    +++|      TERM
00876  M00S00816.acpd    +++|PROC ADJUST;
00877  M00S00817.acpd    +++|# TITLE ADJUST - ADJUST TABLES AND FIELD LENGTH.  #
00878  M00S00818.acpd    +++|
00879  M00S00819.acpd    +++|      BEGIN  # ADJUST #
00880  M00S00820.acpd    +++|
00881  M00S00821.acpd    +++|#
00882  M00S00822.acpd    +++|**    ADJUST - ADJUST TABLES AND FIELD LENGTH.
00883  M00S00823.acpd    +++|*
00884  M00S00824.acpd    +++|*     THIS PROC RECOMPUTES THE FIELD LENGTH AND BUFFER ADDRESSES.
00885  M00S00825.acpd    +++|*     IT ALSO COMPUTES THE DECODED BUFFER ADDRESSES OF TABLES
00886  M00S00826.acpd    +++|*     *DDHD* AND *DDDT*.
00887  M00S00827.acpd    +++|*     THE MASS STORAGE DEVICE SUBBLOCK TITLE TABLE IS CONSTRUCTED
00888  M00S00828.acpd    +++|*     BASED ON THE EST.
00889  M00S00829.acpd    +++|*
00890  M00S00830.acpd    +++|*     PROC ADJUST
00891  M00S00831.acpd    +++|*
00892  M00S00832.acpd    +++|*     ENTRY      NONE.
00893  M00S00833.acpd    +++|*
00894  M00S00834.acpd    +++|*     EXIT       THE NEW DECODED BUFFER LENGTHS OF THE HEADER
00895  M00S00835.acpd    +++|*                BLOCK *DCHL* AND DATA BLOCK *DCDL* ARE COMPUTED.
00896  M00S00836.acpd    +++|*                THE DECODED BUFFER POINTERS OF TABLES *DDHD* AND
00897  M00S00837.acpd    +++|*                *DDDT* ARE COMPUTED.
00898  M00S00838.acpd    +++|*                NEW FIELD LENGTH IS COMPUTED.
00899  M00S00839.acpd    +++|*                MASS STORAGE DEVICE SUBBLOCK TITLE TABLE IS
00900  M00S00840.acpd    +++|*                CONSTRUCTED.
00901  M00S00841.acpd    +++|#
00902  M00S00842.acpd    +++|
00903  M00S00843.acpd    +++|#
00904  M00S00844.acpd    +++|****  PROC ADJUST - XREF LIST BEGIN.
00905  M00S00845.acpd    +++|#
00906  M00S00846.acpd    +++|
00907  M00S00847.acpd    +++|      XREF
00908  M00S00848.acpd    +++|        BEGIN
00909  M00S00849.acpd    +++|        PROC MEMORY;                 # REQUEST MEMORY #
00910  M00S00850.acpd    +++|        FUNC XCOD C(10);             # NUMBER TO DISPLAY OCTAL #
00911  M00S00851.acpd    +++|        END
00912  M00S00852.acpd    +++|
00913  M00S00853.acpd    +++|#
00914  M00S00854.acpd    +++|****  PROC ADJUST - XREF LIST END.
00915  M00S00855.acpd    +++|#
00916  M00S00856.acpd    +++|
00917  M00S00857.acpd    +++|      DEF BLKC       #" "#;          # BLANK #
00918  M00S00858.acpd    +++|      DEF CPWC       #5#;            # NUMBER OF CHARACTER PER WORD #
00919  M00S00859.acpd    +++|      DEF MXVC       #1.0E20#;       # MAXIMUM VALUE #
00920  M00S00860.acpd    +++|      DEF NA         #"NA"#;         # NO ABORT FLAG #
00921  M00S00861.acpd    +++|      DEF RECALL     #1#;            # RECALL FLAG #
00922  M00S00862.acpd    +++|
00923  M00S00863.acpd    +++|      DEF LISTCON    #0#;            # TURN OFF COMMON DECK LISTING #
00924  M00S00864.acpd    +++|
00925  M00S00865.acpd    +++|*CALL     COMUCPD
00926  M00S00866.acpd    +++|*CALL     COMUEST
00927  M00S00867.acpd    +++|
00928  M00S00868.acpd    +++|#
00929  M00S00869.acpd    +++|*     LOCAL VARIABLES.
00930  M00S00870.acpd    +++|#
00931  M00S00871.acpd    +++|
00932  M00S00872.acpd    +++|      ITEM BL         I;             # BUFFER LENGTH #
00933  M00S00873.acpd    +++|      ITEM BLC        I;             # BUFFER LENGTH #
00934  M00S00874.acpd    +++|      ITEM CBL        I;             # CURRENT BUFFER LENGTH #
00935  M00S00875.acpd    +++|      ITEM CM         C(10)="CM";    # MEMORY ARGUMENT #
00936  M00S00876.acpd    +++|      ITEM I          I;             # FOR LOOP CONTROL #
00937  M00S00877.acpd    +++|      ITEM IC         I;             # INCREMENTOR #
00938  M00S00878.acpd    +++|      ITEM J          I;             # FOR LOOP CONTROL #
00939  M00S00879.acpd    +++|      ITEM L          I;             # TEMPORARY STORAGE #
00940  M00S00880.acpd    +++|      ITEM LN         I;             # LENGTH #
00941  M00S00881.acpd    +++|      ITEM M          I;             # TEMPORARY STORAGE #
00942  M00S00882.acpd    +++|      ITEM MSI        I;             # *MST* ORDINAL #
00943  M00S00883.acpd    +++|      ITEM N          I;             # TEMPORARY STORAGE #
00944  M00S00884.acpd    +++|      ITEM ORD        C(10);         # *MST* ORDINAL DISPLAY #
00945  M00S00885.acpd    +++|      ITEM PR         I;             # PRECISION #
00946  M00S00886.acpd    +++|      ITEM RBL        I;             # REQUESTED BUFFER LENGTH #
00947  M00S00887.acpd    +++|      ITEM RDCDL      I;             # REQUESTED BUFFER LENGTH #
00948  M00S00888.acpd    +++|      ITEM RDCHL      I;             # REQUESTED BUFFER LENGTH #
00949  M00S00889.acpd    +++|
00950  M00S00890.acpd    +++|      BASED
00951  M00S00891.acpd    +++|      ARRAY MSD [0:0] P(1);          # MASS STORAGE DEVICE #
00952  M00S00892.acpd    +++|        BEGIN  # ARRAY MSD #
00953  M00S00893.acpd    +++|        ITEM MSD$WD     I(00,00,60);  # MSD ENTRY #
00954  M00S00894.acpd    +++|        ITEM MSD$EQ     C(00,00,03);  # EQUIPMENT NAME #
00955  M00S00895.acpd    +++|        ITEM MSD$OR     C(00,18,07);  # EQUIPMENT ORDINAL #
00956  M00S00896.acpd    +++|        END  # ARRAY MSD #
00957  M00S00897.acpd    +++|
00958  M00S00898.acpd    +++|      ARRAY STT [0:0] P(1);          # MEMORY ARGUMENT #
00959  M00S00899.acpd    +++|        BEGIN  # ARRAY STT #
00960  M00S00900.acpd    +++|        ITEM STT$RFL    U(00,00,30);  # REQUESTED FIELD LENGTH #
00961  M00S00901.acpd    +++|        ITEM STT$CMB    U(00,59,01);  # COMPLETION BIT #
00962  M00S00902.acpd    +++|        END  # ARRAY STT #
00963  M00S00903.acpd    +++|
00964  M00S00904.acpd    +++|
00965  M00S00905.acpd    +++|
00966  M00S00906.acpd    +++|
00967  M00S00907.acpd    +++|
00968  M00S00908.acpd    +++|
00969  M00S00909.acpd    +++|#
00970  M00S00910.acpd    +++|*     BEGIN ADJUST PROC.
00971  M00S00911.acpd    +++|#
00972  M00S00912.acpd    +++|
00973  M00S00913.acpd    +++|      P<DCHD>=LOC(DBUF);
00974  M00S00914.acpd    +++|
00975  M00S00915.acpd    +++|#
00976  M00S00916.acpd    +++|*     COMPUTE LENGTH OF THE HEADER BLOCK DECODED BUFFER.
00977  M00S00917.acpd    +++|#
00978  M00S00918.acpd    +++|
00979  M00S00919.acpd    +++|      BL=0;
00980  M00S00920.acpd    +++|      P<MPAR>=LOC(HDTR);
00981  M00S00921.acpd    +++|      P<DDSC>=LOC(DDHD);
00982  M00S00922.acpd    +++|
00983  M00S00923.acpd    +++|      J=0;
00984  M00S00924.acpd    +++|      SLOWFOR M=0 WHILE (MPAR$WD[J] NQ 0)
00985  M00S00925.acpd    +++|      DO
00986  M00S00926.acpd    +++|        BEGIN  # COMPUTE HEADER BLOCK LENGTH AND BUFFER ADDRESS #
00987  M00S00927.acpd    +++|        LN=MPAR$LN[J];
00988  M00S00928.acpd    +++|        IF (MPAR$LMP[J] NQ 0)
00989  M00S00929.acpd    +++|        THEN
00990  M00S00930.acpd    +++|          BEGIN
00991  M00S00931.acpd    +++|          LN=LN*DCHD$WD[DDSC$FW[MPAR$LMP[J]]];
00992  M00S00932.acpd    +++|          END
00993  M00S00933.acpd    +++|
00994  M00S00934.acpd    +++|        PR=MPAR$PR[J];
00995  M00S00935.acpd    +++|        IF (PR GR CPWC)
00996  M00S00936.acpd    +++|        THEN
00997  M00S00937.acpd    +++|          BEGIN
00998  M00S00938.acpd    +++|          LN=(PR/CPWC)*LN;
00999  M00S00939.acpd    +++|          END
01000  M00S00940.acpd    +++|
01001  M00S00941.acpd    +++|        BLC=BL;
01002  M00S00942.acpd    +++|        IC=MPAR$IC[J];
01003  M00S00943.acpd    +++|        FASTFOR I=1 STEP 1 UNTIL IC
01004  M00S00944.acpd    +++|        DO
01005  M00S00945.acpd    +++|          BEGIN
01006  M00S00946.acpd    +++|          DDSC$FW[J]=BLC;
01007  M00S00947.acpd    +++|          DDSC$LN[J]=LN;
01008  M00S00948.acpd    +++|          DDSC$IC[J]=IC;
01009  M00S00949.acpd    +++|          BL=BL+LN;
01010  M00S00950.acpd    +++|          BLC=BLC+1;
01011  M00S00951.acpd    +++|          J=J+1;
01012  M00S00952.acpd    +++|          END
01013  M00S00953.acpd    +++|
01014  M00S00954.acpd    +++|        END  # COMPUTE HEADER BLOCK LENGTH AND BUFFER ADDRESS #
01015  M00S00955.acpd    +++|
01016  M00S00956.acpd    +++|      RDCHL=BL+1;                    # NEW HEADER BLOCK BUFFER LENGTH #
01017  M00S00957.acpd    +++|
01018  M00S00958.acpd    +++|#
01019  M00S00959.acpd    +++|*     COMPUTE THE DATA BLOCK DECODED BUFFER LENGTH.
01020  M00S00960.acpd    +++|#
01021  M00S00961.acpd    +++|
01022  M00S00962.acpd    +++|      BL=0;
01023  M00S00963.acpd    +++|      J=0;
01024  M00S00964.acpd    +++|      P<MPAR>=LOC(DATT);
01025  M00S00965.acpd    +++|
01026  M00S00966.acpd    +++|      SLOWFOR M=0 WHILE (MPAR$WD[J] NQ 0)
01027  M00S00967.acpd    +++|      DO
01028  M00S00968.acpd    +++|        BEGIN  # COMPUTE DATA BLOCK LENGTH AND BUFFER ADDRESS #
01029  M00S00969.acpd    +++|        P<DDSC>=LOC(DDHD);
01030  M00S00970.acpd    +++|        LN=MPAR$LN[J];
01031  M00S00971.acpd    +++|        IF (MPAR$LMP[J] NQ 0)
01032  M00S00972.acpd    +++|        THEN
01033  M00S00973.acpd    +++|          BEGIN
01034  M00S00974.acpd    +++|          LN=LN*DCHD$WD[DDSC$FW[MPAR$LMP[J]]];
01035  M00S00975.acpd    +++|          END
01036  M00S00976.acpd    +++|
01037  M00S00977.acpd    +++|        PR=MPAR$PR[J];
01038  M00S00978.acpd    +++|        IF (PR GR CPWC)
01039  M00S00979.acpd    +++|        THEN
01040  M00S00980.acpd    +++|          BEGIN
01041  M00S00981.acpd    +++|          LN=(PR/CPWC)*LN;
01042  M00S00982.acpd    +++|          END
01043  M00S00983.acpd    +++|
01044  M00S00984.acpd    +++|        P<DDSC>=LOC(DDDT);
01045  M00S00985.acpd    +++|        BLC=BL;
01046  M00S00986.acpd    +++|        IC=MPAR$IC[J];
01047  M00S00987.acpd    +++|        FASTFOR I=1 STEP 1 UNTIL IC
01048  M00S00988.acpd    +++|        DO
01049  M00S00989.acpd    +++|          BEGIN
01050  M00S00990.acpd    +++|          DDSC$FW[J]=BLC;
01051  M00S00991.acpd    +++|          DDSC$LN[J]=LN;
01052  M00S00992.acpd    +++|          DDSC$IC[J]=IC;
01053  M00S00993.acpd    +++|          BL=BL+LN;
01054  M00S00994.acpd    +++|          BLC=BLC+1;
01055  M00S00995.acpd    +++|          J=J+1;
01056  M00S00996.acpd    +++|          END
01057  M00S00997.acpd    +++|
01058  M00S00998.acpd    +++|        END  # COMPUTE DATA BLOCK LENGTH AND BUFFER ADDRESS #
01059  M00S00999.acpd    +++|
01060  M00S01000.acpd    +++|      RDCDL=BL+1;                    # NEW DATA BLOCK LENGTH #
01061  M00S01001.acpd    +++|
01062  M00S01002.acpd    +++|#
01063  M00S01003.acpd    +++|*     COMPUTE NEW FIELD LENGTH.
01064  M00S01004.acpd    +++|#
01065  M00S01005.acpd    +++|
01066  M00S01006.acpd    +++|      RBL=RDCHL+(RDCDL*DCDC*2)+(RDCDL*8);  # NEW LENGTH #
01067  M00S01007.acpd    +++|      CBL=DCHL+(DCDL*DCDC*2)+(DCDL*8);  # OLD LENGTH #
01068  M00S01008.acpd    +++|      HGAD=HGAD + (RBL-CBL);         # UPDATE HIGHEST ADDRESS #
01069  M00S01009.acpd    +++|      DCHL=RDCHL;
01070  M00S01010.acpd    +++|      DCDL=RDCDL;
01071  M00S01011.acpd    +++|      IF (HGAD GR CRFL)              # EXCEED FIELD LENGTH #
01072  M00S01012.acpd    +++|      THEN
01073  M00S01013.acpd    +++|        BEGIN
01074  M00S01014.acpd    +++|        STT$RFL[0]=HGAD;
01075  M00S01015.acpd    +++|        MEMORY(CM,STT,RECALL,NA);    # REQUEST MEMORY #
01076  M00S01016.acpd    +++|        CRFL=STT$RFL[0];             # UPDATE CURRENT FIELD LENGTH #
01077  M00S01017.acpd    +++|        END
01078  M00S01018.acpd    +++|
01079  M00S01019.acpd    +++|#
Line S01020 Modification History
M01 (Removed by) ns2146
Seq #  *Modification Id* Act 
----------------------------+
01080  M01S01020.ns2146  ---|*     INITIALIZE DECODED BUFFER.
Line S00001 Modification History
M01 (Added by) ns2146
M02 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01081  M02S00001.v23l617 ---|*     INITIALIZE DECODED BUFFER, TOTAL BUFFER, AND *PMF* BUFFER.
Line S00052 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01082  M01S00052.v23l617 +++|*     INITIALIZE DECODED BUFFER AND TOTAL BUFFER.
01083  M00S01021.acpd    +++|#
01084  M00S01022.acpd    +++|
01085  M00S01023.acpd    +++|      P<DCDT>=LOC(DBUF[DCHL]);
01086  M00S01024.acpd    +++|      P<DDSM>=LOC(DBUF[DCHL + DCDC*DCDL*2]);
01087  M00S01025.acpd    +++|      FASTFOR I=0 STEP 1 UNTIL DCDC*DCDL*2 - 1
01088  M00S01026.acpd    +++|      DO
01089  M00S01027.acpd    +++|        BEGIN
01090  M00S01028.acpd    +++|        DCDT$WD[I]=0;
01091  M00S01029.acpd    +++|        END
01092  M00S01030.acpd    +++|
01093  M00S01031.acpd    +++|      FASTFOR I=0 STEP 1 UNTIL DCDL-1
01094  M00S01032.acpd    +++|      DO
01095  M00S01033.acpd    +++|        BEGIN
01096  M00S01034.acpd    +++|        DDSM$IM[I]=0;
01097  M00S01035.acpd    +++|        DDSM$IQ[I]=0;
01098  M00S01036.acpd    +++|        DDSM$AX[I]=0;
01099  M00S01037.acpd    +++|        DDSM$AN[I]=MXVC;
01100  M00S01038.acpd    +++|        DDSM$SX[I]=0;
01101  M00S01039.acpd    +++|        DDSM$SN[I]=MXVC;
01102  M00S01040.acpd    +++|        DDSM$PX[I]=0;
01103  M00S01041.acpd    +++|        DDSM$PN[I]=MXVC;
01104  M00S01042.acpd    +++|        END
Line S00002 Modification History
M01 (Added by) ns2146
M02 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01105  M02S00002.v23l617 ---|
01106  M02S00003.v23l617 ---|      FASTFOR I=0 STEP 1 UNTIL 3
01107  M02S00004.v23l617 ---|      DO
01108  M02S00005.v23l617 ---|        BEGIN  # INITIALIZE *PMF* BUFFER #
01109  M02S00006.v23l617 ---|        APMD$MX[I]=0;
01110  M02S00007.v23l617 ---|        APMD$MN[I]=101.0;
01111  M02S00008.v23l617 ---|        END  # INITIALIZE *PMF* BUFFER #
01112  M00S01043.acpd    +++|
01113  M00S01044.acpd    +++|#
01114  M00S01045.acpd    +++|*     CONSTRUCT THE MASS STORAGE DEVICE SUBBLOCK TITLE TABLE.
01115  M00S01046.acpd    +++|#
01116  M00S01047.acpd    +++|
01117  M00S01048.acpd    +++|      P<DDSC>=LOC(DDHD);
01118  M00S01049.acpd    +++|      P<EST>=LOC(DCHD$WD[DDSC$FW[ESTB]]);
01119  M00S01050.acpd    +++|      P<MSD>=LOC(SMGT[EQTN]);
01120  M00S01051.acpd    +++|      MSI=0;
01121  M00S01052.acpd    +++|
01122  M00S01053.acpd    +++|      SLOWFOR J=0 STEP 1 UNTIL DCHD$WD[DDSC$FW[ESTL]] - 1
01123  M00S01054.acpd    +++|      DO
01124  M00S01055.acpd    +++|        BEGIN  # SEARCH FOR MASS STORAGE DEVICE IN EST #
01125  M00S01056.acpd    +++|        IF (EST$MS[J])               # MASS STORAGE DEVICE #
01126  M00S01057.acpd    +++|        THEN
01127  M00S01058.acpd    +++|          BEGIN  # BUILD SUBBLOCK TITLE #
01128  M00S01059.acpd    +++|          MSD$EQ[MSI]="EQ ";
01129  M00S01060.acpd    +++|          MSD$OR[MSI]=BLKC;
01130  M00S01061.acpd    +++|          ORD=XCOD(J);               # CONVERT TO DISPLAY #
01131  M00S01062.acpd    +++|          N=0;
01132  M00S01063.acpd    +++|
01133  M00S01064.acpd    +++|          SLOWFOR I=9 STEP -1 WHILE (C<I,1>ORD NQ BLKC)
01134  M00S01065.acpd    +++|          DO                         # COUNT NUMBER OF DIGITS #
01135  M00S01066.acpd    +++|            BEGIN
01136  M00S01067.acpd    +++|            N=N+1;
01137  M00S01068.acpd    +++|            END
01138  M00S01069.acpd    +++|
01139  M00S01070.acpd    +++|          M=I+1;
01140  M00S01071.acpd    +++|          L=0;
01141  M00S01072.acpd    +++|
01142  M00S01073.acpd    +++|          SLOWFOR I=1 STEP 1 WHILE (I LQ N)
01143  M00S01074.acpd    +++|          DO                         # BUILD MST ORDINAL #
01144  M00S01075.acpd    +++|            BEGIN
01145  M00S01076.acpd    +++|            C<L,1>MSD$OR[MSI]=C<M,1>ORD;
01146  M00S01077.acpd    +++|            L=L+1;
01147  M00S01078.acpd    +++|            M=M+1;
01148  M00S01079.acpd    +++|            END
01149  M00S01080.acpd    +++|
01150  M00S01081.acpd    +++|          MSI=MSI+1;
01151  M00S01082.acpd    +++|          END  # BUILD SUBBLOCK TITLE #
01152  M00S01083.acpd    +++|
01153  M00S01084.acpd    +++|        END  # SEARCH FOR MASS STORAGE DEVICE IN EST #
01154  M00S01085.acpd    +++|
01155  M00S01086.acpd    +++|      MSD$WD[MSI]=0;                 # END OF TABLE #
01156  M00S01087.acpd    +++|
01157  M00S01088.acpd    +++|      RETURN;
01158  M00S01089.acpd    +++|      END  # ADJUST #
01159  M00S01090.acpd    +++|
01160  M00S01091.acpd    +++|      TERM
01161  M00S01092.acpd    +++|PROC CHKSPA((SPC),WFT,PRFLG);
01162  M00S01093.acpd    +++|# TITLE CHKSPA - CHECK SPECIAL ACTION.  #
01163  M00S01094.acpd    +++|
01164  M00S01095.acpd    +++|      BEGIN  # CHKSPA #
01165  M00S01096.acpd    +++|
01166  M00S01097.acpd    +++|#
01167  M00S01098.acpd    +++|**    CHKSPA - CHECK SPECIAL ACTION.
01168  M00S01099.acpd    +++|*
01169  M00S01100.acpd    +++|*     *CHKSPA* PERFORMS TASKS THAT CANNOT BE TABLE DRIVEN.
01170  M00S01101.acpd    +++|*     CURRENTLY THESE ACTIONS INCLUDE COMPUTING AVAILABLE
Line S01102 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01171  M01S01102.v23l617 ---|*     MEMORY, THE ADVANCED PROCESSOR MODELS CHECKING,
01172  M01S01103.v23l617 ---|*     AND BUFFERED I/O CHECKING.
Line S00053 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01173  M01S00053.v23l617 +++|*     MEMORY AND BUFFERED I/O CHECKING.
01174  M00S01104.acpd    +++|*
01175  M00S01105.acpd    +++|*     PROC CHKSPA((SPC),WFT,PRFLG)
01176  M00S01106.acpd    +++|*
01177  M00S01107.acpd    +++|*     ENTRY      SPC   = SPECIAL ACTION CODE.
01178  M00S01108.acpd    +++|*
01179  M00S01109.acpd    +++|*     EXIT       WFT   = WEIGHT FACTOR.
01180  M00S01110.acpd    +++|*                PRFLG = FLAG INDICATES IF ELEMENT IS TO BE PROCESSED.
01181  M00S01111.acpd    +++|#
01182  M00S01112.acpd    +++|
01183  M00S01113.acpd    +++|#
01184  M00S01114.acpd    +++|*     PARAMETER LIST.
01185  M00S01115.acpd    +++|#
01186  M00S01116.acpd    +++|      ITEM SPC        I;             # SPECIAL ACTION CODE #
01187  M00S01117.acpd    +++|      ITEM WFT        R;             # WEIGHT FACTOR #
01188  M00S01118.acpd    +++|      ITEM PRFLG      B;             # PROCESS FLAG #
01189  M00S01119.acpd    +++|
01190  M00S01120.acpd    +++|#
01191  M00S01121.acpd    +++|****  PROC CHKSPA - XREF LIST BEGIN.
01192  M00S01122.acpd    +++|#
01193  M00S01123.acpd    +++|
01194  M00S01124.acpd    +++|      XREF
01195  M00S01125.acpd    +++|        BEGIN
01196  M00S01126.acpd    +++|        PROC WRITEV;                 # WRITE DATA VALUE #
01197  M00S01127.acpd    +++|        END
01198  M00S01128.acpd    +++|
01199  M00S01129.acpd    +++|#
01200  M00S01130.acpd    +++|****  PROC CHKSPA - XREF LIST END.
01201  M00S01131.acpd    +++|#
01202  M00S01132.acpd    +++|
01203  M00S01133.acpd    +++|      DEF NPCC       #-1.0#;         # NO PERCENTAGE FLAG #
01204  M00S01134.acpd    +++|
01205  M00S01135.acpd    +++|      DEF LISTCON    #0#;            # TURN OFF COMMON LISTING #
01206  M00S01136.acpd    +++|
01207  M00S01137.acpd    +++|*CALL     COMUCPD
01208  M00S01138.acpd    +++|
01209  M00S01139.acpd    +++|#
01210  M00S01140.acpd    +++|*     LOCAL VARIABLES.
01211  M00S01141.acpd    +++|#
01212  M00S01142.acpd    +++|
01213  M00S01143.acpd    +++|      ITEM TEM        I;             # TEMPORARY STORAGE #
01214  M00S01144.acpd    +++|
01215  M00S01145.acpd    +++|      SWITCH SPAT
01216  M00S01146.acpd    +++|             AVMS,                   # AVAILABLE MEMORY #
Line S01147 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01217  M01S01147.v23l617 ---|             AP1S,                   # ADVANCED PROCESSOR #
01218  M01S01148.v23l617 ---|             AP2S,                   # ADVANCED PROCESSOR #
01219  M00S01149.acpd    +++|             BIOS,                   # BUFFERED I/O #
01220  M00S01150.acpd    +++|             ;                       # END OF SPAT #
01221  M00S01151.acpd    +++|
01222  M00S01152.acpd    +++|
01223  M00S01153.acpd    +++|
01224  M00S01154.acpd    +++|
01225  M00S01155.acpd    +++|
01226  M00S01156.acpd    +++|
01227  M00S01157.acpd    +++|#
01228  M00S01158.acpd    +++|*     BEGIN CHKSPA PROC.
01229  M00S01159.acpd    +++|#
01230  M00S01160.acpd    +++|
01231  M00S01161.acpd    +++|      P<DCHD>=LOC(DBUF);
01232  M00S01162.acpd    +++|      P<DDSC>=LOC(DDHD);
01233  M00S01163.acpd    +++|      PRFLG=FALSE;
01234  M00S01164.acpd    +++|
01235  M00S01165.acpd    +++|      GOTO SPAT[SPC];
01236  M00S01166.acpd    +++|
01237  M00S01167.acpd    +++|AVMS:                                # AVAILABLE MEMORY #
01238  M00S01168.acpd    +++|
01239  M00S01169.acpd    +++|      WFT=DCHD$WD[DDSC$FW[MEMS]]-DCHD$WD[DDSC$FW[CMRS]];
01240  M00S01170.acpd    +++|      PRFLG=TRUE;
01241  M00S01171.acpd    +++|      RETURN;
01242  M00S01172.acpd    +++|
Line S01173 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01243  M01S01173.v23l617 ---|AP1S:                                # ADVANCE PROCESSOR 1 #
01244  M01S01174.v23l617 ---|
01245  M01S01175.v23l617 ---|      TEM=DCHD$WD[DDSC$FW[APMF]]/2;
01246  M01S01176.v23l617 ---|      IF (TEM EQ 2) OR (TEM EQ 3)
01247  M01S01177.v23l617 ---|      THEN
01248  M01S01178.v23l617 ---|        BEGIN
01249  M01S01179.v23l617 ---|        WFT=NPCC;                    # NO PERCENTAGE #
01250  M01S01180.v23l617 ---|        PRFLG=TRUE;
01251  M01S01181.v23l617 ---|        END
01252  M01S01182.v23l617 ---|
01253  M01S01183.v23l617 ---|      RETURN;
01254  M01S01184.v23l617 ---|
01255  M01S01185.v23l617 ---|AP2S:                                # ADVANCE PROCESSOR 2 #
01256  M01S01186.v23l617 ---|
01257  M01S01187.v23l617 ---|      TEM=DCHD$WD[DDSC$FW[APMF]]/2;
01258  M01S01188.v23l617 ---|      IF (TEM NQ 0)
01259  M01S01189.v23l617 ---|      THEN
01260  M01S01190.v23l617 ---|        BEGIN
01261  M01S01191.v23l617 ---|        WFT=NPCC;                    # NO PERCENTAGE #
01262  M01S01192.v23l617 ---|        PRFLG=TRUE;
01263  M01S01193.v23l617 ---|        END
01264  M01S01194.v23l617 ---|
01265  M01S01195.v23l617 ---|      RETURN;
01266  M00S01196.acpd    +++|BIOS:                                # BUFFERED I/O PARAMETERS #
01267  M00S01197.acpd    +++|      WFT=DCHD$WD[DDSC$FW[TIOB]];
01268  M00S01198.acpd    +++|      IF (WFT NQ 0)                  # SYSTEM HAS BUFFERED I/O #
01269  M00S01199.acpd    +++|      THEN
01270  M00S01200.acpd    +++|        BEGIN
01271  M00S01201.acpd    +++|        PRFLG=TRUE;
01272  M00S01202.acpd    +++|        END
01273  M00S01203.acpd    +++|
01274  M00S01204.acpd    +++|      RETURN;
01275  M00S01205.acpd    +++|
01276  M00S01206.acpd    +++|#
01277  M00S01207.acpd    +++|*     END CASE.
01278  M00S01208.acpd    +++|#
01279  M00S01209.acpd    +++|
01280  M00S01210.acpd    +++|      END  # CHKSPA #
Line S01211 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01281  M01S01211.v23l617 ---|
01282  M01S01212.v23l617 ---|      TERM
01283  M01S01213.v23l617 ---|PROC COMMTE((TPT),(POS));
01284  M01S01214.v23l617 ---|# TITLE COMMTE - COMPUTE *PMF* MEAN TIME IN EXECUTIVE STATE.  #
01285  M01S01215.v23l617 ---|
01286  M01S01216.v23l617 ---|      BEGIN  # COMMTE #
01287  M01S01217.v23l617 ---|
01288  M01S01218.v23l617 ---|#
01289  M01S01219.v23l617 ---|**    COMMTE - COMPUTE *PMF* MEAN TIME IN EXECUTIVE STATE.
01290  M01S01220.v23l617 ---|*
01291  M01S01221.v23l617 ---|*     COMMTE CALCULATES MEAN TIME IN EXECUTIVE STATE FOR *PMF*
01292  M01S01222.v23l617 ---|*     HARDWARE.
01293  M01S01223.v23l617 ---|*
01294  M01S01224.v23l617 ---|*     PROC COMMTE((TPT),(POS))
01295  M01S01225.v23l617 ---|*
01296  M01S01226.v23l617 ---|*     ENTRY      TPT = TITLE POINTER.
01297  M01S01227.v23l617 ---|*                POS = POSITION IN *APMD* ARRAY.
01298  M01S01228.v23l617 ---|*
01299  M01S01229.v23l617 ---|*     EXIT       INTERVAL, SUBTOTAL, AND TOTAL MEAN TIME IN
01300  M01S01230.v23l617 ---|*                EXECUTIVE STATE ARE COMPUTED.
01301  M01S01231.v23l617 ---|#
01302  M01S01232.v23l617 ---|
01303  M01S01233.v23l617 ---|#
01304  M01S01234.v23l617 ---|*     PARAMETER LIST.
01305  M01S01235.v23l617 ---|#
01306  M01S01236.v23l617 ---|
01307  M01S01237.v23l617 ---|      ITEM TPT        I;             # REPORT TITLE POINTER #
01308  M01S01238.v23l617 ---|      ITEM POS        I;             # POSITION IN *APMD* ARRAY #
01309  M01S01239.v23l617 ---|
01310  M01S01240.v23l617 ---|#
01311  M01S01241.v23l617 ---|****  PROC COMMTE - XREF LIST BEGIN.
01312  M01S01242.v23l617 ---|#
01313  M01S01243.v23l617 ---|
01314  M01S01244.v23l617 ---|      XREF
01315  M01S01245.v23l617 ---|        BEGIN
01316  M01S01246.v23l617 ---|        PROC GETMSG;                 # GET MESSAGE IN TABLE *DSTX* #
01317  M01S01247.v23l617 ---|        PROC PRDTEL;                 # PRINT ONE ROW OF DATA ELEMENTS #
01318  M01S01248.v23l617 ---|        PROC WRITEV;                 # WRITE VALUE #
01319  M01S01249.v23l617 ---|        END
01320  M01S01250.v23l617 ---|
01321  M01S01251.v23l617 ---|#
01322  M01S01252.v23l617 ---|****  PROC COMMTE - XREF LIST END.
01323  M01S01253.v23l617 ---|#
01324  M01S01254.v23l617 ---|
01325  M01S01255.v23l617 ---|
01326  M01S01256.v23l617 ---|      DEF LISTCON    #0#;            # TURN OFF COMMON DECK LISTING #
01327  M01S01257.v23l617 ---|
01328  M01S01258.v23l617 ---|*CALL     COMUCPD
01329  M01S01259.v23l617 ---|
01330  M01S01260.v23l617 ---|#
01331  M01S01261.v23l617 ---|*     LOCAL VARIABLES.
01332  M01S01262.v23l617 ---|#
01333  M01S01263.v23l617 ---|
01334  M01S01264.v23l617 ---|      ITEM CL         I;             # PRINT COLUMN #
01335  M01S01265.v23l617 ---|      ITEM I          I;             # FOR LOOP CONTROL #
01336  M01S01266.v23l617 ---|      ITEM MSG        C(50);         # REPORT TITLE #
01337  M01S01267.v23l617 ---|      ITEM SAM        R;             # SUBTOTAL OF *PMA1* #
01338  M01S01268.v23l617 ---|      ITEM SBM        R;             # SUBTOTAL OF *PMB1* #
01339  M01S01269.v23l617 ---|      ITEM SUM        R;             # TEMPORARY VALUE #
01340  M01S01270.v23l617 ---|      ITEM VAL        R;             # TEMPORARY VALUE #
01341  M01S01271.v23l617 ---|
01342  M01S01272.v23l617 ---|      ARRAY TEM [1:11] P(1);         # TEMPORARY STORAGE #
01343  M01S01273.v23l617 ---|        BEGIN  # ARRAY TEM #
01344  M01S01274.v23l617 ---|        ITEM TEM$VL     R(00,00,60);  # INTERVAL MEAN TIME #
01345  M01S01275.v23l617 ---|        END  # ARRAY TEM #
01346  M01S01276.v23l617 ---|
01347  M01S01277.v23l617 ---|
01348  M01S01278.v23l617 ---|
01349  M01S01279.v23l617 ---|
01350  M01S01280.v23l617 ---|
01351  M01S01281.v23l617 ---|#
01352  M01S01282.v23l617 ---|*     BEGIN COMMTE PROC.
01353  M01S01283.v23l617 ---|#
01354  M01S01284.v23l617 ---|
01355  M01S01285.v23l617 ---|      P<DCDT>=LOC(DBUF[DCHL]);
01356  M01S01286.v23l617 ---|      P<DDSC>=LOC(DDDT);
01357  M01S01287.v23l617 ---|      P<DDSM>=LOC(DBUF[DCHL + DCDC*DCDL*2]);
01358  M01S01288.v23l617 ---|
01359  M01S01289.v23l617 ---|#
01360  M01S01290.v23l617 ---|*     COMPUTE INTERVAL MEAN TIME IN EXECUTIVE STATE.
01361  M01S01291.v23l617 ---|#
01362  M01S01292.v23l617 ---|
01363  M01S01293.v23l617 ---|      SAM=0.0;
01364  M01S01294.v23l617 ---|      SBM=0.0;
01365  M01S01295.v23l617 ---|      SUM=0.0;
01366  M01S01296.v23l617 ---|
01367  M01S01297.v23l617 ---|      SLOWFOR I=1 STEP 1 UNTIL NIPP
01368  M01S01298.v23l617 ---|      DO
01369  M01S01299.v23l617 ---|        BEGIN
01370  M01S01300.v23l617 ---|        TEM$VL[I]=DCDT$SM[DDSC$FW[PMB1]]/DCDT$SM[DDSC$FW[PMA1]];
01371  M01S01301.v23l617 ---|        SAM=SAM + DCDT$SM[DDSC$FW[PMA1]];
01372  M01S01302.v23l617 ---|        SBM=SBM + DCDT$SM[DDSC$FW[PMB1]];
01373  M01S01303.v23l617 ---|        SUM=SUM + TEM$VL[I];
01374  M01S01304.v23l617 ---|        END
01375  M01S01305.v23l617 ---|
01376  M01S01306.v23l617 ---|      TEM$VL[NIPP+1]=SBM/SAM;        # SUBTOTAL MEAN TIME #
01377  M01S01307.v23l617 ---|      VAL=DDSM$SM[DDSC$FW[PMB1]]/DDSM$SM[DDSC$FW[PMA1]];
01378  M01S01308.v23l617 ---|
01379  M01S01309.v23l617 ---|#
01380  M01S01310.v23l617 ---|*     PRINT INTERVAL MEAN TIME VALUES. THE TOTAL MEAN TIME VALUE
01381  M01S01311.v23l617 ---|*     IS PRINTED IF LESS THAN 7 COLUMNS ARE PRINTED ON A PAGE.
01382  M01S01312.v23l617 ---|*     THE SUBTOTAL MEAN TIME VALUE (COLUMN 11) IS NOT PRINTED IF
01383  M01S01313.v23l617 ---|*     THE SUBTOTAL AND THE TOTAL VALUES ARE THE SAME, I.E. IF THE
01384  M01S01314.v23l617 ---|*     TOTAL COLUMNS PRINTED *TCOL* VALUE IS LESS THAN 7 COLUMNS.
01385  M01S01315.v23l617 ---|#
01386  M01S01316.v23l617 ---|
01387  M01S01317.v23l617 ---|      IF (SUM NQ 0.0)                # THE LINE IS NON ZERO #
01388  M01S01318.v23l617 ---|        OR (VAL NQ 0.0)              # TOTAL IS NOT ZERO #
01389  M01S01319.v23l617 ---|        OR (P$LO EQ "Z")             # *Z* OPTION SPECIFIED #
01390  M01S01320.v23l617 ---|      THEN
01391  M01S01321.v23l617 ---|        BEGIN
01392  M01S01322.v23l617 ---|        GETMSG(TPT,MSG);
01393  M01S01323.v23l617 ---|        WRITEV(MSG,CHRC,1,22,NLFC);
01394  M01S01324.v23l617 ---|        PRDTEL(LOC(TEM),FLPC,LOC(APMD[POS]));
01395  M01S01325.v23l617 ---|
01396  M01S01326.v23l617 ---|        IF (NIPP LQ (DCDC-3))        # ENOUGH SPACE FOR TOTAL #
01397  M01S01327.v23l617 ---|        THEN
01398  M01S01328.v23l617 ---|          BEGIN
01399  M01S01329.v23l617 ---|          CL=BCLC;
01400  M01S01330.v23l617 ---|          IF (TCOL GR (DCDC-3))      # PRINT SUBTOTAL #
01401  M01S01331.v23l617 ---|          THEN
01402  M01S01332.v23l617 ---|            BEGIN
01403  M01S01333.v23l617 ---|            CL=(NIPP+1)*10 + CL;
01404  M01S01334.v23l617 ---|            END
01405  M01S01335.v23l617 ---|
01406  M01S01336.v23l617 ---|          ELSE
01407  M01S01337.v23l617 ---|            BEGIN
01408  M01S01338.v23l617 ---|            CL=NIPP*10 + CL;
01409  M01S01339.v23l617 ---|            END
01410  M01S01340.v23l617 ---|
01411  M01S01341.v23l617 ---|          WRITEV(VAL,FLPC,CL+1,9,NLFC);  # PRINT TOTAL #
01412  M01S01342.v23l617 ---|          WRITEV(APMD$MX[POS],FLPC,CL+10,10,NLFC);  # PRINT MAXIMUM #
01413  M01S01343.v23l617 ---|          WRITEV(APMD$MN[POS],FLPC,CL+20,10,LFDC);  # PRINT MINIMUM #
01414  M01S01344.v23l617 ---|
01415  M01S01345.v23l617 ---|          END
01416  M01S01346.v23l617 ---|
01417  M01S01347.v23l617 ---|        END
01418  M01S01348.v23l617 ---|
01419  M01S01349.v23l617 ---|      RETURN;
01420  M01S01350.v23l617 ---|      END  # COMMTE #
01421  M01S01351.v23l617 ---|
01422  M01S01352.v23l617 ---|      TERM
01423  M01S01353.v23l617 ---|PROC COMPUT((APM),(PCM),(CRH),(CRM),(CMR),VAL);
01424  M01S01354.v23l617 ---|# TITLE COMPUT - COMPUTE HIT RATE FOR *PMF* HARDWARE.  #
01425  M01S01355.v23l617 ---|
01426  M01S01356.v23l617 ---|      BEGIN  # COMPUT #
01427  M01S01357.v23l617 ---|
01428  M01S01358.v23l617 ---|#
01429  M01S01359.v23l617 ---|**    COMPUT - COMPUTE HIT RATE FOR *PMF* HARDWARE.
01430  M01S01360.v23l617 ---|*
01431  M01S01361.v23l617 ---|*     COMPUTE THE CACHE AND MAP HIT RATES FOR *PMF* HARDWARE.
01432  M01S01362.v23l617 ---|*
01433  M01S01363.v23l617 ---|*     PROC COMPUT((APM),(PCM),(CRH),(CRM),(CMR),VAL)
01434  M01S01364.v23l617 ---|*
01435  M01S01365.v23l617 ---|*     ENTRY      APM = ADVANCED PROCESSOR MODULE.
01436  M01S01366.v23l617 ---|*                PCM = MEMORY TYPE.
01437  M01S01367.v23l617 ---|*                CRH = CACHE READ HIT.
01438  M01S01368.v23l617 ---|*                CRM = CACHE READ MISS.
01439  M01S01369.v23l617 ---|*                CMR = *CM* READ FOR PAGE OR SEGMENT TABLE.
01440  M01S01370.v23l617 ---|*
01441  M01S01371.v23l617 ---|*     EXIT       VAL = COMPUTED HIT RATE.
01442  M01S01372.v23l617 ---|#
01443  M01S01373.v23l617 ---|
01444  M01S01374.v23l617 ---|#
01445  M01S01375.v23l617 ---|*     PARAMETER LIST.
01446  M01S01376.v23l617 ---|#
01447  M01S01377.v23l617 ---|
01448  M01S01378.v23l617 ---|      ITEM APM        I;             # ADVANCED PROCESSOR MODEL #
01449  M01S01379.v23l617 ---|      ITEM PCM        I;             # MEMORY TYPE #
01450  M01S01380.v23l617 ---|      ITEM CRH        R;             # CACHE READ HIT #
01451  M01S01381.v23l617 ---|      ITEM CRM        R;             # CACHE READ MISS #
01452  M01S01382.v23l617 ---|      ITEM CMR        R;             # *CM* READ #
01453  M01S01383.v23l617 ---|      ITEM VAL        R;             # COMPUTED HIT RATE #
01454  M01S01384.v23l617 ---|
01455  M01S01385.v23l617 ---|      DEF LISTCON    #0#;            # TURN OFF COMMON DECK LISTING #
01456  M01S01386.v23l617 ---|
01457  M01S01387.v23l617 ---|*CALL     COMUCPD
01458  M01S01388.v23l617 ---|
01459  M01S01389.v23l617 ---|#
01460  M01S01390.v23l617 ---|*     LOCAL VARIABLES.
01461  M01S01391.v23l617 ---|#
01462  M01S01392.v23l617 ---|
01463  M01S01393.v23l617 ---|      ITEM CRT        R;             # TOTAL CACHE READ #
01464  M01S01394.v23l617 ---|
01465  M01S01395.v23l617 ---|
01466  M01S01396.v23l617 ---|
01467  M01S01397.v23l617 ---|
01468  M01S01398.v23l617 ---|
01469  M01S01399.v23l617 ---|
01470  M01S01400.v23l617 ---|#
01471  M01S01401.v23l617 ---|*     BEGIN COMPUT PROC.
01472  M01S01402.v23l617 ---|#
01473  M01S01403.v23l617 ---|
01474  M01S01404.v23l617 ---|      CRT=CRH + CRM;
01475  M01S01405.v23l617 ---|
01476  M01S01406.v23l617 ---|      IF (APM EQ 2)
01477  M01S01407.v23l617 ---|      THEN
01478  M01S01408.v23l617 ---|        BEGIN  # COMPUTE RATIO #
01479  M01S01409.v23l617 ---|        IF (CRT NQ 0)
01480  M01S01410.v23l617 ---|        THEN
01481  M01S01411.v23l617 ---|          BEGIN
01482  M01S01412.v23l617 ---|          IF (PCM EQ CACHE)
01483  M01S01413.v23l617 ---|          THEN
01484  M01S01414.v23l617 ---|            BEGIN
01485  M01S01415.v23l617 ---|            VAL=100.0*(CRH/CRT);
01486  M01S01416.v23l617 ---|            END
01487  M01S01417.v23l617 ---|
01488  M01S01418.v23l617 ---|          ELSE                       # SEGMENT OR PAGE READ #
01489  M01S01419.v23l617 ---|            BEGIN
01490  M01S01420.v23l617 ---|            VAL=100.0*(1 - (CMR/CRT));
01491  M01S01421.v23l617 ---|            END
01492  M01S01422.v23l617 ---|
01493  M01S01423.v23l617 ---|          END
01494  M01S01424.v23l617 ---|
01495  M01S01425.v23l617 ---|        ELSE                         # CACHE READ TOTAL IS ZERO #
01496  M01S01426.v23l617 ---|          BEGIN
01497  M01S01427.v23l617 ---|          VAL=0.0;
01498  M01S01428.v23l617 ---|          END
01499  M01S01429.v23l617 ---|
01500  M01S01430.v23l617 ---|        END  # COMPUTE RATIO #
01501  M01S01431.v23l617 ---|
01502  M01S01432.v23l617 ---|      ELSE                           # *APM* IS 1 OR 3 #
01503  M01S01433.v23l617 ---|        BEGIN  # COMPUTE RATIO #
01504  M01S01434.v23l617 ---|        IF (CRH NQ 0)
01505  M01S01435.v23l617 ---|        THEN
01506  M01S01436.v23l617 ---|          BEGIN
01507  M01S01437.v23l617 ---|          IF (PCM EQ CACHE)
01508  M01S01438.v23l617 ---|          THEN
01509  M01S01439.v23l617 ---|            BEGIN
01510  M01S01440.v23l617 ---|            VAL=100.0*(CRH-CRM)/CRH;
01511  M01S01441.v23l617 ---|            END
01512  M01S01442.v23l617 ---|
01513  M01S01443.v23l617 ---|          ELSE                       # SEGMENT OR PAGE READ #
01514  M01S01444.v23l617 ---|            BEGIN
01515  M01S01445.v23l617 ---|            VAL=100.0*(1 - (CMR/CRH));
01516  M01S01446.v23l617 ---|            END
01517  M01S01447.v23l617 ---|
01518  M01S01448.v23l617 ---|          END
01519  M01S01449.v23l617 ---|
01520  M01S01450.v23l617 ---|        ELSE                         # CACHE READ HIT IS ZERO #
01521  M01S01451.v23l617 ---|          BEGIN
01522  M01S01452.v23l617 ---|          VAL=0.0;
01523  M01S01453.v23l617 ---|          END
01524  M01S01454.v23l617 ---|
01525  M01S01455.v23l617 ---|        END  # COMPUTE RATIO #
01526  M01S01456.v23l617 ---|
01527  M01S01457.v23l617 ---|      RETURN;
01528  M01S01458.v23l617 ---|      END  # COMPUT #
01529  M00S01459.acpd    +++|
01530  M00S01460.acpd    +++|      TERM
01531  M00S01461.acpd    +++|PROC COMPWF((WFA),(WFP),(POS),WFT,PRFLG);
01532  M00S01462.acpd    +++|# TITLE COMPWF - COMPUTE WEIGHT FACTOR.  #
01533  M00S01463.acpd    +++|
01534  M00S01464.acpd    +++|      BEGIN  # COMPWF #
01535  M00S01465.acpd    +++|
01536  M00S01466.acpd    +++|#
01537  M00S01467.acpd    +++|**    COMPWF - COMPUTE WEIGHT FACTOR.
01538  M00S01468.acpd    +++|*
01539  M00S01469.acpd    +++|*     COMPUTE WEIGHT FACTOR FOR PERCENTAGE CALCULATION.
01540  M00S01470.acpd    +++|*
01541  M00S01471.acpd    +++|*     PROC COMPWF((WFA),(WFP),(POS),WFT,PRFLG)
01542  M00S01472.acpd    +++|*
01543  M00S01473.acpd    +++|*     ENTRY      WFA = WEIGHT FACTOR INFORMATION.
01544  M00S01474.acpd    +++|*                WFP = WEIGHT FACTOR.
01545  M00S01475.acpd    +++|*                POS = RELATIVE POSITION OF THE WEIGHT FACTOR.
01546  M00S01476.acpd    +++|*
01547  M00S01477.acpd    +++|*     EXIT       WFT = COMPUTED WEIGHT FACTOR.
01548  M00S01478.acpd    +++|*                      WFT=-1.0 IF PERCENTAGE NOT TO BE PRINTED.
01549  M00S01479.acpd    +++|*                PRFLG = PROCESS FLAG.
01550  M00S01480.acpd    +++|#
01551  M00S01481.acpd    +++|
01552  M00S01482.acpd    +++|#
01553  M00S01483.acpd    +++|*     PARAMETER LIST.
01554  M00S01484.acpd    +++|#
01555  M00S01485.acpd    +++|
01556  M00S01486.acpd    +++|      ITEM WFA        U;             # WEIGHT FACTOR INFORMATION #
01557  M00S01487.acpd    +++|      ITEM WFP        U;             # WEIGHT FACTOR #
01558  M00S01488.acpd    +++|      ITEM POS        I;             # RELATIVE POSITION OF *WFP* #
01559  M00S01489.acpd    +++|      ITEM WFT        R;             # COMPUTED WEIGHT FACTOR #
01560  M00S01490.acpd    +++|      ITEM PRFLG      B;             # PROCESS FLAG #
01561  M00S01491.acpd    +++|
01562  M00S01492.acpd    +++|#
01563  M00S01493.acpd    +++|****  PROC COMPWF - XREF LIST BEGIN.
01564  M00S01494.acpd    +++|#
01565  M00S01495.acpd    +++|
01566  M00S01496.acpd    +++|      XREF
01567  M00S01497.acpd    +++|        BEGIN
01568  M00S01498.acpd    +++|        PROC CHKSPA;                 # CHECK SPECIAL ACTION #
01569  M00S01499.acpd    +++|        END
01570  M00S01500.acpd    +++|
01571  M00S01501.acpd    +++|#
01572  M00S01502.acpd    +++|****  PROC COMPWF - XREF LIST END.
01573  M00S01503.acpd    +++|#
01574  M00S01504.acpd    +++|
01575  M00S01505.acpd    +++|      DEF NPCC       #-1.0#;         # NO PERCENTAGE FLAG #
01576  M00S01506.acpd    +++|
01577  M00S01507.acpd    +++|      DEF LISTCON    #0#;            # TURN OFF COMMON DECK LISTING #
01578  M00S01508.acpd    +++|
01579  M00S01509.acpd    +++|*CALL     COMUCPD
01580  M00S01510.acpd    +++|
01581  M00S01511.acpd    +++|#
01582  M00S01512.acpd    +++|*     LOCAL VARIABLES.
01583  M00S01513.acpd    +++|#
01584  M00S01514.acpd    +++|
01585  M00S01515.acpd    +++|
01586  M00S01516.acpd    +++|      SWITCH WFAT
01587  M00S01517.acpd    +++|             WGFS,                   # WEIGHT FACTOR SPECIFIED #
01588  M00S01518.acpd    +++|             NWFS,                   # NO WEIGHT FACTOR #
01589  M00S01519.acpd    +++|             CWFS,                   # CONSTANT WEIGHT FACTOR #
01590  M00S01520.acpd    +++|             SPAS,                   # SPECIAL ACTION #
01591  M00S01521.acpd    +++|             IWFS,                   # INDIRECT WEIGHT FACTOR #
01592  M00S01522.acpd    +++|             ;                       # END OF WFAT #
01593  M00S01523.acpd    +++|
01594  M00S01524.acpd    +++|
01595  M00S01525.acpd    +++|
01596  M00S01526.acpd    +++|
01597  M00S01527.acpd    +++|
01598  M00S01528.acpd    +++|#
01599  M00S01529.acpd    +++|*     BEGIN COMPWF PROC.
01600  M00S01530.acpd    +++|#
01601  M00S01531.acpd    +++|
01602  M00S01532.acpd    +++|      P<DCHD>=LOC(DBUF);
01603  M00S01533.acpd    +++|      P<DDSC>=LOC(DDHD);
01604  M00S01534.acpd    +++|      PRFLG=TRUE;
01605  M00S01535.acpd    +++|      GOTO WFAT[WFA];
01606  M00S01536.acpd    +++|
01607  M00S01537.acpd    +++|WGFS:                                # WEIGHT FACTOR SPECIFIED #
01608  M00S01538.acpd    +++|      WFT=DCHD$WD[DDSC$FW[WFP] + POS];
01609  M00S01539.acpd    +++|      RETURN;
01610  M00S01540.acpd    +++|
01611  M00S01541.acpd    +++|NWFS:                                # NO WEIGHT FACTOR #
01612  M00S01542.acpd    +++|      WFT=NPCC;
01613  M00S01543.acpd    +++|      RETURN;
01614  M00S01544.acpd    +++|
01615  M00S01545.acpd    +++|CWFS:                                # CONSTANT WEIGHT FACTOR #
01616  M00S01546.acpd    +++|      WFT=WFP;
01617  M00S01547.acpd    +++|      IF (WFP EQ 100)                # CONSTANT FACTOR IS 100 #
01618  M00S01548.acpd    +++|      THEN                           # NO PERCENTAGE #
01619  M00S01549.acpd    +++|        BEGIN
01620  M00S01550.acpd    +++|        WFT=NPCC;
01621  M00S01551.acpd    +++|        END
01622  M00S01552.acpd    +++|
01623  M00S01553.acpd    +++|      RETURN;
01624  M00S01554.acpd    +++|
01625  M00S01555.acpd    +++|SPAS:                                # SPECIAL ACTION #
01626  M00S01556.acpd    +++|
01627  M00S01557.acpd    +++|      CHKSPA(WFP,WFT,PRFLG);
01628  M00S01558.acpd    +++|      RETURN;
01629  M00S01559.acpd    +++|
01630  M00S01560.acpd    +++|IWFS:                                # INDIRECT WEIGHT FACTOR #
01631  M00S01561.acpd    +++|      WFT=0.0;                       # TO BE COMPUTED #
01632  M00S01562.acpd    +++|      RETURN;
01633  M00S01563.acpd    +++|
01634  M00S01564.acpd    +++|#
01635  M00S01565.acpd    +++|*     END CASE.
01636  M00S01566.acpd    +++|#
01637  M00S01567.acpd    +++|
01638  M00S01568.acpd    +++|      END  # COMPWF #
01639  M00S01569.acpd    +++|
01640  M00S01570.acpd    +++|      TERM
Line S01571 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01641  M01S01571.v23l617 ---|PROC COMRAT((APM),(PCM),(TPT),(POS));
01642  M01S01572.v23l617 ---|# TITLE COMRAT - COMPUTE AND PRINT HIT RATES FOR *PMF* HARDWARE.  #
01643  M01S01573.v23l617 ---|
01644  M01S01574.v23l617 ---|      BEGIN  # COMRAT #
01645  M01S01575.v23l617 ---|
01646  M01S01576.v23l617 ---|#
01647  M01S01577.v23l617 ---|**    COMRAT - COMPUTE AND PRINT HIT RATES FOR *PMF* HARDWARE.
01648  M01S01578.v23l617 ---|*
01649  M01S01579.v23l617 ---|*     *COMRAT* COMPUTES INTERVAL, SUBTOTAL, AND TOTAL HIT RATES
01650  M01S01580.v23l617 ---|*     FOR THE *PMF* HARDWARE.
01651  M01S01581.v23l617 ---|*
01652  M01S01582.v23l617 ---|*     PROC COMRAT((APM),(PCM),(TPT),(POS))
01653  M01S01583.v23l617 ---|*
01654  M01S01584.v23l617 ---|*     ENTRY      APM = ADVANCED PROCESSOR MODULE.
01655  M01S01585.v23l617 ---|*                PCM = MEMORY TYPE.
01656  M01S01586.v23l617 ---|*                TPT = REPORT TITLE POINTER.
01657  M01S01587.v23l617 ---|*                POS = RELATIVE POSITION IN *APMD* TABLE.
01658  M01S01588.v23l617 ---|*
01659  M01S01589.v23l617 ---|*     EXIT       THE HIT RATES FOR INTERVAL, SUBTOTAL, AND TOTAL
01660  M01S01590.v23l617 ---|*                ARE COMPUTED AND PRINTED.
01661  M01S01591.v23l617 ---|#
01662  M01S01592.v23l617 ---|
01663  M01S01593.v23l617 ---|#
01664  M01S01594.v23l617 ---|*     PARAMETER LIST.
01665  M01S01595.v23l617 ---|#
01666  M01S01596.v23l617 ---|
01667  M01S01597.v23l617 ---|      ITEM APM        I;             # ADVANCED PROCESSOR MODULE #
01668  M01S01598.v23l617 ---|      ITEM PCM        I;             # MEMORY TYPE #
01669  M01S01599.v23l617 ---|      ITEM TPT        I;             # REPORT TITLE POINTER #
01670  M01S01600.v23l617 ---|      ITEM POS        I;             # POSITION IN *APMD* TABLE #
01671  M01S01601.v23l617 ---|
01672  M01S01602.v23l617 ---|#
01673  M01S01603.v23l617 ---|****  PROC COMRAT - XREF LIST BEGIN.
01674  M01S01604.v23l617 ---|#
01675  M01S01605.v23l617 ---|
01676  M01S01606.v23l617 ---|      XREF
01677  M01S01607.v23l617 ---|        BEGIN
01678  M01S01608.v23l617 ---|        PROC COMPUT;                 # COMPUTE HIT RATE #
01679  M01S01609.v23l617 ---|        PROC GETMSG;                 # GET REPORT TITLE #
01680  M01S01610.v23l617 ---|        PROC PRDTEL;                 # PRINT ONE ROW OF DATA VALUES #
01681  M01S01611.v23l617 ---|        PROC WRITEV;                 # WRITE ONE VALUE #
01682  M01S01612.v23l617 ---|        END
01683  M01S01613.v23l617 ---|
01684  M01S01614.v23l617 ---|#
01685  M01S01615.v23l617 ---|****  PROC COMRAT - XREF LIST END.
01686  M01S01616.v23l617 ---|#
01687  M01S01617.v23l617 ---|
01688  M01S01618.v23l617 ---|      DEF LISTCON    #0#;            # TURN OFF COMMON LISTING #
01689  M01S01619.v23l617 ---|
01690  M01S01620.v23l617 ---|*CALL     COMUCPD
01691  M01S01621.v23l617 ---|
01692  M01S01622.v23l617 ---|#
01693  M01S01623.v23l617 ---|*     LOCAL VARIABLES.
01694  M01S01624.v23l617 ---|#
01695  M01S01625.v23l617 ---|
01696  M01S01626.v23l617 ---|      ITEM CL         I;             # PRINT COLUMN #
01697  M01S01627.v23l617 ---|      ITEM CMR        R;             # *CM* READ #
01698  M01S01628.v23l617 ---|      ITEM CRH        R;             # CACHE READ HIT #
01699  M01S01629.v23l617 ---|      ITEM CRM        R;             # CACHE READ MISS #
01700  M01S01630.v23l617 ---|      ITEM I          I;             # FOR LOOP CONTROL #
01701  M01S01631.v23l617 ---|      ITEM MSG        C(50);         # REPORT TITLE #
01702  M01S01632.v23l617 ---|      ITEM SCMR       R;             # SUBTOTAL *CM* READ #
01703  M01S01633.v23l617 ---|      ITEM SCRH       R;             # SUBTOTAL CACHE READ HIT #
01704  M01S01634.v23l617 ---|      ITEM SCRM       R;             # SUBTOTAL CACHE READ MISS #
01705  M01S01635.v23l617 ---|      ITEM SUM        R;             # TEMPORARY VALUE #
01706  M01S01636.v23l617 ---|      ITEM T          I;             # TEMPORARY VALUE #
01707  M01S01637.v23l617 ---|      ITEM TCMR       R;             # TOTAL *CM* READ #
01708  M01S01638.v23l617 ---|      ITEM TCRH       R;             # TOTAL CACHE READ HIT #
01709  M01S01639.v23l617 ---|      ITEM TCRM       R;             # TOTAL CACHE READ MISS #
01710  M01S01640.v23l617 ---|      ITEM VAL        R;             # TEMPORARY VALUE #
01711  M01S01641.v23l617 ---|
01712  M01S01642.v23l617 ---|      ARRAY TEM [1:11] P(1);         # TEMPORARY STORAGE #
01713  M01S01643.v23l617 ---|        BEGIN  # ARRAY TEM #
01714  M01S01644.v23l617 ---|        ITEM TEM$VL     R(00,00,60);  # INTERVAL HIT RATE #
01715  M01S01645.v23l617 ---|        END  # ARRAY TEM #
01716  M01S01646.v23l617 ---|
01717  M01S01647.v23l617 ---|
01718  M01S01648.v23l617 ---|
01719  M01S01649.v23l617 ---|
01720  M01S01650.v23l617 ---|
01721  M01S01651.v23l617 ---|
01722  M01S01652.v23l617 ---|#
01723  M01S01653.v23l617 ---|*     BEGIN COMRAT PROC.
01724  M01S01654.v23l617 ---|#
01725  M01S01655.v23l617 ---|
01726  M01S01656.v23l617 ---|      P<DDSC>=LOC(DDDT);
01727  M01S01657.v23l617 ---|      P<DCDT>=LOC(DBUF[DCHL]);
01728  M01S01658.v23l617 ---|      P<DDSM>=LOC(DBUF[DCHL + DCDL*DCDC*2]);
01729  M01S01659.v23l617 ---|      IF (PCM EQ SEGMENT)
01730  M01S01660.v23l617 ---|      THEN
01731  M01S01661.v23l617 ---|        BEGIN
01732  M01S01662.v23l617 ---|        T=DDSC$FW[PMB2];
01733  M01S01663.v23l617 ---|        END
01734  M01S01664.v23l617 ---|
01735  M01S01665.v23l617 ---|      ELSE
01736  M01S01666.v23l617 ---|        BEGIN
01737  M01S01667.v23l617 ---|        T=DDSC$FW[PMA2];
01738  M01S01668.v23l617 ---|        END
01739  M01S01669.v23l617 ---|
01740  M01S01670.v23l617 ---|      SCRH=0.0;
01741  M01S01671.v23l617 ---|      SCRM=0.0;
01742  M01S01672.v23l617 ---|      SCMR=0.0;
01743  M01S01673.v23l617 ---|      SUM=0.0;
01744  M01S01674.v23l617 ---|
01745  M01S01675.v23l617 ---|#
01746  M01S01676.v23l617 ---|*     COMPUTE INTERVAL RATES.
01747  M01S01677.v23l617 ---|#
01748  M01S01678.v23l617 ---|
01749  M01S01679.v23l617 ---|      SLOWFOR I=1 STEP 1 UNTIL NIPP
01750  M01S01680.v23l617 ---|      DO
01751  M01S01681.v23l617 ---|        BEGIN  # COMPUTE INTERVAL HIT RATE #
01752  M01S01682.v23l617 ---|        CRH=DCDT$SM[DDSC$FW[PMA0] + (I-1)*DCDL];
01753  M01S01683.v23l617 ---|        CRM=DCDT$SM[DDSC$FW[PMB0] + (I-1)*DCDL];
01754  M01S01684.v23l617 ---|        CMR=DCDT$SM[T + (I-1)*DCDL];
01755  M01S01685.v23l617 ---|        SCRH=SCRH + CRH;
01756  M01S01686.v23l617 ---|        SCRM=SCRM + CRM;
01757  M01S01687.v23l617 ---|        SCMR=SCMR + CMR;
01758  M01S01688.v23l617 ---|        COMPUT(APM,PCM,CRH,CRM,CMR,TEM[I]);
01759  M01S01689.v23l617 ---|        SUM=SUM + TEM$VL[I];
01760  M01S01690.v23l617 ---|        END  # COMPUTE INTERVAL HIT RATE #
01761  M01S01691.v23l617 ---|
01762  M01S01692.v23l617 ---|#
01763  M01S01693.v23l617 ---|*     COMPUTE SUBTOTAL AND TOTAL HIT RATES.
01764  M01S01694.v23l617 ---|#
01765  M01S01695.v23l617 ---|
01766  M01S01696.v23l617 ---|      COMPUT(APM,PCM,SCRH,SCRM,SCMR,TEM[NIPP+1]);  # SUBTOTAL #
01767  M01S01697.v23l617 ---|
01768  M01S01698.v23l617 ---|      TCRH=DDSM$SM[DDSC$FW[PMA0]];
01769  M01S01699.v23l617 ---|      TCRM=DDSM$SM[DDSC$FW[PMB0]];
01770  M01S01700.v23l617 ---|      TCMR=DDSM$SM[T];
01771  M01S01701.v23l617 ---|      COMPUT(APM,PCM,TCRH,TCRM,TCMR,VAL);  # TOTAL HIT RATE #
01772  M01S01702.v23l617 ---|
01773  M01S01703.v23l617 ---|#
01774  M01S01704.v23l617 ---|*     PRINT INTERVAL VALUES.
01775  M01S01705.v23l617 ---|*     SUBTOTAL WILL NOT BE PRINTED IF LESS THAN 10 COLUMNS REPORTED.
01776  M01S01706.v23l617 ---|*     TOTAL WILL NOT BE PRINTED IF MORE THAN 7 COLUMNS REPORTED ON
01777  M01S01707.v23l617 ---|*     THIS PAGE.
01778  M01S01708.v23l617 ---|#
01779  M01S01709.v23l617 ---|
01780  M01S01710.v23l617 ---|      IF (SUM NQ 0.0)                # THIS LINE IS NON ZERO #
01781  M01S01711.v23l617 ---|        OR (VAL NQ 0.0)              # TOTAL IS NON ZERO #
01782  M01S01712.v23l617 ---|        OR (P$LO EQ "Z")             # *Z* OPTION SPECIFIED #
01783  M01S01713.v23l617 ---|      THEN
01784  M01S01714.v23l617 ---|        BEGIN  # PRINT INTERVAL VALUES #
01785  M01S01715.v23l617 ---|        GETMSG(TPT,MSG);
01786  M01S01716.v23l617 ---|        WRITEV(MSG,CHRC,1,22,NLFC);
01787  M01S01717.v23l617 ---|        PRDTEL(LOC(TEM),FLPC,LOC(APMD[POS]));
01788  M01S01718.v23l617 ---|
01789  M01S01719.v23l617 ---|        IF (NIPP LQ (DCDC-3))        # ENOUGH SPACE FOR TOTAL #
01790  M01S01720.v23l617 ---|        THEN
01791  M01S01721.v23l617 ---|          BEGIN
01792  M01S01722.v23l617 ---|          IF (TCOL GR (DCDC-3))      # SUBTOTAL WAS PRINTED #
01793  M01S01723.v23l617 ---|          THEN
01794  M01S01724.v23l617 ---|            BEGIN
01795  M01S01725.v23l617 ---|            CL=(NIPP+1)*10 + BCLC;
01796  M01S01726.v23l617 ---|            END
01797  M01S01727.v23l617 ---|
01798  M01S01728.v23l617 ---|          ELSE
01799  M01S01729.v23l617 ---|            BEGIN
01800  M01S01730.v23l617 ---|            CL=NIPP*10 + BCLC;
01801  M01S01731.v23l617 ---|            END
01802  M01S01732.v23l617 ---|
01803  M01S01733.v23l617 ---|          WRITEV(VAL,FLPC,CL+1,9,NLFC);
01804  M01S01734.v23l617 ---|          WRITEV(APMD$MX[POS],FLPC,CL+10,10,NLFC);
01805  M01S01735.v23l617 ---|          WRITEV(APMD$MN[POS],FLPC,CL+20,10,LFDC);
01806  M01S01736.v23l617 ---|          END
01807  M01S01737.v23l617 ---|
01808  M01S01738.v23l617 ---|        END  # PRINT INTERVAL VALUES #
01809  M01S01739.v23l617 ---|
01810  M01S01740.v23l617 ---|      RETURN;
01811  M01S01741.v23l617 ---|      END  # COMRAT #
01812  M01S01742.v23l617 ---|
01813  M01S01743.v23l617 ---|      TERM
01814  M00S01744.acpd    +++|PROC DATBLK(EDTM,DTDC,LSTM);
01815  M00S01745.acpd    +++|# TITLE DATBLK - PROCESS DATA BLOCK.  #
01816  M00S01746.acpd    +++|
01817  M00S01747.acpd    +++|      BEGIN  # DATBLK #
01818  M00S01748.acpd    +++|
01819  M00S01749.acpd    +++|#
01820  M00S01750.acpd    +++|**    DATBLK - PROCESS DATA BLOCK.
01821  M00S01751.acpd    +++|*
01822  M00S01752.acpd    +++|*     DATBLK PROCESSES DATA BLOCKS OF EACH FILE IN THE DATA FILE.
01823  M00S01753.acpd    +++|*
01824  M00S01754.acpd    +++|*     PROC DATBLK(EDTM,DTDC,LSTM)
01825  M00S01755.acpd    +++|*
01826  M00S01756.acpd    +++|*     ENTRY      EDTM = TRUE IF ENDING TIME REACHED,
01827  M00S01757.acpd    +++|*                       FALSE IF OTHERWISE.
01828  M00S01758.acpd    +++|*                DTDC = INDICATE IF DATA BLOCK HAS BEEN DECODED.
01829  M00S01759.acpd    +++|*                FILE IS POSITIONED AT THE FIRST DATA BLOCK RECORD.
01830  M00S01760.acpd    +++|*
01831  M00S01761.acpd    +++|*     EXIT       TIME = TRUE IF ENDING TIME REACHED.
01832  M00S01762.acpd    +++|*                LSTM = TIME OF LAST RECORD.
01833  M00S01763.acpd    +++|*                DATA FILE IS POSITIONED AT EITHER *EOI* OR
01834  M00S01764.acpd    +++|*                AT *EOF* OF THE CURRENT FILE. IF TIME IS TRUE,
01835  M00S01765.acpd    +++|*                DATA FILE IS AT THE RECORD CONTAINING THE
01836  M00S01766.acpd    +++|*                ENDING TIME.
01837  M00S01767.acpd    +++|#
01838  M00S01768.acpd    +++|
01839  M00S01769.acpd    +++|#
01840  M00S01770.acpd    +++|*     PARAMETER LIST.
01841  M00S01771.acpd    +++|#
01842  M00S01772.acpd    +++|
Line S01773 Modification History
M01 (Removed by) acpd2
Seq #  *Modification Id* Act 
----------------------------+
01843  M01S01773.acpd2   ---|      ITEM EDTM       B;             # ENDING TIME FLAG #
Line S00001 Modification History
M01 (Added by) acpd2
Seq #  *Modification Id* Act 
----------------------------+
01844  M01S00001.acpd2   +++|      ITEM EDTM       B;             # ENDING TIME OR EOI FLAG #
01845  M00S01774.acpd    +++|      ITEM DTDC       B;             # DECODE DATA BLOCK FLAG #
01846  M00S01775.acpd    +++|      ITEM LSTM       U;             # TIME IF LAST RECORD #
01847  M00S01776.acpd    +++|
01848  M00S01777.acpd    +++|#
01849  M00S01778.acpd    +++|****  PROC DATBLK - XREF LIST BEGIN.
01850  M00S01779.acpd    +++|#
01851  M00S01780.acpd    +++|
01852  M00S01781.acpd    +++|      XREF
01853  M00S01782.acpd    +++|        BEGIN
01854  M00S01783.acpd    +++|        PROC DECODE;                 # DECODE *CIO* INPUT BUFFER DATA #
01855  M00S01784.acpd    +++|        FUNC DTMNUM U;               # CONVERT DATE/TIME TO BINARY #
01856  M00S01785.acpd    +++|        PROC PERROR;                 # PROCESS ERROR #
01857  M00S01786.acpd    +++|        PROC PUTDAT;                 # PRINT DATA BLOCK ELEMENTS #
01858  M00S01787.acpd    +++|        PROC READRC;                 # READ ONE RECORD FROM DATA FILE #
01859  M00S01788.acpd    +++|        PROC WRTSUM;                 # WRITE SUMMARY FILE #
01860  M00S01789.acpd    +++|        END
01861  M00S01790.acpd    +++|
01862  M00S01791.acpd    +++|#
01863  M00S01792.acpd    +++|****  PROC DATBLK - XREF LIST END.
01864  M00S01793.acpd    +++|#
01865  M00S01794.acpd    +++|
01866  M00S01795.acpd    +++|      DEF DOTC       #TRUE#;         # FLAG #
01867  M00S01796.acpd    +++|      DEF MXVC       #1.0E10#;       # MAXIMUM VALUE #
01868  M00S01797.acpd    +++|
01869  M00S01798.acpd    +++|      DEF LISTCON    #0#;            # TURN OFF COMMON DECK LISTING #
01870  M00S01799.acpd    +++|
01871  M00S01800.acpd    +++|*CALL     COMUCPD
01872  M00S01801.acpd    +++|
01873  M00S01802.acpd    +++|#
01874  M00S01803.acpd    +++|*     LOCAL VARIABLES.
01875  M00S01804.acpd    +++|#
01876  M00S01805.acpd    +++|
01877  M00S01806.acpd    +++|      ITEM BC         I;             # BEGINNING COLUMN #
01878  M00S01807.acpd    +++|      ITEM FW         I;             # FILE WRITE TIME #
01879  M00S01808.acpd    +++|      ITEM I          I;             # FOR LOOP CONTROL #
01880  M00S01809.acpd    +++|      ITEM J          I;             # FOR LOOP CONTROL #
01881  M00S01810.acpd    +++|      ITEM K          I;             # FOR LOOP CONTROL #
01882  M00S01811.acpd    +++|      ITEM NS         I;             # SAMPLING FREQUENCY #
01883  M00S01812.acpd    +++|      ITEM PT         I;             # ADDRESS OF DECODED DATA BLOCK #
01884  M00S01813.acpd    +++|      ITEM STAT       I;             # I/O STATUS #
01885  M00S01814.acpd    +++|      ITEM TM         I;             # TIME OF CURRENT RECORD #
01886  M00S01815.acpd    +++|
01887  M00S01816.acpd    +++|
01888  M00S01817.acpd    +++|
01889  M00S01818.acpd    +++|
01890  M00S01819.acpd    +++|
01891  M00S01820.acpd    +++|#
01892  M00S01821.acpd    +++|*     BEGIN DATBLK PROC.
01893  M00S01822.acpd    +++|#
01894  M00S01823.acpd    +++|
01895  M00S01824.acpd    +++|      P<DCHD>=LOC(DBUF);
01896  M00S01825.acpd    +++|      P<DCDT>=LOC(DBUF[DCHL]);
01897  M00S01826.acpd    +++|      P<DDSM>=LOC(DBUF[DCHL + DCDC*DCDL*2]);
01898  M00S01827.acpd    +++|      TLFG=1;                        # SUBTITLE IS TO BE PRINTED #
01899  M00S01828.acpd    +++|
01900  M00S01829.acpd    +++|#
01901  M00S01830.acpd    +++|*     DETERMINE REPORT INTERVAL LENGTH.
01902  M00S01831.acpd    +++|#
01903  M00S01832.acpd    +++|
01904  M00S01833.acpd    +++|      P<DDSC>=LOC(DDHD);
01905  M00S01834.acpd    +++|      FW=DCHD$WD[DDSC$FW[DLFW]];     # FILE WRITE TIME #
Line S01835 Modification History
M01 (Removed by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01906  M01S01835.v23l617 ---|      NS=(P$IN*60)/FW;               # DATA BLOCKS PER INTERVAL #
01907  M01S01836.v23l617 ---|      IF (NS LQ 0)                   # *IN* LESS THAN *FW* #
01908  M01S01837.v23l617 ---|      THEN
01909  M01S01838.v23l617 ---|        BEGIN
01910  M01S01839.v23l617 ---|        PERROR(ERM10,FATAL,NULL);    # IN LESS THAN FILE WRITE TIME #
01911  M01S01840.v23l617 ---|        END
Line S00054 Modification History
M01 (Added by) v23l617
Seq #  *Modification Id* Act 
----------------------------+
01912  M01S00054.v23l617 +++|      IF (P$IN NQ 0)                 # INTERVAL TIME SPECIFIED #
01913  M01S00055.v23l617 +++|      THEN
01914  M01S00056.v23l617 +++|        BEGIN
01915  M01S00057.v23l617 +++|        NS=(P$IN*60)/FW;             # NUMBER OF RECORDS PER INTERVAL #
01916  M01S00058.v23l617 +++|        IF (NS EQ 0)                 # *IN* .LT. *FW* #
01917  M01S00059.v23l617 +++|        THEN
01918  M01S00060.v23l617 +++|          BEGIN
01919  M01S00061.v23l617 +++|          PERROR(ERM10,FATAL,NULL);  # IN LESS THAN FILE WRITE TIME #
01920  M01S00062.v23l617 +++|          END
01921  M01S00063.v23l617 +++|
01922  M01S00064.v23l617 +++|        END
01923  M01S00065.v23l617 +++|
01924  M01S00066.v23l617 +++|      ELSE
01925  M01S00067.v23l617 +++|        BEGIN
01926  M01S00068.v23l617 +++|        NS=P$IC;                     # NUMBER OF RECORDS PER INTERVAL #
01927  M01S00069.v23l617 +++|        END
01928  M00S01841.acpd    +++|
01929  M00S01842.acpd    +++|      IF (DTDC)                      # FIRST DATA BLOCK DECODED #
01930  M00S01843.acpd    +++|      THEN
01931  M00S01844.acpd    +++|        BEGIN
01932  M00S01845.acpd    +++|        BC=2;                        # COLLECT NEXT SAMPLE #
01933  M00S01846.acpd    +++|        ACNS=1;
01934  M00S01847.acpd    +++|        TM=P$BT;
01935  M00S01848.acpd    +++|        DTDC=FALSE;
01936  M00S01849.acpd    +++|        END
01937  M00S01850.acpd    +++|
01938  M00S01851.acpd    +++|      ELSE                           # NOT DECODED #
01939  M00S01852.acpd    +++|        BEGIN
01940  M00S01853.acpd    +++|        BC=1;                        # COLLECT FIRST SAMPLE #
01941  M00S01854.acpd    +++|        ACNS=0;
Line S01855 Modification History
M01 (Removed by) ns2786
Seq #  *Modification Id* Act 
----------------------------+
01942  M01S01855.ns2786  ---|        TM=(DTMNUM(DCHD$WD[DDSC$FW[DATE]],DOTC) - Y70C)*SHFC;
01943  M01S01856.ns2786  ---|        TM=TM + DTMNUM(DCHD$WD[DDSC$FW[TIME]],DOTC);
Line S00007 Modification History
M01 (Added by) ns2786
Seq #  *Modification Id* Act 
----------------------------+
01944  M01S00007.ns2786  +++|        TM=DTMNUM(DCHD$WD[DDSC$FW[DATE]],DOTC,TRUE)*SHFC;
01945  M01S00008.ns2786  +++|        TM=TM + DTMNUM(DCHD$WD[DDSC$FW[TIME]],DOTC,FALSE);
01946  M00S01857.acpd    +++|        END
01947  M00S01858.acpd    +++|
01948  M00S01859.acpd    +++|#
01949  M00S01860.acpd    +++|*     PROCESS DATA BLOCKS UNTIL EITHER END OF
01950  M00S01861.acpd    +++|*     CURRENT FILE OR END TIME IS REACHED.
01951  M00S01862.acpd    +++|#
01952  M00S01863.acpd    +++|
01953  M00S01864.acpd    +++|      PT=LOC(DCDT);
01954  M00S01865.acpd    +++|      P<DDSC>=LOC(DDDT);
01955  M00S01866.acpd    +++|      STAT=EORC;
01956  M00S01867.acpd    +++|      TCOL=0;                        # TOTAL NUMBER OF COLUMNS #
01957  M00S01868.acpd    +++|
01958  M00S01869.acpd    +++|      SLOWFOR K=1 STEP 1 WHILE (STAT EQ EORC) AND (P$ET GR TM)
01959  M00S01870.acpd    +++|      DO
01960  M00S01871.acpd    +++|        BEGIN  # COLLECT DATA #
01961  M00S01872.acpd    +++|
01962  M00S01873.acpd    +++|#
01963  M00S01874.acpd    +++|*     COLLECT DATA FOR 10 COLUMNS AND PUT THEM IN THE DECODED
01964  M00S01875.acpd    +++|*     DATA BLOCK BUFFER *DCDT*. *PT* IS THE ADDRESS OF WHERE THE
01965  M00S01876.acpd    +++|*     DECODED DATA ARE TO BE STORED IN *DCDT*. FOR EACH COLUMN, THE
01966  M00S01877.acpd    +++|*     NUMBER OF DATA BLOCKS NEEDED TO COLLECT IS DETERMINED BY *NS*.
01967  M00S01878.acpd    +++|#
01968  M00S01879.acpd    +++|
01969  M00S01880.acpd    +++|        SLOWFOR I=1 STEP 1 UNTIL DCDC
01970  M00S01881.acpd    +++|        DO
01971  M00S01882.acpd    +++|          BEGIN  # PROCESS 10 COLUMNS #
01972  M00S01883.acpd    +++|          SLOWFOR J=BC STEP 1 UNTIL NS
01973  M00S01884.acpd    +++|          DO
01974  M00S01885.acpd    +++|            BEGIN  # COLLECT DATA FOR THE I-TH COLUMN #
01975  M00S01886.acpd    +++|            IF (IBWA GQ IBNW)        # INPUT BUFFER EXHAUSTED #
01976  M00S01887.acpd    +++|            THEN
01977  M00S01888.acpd    +++|              BEGIN  # GET NEXT RECORD #
01978  M00S01889.acpd    +++|              READRC(STAT);          # READ NEXT RECORD #
01979  M00S01890.acpd    +++|              IF (STAT NQ EORC)      # EOF OR EOI #
01980  M00S01891.acpd    +++|              THEN
01981  M00S01892.acpd    +++|                BEGIN
01982  M00S01893.acpd    +++|                TEST K;              # END OF CURRENT FILE #
01983  M00S01894.acpd    +++|                END
01984  M00S01895.acpd    +++|
01985  M00S01896.acpd    +++|              IBWA=0;                # RESET INPUT BUFFER POINTER #
01986  M00S01897.acpd    +++|              END  # GET NEXT RECORD #
01987  M00S01898.acpd    +++|
01988  M00S01899.acpd    +++|            DECODE(LOC(DATT),PT);    # DECODE DATA BLOCK #
01989  M00S01900.acpd    +++|            ACNS=ACNS+1;             # NUMBER OF DATA BLOCKS DECODED #
01990  M00S01901.acpd    +++|            TM=DCDT$WD[(I-1)*DCDL + DDSC$FW[PDTM]];  # GET TIME #
01991  M00S01902.acpd    +++|            IF (TM GQ P$ET)          # CURRENT TIME GREATER THAN #
01992  M00S01903.acpd    +++|            THEN                     # ENDING TIME #
01993  M00S01904.acpd    +++|              BEGIN
01994  M00S01905.acpd    +++|              TEST K;                # ENDING TIME REACHED #
01995  M00S01906.acpd    +++|              END
01996  M00S01907.acpd    +++|
01997  M00S01908.acpd    +++|            END  # COLLECT DATA FOR THE I-TH COLUMN #
01998  M00S01909.acpd    +++|
01999  M00S01910.acpd    +++|          BC=1;
02000  M00S01911.acpd    +++|          TCOL=TCOL+1;
02001  M00S01912.acpd    +++|          PT=PT+DCDL;                # NEXT BUFFER ADDRESS #
02002  M00S01913.acpd    +++|          END  # PROCESS 10 COLUMNS #
02003  M00S01914.acpd    +++|
02004  M00S01915.acpd    +++|#
02005  M00S01916.acpd    +++|*     DATA OF THE FAST, MEDIUM, SLOW, AND SNAPSHOT LOOPS FOR 10
02006  M00S01917.acpd    +++|*     COLUMNS HAVE BEEN DECODED AND SAVED IN DECODED DATA BLOCK
02007  M00S01918.acpd    +++|*     BUFFER *DCDT*. NOW PRINT THE DATA TO THE REPORT FILE AND
02008  M00S01919.acpd    +++|*     THE SUMMARY FILE IF THE SUMMARY FILE IS SPECIFIED.
02009  M00S01920.acpd    +++|#
02010  M00S01921.acpd    +++|
02011  M00S01922.acpd    +++|        PUTDAT(NS,DCDC);             # COMPUTE DATA BLOCK ELEMENTS #
02012  M00S01923.acpd    +++|        IF (P$S NQ NULL)             # SUMMARY FILE SPECIFIED #
02013  M00S01924.acpd    +++|        THEN
02014  M00S01925.acpd    +++|          BEGIN
02015  M00S01926.acpd    +++|          WRTSUM(DCDC);              # WRITE SUMMARY FILE #
02016  M00S01927.acpd    +++|          END
02017  M00S01928.acpd    +++|
02018  M00S01929.acpd    +++|#
02019  M00S01930.acpd    +++|*     REINITIALIZE THE DECODED DATA BLOCK BUFFER FOR NEXT
02020  M00S01931.acpd    +++|*     COLLECTION OF DATA.
02021  M00S01932.acpd    +++|#
02022  M00S01933.acpd    +++|
02023  M00S01934.acpd    +++|        PT=LOC(DCDT);
02024  M00S01935.acpd    +++|        SLOWFOR I=0 STEP 1 UNTIL DCDC*DCDL*2 - 1
02025  M00S01936.acpd    +++|        DO
02026  M00S01937.acpd    +++|          BEGIN
02027  M00S01938.acpd    +++|          DCDT$WD[I]=0;
02028  M00S01939.acpd    +++|          END
02029  M00S01940.acpd    +++|
02030  M00S01941.acpd    +++|        END  # COLLECT DATA #
02031  M00S01942.acpd    +++|
02032  M00S01943.acpd    +++|#
02033  M00S01944.acpd    +++|*     PROCESS END CASE.
02034  M00S01945.acpd    +++|*     THE NUMBER OF COLUMNS MAY NOT BE 10, AND THE NUMBER OF DATA
02035  M00S01946.acpd    +++|*     BLOCKS COLLECTED FOR THE LAST COLUMN MAY NOT BE *NS*.
02036  M00S01947.acpd    +++|#
02037  M00S01948.acpd    +++|
02038  M00S01949.acpd    +++|      IF (STAT NQ EORC)              # EOF OR EOI #
02039  M00S01950.acpd    +++|      THEN
02040  M00S01951.acpd    +++|        BEGIN
02041  M00S01952.acpd    +++|        J=J-1;
02042  M00S01953.acpd    +++|        END
02043  M00S01954.acpd    +++|
02044  M00S01955.acpd    +++|#
02045  M00S01956.acpd    +++|*     IF LAST COLUMN DOES NOT HAVE ENOUGH BLOCKS, IGNORE LAST
02046  M00S01957.acpd    +++|*     COLUMN.
02047  M00S01958.acpd    +++|#
02048  M00S01959.acpd    +++|
02049  M00S01960.acpd    +++|      IF (J LS NS)                   # NOT ENOUGH BLOCKS #
02050  M00S01961.acpd    +++|      THEN
02051  M00S01962.acpd    +++|        BEGIN  # IGNORE LAST INCOMPLETED COLUMN #
02052  M00S01963.acpd    +++|        I=I-1;
02053  M00S01964.acpd    +++|        IF (I EQ 0)                  # ONLY ONE COLUMN COLLECTED #
02054  M00S01965.acpd    +++|        THEN
02055  M00S01966.acpd    +++|          BEGIN
02056  M00S01967.acpd    +++|          I=1;
02057  M00S01968.acpd    +++|          NS=J;
02058  M00S01969.acpd    +++|          END
02059  M00S01970.acpd    +++|
02060  M00S01971.acpd    +++|        END  # IGNORE LAST INCOMPLETED COLUMN #
02061  M00S01972.acpd    +++|
02062  M00S01973.acpd    +++|      IF (NS GR 0)                   # LAST COLUMN HAS DATA #
02063  M00S01974.acpd    +++|      THEN
02064  M00S01975.acpd    +++|        BEGIN
02065  M00S01976.acpd    +++|        PUTDAT(NS,I);                # PROCESS LAST COLLECTION #
02066  M00S01977.acpd    +++|        IF (P$S NQ NULL)             # SUMMARY FILE SPECIFIED #
02067  M00S01978.acpd    +++|        THEN                         # WRITE SUMMARY FILE #
02068  M00S01979.acpd    +++|          BEGIN
02069  M00S01980.acpd    +++|          WRTSUM(I);
02070  M00S01981.acpd    +++|          END
02071  M00S01982.acpd    +++|
02072  M00S01983.acpd    +++|        END
02073  M00S01984.acpd    +++|
02074  M00S01985.acpd    +++|      IF (I GR (DCDC-3))             # MORE THAN 7 COLUMNS COLLECTED #
02075  M00S01986.acpd    +++|        OR (NS EQ 0)                 # NO BLOCK WAS COLLECTED #
02076  M00S01987.acpd    +++|      THEN                           # PRINT TOTAL ON NEXT PAGE #
02077  M00S01988.acpd    +++|        BEGIN
02078  M00S01989.acpd    +++|        PUTDAT(NS,0);                # PRINT TOTAL #
02079  M00S01990.acpd    +++|        END
02080  M00S01991.acpd    +++|
Proceed to Part 1
cdc/nos2.source/opl.opl871/deck/acpd.txt ยท Last modified: (external edit)