Seq # *Modification Id* Act
----------------------------+
00001 M00S00001.ssbld +++|PRGM SSBLD;
00002 M00S00002.ssbld +++|
00003 M00S00003.ssbld +++|
00004 M00S00004.ssbld +++|# TITLE SSBLD - MAIN ROUTINE OF SSBLD. #
00005 M00S00005.ssbld +++|
00006 M00S00006.ssbld +++| BEGIN # SSBLD #
00007 M00S00007.ssbld +++|
00008 M00S00008.ssbld +++|#
00009 M00S00009.ssbld +++|*** SSBLD - BUILD UDT FOR SSEXEC.
00010 M00S00010.ssbld +++|*
00011 M00S00011.ssbld +++|* SSBLD ATTACHES THE FILE SPECIFIED BY THE CONTROL STATEMENT
00012 M00S00012.ssbld +++|* CALL AND BUILDS A DIRECT ACCESS PERMANENT FILE - BUDT
00013 M00S00013.ssbld +++|* UNDER USER INDEX 377760B.
00014 M00S00014.ssbld +++|*
00015 M00S00015.ssbld +++|*
00016 M00S00016.ssbld +++|* SSBLD(PARAMETER1,PARAMTER2) - PARAMETERS ARE OPTIONAL.
00017 M00S00017.ssbld +++|*
00018 M00S00018.ssbld +++|* PARAMETER DESCRIPTION
00019 M00S00019.ssbld +++|*
00020 M00S00020.ssbld +++|* CF USE DIRECT ACCESS PERMANENT FILE *SUDT* UNDER
00021 M00S00021.ssbld +++|* UI = 377760B AS INPUT FOR BUILDING THE UDT.
00022 M00S00022.ssbld +++|*
00023 M00S00023.ssbld +++|* CF=LFN USE DIRECT ACCESS PERMANENT FILE *LFN* UNDER
00024 M00S00024.ssbld +++|* UI = 377760B AS INPUT FOR BUILDING THE UDT.
00025 M00S00025.ssbld +++|*
00026 M00S00026.ssbld +++|* CF OMITTED SAME AS CF.
00027 M00S00027.ssbld +++|*
00028 M00S00028.ssbld +++|* BF USE DIRECT ACCESS PERMANENT FILE *BUDT* UNDER
00029 M00S00029.ssbld +++|* UI = 377760B FOR DESTINATION BUDT FILE.
00030 M00S00030.ssbld +++|*
00031 M00S00031.ssbld +++|* BF=LFN USE DIRECT ACCESS PERMANENT FILE *LFN* UNDER
00032 M00S00032.ssbld +++|* UI = 377760B FOR DESTINATION BUDT FILE.
00033 M00S00033.ssbld +++|*
00034 M00S00034.ssbld +++|* BF OMITTED SAME AS BF.
00035 M00S00035.ssbld +++|*
00036 M00S00036.ssbld +++|* MESSAGES
00037 M00S00037.ssbld +++|*
00038 M00S00038.ssbld +++|* SSBLD ABORT - SYNTAX ERROR.
00039 M00S00039.ssbld +++|* SSBLD - MUST BE SYSTEM ORIGIN.
00040 M00S00040.ssbld +++|* SSBLD - CANNOT RE-ATTACH BUDT FILE.
00041 M00S00041.ssbld +++|* SSBLD - NO SOURCE CONFIGURATION FILE.
00042 M00S00042.ssbld +++|* SSBLD - SUDT FILE BUSY.
00043 M00S00043.ssbld +++|* SSBLD - BUDT FILE BUSY.
00044 M00S00044.ssbld +++|* SSBLD - UNABLE TO DEFINE BUDT FILE.
00045 M00S00045.ssbld +++|* SSBLD - BUDT FILE PROBLEMS.
00046 M00S00046.ssbld +++|* SSBLD - COMPLETE.
00047 M00S00047.ssbld +++|*
00048 M00S00048.ssbld +++|*
00049 M00S00049.ssbld +++|*
Line S00050 Modification History |
M01 (Removed by) | 281l803 |
Seq # *Modification Id* Act
----------------------------+
00050 M01S00050.281l803 ---|* COPYRIGHT CONTROL DATA CORP., 1982.
Line S00001 Modification History |
M01 (Added by) | 281l803 |
Seq # *Modification Id* Act
----------------------------+
00051 M01S00001.281l803 +++|* COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
00052 M00S00051.ssbld +++|#
00053 M00S00052.ssbld +++|
00054 M00S00053.ssbld +++|#
00055 M00S00054.ssbld +++|**** PRGM SSBLD - XREF LIST BEGIN.
00056 M00S00055.ssbld +++|#
00057 M00S00056.ssbld +++|
00058 M00S00057.ssbld +++| XREF
00059 M00S00058.ssbld +++| BEGIN
00060 M00S00059.ssbld +++| PROC ABORT; # CALLS *ABORT* MACRO #
00061 M00S00060.ssbld +++| PROC BLTAB; # SETS UP ARGUMENT LIST #
00062 M00S00061.ssbld +++| PROC BZFILL; # BLANK OR ZERO FILL A BUFFER #
00063 M00S00062.ssbld +++| PROC GETPFP; # GET USER INDEX AND FAMILY #
00064 M00S00063.ssbld +++| PROC GETSPS; # GET SYSTEM ORIGIN PRIVILEDGES #
00065 M00S00064.ssbld +++| PROC MESSAGE; # CALLS MESSAGE MACRO #
00066 M00S00065.ssbld +++| PROC NEXTLIN; # READ NEXT LINE #
00067 M00S00066.ssbld +++| PROC PFD; # *PFM* REQUEST INTERFACE #
00068 M00S00067.ssbld +++| PROC RDSUDT; # READ CONFIGURATION FILE SOURCE #
00069 M00S00068.ssbld +++| PROC RETERN; # RETURN A FILE #
00070 M00S00069.ssbld +++| PROC RESTPFP; # RESTORE USER-S *PFP* #
00071 M00S00070.ssbld +++| PROC WTBUDT; # WRITE UDT TO DISK FILE #
00072 M00S00071.ssbld +++| PROC XARG; # CRACK PARAMETER LIST #
00073 M00S00072.ssbld +++| END
00074 M00S00073.ssbld +++|
00075 M00S00074.ssbld +++|#
00076 M00S00075.ssbld +++|**** PRGM SSBLD - XREF LIST END.
00077 M00S00076.ssbld +++|#
00078 M00S00077.ssbld +++|
00079 M00S00078.ssbld +++| DEF SMMAX #"H"#; # MAXIMUM SM VALUE #
00080 M00S00079.ssbld +++| DEF SMMIN #"A"#; # MINIMUM SM VALUE #
00081 M00S00080.ssbld +++| DEF NOPARAM #-1#; # NO PARAMETER SPECIFIED #
00082 M00S00081.ssbld +++| DEF PROCNAME #"SSBLD."#; # PROCEDURE NAME #
00083 M00S00082.ssbld +++| DEF RSLEN #1#; # RETURN STATUS LENGTH #
00084 M00S00083.ssbld +++| DEF SYNTAXOK #0#; # SYNTAX OK #
00085 M00S00084.ssbld +++| DEF LISTCON #0#; # DO NOT LIST COMDECKS #
00086 M00S00085.ssbld +++|
00087 M00S00086.ssbld +++| CONTROL PRESET;
00088 M00S00087.ssbld +++|*CALL COMBFAS
00089 M00S00088.ssbld +++|*CALL COMBBZF
00090 M00S00089.ssbld +++|*CALL COMBCMD
00091 M00S00090.ssbld +++|*CALL COMBCMS
00092 M00S00091.ssbld +++|*CALL COMBPFP
00093 M00S00092.ssbld +++|*CALL COMBUDT
00094 M00S00093.ssbld +++|*CALL COMSPFM
00095 M00S00094.ssbld +++|*CALL COMTBLD
00096 M00S00095.ssbld +++|*CALL COMTBLP
00097 M00S00096.ssbld +++|
00098 M00S00097.ssbld +++| ITEM ARGLIST U; # ADDRESS OF ARGUMENT TABLE #
00099 M00S00098.ssbld +++| ITEM FLAG U; # ERROR FLAG FOR ASARG #
00100 M00S00099.ssbld +++| ITEM OPTION I; # OPTION TO SKIP PROGRAM NAME #
00101 M00S00100.ssbld +++|
00102 M00S00101.ssbld +++| ARRAY MSGDETAIL1 [0:0] P(4);
00103 M00S00102.ssbld +++| BEGIN # ARRAY MSGDETAIL1 #
00104 M00S00103.ssbld +++| ITEM LEAD1 C(00,00,01) = [" "]; # LEADING BLANK #
00105 M00S00104.ssbld +++| ITEM MSGPFNH C(00,06,04) = ["PFN="]; # PFN= #
00106 M00S00105.ssbld +++| ITEM MSGPFN C(00,30,07); # FILE NAME #
00107 M00S00106.ssbld +++| ITEM MSGFAMH C(01,12,09) = [", FAMILY="]; # FAMILY = #
00108 M00S00107.ssbld +++| ITEM MSGFAM C(02,06,08); # FAMILY AND COMMA #
00109 M00S00108.ssbld +++| ITEM MSGZRO1 U(03,00,12) = [0]; # TERMINATOR #
00110 M00S00109.ssbld +++| END # ARRAY MSGDETAIL1 #
00111 M00S00110.ssbld +++|
00112 M00S00111.ssbld +++|
00113 M00S00112.ssbld +++| ARRAY SPSSTAT [0:0] S(RSLEN);
00114 M00S00113.ssbld +++| BEGIN
00115 M00S00114.ssbld +++| ITEM SPS$STATUS U(00,48,12); # RETURN STATUS #
00116 M00S00115.ssbld +++| END
00117 M00S00116.ssbld +++|
00118 M00S00117.ssbld +++| CONTROL EJECT;
00119 M00S00118.ssbld +++|
00120 M00S00119.ssbld +++|#
00121 M00S00120.ssbld +++|* GET SYSTEM ORIGIN PRIVILEDGES.
00122 M00S00121.ssbld +++|#
00123 M00S00122.ssbld +++|
00124 M00S00123.ssbld +++| GETSPS(SPSSTAT);
00125 M00S00124.ssbld +++| IF SPS$STATUS NQ 0
00126 M00S00125.ssbld +++| THEN
00127 M00S00126.ssbld +++| BEGIN
00128 M00S00127.ssbld +++| BLMSG$LN[0] = " SSBLD - MUST BE SYSTEM ORIGIN.";
00129 M00S00128.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00130 M00S00129.ssbld +++| ABORT; # ABORT #
00131 M00S00130.ssbld +++| END
00132 M00S00131.ssbld +++|
00133 M00S00132.ssbld +++|#
00134 M00S00133.ssbld +++|* SAVE THE USER-S CURRENT FAMILY AND INDEX IN COMMON.
00135 M00S00134.ssbld +++|#
00136 M00S00135.ssbld +++|
00137 M00S00136.ssbld +++| GETPFP(PFP[0]);
00138 M00S00137.ssbld +++| USER$FAM[0] = PFP$FAM[0];
00139 M00S00138.ssbld +++| USER$UI[0] = PFP$UI[0];
00140 M00S00139.ssbld +++|
00141 M00S00140.ssbld +++|
00142 M00S00141.ssbld +++|#
00143 M00S00142.ssbld +++|* CRACK THE PARAMETERS ON THE *SSBLD* CALL.
00144 M00S00143.ssbld +++|#
00145 M00S00144.ssbld +++|
00146 M00S00145.ssbld +++| BLTAB(ARGLIST); # SET UP THE ARGUMENT LIST #
00147 M00S00146.ssbld +++| OPTION = 0; # SKIP OVER PROGRAM NAME #
00148 M00S00147.ssbld +++| XARG(ARGLIST,OPTION,FLAG); # CRACK THE PARAMETERS #
00149 M00S00148.ssbld +++|
00150 M00S00149.ssbld +++| IF FLAG NQ SYNTAXOK
00151 M00S00150.ssbld +++| THEN
00152 M00S00151.ssbld +++| BEGIN
00153 M00S00152.ssbld +++| BLMSG$LN[0] = " SSBLD ABORT - SYNTAX ERROR.";
00154 M00S00153.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1); # SYNTAX ERROR MESSAGE #
00155 M00S00154.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S *PFP* AND ABORT #
00156 M00S00155.ssbld +++| END
00157 M00S00156.ssbld +++|
00158 M00S00157.ssbld +++|#
00159 M00S00158.ssbld +++|* ATTACH SSEXEC UDT SOURCE FILE.
00160 M00S00159.ssbld +++|#
00161 M00S00160.ssbld +++|
00162 M00S00161.ssbld +++| CFNAME = DARG$CF[0];
00163 M00S00162.ssbld +++| BZFILL(CFNAME,TYPFILL"ZFILL",7); # ZERO FILL FILE NAME #
00164 M00S00163.ssbld +++| BEGIN
00165 M00S00164.ssbld +++| PFD("ATTACH",CFNAME,0,"M","R","RC",FLAG,"NA",0,0);
00166 M00S00165.ssbld +++| IF FLAG NQ OK
00167 M00S00166.ssbld +++| THEN
00168 M00S00167.ssbld +++| BEGIN # PROCESS ATTACH ERROR FLAG #
00169 M00S00168.ssbld +++| IF FLAG EQ FBS
00170 M00S00169.ssbld +++| THEN # SSEXEC UDT SOURCE FILE BUSY #
00171 M00S00170.ssbld +++| BEGIN
00172 M00S00171.ssbld +++| BLMSG$LN[0] = " SSBLD - SUDT FILE BUSY.";
00173 M00S00172.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00174 M00S00173.ssbld +++| RESTPFP(PFP$ABORT); # RETORE USER-S PFP AND ABORT #
00175 M00S00174.ssbld +++| END
00176 M00S00175.ssbld +++|
00177 M00S00176.ssbld +++| BEGIN
00178 M00S00177.ssbld +++| BLMSG$LN[0] = " SSBLD - NO SOURCE CONFIGURATION FILE. ";
00179 M00S00178.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00180 M00S00179.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S *PFP* AND ABORT #
00181 M00S00180.ssbld +++| END
00182 M00S00181.ssbld +++|
00183 M00S00182.ssbld +++| END # PROCESS ATTACH ERROR FLAG #
00184 M00S00183.ssbld +++|
00185 M00S00184.ssbld +++| END
00186 M00S00185.ssbld +++|
00187 M00S00186.ssbld +++|#
00188 M00S00187.ssbld +++|* ATTACH SSEXEC UDT BINARY FILE.
00189 M00S00188.ssbld +++|#
00190 M00S00189.ssbld +++|
00191 M00S00190.ssbld +++| CFNAME = DARG$BF[0];
00192 M00S00191.ssbld +++| BZFILL(CFNAME,TYPFILL"ZFILL",7);
00193 M00S00192.ssbld +++| BEGIN
00194 M00S00193.ssbld +++| PFD("ATTACH",CFNAME,0,"M","W","RC",FLAG,"NA",0,"PW",BUDTPW,0);
00195 M00S00194.ssbld +++| IF FLAG NQ OK
00196 M00S00195.ssbld +++| THEN
00197 M00S00196.ssbld +++| BEGIN # PROCESS ATTACH ERROR FLAG #
00198 M00S00197.ssbld +++| IF FLAG EQ FBS
00199 M00S00198.ssbld +++| THEN # COMMUNICATION FILE BUSY #
00200 M00S00199.ssbld +++| BEGIN
00201 M00S00200.ssbld +++| BLMSG$LN[0] = " SSBLD - BUDT FILE BUSY.";
00202 M00S00201.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00203 M00S00202.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S *PFP* AND ABORT #
00204 M00S00203.ssbld +++| END
00205 M00S00204.ssbld +++|
00206 M00S00205.ssbld +++| IF FLAG EQ FNF
00207 M00S00206.ssbld +++| THEN # FILE DOES NOT EXIST #
00208 M00S00207.ssbld +++| BEGIN
00209 M00S00208.ssbld +++| PFD("DEFINE",CFNAME,0,"RC",FLAG,0,"PW",BUDTPW,0);
00210 M00S00209.ssbld +++| IF FLAG NQ OK
00211 M00S00210.ssbld +++| THEN # PROCESS DEFINE ERROR #
00212 M00S00211.ssbld +++| BEGIN
00213 M00S00212.ssbld +++| BLMSG$LN[0] = " SSBLD - UNABLE TO DEFINE BUDT FILE.";
00214 M00S00213.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00215 M00S00214.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S *PFP* AND ABORT #
00216 M00S00215.ssbld +++| END
00217 M00S00216.ssbld +++|
00218 M00S00217.ssbld +++| END
00219 M00S00218.ssbld +++|
00220 M00S00219.ssbld +++| ELSE # ABNORMAL TERMINATION #
00221 M00S00220.ssbld +++| BEGIN
00222 M00S00221.ssbld +++| BLMSG$LN[0] = " SSBLD - BUDT FILE PROBLEMS. ";
00223 M00S00222.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00224 M00S00223.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S *PFP* AND ABORT #
00225 M00S00224.ssbld +++| END
00226 M00S00225.ssbld +++|
00227 M00S00226.ssbld +++| END # PROCESS ATTACH ERROR FLAG #
00228 M00S00227.ssbld +++|
00229 M00S00228.ssbld +++| END
00230 M00S00229.ssbld +++|
00231 M00S00230.ssbld +++|#
00232 M00S00231.ssbld +++|* READ THE CONFIGURATION SOURCE FILE AND GENERATE UDT.
00233 M00S00232.ssbld +++|#
00234 M00S00233.ssbld +++|
00235 M00S00234.ssbld +++| RDSUDT;
00236 M00S00235.ssbld +++|
00237 M00S00236.ssbld +++|#
00238 M00S00237.ssbld +++|* WRITE THE UDT TO DISK.
00239 M00S00238.ssbld +++|#
00240 M00S00239.ssbld +++|
00241 M00S00240.ssbld +++| WTBUDT;
00242 M00S00241.ssbld +++|
00243 M00S00242.ssbld +++|#
00244 M00S00243.ssbld +++|* REATTACH UDT FILE, CLEANUP, AND EXIT.
00245 M00S00244.ssbld +++|#
00246 M00S00245.ssbld +++|
00247 M00S00246.ssbld +++| PFD("ATTACH",CFNAME,0,"M","R","RC",FLAG,"PW",BUDTPW,0);
00248 M00S00247.ssbld +++| IF FLAG NQ OK
00249 M00S00248.ssbld +++| THEN # PERMANENT FILE PROBLEM #
00250 M00S00249.ssbld +++| BEGIN
00251 M00S00250.ssbld +++| BLMSG$LN[0] = " SSBLD - CANNOT RE-ATTACH BUDT FILE.";
00252 M00S00251.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00253 M00S00252.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
00254 M00S00253.ssbld +++| END
00255 M00S00254.ssbld +++|
00256 M00S00255.ssbld +++| RETERN(BL$FET[0],RCL);
00257 M00S00256.ssbld +++| BLMSG$LN[0] = " SSBLD COMPLETE."; # SSBLD COMPLETE #
00258 M00S00257.ssbld +++| MESSAGE(BLMSG[0],UDFL1);
00259 M00S00258.ssbld +++| RESTPFP(PFP$END); # RESTORE USER-S *PFP* #
00260 M00S00259.ssbld +++|
00261 M00S00260.ssbld +++| END # SSBLD #
00262 M00S00261.ssbld +++|
00263 M00S00262.ssbld +++| TERM
00264 M00S00263.ssbld +++|PROC RDSUDT;
00265 M00S00264.ssbld +++|
00266 M00S00265.ssbld +++|
00267 M00S00266.ssbld +++|# TITLE RDSUDT - READ *SUDT* OR OTHER SPECIFIED FILE TO MEMORY. #
00268 M00S00267.ssbld +++|
00269 M00S00268.ssbld +++| BEGIN # RDSUDT #
00270 M00S00269.ssbld +++|
00271 M00S00270.ssbld +++|#
00272 M00S00271.ssbld +++|** RDSUDT - READ CONFIGURATION SOURCE FILE TO MEMORY.
00273 M00S00272.ssbld +++|*
00274 M00S00273.ssbld +++|* THIS PROCEDURE READS THE M860 CONFIGURATION SOURCE
00275 M00S00274.ssbld +++|* FILE TO SSBLD-S MEMORY FOR INTERPRETATION PRIOR
00276 M00S00275.ssbld +++|* TO SSBLD GENERATING THE *BUDT* FILE.
00277 M00S00276.ssbld +++|* RDSUDT READS THE CONFIGURATION FILE ONE LINE AT
00278 M00S00277.ssbld +++|* TIME. THESE STATEMENTS MUST APPEAR IN A SPECIFIED ORDER.
00279 M00S00278.ssbld +++|* IF NOT, RDSUDT WILL ABORT THE JOB. THE ORDER IS:
00280 M00S00279.ssbld +++|*
00281 M00S00280.ssbld +++|* ALL *CU* STATEMENTS APPEAR FIRST.
00282 M00S00281.ssbld +++|* ALL *CIF* STATEMENTS APPREAR NEXT.
00283 M00S00282.ssbld +++|* ALL *DTI* STATEMENTS APPEAR NEXT.
00284 M00S00283.ssbld +++|* ALL *DTO* STATEMENTS APPEAR NEXT.
00285 M00S00284.ssbld +++|* ALL *DIF* STATEMENTS APPEAR NEXT.
00286 M00S00285.ssbld +++|* ALL *DRC* STATEMENTS APPEAR NEXT.
00287 M00S00286.ssbld +++|* ALL *DRD* STATEMENTS APPEAR NEXT.
00288 M00S00287.ssbld +++|* ALL *AIF* STATEMENTS APPEAR NEXT.
00289 M00S00288.ssbld +++|* ALL *SM* STATEMENTS APPEAR LAST.
00290 M00S00289.ssbld +++|*
00291 M00S00290.ssbld +++|* THE ABOVE STATEMENTS ARE THE ONLY LEGAL MNEMONIC
00292 M00S00291.ssbld +++|* DESCRIPTORS ALLOWED. USE OF ANY OTHER DESCRIPTOR
00293 M00S00292.ssbld +++|* WILL CAUSE *SSBLD* TO ABORT.
00294 M00S00293.ssbld +++|*
00295 M00S00294.ssbld +++|* AN ASTERISK (*) IN COLUMN ONE INDICATES A COMMENT
00296 M00S00295.ssbld +++|* STATEMENT.
00297 M00S00296.ssbld +++|*
00298 M00S00297.ssbld +++|*
00299 M00S00298.ssbld +++|* PROC RDSUDT.
00300 M00S00299.ssbld +++|*
00301 M00S00300.ssbld +++|* ENTRY NONE.
00302 M00S00301.ssbld +++|*
00303 M00S00302.ssbld +++|* EXIT CONFIGURATION SOURCE FILE READ TO MEMORY.
00304 M00S00303.ssbld +++|* IT WILL BE SCANNED FOR SYNTACTICAL CORRECTNESS
00305 M00S00304.ssbld +++|* AND CORRECT ORDER.
00306 M00S00305.ssbld +++|*
00307 M00S00306.ssbld +++|* MESSAGES
00308 M00S00307.ssbld +++|*
00309 M00S00308.ssbld +++|* RDSUDT - CONFIGURATION FILE EMPTY.
00310 M00S00309.ssbld +++|* RDSUDT - INCORRECT *CU* COUNT.
00311 M00S00310.ssbld +++|* RDSUDT - MISSING *SM* COUNT COMMAND.
00312 M00S00311.ssbld +++|* RDSUDT - CAN-T CRACK *SM* COMMAND.
00313 M00S00312.ssbld +++|* RDSUDT - CH/CIF CONFLICT.
00314 M00S00313.ssbld +++|* RDSUDT - INCORRECT *SM* COUNT.
00315 M00S00314.ssbld +++|* RDUSDT - NULL DIRECTIVE.
00316 M00S00315.ssbld +++|* RDSUDT - *CU* COMMAND MISSING/OUT OF PLACE.
00317 M00S00316.ssbld +++|* RDSUDT - INCORRECT EST ORDINAL.
00318 M00S00317.ssbld +++|* RDSUDT - *CU* ENTRY MISSING = SIGN.
00319 M00S00318.ssbld +++|* RDSUDT - CHANNEL 0 NOT FIRST CHANNEL.
00320 M00S00319.ssbld +++|* RDSUDT - MISSING CHANNELS ON *CU* COMMAND.
00321 M00S00320.ssbld +++|* RDSUDT - *CIF* COMMAND MISSING = SIGN.
00322 M00S00321.ssbld +++|* RDSUDT - *DTI* COMMAND MISSING = SIGN.
00323 M00S00322.ssbld +++|* RDSUDT - *DTO* COMMAND MISSING = SIGN.
00324 M00S00323.ssbld +++|* RDSUDT - *DIF* COMMAND MISSING = SIGN.
00325 M00S00324.ssbld +++|* RDSUDT - *DRC* COMMAND MISSING = SIGN.
00326 M00S00325.ssbld +++|* RDSUDT - *AIF* COMMAND MISSING = SIGN.
00327 M00S00326.ssbld +++|* RDSUDT - *SM* COMMAND MISSING = SIGN.
00328 M00S00327.ssbld +++|* RDSUDT - *SM* COMMAND MISSING COMMA.
00329 M00S00328.ssbld +++|* RDSUDT - INCORRECT DEVICE ADDRESS.
00330 M00S00329.ssbld +++|* RDSUDT - EXTRA ENTRIES ON DIRECTIVE.
00331 M00S00330.ssbld +++|* RDSUDT - INCORRECT CONFIGURATION FILE HEADER.
00332 M00S00331.ssbld +++|* RDSUDT - STATEMENT OUT OF ORDER.
00333 M00S00332.ssbld +++|* RDSUDT - INCORRECT STATUS.
00334 M00S00333.ssbld +++|* RDSUDT - INCORRECT COMMAND TERMINATOR.
00335 M00S00334.ssbld +++|* RDSUDT - EXTRA PATHS TO *DRD*.
00336 M00S00335.ssbld +++|* RDSUDT - EXTRA PATHS TO *SM*.
00337 M00S00336.ssbld +++|* RDSUDT - SOURCE FILE STATEMENT CONFLICT.
00338 M00S00337.ssbld +++|* RDSUDT - COMMAND SYNTAX ERROR.
00339 M00S00338.ssbld +++|* RDSUDT - INCORRECT STATEMENT MNEMONIC.
00340 M00S00339.ssbld +++|* RDSUDT - STATEMENT OUT OF ORDER.
00341 M00S00340.ssbld +++|* RDSUDT - CONFIGURATION FILE STATEMENT CONFLICT.
Line S00341 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00342 M01S00341.ssbld1 ---|* RDSUDT - CONFIGURATION FILE EMPTY.
Line S00001 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00343 M01S00001.ssbld1 +++|* RDSUDT - SM STATEMENT - INCORRECT DS VALUE.
00344 M01S00002.ssbld1 +++|* RDSUDT - SM STATEMENT - INCORRECT ST VALUE.
00345 M01S00003.ssbld1 +++|* RDSUDT - INVALID AIF PATHS.
00346 M00S00342.ssbld +++|*
00347 M00S00343.ssbld +++|#
00348 M00S00344.ssbld +++|
00349 M00S00345.ssbld +++|#
00350 M00S00346.ssbld +++|**** PROC RDSUDT - XREF LIST BEGIN.
00351 M00S00347.ssbld +++|#
00352 M00S00348.ssbld +++|
00353 M00S00349.ssbld +++| XREF
00354 M00S00350.ssbld +++| BEGIN
00355 M00S00351.ssbld +++| PROC BZFILL; # BLANK OR ZERO FILLS AN ITEM #
00356 M00S00352.ssbld +++| PROC MESSAGE; # DISPLAYS MESSAGE IN DAYFILE #
00357 M00S00353.ssbld +++| PROC NEXTLIN; # READ NEXT LINE AND CHECK IT #
00358 M00S00354.ssbld +++| PROC NEXTPRM; # GET NEXT PARAMETER, CHECK IT #
00359 M00S00355.ssbld +++| PROC READ; # READS A FILE #
00360 M00S00356.ssbld +++| PROC READC; # READ ONE LINE #
00361 M00S00357.ssbld +++| PROC READW; # DATA TRANSFER ROUTINE #
00362 M00S00358.ssbld +++| PROC RESTPFP; # RESTORE USER-S *PFP* AND ABORT
00363 M00S00359.ssbld +++| OR RETURN #
00364 M00S00360.ssbld +++| PROC RETERN; # RETURNS A FILE #
00365 M00S00361.ssbld +++| PROC REWIND; # REWINDS A FILE #
00366 M00S00362.ssbld +++| PROC UPDRDST; # UPDATE NODE STATUS #
00367 M00S00363.ssbld +++| FUNC XDXB; # CONVERT DISPLAY CODE TO BINARY #
00368 M00S00364.ssbld +++| PROC ZFILL; # ZERO FILLS A BUFFER #
00369 M00S00365.ssbld +++| PROC ZSETFET; # SETS UP A FET #
00370 M00S00366.ssbld +++| END
00371 M00S00367.ssbld +++|
00372 M00S00368.ssbld +++|
00373 M00S00369.ssbld +++|#
00374 M00S00370.ssbld +++|**** PROC RDSUDT - XREF LIST END.
00375 M00S00371.ssbld +++|#
00376 M00S00372.ssbld +++|
00377 M00S00373.ssbld +++| DEF MSG$BADEST #" RDSUDT - INCORRECT EST ORDINAL. "#;
00378 M00S00374.ssbld +++| DEF MSG$BADADR #" RDSUDT - INCORRECT DEVICE ADDRESS. "#;
00379 M00S00375.ssbld +++| DEF MSG$BADENT #" RDSUDT - EXTRA ENTRIES ON DIRECTIVE."#;
00380 M00S00376.ssbld +++| DEF MSG$BADNUM #" RDSUDT - INCORRECT CONFIGURATION FILE HEADER."#;
00381 M00S00377.ssbld +++| DEF MSG$BADST #" RDSUDT - INCORRECT STATEMENT MNEMONIC."#;
00382 M00S00378.ssbld +++| DEF MSG$BDORD #" RDSUDT - STATEMENT OUT OF ORDER."#;
00383 M00S00379.ssbld +++| DEF MSG$BDST #" RDSUDT - INCORRECT STATUS."#;
00384 M00S00380.ssbld +++| DEF MSG$BDTERM #" RDSUDT - INCORRECT COMMAND TERMINATOR. "#;
00385 M00S00381.ssbld +++| DEF MSG$EXDRD #" RDSUDT - EXTRA PATHS TO *DRD*."#;
00386 M00S00382.ssbld +++| DEF MSG$EXPATH #" RDSUDT - EXTRA PATHS TO *SM*."#;
00387 M00S00383.ssbld +++| DEF MSG$INCCU #" RDUSDT - INCORRECT *CU* COUNT."#;
00388 M00S00384.ssbld +++| DEF MSG$INCSM #" RDSUDT - INCORRECT *SM* COUNT."#;
00389 M01S00004.ssbld1 +++| DEF MSG$INVAIF #" RDSUDT - INVALID AIF PATHS."#;
00390 M01S00005.ssbld1 +++| DEF MSG$SM$DS #" RDSUDT - SM STATEMENT - INCORRECT DS VALUE."#;
00391 M01S00006.ssbld1 +++| DEF MSG$SM$ST #" RDSUDT - SM STATEMENT - INCORRECT ST VALUE."#;
00392 M00S00385.ssbld +++| DEF MSG$STCON #" RDSUDT - SOURCE FILE STATEMENT CONFLICT"#;
00393 M00S00386.ssbld +++| DEF MSG$SYNER #" RDSUDT - COMMAND SYNTAX ERROR"#;
00394 M00S00387.ssbld +++| DEF PROCNAME #"RDSUDT."#; # PROC NAME #
00395 M00S00388.ssbld +++| DEF ZERO #0#; # CONSTANT ZERO #
00396 M00S00389.ssbld +++|
00397 M00S00390.ssbld +++| DEF LISTCON #0#; # DO NOT LIST COMDECKS #
00398 M00S00391.ssbld +++|*CALL COMBFAS
00399 M00S00392.ssbld +++|*CALL COMBBZF
00400 M00S00393.ssbld +++|*CALL COMBFET
00401 M00S00394.ssbld +++|*CALL COMBTDM
00402 M00S00395.ssbld +++|*CALL COMBUDT
00403 M00S00396.ssbld +++|*CALL COMSPFM
00404 M00S00397.ssbld +++|*CALL COMTBLD
00405 M00S00398.ssbld +++|*CALL COMTBLP
00406 M00S00399.ssbld +++|*CALL COMTOUT
00407 M00S00400.ssbld +++|
00408 M00S00401.ssbld +++| ITEM ACCESSOR I; # DEVICE ADDRESS OF M861 #
00409 M00S00402.ssbld +++| ITEM ARGLIST I; # ARGUMENT LIST ADDRESS #
00410 M00S00403.ssbld +++| ITEM BUFP I; # FWA OF BUFFER #
00411 M00S00404.ssbld +++| ITEM CHAR1 C(1); # ONE CHARACTER #
00412 M00S00405.ssbld +++| ITEM CHAR2 C(2); # TWO CHARACTERS #
00413 M01S00007.ssbld1 +++| ITEM CHAR3 C(3); # THREE CHARACTERS #
00414 M00S00406.ssbld +++| ITEM CUNUM I; # ORDINAL OF CURRENT *CU* #
00415 M00S00407.ssbld +++| ITEM CUXX I; # ORDINAL OF PRIMARY *CU* #
00416 M00S00408.ssbld +++| ITEM CUYY I; # ORDINAL OF SECONDARY *CU* #
00417 M00S00409.ssbld +++| ITEM NCOL I; # NEXT COLUMN NUMBER #
00418 M00S00410.ssbld +++| ITEM SCOL I; # STARTING COLUMN NUMBER #
00419 M00S00411.ssbld +++| ITEM DEVTYPE C(3); # DEVICE NMEMONIC #
00420 M00S00412.ssbld +++| ITEM DIRNUM I; # DIRECTIVE NUMBER #
00421 M00S00413.ssbld +++| ITEM DIRLINE C(90); # DIRECTIVE TEXT LINE #
00422 M00S00414.ssbld +++| ITEM DRDNUM I; # ORDINAL OF CURRENT *DRD* #
00423 M00S00415.ssbld +++| ITEM EOR B; # END-OF-RECORD FLAG #
00424 M00S00416.ssbld +++| ITEM FETP I; # FWA OF FET #
00425 M00S00417.ssbld +++| ITEM FOUND B; # LOOP EXIT CONTROL #
00426 M00S00418.ssbld +++| ITEM ARGKEY2 C(2); # ARGUMENT KEY - 2 CHARACTERS #
00427 M00S00419.ssbld +++| ITEM ARGKEY3 C(3); # ARGUMENT KEY - 3 CHARACTERS #
00428 M00S00420.ssbld +++| ITEM NKEY2 C(2); # DIRECTIVE KEY - 2 CHARACTER #
00429 M00S00421.ssbld +++| ITEM OKEY2 C(2); # DIRECTIVE KEY - 2 CHARACTER #
00430 M00S00422.ssbld +++| ITEM NKEY3 C(3); # DIRECTIVE KEY - 3 CHARACTER #
00431 M00S00423.ssbld +++| ITEM OKEY3 C(3); # DIRECTIVE KEY - 3 CHARACTER #
00432 M00S00424.ssbld +++| ITEM KEYOK B; # CONTROL VARIABLE #
00433 M00S00425.ssbld +++| ITEM MASK I; # MASK FOR SPECIAL FILE NAMES #
00434 M00S00426.ssbld +++| ITEM I I; # LOOP INDEX #
00435 M00S00427.ssbld +++| ITEM J I; # LOOP INDEX #
00436 M00S00428.ssbld +++| ITEM K I; # LOOP INDEX #
Line S00429 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00437 M01S00429.ssbld1 ---| ITEM L I; # LOOP INDEX #
00438 M00S00430.ssbld ---| ITEM LFN C(7); # FILE NAME #
00439 M00S00431.ssbld ---| ITEM MAXARG I; # MAXIMUM NUMBER OF ARGUMENTS #
00440 M00S00432.ssbld ---| ITEM LOOPC B; # LOOP CONTROL VARIABLE #
00441 M00S00433.ssbld ---| ITEM LOOPK B; # LOOP CONTROL VARIABLE #
00442 M00S00434.ssbld ---| ITEM LOOPL B; # LOOP CONTROL #
00443 M00S00435.ssbld ---| ITEM NUMCH I; # NUMBER OF CHARACTERS #
00444 M00S00436.ssbld ---| ITEM ORD I; # ORDINAL OF DEVICE TYPE #
Line S00008 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00445 M01S00008.ssbld1 +++| ITEM SAVEDORD I; # SAVED DRD ORDINAL #
00446 M00S00437.ssbld +++| ITEM SMNUM I; # ORDINAL OF CURRENT *SM* #
00447 M00S00438.ssbld +++| ITEM STAT I; # STATUS OF PROCEDURE CALL #
00448 M00S00439.ssbld +++| ITEM TERMINATOR C(1); # TERMINATING CHARACTER #
00449 M00S00440.ssbld +++| ITEM TMPI I; # INTEGER SCRATCH #
00450 M00S00441.ssbld +++| ITEM TMPJ I; # INTEGER SCRATCH #
00451 M00S00442.ssbld +++|
00452 M00S00443.ssbld +++| ARRAY MSG [1:2] S(2); # MESSAGES DISPLAYED #
00453 M00S00444.ssbld +++| BEGIN
00454 M00S00445.ssbld +++| ITEM MSGW C(00,00,20) = ##
00455 M00S00446.ssbld +++| [ "CONFIGURATION FILE READ ",
00456 M00S00447.ssbld +++| " " ];
00457 M00S00448.ssbld +++| END
00458 M00S00449.ssbld +++|
00459 M00S00450.ssbld +++|
00460 M00S00451.ssbld +++|
00461 M00S00452.ssbld +++|#
00462 M00S00453.ssbld +++|* SWITCH STATEMENT
00463 M00S00454.ssbld +++|#
00464 M00S00455.ssbld +++|
00465 M00S00456.ssbld +++| SWITCH DIRECTIVE NULL,
00466 M00S00457.ssbld +++| M862CTLR,
00467 M00S00458.ssbld +++| CHANIF,
00468 M00S00459.ssbld +++| DEVICETI,
00469 M00S00460.ssbld +++| DEVICETO,
00470 M00S00461.ssbld +++| DEVICEIF,
00471 M00S00462.ssbld +++| DATARC,
00472 M00S00463.ssbld +++| NULL,
00473 M00S00464.ssbld +++| ACCIF,
00474 M00S00465.ssbld +++| NULL,
00475 M00S00466.ssbld +++| M861SM;
00476 M00S00467.ssbld +++|
00477 M00S00468.ssbld +++|
00478 M00S00469.ssbld +++|
00479 M00S00470.ssbld +++| CONTROL EJECT;
00480 M00S00471.ssbld +++|
00481 M00S00472.ssbld +++|#
00482 M00S00473.ssbld +++|* SET UP FET FOR CONFIGURATION FILE AND REWIND IT.
00483 M00S00474.ssbld +++|#
00484 M00S00475.ssbld +++|
00485 M00S00476.ssbld +++| LFN = DARG$CF[0];
00486 M00S00477.ssbld +++| FETP = LOC(BL$FET[0]);
00487 M00S00478.ssbld +++| BUFP = LOC(BL$BUF[0]);
00488 M00S00479.ssbld +++| ZSETFET(FETP,LFN,BUFP,BLBUFL,SFETL);
00489 M00S00480.ssbld +++| READ(BL$FET[0],NRCL);
00490 M00S00481.ssbld +++| EOR = FALSE;
00491 M00S00482.ssbld +++|
00492 M00S00483.ssbld +++|#
00493 M00S00484.ssbld +++|* READ FIRST 2 CARDS OF CONFIGURATION SOURCE FILE.
00494 M00S00485.ssbld +++|* CARD 1 CONTAINS NUMBER OF CU-S (LEFT-JUSTIFIED)
00495 M00S00486.ssbld +++|* CARD 2 CONTAINS NUMBER OF SM-S (LEFT-JUSTIFIED)
00496 M00S00487.ssbld +++|#
00497 M00S00488.ssbld +++|
00498 M00S00489.ssbld +++| READC(BL$FET[0],DIRLINE,9,STAT);
00499 M00S00490.ssbld +++| BZFILL(DIRLINE,TYPFILL"BFILL",90);
00500 M00S00491.ssbld +++| IF STAT NQ 0
00501 M00S00492.ssbld +++| THEN
00502 M00S00493.ssbld +++| BEGIN
00503 M00S00494.ssbld +++| BLMSG$LN[0] = " RDSUDT - CONFIGURATION FILE EMPTY.";
00504 M00S00495.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00505 M00S00496.ssbld +++| END
00506 M00S00497.ssbld +++|
00507 M00S00498.ssbld +++| STAT = XDXB(C<0,1>DIRLINE,1,NUM$CU);
00508 M00S00499.ssbld +++| IF STAT NQ 0
00509 M00S00500.ssbld +++| THEN
00510 M00S00501.ssbld +++| BEGIN
00511 M00S00502.ssbld +++| BLMSG$LN[0] = MSG$BADENT;
00512 M00S00503.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00513 M00S00504.ssbld +++| RESTPFP(PFP$ABORT);
00514 M00S00505.ssbld +++| END
00515 M00S00506.ssbld +++|
00516 M00S00507.ssbld +++| BLMSG$LN[0] = DIRLINE;
00517 M00S00508.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00518 M00S00509.ssbld +++| P<UDT$WORD> = LOC(BL$UDT$HDR);
00519 M00S00510.ssbld +++| IF NUM$CU GR MAXCTN OR NUM$CU LQ ZERO
00520 M00S00511.ssbld +++| THEN
00521 M00S00512.ssbld +++| BEGIN
00522 M00S00513.ssbld +++| BLMSG$LN[0] = MSG$INCCU;
00523 M00S00514.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00524 M00S00515.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
00525 M00S00516.ssbld +++| END
00526 M00S00517.ssbld +++|
00527 M00S00518.ssbld +++|#
00528 M00S00519.ssbld +++|* SAVE COUNT OF M862-S
00529 M00S00520.ssbld +++|#
00530 M00S00521.ssbld +++|
00531 M00S00522.ssbld +++| UDT$LINE$CUN = NUM$CU;
00532 M00S00523.ssbld +++|
00533 M00S00524.ssbld +++| READC(BL$FET[0],DIRLINE,9,STAT);
00534 M00S00525.ssbld +++| BZFILL(DIRLINE,TYPFILL"BFILL",90);
00535 M00S00526.ssbld +++| IF STAT NQ 0
00536 M00S00527.ssbld +++| THEN
00537 M00S00528.ssbld +++| BEGIN
00538 M00S00529.ssbld +++| BLMSG$LN[0] = " MISSING *SM* COUNT COMMAND.";
00539 M00S00530.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1); # ERROR MESSAGE #
00540 M00S00531.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
00541 M00S00532.ssbld +++| END
00542 M00S00533.ssbld +++|
00543 M00S00534.ssbld +++| STAT = XDXB(C<0,1>DIRLINE,1,NUM$SM);
00544 M00S00535.ssbld +++| IF STAT NQ 0
00545 M00S00536.ssbld +++| THEN
00546 M00S00537.ssbld +++| BEGIN
00547 M00S00538.ssbld +++| BLMSG$LN[0]= " RDSUDT - CAN-T CRACK *SM* COMMAND. ";
00548 M00S00539.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00549 M00S00540.ssbld +++| RESTPFP(PFP$ABORT);
00550 M00S00541.ssbld +++| END
00551 M00S00542.ssbld +++|
00552 M00S00543.ssbld +++| BLMSG$LN[0] = DIRLINE;
00553 M00S00544.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00554 M00S00545.ssbld +++| IF NUM$SM GR MAXSM OR NUM$SM LQ ZERO
00555 M00S00546.ssbld +++| THEN
00556 M00S00547.ssbld +++| BEGIN
00557 M00S00548.ssbld +++| BLMSG$LN[0] = MSG$INCSM;
00558 M00S00549.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00559 M00S00550.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
00560 M00S00551.ssbld +++| END
00561 M00S00552.ssbld +++|
00562 M00S00553.ssbld +++| UDT$LINE$SMN = NUM$SM;
00563 M00S00554.ssbld +++|
00564 M00S00555.ssbld +++|#
00565 M00S00556.ssbld +++|* INITIALIZE *BUDT* POSITIONING COUNTERS.
00566 M00S00557.ssbld +++|#
00567 M00S00558.ssbld +++|
00568 M00S00559.ssbld +++| CUNUM = 0;
00569 M00S00560.ssbld +++| SMNUM = 0;
00570 M00S00561.ssbld +++|
00571 M00S00562.ssbld +++|#
00572 M00S00563.ssbld +++|* READ DIRECTIVES FROM SOURCE FILE
00573 M00S00564.ssbld +++|#
00574 M00S00565.ssbld +++|
00575 M00S00566.ssbld +++|
00576 M00S00567.ssbld +++| EOR = FALSE;
00577 M00S00568.ssbld +++| SLOWFOR DIRNUM = 1 STEP 1 WHILE NOT EOR
00578 M00S00569.ssbld +++| DO
00579 M00S00570.ssbld +++| BEGIN
00580 M00S00571.ssbld +++|
00581 M00S00572.ssbld +++| NEXTLIN(DIRLINE,STAT,TMPI);
00582 M00S00573.ssbld +++| IF STAT NQ 0
00583 M00S00574.ssbld +++| THEN
00584 M00S00575.ssbld +++| BEGIN
00585 M00S00576.ssbld +++| EOR = TRUE;
00586 M00S00577.ssbld +++| TEST DIRNUM;
00587 M00S00578.ssbld +++| END
00588 M00S00579.ssbld +++|
00589 M00S00580.ssbld +++| BLMSG$LN[0] = DIRLINE;
00590 M00S00581.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00591 M00S00582.ssbld +++|
00592 M00S00583.ssbld +++| GOTO DIRECTIVE[TMPI];
00593 M00S00584.ssbld +++|
00594 M00S00585.ssbld +++|NULL:
00595 M00S00586.ssbld +++| BLMSG$LN[0] = " RDSUDT - NULL DIRECTIVE. ";
00596 M00S00587.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00597 M00S00588.ssbld +++| RESTPFP(PFP$ABORT);
00598 M00S00589.ssbld +++|
00599 M00S00590.ssbld +++|M862CTLR:
00600 M00S00591.ssbld +++| CUNUM = CUNUM + 1;
00601 M00S00592.ssbld +++| P<UDT$CN> = LOC(BL$UDT$M862[CUNUM]);
00602 M00S00593.ssbld +++| ARGKEY2 = C<0,2>DIRLINE;
00603 M00S00594.ssbld +++| ARGKEY3 = " ";
00604 M00S00595.ssbld +++| IF ARGKEY2 NQ NM$KEY2[2]
00605 M00S00596.ssbld +++| THEN
00606 M00S00597.ssbld +++| BEGIN
00607 M00S00598.ssbld +++| BLMSG$LN[0] = ##
00608 M00S00599.ssbld +++| " RDSUDT - *CU* COMMAND MISSING/OUT OF PLACE.";
00609 M00S00600.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00610 M00S00601.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
00611 M00S00602.ssbld +++| END
00612 M00S00603.ssbld +++|
Line S00604 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00613 M01S00604.ssbld1 ---| STAT = XDXB(C<2,2>DIRLINE,0,TMPI);
Line S00009 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00614 M01S00009.ssbld1 +++| STAT = XDXB(C<2,3>DIRLINE,0,TMPI); # ASSUME 3-CHAR EST ORD #
00615 M01S00010.ssbld1 +++| SCOL = 5;
00616 M00S00605.ssbld +++| IF STAT NQ 0
00617 M00S00606.ssbld +++| THEN
00618 M00S00607.ssbld +++| BEGIN
Line S00608 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00619 M01S00608.ssbld1 ---| BLMSG$LN[0] = MSG$BADEST;
00620 M01S00609.ssbld1 ---| MESSAGE(BLMSG[0],SYSUDF1);
00621 M01S00610.ssbld1 ---| RESTPFP(PFP$ABORT);
Line S00011 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00622 M01S00011.ssbld1 +++| STAT = XDXB(C<2,2>DIRLINE,0,TMPI); # ASSUME 2-CHAR EST ORD #
00623 M01S00012.ssbld1 +++| SCOL = 4;
00624 M01S00013.ssbld1 +++| IF STAT NQ 0
00625 M01S00014.ssbld1 +++| THEN # BAD EST ORDINAL #
00626 M01S00015.ssbld1 +++| BEGIN # EXIT #
00627 M01S00016.ssbld1 +++| BLMSG$LN[0] = MSG$BADEST;
00628 M01S00017.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
00629 M01S00018.ssbld1 +++| RESTPFP(PFP$ABORT);
00630 M01S00019.ssbld1 +++| END # EXIT #
00631 M01S00020.ssbld1 +++|
00632 M00S00611.ssbld +++| END
00633 M00S00612.ssbld +++|
Line S00613 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00634 M01S00613.ssbld1 ---| IF TMPI LS 10 OR TMPI GR MAXEST
Line S00021 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00635 M01S00021.ssbld1 +++| IF (TMPI LS O"10") OR (TMPI GR MAXEST)
00636 M00S00614.ssbld +++| THEN
00637 M00S00615.ssbld +++| BEGIN
00638 M00S00616.ssbld +++| BLMSG$LN[0] = MSG$BADEST;
00639 M00S00617.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00640 M00S00618.ssbld +++| RESTPFP(PFP$ABORT);
00641 M00S00619.ssbld +++| END
00642 M00S00620.ssbld +++|
00643 M00S00621.ssbld +++| UD$ESTO[1] = TMPI;
Line S00622 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00644 M01S00622.ssbld1 ---| IF C<4,1>DIRLINE NQ "="
Line S00022 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00645 M01S00022.ssbld1 +++| IF C<SCOL,1>DIRLINE NQ "="
00646 M00S00623.ssbld +++| THEN
00647 M00S00624.ssbld +++| BEGIN
00648 M00S00625.ssbld +++| BLMSG$LN[0] = " RDSUDT - *CU* ENTRY MISSING = SIGN.";
00649 M00S00626.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00650 M00S00627.ssbld +++| RESTPFP(PFP$ABORT);
00651 M00S00628.ssbld +++| END
00652 M00S00629.ssbld +++|
Line S00630 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00653 M01S00630.ssbld1 ---| STAT = XDXB(C<5,1>DIRLINE,0,TMPI);
Line S00023 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00654 M01S00023.ssbld1 +++| SCOL = SCOL + 1;
00655 M01S00024.ssbld1 +++| CHAR1 = C<SCOL,1>DIRLINE;
00656 M01S00025.ssbld1 +++| STAT = XDXB(CHAR1,0,TMPI);
00657 M00S00631.ssbld +++| IF STAT NQ 0
00658 M00S00632.ssbld +++| THEN
00659 M00S00633.ssbld +++| BEGIN
00660 M00S00634.ssbld +++| BLMSG$LN[0] = MSG$BADEST;
00661 M00S00635.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00662 M00S00636.ssbld +++| RESTPFP(PFP$ABORT);
00663 M00S00637.ssbld +++| END
00664 M00S00638.ssbld +++|
00665 M00S00639.ssbld +++| IF (TMPI EQ 1) OR (TMPI EQ 3) OR (TMPI EQ 5) OR (TMPI EQ 7)
00666 M00S00640.ssbld +++| THEN
00667 M00S00641.ssbld +++| BEGIN
00668 M00S00642.ssbld +++| BLMSG$LN[0] = MSG$BADEST;
00669 M00S00643.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00670 M00S00644.ssbld +++| RESTPFP(PFP$ABORT);
00671 M00S00645.ssbld +++| END
00672 M00S00646.ssbld +++|
00673 M01S00026.ssbld1 +++| SCOL = SCOL + 1;
00674 M01S00027.ssbld1 +++| IF C<SCOL,1>DIRLINE NQ COMMA
00675 M01S00028.ssbld1 +++| THEN # BAD SYNTAX #
00676 M01S00029.ssbld1 +++| BEGIN # EXIT #
00677 M01S00030.ssbld1 +++| BLMSG$LN[0] = MSG$SYNER;
00678 M01S00031.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
00679 M01S00032.ssbld1 +++| RESTPFP(PFP$ABORT);
00680 M01S00033.ssbld1 +++| END # EXIT #
00681 M01S00034.ssbld1 +++|
00682 M00S00647.ssbld +++|#
00683 M00S00648.ssbld +++|* STORE M862 DEVICE ADDRESS AND SET EXISTENCE FLAG.
00684 M00S00649.ssbld +++|#
00685 M00S00650.ssbld +++|
00686 M00S00651.ssbld +++| UD$CUDA[1] = TMPI;
00687 M00S00652.ssbld +++| UD$EXIST[1] = TRUE;
Line S00653 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00688 M01S00653.ssbld1 ---| SCOL=7;
Line S00035 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
00689 M01S00035.ssbld1 +++| SCOL = SCOL + 1;
00690 M00S00654.ssbld +++| DEVTYPE = "CH";
00691 M00S00655.ssbld +++| NUMCH = 2;
00692 M00S00656.ssbld +++| LOOPC = FALSE;
00693 M00S00657.ssbld +++| SLOWFOR J = 1 STEP 1 WHILE ( NOT LOOPC )
00694 M00S00658.ssbld +++| DO
00695 M00S00659.ssbld +++| BEGIN
00696 M00S00660.ssbld +++| NEXTPRM(DIRLINE,SCOL,DEVTYPE, ##
00697 M00S00661.ssbld +++| NUMCH,ORD,NCOL,STAT,TERMINATOR);
00698 M00S00662.ssbld +++|
00699 M00S00663.ssbld +++|#
00700 M00S00664.ssbld +++|* INSERT *CH* DATA INTO BUDT
00701 M00S00665.ssbld +++|#
00702 M00S00666.ssbld +++|
00703 M00S00667.ssbld +++| IF ( ORD EQ 0 ) AND ( J NQ 1 ) AND ( STAT NQ 2 )
00704 M00S00668.ssbld +++| THEN
00705 M00S00669.ssbld +++| BEGIN
00706 M00S00670.ssbld +++| BLMSG$LN[0] = " RDSUDT - CHANNEL 0 NOT FIRST CHANNEL.";
00707 M00S00671.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00708 M00S00672.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
00709 M00S00673.ssbld +++| END
00710 M00S00674.ssbld +++|
00711 M00S00675.ssbld +++| IF ( STAT NQ 2 ) AND ( J EQ 1 )
00712 M00S00676.ssbld +++| THEN
00713 M00S00677.ssbld +++| BEGIN
00714 M00S00678.ssbld +++| UD$CHANA[1] = ORD;
00715 M00S00679.ssbld +++| UD$CHEX0[1] = TRUE;
00716 M00S00680.ssbld +++| IF STAT EQ 1
00717 M00S00681.ssbld +++| THEN
00718 M00S00682.ssbld +++| BEGIN
00719 M00S00683.ssbld +++| UD$CHANA$O[1] = TRUE;
00720 M00S00684.ssbld +++| END
00721 M00S00685.ssbld +++|
00722 M00S00686.ssbld +++| ELSE
00723 M00S00687.ssbld +++| BEGIN
00724 M00S00688.ssbld +++| UD$CHANA$O[1] = FALSE;
00725 M00S00689.ssbld +++| END
00726 M00S00690.ssbld +++|
00727 M00S00691.ssbld +++| END
00728 M00S00692.ssbld +++|
00729 M00S00693.ssbld +++| IF ( STAT EQ 2 ) AND ( J EQ 1 )
00730 M00S00694.ssbld +++| THEN
00731 M00S00695.ssbld +++| BEGIN
00732 M00S00696.ssbld +++| UD$CHANA[1] = 0;
00733 M00S00697.ssbld +++| UD$CHANA$O[1] = FALSE;
00734 M00S00698.ssbld +++| END
00735 M00S00699.ssbld +++|
00736 M00S00700.ssbld +++| IF ( STAT NQ 2 ) AND ( J EQ 2 )
00737 M00S00701.ssbld +++| THEN
00738 M00S00702.ssbld +++| BEGIN
00739 M00S00703.ssbld +++| UD$CHANB[1] = ORD;
00740 M00S00704.ssbld +++| UD$CHEX1[1] = TRUE;
00741 M00S00705.ssbld +++| IF STAT EQ 1
00742 M00S00706.ssbld +++| THEN
00743 M00S00707.ssbld +++| BEGIN
00744 M00S00708.ssbld +++| UD$CHANB$O[1] = TRUE;
00745 M00S00709.ssbld +++| END
00746 M00S00710.ssbld +++|
00747 M00S00711.ssbld +++| ELSE
00748 M00S00712.ssbld +++| BEGIN
00749 M00S00713.ssbld +++| UD$CHANB$O[1] = FALSE;
00750 M00S00714.ssbld +++| END
00751 M00S00715.ssbld +++|
00752 M00S00716.ssbld +++| END
00753 M00S00717.ssbld +++|
00754 M00S00718.ssbld +++| IF ( STAT EQ 2 ) AND ( J EQ 2 )
00755 M00S00719.ssbld +++| THEN
00756 M00S00720.ssbld +++| BEGIN
00757 M00S00721.ssbld +++| UD$CHANB[1] = 0;
00758 M00S00722.ssbld +++| UD$CHANB$O[1] = FALSE;
00759 M00S00723.ssbld +++| END
00760 M00S00724.ssbld +++|
00761 M00S00725.ssbld +++| IF ( STAT NQ 2 ) AND ( J EQ 3 )
00762 M00S00726.ssbld +++| THEN
00763 M00S00727.ssbld +++| BEGIN
00764 M00S00728.ssbld +++| UD$CHANC[1] = ORD;
00765 M00S00729.ssbld +++| UD$CHEX2[1] = TRUE;
00766 M00S00730.ssbld +++| IF STAT EQ 1
00767 M00S00731.ssbld +++| THEN
00768 M00S00732.ssbld +++| BEGIN
00769 M00S00733.ssbld +++| UD$CHANC$O[1] = TRUE;
00770 M00S00734.ssbld +++| END
00771 M00S00735.ssbld +++|
00772 M00S00736.ssbld +++| ELSE
00773 M00S00737.ssbld +++| BEGIN
00774 M00S00738.ssbld +++| UD$CHANC$O[1] = FALSE;
00775 M00S00739.ssbld +++| END
00776 M00S00740.ssbld +++|
00777 M00S00741.ssbld +++| END
00778 M00S00742.ssbld +++|
00779 M00S00743.ssbld +++| IF ( STAT EQ 2 ) AND ( J EQ 3 )
00780 M00S00744.ssbld +++| THEN
00781 M00S00745.ssbld +++| BEGIN
00782 M00S00746.ssbld +++| UD$CHANC[1] = 0;
00783 M00S00747.ssbld +++| UD$CHANC$O[1] = FALSE;
00784 M00S00748.ssbld +++| END
00785 M00S00749.ssbld +++|
00786 M00S00750.ssbld +++| IF ( STAT NQ 2 ) AND ( J EQ 4 )
00787 M00S00751.ssbld +++| THEN
00788 M00S00752.ssbld +++| BEGIN
00789 M00S00753.ssbld +++| UD$CHAND[1] = ORD;
00790 M00S00754.ssbld +++| UD$CHEX3[1] = TRUE;
00791 M00S00755.ssbld +++| IF STAT EQ 1
00792 M00S00756.ssbld +++| THEN
00793 M00S00757.ssbld +++| BEGIN
00794 M00S00758.ssbld +++| UD$CHAND$O[1] = TRUE;
00795 M00S00759.ssbld +++| END
00796 M00S00760.ssbld +++|
00797 M00S00761.ssbld +++| ELSE
00798 M00S00762.ssbld +++| BEGIN
00799 M00S00763.ssbld +++| UD$CHAND$O[1] = FALSE;
00800 M00S00764.ssbld +++| END
00801 M00S00765.ssbld +++|
00802 M00S00766.ssbld +++| END
00803 M00S00767.ssbld +++|
00804 M00S00768.ssbld +++| IF ( STAT EQ 2 ) AND ( J EQ 4 )
00805 M00S00769.ssbld +++| THEN
00806 M00S00770.ssbld +++| BEGIN
00807 M00S00771.ssbld +++| UD$CHAND[1] = 0;
00808 M00S00772.ssbld +++| UD$CHAND$O[1] = FALSE;
00809 M00S00773.ssbld +++| END
00810 M00S00774.ssbld +++|
00811 M00S00775.ssbld +++| IF TERMINATOR EQ PERIOD
00812 M00S00776.ssbld +++| THEN
00813 M00S00777.ssbld +++| BEGIN
00814 M00S00778.ssbld +++| LOOPC = TRUE;
00815 M00S00779.ssbld +++| TEST J;
00816 M00S00780.ssbld +++| END
00817 M00S00781.ssbld +++|
00818 M00S00782.ssbld +++| IF J GR MAX$CH
00819 M00S00783.ssbld +++| THEN
00820 M00S00784.ssbld +++| BEGIN
00821 M00S00785.ssbld +++| BLMSG$LN[0] = ##
00822 M00S00786.ssbld +++| "RDSUDT - MISSING CHANNELS ON *CU* COMMAND.";
00823 M00S00787.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00824 M00S00788.ssbld +++| RESTPFP(PFP$ABORT);
00825 M00S00789.ssbld +++| END
00826 M00S00790.ssbld +++|
00827 M00S00791.ssbld +++| SCOL = NCOL;
00828 M00S00792.ssbld +++| TEST J;
00829 M00S00793.ssbld +++| END
00830 M00S00794.ssbld +++|
00831 M00S00795.ssbld +++| TEST DIRNUM;
00832 M00S00796.ssbld +++|
00833 M00S00797.ssbld +++|CHANIF:
00834 M00S00798.ssbld +++| IF( ARGKEY2 NQ NM$KEY2[2] ) AND (ARGKEY3 NQ " ")
00835 M00S00799.ssbld +++| THEN
00836 M00S00800.ssbld +++| BEGIN
00837 M00S00801.ssbld +++| BLMSG$LN[0] = MSG$BDORD;
00838 M00S00802.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00839 M00S00803.ssbld +++| RESTPFP(PFP$ABORT);
00840 M00S00804.ssbld +++| END
00841 M00S00805.ssbld +++|
00842 M00S00806.ssbld +++| ARGKEY3 = NM$KEY3[3];
00843 M00S00807.ssbld +++|
00844 M00S00808.ssbld +++| STAT = XDXB(C<3,1>DIRLINE,0,TMPI);
00845 M00S00809.ssbld +++| IF STAT NQ 0
00846 M00S00810.ssbld +++| THEN
00847 M00S00811.ssbld +++| BEGIN
00848 M00S00812.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
00849 M00S00813.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00850 M00S00814.ssbld +++| RESTPFP(PFP$ABORT);
00851 M00S00815.ssbld +++| END
00852 M00S00816.ssbld +++|
00853 M00S00817.ssbld +++| IF TMPI LS 0 OR TMPI GR 3
00854 M00S00818.ssbld +++| THEN
00855 M00S00819.ssbld +++| BEGIN
00856 M00S00820.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
00857 M00S00821.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00858 M00S00822.ssbld +++| RESTPFP(PFP$ABORT);
00859 M00S00823.ssbld +++| END
00860 M00S00824.ssbld +++|
00861 M00S00825.ssbld +++| IF C<4,1>DIRLINE NQ "="
00862 M00S00826.ssbld +++| THEN
00863 M00S00827.ssbld +++| BEGIN
00864 M00S00828.ssbld +++| BLMSG$LN[0] = " RDSUDT - *CIF* COMMAND MISSING = SIGN.";
00865 M00S00829.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00866 M00S00830.ssbld +++| RESTPFP(PFP$ABORT);
00867 M00S00831.ssbld +++| END
00868 M00S00832.ssbld +++|
00869 M00S00833.ssbld +++| SCOL = 5;
00870 M00S00834.ssbld +++| DEVTYPE = NM$KEY3[4];
00871 M00S00835.ssbld +++| NUMCH = 3;
00872 M00S00836.ssbld +++| LOOPC = FALSE;
00873 M00S00837.ssbld +++| SLOWFOR J = 0 STEP 1 WHILE ( NOT LOOPC )
00874 M00S00838.ssbld +++| DO
00875 M00S00839.ssbld +++| BEGIN
00876 M00S00840.ssbld +++| NEXTPRM( DIRLINE,SCOL,DEVTYPE, ##
00877 M00S00841.ssbld +++| NUMCH,ORD,NCOL,STAT,TERMINATOR );
00878 M00S00842.ssbld +++| IF STAT NQ 2
00879 M00S00843.ssbld +++| THEN
00880 M00S00844.ssbld +++| BEGIN
00881 M00S00845.ssbld +++|
00882 M00S00846.ssbld +++|#
00883 M00S00847.ssbld +++|* CHECK FOR VALID CHANNELS AND CIF LASHUPS.
00884 M00S00848.ssbld +++|#
00885 M00S00849.ssbld +++|
00886 M00S00850.ssbld +++| IF ( ( TMPI EQ 0 ) ##
00887 M00S00851.ssbld +++| AND ( UD$CHANA[1] EQ 0 ) ##
00888 M00S00852.ssbld +++| AND ( UD$CHANB[1] NQ 0 ) ) ##
00889 M00S00853.ssbld +++| OR ( ( TMPI EQ 1 ) ##
00890 M00S00854.ssbld +++| AND ( UD$CHANB[1] EQ 0 ) ) ##
00891 M00S00855.ssbld +++| OR ( ( TMPI EQ 2 ) ##
00892 M00S00856.ssbld +++| AND ( UD$CHANC[1] EQ 0 ) ) ##
00893 M00S00857.ssbld +++| OR ( ( TMPI EQ 3 ) ##
00894 M00S00858.ssbld +++| AND ( UD$CHAND[1] EQ 0 ) ) ##
00895 M00S00859.ssbld +++| THEN
00896 M00S00860.ssbld +++| BEGIN
00897 M00S00861.ssbld +++| BLMSG$LN[0]= " RDSUDT - CH/CIF CONFLICT. ";
00898 M00S00862.ssbld +++| MESSAGE ( BLMSG[0] , SYSUDF1) ##
00899 M00S00863.ssbld +++| ;
00900 M00S00864.ssbld +++| RESTPFP ( PFP$ABORT ); # RESTORE USER-S PFP AND ABORT #
00901 M00S00865.ssbld +++| END
00902 M00S00866.ssbld +++|
00903 M00S00867.ssbld +++| CIFI ( 1 , TMPI , ORD , PATH$DF"U$EXISTS" , 1 );
00904 M00S00868.ssbld +++| END
00905 M00S00869.ssbld +++|
00906 M00S00870.ssbld +++| IF STAT EQ 1
00907 M00S00871.ssbld +++| THEN
00908 M00S00872.ssbld +++| BEGIN
00909 M00S00873.ssbld +++| CIFI ( 1 , TMPI , ORD , PATH$DF"U$ON" , 1 );
00910 M00S00874.ssbld +++| END
00911 M00S00875.ssbld +++|
00912 M00S00876.ssbld +++| IF TERMINATOR EQ PERIOD
00913 M00S00877.ssbld +++| THEN
00914 M00S00878.ssbld +++| BEGIN
00915 M00S00879.ssbld +++| LOOPC = TRUE;
00916 M00S00880.ssbld +++| TEST J;
00917 M00S00881.ssbld +++| END
00918 M00S00882.ssbld +++|
00919 M00S00883.ssbld +++| IF J EQ MAX$DTI
00920 M00S00884.ssbld +++| THEN
00921 M00S00885.ssbld +++| BEGIN
00922 M00S00886.ssbld +++| LOOPC = TRUE;
00923 M00S00887.ssbld +++| TEST J;
00924 M00S00888.ssbld +++| END
00925 M00S00889.ssbld +++|
00926 M00S00890.ssbld +++| SCOL = NCOL;
00927 M00S00891.ssbld +++| END
00928 M00S00892.ssbld +++|
00929 M00S00893.ssbld +++| SCOL = NCOL;
00930 M00S00894.ssbld +++|
00931 M00S00895.ssbld +++| DEVTYPE = NM$KEY3[5];
00932 M00S00896.ssbld +++| LOOPC = FALSE;
00933 M00S00897.ssbld +++| SLOWFOR J = 0 STEP 1 WHILE ( NOT LOOPC )
00934 M00S00898.ssbld +++| DO
00935 M00S00899.ssbld +++| BEGIN
00936 M00S00900.ssbld +++| NEXTPRM( DIRLINE,SCOL,DEVTYPE, ##
00937 M00S00901.ssbld +++| NUMCH,ORD,NCOL,STAT,TERMINATOR );
00938 M00S00902.ssbld +++| IF STAT NQ 2
00939 M00S00903.ssbld +++| THEN
00940 M00S00904.ssbld +++| BEGIN
00941 M00S00905.ssbld +++|
00942 M00S00906.ssbld +++|#
00943 M00S00907.ssbld +++|* CHECK FOR VALID CHANNELS AND CIF LASHUPS.
00944 M00S00908.ssbld +++|#
00945 M00S00909.ssbld +++|
00946 M00S00910.ssbld +++| IF ( ( TMPI EQ 0 ) ##
00947 M00S00911.ssbld +++| AND ( UD$CHANA[1] EQ 0 ) ##
00948 M00S00912.ssbld +++| AND ( UD$CHANB[1] NQ 0 ) ) ##
00949 M00S00913.ssbld +++| OR ( ( TMPI EQ 1 ) ##
00950 M00S00914.ssbld +++| AND ( UD$CHANB[1] EQ 0 ) ) ##
00951 M00S00915.ssbld +++| OR ( ( TMPI EQ 2 ) ##
00952 M00S00916.ssbld +++| AND ( UD$CHANC[1] EQ 0 ) ) ##
00953 M00S00917.ssbld +++| OR ( ( TMPI EQ 3 ) ##
00954 M00S00918.ssbld +++| AND ( UD$CHAND[1] EQ 0 ) ) ##
00955 M00S00919.ssbld +++| THEN
00956 M00S00920.ssbld +++| BEGIN
00957 M00S00921.ssbld +++| BLMSG$LN[0]= " RDSUDT - CH/CIF CONFLICT. ";
00958 M00S00922.ssbld +++| MESSAGE ( BLMSG[0] , SYSUDF1);
00959 M00S00923.ssbld +++| RESTPFP ( PFP$ABORT ); # RESTORE USER-S PFP AND ABORT #
00960 M00S00924.ssbld +++| END
00961 M00S00925.ssbld +++|
00962 M00S00926.ssbld +++| CIFO ( 1 , TMPI , ORD , PATH$DF"U$EXISTS" , 1 );
00963 M00S00927.ssbld +++| END
00964 M00S00928.ssbld +++|
00965 M00S00929.ssbld +++| IF STAT EQ 1
00966 M00S00930.ssbld +++| THEN
00967 M00S00931.ssbld +++| BEGIN
00968 M00S00932.ssbld +++| CIFO ( 1 , TMPI , ORD , PATH$DF"U$ON" , 1 );
00969 M00S00933.ssbld +++| END
00970 M00S00934.ssbld +++|
00971 M00S00935.ssbld +++| IF TERMINATOR EQ PERIOD
00972 M00S00936.ssbld +++| THEN
00973 M00S00937.ssbld +++| BEGIN
00974 M00S00938.ssbld +++| LOOPC = TRUE;
00975 M00S00939.ssbld +++| TEST J;
00976 M00S00940.ssbld +++| END
00977 M00S00941.ssbld +++|
00978 M00S00942.ssbld +++| IF J EQ MAX$DTO
00979 M00S00943.ssbld +++| THEN
00980 M00S00944.ssbld +++| BEGIN
00981 M00S00945.ssbld +++| LOOPC = TRUE;
00982 M00S00946.ssbld +++| TEST J;
00983 M00S00947.ssbld +++| END
00984 M00S00948.ssbld +++|
00985 M00S00949.ssbld +++| SCOL = NCOL;
00986 M00S00950.ssbld +++| END
00987 M00S00951.ssbld +++|
00988 M00S00952.ssbld +++| TEST DIRNUM;
00989 M00S00953.ssbld +++|
00990 M00S00954.ssbld +++|DEVICETI:
00991 M00S00955.ssbld +++| IF ( ARGKEY2 NQ NM$KEY2[2] ) AND ( ARGKEY3 NQ NM$KEY3[3] )
00992 M00S00956.ssbld +++| THEN
00993 M00S00957.ssbld +++| BEGIN
00994 M00S00958.ssbld +++| BLMSG$LN[0] = MSG$BDORD;
00995 M00S00959.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
00996 M00S00960.ssbld +++| RESTPFP(PFP$ABORT);
00997 M00S00961.ssbld +++| END
00998 M00S00962.ssbld +++|
00999 M00S00963.ssbld +++| ARGKEY3 = NM$KEY3[4];
01000 M00S00964.ssbld +++|
01001 M00S00965.ssbld +++| STAT = XDXB(C<3,1>DIRLINE,0,TMPI);
01002 M00S00966.ssbld +++| IF STAT NQ 0
01003 M00S00967.ssbld +++| THEN
01004 M00S00968.ssbld +++| BEGIN
01005 M00S00969.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01006 M00S00970.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01007 M00S00971.ssbld +++| RESTPFP(PFP$ABORT);
01008 M00S00972.ssbld +++| END
01009 M00S00973.ssbld +++|
01010 M00S00974.ssbld +++| IF TMPI LS 0 OR TMPI GR 1
01011 M00S00975.ssbld +++| THEN
01012 M00S00976.ssbld +++| BEGIN
01013 M00S00977.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01014 M00S00978.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01015 M00S00979.ssbld +++| RESTPFP(PFP$ABORT);
01016 M00S00980.ssbld +++| END
01017 M00S00981.ssbld +++|
01018 M00S00982.ssbld +++| IF C<4,1>DIRLINE NQ "="
01019 M00S00983.ssbld +++| THEN
01020 M00S00984.ssbld +++| BEGIN
01021 M00S00985.ssbld +++| BLMSG$LN[0] = " RDSUDT - *DTI* COMMAND MISSING = SIGN.";
01022 M00S00986.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01023 M00S00987.ssbld +++| RESTPFP(PFP$ABORT);
01024 M00S00988.ssbld +++| END
01025 M00S00989.ssbld +++|
01026 M00S00990.ssbld +++| SCOL = 5;
01027 M00S00991.ssbld +++| DEVTYPE = NM$KEY3[6];
01028 M00S00992.ssbld +++| NUMCH = 3;
01029 M00S00993.ssbld +++| LOOPC = FALSE;
01030 M00S00994.ssbld +++| SLOWFOR J = 0 STEP 1 WHILE ( NOT LOOPC )
01031 M00S00995.ssbld +++| DO
01032 M00S00996.ssbld +++| BEGIN
01033 M00S00997.ssbld +++| NEXTPRM( DIRLINE,SCOL,DEVTYPE, ##
01034 M00S00998.ssbld +++| NUMCH,ORD,NCOL,STAT,TERMINATOR );
01035 M00S00999.ssbld +++| IF STAT NQ 2
01036 M00S01000.ssbld +++| THEN
01037 M00S01001.ssbld +++| BEGIN
01038 M00S01002.ssbld +++| DTI01 ( 1 , TMPI , ORD , PATH$DF"U$EXISTS" , 1 );
01039 M00S01003.ssbld +++| END
01040 M00S01004.ssbld +++|
01041 M00S01005.ssbld +++| IF STAT EQ 1
01042 M00S01006.ssbld +++| THEN
01043 M00S01007.ssbld +++| BEGIN
01044 M00S01008.ssbld +++| DTI01 ( 1 , TMPI , ORD , PATH$DF"U$ON" , 1 );
01045 M00S01009.ssbld +++| END
01046 M00S01010.ssbld +++|
01047 M00S01011.ssbld +++| IF TERMINATOR EQ PERIOD
01048 M00S01012.ssbld +++| THEN
01049 M00S01013.ssbld +++| BEGIN
01050 M00S01014.ssbld +++| LOOPC = TRUE;
01051 M00S01015.ssbld +++| TEST J;
01052 M00S01016.ssbld +++| END
01053 M00S01017.ssbld +++|
01054 M00S01018.ssbld +++| IF J GR MAX$DIF
01055 M00S01019.ssbld +++| THEN
01056 M00S01020.ssbld +++| BEGIN
01057 M00S01021.ssbld +++| BLMSG$LN[0] = MSG$BADENT;
01058 M00S01022.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01059 M00S01023.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
01060 M00S01024.ssbld +++| END
01061 M00S01025.ssbld +++|
01062 M00S01026.ssbld +++| SCOL = NCOL;
01063 M00S01027.ssbld +++| END
01064 M00S01028.ssbld +++|
01065 M00S01029.ssbld +++| TEST DIRNUM;
01066 M00S01030.ssbld +++|DEVICETO:
01067 M00S01031.ssbld +++| IF ( ARGKEY2 NQ NM$KEY2[2] ) AND ( ARGKEY3 NQ NM$KEY3[4] )
01068 M00S01032.ssbld +++| THEN
01069 M00S01033.ssbld +++| BEGIN
01070 M00S01034.ssbld +++| BLMSG$LN[0] = MSG$BDORD;
01071 M00S01035.ssbld +++| MESSAGE( BLMSG[0],SYSUDF1);
01072 M00S01036.ssbld +++| RESTPFP(PFP$ABORT);
01073 M00S01037.ssbld +++| END
01074 M00S01038.ssbld +++|
01075 M00S01039.ssbld +++| ARGKEY3 = NM$KEY3[5];
01076 M00S01040.ssbld +++|
01077 M00S01041.ssbld +++| STAT = XDXB(C<3,1>DIRLINE,0,TMPI);
01078 M00S01042.ssbld +++| IF STAT NQ 0
01079 M00S01043.ssbld +++| THEN
01080 M00S01044.ssbld +++| BEGIN
01081 M00S01045.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01082 M00S01046.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01083 M00S01047.ssbld +++| RESTPFP(PFP$ABORT);
01084 M00S01048.ssbld +++| END
01085 M00S01049.ssbld +++|
01086 M00S01050.ssbld +++| IF TMPI LS 0 OR TMPI GR 1
01087 M00S01051.ssbld +++| THEN
01088 M00S01052.ssbld +++| BEGIN
01089 M00S01053.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01090 M00S01054.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01091 M00S01055.ssbld +++| RESTPFP(PFP$ABORT);
01092 M00S01056.ssbld +++| END
01093 M00S01057.ssbld +++|
01094 M00S01058.ssbld +++| IF C<4,1>DIRLINE NQ "="
01095 M00S01059.ssbld +++| THEN
01096 M00S01060.ssbld +++| BEGIN
01097 M00S01061.ssbld +++| BLMSG$LN[0] = " RDSUDT - *DTO* COMMAND MISSING = SIGN.";
01098 M00S01062.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01099 M00S01063.ssbld +++| RESTPFP(PFP$ABORT);
01100 M00S01064.ssbld +++| END
01101 M00S01065.ssbld +++|
01102 M00S01066.ssbld +++| SCOL = 5;
01103 M00S01067.ssbld +++| DEVTYPE = NM$KEY3[6];
01104 M00S01068.ssbld +++| NUMCH = 3;
01105 M00S01069.ssbld +++| LOOPC = FALSE;
01106 M00S01070.ssbld +++| SLOWFOR J = 0 STEP 1 WHILE ( NOT LOOPC )
01107 M00S01071.ssbld +++| DO
01108 M00S01072.ssbld +++| BEGIN
01109 M00S01073.ssbld +++| NEXTPRM( DIRLINE,SCOL,DEVTYPE, ##
01110 M00S01074.ssbld +++| NUMCH,ORD,NCOL,STAT,TERMINATOR );
01111 M00S01075.ssbld +++| IF STAT NQ 2
01112 M00S01076.ssbld +++| THEN
01113 M00S01077.ssbld +++| BEGIN
01114 M00S01078.ssbld +++| DTO01 ( 1 , TMPI , ORD , PATH$DF"U$EXISTS" , 1 );
01115 M00S01079.ssbld +++| END
01116 M00S01080.ssbld +++|
01117 M00S01081.ssbld +++| IF STAT EQ 1
01118 M00S01082.ssbld +++| THEN
01119 M00S01083.ssbld +++| BEGIN
01120 M00S01084.ssbld +++| DTO01 ( 1 , TMPI , ORD , PATH$DF"U$ON" , 1 );
01121 M00S01085.ssbld +++| END
01122 M00S01086.ssbld +++|
01123 M00S01087.ssbld +++| IF TERMINATOR EQ PERIOD
01124 M00S01088.ssbld +++| THEN
01125 M00S01089.ssbld +++| BEGIN
01126 M00S01090.ssbld +++| LOOPC = TRUE;
01127 M00S01091.ssbld +++| TEST J;
01128 M00S01092.ssbld +++| END
01129 M00S01093.ssbld +++|
01130 M00S01094.ssbld +++| IF J GR MAX$DIF
01131 M00S01095.ssbld +++| THEN
01132 M00S01096.ssbld +++| BEGIN
01133 M00S01097.ssbld +++| BLMSG$LN[0] = MSG$BADENT;
01134 M00S01098.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01135 M00S01099.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
01136 M00S01100.ssbld +++| END
01137 M00S01101.ssbld +++|
01138 M00S01102.ssbld +++| SCOL = NCOL;
01139 M00S01103.ssbld +++| END
01140 M00S01104.ssbld +++|
01141 M00S01105.ssbld +++| TEST DIRNUM;
01142 M00S01106.ssbld +++|DEVICEIF:
01143 M00S01107.ssbld +++| IF ( ARGKEY2 NQ NM$KEY2[2] ) AND ( ARGKEY3 NQ NM$KEY3[5] )
01144 M00S01108.ssbld +++| THEN
01145 M00S01109.ssbld +++| BEGIN
01146 M00S01110.ssbld +++| BLMSG$LN[0] = MSG$BDORD;
01147 M00S01111.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01148 M00S01112.ssbld +++| RESTPFP(PFP$ABORT);
01149 M00S01113.ssbld +++| END
01150 M00S01114.ssbld +++|
01151 M00S01115.ssbld +++| ARGKEY3 = NM$KEY3[6];
01152 M00S01116.ssbld +++|
01153 M00S01117.ssbld +++| STAT = XDXB(C<3,1>DIRLINE,0,TMPI);
01154 M00S01118.ssbld +++| IF STAT NQ 0
01155 M00S01119.ssbld +++| THEN
01156 M00S01120.ssbld +++| BEGIN
01157 M00S01121.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01158 M00S01122.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01159 M00S01123.ssbld +++| RESTPFP(PFP$ABORT);
01160 M00S01124.ssbld +++| END
01161 M00S01125.ssbld +++|
01162 M00S01126.ssbld +++| IF TMPI LS 0 OR TMPI GR 1
01163 M00S01127.ssbld +++| THEN
01164 M00S01128.ssbld +++| BEGIN
01165 M00S01129.ssbld +++| BLMSG$LN[0] = MSG$BADEST;
01166 M00S01130.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01167 M00S01131.ssbld +++| RESTPFP(PFP$ABORT);
01168 M00S01132.ssbld +++| END
01169 M00S01133.ssbld +++|
01170 M00S01134.ssbld +++| IF C<4,1>DIRLINE NQ "="
01171 M00S01135.ssbld +++| THEN
01172 M00S01136.ssbld +++| BEGIN
01173 M00S01137.ssbld +++| BLMSG$LN[0] = " RDSUDT - *DIF* COMMAND MISSING = SIGN.";
01174 M00S01138.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01175 M00S01139.ssbld +++| RESTPFP(PFP$ABORT);
01176 M00S01140.ssbld +++| END
01177 M00S01141.ssbld +++|
01178 M00S01142.ssbld +++| SCOL = 5;
01179 M00S01143.ssbld +++| DEVTYPE = NM$KEY3[7];
01180 M00S01144.ssbld +++| NUMCH = 3;
01181 M00S01145.ssbld +++| LOOPC = FALSE;
01182 M00S01146.ssbld +++| SLOWFOR J = 0 STEP 1 WHILE ( NOT LOOPC )
01183 M00S01147.ssbld +++| DO
01184 M00S01148.ssbld +++| BEGIN
01185 M00S01149.ssbld +++| NEXTPRM( DIRLINE,SCOL,DEVTYPE, ##
01186 M00S01150.ssbld +++| NUMCH,ORD,NCOL,STAT,TERMINATOR );
01187 M00S01151.ssbld +++| IF STAT NQ 2
01188 M00S01152.ssbld +++| THEN
01189 M00S01153.ssbld +++| BEGIN
01190 M00S01154.ssbld +++| DIF01 ( 1 , TMPI , ORD , PATH$DF"U$EXISTS" , 1 );
01191 M00S01155.ssbld +++| END
01192 M00S01156.ssbld +++|
01193 M00S01157.ssbld +++| IF STAT EQ 1
01194 M00S01158.ssbld +++| THEN
01195 M00S01159.ssbld +++| BEGIN
01196 M00S01160.ssbld +++| DIF01 ( 1 , TMPI , ORD , PATH$DF"U$ON" , 1 );
01197 M00S01161.ssbld +++| END
01198 M00S01162.ssbld +++|
01199 M00S01163.ssbld +++| IF TERMINATOR EQ PERIOD
01200 M00S01164.ssbld +++| THEN
01201 M00S01165.ssbld +++| BEGIN
01202 M00S01166.ssbld +++| LOOPC = TRUE;
01203 M00S01167.ssbld +++| TEST J;
01204 M00S01168.ssbld +++| END
01205 M00S01169.ssbld +++|
01206 M00S01170.ssbld +++| IF J GR MAX$DRC
01207 M00S01171.ssbld +++| THEN
01208 M00S01172.ssbld +++| BEGIN
01209 M00S01173.ssbld +++| BLMSG$LN[0] = MSG$BADENT;
01210 M00S01174.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01211 M00S01175.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
01212 M00S01176.ssbld +++| END
01213 M00S01177.ssbld +++|
01214 M00S01178.ssbld +++| SCOL = NCOL;
01215 M00S01179.ssbld +++| END
01216 M00S01180.ssbld +++|
01217 M00S01181.ssbld +++| TEST DIRNUM;
01218 M00S01182.ssbld +++|DATARC:
01219 M00S01183.ssbld +++| IF ( ARGKEY2 NQ NM$KEY2[2] ) AND ( ARGKEY3 NQ NM$KEY3[6] )
01220 M00S01184.ssbld +++| THEN
01221 M00S01185.ssbld +++| BEGIN
01222 M00S01186.ssbld +++| BLMSG$LN[0] = MSG$BDORD;
01223 M00S01187.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01224 M00S01188.ssbld +++| RESTPFP(PFP$ABORT);
01225 M00S01189.ssbld +++| END
01226 M00S01190.ssbld +++|
01227 M00S01191.ssbld +++| ARGKEY3 = NM$KEY3[7];
01228 M00S01192.ssbld +++|
01229 M00S01193.ssbld +++| STAT = XDXB(C<3,1>DIRLINE,0,TMPI);
01230 M00S01194.ssbld +++| IF STAT NQ 0
01231 M00S01195.ssbld +++| THEN
01232 M00S01196.ssbld +++| BEGIN
01233 M00S01197.ssbld +++| BLMSG$LN[0] = MSG$BADEST;
01234 M00S01198.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01235 M00S01199.ssbld +++| RESTPFP(PFP$ABORT);
01236 M00S01200.ssbld +++| END
01237 M00S01201.ssbld +++|
Line S01202 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01238 M01S01202.ssbld1 ---| IF TMPI LS 0 OR TMPI GR 1
Line S00036 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01239 M01S00036.ssbld1 +++| IF TMPI LS 0
01240 M01S00037.ssbld1 +++| OR TMPI GR MAX$DRC
01241 M00S01203.ssbld +++| THEN
01242 M00S01204.ssbld +++| BEGIN
01243 M00S01205.ssbld +++| BLMSG$LN[0] = MSG$BADEST;
01244 M00S01206.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01245 M00S01207.ssbld +++| RESTPFP(PFP$ABORT);
01246 M00S01208.ssbld +++| END
01247 M00S01209.ssbld +++|
01248 M00S01210.ssbld +++| IF C<4,1>DIRLINE NQ "="
01249 M00S01211.ssbld +++| THEN
01250 M00S01212.ssbld +++| BEGIN
01251 M00S01213.ssbld +++| BLMSG$LN[0] = " RDSUDT - *DRC* ENTRY MISSING = SIGN.";
01252 M00S01214.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01253 M00S01215.ssbld +++| RESTPFP(PFP$ABORT);
01254 M00S01216.ssbld +++| END
01255 M00S01217.ssbld +++|
01256 M00S01218.ssbld +++| SCOL = 5;
01257 M00S01219.ssbld +++| DEVTYPE = NM$KEY3[8];
01258 M00S01220.ssbld +++| NUMCH = 3;
01259 M00S01221.ssbld +++| LOOPC = FALSE;
01260 M00S01222.ssbld +++| SLOWFOR J = 0 STEP 1 WHILE ( NOT LOOPC )
01261 M00S01223.ssbld +++| DO
01262 M00S01224.ssbld +++| BEGIN
01263 M00S01225.ssbld +++| NEXTPRM( DIRLINE,SCOL,DEVTYPE, ##
01264 M00S01226.ssbld +++| NUMCH,ORD,NCOL,STAT,TERMINATOR );
01265 M00S01227.ssbld +++| IF STAT NQ 2
01266 M00S01228.ssbld +++| THEN
01267 M00S01229.ssbld +++| BEGIN
01268 M01S00038.ssbld1 +++| IF ((TMPI LQ 1) AND (ORD GR MAX$DRD))
01269 M01S00039.ssbld1 +++| # DRCS 0/1 ONLY GO TO DRDS 0-7 #
01270 M01S00040.ssbld1 +++| OR ((TMPI GQ 2) AND (ORD LQ MAX$DRD))
01271 M01S00041.ssbld1 +++| # DRC 2/3 ONLY GO TO DRDS 8-15 #
01272 M01S00042.ssbld1 +++| THEN # DRC-DRD PATHS NOT CORRECT #
01273 M01S00043.ssbld1 +++| BEGIN
01274 M01S00044.ssbld1 +++| BLMSG$LN[0] = MSG$BADADR;
01275 M01S00045.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01276 M01S00046.ssbld1 +++| RESTPFP(PFP$ABORT);
01277 M01S00047.ssbld1 +++| END
01278 M01S00048.ssbld1 +++|
01279 M00S01230.ssbld +++| IF TMPI EQ 0
01280 M00S01231.ssbld +++| THEN
01281 M00S01232.ssbld +++| BEGIN
01282 M00S01233.ssbld +++| DRC00 ( 1 , TMPI , ORD , PATH$DF"U$EXISTS" , 1 );
01283 M00S01234.ssbld +++| END
01284 M00S01235.ssbld +++|
Line S01236 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01285 M01S01236.ssbld1 ---| ELSE
Line S00049 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01286 M01S00049.ssbld1 +++| IF TMPI EQ 1
01287 M01S00050.ssbld1 +++| THEN
01288 M00S01237.ssbld +++| BEGIN
01289 M00S01238.ssbld +++| DRC01 ( 1 , TMPI , ORD , PATH$DF"U$EXISTS" , 1 );
01290 M00S01239.ssbld +++| END
01291 M00S01240.ssbld +++|
01292 M01S00051.ssbld1 +++| IF TMPI EQ 2
01293 M01S00052.ssbld1 +++| THEN
01294 M01S00053.ssbld1 +++| BEGIN
01295 M01S00054.ssbld1 +++| DRC02 ( 1, TMPI, ORD, PATH$DF"U$EXISTS", 1);
01296 M01S00055.ssbld1 +++| END
01297 M01S00056.ssbld1 +++|
01298 M01S00057.ssbld1 +++| IF TMPI EQ 3
01299 M01S00058.ssbld1 +++| THEN
01300 M01S00059.ssbld1 +++| BEGIN
01301 M01S00060.ssbld1 +++| DRC03 ( 1, TMPI, ORD, PATH$DF"U$EXISTS", 1);
01302 M01S00061.ssbld1 +++| END
01303 M01S00062.ssbld1 +++|
01304 M00S01241.ssbld +++| END
01305 M00S01242.ssbld +++|
01306 M00S01243.ssbld +++| IF STAT EQ 1
01307 M00S01244.ssbld +++| THEN
01308 M00S01245.ssbld +++| BEGIN
01309 M00S01246.ssbld +++| IF TMPI EQ 0
01310 M00S01247.ssbld +++| THEN
01311 M00S01248.ssbld +++| BEGIN
01312 M00S01249.ssbld +++| DRC00 ( 1 , TMPI , ORD , PATH$DF"U$ON" , 1 );
01313 M00S01250.ssbld +++| END
01314 M00S01251.ssbld +++|
Line S01252 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01315 M01S01252.ssbld1 ---| ELSE
Line S00063 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01316 M01S00063.ssbld1 +++| IF TMPI EQ 1
01317 M01S00064.ssbld1 +++| THEN
01318 M00S01253.ssbld +++| BEGIN
01319 M00S01254.ssbld +++| DRC01 ( 1 , TMPI , ORD , PATH$DF"U$ON" , 1 );
01320 M00S01255.ssbld +++| END
01321 M00S01256.ssbld +++|
01322 M01S00065.ssbld1 +++| IF TMPI EQ 2
01323 M01S00066.ssbld1 +++| THEN
01324 M01S00067.ssbld1 +++| BEGIN
01325 M01S00068.ssbld1 +++| DRC02 ( 1, TMPI, ORD, PATH$DF"U$ON", 1 );
01326 M01S00069.ssbld1 +++| END
01327 M01S00070.ssbld1 +++|
01328 M01S00071.ssbld1 +++| IF TMPI EQ 3
01329 M01S00072.ssbld1 +++| THEN
01330 M01S00073.ssbld1 +++| BEGIN
01331 M01S00074.ssbld1 +++| DRC03 ( 1, TMPI, ORD, PATH$DF"U$ON", 1 );
01332 M01S00075.ssbld1 +++| END
01333 M01S00076.ssbld1 +++|
01334 M00S01257.ssbld +++| END
01335 M00S01258.ssbld +++|
01336 M00S01259.ssbld +++| IF J GR MAX$DRD
01337 M00S01260.ssbld +++| THEN
01338 M00S01261.ssbld +++| BEGIN
01339 M00S01262.ssbld +++| BLMSG$LN[0] = MSG$BADENT;
01340 M00S01263.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01341 M00S01264.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
01342 M00S01265.ssbld +++| END
01343 M00S01266.ssbld +++|
01344 M00S01267.ssbld +++| IF TERMINATOR EQ PERIOD
01345 M00S01268.ssbld +++| THEN
01346 M00S01269.ssbld +++| BEGIN
01347 M00S01270.ssbld +++| LOOPC = TRUE;
01348 M00S01271.ssbld +++| TEST J;
01349 M00S01272.ssbld +++| END
01350 M00S01273.ssbld +++|
01351 M00S01274.ssbld +++| SCOL = NCOL;
01352 M00S01275.ssbld +++| END
01353 M00S01276.ssbld +++|
01354 M00S01277.ssbld +++| TEST DIRNUM;
01355 M00S01278.ssbld +++|
01356 M00S01279.ssbld +++|ACCIF:
01357 M00S01280.ssbld +++| IF ( ARGKEY2 NQ NM$KEY2[2] ) AND ( ARGKEY3 NQ NM$KEY3[7] )
01358 M00S01281.ssbld +++| THEN
01359 M00S01282.ssbld +++| BEGIN
01360 M00S01283.ssbld +++| BLMSG$LN[0] = MSG$BDORD;
01361 M00S01284.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01362 M00S01285.ssbld +++| RESTPFP(PFP$ABORT);
01363 M00S01286.ssbld +++| END
01364 M00S01287.ssbld +++|
01365 M00S01288.ssbld +++| ARGKEY3 = NM$KEY3[9];
01366 M00S01289.ssbld +++|
01367 M00S01290.ssbld +++| STAT = XDXB(C<3,1>DIRLINE,0,TMPI);
01368 M00S01291.ssbld +++| IF STAT NQ 0
01369 M00S01292.ssbld +++| THEN
01370 M00S01293.ssbld +++| BEGIN
01371 M00S01294.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01372 M00S01295.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01373 M00S01296.ssbld +++| RESTPFP(PFP$ABORT);
01374 M00S01297.ssbld +++| END
01375 M00S01298.ssbld +++|
01376 M00S01299.ssbld +++| IF TMPI LS 0 OR TMPI GR 1
01377 M00S01300.ssbld +++| THEN
01378 M00S01301.ssbld +++| BEGIN
01379 M00S01302.ssbld +++| BLMSG$LN[0] = MSG$BADEST;
01380 M00S01303.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01381 M00S01304.ssbld +++| RESTPFP(PFP$ABORT);
01382 M00S01305.ssbld +++| END
01383 M00S01306.ssbld +++|
01384 M00S01307.ssbld +++| IF C<4,1>DIRLINE NQ "="
01385 M00S01308.ssbld +++| THEN
01386 M00S01309.ssbld +++| BEGIN
01387 M00S01310.ssbld +++| BLMSG$LN[0] = " RDSUDT - *AIF* ENTRY MISSING = SIGN.";
01388 M00S01311.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01389 M00S01312.ssbld +++| RESTPFP(PFP$ABORT);
01390 M00S01313.ssbld +++| END
01391 M00S01314.ssbld +++|
01392 M00S01315.ssbld +++| SCOL = 5;
01393 M00S01316.ssbld +++| DEVTYPE = NM$KEY2[10];
01394 M00S01317.ssbld +++| NUMCH = 2;
01395 M00S01318.ssbld +++| LOOPC = FALSE;
01396 M00S01319.ssbld +++| SLOWFOR J = 0 STEP 1 WHILE ( NOT LOOPC )
01397 M00S01320.ssbld +++| DO
01398 M00S01321.ssbld +++| BEGIN
01399 M00S01322.ssbld +++| NEXTPRM( DIRLINE,SCOL,DEVTYPE, ##
01400 M00S01323.ssbld +++| NUMCH,ORD,NCOL,STAT,TERMINATOR );
Line S01324 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01401 M01S01324.ssbld1 ---| IF STAT NQ 2
01402 M01S01325.ssbld1 ---| THEN
01403 M01S01326.ssbld1 ---| BEGIN
01404 M01S01327.ssbld1 ---| AIF01 ( 1 , TMPI , ORD , PATH$DF"U$EXISTS" , 1 );
01405 M01S01328.ssbld1 ---| END
01406 M01S01329.ssbld1 ---|
01407 M01S01330.ssbld1 ---| IF STAT EQ 1
01408 M01S01331.ssbld1 ---| THEN
01409 M01S01332.ssbld1 ---| BEGIN
01410 M01S01333.ssbld1 ---| AIF01 ( 1 , TMPI , ORD , PATH$DF"U$ON" , 1 );
01411 M01S01334.ssbld1 ---| END
01412 M01S01335.ssbld1 ---|
Line S00077 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01413 M01S00077.ssbld1 +++| IF STAT NQ 2
01414 M01S00078.ssbld1 +++| THEN # AIF PATH EXISTS #
01415 M01S00079.ssbld1 +++| BEGIN # EXISTS #
01416 M01S00080.ssbld1 +++| IF TMPI EQ 0
01417 M01S00081.ssbld1 +++| THEN # AIF0 PATH #
01418 M01S00082.ssbld1 +++| BEGIN # AIF0 #
01419 M01S00083.ssbld1 +++| AIF0(1,ORD,PATH$DF"U$EXISTS",ON);
01420 M01S00084.ssbld1 +++| END # AIF0 #
01421 M01S00085.ssbld1 +++|
01422 M01S00086.ssbld1 +++| ELSE # AIF1 PATH #
01423 M01S00087.ssbld1 +++| BEGIN # AIF1 #
01424 M01S00088.ssbld1 +++| AIF1(1,ORD,PATH$DF"U$EXISTS",ON);
01425 M01S00089.ssbld1 +++| END # AIF1 #
01426 M01S00090.ssbld1 +++|
01427 M01S00091.ssbld1 +++| END # EXISTS #
01428 M01S00092.ssbld1 +++|
01429 M01S00093.ssbld1 +++| IF STAT EQ 1
01430 M01S00094.ssbld1 +++| THEN # AIF PATH TURNED ON #
01431 M01S00095.ssbld1 +++| BEGIN # ON #
01432 M01S00096.ssbld1 +++| IF TMPI EQ 0
01433 M01S00097.ssbld1 +++| THEN # AIF0 PATH #
01434 M01S00098.ssbld1 +++| BEGIN # AIF0 #
01435 M01S00099.ssbld1 +++| AIF0(1,ORD,PATH$DF"U$ON",ON);
01436 M01S00100.ssbld1 +++| END # AIF0 #
01437 M01S00101.ssbld1 +++|
01438 M01S00102.ssbld1 +++| ELSE # AIF1 PATH #
01439 M01S00103.ssbld1 +++| BEGIN # AIF1 #
01440 M01S00104.ssbld1 +++| AIF1(1,ORD,PATH$DF"U$ON",ON);
01441 M01S00105.ssbld1 +++| END # AIF1 #
01442 M01S00106.ssbld1 +++|
01443 M01S00107.ssbld1 +++| END # ON #
01444 M01S00108.ssbld1 +++|
01445 M01S00109.ssbld1 +++| IF (UD$AIF003[1] NQ 0 AND UD$AIF047[1] NQ 0) ##
01446 M01S00110.ssbld1 +++| OR (UD$AIF103[1] NQ 0 AND UD$AIF147[1] NQ 0)
01447 M01S00111.ssbld1 +++| THEN # AIF GOES TO BOTH SETS OF SM-S #
01448 M01S00112.ssbld1 +++| BEGIN # EXIT #
01449 M01S00113.ssbld1 +++| BLMSG$LN[0] = MSG$INVAIF;
01450 M01S00114.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01451 M01S00115.ssbld1 +++| RESTPFP(PFP$ABORT);
01452 M01S00116.ssbld1 +++| END # EXIT #
01453 M01S00117.ssbld1 +++|
01454 M00S01336.ssbld +++| IF TERMINATOR EQ PERIOD
01455 M00S01337.ssbld +++| THEN
01456 M00S01338.ssbld +++| BEGIN
01457 M00S01339.ssbld +++| LOOPC = TRUE;
01458 M00S01340.ssbld +++| TEST J;
01459 M00S01341.ssbld +++| END
01460 M00S01342.ssbld +++|
01461 M00S01343.ssbld +++| IF J GR MAX$AC
01462 M00S01344.ssbld +++| THEN
01463 M00S01345.ssbld +++| BEGIN
01464 M00S01346.ssbld +++| BLMSG$LN[0] = MSG$BADENT;
01465 M00S01347.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01466 M00S01348.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
01467 M00S01349.ssbld +++| END
01468 M00S01350.ssbld +++|
01469 M00S01351.ssbld +++| SCOL = NCOL;
01470 M00S01352.ssbld +++| END
01471 M00S01353.ssbld +++|
01472 M00S01354.ssbld +++| TEST DIRNUM;
01473 M00S01355.ssbld +++|
01474 M00S01356.ssbld +++|M861SM:
01475 M00S01357.ssbld +++| SMNUM = SMNUM + 1;
01476 M00S01358.ssbld +++| P<UDT$SMA> = LOC(BL$UDT$M861[SMNUM]);
01477 M00S01359.ssbld +++| IF ( ARGKEY2 NQ NM$KEY2[2] ) AND ( ARGKEY3 NQ NM$KEY3[9] )
01478 M00S01360.ssbld +++| THEN
01479 M00S01361.ssbld +++| BEGIN
01480 M00S01362.ssbld +++| BLMSG$LN[0] = MSG$BDORD;
01481 M00S01363.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01482 M00S01364.ssbld +++| RESTPFP(PFP$ABORT);
01483 M00S01365.ssbld +++| END
01484 M00S01366.ssbld +++|
01485 M00S01367.ssbld +++| ARGKEY2 = NM$KEY2[11];
01486 M00S01368.ssbld +++|
01487 M00S01369.ssbld +++| IF ( C<2,1>DIRLINE LS "A" ) OR ( C<2,1>DIRLINE GR "H" )
01488 M00S01370.ssbld +++| THEN
01489 M00S01371.ssbld +++| BEGIN
01490 M00S01372.ssbld +++| BLMSG$LN[0] = MSG$BADEST;
01491 M00S01373.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01492 M00S01374.ssbld +++| RESTPFP(PFP$ABORT);
01493 M00S01375.ssbld +++| END
01494 M00S01376.ssbld +++|
01495 M00S01377.ssbld +++| SM$ID[1] = C<2,1>DIRLINE;
01496 M00S01378.ssbld +++| SM$EXIST[1] = TRUE;
01497 M01S00118.ssbld1 +++|
01498 M01S00119.ssbld1 +++|#
01499 M01S00120.ssbld1 +++|* INITIALIZE DRD STAGE/DESTAGE DEFAULTS, SUBJECT TO LATER CHANGE
01500 M01S00121.ssbld1 +++|#
01501 M01S00122.ssbld1 +++|
01502 M01S00123.ssbld1 +++| SM$STNUM[1] = 2;
01503 M01S00124.ssbld1 +++| SM$DSNUM[1] = 1;
01504 M00S01379.ssbld +++| IF C<3,1>DIRLINE NQ "="
01505 M00S01380.ssbld +++| THEN
01506 M00S01381.ssbld +++| BEGIN
01507 M00S01382.ssbld +++| BLMSG$LN[0] = " RDSUDT - *SM* ENTRY MISSING = SIGN.";
01508 M00S01383.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01509 M00S01384.ssbld +++| RESTPFP(PFP$ABORT);
01510 M00S01385.ssbld +++| END
01511 M00S01386.ssbld +++|
01512 M00S01387.ssbld +++| IF ( C<4,2>DIRLINE NQ "ON" ) AND ( C<4,3>DIRLINE NQ "OFF" )
01513 M00S01388.ssbld +++| THEN
01514 M00S01389.ssbld +++| BEGIN
01515 M00S01390.ssbld +++| BLMSG$LN[0] = MSG$BDST;
01516 M00S01391.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01517 M00S01392.ssbld +++| RESTPFP(PFP$ABORT);
01518 M00S01393.ssbld +++| END
01519 M00S01394.ssbld +++|
01520 M00S01395.ssbld +++| IF C<4,2>DIRLINE EQ "ON"
01521 M00S01396.ssbld +++| THEN
01522 M00S01397.ssbld +++| BEGIN
01523 M00S01398.ssbld +++| SCOL = 6;
01524 M00S01399.ssbld +++| SM$ON[1] = TRUE;
01525 M00S01400.ssbld +++| END
01526 M00S01401.ssbld +++|
01527 M00S01402.ssbld +++| ELSE
01528 M00S01403.ssbld +++| BEGIN
01529 M00S01404.ssbld +++| SCOL = 7;
01530 M00S01405.ssbld +++| END
01531 M00S01406.ssbld +++|
01532 M00S01407.ssbld +++| IF C<SCOL,1>DIRLINE NQ COMMA
01533 M00S01408.ssbld +++| THEN
01534 M00S01409.ssbld +++| BEGIN
01535 M00S01410.ssbld +++| BLMSG$LN[0] = "RDSUDT - *SM* COMMAND MISSING COMMA.";
01536 M00S01411.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01537 M00S01412.ssbld +++| RESTPFP(PFP$ABORT);
01538 M00S01413.ssbld +++| END
01539 M00S01414.ssbld +++|
01540 M00S01415.ssbld +++| SCOL = SCOL +1;
01541 M00S01416.ssbld +++| IF C<SCOL,2>DIRLINE NQ NM$KEY2[10]
01542 M00S01417.ssbld +++| THEN
01543 M00S01418.ssbld +++| BEGIN
01544 M00S01419.ssbld +++| BLMSG$LN[0] = MSG$BADST;
01545 M00S01420.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01546 M00S01421.ssbld +++| RESTPFP(PFP$ABORT);
01547 M00S01422.ssbld +++| END
01548 M00S01423.ssbld +++|
01549 M00S01424.ssbld +++| SCOL = SCOL+2;
01550 M00S01425.ssbld +++| CHAR1 = C<SCOL,1>DIRLINE;
01551 M00S01426.ssbld +++| STAT = XDXB(CHAR1,0,ACCESSOR);
01552 M00S01427.ssbld +++| IF STAT NQ 0
01553 M00S01428.ssbld +++| THEN
01554 M00S01429.ssbld +++| BEGIN
01555 M00S01430.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01556 M00S01431.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01557 M00S01432.ssbld +++| RESTPFP(PFP$ABORT);
01558 M00S01433.ssbld +++| END
01559 M00S01434.ssbld +++|
Line S01435 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01560 M01S01435.ssbld1 ---| IF ( ACCESSOR LS 0 ) OR ( ACCESSOR GR 3 )
Line S00125 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01561 M01S00125.ssbld1 +++| IF ((ACCESSOR LS 0) OR (ACCESSOR GR 7))
01562 M00S01436.ssbld +++| THEN
01563 M00S01437.ssbld +++| BEGIN
01564 M00S01438.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01565 M00S01439.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01566 M00S01440.ssbld +++| RESTPFP(PFP$ABORT);
01567 M00S01441.ssbld +++| END
01568 M00S01442.ssbld +++|
01569 M00S01443.ssbld +++| SCOL=SCOL+1;
01570 M00S01444.ssbld +++| IF C<SCOL,1>DIRLINE NQ COMMA
01571 M00S01445.ssbld +++| THEN
01572 M00S01446.ssbld +++| BEGIN
01573 M00S01447.ssbld +++| BLMSG$LN[0] = MSG$SYNER;
01574 M00S01448.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01575 M00S01449.ssbld +++| RESTPFP(PFP$ABORT);
01576 M00S01450.ssbld +++| END
01577 M00S01451.ssbld +++|
01578 M00S01452.ssbld +++| SCOL = SCOL+1;
01579 M00S01453.ssbld +++|
01580 M00S01454.ssbld +++|#
01581 M00S01455.ssbld +++|* LINK M862-S WITH M861-S
01582 M00S01456.ssbld +++|#
01583 M00S01457.ssbld +++|
01584 M00S01458.ssbld +++| LOOPK = FALSE;
01585 M00S01459.ssbld +++| SLOWFOR J = 1 STEP 1 WHILE NOT LOOPK
01586 M00S01460.ssbld +++| DO
01587 M00S01461.ssbld +++| BEGIN
01588 M00S01462.ssbld +++| IF C<SCOL,1>DIRLINE EQ COMMA
01589 M00S01463.ssbld +++| THEN
01590 M00S01464.ssbld +++| BEGIN
01591 M00S01465.ssbld +++| SCOL = SCOL+1;
01592 M00S01466.ssbld +++| IF J GR MAX$SMCU
01593 M00S01467.ssbld +++| THEN
01594 M00S01468.ssbld +++| BEGIN
01595 M00S01469.ssbld +++| LOOPK = TRUE;
01596 M00S01470.ssbld +++| TEST J;
01597 M00S01471.ssbld +++| END
01598 M00S01472.ssbld +++|
01599 M00S01473.ssbld +++| TEST J;
01600 M00S01474.ssbld +++| END
01601 M00S01475.ssbld +++|
01602 M00S01476.ssbld +++| IF ( C<SCOL,2>DIRLINE NQ NM$KEY2[2] ) ##
01603 M00S01477.ssbld +++| AND ( C<SCOL,3>DIRLINE NQ NM$KEY3[8] )
01604 M00S01478.ssbld +++| THEN
01605 M00S01479.ssbld +++| BEGIN
01606 M00S01480.ssbld +++| BLMSG$LN[0] = MSG$STCON;
01607 M00S01481.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01608 M00S01482.ssbld +++| RESTPFP(PFP$ABORT);
01609 M00S01483.ssbld +++| END
01610 M00S01484.ssbld +++|
01611 M00S01485.ssbld +++| IF C<SCOL,3>DIRLINE EQ NM$KEY3[8]
01612 M00S01486.ssbld +++| THEN
01613 M00S01487.ssbld +++| BEGIN
01614 M00S01488.ssbld +++| LOOPK = TRUE;
01615 M00S01489.ssbld +++| TEST J;
01616 M00S01490.ssbld +++| END
01617 M00S01491.ssbld +++|
01618 M00S01492.ssbld +++| IF J GR MAX$SMCU
01619 M00S01493.ssbld +++| THEN
01620 M00S01494.ssbld +++| BEGIN
01621 M00S01495.ssbld +++| BLMSG$LN[0] = MSG$BADENT;
01622 M00S01496.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01623 M00S01497.ssbld +++| RESTPFP(PFP$ABORT);
01624 M00S01498.ssbld +++| END
01625 M00S01499.ssbld +++|
01626 M00S01500.ssbld +++|
01627 M00S01501.ssbld +++| SCOL = SCOL+2;
Line S01502 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01628 M01S01502.ssbld1 ---| CHAR2 = C<SCOL,2>DIRLINE;
01629 M01S01503.ssbld1 ---| STAT = XDXB(CHAR2,0,ORD);
Line S00126 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01630 M01S00126.ssbld1 +++| CHAR3 = C<SCOL,3>DIRLINE;
01631 M01S00127.ssbld1 +++| STAT = XDXB(CHAR3,0,ORD); # ASSUME 3-CHARACTER CU ORDINAL #
01632 M00S01504.ssbld +++| IF STAT NQ 0
01633 M00S01505.ssbld +++| THEN
01634 M00S01506.ssbld +++| BEGIN
Line S01507 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01635 M01S01507.ssbld1 ---| BLMSG$LN[0] = MSG$BADADR;
01636 M01S01508.ssbld1 ---| MESSAGE(BLMSG[0],SYSUDF1);
01637 M01S01509.ssbld1 ---| RESTPFP(PFP$ABORT);
Line S00128 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01638 M01S00128.ssbld1 +++| CHAR2 = C<SCOL,2>DIRLINE;
01639 M01S00129.ssbld1 +++| STAT = XDXB(CHAR2,0,ORD); # ASSUME 2-CHARACTER CU ORDINAL #
01640 M01S00130.ssbld1 +++| SCOL = SCOL + 2;
01641 M01S00131.ssbld1 +++| IF STAT NQ 0
01642 M01S00132.ssbld1 +++| THEN # BAD CONTROLLER ORDINAL #
01643 M01S00133.ssbld1 +++| BEGIN # EXIT #
01644 M01S00134.ssbld1 +++| BLMSG$LN[0] = MSG$BADADR;
01645 M01S00135.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01646 M01S00136.ssbld1 +++| RESTPFP(PFP$ABORT);
01647 M01S00137.ssbld1 +++| END # EXIT #
01648 M01S00138.ssbld1 +++|
01649 M00S01510.ssbld +++| END
01650 M00S01511.ssbld +++|
Line S01512 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01651 M01S01512.ssbld1 ---| SCOL = SCOL+3;
Line S00139 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01652 M01S00139.ssbld1 +++| ELSE # BUMP POSITION COUNTER #
01653 M01S00140.ssbld1 +++| BEGIN # BUMP #
01654 M01S00141.ssbld1 +++| SCOL = SCOL + 3;
01655 M01S00142.ssbld1 +++| END # BUMP #
01656 M01S00143.ssbld1 +++|
01657 M01S00144.ssbld1 +++| IF C<SCOL,1>DIRLINE NQ COMMA
01658 M01S00145.ssbld1 +++| THEN # BAD SYNTAX #
01659 M01S00146.ssbld1 +++| BEGIN # EXIT #
01660 M01S00147.ssbld1 +++| BLMSG$LN[0] = MSG$SYNER;
01661 M01S00148.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01662 M01S00149.ssbld1 +++| RESTPFP(PFP$ABORT);
01663 M01S00150.ssbld1 +++| END # EXIT #
01664 M01S00151.ssbld1 +++|
01665 M01S00152.ssbld1 +++| SCOL = SCOL + 1;
01666 M00S01513.ssbld +++| LOOPC = FALSE;
01667 M00S01514.ssbld +++| SLOWFOR K = 1 STEP 1 WHILE NOT LOOPC
01668 M00S01515.ssbld +++| DO
01669 M00S01516.ssbld +++| BEGIN
01670 M00S01517.ssbld +++| P<UDT$CN> = LOC(BL$UDT$M862[K]);
01671 M00S01518.ssbld +++| IF UD$ESTO[1] NQ ORD
01672 M00S01519.ssbld +++| THEN
01673 M00S01520.ssbld +++| BEGIN
01674 M00S01521.ssbld +++| IF K GQ MAXCTN
01675 M00S01522.ssbld +++| THEN
01676 M00S01523.ssbld +++| BEGIN
01677 M00S01524.ssbld +++| BLMSG$LN[0] = MSG$STCON;
01678 M00S01525.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
01679 M00S01526.ssbld +++| RESTPFP(PFP$ABORT);
01680 M00S01527.ssbld +++| END
01681 M00S01528.ssbld +++|
01682 M00S01529.ssbld +++| END
01683 M00S01530.ssbld +++|
01684 M00S01531.ssbld +++| IF UD$ESTO[1] EQ ORD
01685 M00S01532.ssbld +++| THEN
01686 M00S01533.ssbld +++| BEGIN
01687 M00S01534.ssbld +++| LOOPC = TRUE;
01688 M00S01535.ssbld +++| TEST K;
01689 M00S01536.ssbld +++| END
01690 M00S01537.ssbld +++|
01691 M00S01538.ssbld +++| TEST K;
01692 M00S01539.ssbld +++| END
01693 M00S01540.ssbld +++|
01694 M00S01541.ssbld +++|#
01695 M00S01542.ssbld +++|* INSERT ACCESSOR DEVICE ADDRESS INTO M861 TABLE
01696 M00S01543.ssbld +++|#
01697 M00S01544.ssbld +++|
01698 M00S01545.ssbld +++| SM$SUN[1] = ACCESSOR;
01699 M00S01546.ssbld +++|
01700 M00S01547.ssbld +++|#
01701 M00S01548.ssbld +++|* MOVE ACCESSOR LINKAGE TO M861 TABLE
01702 M00S01549.ssbld +++|#
01703 M00S01550.ssbld +++|
01704 M00S01551.ssbld +++| K = K-1;
01705 M00S01552.ssbld +++| IF ( SM$STS0[1] NQ 0 ) ##
01706 M00S01553.ssbld +++| AND ( SM$STS1[1] NQ 0 )
01707 M00S01554.ssbld +++| THEN
01708 M00S01555.ssbld +++| BEGIN
01709 M00S01556.ssbld +++| BLMSG$LN[0] = MSG$EXPATH;
01710 M00S01557.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1); # ERROR IN CONFIGURATION FILE #
01711 M00S01558.ssbld +++| RESTPFP(PFP$ABORT);
01712 M00S01559.ssbld +++| END
01713 M00S01560.ssbld +++|
01714 M01S00153.ssbld1 +++| IF B<(ACCESSOR*6)+PATH$DF"U$EXISTS",1>UD$AIF0[1] EQ ON
01715 M01S00154.ssbld1 +++| THEN # AIF-AC PATH FOUND #
01716 M01S00155.ssbld1 +++| BEGIN # SM #
01717 M01S00156.ssbld1 +++| B<ACCESSOR*6,6>UD$SMAIF[1] = SMNUM; # LINK SM TO CU #
01718 M01S00157.ssbld1 +++| END # SM #
01719 M01S00158.ssbld1 +++|
01720 M01S00159.ssbld1 +++| IF B<(ACCESSOR*6)+PATH$DF"U$EXISTS",1>UD$AIF1[1] EQ ON
01721 M01S00160.ssbld1 +++| THEN # AIF-AC PATH FOUND #
01722 M01S00161.ssbld1 +++| BEGIN # SM #
01723 M01S00162.ssbld1 +++| B<ACCESSOR*6,6>UD$SMAIF[1] = SMNUM; # LINK SM TO CU #
01724 M01S00163.ssbld1 +++| END # SM #
01725 M01S00164.ssbld1 +++|
01726 M00S01561.ssbld +++| IF SM$STS0[1] EQ 0
01727 M00S01562.ssbld +++| THEN
01728 M00S01563.ssbld +++| BEGIN
01729 M00S01564.ssbld +++| SM$STS0[1] = SM$FLAG[1];
01730 M00S01565.ssbld +++| SM$CUO0[1] = K;
Line S01566 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01731 M01S01566.ssbld1 ---| SLOWFOR I = 0 STEP 1 UNTIL MAX$AC
01732 M01S01567.ssbld1 ---| DO
01733 M01S01568.ssbld1 ---| BEGIN
01734 M01S01569.ssbld1 ---| IF B<I*6,6>UD$AIF0[1] NQ 0
01735 M01S01570.ssbld1 ---| AND ACCESSOR EQ I
01736 M01S01571.ssbld1 ---| THEN
01737 M01S01572.ssbld1 ---| BEGIN
01738 M01S01573.ssbld1 ---| B<I*6,6>UD$SMAIF0[1] = SMNUM; # LINK SM TO CU #
01739 M01S01574.ssbld1 ---| END
01740 M01S01575.ssbld1 ---|
01741 M01S01576.ssbld1 ---| IF B<I*6,6>UD$AIF1[1] NQ 0
01742 M01S01577.ssbld1 ---| AND ACCESSOR EQ I
01743 M01S01578.ssbld1 ---| THEN
01744 M01S01579.ssbld1 ---| BEGIN
01745 M01S01580.ssbld1 ---| B<I*6,6>UD$SMAIF1[1] = SMNUM; # LINK SM TO CU #
01746 M01S01581.ssbld1 ---| END
01747 M01S01582.ssbld1 ---|
01748 M01S01583.ssbld1 ---| TEST I;
01749 M01S01584.ssbld1 ---| END # TEST I #
01750 M01S01585.ssbld1 ---|
01751 M00S01586.ssbld ---| TEST J;
01752 M00S01587.ssbld ---| END
01753 M00S01588.ssbld ---|
01754 M00S01589.ssbld ---| IF SM$STS1[1] EQ 0
01755 M00S01590.ssbld ---| THEN
01756 M00S01591.ssbld ---| BEGIN
01757 M00S01592.ssbld ---| SM$STS1[1] = SM$FLAG[1];
01758 M00S01593.ssbld ---| SM$CUO1[1] = K;
01759 M01S01594.ssbld1 ---| SLOWFOR I = 0 STEP 1 UNTIL MAX$AC
01760 M01S01595.ssbld1 ---| DO
01761 M01S01596.ssbld1 ---| BEGIN
01762 M01S01597.ssbld1 ---| IF B<I*6,6>UD$AIF0[1] NQ 0
01763 M01S01598.ssbld1 ---| AND ACCESSOR EQ I
01764 M01S01599.ssbld1 ---| THEN
01765 M01S01600.ssbld1 ---| BEGIN
01766 M01S01601.ssbld1 ---| B<I*6,6>UD$SMAIF0[1] = SMNUM; # LINK SM TO CU #
01767 M01S01602.ssbld1 ---| END
01768 M01S01603.ssbld1 ---|
01769 M01S01604.ssbld1 ---| IF B<I*6,6>UD$AIF1[1] NQ 0
01770 M01S01605.ssbld1 ---| AND ACCESSOR EQ I
01771 M01S01606.ssbld1 ---| THEN
01772 M01S01607.ssbld1 ---| BEGIN
01773 M01S01608.ssbld1 ---| B<I*6,6>UD$SMAIF1[1] = SMNUM; # LINK SM TO CU #
01774 M01S01609.ssbld1 ---| END
01775 M01S01610.ssbld1 ---|
01776 M01S01611.ssbld1 ---| TEST I;
01777 M01S01612.ssbld1 ---| END # TEST I #
01778 M01S01613.ssbld1 ---|
01779 M00S01614.ssbld ---| TEST J;
01780 M00S01615.ssbld ---| END
01781 M00S01616.ssbld ---|
01782 M00S01617.ssbld ---|
01783 M00S01618.ssbld ---| END # TEST J #
01784 M00S01619.ssbld ---|
01785 M00S01620.ssbld ---|#
01786 M00S01621.ssbld ---|* NOW CRACK DRD COMMANDS
01787 M00S01622.ssbld ---|#
01788 M00S01623.ssbld ---|
01789 M00S01624.ssbld ---| DEVTYPE = NM$KEY3[8];
01790 M00S01625.ssbld ---| NUMCH = 3;
01791 M00S01626.ssbld ---| LOOPK = FALSE;
01792 M00S01627.ssbld ---| SLOWFOR J = 0 STEP 1 WHILE NOT LOOPK
01793 M00S01628.ssbld ---| DO
01794 M00S01629.ssbld ---| BEGIN
01795 M00S01630.ssbld ---| NEXTPRM( DIRLINE,SCOL,DEVTYPE, ##
01796 M00S01631.ssbld ---| NUMCH,ORD,NCOL,STAT,TERMINATOR);
Line S00165 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01797 M01S00165.ssbld1 +++| SAVEDORD = ORD; # IN CASE DRD IS 8-15 #
01798 M01S00166.ssbld1 +++| IF ORD GR MAX$DRD
01799 M01S00167.ssbld1 +++| THEN # ALLOW FOR FULL CONFIGURATION #
01800 M01S00168.ssbld1 +++| BEGIN
01801 M01S00169.ssbld1 +++| ORD = ORD - MAX$DRD - 1;
01802 M01S00170.ssbld1 +++| END
01803 M01S00171.ssbld1 +++|
01804 M00S01632.ssbld +++| IF STAT NQ 2
01805 M00S01633.ssbld +++| THEN
01806 M00S01634.ssbld +++| BEGIN
01807 M00S01635.ssbld +++| SMDRD ( 1 , ORD , PATH$DF"U$EXISTS" , 1 );
01808 M00S01636.ssbld +++|
01809 M00S01637.ssbld +++|
01810 M00S01638.ssbld +++|#
01811 M00S01639.ssbld +++|* VALIDATE ACCESSOR AND DRD DEVICE ADDRESSES
01812 M00S01640.ssbld +++|#
01813 M00S01641.ssbld +++|
01814 M00S01642.ssbld +++| IF ( ( ACCESSOR EQ 0 ) ##
01815 M00S01643.ssbld +++| AND ( ORD GR 1 ) ) ##
01816 M00S01644.ssbld +++| OR ( ( ACCESSOR EQ 1 ) ##
01817 M00S01645.ssbld +++| AND ( ORD LS 2 OR ORD GR 3 ) ) ##
01818 M00S01646.ssbld +++| OR ( ( ACCESSOR EQ 2 ) ##
01819 M00S01647.ssbld +++| AND ( ORD LS 4 OR ORD GR 5 ) ) ##
01820 M00S01648.ssbld +++| OR ( ( ACCESSOR EQ 3 ) ##
01821 M00S01649.ssbld +++| AND ( ORD LS 6 ) ) ##
01822 M00S01650.ssbld +++| THEN
01823 M00S01651.ssbld +++| BEGIN
01824 M00S01652.ssbld +++| BLMSG$LN[0] = MSG$BADADR;
01825 M00S01653.ssbld +++| MESSAGE ( BLMSG[0] , SYSUDF1 ) ##
01826 M00S01654.ssbld +++| ;
01827 M00S01655.ssbld +++| RESTPFP ( PFP$ABORT );
01828 M00S01656.ssbld +++| END
01829 M00S01657.ssbld +++|
01830 M00S01658.ssbld +++|#
01831 M00S01659.ssbld +++|* ASSOCIATE EVEN NUMBERED DRD-S WITH FIRST POSITION IN TABLE
01832 M00S01660.ssbld +++|#
01833 M00S01661.ssbld +++|
01834 M00S01662.ssbld +++| IF ( ORD EQ 0 ) ##
01835 M00S01663.ssbld +++| OR ( ORD EQ 2 ) ##
01836 M00S01664.ssbld +++| OR ( ORD EQ 4 ) ##
01837 M00S01665.ssbld +++| OR ( ORD EQ 6 ) ##
01838 M00S01666.ssbld +++| THEN
01839 M00S01667.ssbld +++| BEGIN
Line S01668 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01840 M01S01668.ssbld1 ---| D0$SUN[1] = ORD;
Line S00172 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01841 M01S00172.ssbld1 +++| D0$SUN[1] = SAVEDORD; # STORE TRUE NUMBER #
01842 M00S01669.ssbld +++| END
01843 M00S01670.ssbld +++|
01844 M00S01671.ssbld +++| ELSE
01845 M00S01672.ssbld +++| BEGIN
Line S01673 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01846 M01S01673.ssbld1 ---| D1$SUN[1] = ORD;
Line S00173 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01847 M01S00173.ssbld1 +++| D1$SUN[1] = SAVEDORD; # STORE TRUE NUMBER #
01848 M00S01674.ssbld +++| END
01849 M00S01675.ssbld +++|
01850 M00S01676.ssbld +++| END
01851 M00S01677.ssbld +++|
01852 M00S01678.ssbld +++| IF STAT EQ 2
01853 M00S01679.ssbld +++| THEN
01854 M00S01680.ssbld +++| BEGIN
01855 M00S01681.ssbld +++| SCOL = NCOL;
01856 M00S01682.ssbld +++| TEST J;
01857 M00S01683.ssbld +++| END
01858 M00S01684.ssbld +++|
01859 M00S01685.ssbld +++|
01860 M00S01686.ssbld +++| IF STAT EQ 1
01861 M00S01687.ssbld +++| THEN
01862 M00S01688.ssbld +++| BEGIN
01863 M00S01689.ssbld +++| SMDRD ( 1 , ORD , PATH$DF"U$ON" , 1 );
01864 M00S01690.ssbld +++| END
01865 M00S01691.ssbld +++|
01866 M00S01692.ssbld +++|
01867 M00S01693.ssbld +++| IF TERMINATOR EQ PERIOD
01868 M00S01694.ssbld +++| THEN
01869 M00S01695.ssbld +++| BEGIN
01870 M00S01696.ssbld +++| LOOPK = TRUE;
01871 M00S01697.ssbld +++| TEST J;
01872 M00S01698.ssbld +++| END
01873 M00S01699.ssbld +++|
Line S01700 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01874 M01S01700.ssbld1 ---| IF J GQ MAX$SMDRD
Line S00174 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01875 M01S00174.ssbld1 +++| IF J GQ MAX$SMDRD - 1
01876 M00S01701.ssbld +++| THEN
Line S01702 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01877 M01S01702.ssbld1 ---| BEGIN
01878 M01S01703.ssbld1 ---| BLMSG$LN[0] =MSG$STCON;
01879 M01S01704.ssbld1 ---| MESSAGE(BLMSG[0],SYSUDF1);
01880 M01S01705.ssbld1 ---| RESTPFP(PFP$ABORT);
01881 M01S01706.ssbld1 ---| END
Line S00175 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01882 M01S00175.ssbld1 +++| BEGIN # SEARCH FOR DESTAGE AND STAGE PARAMETERS #
01883 M01S00176.ssbld1 +++| SCOL = NCOL;
01884 M01S00177.ssbld1 +++|
01885 M01S00178.ssbld1 +++|#
01886 M01S00179.ssbld1 +++|* CHECK FOR STAGE/DESTAGE DRD PARAMETERS
01887 M01S00180.ssbld1 +++|#
01888 M01S00181.ssbld1 +++|
01889 M01S00182.ssbld1 +++| IF C<SCOL,3>DIRLINE NQ "DS="
01890 M01S00183.ssbld1 +++| THEN
01891 M01S00184.ssbld1 +++| BEGIN # ERROR IN STATMENT #
01892 M01S00185.ssbld1 +++| BLMSG$LN[0] = MSG$SM$DS;
01893 M01S00186.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01894 M01S00187.ssbld1 +++| RESTPFP(PFP$ABORT);
01895 M01S00188.ssbld1 +++| END # ERROR IN STATEMENT #
01896 M01S00189.ssbld1 +++|
01897 M01S00190.ssbld1 +++| SCOL = SCOL + 3;
01898 M01S00191.ssbld1 +++| CHAR1 = C<SCOL,1>DIRLINE; # GET NUMBER OF DESTAGING DRDS #
01899 M01S00192.ssbld1 +++| STAT = XDXB(CHAR1,0,TMPI);
01900 M01S00193.ssbld1 +++| IF STAT NQ 0
01901 M01S00194.ssbld1 +++| THEN
01902 M01S00195.ssbld1 +++| BEGIN # NOT A NUMBER #
01903 M01S00196.ssbld1 +++| BLMSG$LN[0] = MSG$SM$DS;
01904 M01S00197.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01905 M01S00198.ssbld1 +++| RESTPFP(PFP$ABORT);
01906 M01S00199.ssbld1 +++| END # NOT A NUMBER #
01907 M01S00200.ssbld1 +++|
01908 M01S00201.ssbld1 +++| IF TMPI LS 1 ##
01909 M01S00202.ssbld1 +++| OR TMPI GR 2
01910 M01S00203.ssbld1 +++| THEN
01911 M01S00204.ssbld1 +++| BEGIN # NUMBER OUT OF RANGE #
01912 M01S00205.ssbld1 +++| BLMSG$LN[0] = MSG$SM$DS;
01913 M01S00206.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01914 M01S00207.ssbld1 +++| RESTPFP(PFP$ABORT);
01915 M01S00208.ssbld1 +++| END # NUMBER OUT OF RANGE #
01916 M01S00209.ssbld1 +++|
01917 M01S00210.ssbld1 +++| SM$DSNUM[1] = TMPI; # NUMBER OF DRDS FOR DESTAGING #
01918 M01S00211.ssbld1 +++| SCOL = SCOL + 1;
01919 M01S00212.ssbld1 +++|
01920 M01S00213.ssbld1 +++| IF C<SCOL,4>DIRLINE NQ ",ST="
01921 M01S00214.ssbld1 +++| THEN
01922 M01S00215.ssbld1 +++| BEGIN # ERROR IN STATEMENT #
01923 M01S00216.ssbld1 +++| BLMSG$LN[0] = MSG$SM$ST;
01924 M01S00217.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01925 M01S00218.ssbld1 +++| RESTPFP(PFP$ABORT);
01926 M01S00219.ssbld1 +++| END # ERROR IN STATEMENT #
01927 M01S00220.ssbld1 +++|
01928 M01S00221.ssbld1 +++| SCOL = SCOL + 4;
01929 M01S00222.ssbld1 +++| CHAR1 = C<SCOL,1>DIRLINE; # GET NUMBER OF STAGING DRDS #
01930 M01S00223.ssbld1 +++| STAT = XDXB(CHAR1,0,TMPI);
01931 M01S00224.ssbld1 +++| IF STAT NQ 0
01932 M01S00225.ssbld1 +++| THEN
01933 M01S00226.ssbld1 +++| BEGIN # NOT A NUMBER #
01934 M01S00227.ssbld1 +++| BLMSG$LN[0] = MSG$SM$ST;
01935 M01S00228.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01936 M01S00229.ssbld1 +++| RESTPFP(PFP$ABORT);
01937 M01S00230.ssbld1 +++| END # NOT A NUMBER #
01938 M01S00231.ssbld1 +++|
01939 M01S00232.ssbld1 +++| IF TMPI LS 1 ##
01940 M01S00233.ssbld1 +++| OR TMPI GR 2
01941 M01S00234.ssbld1 +++| THEN
01942 M01S00235.ssbld1 +++| BEGIN # NUMBER OUT OF RANGE #
01943 M01S00236.ssbld1 +++| BLMSG$LN[0] = MSG$SM$ST;
01944 M01S00237.ssbld1 +++| MESSAGE(BLMSG[0],SYSUDF1);
01945 M01S00238.ssbld1 +++| RESTPFP(PFP$ABORT);
01946 M01S00239.ssbld1 +++| END # NUMBER OUT OF RANGE #
01947 M01S00240.ssbld1 +++|
01948 M01S00241.ssbld1 +++| SM$STNUM[1] = TMPI; # NUMBER OF DRDS FOR STAGING #
01949 M01S00242.ssbld1 +++| LOOPK = TRUE;
01950 M01S00243.ssbld1 +++| TEST J;
01951 M01S00244.ssbld1 +++| END # SEARCH FOR DESTAGE AND STAGE PARAMETERS #
01952 M00S01707.ssbld +++|
01953 M00S01708.ssbld +++| SCOL = NCOL;
01954 M00S01709.ssbld +++| END # TEST J #
01955 M00S01710.ssbld +++|
01956 M00S01711.ssbld +++|#
01957 M00S01712.ssbld +++|* MOVE DRC/DRD PATH STATUS TO DRD TABLE
01958 M00S01713.ssbld +++|#
01959 M00S01714.ssbld +++|
01960 M00S01715.ssbld +++|#
01961 M00S01716.ssbld +++|* NOTE:
01962 M00S01717.ssbld +++|* IF THERE ARE TWO SEPERATE M862-S CONNECTED TO THE SAME M861 SM,
01963 M00S01718.ssbld +++|* THEN THE SECOND M862 ( FROM THE START OF THE BUDT ) INTO THE SM
01964 M00S01719.ssbld +++|* IS ( BY DEFINITION ) THE SECOND CU IN THE SM TABLE. HENCE, IT CAN
01965 M00S01720.ssbld +++|* ONLY INTERFACE TO THE *STSS* PATH IN THE *DRD* TABLES.
01966 M00S01721.ssbld +++|#
01967 M01S00245.ssbld1 +++| P<UDT$CN> = LOC(BL$UDT$M862[1]);
01968 M00S01722.ssbld +++| IF SM$CNT0[1] NQ 0
01969 M00S01723.ssbld +++| THEN
01970 M00S01724.ssbld +++| BEGIN # CU0/DRD LINKUP #
Line S01725 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
01971 M01S01725.ssbld1 ---| P<UDT$CN> = LOC(BL$UDT$M862[SM$CUO0[1]]);
01972 M01S01726.ssbld1 ---| LOOPC = FALSE;
01973 M01S01727.ssbld1 ---| SLOWFOR L = 0 STEP 2 WHILE ( L LQ MAX$DRD - 1 )
01974 M01S01728.ssbld1 ---| AND ( NOT LOOPC )
01975 M01S01729.ssbld1 ---| DO
01976 M01S01730.ssbld1 ---| BEGIN # LINK DRD0 WITH APPROPRIATE DRCS #
01977 M01S01731.ssbld1 ---| IF B<L*6+PATH$DF"U$EXISTS",1>UD$DRCP0[1] NQ 0 ##
01978 M01S01732.ssbld1 ---| OR B<L*6+PATH$DF"U$EXISTS",1>UD$DRCP1[1] NQ 0
01979 M01S01733.ssbld1 ---| THEN
01980 M01S01734.ssbld1 ---| BEGIN # SET STATUS FLAGS #
01981 M01S01735.ssbld1 ---| IF D0$FLAG[1] NQ 0
01982 M01S01736.ssbld1 ---| AND D0$STSP[1] EQ 0
01983 M01S01737.ssbld1 ---| THEN
01984 M01S01738.ssbld1 ---| BEGIN
01985 M01S01739.ssbld1 ---| UPDRDST ( 0 , 1 );
01986 M01S01740.ssbld1 ---| LOOPC = TRUE;
01987 M01S01741.ssbld1 ---| TEST L;
01988 M01S01742.ssbld1 ---| END
01989 M01S01743.ssbld1 ---|
01990 M01S01744.ssbld1 ---| TEST L;
01991 M01S01745.ssbld1 ---| END # SET STATUS FLAGS #
01992 M01S01746.ssbld1 ---|
01993 M01S01747.ssbld1 ---| END # LINK DRD0 WITH APPROPRIATE DRCS #
01994 M01S01748.ssbld1 ---|
01995 M01S01749.ssbld1 ---| LOOPC = FALSE;
01996 M01S01750.ssbld1 ---| SLOWFOR L = 1 STEP 2 WHILE ( L LQ MAX$DRD )
01997 M01S01751.ssbld1 ---| AND ( NOT LOOPC )
01998 M01S01752.ssbld1 ---| DO
01999 M01S01753.ssbld1 ---| BEGIN # LINK DRD1 WITH APPROPRIATE DRCS #
02000 M01S01754.ssbld1 ---| IF B<L*6+PATH$DF"U$EXISTS",1>UD$DRCP0[1] NQ 0 ##
02001 M01S01755.ssbld1 ---| OR B<L*6+PATH$DF"U$EXISTS",1>UD$DRCP1[1] NQ 0
02002 M01S01756.ssbld1 ---| THEN
02003 M01S01757.ssbld1 ---| BEGIN # SET STATUS FLAGS #
02004 M01S01758.ssbld1 ---| IF D1$FLAG[1] NQ 0
02005 M01S01759.ssbld1 ---| AND D1$STSP[1] EQ 0
02006 M01S01760.ssbld1 ---| THEN
02007 M01S01761.ssbld1 ---| BEGIN
02008 M01S01762.ssbld1 ---| UPDRDST ( 1 , 1 );
02009 M01S01763.ssbld1 ---| LOOPC = TRUE;
02010 M01S01764.ssbld1 ---| TEST L;
02011 M01S01765.ssbld1 ---| END
02012 M01S01766.ssbld1 ---|
02013 M01S01767.ssbld1 ---| TEST L;
02014 M01S01768.ssbld1 ---| END # SET STATUS FLAGS #
02015 M01S01769.ssbld1 ---|
02016 M01S01770.ssbld1 ---| END # LINK DRD1 WITH APPROPRIATE DRCS #
02017 M01S01771.ssbld1 ---|
Line S00246 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
02018 M01S00246.ssbld1 +++| IF D0$EXIST[1]
02019 M01S00247.ssbld1 +++| THEN # UPPER DRD EXISTS #
02020 M01S00248.ssbld1 +++| BEGIN # UPPER #
02021 M01S00249.ssbld1 +++| B<PATH$DF"U$EXISTS",1>D0$STSP[1] = 1;
02022 M01S00250.ssbld1 +++| UPDRDST(D0$SUN[1],SM$CUO0[1]);
02023 M01S00251.ssbld1 +++| END # UPPER #
02024 M01S00252.ssbld1 +++|
02025 M01S00253.ssbld1 +++| IF D1$EXIST[1]
02026 M01S00254.ssbld1 +++| THEN # LOWER DRD EXISTS #
02027 M01S00255.ssbld1 +++| BEGIN # LOWER #
02028 M01S00256.ssbld1 +++| B<PATH$DF"U$EXISTS",1>D1$STSP[1] = 1;
02029 M01S00257.ssbld1 +++| UPDRDST(D1$SUN[1],SM$CUO0[1]);
02030 M01S00258.ssbld1 +++| END # LOWER #
02031 M01S00259.ssbld1 +++|
02032 M00S01772.ssbld +++| END # CU0/DRD LINKUP #
02033 M00S01773.ssbld +++|
02034 M00S01774.ssbld +++| IF SM$CNT1[1] NQ 0
02035 M00S01775.ssbld +++| THEN
02036 M00S01776.ssbld +++| BEGIN # CU1/DRD LINKUP #
Line S01777 Modification History |
M01 (Removed by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
02037 M01S01777.ssbld1 ---| P<UDT$CN> = LOC(BL$UDT$M862[SM$CUO1[1]]);
02038 M01S01778.ssbld1 ---| LOOPC = FALSE;
02039 M01S01779.ssbld1 ---| SLOWFOR L = 0 STEP 2 WHILE ( L LQ MAX$DRD - 1 )
02040 M01S01780.ssbld1 ---| AND ( NOT LOOPC )
02041 M01S01781.ssbld1 ---| DO
02042 M01S01782.ssbld1 ---| BEGIN # LINK DRD0 WITH APPROPRIATE DRCS #
02043 M01S01783.ssbld1 ---| IF B<L*6+PATH$DF"U$EXISTS",1>UD$DRCP0[1] NQ 0 ##
02044 M01S01784.ssbld1 ---| OR B<L*6+PATH$DF"U$EXISTS",1>UD$DRCP1[1] NQ 0
02045 M01S01785.ssbld1 ---| THEN
02046 M01S01786.ssbld1 ---| BEGIN # SET STATUS FLAGS #
02047 M01S01787.ssbld1 ---| IF D0$FLAG[1] NQ 0
02048 M01S01788.ssbld1 ---| AND D0$STSS[1] EQ 0
02049 M01S01789.ssbld1 ---| THEN
02050 M01S01790.ssbld1 ---| BEGIN
02051 M01S01791.ssbld1 ---| UPDRDST ( 0 , 0 );
02052 M01S01792.ssbld1 ---| LOOPC = TRUE;
02053 M01S01793.ssbld1 ---| TEST L;
02054 M01S01794.ssbld1 ---| END
02055 M01S01795.ssbld1 ---|
02056 M01S01796.ssbld1 ---| TEST L;
02057 M01S01797.ssbld1 ---| END # SET STATUS FLAGS #
02058 M01S01798.ssbld1 ---|
02059 M01S01799.ssbld1 ---| END # LINK DRC0 WITH APPROPRIATE DRDS #
02060 M01S01800.ssbld1 ---|
02061 M01S01801.ssbld1 ---| LOOPC = FALSE;
02062 M01S01802.ssbld1 ---| SLOWFOR L = 1 STEP 2 WHILE ( L LQ MAX$DRD )
02063 M01S01803.ssbld1 ---| AND ( NOT LOOPC )
02064 M01S01804.ssbld1 ---| DO
02065 M01S01805.ssbld1 ---| BEGIN # LINK DRD1 WITH APPROPRIATE DRCS #
02066 M01S01806.ssbld1 ---| IF B<L*6+PATH$DF"U$EXISTS",1>UD$DRCP1[1] NQ 0
02067 M01S01807.ssbld1 ---| THEN
02068 M01S01808.ssbld1 ---| BEGIN # SET STATUS FLAGS #
02069 M01S01809.ssbld1 ---| IF D1$FLAG[1] NQ 0
02070 M01S01810.ssbld1 ---| AND D1$STSS[1] EQ 0
02071 M01S01811.ssbld1 ---| THEN
02072 M01S01812.ssbld1 ---| BEGIN
02073 M01S01813.ssbld1 ---| UPDRDST ( 1 , 0 );
02074 M01S01814.ssbld1 ---| LOOPC = TRUE;
02075 M01S01815.ssbld1 ---| TEST L;
02076 M01S01816.ssbld1 ---| END
02077 M01S01817.ssbld1 ---|
02078 M01S01818.ssbld1 ---| TEST L;
02079 M01S01819.ssbld1 ---| END # SET STATUS FLAGS #
02080 M01S01820.ssbld1 ---|
02081 M01S01821.ssbld1 ---| END # LINK DRD1 WITH APPRPRIATE DRCS #
02082 M01S01822.ssbld1 ---|
Line S00260 Modification History |
M01 (Added by) | ssbld1 |
Seq # *Modification Id* Act
----------------------------+
02083 M01S00260.ssbld1 +++| IF D0$EXIST[1]
02084 M01S00261.ssbld1 +++| THEN # UPPER DRD EXISTS #
02085 M01S00262.ssbld1 +++| BEGIN # UPPER #
02086 M01S00263.ssbld1 +++| B<PATH$DF"U$EXISTS",1>D0$STSS[1] = 1;
02087 M01S00264.ssbld1 +++| UPDRDST(D0$SUN[1],SM$CUO1[1]);
02088 M01S00265.ssbld1 +++| END # UPPER #
02089 M01S00266.ssbld1 +++|
02090 M01S00267.ssbld1 +++| IF D1$EXIST[1]
02091 M01S00268.ssbld1 +++| THEN # LOWER DRD EXISTS #
02092 M01S00269.ssbld1 +++| BEGIN # LOWER #
02093 M01S00270.ssbld1 +++| B<PATH$DF"U$EXISTS",1>D1$STSS[1] = 1;
02094 M01S00271.ssbld1 +++| UPDRDST(D1$SUN[1],SM$CUO1[1]);
02095 M01S00272.ssbld1 +++| END # LOWER #
02096 M01S00273.ssbld1 +++|
02097 M00S01823.ssbld +++| END # CU1/DRD LINKUP #
02098 M00S01824.ssbld +++|
02099 M00S01825.ssbld +++| TEST DIRNUM;
02100 M00S01826.ssbld +++|
02101 M00S01827.ssbld +++| END # TEST DIRNUM #
02102 M00S01828.ssbld +++|
02103 M00S01829.ssbld +++| IF NUM$CU NQ CUNUM
02104 M00S01830.ssbld +++| THEN
02105 M00S01831.ssbld +++| BEGIN
02106 M00S01832.ssbld +++| BLMSG$LN[0] = MSG$INCCU;
02107 M00S01833.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
02108 M00S01834.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP ANFd ABORT #
02109 M00S01835.ssbld +++| END
02110 M00S01836.ssbld +++|
02111 M00S01837.ssbld +++| IF NUM$SM NQ SMNUM
02112 M00S01838.ssbld +++| THEN
02113 M00S01839.ssbld +++| BEGIN
02114 M00S01840.ssbld +++| BLMSG$LN[0] = MSG$INCSM;
02115 M00S01841.ssbld +++| MESSAGE(BLMSG[0],SYSUDF1);
02116 M00S01842.ssbld +++| RESTPFP(PFP$ABORT); # RESTORE USER-S PFP AND ABORT #
02117 M00S01843.ssbld +++| END
02118 M00S01844.ssbld +++|
02119 M00S01845.ssbld +++| RETERN(BL$FET[0],RCL);
02120 M00S01846.ssbld +++| END # RDSUDT #
02121 M00S01847.ssbld +++|
02122 M00S01848.ssbld +++| TERM
02123 M00S01849.ssbld +++|PROC NEXTLIN(DIRLINE,STAT,INDEX);
02124 M00S01850.ssbld +++|
02125 M00S01851.ssbld +++|# TITLE NEXTLIN - READ NEXT LINE OF CONFIGURATION SOURCE FILE. #
02126 M00S01852.ssbld +++|
02127 M00S01853.ssbld +++| BEGIN # NEXTLIN #
02128 M00S01854.ssbld +++|
02129 M00S01855.ssbld +++|
02130 M00S01856.ssbld +++|#
02131 M00S01857.ssbld +++|*** PROC TO READ ONE LINE OF DATA FROM DATA ALREADY IN A FET.
02132 M00S01858.ssbld +++|* *NEXTLIN* READS A LINE (WHICH IS AN *SSBLD* CONFIGURATION