Deck SSALTER Part 001

3 Modifications

Listing Sections

Source

Seq #  *Modification Id* Act 
----------------------------+
Line S00138 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
01921  M01S00138.ssalte1 +++|        FUNC XCDD C(10);             # CONV INT TO DECIMAL DISPLAY #
01922  M00S01762.ssalter +++|        FUNC XCOD C(10);             # CONVERT INTEGER TO OCTAL DISPLAY
01923  M00S01763.ssalter +++|                                     #
01924  M00S01764.ssalter +++|        END
01925  M00S01765.ssalter +++|
01926  M00S01766.ssalter +++|#
01927  M00S01767.ssalter +++|****  PROC DISPSM - XREF LIST END.
01928  M00S01768.ssalter +++|#
01929  M00S01769.ssalter +++|
01930  M00S01770.ssalter +++|#
01931  M00S01771.ssalter +++|*     DAYFILE MESSAGES.
01932  M00S01772.ssalter +++|#
01933  M00S01773.ssalter +++|
01934  M00S01774.ssalter +++|      DEF MSG1   #" DISPSM - INCORRECT RESPONSE FROM SSEXEC."#;
01935  M00S01775.ssalter +++|      DEF BLANK      #" "#;
01936  M00S01776.ssalter +++|
01937  M00S01777.ssalter +++|
01938  M00S01778.ssalter +++|      DEF LISTCON    #0#;            # DO NOT LIST COMMON DECKS #
01939  M00S01779.ssalter +++|
01940  M00S01780.ssalter +++|*CALL,COMBFAS
01941  M00S01781.ssalter +++|*CALL,COMBCPR
01942  M00S01782.ssalter +++|*CALL,COMBUDT
01943  M00S01783.ssalter +++|*CALL,COMTALT
01944  M00S01784.ssalter +++|
01945  M00S01785.ssalter +++|      ARRAY CHAR10[0:0] S(3);        # CHARACTER MANIPULATION #
01946  M00S01786.ssalter +++|        BEGIN
01947  M00S01787.ssalter +++|        ITEM CHAR$10    C(00,00,10);
Line S00139 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
01948  M01S00139.ssalte1 +++|        ITEM CHAR$R3    C(00,42,03);
01949  M00S01788.ssalter +++|        ITEM CHAR$R2    C(00,48,02);
01950  M00S01789.ssalter +++|        ITEM CHAR$DRD0  C(01,00,10);
Line S00140 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
01951  M01S00140.ssalte1 +++|        ITEM CHAR$2D0   C(01,48,02);
01952  M00S01790.ssalter +++|        ITEM CHAR$D0    C(01,54,01);
01953  M00S01791.ssalter +++|        ITEM CHAR$DRD1  C(02,00,10);
Line S00141 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
01954  M01S00141.ssalte1 +++|        ITEM CHAR$2D1   C(02,48,02);
01955  M00S01792.ssalter +++|        ITEM CHAR$D1    C(02,54,01);
01956  M00S01793.ssalter +++|        END
01957  M00S01794.ssalter +++|
01958  M00S01795.ssalter +++|      ITEM CH         C(2);          # TWO CHARACTERS #
01959  M00S01796.ssalter +++|      ITEM I          I;             # LOOP INDEX #
Line S01797 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
01960  M01S01797.ssalte1 ---|      ITEM J          I;             # LOOP INDEX #
01961  M00S01798.ssalter +++|      ITEM EST$ORD    I;             # EST ORDINAL #
01962  M00S01799.ssalter +++|      ITEM INDEX      I;             # INPUT PARAMETER #
01963  M00S01800.ssalter +++|      ITEM INITIALIZE  B;            # INPUT PARAMETER #
01964  M00S01801.ssalter +++|      ITEM ORD        I;             # TEMPORARY STORAGE #
01965  M00S01802.ssalter +++|      ITEM RESPCODE   I;             # RESPONSE FROM *SSEXEC* #
01966  M00S01803.ssalter +++|      ITEM SMID       C(1);          # STORAGE MODULE ID #
01967  M00S01804.ssalter +++|      ITEM TEMP       I;             # SCRATCH #
01968  M00S01805.ssalter +++|                                               CONTROL EJECT;
01969  M00S01806.ssalter +++|
01970  M00S01807.ssalter +++|      ITEM SMBLANK C(58) =
01971  M00S01808.ssalter +++|        "                                                        ";
01972  M00S01809.ssalter +++|      ITEM SMHDR1 C(58) =
01973  M00S01810.ssalter +++|        "                  PCU      SCU    SM/DRD";
01974  M00S01811.ssalter +++|      ITEM SMHDR2 C(58) =
01975  M00S01812.ssalter +++|        "                   ST       ST      ST";
01976  M00S01813.ssalter +++|      ITEM SM$LINE C(58) =
01977  M00S01814.ssalter +++|        "  SM       X        N        N       X";
01978  M00S01815.ssalter +++|      ITEM DRD$LINE C(58) =
01979  M00S01816.ssalter +++|        "  DRD      N                         X";
01980  M00S01817.ssalter +++|      ITEM DASH$LINE C(58) =
01981  M00S01818.ssalter +++|        "  ------------------------------------";
01982  M00S01819.ssalter +++|      ITEM VALID$COM C(58) =
01983  M00S01820.ssalter +++|        "      VALID COMMANDS ARE -";
01984  M00S01821.ssalter +++|      ITEM VAL$COM1 C(58) =
01985  M00S01822.ssalter +++|        "        K.SMI,CUNN=S.";
01986  M00S01823.ssalter +++|      ITEM VAL$COM2 C(58) =
01987  M00S01824.ssalter +++|        "        K.SMI,DRDN,CUNN=S.";
01988  M00S01825.ssalter +++|      ITEM VAL$COM3 C(58) =
01989  M00S01826.ssalter +++|        "        K.+ = DISPLAY NEXT SM";
01990  M00S01827.ssalter +++|      ITEM VAL$COM4 C(58) =
01991  M00S01828.ssalter +++|        "          I = SM IDENTIFIER";
01992  M00S01829.ssalter +++|      ITEM VAL$COM5 C(58) =
01993  M00S01830.ssalter +++|        "          N = DRD DEVICE ADDRESS";
01994  M00S01831.ssalter +++|      ITEM VAL$COM6 C(58) =
01995  M00S01832.ssalter +++|        "          NN = CU EST ORDINAL";
01996  M00S01833.ssalter +++|      ITEM VAL$COM7 C(58) =
01997  M00S01834.ssalter +++|        "          S = STATUS - U(ON),F(OFF),M(MAINTENANCE)";
01998  M00S01835.ssalter +++|      ITEM VAL$COM8 C(58) =
01999  M00S01836.ssalter +++|        "          S = STATUS - U(ON),F(OFF)";
02000  M00S01837.ssalter +++|      ITEM VAL$COM9 C(59) =
02001  M00S01838.ssalter +++|        "          + = DISPLAY NEXT SM";
02002  M00S01839.ssalter +++|                                               CONTROL EJECT;
02003  M00S01840.ssalter +++|
02004  M00S01841.ssalter +++|#
02005  M00S01842.ssalter +++|*     BLANK THE *K* DISPLAY
02006  M00S01843.ssalter +++|#
02007  M00S01844.ssalter +++|
02008  M00S01845.ssalter +++|      P<SM$SCREEN> = LOC(KLEFTSCRNAL);
02009  M00S01846.ssalter +++|      SLOWFOR I = LF$AL$BODY STEP 1 UNTIL LF$AL$KBECHO-1
02010  M00S01847.ssalter +++|      DO
02011  M00S01848.ssalter +++|        BEGIN
02012  M00S01849.ssalter +++|        SM$LN[I] = SMBLANK;
02013  M00S01850.ssalter +++|        SM$EOL[I] = 0;
02014  M00S01851.ssalter +++|        END
02015  M00S01852.ssalter +++|
02016  M00S01853.ssalter +++|#
02017  M00S01854.ssalter +++|*     PAINT NON-CHANGING WORDS ON THE SCREEN
02018  M00S01855.ssalter +++|#
02019  M00S01856.ssalter +++|
02020  M00S01857.ssalter +++|      SM$LN[3] = SMHDR1;
02021  M00S01858.ssalter +++|      SM$LN[4] = SMHDR2;
02022  M00S01859.ssalter +++|      SM$LN[6] = SM$LINE;
02023  M00S01860.ssalter +++|      SM$LN[8] = DRD$LINE;
02024  M00S01861.ssalter +++|      SM$LN[10] = DRD$LINE;
02025  M00S01862.ssalter +++|      SM$LN[11] = DASH$LINE;
02026  M00S01863.ssalter +++|      SM$LN[12] = VALID$COM;
02027  M00S01864.ssalter +++|      SM$LN[13] = VAL$COM1;
02028  M00S01865.ssalter +++|      SM$LN[14] = VAL$COM2;
02029  M00S01866.ssalter +++|      SM$LN[15] = VAL$COM3;
02030  M00S01867.ssalter +++|      SM$LN[16] = VAL$COM4;
02031  M00S01868.ssalter +++|      SM$LN[17] = VAL$COM5;
02032  M00S01869.ssalter +++|      SM$LN[18] = VAL$COM6;
02033  M00S01870.ssalter +++|      SM$LN[19] = VAL$COM8;
02034  M00S01871.ssalter +++|      IF NOT INITIALIZE
02035  M00S01872.ssalter +++|      THEN
02036  M00S01873.ssalter +++|        BEGIN
02037  M00S01874.ssalter +++|        SM$LN[19] = VAL$COM7;
02038  M00S01875.ssalter +++|        END
02039  M00S01876.ssalter +++|
02040  M00S01877.ssalter +++|#
02041  M00S01878.ssalter +++|*     DISPLAY STATIC INFORMATION
02042  M00S01879.ssalter +++|#
02043  M00S01880.ssalter +++|
Line S01881 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02044  M01S01881.ssalte1 ---|      J = INDEX*2;
02045  M01S01882.ssalte1 ---|      CHAR$DRD0[0] = XCOD( J );
02046  M01S01883.ssalte1 ---|      J = J + 1;
02047  M01S01884.ssalte1 ---|      CHAR$DRD1[0] = XCOD ( J );
02048  M00S01885.ssalter +++|      P<UDT$SMA> = LOC( UDT$M861[INDEX] );
Line S00142 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02049  M01S00142.ssalte1 +++|      CHAR$DRD0[0] = XCDD(D0$SUN[1]);
02050  M01S00143.ssalte1 +++|      CHAR$DRD1[0] = XCDD(D1$SUN[1]);
02051  M00S01886.ssalter +++|      TEMP = 6;                     # SM LINE #
02052  M00S01887.ssalter +++|      POKEDIS ( TEMP , 11 , 1 , SM$ID[1] );
02053  M00S01888.ssalter +++|      ORD = SM$CUO0[1] - 1;
02054  M00S01889.ssalter +++|      IF ORD NQ -1
02055  M00S01890.ssalter +++|      THEN
02056  M00S01891.ssalter +++|        BEGIN
02057  M00S01892.ssalter +++|        P<UDT$CN> = LOC( UDT$M862[ORD] );
02058  M00S01893.ssalter +++|        EST$ORD = UD$ESTO[1];
02059  M00S01894.ssalter +++|        CHAR$10[0] = XCOD(EST$ORD);
Line S01895 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02060  M01S01895.ssalte1 ---|        POKEDIS ( TEMP , 19 , 2 , CHAR$R2[0] );
02061  M00S01896.ssalter +++|        END
02062  M00S01897.ssalter +++|
02063  M00S01898.ssalter +++|      ELSE
02064  M00S01899.ssalter +++|        BEGIN
02065  M00S01900.ssalter +++|        CHAR$10[0] = BLANK;
02066  M00S01901.ssalter +++|        END
02067  M00S01902.ssalter +++|
Line S00144 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02068  M01S00144.ssalte1 +++|      IF EST$ORD LQ O"77"
02069  M01S00145.ssalte1 +++|      THEN                           # ORDINAL HAS 2 CHARACTERS #
02070  M01S00146.ssalte1 +++|        BEGIN  # TWO #
02071  M01S00147.ssalte1 +++|        POKEDIS(TEMP,19,2,CHAR$R2[0]);
02072  M01S00148.ssalte1 +++|        END  # TWO #
02073  M01S00149.ssalte1 +++|
02074  M01S00150.ssalte1 +++|      ELSE                           # ORDINAL HAS 3 CHARACTERS #
02075  M01S00151.ssalte1 +++|        BEGIN  # THREE #
02076  M01S00152.ssalte1 +++|        POKEDIS(TEMP,18,3,CHAR$R3[0]);
02077  M01S00153.ssalte1 +++|        END  # THREE #
02078  M01S00154.ssalte1 +++|
02079  M00S01903.ssalter +++|      ORD = SM$CUO1[1] - 1;
02080  M00S01904.ssalter +++|      IF ORD NQ -1
02081  M00S01905.ssalter +++|      THEN
02082  M00S01906.ssalter +++|        BEGIN
02083  M00S01907.ssalter +++|        P<UDT$CN> = LOC( UDT$M862[ORD] );
02084  M00S01908.ssalter +++|        EST$ORD = UD$ESTO[1];
02085  M00S01909.ssalter +++|        CHAR$10[0] = XCOD ( EST$ORD );
02086  M00S01910.ssalter +++|        END
02087  M00S01911.ssalter +++|
02088  M00S01912.ssalter +++|      ELSE
02089  M00S01913.ssalter +++|        BEGIN
02090  M00S01914.ssalter +++|        CHAR$10[0] = BLANK;          # BLANK IF NONE PRESENT #
02091  M00S01915.ssalter +++|        END
02092  M00S01916.ssalter +++|
Line S01917 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02093  M01S01917.ssalte1 ---|      POKEDIS ( TEMP , 28 , 2 , CHAR$R2[0] );  # DISPLAY SECONDARY DRD #
02094  M01S01918.ssalte1 ---|
02095  M01S01919.ssalte1 ---|
Line S00155 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02096  M01S00155.ssalte1 +++|      IF EST$ORD LQ O"77"
02097  M01S00156.ssalte1 +++|      THEN                           # ORDINAL HAS 2 CHARACTERS #
02098  M01S00157.ssalte1 +++|        BEGIN  # TWO #
02099  M01S00158.ssalte1 +++|        POKEDIS(TEMP,28,2,CHAR$R2[0]);
02100  M01S00159.ssalte1 +++|        END  # TWO #
02101  M01S00160.ssalte1 +++|
02102  M01S00161.ssalte1 +++|      ELSE                           # ORDINAL HAS 3 CHARACTERS #
02103  M01S00162.ssalte1 +++|        BEGIN  # THREE #
02104  M01S00163.ssalte1 +++|        POKEDIS(TEMP,27,3,CHAR$R3[0]);
02105  M01S00164.ssalte1 +++|        END  # THREE #
02106  M00S01920.ssalter +++|
02107  M00S01921.ssalter +++|#
02108  M00S01922.ssalter +++|*     GET UDT INFORMATION
02109  M00S01923.ssalter +++|#
02110  M00S01924.ssalter +++|
02111  M00S01925.ssalter +++|      UCPREQ ( TYP"TYP5", REQTYP5"SSA$PUDT", RESPCODE );
02112  M00S01926.ssalter +++|
02113  M00S01927.ssalter +++|      IF ( RESPCODE NQ RESPTYP5"OK5" )  ##
02114  M00S01928.ssalter +++|        AND ( RESPCODE NQ RESPTYP5"SSA$OK" )
02115  M00S01929.ssalter +++|      THEN
02116  M00S01930.ssalter +++|        BEGIN  # PROCESS INCORRECT RESPONSE #
02117  M00S01931.ssalter +++|        UCPREQ ( TYP"TYP1", REQTYP1"DISCONNECT", RESPCODE );
02118  M00S01932.ssalter +++|        ALTMSG$LN[0] = MSG1;
02119  M00S01933.ssalter +++|        MESSAGE ( ALTMSG[0],SYSUDF1 );
02120  M00S01934.ssalter +++|        RESTPFP ( PFP$ABORT );
02121  M00S01935.ssalter +++|        END  # PROCESS INCORRECT RESPONSE #
02122  M00S01936.ssalter +++|
02123  M00S01937.ssalter +++|#
02124  M00S01938.ssalter +++|*     EXTRACT UDT DATA AND UPDATE THE DYNAMIC K-DISPLAY
02125  M00S01939.ssalter +++|#
02126  M00S01940.ssalter +++|
02127  M00S01941.ssalter +++|
02128  M00S01942.ssalter +++|      IF SM$EXIST[1]
02129  M00S01943.ssalter +++|      THEN
02130  M00S01944.ssalter +++|        BEGIN
02131  M00S01945.ssalter +++|        IF SM$ON[1]
02132  M00S01946.ssalter +++|        THEN
02133  M00S01947.ssalter +++|          BEGIN
02134  M00S01948.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$ONLINE );
02135  M00S01949.ssalter +++|          END
02136  M00S01950.ssalter +++|
02137  M00S01951.ssalter +++|        ELSE
02138  M00S01952.ssalter +++|          BEGIN
02139  M00S01953.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$OFFLINE );
02140  M00S01954.ssalter +++|          END
02141  M00S01955.ssalter +++|
02142  M00S01956.ssalter +++|        IF SM$DIAG[1]
02143  M00S01957.ssalter +++|        THEN
02144  M00S01958.ssalter +++|          BEGIN
02145  M00S01959.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$MAINT );
02146  M00S01960.ssalter +++|          END
02147  M00S01961.ssalter +++|
02148  M00S01962.ssalter +++|        IF SM$STS0[1] NQ 0
02149  M00S01963.ssalter +++|        THEN
02150  M00S01964.ssalter +++|          BEGIN  # DISPLAY ACCESSOR STATUS FROM 1ST CU #
02151  M00S01965.ssalter +++|          IF B<PATH$DF"U$ON",1>SM$STS0[1] EQ 1
02152  M00S01966.ssalter +++|          THEN
02153  M00S01967.ssalter +++|            BEGIN
02154  M00S01968.ssalter +++|            POKEDIS ( TEMP , 21 , 1 , ALTK$ONLINE );
02155  M00S01969.ssalter +++|            END
02156  M00S01970.ssalter +++|
02157  M00S01971.ssalter +++|          ELSE
02158  M00S01972.ssalter +++|            BEGIN
02159  M00S01973.ssalter +++|            POKEDIS ( TEMP , 21 , 1 , ALTK$OFFLINE );
02160  M00S01974.ssalter +++|            END
02161  M00S01975.ssalter +++|
02162  M00S01976.ssalter +++|          IF B<PATH$DF"U$RQ$DIAG",1>SM$STS0[1] EQ 1
02163  M00S01977.ssalter +++|          THEN
02164  M00S01978.ssalter +++|            BEGIN
02165  M00S01979.ssalter +++|            POKEDIS ( TEMP , 21 , 1 , ALTK$MAINT );
02166  M00S01980.ssalter +++|            END
02167  M00S01981.ssalter +++|
02168  M00S01982.ssalter +++|          END  # DISPLAY ACCESSOR STATUS FROM 1ST CU #
02169  M00S01983.ssalter +++|
02170  M00S01984.ssalter +++|        IF SM$STS1[1] NQ 0
02171  M00S01985.ssalter +++|        THEN
02172  M00S01986.ssalter +++|          BEGIN  # DISPLAY ACCESSOR STATUS FROM 2ND CU #
02173  M00S01987.ssalter +++|          IF B<PATH$DF"U$ON",1>SM$STS1[1] EQ 1
02174  M00S01988.ssalter +++|          THEN
02175  M00S01989.ssalter +++|            BEGIN
02176  M00S01990.ssalter +++|            POKEDIS ( TEMP ,30 , 1 , ALTK$ONLINE );
02177  M00S01991.ssalter +++|            END
02178  M00S01992.ssalter +++|
02179  M00S01993.ssalter +++|          ELSE
02180  M00S01994.ssalter +++|            BEGIN
02181  M00S01995.ssalter +++|            POKEDIS ( TEMP , 30 , 1 , ALTK$OFFLINE );
02182  M00S01996.ssalter +++|            END
02183  M00S01997.ssalter +++|
02184  M00S01998.ssalter +++|          IF B<PATH$DF"U$RQ$DIAG",1>SM$STS1[1] EQ 1
02185  M00S01999.ssalter +++|          THEN
02186  M00S02000.ssalter +++|            BEGIN
02187  M00S02001.ssalter +++|            POKEDIS ( TEMP , 30 , 1 , ALTK$MAINT );
02188  M00S02002.ssalter +++|            END
02189  M00S02003.ssalter +++|
02190  M00S02004.ssalter +++|          END  # DISPLAY ACCESSOR STATUS FROM 2ND CU #
02191  M00S02005.ssalter +++|
Line S02006 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02192  M01S02006.ssalte1 ---|        IF NOT SM$ON$ACK[1] AND NOT SM$DAG$ACK[1]
Line S00165 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02193  M01S00165.ssalte1 +++|        IF NOT (SM$ON$ACK[1] OR SM$DAG$ACK[1])
02194  M00S02007.ssalter +++|        THEN
02195  M00S02008.ssalter +++|          BEGIN
02196  M00S02009.ssalter +++|          POKEDIS ( TEMP , 48 , 1 , BLANK );
02197  M00S02010.ssalter +++|          END
02198  M00S02011.ssalter +++|
02199  M00S02012.ssalter +++|        END
02200  M00S02013.ssalter +++|
02201  M00S02014.ssalter +++|      TEMP = 8 ;                     # SET FIRST DRD LINE #
02202  M00S02015.ssalter +++|      IF D0$EXIST[1]
02203  M00S02016.ssalter +++|      THEN
02204  M00S02017.ssalter +++|        BEGIN
02205  M00S02018.ssalter +++|        POKEDIS ( TEMP , 11 , 1 , CHAR$D0[0] );
Line S00166 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02206  M01S00166.ssalte1 +++|        IF D0$SUN[1] GQ 10
02207  M01S00167.ssalte1 +++|        THEN                         # DRD ORDINAL HAS 2 CHARACTERS #
02208  M01S00168.ssalte1 +++|          BEGIN  # TWO #
02209  M01S00169.ssalte1 +++|          POKEDIS(TEMP,10,2,CHAR$2D0[0]);
02210  M01S00170.ssalte1 +++|          END  # TWO #
02211  M01S00171.ssalte1 +++|
02212  M00S02019.ssalter +++|        IF D0$ON[1]
02213  M00S02020.ssalter +++|        THEN
02214  M00S02021.ssalter +++|          BEGIN
02215  M00S02022.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$ONLINE );
02216  M00S02023.ssalter +++|          END
02217  M00S02024.ssalter +++|
02218  M00S02025.ssalter +++|        ELSE
02219  M00S02026.ssalter +++|          BEGIN
02220  M00S02027.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$OFFLINE );
02221  M00S02028.ssalter +++|          END
02222  M00S02029.ssalter +++|
02223  M00S02030.ssalter +++|        IF D0$DIAG[1]
02224  M00S02031.ssalter +++|        THEN
02225  M00S02032.ssalter +++|          BEGIN
02226  M00S02033.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$MAINT );
02227  M00S02034.ssalter +++|          END
02228  M00S02035.ssalter +++|
02229  M00S02036.ssalter +++|        END
02230  M00S02037.ssalter +++|
02231  M00S02038.ssalter +++|      IF D0$STSP[1] NQ 0
02232  M00S02039.ssalter +++|      THEN
02233  M00S02040.ssalter +++|        BEGIN  # DISPLAY DRD STATUS FROM 1ST CU #
02234  M00S02041.ssalter +++|        IF B<PATH$DF"U$ON",1>D0$STSP[1] EQ 1
02235  M00S02042.ssalter +++|        THEN
02236  M00S02043.ssalter +++|          BEGIN
02237  M00S02044.ssalter +++|          POKEDIS ( TEMP , 20 , 1 , ALTK$ONLINE );
02238  M00S02045.ssalter +++|          END
02239  M00S02046.ssalter +++|
02240  M00S02047.ssalter +++|        ELSE
02241  M00S02048.ssalter +++|          BEGIN
02242  M00S02049.ssalter +++|          POKEDIS ( TEMP , 20 , 1 , ALTK$OFFLINE );
02243  M00S02050.ssalter +++|          END
02244  M00S02051.ssalter +++|
02245  M00S02052.ssalter +++|        IF B<PATH$DF"U$RQ$DIAG",1>D0$STSP[1] EQ 1
02246  M00S02053.ssalter +++|        THEN
02247  M00S02054.ssalter +++|          BEGIN
02248  M00S02055.ssalter +++|          POKEDIS ( TEMP , 20 , 1 , ALTK$MAINT );
02249  M00S02056.ssalter +++|          END
02250  M00S02057.ssalter +++|
02251  M00S02058.ssalter +++|        END  # DISPLAY DRD STATUS FROM 1ST CU #
02252  M00S02059.ssalter +++|
02253  M00S02060.ssalter +++|      IF D0$STSS[1] NQ 0
02254  M00S02061.ssalter +++|      THEN
02255  M00S02062.ssalter +++|        BEGIN  # DISPLAY DRD STATUS FROM 2ND CU #
02256  M00S02063.ssalter +++|        IF B<PATH$DF"U$ON",1>D0$STSS[1] EQ 1
02257  M00S02064.ssalter +++|        THEN
02258  M00S02065.ssalter +++|          BEGIN
02259  M00S02066.ssalter +++|          POKEDIS ( TEMP , 29 , 1 , ALTK$ONLINE );
02260  M00S02067.ssalter +++|          END
02261  M00S02068.ssalter +++|
02262  M00S02069.ssalter +++|        ELSE
02263  M00S02070.ssalter +++|          BEGIN
02264  M00S02071.ssalter +++|          POKEDIS ( TEMP , 29 , 1 , ALTK$OFFLINE );
02265  M00S02072.ssalter +++|          END
02266  M00S02073.ssalter +++|
02267  M00S02074.ssalter +++|        IF B<PATH$DF"U$RQ$DIAG",1>D0$STSS[1] EQ 1
02268  M00S02075.ssalter +++|        THEN
02269  M00S02076.ssalter +++|          BEGIN
02270  M00S02077.ssalter +++|          POKEDIS ( TEMP , 29 , 1 , ALTK$MAINT );
02271  M00S02078.ssalter +++|          END
02272  M00S02079.ssalter +++|
02273  M00S02080.ssalter +++|        END  # DISPLAY DRD STATUS FROM 2ND CU #
02274  M00S02081.ssalter +++|
02275  M00S02082.ssalter +++|      IF NOT D0$EXIST[1]
02276  M00S02083.ssalter +++|      THEN
02277  M00S02084.ssalter +++|        BEGIN
02278  M00S02085.ssalter +++|        POKEDIS ( TEMP , 2 , 5 , ALTK$B5 );  # BLANK NON-EXISTENT DRD #
Line S02086 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02279  M01S02086.ssalte1 ---|        POKEDIS ( TEMP , 11 , 1 , BLANK );
Line S00172 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02280  M01S00172.ssalte1 +++|        POKEDIS(TEMP,10,2,"  ");
02281  M00S02087.ssalter +++|        POKEDIS ( TEMP , 37 , 1 , BLANK );
02282  M00S02088.ssalter +++|        POKEDIS ( TEMP , 48 , 1 , BLANK );
02283  M00S02089.ssalter +++|        END
02284  M00S02090.ssalter +++|
02285  M00S02091.ssalter +++|      TEMP = 10;                     # SET SECOND DRD LINE #
02286  M00S02092.ssalter +++|      IF D1$EXIST[1]
02287  M00S02093.ssalter +++|      THEN
02288  M00S02094.ssalter +++|        BEGIN
02289  M00S02095.ssalter +++|        POKEDIS ( TEMP , 11 , 1 , CHAR$D1[0] );
Line S00173 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02290  M01S00173.ssalte1 +++|        IF D1$SUN[1] GQ 10
02291  M01S00174.ssalte1 +++|        THEN                         # DRD ORDINAL HAS 2 CHARACTERS #
02292  M01S00175.ssalte1 +++|          BEGIN  # TWO #
02293  M01S00176.ssalte1 +++|          POKEDIS(TEMP,10,2,CHAR$2D1[0]);
02294  M01S00177.ssalte1 +++|          END  # TWO #
02295  M01S00178.ssalte1 +++|
02296  M00S02096.ssalter +++|        IF D1$ON[1]
02297  M00S02097.ssalter +++|        THEN
02298  M00S02098.ssalter +++|          BEGIN
02299  M00S02099.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$ONLINE );
02300  M00S02100.ssalter +++|          END
02301  M00S02101.ssalter +++|
02302  M00S02102.ssalter +++|        ELSE
02303  M00S02103.ssalter +++|          BEGIN
02304  M00S02104.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$OFFLINE );
02305  M00S02105.ssalter +++|          END
02306  M00S02106.ssalter +++|
02307  M00S02107.ssalter +++|        IF D1$DIAG[1]
02308  M00S02108.ssalter +++|        THEN
02309  M00S02109.ssalter +++|          BEGIN
02310  M00S02110.ssalter +++|          POKEDIS ( TEMP , 37 , 1 , ALTK$MAINT );
02311  M00S02111.ssalter +++|          END
02312  M00S02112.ssalter +++|
02313  M00S02113.ssalter +++|
02314  M00S02114.ssalter +++|        END
02315  M00S02115.ssalter +++|
02316  M00S02116.ssalter +++|      IF D1$STSP[1] NQ 0
02317  M00S02117.ssalter +++|      THEN
02318  M00S02118.ssalter +++|        BEGIN  # DISPLAY DRD STATUS FROM 1ST CU #
02319  M00S02119.ssalter +++|        IF B<PATH$DF"U$ON",1>D1$STSP[1] EQ 1
02320  M00S02120.ssalter +++|        THEN
02321  M00S02121.ssalter +++|          BEGIN
02322  M00S02122.ssalter +++|          POKEDIS ( TEMP , 20 , 1 , ALTK$ONLINE );
02323  M00S02123.ssalter +++|          END
02324  M00S02124.ssalter +++|
02325  M00S02125.ssalter +++|        ELSE
02326  M00S02126.ssalter +++|          BEGIN
02327  M00S02127.ssalter +++|          POKEDIS ( TEMP , 20 , 1 , ALTK$OFFLINE );
02328  M00S02128.ssalter +++|          END
02329  M00S02129.ssalter +++|
02330  M00S02130.ssalter +++|        IF B<PATH$DF"U$RQ$DIAG",1>D1$STSP[1] EQ 1
02331  M00S02131.ssalter +++|        THEN
02332  M00S02132.ssalter +++|          BEGIN
02333  M00S02133.ssalter +++|          POKEDIS ( TEMP , 20 , 1 , ALTK$MAINT );
02334  M00S02134.ssalter +++|          END
02335  M00S02135.ssalter +++|
02336  M00S02136.ssalter +++|        END  # DISPLAY DRD STATUS FROM 1ST CU #
02337  M00S02137.ssalter +++|
02338  M00S02138.ssalter +++|      IF D1$STSS[1] NQ 0
02339  M00S02139.ssalter +++|      THEN
02340  M00S02140.ssalter +++|        BEGIN  # DISPLAY DRD STATUS FROM 2ND CU #
02341  M00S02141.ssalter +++|        IF B<PATH$DF"U$ON",1>D1$STSS[1] EQ 1
02342  M00S02142.ssalter +++|        THEN
02343  M00S02143.ssalter +++|          BEGIN
02344  M00S02144.ssalter +++|          POKEDIS ( TEMP , 29 , 1 , ALTK$ONLINE );
02345  M00S02145.ssalter +++|          END
02346  M00S02146.ssalter +++|
02347  M00S02147.ssalter +++|        ELSE
02348  M00S02148.ssalter +++|          BEGIN
02349  M00S02149.ssalter +++|          POKEDIS ( TEMP , 29 , 1 , ALTK$OFFLINE );
02350  M00S02150.ssalter +++|          END
02351  M00S02151.ssalter +++|
02352  M00S02152.ssalter +++|        IF B<PATH$DF"U$RQ$DIAG",1>D1$STSS[1] EQ 1
02353  M00S02153.ssalter +++|        THEN
02354  M00S02154.ssalter +++|          BEGIN
02355  M00S02155.ssalter +++|          POKEDIS ( TEMP , 29 , 1 , ALTK$MAINT );
02356  M00S02156.ssalter +++|          END
02357  M00S02157.ssalter +++|
02358  M00S02158.ssalter +++|        END  # DISPLAY DRD STATUS FROM 2ND CU #
02359  M00S02159.ssalter +++|
02360  M00S02160.ssalter +++|      IF NOT D1$EXIST[1]
02361  M00S02161.ssalter +++|      THEN
02362  M00S02162.ssalter +++|        BEGIN
02363  M00S02163.ssalter +++|        POKEDIS ( TEMP , 2 , 5 , ALTK$B5 );  # BLANK NON-EXISTENT DRDS #
Line S02164 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02364  M01S02164.ssalte1 ---|        POKEDIS ( TEMP , 11 , 1 , BLANK );
Line S00179 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02365  M01S00179.ssalte1 +++|        POKEDIS(TEMP,10,2,"  ");
02366  M00S02165.ssalter +++|        POKEDIS ( TEMP , 37 , 1 , BLANK );
02367  M00S02166.ssalter +++|        POKEDIS ( TEMP , 48 , 1 , BLANK );
02368  M00S02167.ssalter +++|        END
02369  M00S02168.ssalter +++|
02370  M00S02169.ssalter +++|
02371  M00S02170.ssalter +++|      END  # DISPSM #
02372  M00S02171.ssalter +++|
02373  M00S02172.ssalter +++|    TERM
02374  M00S02173.ssalter +++|PROC KDISCIF ( INDEX, CIFORD );
02375  M00S02174.ssalter +++|# TITLE KDISCIF - DISPLAY CIF DATA FROM UDT.                          #
02376  M00S02175.ssalter +++|
02377  M00S02176.ssalter +++|      BEGIN  # KDISCIF #
02378  M00S02177.ssalter +++|
02379  M00S02178.ssalter +++|#
02380  M00S02179.ssalter +++|**    KDIXCIF - DISPLAY CIF DATA FROM UDT.
02381  M00S02180.ssalter +++|*
02382  M00S02181.ssalter +++|*     PROC KDISCIF ( INDEX, CIFORD )
02383  M00S02182.ssalter +++|*
02384  M00S02183.ssalter +++|*     ENTRY - INDEX = DEVICE ADDRESS OF CIF TO DISPLAY.
02385  M00S02184.ssalter +++|*             CIFORD = INDICATOR DESCRIBING COLUMN TO UPDATE.
02386  M00S02185.ssalter +++|*
02387  M00S02186.ssalter +++|*     EXIT - *CU* DISPLAY UPDATED FOR CIF COLUMNS.
02388  M00S02187.ssalter +++|*
02389  M00S02188.ssalter +++|#
02390  M00S02189.ssalter +++|
02391  M00S02190.ssalter +++|      ITEM INDEX      I;             # INPUT VARIABLE #
02392  M00S02191.ssalter +++|      ITEM CIFORD     I;             # INPUT VARIABLE #
02393  M00S02192.ssalter +++|
02394  M00S02193.ssalter +++|#
02395  M00S02194.ssalter +++|****  PROC KDISCIF - XREF LIST BEGIN.
02396  M00S02195.ssalter +++|#
02397  M00S02196.ssalter +++|
02398  M00S02197.ssalter +++|      XREF
02399  M00S02198.ssalter +++|        BEGIN
02400  M00S02199.ssalter +++|        PROC POKEDIS;                # POKE DATA INTO *K* DISPLAY
02401  M00S02200.ssalter +++|                                       BUFFER #
02402  M00S02201.ssalter +++|        PROC KDISDTX;                # UPDATE DTI/DTO DISPLAY #
02403  M00S02202.ssalter +++|        END
02404  M00S02203.ssalter +++|
02405  M00S02204.ssalter +++|#
02406  M00S02205.ssalter +++|*     KDISCIF - XREF LIST END.
02407  M00S02206.ssalter +++|#
02408  M00S02207.ssalter +++|
02409  M00S02208.ssalter +++|      DEF LISTCON   #0#;             # DO NOT LIST COMMON DECKS #
02410  M00S02209.ssalter +++|
02411  M00S02210.ssalter +++|*CALL,COMBFAS
02412  M00S02211.ssalter +++|*CALL,COMBUDT
02413  M00S02212.ssalter +++|*CALL,COMTALT
02414  M00S02213.ssalter +++|                                               CONTROL EJECT;
02415  M00S02214.ssalter +++|
02416  M00S02215.ssalter +++|      ITEM COLUMN     I;             # COLUMN NUMBER #
02417  M00S02216.ssalter +++|      ITEM COLUMNM4   I;             # COLUMN NUMBER MINUS 4 #
02418  M00S02217.ssalter +++|      ITEM I          I;             # INTEGER SCRATCH #
02419  M00S02218.ssalter +++|      ITEM J          I;             # LOOP VARIABLE #
02420  M00S02219.ssalter +++|      ITEM LINE       I;             # LINE IN *K* DISPLAY #
02421  M00S02220.ssalter +++|                                               CONTROL EJECT;
02422  M00S02221.ssalter +++|      IF CIFORD EQ 0
02423  M00S02222.ssalter +++|      THEN
02424  M00S02223.ssalter +++|        BEGIN
02425  M00S02224.ssalter +++|        COLUMN = 15;
02426  M00S02225.ssalter +++|        COLUMNM4 = 11;
02427  M00S02226.ssalter +++|        END
02428  M00S02227.ssalter +++|
02429  M00S02228.ssalter +++|      ELSE
02430  M00S02229.ssalter +++|        BEGIN
02431  M00S02230.ssalter +++|        COLUMN = 8;
02432  M00S02231.ssalter +++|        COLUMNM4 = 4;
02433  M00S02232.ssalter +++|        END
02434  M00S02233.ssalter +++|
02435  M00S02234.ssalter +++|
02436  M00S02235.ssalter +++|      IF INDEX GQ 2
02437  M00S02236.ssalter +++|      THEN
02438  M00S02237.ssalter +++|        BEGIN
02439  M00S02238.ssalter +++|        GOTO CIF23;                  # JUMP IF CIF2 OR CIF3 #
02440  M00S02239.ssalter +++|        END
02441  M00S02240.ssalter +++|
02442  M00S02241.ssalter +++|#
02443  M00S02242.ssalter +++|*     LOOP FOR EACH DTI/DTO
02444  M00S02243.ssalter +++|#
02445  M00S02244.ssalter +++|
02446  M00S02245.ssalter +++|      SLOWFOR J = 0 STEP 1 UNTIL MAX$CIF
02447  M00S02246.ssalter +++|      DO
02448  M00S02247.ssalter +++|        BEGIN  # CIF01 TESTING #
02449  M00S02248.ssalter +++|        LINE = J + 10;
02450  M00S02249.ssalter +++|        I = J*6;
02451  M00S02250.ssalter +++|        IF B< I+(INDEX*24)+PATH$DF"U$EXISTS", 1>UD$CIF01[1] EQ 0
02452  M00S02251.ssalter +++|        THEN
02453  M00S02252.ssalter +++|          BEGIN
02454  M00S02253.ssalter +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK DISPLAY #
02455  M00S02254.ssalter +++|          KDISDTX(J);
02456  M00S02255.ssalter +++|          TEST J;
02457  M00S02256.ssalter +++|          END
02458  M00S02257.ssalter +++|
02459  M00S02258.ssalter +++|        KDISDTX ( J );               # DISPLAY DTI/DTO ON OUT #
02460  M00S02259.ssalter +++|
02461  M00S02260.ssalter +++|        IF B< I+(INDEX*24)+PATH$DF"U$RQ$DIAG", 1 >UD$CIF01[1] NQ 0
02462  M00S02261.ssalter +++|          THEN
02463  M00S02262.ssalter +++|          BEGIN
02464  M00S02263.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # DIAG MODE #
02465  M00S02264.ssalter +++|          TEST J;
02466  M00S02265.ssalter +++|          END
02467  M00S02266.ssalter +++|
02468  M00S02267.ssalter +++|        IF B< I+(INDEX*24)+PATH$DF"U$ON", 1 >UD$CIF01[1] NQ 0
02469  M00S02268.ssalter +++|        THEN
02470  M00S02269.ssalter +++|          BEGIN
02471  M00S02270.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02472  M00S02271.ssalter +++|          TEST J;
02473  M00S02272.ssalter +++|          END
02474  M00S02273.ssalter +++|
02475  M00S02274.ssalter +++|        ELSE
02476  M00S02275.ssalter +++|          BEGIN
02477  M00S02276.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MD #
02478  M00S02277.ssalter +++|          END
02479  M00S02278.ssalter +++|
02480  M00S02279.ssalter +++|        END  # CIF01 TESTING #
02481  M00S02280.ssalter +++|
02482  M00S02281.ssalter +++|      RETURN;
02483  M00S02282.ssalter +++|
02484  M00S02283.ssalter +++|CIF23:
02485  M00S02284.ssalter +++|
02486  M00S02285.ssalter +++|#
02487  M00S02286.ssalter +++|*     LOOP FOR EACH DTI/DTO ON CIF2/CIF3
02488  M00S02287.ssalter +++|#
02489  M00S02288.ssalter +++|
02490  M00S02289.ssalter +++|      INDEX = INDEX - 2;
02491  M00S02290.ssalter +++|      SLOWFOR J = 0 STEP 1 UNTIL MAX$CIF
02492  M00S02291.ssalter +++|      DO
02493  M00S02292.ssalter +++|        BEGIN  # CIF23 TESTING #
02494  M00S02293.ssalter +++|        LINE = J + 10;
02495  M00S02294.ssalter +++|        I = J*6;
02496  M00S02295.ssalter +++|        IF B< I+(INDEX*24)+PATH$DF"U$EXISTS", 1>UD$CIF23[1] EQ 0
02497  M00S02296.ssalter +++|        THEN
02498  M00S02297.ssalter +++|          BEGIN
02499  M00S02298.ssalter +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK DISPLAY #
02500  M00S02299.ssalter +++|          TEST J;
02501  M00S02300.ssalter +++|          END
02502  M00S02301.ssalter +++|
02503  M00S02302.ssalter +++|        KDISDTX ( J );               # DISPLAY DTI/DTO ON OUT #
02504  M00S02303.ssalter +++|
02505  M00S02304.ssalter +++|        IF B< I+(INDEX*24)+PATH$DF"U$RQ$DIAG", 1 >UD$CIF23[1] NQ 0
02506  M00S02305.ssalter +++|          THEN
02507  M00S02306.ssalter +++|          BEGIN
02508  M00S02307.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # DIAG MODE #
02509  M00S02308.ssalter +++|          TEST J;
02510  M00S02309.ssalter +++|          END
02511  M00S02310.ssalter +++|
02512  M00S02311.ssalter +++|        IF B< I+(INDEX*24)+PATH$DF"U$ON", 1 >UD$CIF23[1] NQ 0
02513  M00S02312.ssalter +++|        THEN
02514  M00S02313.ssalter +++|          BEGIN
02515  M00S02314.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02516  M00S02315.ssalter +++|          TEST J;
02517  M00S02316.ssalter +++|          END
02518  M00S02317.ssalter +++|
02519  M00S02318.ssalter +++|        ELSE
02520  M00S02319.ssalter +++|          BEGIN
02521  M00S02320.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MD #
02522  M00S02321.ssalter +++|          END
02523  M00S02322.ssalter +++|
02524  M00S02323.ssalter +++|        END  # CIF23 TESTING #
02525  M00S02324.ssalter +++|
02526  M00S02325.ssalter +++|      RETURN;
02527  M00S02326.ssalter +++|
02528  M00S02327.ssalter +++|      END  # KDISCIF #
02529  M00S02328.ssalter +++|
02530  M00S02329.ssalter +++|    TERM
02531  M00S02330.ssalter +++|PROC KDISDIF ( INDEX );
02532  M00S02331.ssalter +++|# TITLE KDISDIF - DISPLAY DIF DATA FROM UDT.                          #
02533  M00S02332.ssalter +++|
02534  M00S02333.ssalter +++|      BEGIN  # KDISDIF #
02535  M00S02334.ssalter +++|
02536  M00S02335.ssalter +++|#
02537  M00S02336.ssalter +++|**    KDISDIF - DISPLAY DTI/DTO DATA FROM UDT.
02538  M00S02337.ssalter +++|*
02539  M00S02338.ssalter +++|*     PROC KDISDIF ( INDEX )
02540  M00S02339.ssalter +++|*
02541  M00S02340.ssalter +++|*     ENTRY - INDEX = DEVICE ADDRESS OF DIF TO DISPLAY.
02542  M00S02341.ssalter +++|*
02543  M00S02342.ssalter +++|*     EXIT - *CU* DISPLAY UPDATED FOR DIF COLUMNS.
02544  M00S02343.ssalter +++|*
02545  M00S02344.ssalter +++|#
02546  M00S02345.ssalter +++|
02547  M00S02346.ssalter +++|      ITEM INDEX      I;             # INPUT VARIABLE #
02548  M00S02347.ssalter +++|
02549  M00S02348.ssalter +++|#
02550  M00S02349.ssalter +++|****  PROC KDISDIF - XREF LIST BEGIN.
02551  M00S02350.ssalter +++|#
02552  M00S02351.ssalter +++|
02553  M00S02352.ssalter +++|      XREF
02554  M00S02353.ssalter +++|        BEGIN
02555  M00S02354.ssalter +++|        PROC KDISDRC;                # DISPLAY DRC ON OUT #
02556  M00S02355.ssalter +++|        PROC POKEDIS;                # POKE DATA INTO *K* DISPLAY
02557  M00S02356.ssalter +++|                                       BUFFER #
02558  M00S02357.ssalter +++|        END
02559  M00S02358.ssalter +++|
02560  M00S02359.ssalter +++|#
02561  M00S02360.ssalter +++|*     KDISDIF - XREF LIST END.
02562  M00S02361.ssalter +++|#
02563  M00S02362.ssalter +++|
02564  M00S02363.ssalter +++|      DEF LISTCON   #0#;             # DO NOT LIST COMMON DECKS #
02565  M00S02364.ssalter +++|*CALL,COMBFAS
02566  M00S02365.ssalter +++|*CALL,COMBUDT
02567  M00S02366.ssalter +++|*CALL,COMTALT
02568  M00S02367.ssalter +++|                                               CONTROL EJECT;
02569  M00S02368.ssalter +++|
02570  M00S02369.ssalter +++|      ITEM COLUMN     I;             # *K* DISPLAY COLUMN #
02571  M00S02370.ssalter +++|      ITEM COLUMNM4   I;             # *K* DISPLAY COLUMN #
02572  M00S02371.ssalter +++|      ITEM I          I;             # INTEGER SCRATCH #
02573  M00S02372.ssalter +++|      ITEM J          I;             # LOOP VARIABLE #
02574  M00S02373.ssalter +++|      ITEM LINE       I;             # LINE IN *K* DISPLAY #
02575  M00S02374.ssalter +++|                                               CONTROL EJECT;
02576  M00S02375.ssalter +++|
02577  M00S02376.ssalter +++|      COLUMN = 36;                   # POSITION COLUMN #
02578  M00S02377.ssalter +++|      COLUMNM4 = 32;                 # POSITION 5 BLANKS #
Line S02378 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02579  M01S02378.ssalte1 ---|      I = INDEX*12;                  # POSITION TO CORRECT FIELD #
Line S00180 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02580  M01S00180.ssalte1 +++|      I = INDEX*24;                  # POSITION TO CORRECT FIELD #
02581  M00S02379.ssalter +++|
02582  M00S02380.ssalter +++|#
02583  M00S02381.ssalter +++|*     LOOP FOR EACH DIF
02584  M00S02382.ssalter +++|#
02585  M00S02383.ssalter +++|
02586  M00S02384.ssalter +++|      SLOWFOR J = 0 STEP 1 UNTIL MAX$DRC
02587  M00S02385.ssalter +++|      DO
02588  M00S02386.ssalter +++|        BEGIN  # DIF TESTING #
02589  M00S02387.ssalter +++|        LINE = J + 10;
02590  M00S02388.ssalter +++|        IF INDEX EQ 1
02591  M00S02389.ssalter +++|        THEN
02592  M00S02390.ssalter +++|          BEGIN  # ADJUST FOR THE DISPLAY #
Line S02391 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02593  M01S02391.ssalte1 ---|          LINE = LINE + 5;
Line S00181 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02594  M01S00181.ssalte1 +++|          LINE = LINE + 7;
02595  M00S02392.ssalter +++|          END  # ADJUST FOR THE DISPLAY #
02596  M00S02393.ssalter +++|
02597  M00S02394.ssalter +++|
02598  M00S02395.ssalter +++|        KDISDRC ( J );               # DISPLAY DRC ON OUT #
02599  M00S02396.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1>UD$DIF[1] EQ 0
02600  M00S02397.ssalter +++|        THEN
02601  M00S02398.ssalter +++|          BEGIN
02602  M00S02399.ssalter +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK FIELD #
02603  M00S02400.ssalter +++|          TEST J;
02604  M00S02401.ssalter +++|          END
02605  M00S02402.ssalter +++|
02606  M00S02403.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1>UD$DIF[1] NQ 0
02607  M00S02404.ssalter +++|        THEN
02608  M00S02405.ssalter +++|          BEGIN
02609  M00S02406.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
02610  M00S02407.ssalter +++|          TEST J;
02611  M00S02408.ssalter +++|          END
02612  M00S02409.ssalter +++|
02613  M00S02410.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1>UD$DIF[1] NQ 0
02614  M00S02411.ssalter +++|        THEN
02615  M00S02412.ssalter +++|          BEGIN
02616  M00S02413.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02617  M00S02414.ssalter +++|          TEST J;
02618  M00S02415.ssalter +++|          END
02619  M00S02416.ssalter +++|
02620  M00S02417.ssalter +++|        ELSE
02621  M00S02418.ssalter +++|          BEGIN
02622  M00S02419.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MD #
02623  M00S02420.ssalter +++|          END
02624  M00S02421.ssalter +++|
02625  M00S02422.ssalter +++|        END  # DIF TESTING #
02626  M00S02423.ssalter +++|
02627  M00S02424.ssalter +++|      END  # KDISDIF #
02628  M00S02425.ssalter +++|
02629  M00S02426.ssalter +++|    TERM
Line S02427 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02630  M01S02427.ssalte1 ---|    ;
02631  M00S02428.ssalter +++|PROC KDISDRC ( INDEX );
Line S02429 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02632  M01S02429.ssalte1 ---|# TITLE KDISDRC - DISPLAY CIF DATA FROM UDT.                          #
Line S00182 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02633  M01S00182.ssalte1 +++|# TITLE KDISDRC - DISPLAY DRC DATA FROM UDT.                          #
02634  M00S02430.ssalter +++|
02635  M00S02431.ssalter +++|      BEGIN  # KDISDRC #
02636  M00S02432.ssalter +++|
02637  M00S02433.ssalter +++|#
Line S02434 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02638  M01S02434.ssalte1 ---|**    KDIXCIF - DISPLAY CIF DATA FROM UDT.
Line S00183 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02639  M01S00183.ssalte1 +++|**    KDISDRC - DISPLAY DRC DATA FROM UDT.
02640  M00S02435.ssalter +++|*
02641  M00S02436.ssalter +++|*     PROC KDISDRC ( INDEX )
02642  M00S02437.ssalter +++|*
Line S02438 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02643  M01S02438.ssalte1 ---|*     ENTRY - INDEX = DEVICE ADDRESS OF CIF TO DISPLAY.
Line S00184 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02644  M01S00184.ssalte1 +++|*     ENTRY - INDEX = DEVICE ADDRESS OF DRC TO DISPLAY.
02645  M00S02439.ssalter +++|*
Line S02440 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02646  M01S02440.ssalte1 ---|*     EXIT - *CU* DISPLAY UPDATED FOR CIF COLUMNS.
Line S00185 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02647  M01S00185.ssalte1 +++|*     EXIT - *CU* DISPLAY UPDATED FOR *DRC* COLUMNS.
02648  M00S02441.ssalter +++|*
02649  M00S02442.ssalter +++|#
02650  M00S02443.ssalter +++|
02651  M00S02444.ssalter +++|      ITEM INDEX      I;             # INPUT VARIABLE #
02652  M00S02445.ssalter +++|
02653  M00S02446.ssalter +++|#
02654  M00S02447.ssalter +++|****  PROC KDISDRC - XREF LIST BEGIN.
02655  M00S02448.ssalter +++|#
02656  M00S02449.ssalter +++|
02657  M00S02450.ssalter +++|      XREF
02658  M00S02451.ssalter +++|        BEGIN
02659  M00S02452.ssalter +++|        PROC POKEDIS;                # POKE DATA INTO *K* DISPLAY
02660  M00S02453.ssalter +++|                                       BUFFER #
Line S00186 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02661  M01S00186.ssalte1 +++|        FUNC XCDD C(10);             # CONVERT DECIMAL TO DISP CODE #
02662  M00S02454.ssalter +++|        END
02663  M00S02455.ssalter +++|
02664  M00S02456.ssalter +++|#
02665  M00S02457.ssalter +++|*     KDISDRC - XREF LIST END.
02666  M00S02458.ssalter +++|#
02667  M00S02459.ssalter +++|
02668  M00S02460.ssalter +++|      DEF LISTCON #0#;               # DO NOT LIST COMMON DECKS #
02669  M00S02461.ssalter +++|*CALL,COMBFAS
02670  M00S02462.ssalter +++|*CALL,COMBUDT
02671  M00S02463.ssalter +++|*CALL,COMTALT
Line S00187 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02672  M01S00187.ssalte1 +++|
02673  M01S00188.ssalte1 +++|#
02674  M01S00189.ssalte1 +++|*      SWITCH STATEMENT
02675  M01S00190.ssalte1 +++|#
02676  M01S00191.ssalte1 +++|
02677  M01S00192.ssalte1 +++|      SWITCH DRCCOLUMN
02678  M01S00193.ssalte1 +++|        DRC0,
02679  M01S00194.ssalte1 +++|        DRC1,
02680  M01S00195.ssalte1 +++|        DRC2,
02681  M01S00196.ssalte1 +++|        DRC3;
02682  M00S02464.ssalter +++|                                               CONTROL EJECT;
02683  M00S02465.ssalter +++|
02684  M00S02466.ssalter +++|      ITEM COLUMN     I;             # *K* DISPLAY COLUMN #
02685  M00S02467.ssalter +++|      ITEM COLUMNM4   I;             # *K* DISPLAY COLUMN #
02686  M00S02468.ssalter +++|      ITEM I          I;             # INTEGER SCRATCH #
02687  M00S02469.ssalter +++|      ITEM J          I;             # LOOP VARIABLE #
02688  M00S02470.ssalter +++|      ITEM LINE       I;             # LINE IN *K* DISPLAY #
Line S00197 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02689  M01S00197.ssalte1 +++|
02690  M01S00198.ssalte1 +++|#
02691  M01S00199.ssalte1 +++|*     CHARACTER MANIPULATION.
02692  M01S00200.ssalte1 +++|#
02693  M01S00201.ssalte1 +++|
02694  M01S00202.ssalte1 +++|      ARRAY DRDSCR[0:0] S(1);        # FOR DRD ORDINALS > 7 #
02695  M01S00203.ssalte1 +++|        BEGIN
02696  M01S00204.ssalte1 +++|        ITEM CHAR10     C(00,00,10);
02697  M01S00205.ssalte1 +++|        ITEM CHAR2      C(00,48,02);
02698  M01S00206.ssalte1 +++|        ITEM CHAR       C(00,54,01);
02699  M01S00207.ssalte1 +++|        END
02700  M01S00208.ssalte1 +++|
02701  M00S02471.ssalter +++|                                               CONTROL EJECT;
02702  M00S02472.ssalter +++|
02703  M00S02473.ssalter +++|#
02704  M00S02474.ssalter +++|*     INITIALIZE *K* DISPLAY COORDINATES.
02705  M00S02475.ssalter +++|#
02706  M00S02476.ssalter +++|
Line S02477 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02707  M01S02477.ssalte1 ---|      IF INDEX EQ 0
Line S00209 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02708  M01S00209.ssalte1 +++|      IF (INDEX EQ 0 AND UD$DRCP0[1] EQ 0)  ##
02709  M01S00210.ssalte1 +++|        OR (INDEX EQ 1 AND UD$DRCP1[1] EQ 0)  ##
02710  M01S00211.ssalte1 +++|        OR (INDEX EQ 2 AND UD$DRCP2[1] EQ 0)  ##
02711  M01S00212.ssalte1 +++|        OR (INDEX EQ 3 AND UD$DRCP3[1] EQ 0)
02712  M01S00213.ssalte1 +++|      THEN                           # DRC DOES NOT EXIST ON THIS CU #
02713  M01S00214.ssalte1 +++|        BEGIN  # SKIP #
02714  M01S00215.ssalte1 +++|        RETURN;
02715  M01S00216.ssalte1 +++|        END  # SKIP #
02716  M01S00217.ssalte1 +++|
02717  M01S00218.ssalte1 +++|      IF INDEX GR 1
02718  M01S00219.ssalte1 +++|      THEN
02719  M01S00220.ssalte1 +++|        BEGIN                        # ADJUST - EXPANDED CONFIGURATION #
02720  M01S00221.ssalte1 +++|        LINE = 8;
02721  M01S00222.ssalte1 +++|        COLUMN = 42 + (INDEX-2)*7;
02722  M01S00223.ssalte1 +++|        IF INDEX EQ 2
02723  M01S00224.ssalte1 +++|        THEN
02724  M01S00225.ssalte1 +++|          BEGIN
02725  M01S00226.ssalte1 +++|          POKEDIS( LINE , COLUMN , 1 , ALTK$DRC2 );  # SET DRC2 #
02726  M01S00227.ssalte1 +++|          END
02727  M01S00228.ssalte1 +++|
02728  M01S00229.ssalte1 +++|        ELSE
02729  M01S00230.ssalte1 +++|          BEGIN
02730  M01S00231.ssalte1 +++|          POKEDIS ( LINE , COLUMN , 1 , ALTK$DRC3 );  # SET DRC3 #
02731  M01S00232.ssalte1 +++|          END
02732  M01S00233.ssalte1 +++|
02733  M01S00234.ssalte1 +++|        LINE = 10;                   # FIRST LINE OF DRD-S #
02734  M01S00235.ssalte1 +++|        SLOWFOR J = (MAX$DRD + 1) STEP 1 UNTIL MAX$DRDDA
02735  M01S00236.ssalte1 +++|        DO                           # RESET TO SECOND DRD GROUP #
02736  M01S00237.ssalte1 +++|          BEGIN  # RESET #
02737  M01S00238.ssalte1 +++|          IF J LS 10
02738  M01S00239.ssalte1 +++|          THEN                       # DRD IS ONE DIGIT #
02739  M01S00240.ssalte1 +++|            BEGIN  # ONE #
02740  M01S00241.ssalte1 +++|            CHAR10 = XCDD(J);
02741  M01S00242.ssalte1 +++|            POKEDIS(LINE,COLUMN,1,CHAR);
02742  M01S00243.ssalte1 +++|            END  # ONE #
02743  M01S00244.ssalte1 +++|
02744  M01S00245.ssalte1 +++|          ELSE                       # DRD IS TWO DIGITS #
02745  M01S00246.ssalte1 +++|            BEGIN  # TWO #
02746  M01S00247.ssalte1 +++|            CHAR10 = XCDD(J);
02747  M01S00248.ssalte1 +++|            POKEDIS(LINE,COLUMN,2,CHAR2);
02748  M01S00249.ssalte1 +++|            END  # TWO #
02749  M01S00250.ssalte1 +++|
02750  M01S00251.ssalte1 +++|          LINE = LINE + 1;
02751  M01S00252.ssalte1 +++|          END  # RESET #
02752  M01S00253.ssalte1 +++|
02753  M01S00254.ssalte1 +++|        END                          # ADJUST - EXPANDED CONFIGURATION #
02754  M01S00255.ssalte1 +++|
02755  M01S00256.ssalte1 +++|      IF INDEX EQ 0 ##
02756  M01S00257.ssalte1 +++|        OR INDEX EQ 2
02757  M01S00258.ssalte1 +++|
02758  M00S02478.ssalter +++|      THEN
02759  M00S02479.ssalter +++|        BEGIN
Line S02480 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02760  M01S02480.ssalte1 ---|        COLUMN = 43;                 # COLUMN FOR *DRC0* DATA #
Line S00259 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02761  M01S00259.ssalte1 +++|        COLUMN = 43;                 # COLUMN FOR DRC0/DRC2 DATA #
02762  M00S02481.ssalter +++|        COLUMNM4 = 39;
02763  M00S02482.ssalter +++|        END
02764  M00S02483.ssalter +++|
02765  M00S02484.ssalter +++|      ELSE
02766  M00S02485.ssalter +++|        BEGIN
Line S02486 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02767  M01S02486.ssalte1 ---|        COLUMN = 50;                 # COLUMN FOR *DRC1* DATA #
Line S00260 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02768  M01S00260.ssalte1 +++|        COLUMN = 50;                 # COLUMN FOR DRC1/DRC3 DATA #
02769  M00S02487.ssalter +++|        COLUMNM4 = 46;
Line S02488 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02770  M01S02488.ssalte1 ---|        GOTO DRC1;
02771  M00S02489.ssalter +++|        END
02772  M00S02490.ssalter +++|
Line S00261 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02773  M01S00261.ssalte1 +++|      GOTO DRCCOLUMN[INDEX];
02774  M01S00262.ssalte1 +++|
02775  M01S00263.ssalte1 +++|DRC0:
02776  M00S02491.ssalter +++|#
Line S02492 Modification History
M01 (Removed by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02777  M01S02492.ssalte1 ---|*     LOOP FOR EACH DRD
Line S00264 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02778  M01S00264.ssalte1 +++|*     LOOP FOR EACH DRD ON DRC0
02779  M00S02493.ssalter +++|#
02780  M00S02494.ssalter +++|
02781  M00S02495.ssalter +++|      SLOWFOR J = 0 STEP 1 UNTIL MAX$DRD
02782  M00S02496.ssalter +++|      DO
02783  M00S02497.ssalter +++|        BEGIN  # DRD TESTING #
02784  M00S02498.ssalter +++|        LINE = J + 10;
02785  M00S02499.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1>UD$DRCP0[1] EQ 0
02786  M00S02500.ssalter +++|        THEN
02787  M00S02501.ssalter +++|          BEGIN
02788  M00S02502.ssalter +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK FIELD #
02789  M00S02503.ssalter +++|          TEST J;
02790  M00S02504.ssalter +++|          END
02791  M00S02505.ssalter +++|
02792  M00S02506.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1>UD$DRCP0[1] NQ 0
02793  M00S02507.ssalter +++|        THEN
02794  M00S02508.ssalter +++|          BEGIN
02795  M00S02509.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
02796  M00S02510.ssalter +++|          TEST J;
02797  M00S02511.ssalter +++|          END
02798  M00S02512.ssalter +++|
02799  M00S02513.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1>UD$DRCP0[1] NQ 0
02800  M00S02514.ssalter +++|        THEN
02801  M00S02515.ssalter +++|          BEGIN
02802  M00S02516.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02803  M00S02517.ssalter +++|          TEST J;
02804  M00S02518.ssalter +++|          END
02805  M00S02519.ssalter +++|
02806  M00S02520.ssalter +++|        ELSE
02807  M00S02521.ssalter +++|          BEGIN
02808  M00S02522.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MODE #
02809  M00S02523.ssalter +++|          END
02810  M00S02524.ssalter +++|
02811  M00S02525.ssalter +++|        END  # DRD TESTING #
02812  M00S02526.ssalter +++|
02813  M00S02527.ssalter +++|      RETURN;
02814  M00S02528.ssalter +++|
02815  M00S02529.ssalter +++|DRC1:
02816  M00S02530.ssalter +++|
02817  M00S02531.ssalter +++|#
02818  M00S02532.ssalter +++|*     LOOP FOR EACH DRD ON DRC1
02819  M00S02533.ssalter +++|#
02820  M00S02534.ssalter +++|
02821  M00S02535.ssalter +++|      SLOWFOR J = 0 STEP 1 UNTIL MAX$DRD
02822  M00S02536.ssalter +++|      DO
02823  M00S02537.ssalter +++|        BEGIN  # DRD TESTING FOR DRC1 #
02824  M00S02538.ssalter +++|        LINE = J + 10;
02825  M00S02539.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1 >UD$DRCP1[1] EQ 0
02826  M00S02540.ssalter +++|        THEN
02827  M00S02541.ssalter +++|          BEGIN
02828  M00S02542.ssalter +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK FIELD #
02829  M00S02543.ssalter +++|          TEST J;
02830  M00S02544.ssalter +++|          END
02831  M00S02545.ssalter +++|
02832  M00S02546.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1 >UD$DRCP1[1] NQ 0
02833  M00S02547.ssalter +++|        THEN
02834  M00S02548.ssalter +++|          BEGIN
02835  M00S02549.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
02836  M00S02550.ssalter +++|          TEST J;
02837  M00S02551.ssalter +++|          END
02838  M00S02552.ssalter +++|
02839  M00S02553.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1 >UD$DRCP1[1] NQ 0
02840  M00S02554.ssalter +++|        THEN
02841  M00S02555.ssalter +++|          BEGIN
02842  M00S02556.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02843  M00S02557.ssalter +++|          TEST J;
02844  M00S02558.ssalter +++|          END
02845  M00S02559.ssalter +++|
02846  M00S02560.ssalter +++|        ELSE
02847  M00S02561.ssalter +++|          BEGIN
02848  M00S02562.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MODE #
02849  M00S02563.ssalter +++|          END
02850  M00S02564.ssalter +++|
02851  M00S02565.ssalter +++|        END  # DRD TESTING FOR DRC1 #
02852  M00S02566.ssalter +++|
Line S00265 Modification History
M01 (Added by) ssalte1
Seq #  *Modification Id* Act 
----------------------------+
02853  M01S00265.ssalte1 +++|      RETURN;
02854  M01S00266.ssalte1 +++|DRC2:
02855  M01S00267.ssalte1 +++|#
02856  M01S00268.ssalte1 +++|*     LOOP FOR EACH DRD ON DRC2
02857  M01S00269.ssalte1 +++|#
02858  M01S00270.ssalte1 +++|
02859  M01S00271.ssalte1 +++|      SLOWFOR J = 0 STEP 1 UNTIL 1
02860  M01S00272.ssalte1 +++|      DO
02861  M01S00273.ssalte1 +++|        BEGIN                        #DRD TESTING FOR DRC 2 #
02862  M01S00274.ssalte1 +++|        LINE = J + 10;
02863  M01S00275.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1 >UD$DRCP2[1] EQ 0
02864  M01S00276.ssalte1 +++|        THEN
02865  M01S00277.ssalte1 +++|          BEGIN
02866  M01S00278.ssalte1 +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK FIELD #
02867  M01S00279.ssalte1 +++|          TEST J;
02868  M01S00280.ssalte1 +++|          END
02869  M01S00281.ssalte1 +++|
02870  M01S00282.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1 >UD$DRCP2[1] NQ 0
02871  M01S00283.ssalte1 +++|        THEN
02872  M01S00284.ssalte1 +++|          BEGIN
02873  M01S00285.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
02874  M01S00286.ssalte1 +++|          TEST J;
02875  M01S00287.ssalte1 +++|          END
02876  M01S00288.ssalte1 +++|
02877  M01S00289.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1 >UD$DRCP2[1] NQ 0
02878  M01S00290.ssalte1 +++|        THEN
02879  M01S00291.ssalte1 +++|          BEGIN
02880  M01S00292.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02881  M01S00293.ssalte1 +++|          TEST J;
02882  M01S00294.ssalte1 +++|          END
02883  M01S00295.ssalte1 +++|
02884  M01S00296.ssalte1 +++|        ELSE
02885  M01S00297.ssalte1 +++|          BEGIN
02886  M01S00298.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MODE #
02887  M01S00299.ssalte1 +++|          END
02888  M01S00300.ssalte1 +++|
02889  M01S00301.ssalte1 +++|        END  # DRD TESTING FOR DRC2 #
02890  M01S00302.ssalte1 +++|      COLUMN = COLUMN + 1;
02891  M01S00303.ssalte1 +++|      SLOWFOR J = 2 STEP 1 UNTIL MAX$DRD
02892  M01S00304.ssalte1 +++|      DO
02893  M01S00305.ssalte1 +++|        BEGIN  # DRD TESTING #
02894  M01S00306.ssalte1 +++|        LINE = J + 10;
02895  M01S00307.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1 >UD$DRCP2[1] EQ 0
02896  M01S00308.ssalte1 +++|        THEN
02897  M01S00309.ssalte1 +++|          BEGIN
02898  M01S00310.ssalte1 +++|          POKEDIS ( LINE, COLUMNM4, 6, ALTK$B6 );  # BLANK FIELD #
02899  M01S00311.ssalte1 +++|          TEST J;
02900  M01S00312.ssalte1 +++|          END
02901  M01S00313.ssalte1 +++|
02902  M01S00314.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1 >UD$DRCP2[1] NQ 0
02903  M01S00315.ssalte1 +++|        THEN
02904  M01S00316.ssalte1 +++|          BEGIN
02905  M01S00317.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
02906  M01S00318.ssalte1 +++|          TEST J;
02907  M01S00319.ssalte1 +++|          END
02908  M01S00320.ssalte1 +++|
02909  M01S00321.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1 >UD$DRCP2[1] NQ 0
02910  M01S00322.ssalte1 +++|        THEN
02911  M01S00323.ssalte1 +++|          BEGIN
02912  M01S00324.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02913  M01S00325.ssalte1 +++|          TEST J;
02914  M01S00326.ssalte1 +++|          END
02915  M01S00327.ssalte1 +++|
02916  M01S00328.ssalte1 +++|        ELSE
02917  M01S00329.ssalte1 +++|          BEGIN
02918  M01S00330.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MODE #
02919  M01S00331.ssalte1 +++|          END
02920  M01S00332.ssalte1 +++|
02921  M01S00333.ssalte1 +++|        END  # DRD TESTING FOR DRC2 #
02922  M01S00334.ssalte1 +++|
02923  M01S00335.ssalte1 +++|      RETURN;
02924  M01S00336.ssalte1 +++|DRC3:
02925  M01S00337.ssalte1 +++|
02926  M01S00338.ssalte1 +++|#
02927  M01S00339.ssalte1 +++|*     LOOP FOR EACH DRD ON DRC 3
02928  M01S00340.ssalte1 +++|#
02929  M01S00341.ssalte1 +++|
02930  M01S00342.ssalte1 +++|      SLOWFOR J = 0 STEP 1 UNTIL 1
02931  M01S00343.ssalte1 +++|      DO
02932  M01S00344.ssalte1 +++|      BEGIN  # DRD TESTING #
02933  M01S00345.ssalte1 +++|        LINE = J + 10;
02934  M01S00346.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1 >UD$DRCP3[1] EQ 0
02935  M01S00347.ssalte1 +++|        THEN
02936  M01S00348.ssalte1 +++|          BEGIN
02937  M01S00349.ssalte1 +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK FIELD #
02938  M01S00350.ssalte1 +++|          TEST J;
02939  M01S00351.ssalte1 +++|          END
02940  M01S00352.ssalte1 +++|
02941  M01S00353.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1 >UD$DRCP3[1] NQ 0
02942  M01S00354.ssalte1 +++|        THEN
02943  M01S00355.ssalte1 +++|          BEGIN
02944  M01S00356.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
02945  M01S00357.ssalte1 +++|          TEST J;
02946  M01S00358.ssalte1 +++|          END
02947  M01S00359.ssalte1 +++|
02948  M01S00360.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1 >UD$DRCP3[1] NQ 0
02949  M01S00361.ssalte1 +++|        THEN
02950  M01S00362.ssalte1 +++|          BEGIN
02951  M01S00363.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02952  M01S00364.ssalte1 +++|          TEST J;
02953  M01S00365.ssalte1 +++|          END
02954  M01S00366.ssalte1 +++|
02955  M01S00367.ssalte1 +++|        ELSE
02956  M01S00368.ssalte1 +++|          BEGIN
02957  M01S00369.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MODE #
02958  M01S00370.ssalte1 +++|          END
02959  M01S00371.ssalte1 +++|
02960  M01S00372.ssalte1 +++|        END  # DRD TESTING FOR DRC3 #
02961  M01S00373.ssalte1 +++|
02962  M01S00374.ssalte1 +++|      COLUMN = COLUMN + 1;           # PRESET FOR 2-DIGIT DRD-S #
02963  M01S00375.ssalte1 +++|      SLOWFOR J = 2 STEP 1 UNTIL MAX$DRD
02964  M01S00376.ssalte1 +++|      DO
02965  M01S00377.ssalte1 +++|        BEGIN  # DRD TESTING #
02966  M01S00378.ssalte1 +++|        LINE = J + 10;
02967  M01S00379.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1 >UD$DRCP3[1] EQ 0
02968  M01S00380.ssalte1 +++|        THEN
02969  M01S00381.ssalte1 +++|          BEGIN
02970  M01S00382.ssalte1 +++|          POKEDIS ( LINE, COLUMNM4, 6, ALTK$B6 );  # BLANK FIELD #
02971  M01S00383.ssalte1 +++|          TEST J;
02972  M01S00384.ssalte1 +++|          END
02973  M01S00385.ssalte1 +++|
02974  M01S00386.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1 >UD$DRCP3[1] NQ 0
02975  M01S00387.ssalte1 +++|        THEN
02976  M01S00388.ssalte1 +++|          BEGIN
02977  M01S00389.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
02978  M01S00390.ssalte1 +++|          TEST J;
02979  M01S00391.ssalte1 +++|          END
02980  M01S00392.ssalte1 +++|
02981  M01S00393.ssalte1 +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1 >UD$DRCP3[1] NQ 0
02982  M01S00394.ssalte1 +++|        THEN
02983  M01S00395.ssalte1 +++|          BEGIN
02984  M01S00396.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
02985  M01S00397.ssalte1 +++|          TEST J;
02986  M01S00398.ssalte1 +++|          END
02987  M01S00399.ssalte1 +++|
02988  M01S00400.ssalte1 +++|        ELSE
02989  M01S00401.ssalte1 +++|          BEGIN
02990  M01S00402.ssalte1 +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MODE #
02991  M01S00403.ssalte1 +++|          END
02992  M01S00404.ssalte1 +++|
02993  M01S00405.ssalte1 +++|        END  # DRD TESTING FOR DRC3 #
02994  M00S02567.ssalter +++|      END  # KDSIDRC #
02995  M00S02568.ssalter +++|
02996  M00S02569.ssalter +++|    TERM
02997  M00S02570.ssalter +++|
02998  M00S02571.ssalter +++|PROC KDISDTX ( INDEX );
02999  M00S02572.ssalter +++|# TITLE KDISDTX - DISPLAY DTI/DTO DATA FROM UDT.                      #
03000  M00S02573.ssalter +++|
03001  M00S02574.ssalter +++|      BEGIN  # KDISDTX #
03002  M00S02575.ssalter +++|
03003  M00S02576.ssalter +++|#
03004  M00S02577.ssalter +++|**    KDISDTX - DISPLAY DTI/DTO DATA FROM UDT.
03005  M00S02578.ssalter +++|*
03006  M00S02579.ssalter +++|*     PROC KDISDTX ( INDEX )
03007  M00S02580.ssalter +++|*
03008  M00S02581.ssalter +++|*     ENTRY - INDEX = DEVICE ADDRESS OF DTI/DTO TO DISPLAY.
03009  M00S02582.ssalter +++|*
03010  M00S02583.ssalter +++|*     EXIT - *CU* DISPLAY UPDATED FOR DTI/DTO COLUMNS.
03011  M00S02584.ssalter +++|*
03012  M00S02585.ssalter +++|#
03013  M00S02586.ssalter +++|
03014  M00S02587.ssalter +++|      ITEM INDEX      I;             # INPUT VARIABLE #
03015  M00S02588.ssalter +++|
03016  M00S02589.ssalter +++|#
03017  M00S02590.ssalter +++|****  PROC KDISDTX - XREF LIST BEGIN.
03018  M00S02591.ssalter +++|#
03019  M00S02592.ssalter +++|
03020  M00S02593.ssalter +++|      XREF
03021  M00S02594.ssalter +++|        BEGIN
03022  M00S02595.ssalter +++|        PROC POKEDIS;                # POKE DATA INTO *K* DISPLAY
03023  M00S02596.ssalter +++|                                       BUFFER #
03024  M00S02597.ssalter +++|        PROC KDISDIF;                # DISPLAY DIF STATUS #
03025  M00S02598.ssalter +++|        END
03026  M00S02599.ssalter +++|
03027  M00S02600.ssalter +++|#
03028  M00S02601.ssalter +++|*     KDISDTX - XREF LIST END.
03029  M00S02602.ssalter +++|#
03030  M00S02603.ssalter +++|
03031  M00S02604.ssalter +++|      DEF LISTCON   #0#;             # DO NOT LIST COMMON DECKS #
03032  M00S02605.ssalter +++|*CALL,COMBFAS
03033  M00S02606.ssalter +++|*CALL,COMBUDT
03034  M00S02607.ssalter +++|*CALL,COMTALT
03035  M00S02608.ssalter +++|                                               CONTROL EJECT;
03036  M00S02609.ssalter +++|
03037  M00S02610.ssalter +++|      ITEM COLUMN     I;             # *K* DISPLAY COLUMN #
03038  M00S02611.ssalter +++|      ITEM COLUMNM4   I;             # *K* DISPLAY COLUMN #
03039  M00S02612.ssalter +++|      ITEM I          I;             # INTEGER SCRATCH #
03040  M00S02613.ssalter +++|      ITEM J          I;             # LOOP VARIABLE #
03041  M00S02614.ssalter +++|      ITEM LINE       I;             # LINE IN *K* DISPLAY #
03042  M00S02615.ssalter +++|                                               CONTROL EJECT;
03043  M00S02616.ssalter +++|
03044  M00S02617.ssalter +++|#
03045  M00S02618.ssalter +++|*     INITIALIZE *K* DISPLAY COORDINATES.
03046  M00S02619.ssalter +++|#
03047  M00S02620.ssalter +++|
03048  M00S02621.ssalter +++|      IF INDEX LQ MAX$DTI
03049  M00S02622.ssalter +++|      THEN
03050  M00S02623.ssalter +++|        BEGIN
03051  M00S02624.ssalter +++|        COLUMN = 22;                 # COLUMN FOR *DTI* DATA #
03052  M00S02625.ssalter +++|        COLUMNM4 = 18;
03053  M00S02626.ssalter +++|        END
03054  M00S02627.ssalter +++|
03055  M00S02628.ssalter +++|      ELSE
03056  M00S02629.ssalter +++|        BEGIN
03057  M00S02630.ssalter +++|        COLUMN = 29;                 # COLUMN FO *DTO* DATA #
03058  M00S02631.ssalter +++|        COLUMNM4 = 25;
03059  M00S02632.ssalter +++|        GOTO DTO;                    # PROCESS *DTO* REQUEST #
03060  M00S02633.ssalter +++|        END
03061  M00S02634.ssalter +++|
03062  M00S02635.ssalter +++|      I = INDEX*12;                  # POSITION TO CORRECT FIELD #
03063  M00S02636.ssalter +++|
03064  M00S02637.ssalter +++|#
03065  M00S02638.ssalter +++|*     LOOP FOR EACH DTI
03066  M00S02639.ssalter +++|#
03067  M00S02640.ssalter +++|
03068  M00S02641.ssalter +++|      SLOWFOR J = 0 STEP 1 UNTIL MAX$DIF
03069  M00S02642.ssalter +++|      DO
03070  M00S02643.ssalter +++|        BEGIN  # DTI TESTING #
03071  M00S02644.ssalter +++|        LINE = J + 10;
03072  M00S02645.ssalter +++|        IF INDEX EQ 1
03073  M00S02646.ssalter +++|        THEN
03074  M00S02647.ssalter +++|          BEGIN  # ADJUST FOR THE DISPLAY #
03075  M00S02648.ssalter +++|          LINE = LINE + 5;
03076  M00S02649.ssalter +++|          END  # ADJUST FOR THE DISPLAY #
03077  M00S02650.ssalter +++|
03078  M00S02651.ssalter +++|
03079  M00S02652.ssalter +++|        KDISDIF ( J );               # DISPLAY DIF ON OUT #
03080  M00S02653.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1>UD$DTI[1] EQ 0
03081  M00S02654.ssalter +++|        THEN
03082  M00S02655.ssalter +++|          BEGIN
03083  M00S02656.ssalter +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK FIELD #
03084  M00S02657.ssalter +++|          TEST J;
03085  M00S02658.ssalter +++|          END
03086  M00S02659.ssalter +++|
03087  M00S02660.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1>UD$DTI[1] NQ 0
03088  M00S02661.ssalter +++|        THEN
03089  M00S02662.ssalter +++|          BEGIN
03090  M00S02663.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
03091  M00S02664.ssalter +++|          TEST J;
03092  M00S02665.ssalter +++|          END
03093  M00S02666.ssalter +++|
03094  M00S02667.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1>UD$DTI[1] NQ 0
03095  M00S02668.ssalter +++|        THEN
03096  M00S02669.ssalter +++|          BEGIN
03097  M00S02670.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
03098  M00S02671.ssalter +++|          TEST J;
03099  M00S02672.ssalter +++|          END
03100  M00S02673.ssalter +++|
03101  M00S02674.ssalter +++|        ELSE
03102  M00S02675.ssalter +++|          BEGIN
03103  M00S02676.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MD #
03104  M00S02677.ssalter +++|          END
03105  M00S02678.ssalter +++|
03106  M00S02679.ssalter +++|        END  # DTI TESTING #
03107  M00S02680.ssalter +++|
03108  M00S02681.ssalter +++|      RETURN;
03109  M00S02682.ssalter +++|
03110  M00S02683.ssalter +++|DTO:
03111  M00S02684.ssalter +++|
03112  M00S02685.ssalter +++|      INDEX = INDEX - 2;
03113  M00S02686.ssalter +++|      I = INDEX*12;
03114  M00S02687.ssalter +++|      SLOWFOR J = 0 STEP 1 UNTIL MAX$DIF
03115  M00S02688.ssalter +++|      DO
03116  M00S02689.ssalter +++|        BEGIN  # DTO TESTING #
03117  M00S02690.ssalter +++|        LINE = J + 10;
03118  M00S02691.ssalter +++|        IF INDEX EQ 1
03119  M00S02692.ssalter +++|        THEN
03120  M00S02693.ssalter +++|          BEGIN  # ADJUST FOR THE DISPLAY #
03121  M00S02694.ssalter +++|          LINE = LINE + 5;
03122  M00S02695.ssalter +++|          END  # ADJUST FOR THE DISPLAY #
03123  M00S02696.ssalter +++|
03124  M00S02697.ssalter +++|        KDISDIF ( J );               # DISPLAY DIF ON OUT #
03125  M00S02698.ssalter +++|
03126  M00S02699.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$EXISTS", 1>UD$DTO[1] EQ 0
03127  M00S02700.ssalter +++|        THEN
03128  M00S02701.ssalter +++|          BEGIN
03129  M00S02702.ssalter +++|          POKEDIS ( LINE, COLUMNM4, 5, ALTK$B5 );  # BLANK FIELD #
03130  M00S02703.ssalter +++|          TEST J;
03131  M00S02704.ssalter +++|          END
03132  M00S02705.ssalter +++|
03133  M00S02706.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$RQ$DIAG", 1>UD$DTO[1] NQ 0
03134  M00S02707.ssalter +++|        THEN
03135  M00S02708.ssalter +++|          BEGIN
03136  M00S02709.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$MAINT );  # SET DIAG MODE #
03137  M00S02710.ssalter +++|          TEST J;
03138  M00S02711.ssalter +++|          END
03139  M00S02712.ssalter +++|
03140  M00S02713.ssalter +++|        IF B< (J*6)+I+PATH$DF"U$ON", 1>UD$DTO[1] NQ 0
03141  M00S02714.ssalter +++|        THEN
03142  M00S02715.ssalter +++|          BEGIN
03143  M00S02716.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$ONLINE );  # ONLINE MODE #
03144  M00S02717.ssalter +++|          TEST J;
03145  M00S02718.ssalter +++|          END
03146  M00S02719.ssalter +++|
03147  M00S02720.ssalter +++|        ELSE
03148  M00S02721.ssalter +++|          BEGIN
03149  M00S02722.ssalter +++|          POKEDIS ( LINE, COLUMN, 1, ALTK$OFFLINE );  # OFFLINE MD #
03150  M00S02723.ssalter +++|          END
03151  M00S02724.ssalter +++|
03152  M00S02725.ssalter +++|        END  # DTO TESTING #
03153  M00S02726.ssalter +++|
03154  M00S02727.ssalter +++|      INDEX = INDEX +2;
03155  M00S02728.ssalter +++|
03156  M00S02729.ssalter +++|      END  # KDISDTX #
03157  M00S02730.ssalter +++|
03158  M00S02731.ssalter +++|    TERM
03159  M00S02732.ssalter +++|PROC POKEDIS ( LINE, CHAR, COUNT, VALUE );
03160  M00S02733.ssalter +++|
03161  M00S02734.ssalter +++|# TITLE POKEDIS - SET VALUE IN DISPLAY.                               #
03162  M00S02735.ssalter +++|
03163  M00S02736.ssalter +++|      BEGIN  # POKEDIS #
03164  M00S02737.ssalter +++|
03165  M00S02738.ssalter +++|#
03166  M00S02739.ssalter +++|**    POKEDIS - SET CHARACTER VALUE IN DISPLAY.
03167  M00S02740.ssalter +++|*
03168  M00S02741.ssalter +++|*     *POKEDIS* POKES A CHARACTER  INTO AN EXISTING
03169  M00S02742.ssalter +++|*     *SM* OR *CU* DIPLAY. THE CHARACTER INIDICATES THE
03170  M00S02743.ssalter +++|*     CURRENT OR REQUESTED STATE OF ONE OF PATHS/NODES
03171  M00S02744.ssalter +++|*     IN THE M860 CURRENTLY UNDER INSPECTION BY *SSALTER*.
03172  M00S02745.ssalter +++|*
03173  M00S02746.ssalter +++|*     ENTRY
03174  M00S02747.ssalter +++|*       LINE - ONE OF THE (LF$AL$NLIN) LINES IN THE *K* DISPLAY.
03175  M00S02748.ssalter +++|*       CHAR - THE STARTING COLUMN NUMBER TO BE USED.
03176  M00S02749.ssalter +++|*       COUNT - THE NUMBER OF CHARACTERS IN THE STRING.
03177  M00S02750.ssalter +++|*       VALUE - THE CHARACTER STRING TO BE INSERTED.
03178  M00S02751.ssalter +++|*
03179  M00S02752.ssalter +++|*
03180  M00S02753.ssalter +++|*     EXIT
03181  M00S02754.ssalter +++|*
03182  M00S02755.ssalter +++|*       CHARACTER(S) POKED INTO THE DISPLAY.
03183  M00S02756.ssalter +++|#
03184  M00S02757.ssalter +++|
03185  M00S02758.ssalter +++|#
03186  M00S02759.ssalter +++|**** PROC POKEDIS - XREF LIST BEGIN.
03187  M00S02760.ssalter +++|#
03188  M00S02761.ssalter +++|
03189  M00S02762.ssalter +++|      XREF
03190  M00S02763.ssalter +++|        BEGIN
03191  M00S02764.ssalter +++|        END
03192  M00S02765.ssalter +++|
03193  M00S02766.ssalter +++|#
03194  M00S02767.ssalter +++|**** PROC POKEDIS - XREF LIST END.
03195  M00S02768.ssalter +++|#
03196  M00S02769.ssalter +++|
03197  M00S02770.ssalter +++|      DEF LISTCON   #0#;             # DO NOT LIST COMMON DECKS #
03198  M00S02771.ssalter +++|*CALL,COMBFAS
03199  M00S02772.ssalter +++|*CALL,COMTALT
03200  M00S02773.ssalter +++|
03201  M00S02774.ssalter +++|      ITEM LINE       I;             # INPUT PARAMETER #
03202  M00S02775.ssalter +++|      ITEM CHAR       I;             # INPUT PARAMETER #
03203  M00S02776.ssalter +++|      ITEM COUNT      I;             # INPUT PARAMETER #
03204  M00S02777.ssalter +++|      ITEM VALUE      C(10);         # INPUT PARAMETER #
03205  M00S02778.ssalter +++|                                               CONTROL EJECT;
03206  M00S02779.ssalter +++|
03207  M00S02780.ssalter +++|#
03208  M00S02781.ssalter +++|*     SET CHARACTER(S) INTO DISPLAY
03209  M00S02782.ssalter +++|#
03210  M00S02783.ssalter +++|
03211  M00S02784.ssalter +++|      C<CHAR,COUNT>SM$LN[LINE] = VALUE;
03212  M00S02785.ssalter +++|      END  # POKEDIS #
03213  M00S02786.ssalter +++|
03214  M00S02787.ssalter +++|    TERM
03215  M00S02788.ssalter +++|PROC UCPREQ((REQTYPE),(REQCODE),RESPCODE);
03216  M00S02789.ssalter +++|# TITLE UCPREQ - ISSUES TYPE 1 OR 5 UCP REQUEST TO EXEC.              #
03217  M00S02790.ssalter +++|
03218  M00S02791.ssalter +++|      BEGIN  # UCPREQ #
03219  M00S02792.ssalter +++|
03220  M00S02793.ssalter +++|#
03221  M00S02794.ssalter +++|**    UCPREQ - ISSUES A TYPE 1 OR 5 UCP REQUEST TO EXEC.
03222  M00S02795.ssalter +++|*
03223  M00S02796.ssalter +++|*     PROC UCPREQ((REQTYPE),(REQCODE),RESPCODE)
03224  M00S02797.ssalter +++|*
03225  M00S02798.ssalter +++|*     ENTRY    (REQTYPE)   = REQUEST TYPE.
03226  M00S02799.ssalter +++|*              (REQCODE)   = REQUEST CODE.
03227  M00S02800.ssalter +++|*              (USER$FAM)  = FAMILY NAME.
03228  M00S02801.ssalter +++|*              (REQID$AL)     = REQUESTOR ID.
03229  M00S02802.ssalter +++|*              (SSID$AL)      = SUBSYSTEM ID.
03230  M00S02803.ssalter +++|*              P<CPR>      = FWA OF CALLSS PARAMETER BLOCK.
03231  M00S02804.ssalter +++|*
03232  M00S02805.ssalter +++|*     EXIT     (RESPCODE) = RESPONSE FROM EXEC.
03233  M00S02806.ssalter +++|*
03234  M00S02807.ssalter +++|*     MESSAGES  SSALTER ABNORMAL, UCPREQ.
03235  M00S02808.ssalter +++|*
03236  M00S02809.ssalter +++|*     NOTES    THE CALLSS PARAMETER REQUEST BLOCK IS SET
03237  M00S02810.ssalter +++|*              UP FOR A TYPE 1 OR TYPE 5 UCP REQUEST AND
03238  M00S02811.ssalter +++|*              THE REQUEST IS ISSUED TO EXEC.
03239  M00S02812.ssalter +++|#
03240  M00S02813.ssalter +++|
03241  M00S02814.ssalter +++|      ITEM REQTYPE    I;             # REQUEST TYPE #
03242  M00S02815.ssalter +++|      ITEM REQCODE    I;             # REQUEST CODE #
03243  M00S02816.ssalter +++|      ITEM RESPCODE   I;             # RESPONSE FROM EXEC #
03244  M00S02817.ssalter +++|
03245  M00S02818.ssalter +++|#
03246  M00S02819.ssalter +++|****  PROC UCPREQ - XREF LIST BEGIN.
03247  M00S02820.ssalter +++|#
03248  M00S02821.ssalter +++|
03249  M00S02822.ssalter +++|      XREF
03250  M00S02823.ssalter +++|        BEGIN
03251  M00S02824.ssalter +++|        PROC ABORT;                  # STOPS PROCESSING #
03252  M00S02825.ssalter +++|        PROC CALLSS;                 # ISSUES A UCP/SCP REQUEST #
03253  M00S02826.ssalter +++|        PROC MESSAGE;                # DISPLAYS MESSAGES #
03254  M00S02827.ssalter +++|        PROC RESTPFP;                # RESTORE USER-S *PFP* AND ABORT
03255  M00S02828.ssalter +++|                                       OR RETURN #
03256  M00S02829.ssalter +++|        PROC ZFILL;                  # ZERO FILL A BUFFER #
03257  M00S02830.ssalter +++|        END
03258  M00S02831.ssalter +++|
03259  M00S02832.ssalter +++|#
03260  M00S02833.ssalter +++|****  PROC UCPREQ - XREF LIST END.
03261  M00S02834.ssalter +++|#
03262  M00S02835.ssalter +++|
03263  M00S02836.ssalter +++|      DEF PROCNAME   #"UCPREQ."#;    # PROC NAME #
03264  M00S02837.ssalter +++|
03265  M00S02838.ssalter +++|      DEF LISTCON    #0#;            # DO NOT LIST COMDECKS #
03266  M00S02839.ssalter +++|*CALL COMBFAS
03267  M00S02840.ssalter +++|*CALL COMBCPR
03268  M00S02841.ssalter +++|*CALL COMBPFP
03269  M00S02842.ssalter +++|*CALL,COMBUDT
03270  M00S02843.ssalter +++|*CALL COMSPFM
03271  M00S02844.ssalter +++|*CALL COMTALT
03272  M00S02845.ssalter +++|
03273  M00S02846.ssalter +++|      ITEM I          I;             # LOOP INDUCTION VARIABLE #
03274  M00S02847.ssalter +++|      ITEM LOOPC      B;             # LOOP CONTROL #
03275  M00S02848.ssalter +++|      ITEM WORDCOUNT  I;             # WORD COUNT OF UDT #
03276  M00S02849.ssalter +++|
03277  M00S02850.ssalter +++|                                               CONTROL EJECT;
03278  M00S02851.ssalter +++|
03279  M00S02852.ssalter +++|#
03280  M00S02853.ssalter +++|*     ZERO FILL CALLSS PARAMETER BLOCK.
03281  M00S02854.ssalter +++|#
03282  M00S02855.ssalter +++|
03283  M00S02856.ssalter +++|      ZFILL ( CPR[0], 1 );           # ZERO FIRST WORD #
03284  M00S02857.ssalter +++|      ZFILL ( CPR[3], CPRLEN - 3 );  # ZERO WORDS 4 - CPRLEN #
03285  M00S02858.ssalter +++|
03286  M00S02859.ssalter +++|      CPR$RQT[0] = REQTYPE;          # SET UP PARAMETER BLOCK #
03287  M00S02860.ssalter +++|      CPR$RQC[0] = REQCODE;
03288  M00S02861.ssalter +++|      CPR$RQI[0] = REQID$AL;
03289  M00S02862.ssalter +++|      CPR$RT[0] = 2;                 # HAVE SYSTEM CONTROL REQUEST #
03290  M00S02863.ssalter +++|      CPR$ADDR2 = LOC(UDT$HDR);
03291  M00S02864.ssalter +++|      WORDCOUNT = 0;
03292  M00S02865.ssalter +++|
03293  M00S02866.ssalter +++|      IF REQTYPE EQ TYP"TYP1"
03294  M00S02867.ssalter +++|      THEN                           # TYPE 1 REQUEST #
03295  M00S02868.ssalter +++|        BEGIN
03296  M00S02869.ssalter +++|        CPR$WC[0] = TYP1$WC;
03297  M00S02870.ssalter +++|        END
03298  M00S02871.ssalter +++|
03299  M00S02872.ssalter +++|      ELSE
03300  M00S02873.ssalter +++|        BEGIN  # TYPE 5 OR ILLEGAL REQUEST #
03301  M00S02874.ssalter +++|        IF REQTYPE EQ TYP"TYP5"
03302  M00S02875.ssalter +++|        THEN                         # TYPE 5 REQUEST #
03303  M00S02876.ssalter +++|          BEGIN
03304  M00S02877.ssalter +++|          IF REQCODE EQ REQTYP5"SSA$PUDT"
03305  M00S02878.ssalter +++|          THEN
03306  M00S02879.ssalter +++|            BEGIN
03307  M00S02880.ssalter +++|            CPR$ADDR4 = PRULEN;      # SET COUNT AT *CPUMTR* MAX #
03308  M00S02881.ssalter +++|            CPR$ADDR3 = 0;
03309  M00S02882.ssalter +++|            END
03310  M00S02883.ssalter +++|
03311  M00S02884.ssalter +++|          CPR$WC[0] = TYP5$WC;
03312  M00S02885.ssalter +++|          END
03313  M00S02886.ssalter +++|
03314  M00S02887.ssalter +++|        ELSE                         # ILLEGAL REQUEST TYPE #
03315  M00S02888.ssalter +++|          BEGIN
03316  M00S02889.ssalter +++|          ALTMSG$PROC[0] = PROCNAME;
03317  M00S02890.ssalter +++|          MESSAGE(ALTMSG[0],SYSUDF1);
03318  M00S02891.ssalter +++|          RESTPFP(PFP$ABORT);        # RESTORE USER-S *PFP* AND ABORT #
03319  M00S02892.ssalter +++|          END
03320  M00S02893.ssalter +++|
03321  M00S02894.ssalter +++|        END  # TYPE 5 OR ILLEGAL REQUEST #
03322  M00S02895.ssalter +++|
03323  M00S02896.ssalter +++|      CALLSS(SSID$AL,CPR[0],RCL);
03324  M00S02897.ssalter +++|
03325  M00S02898.ssalter +++|      IF CPR$ES[0] EQ 0
03326  M00S02899.ssalter +++|      THEN
03327  M00S02900.ssalter +++|        BEGIN
03328  M00S02901.ssalter +++|        RESPCODE = CPR$RQR[0];       # RETURN RESPONSE FROM EXEC #
03329  M00S02902.ssalter +++|        END
03330  M00S02903.ssalter +++|
03331  M00S02904.ssalter +++|      ELSE
03332  M00S02905.ssalter +++|        BEGIN
03333  M00S02906.ssalter +++|        RESPCODE = CPR$ES[0];        # RETURN RESPONSE FROM SYSTEM #
03334  M00S02907.ssalter +++|        RETURN;
03335  M00S02908.ssalter +++|        END
03336  M00S02909.ssalter +++|
03337  M00S02910.ssalter +++|      IF REQTYPE NQ TYP"TYP5"
03338  M00S02911.ssalter +++|      THEN
03339  M00S02912.ssalter +++|        BEGIN
03340  M00S02913.ssalter +++|        RETURN;                      # RETURN IF NOT *SSA$PUDT* REQ #
03341  M00S02914.ssalter +++|        END
03342  M00S02915.ssalter +++|
03343  M00S02916.ssalter +++|
03344  M00S02917.ssalter +++|      IF REQCODE NQ REQTYP5"SSA$PUDT"
03345  M00S02918.ssalter +++|      THEN
03346  M00S02919.ssalter +++|        BEGIN
03347  M00S02920.ssalter +++|        RETURN;                      # RETURN IF NOT PASS UDT REQUEST #
03348  M00S02921.ssalter +++|        END
03349  M00S02922.ssalter +++|
03350  M00S02923.ssalter +++|      ELSE
03351  M00S02924.ssalter +++|        BEGIN
03352  M00S02925.ssalter +++|        P<UDT$WORD> = LOC(UDT$HDR);
03353  M00S02926.ssalter +++|        WORDCOUNT = UDT$WORDCNT - PRULEN;
03354  M00S02927.ssalter +++|        LOOPC = FALSE;
03355  M00S02928.ssalter +++|        SLOWFOR I = 0 STEP PRULEN WHILE ( NOT LOOPC )
03356  M00S02929.ssalter +++|        DO
03357  M00S02930.ssalter +++|          BEGIN
03358  M00S02931.ssalter +++|          CPR$ADDR2 = CPR$ADDR2 + PRULEN;
03359  M00S02932.ssalter +++|          CPR$ADDR3 = CPR$ADDR3 + PRULEN;
03360  M00S02933.ssalter +++|          IF WORDCOUNT GR PRULEN
03361  M00S02934.ssalter +++|          THEN
03362  M00S02935.ssalter +++|            BEGIN
03363  M00S02936.ssalter +++|            CPR$ADDR4[0] = PRULEN;
03364  M00S02937.ssalter +++|            WORDCOUNT = WORDCOUNT - PRULEN;
03365  M00S02938.ssalter +++|            END
03366  M00S02939.ssalter +++|
03367  M00S02940.ssalter +++|          ELSE
03368  M00S02941.ssalter +++|            BEGIN
03369  M00S02942.ssalter +++|            CPR$ADDR4[0] = WORDCOUNT;
03370  M00S02943.ssalter +++|            LOOPC = TRUE;
03371  M00S02944.ssalter +++|            END
03372  M00S02945.ssalter +++|
03373  M00S02946.ssalter +++|          CPR$C[0] = FALSE;
03374  M00S02947.ssalter +++|          CPR$ES[0] = 0;
03375  M00S02948.ssalter +++|          CALLSS ( SSID$AL, CPR[0], RCL );
03376  M00S02949.ssalter +++|
03377  M00S02950.ssalter +++|          TEST I;
03378  M00S02951.ssalter +++|          END
03379  M00S02952.ssalter +++|
03380  M00S02953.ssalter +++|        IF CPR$ES[0] NQ 0
03381  M00S02954.ssalter +++|        THEN
03382  M00S02955.ssalter +++|          BEGIN
03383  M00S02956.ssalter +++|          RESPCODE = CPR$ES[0];
03384  M00S02957.ssalter +++|          RETURN;
03385  M00S02958.ssalter +++|          END
03386  M00S02959.ssalter +++|
03387  M00S02960.ssalter +++|        ELSE
03388  M00S02961.ssalter +++|          BEGIN
03389  M00S02962.ssalter +++|          RESPCODE = CPR$RQR[0];
03390  M00S02963.ssalter +++|          END
03391  M00S02964.ssalter +++|
03392  M00S02965.ssalter +++|        END
03393  M00S02966.ssalter +++|
03394  M00S02967.ssalter +++|
03395  M00S02968.ssalter +++|      END  # UCPREQ #
03396  M00S02969.ssalter +++|
03397  M00S02970.ssalter +++|    TERM