Seq # *Modification Id* Act
----------------------------+
02107 M00S01969.sxllr +++|* ALSO RETURNED WHEN THE REQUEST IS COMPLETED.
02108 M00S01970.sxllr +++|*
02109 M00S01971.sxllr +++|* NOTES THIS MODULE IS A PSEUDO REENTRANT ROUTINE.
02110 M00S01972.sxllr +++|#
02111 M00S01973.sxllr +++|
02112 M00S01974.sxllr +++| ITEM LLRENT U; # *LLRQ* ENTRY TO PROCESS #
02113 M00S01975.sxllr +++| ITEM LLRENTI U; # WAITTING *LLRQ* ADDRESS #
02114 M00S01976.sxllr +++| ITEM SCR1 U; # SCRATCH WORD #
02115 M00S01977.sxllr +++| ITEM SCR2 U; # SCRATCH WORD #
02116 M00S01978.sxllr +++| ITEM SCR3 U; # SCRATCH WORD #
02117 M00S01979.sxllr +++|
02118 M00S01980.sxllr +++|#
02119 M00S01981.sxllr +++|**** PROC UNL$CAR - XREF LIST BEGIN.
02120 M00S01982.sxllr +++|#
02121 M00S01983.sxllr +++|
02122 M00S01984.sxllr +++| XREF
02123 M00S01985.sxllr +++| BEGIN
02124 M00S01986.sxllr +++| PROC ADD$LNK; # ADD ENTRY TO END OF CHAIN #
02125 M00S01987.sxllr +++| PROC UCP$RES; # NOTIFY UCP OF REQUEST COMPLETE #
02126 M00S01988.sxllr +++| END
02127 M00S01989.sxllr +++|
02128 M00S01990.sxllr +++|#
02129 M00S01991.sxllr +++|**** PROC UNL$CAR - XREF LIST END.
02130 M00S01992.sxllr +++|#
02131 M00S01993.sxllr +++|
02132 M00S01994.sxllr +++| DEF LISTCON #0#; # DO NOT LIST COMMON DECKS #
02133 M00S01995.sxllr +++|
02134 M00S01996.sxllr +++|*CALL COMBFAS
02135 M00S01997.sxllr +++|*CALL COMBCHN
02136 M00S01998.sxllr +++|*CALL COMBCPR
02137 M00S01999.sxllr +++|*CALL COMBLRQ
02138 M00S02000.sxllr +++|*CALL COMBRCD
02139 M00S02001.sxllr +++|*CALL COMBUCR
02140 M00S02002.sxllr +++|*CALL COMXHLR
02141 M00S02003.sxllr +++|*CALL COMXLTC
02142 M00S02004.sxllr +++|*CALL COMXMSC
02143 M00S02005.sxllr +++|
02144 M00S02006.sxllr +++|
02145 M00S02007.sxllr +++| BASED
02146 M00S02008.sxllr +++| ARRAY CLEAR [0:0] S(1);
02147 M00S02009.sxllr +++| BEGIN
02148 M00S02010.sxllr +++| ITEM CLN U(00,36,24); # CLEAR *DRD* ASSIGNMENT #
02149 M00S02011.sxllr +++| END
02150 M00S02012.sxllr +++|
02151 M00S02013.sxllr +++|
02152 M00S02014.sxllr +++| SWITCH UNLENTR:PROCST # UNLOAD CARTRIDGE ENTRIES #
02153 M00S02015.sxllr +++| UNLINIT:INITIAL, # INITIAL ENTRY POINT #
02154 M00S02016.sxllr +++| UNLC1:CONT1; # CONTINUE AFTER DISMOUNT REQUEST
02155 M00S02017.sxllr +++| #
02156 M00S02018.sxllr +++| CONTROL EJECT;
02157 M00S02019.sxllr +++| P<LLRQ> = LLRENT;
02158 M00S02020.sxllr +++| GOTO UNLENTR[LLR$PRCST[0]];
02159 M00S02021.sxllr +++|
02160 M00S02022.sxllr +++|#
02161 M00S02023.sxllr +++|* "INITIAL" PROCESS STATE.
02162 M00S02024.sxllr +++|*
02163 M00S02025.sxllr +++|* ASSIGN THE CARTRIDGE TO THE EXIT TRAY IF THE ORIGINAL
02164 M00S02026.sxllr +++|* ASSIGNMENT WAS TH ENTRY TRAY.
02165 M00S02027.sxllr +++|#
02166 M00S02028.sxllr +++|
02167 M00S02029.sxllr +++|UNLINIT:
02168 M00S02030.sxllr +++|
02169 M00S02031.sxllr +++| IF LLR$Y[0] EQ SM$ENT$TY ##
02170 M00S02032.sxllr +++| AND LLR$Z[0] EQ SM$TY$Z
02171 M00S02033.sxllr +++| THEN
02172 M00S02034.sxllr +++| BEGIN
02173 M00S02035.sxllr +++| LLR$Y[0] = SM$EXIT$TY;
02174 M00S02036.sxllr +++| LLR$Z[0] = SM$TY$Z;
02175 M00S02037.sxllr +++| END
02176 M00S02038.sxllr +++|
02177 M00S02039.sxllr +++|
02178 M00S02040.sxllr +++|#
02179 M00S02041.sxllr +++|* DISMOUNT THE CARTRIDGE.
02180 M00S02042.sxllr +++|#
02181 M00S02043.sxllr +++|
02182 M00S02044.sxllr +++| LLR$RC[0] = REQCODE"SDISMOUNT";
02183 M00S02045.sxllr +++| LLR$PRCST[0] = PROCST"CONT1";
02184 M00S02046.sxllr +++| LLR$DRDL[0] = FALSE;
02185 M00S02047.sxllr +++| LLR$UNLD[0] = TRUE; # UNLOAD STARTED #
02186 M00S02048.sxllr +++| LLR$RS[0] = PROCST"INITIAL";
02187 M00S02049.sxllr +++| ADD$LNK(LLRENT,LCHN"DRQUEUE",0);
02188 M00S02050.sxllr +++| RETURN;
02189 M00S02051.sxllr +++|
02190 M00S02052.sxllr +++|#
02191 M00S02053.sxllr +++|* "CONT1" PROCESS STATE.
02192 M00S02054.sxllr +++|*
02193 M00S02055.sxllr +++|* UPDATE THE APPROPRIATE DATA FIELDS OF THE REQUEST AND PASS
02194 M00S02056.sxllr +++|* THE REQUEST ON TO THE NEXT PROCESS.
02195 M00S02057.sxllr +++|#
02196 M00S02058.sxllr +++|
02197 M00S02059.sxllr +++|UNLC1:
02198 M00S02060.sxllr +++|
02199 M00S02061.sxllr +++| IF LLR$RQI[0] EQ REQNAME"RQIINT"
02200 M00S02062.sxllr +++| THEN
02201 M00S02063.sxllr +++| BEGIN # INTERNAL REQUEST #
02202 M00S02064.sxllr +++| P<HLRQ> = LLR$UCPRA[0];
02203 M00S02065.sxllr +++| HLR$LRQADR[0] = 0; # DELINK *LLRA* FROM *HLRA* #
Line S02066 Modification History |
M01 (Removed by) | sxllr2 |
Seq # *Modification Id* Act
----------------------------+
02204 M01S02066.sxllr2 ---|
02205 M01S02067.sxllr2 ---| IF NOT LLR$LCF[0]
02206 M01S02068.sxllr2 ---| THEN
02207 M01S02069.sxllr2 ---| BEGIN
02208 M01S02070.sxllr2 ---| HLR$RESP[0] = RESPTYP4"OK4";
02209 M01S02071.sxllr2 ---| END
02210 M01S02072.sxllr2 ---|
Line S00058 Modification History |
M01 (Added by) | sxllr2 |
Seq # *Modification Id* Act
----------------------------+
02211 M01S00058.sxllr2 +++| HLR$RESP[0] = RESPTYP4"OK4";
02212 M00S02073.sxllr +++| ADD$LNK(LLR$UCPRA[0],LCHN"HL$READY",0);
02213 M00S02074.sxllr +++| END # INTERNAL REQUEST #
02214 M00S02075.sxllr +++|
02215 M00S02076.sxllr +++| ELSE
02216 M00S02077.sxllr +++| BEGIN # EXTERNAL REQUEST #
02217 M00S02078.sxllr +++| P<CLEAR> = LLR$DRDRA[0]; # CLEAR *DRD* RESERVE #
02218 M00S02079.sxllr +++| CLN = 0;
02219 M00S02080.sxllr +++| IF NOT LLR$UCPABT[0]
02220 M00S02081.sxllr +++| THEN # RETURN RESPONSE TO UCP #
02221 M00S02082.sxllr +++| BEGIN
02222 M00S02083.sxllr +++| LTCENTRY = LLR$LTCT[0];
02223 M00S02084.sxllr +++| LTC$LLRQA[LTCENTRY] = 0;
02224 M00S02085.sxllr +++| LTC$CART[LTCENTRY] = FALSE;
02225 M00S02086.sxllr +++| LTC$RQR[LTCENTRY] = RESPTYP4"OK4";
02226 M00S02087.sxllr +++| UCP$RES;
02227 M00S02088.sxllr +++| END
02228 M00S02089.sxllr +++|
02229 M00S02090.sxllr +++| END # EXTERNAL REQUEST #
02230 M00S02091.sxllr +++|
02231 M00S02092.sxllr +++|
02232 M00S02093.sxllr +++|#
02233 M00S02094.sxllr +++|* MARK THE REQUEST COMPLETE AND RETURN TO *LLRQ* MONITOR.
02234 M00S02095.sxllr +++|#
02235 M00S02096.sxllr +++|
02236 M00S02097.sxllr +++| LLR$UNLD[0] = FALSE; # UNLOAD COMPLETE #
02237 M00S02098.sxllr +++| LLR$PRCST[0] = PROCST"COMPLETE";
02238 M00S02099.sxllr +++| RETURN;
02239 M00S02100.sxllr +++|
02240 M00S02101.sxllr +++| END # UNL$CAR #
02241 M00S02102.sxllr +++|
02242 M00S02103.sxllr +++| TERM
02243 M00S02104.sxllr +++|PROC SETFET(LLRADR);
02244 M00S02105.sxllr +++|# TITLE SETFET - SETS LARGE BUFFER POINTERS #
02245 M00S02106.sxllr +++|
02246 M00S02107.sxllr +++| BEGIN # SETFET #
02247 M00S02108.sxllr +++|
02248 M00S02109.sxllr +++|#
02249 M00S02110.sxllr +++|** SETFET - SETS LARGE BUFFER POINTERS.
02250 M00S02111.sxllr +++|*
02251 M00S02112.sxllr +++|* *SETFET* SETS FET POINTERS FOR CIO AND *1SS*.
02252 M00S02113.sxllr +++|*
02253 M00S02114.sxllr +++|* PROC SETFET
02254 M00S02115.sxllr +++|*
02255 M00S02116.sxllr +++|* ENTRY (LLRADR) - ADDRESS OF THE *LLRQ* ENTRY THAT
02256 M00S02117.sxllr +++|* CONTAINS THE ADDRESS OF THE DISK
02257 M00S02118.sxllr +++|* AND *M860* FET AND BUFFER ADDRESSES.
02258 M00S02119.sxllr +++|* (LARGE BUFFER MUST ALREADY EXIST.)
02259 M00S02120.sxllr +++|*
02260 M00S02121.sxllr +++|* EXIT FETS ARE COMPLETE FOR BOTH CIO AND *1SS*
02261 M00S02122.sxllr +++|* PROCESSING. STRIPE HIGH AND LOW SET INTO THE
02262 M00S02123.sxllr +++|* *LLRQ*.
02263 M00S02124.sxllr +++|*
02264 M00S02125.sxllr +++|* NOTES THIS MODULE IS CALLED ONLY BY THE COP$XX ROUTINES.
02265 M00S02126.sxllr +++|#
02266 M00S02127.sxllr +++|
02267 M00S02128.sxllr +++| ITEM LLRADR; # *LLRQ* ADDRESS #
02268 M00S02129.sxllr +++|
02269 M00S02130.sxllr +++|#
02270 M00S02131.sxllr +++|**** PROC SETFET - XREF LIST BEGIN.
02271 M00S02132.sxllr +++|#
02272 M00S02133.sxllr +++|
02273 M00S02134.sxllr +++| XREF
02274 M00S02135.sxllr +++| BEGIN
02275 M00S02136.sxllr +++| PROC ZFILL; # ZERO FILL BUFFER #
02276 M00S02137.sxllr +++| PROC ZSETFET; # INITIALIZE A FET #
02277 M00S02138.sxllr +++| END
02278 M00S02139.sxllr +++|
02279 M00S02140.sxllr +++|#
02280 M00S02141.sxllr +++|**** PROC SETFET - XFET LIST END.
02281 M00S02142.sxllr +++|#
02282 M00S02143.sxllr +++|
02283 M00S02144.sxllr +++| DEF LISTCON #0#; # DO NOT LIST COMDECKS #
02284 M00S02145.sxllr +++|
02285 M00S02146.sxllr +++|*CALL COMBFAS
Line S00006 Modification History |
M01 (Added by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02286 M01S00006.sxllr1 +++|*CALL COMBCPR
02287 M00S02147.sxllr +++|*CALL COMBFET
02288 M00S02148.sxllr +++|*CALL COMBLRQ
02289 M00S02149.sxllr +++|*CALL COMXBST
02290 M00S02150.sxllr +++|*CALL COMXCCB
02291 M00S02151.sxllr +++|*CALL COMXHLR
02292 M00S02152.sxllr +++|
02293 M00S02153.sxllr +++|#
02294 M00S02154.sxllr +++|* SET *LLRQ* STIPE LOW AND HIGH POINTERS.
02295 M00S02155.sxllr +++|#
02296 M00S02156.sxllr +++|
02297 M00S02157.sxllr +++| P<LLRQ> = LLRADR;
02298 M00S02158.sxllr +++| P<HLRQ> = LLR$UCPRA[0];
02299 M00S02159.sxllr +++| P<CCB> = LLR$CCB[0];
Line S02160 Modification History |
M01 (Removed by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02300 M01S02160.sxllr1 ---| LLR$ST$LW[0] = INSPAU*HLR$VOLAU[0]+(INFTST-INSPAU);
02301 M01S02161.sxllr1 ---| LLR$ST$HI[0] = INSPAU*HLR$VOLLN[0]+LLR$ST$LW[0]-1;
Line S00007 Modification History |
M01 (Added by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02302 M01S00007.sxllr1 +++| IF LLR$PRCNME[0] NQ REQTYP4"CP$RAW$AU"
02303 M01S00008.sxllr1 +++| THEN
02304 M01S00009.sxllr1 +++| BEGIN
02305 M01S00010.sxllr1 +++| LLR$ST$LW[0] = INSPAU*HLR$VOLAU[0]+(INFTST-INSPAU);
02306 M01S00011.sxllr1 +++| LLR$ST$HI[0] = INSPAU*HLR$VOLLN[0]+LLR$ST$LW[0]-1;
02307 M01S00012.sxllr1 +++| END
02308 M00S02162.sxllr +++|
02309 M00S02163.sxllr +++|#
02310 M00S02164.sxllr +++|* INITIALIZE CIO AND *1SS* FETS.
02311 M00S02165.sxllr +++|#
02312 M00S02166.sxllr +++|
02313 M00S02167.sxllr +++| CCBDKFET[0] = LLR$DSKFET[0];
02314 M00S02168.sxllr +++| CCBM86FET[0] = LLR$MSFET[0];
02315 M00S02169.sxllr +++| CCBLLRQ[0] = LLRADR;
02316 M00S02170.sxllr +++| CCBCLFG[0] = 0;
02317 M00S02171.sxllr +++| CCBRWCT[0] = 0; # CLEAR COUNTER #
02318 M00S02172.sxllr +++| ZSETFET(LLR$DSKFET[0],HLR$FLNM[0],LLR$DA[0],DATABL,(RFETL+RFHBL));
02319 M00S02173.sxllr +++| P<FETFHB> = LLR$MSFET[0];
02320 M00S02174.sxllr +++| P<FETSET> = LLR$DSKFET[0];
02321 M00S02175.sxllr +++| FET$EP[0] = TRUE;
02322 M00S02176.sxllr +++| FET$R[0] = TRUE;
02323 M00S02177.sxllr +++| FET$UP[0] = TRUE;
02324 M00S02178.sxllr +++| FHB$FRST[0] = FET$FRST[0];
02325 M00S02179.sxllr +++| FHB$IN[0] = FET$IN[0];
02326 M00S02180.sxllr +++| FHB$OUT[0] = FET$OUT[0];
02327 M00S02181.sxllr +++| FHB$LIM[0] = FET$LIM[0];
02328 M00S02182.sxllr +++|
02329 M00S02183.sxllr +++| END
02330 M00S02184.sxllr +++|
02331 M00S02185.sxllr +++| TERM
02332 M00S02186.sxllr +++|PROC WT$LAB((LLRENT));
02333 M00S02187.sxllr +++|# TITLE WT$LAB - WRITE CARTRIDGE LABEL. #
02334 M00S02188.sxllr +++|
02335 M00S02189.sxllr +++| BEGIN # WT$LAB #
02336 M00S02190.sxllr +++|
02337 M00S02191.sxllr +++|#
02338 M00S02192.sxllr +++|** WT$LAB - WRITE CARTRIDGE LABEL.
02339 M00S02193.sxllr +++|*
02340 M00S02194.sxllr +++|* *WT$LAB* WRITES THE CARTRIDGE LABEL.
02341 M00S02195.sxllr +++|*
02342 M00S02196.sxllr +++|* PROC WT$LAB((LLRENT))
02343 M00S02197.sxllr +++|*
02344 M00S02198.sxllr +++|* ENTRY (LLRENT) - ADDRESS OF *LLRQ* ENTRY FOR THE REQUEST
02345 M00S02199.sxllr +++|* CONTAINING THE SMA-ID, THE VOLUME NUMBER,
02346 M00S02200.sxllr +++|* AND THE YZ COORDINATES.
02347 M00S02201.sxllr +++|*
02348 M00S02202.sxllr +++|* EXIT THE PROCESS STATE FIELD IN THE *LLRQ* ENTRY HAS BEEN
02349 M00S02203.sxllr +++|* ADVANCED TO INDICATE WHERE PROCESSING OF THIS REQUEST
02350 M00S02204.sxllr +++|* LEFT OFF, AND THUS WHAT TO DO NEXT TO ADVANCE THE
02351 M00S02205.sxllr +++|* REQUEST.
02352 M00S02206.sxllr +++|*
02353 M00S02207.sxllr +++|* WHEN THE PROCESS IS COMPLETED AN ERROR RESPONSE CODE
02354 M00S02208.sxllr +++|* IS RETURNED VIA LTC$RQR[LTCENTRY] FOR EXTERNAL
02355 M00S02209.sxllr +++|* REQUESTORS OR HLR$RESP[0] FOR INTERNAL REQUESTORS.
02356 M00S02210.sxllr +++|* IS RETURNED VIA *LTC$RQR[LTCENTRY]* FOR EXTERNAL
02357 M00S02211.sxllr +++|* REQUESTORS OR *HLR$RESP[0]* FOR INTERNAL REQUESTORS.
02358 M00S02212.sxllr +++|* RESPONSE CODE (VALUES ARE DEFINED IN *COMBCPR*).
02359 M00S02213.sxllr +++|* = RESPTYP4"OK4".
02360 M00S02214.sxllr +++|* = RESPTYP4"UN$WRT$ERR".
02361 M00S02215.sxllr +++|* = RESPTYP4"EX$WRT$ERR".
02362 M00S02216.sxllr +++|* = RESPTYP4"MSFHDW$ERR".
02363 M00S02217.sxllr +++|*
02364 M00S02218.sxllr +++|* MESSAGES * EXEC ABNORMAL, WT$LAB.*
02365 M00S02219.sxllr +++|*
02366 M00S02220.sxllr +++|* NOTES THIS MODULE IS A PSEUDO REENTRANT ROUTINE.
02367 M00S02221.sxllr +++|*
02368 M00S02222.sxllr +++|* COMMON BUFFER *LABBUF* WILL BE USED TO TRANSFER
02369 M00S02223.sxllr +++|* THE LABEL FROM THE *UCP* TO THE *SSDRIVER*.
02370 M00S02224.sxllr +++|#
02371 M00S02225.sxllr +++|
02372 M00S02226.sxllr +++| ITEM LLRENT U; # ADDRESS OF *LLRQ* ENTRY #
02373 M00S02227.sxllr +++|
02374 M00S02228.sxllr +++|#
02375 M00S02229.sxllr +++|**** PROC WT$LAB - XREF LIST BEGIN.
02376 M00S02230.sxllr +++|#
02377 M00S02231.sxllr +++|
02378 M00S02232.sxllr +++| XREF
02379 M00S02233.sxllr +++| BEGIN
02380 M00S02234.sxllr +++| PROC ABORT; # INTERFACE TO *ABORT* MACRO #
02381 M00S02235.sxllr +++| PROC ADD$LNK; # ADD ENTRY TO END OF CHAIN #
02382 M00S02236.sxllr +++| PROC DELAY; # TIMED DELAY #
02383 M00S02237.sxllr +++| PROC KILL$UC; # ABORT A UCP #
02384 M00S02238.sxllr +++| PROC MESSAGE; # CALLS *MESSAGE* MACRO #
02385 M00S02239.sxllr +++| PROC SFCALL; # INTERFACE TO *SFCALL* MACRO #
02386 M00S02240.sxllr +++| PROC UCP$RES; # NOTIFY UCP OF REQUEST COMPLETE #
02387 M00S02241.sxllr +++| END
02388 M00S02242.sxllr +++|
02389 M00S02243.sxllr +++|#
02390 M00S02244.sxllr +++|**** PROC WT$LAB - XREF LIST END.
02391 M00S02245.sxllr +++|#
02392 M00S02246.sxllr +++|
02393 M00S02247.sxllr +++| DEF LISTCON #0#; # DO NOT LIST COMMON DECKS #
02394 M00S02248.sxllr +++|
02395 M00S02249.sxllr +++|*CALL COMBFAS
02396 M00S02250.sxllr +++|*CALL COMBCHN
02397 M00S02251.sxllr +++|*CALL COMBCPR
02398 M00S02252.sxllr +++|*CALL COMBFET
02399 M00S02253.sxllr +++|*CALL COMBLBL
02400 M00S02254.sxllr +++|*CALL COMBLRQ
02401 M00S02255.sxllr +++|*CALL COMBMAT
02402 M00S02256.sxllr +++|*CALL COMBRCD
02403 M00S02257.sxllr +++|*CALL COMBUCR
02404 M00S02258.sxllr +++|*CALL COMXCTF
02405 M00S02259.sxllr +++|*CALL COMXHLR
02406 M00S02260.sxllr +++|*CALL COMXIPR
02407 M00S02261.sxllr +++|*CALL COMXLTC
02408 M00S02262.sxllr +++|*CALL COMXMSC
02409 M00S02263.sxllr +++|
02410 M00S02264.sxllr +++|
02411 M00S02265.sxllr +++| ITEM REQTYP B=FALSE; # *LLRQ* ID FOR *GET$SB* #
02412 M00S02266.sxllr +++|
02413 M00S02267.sxllr +++| BASED
02414 M00S02268.sxllr +++| ARRAY CLEAR [0:0] S(1);
02415 M00S02269.sxllr +++| BEGIN
02416 M00S02270.sxllr +++| ITEM CLN U(00,36,24); # CLEAR *DRD* ASSIGNMENT #
02417 M00S02271.sxllr +++| END
02418 M00S02272.sxllr +++|
02419 M00S02273.sxllr +++| SWITCH WTENTR:PROCST # WRITE LABEL ENTRIES #
02420 M00S02274.sxllr +++| WTINIT:INITIAL, # INITIAL ENTRY POINT #
02421 M00S02275.sxllr +++| WTC1:CONT1, # AFTER A SWAPIN DELAY #
02422 M00S02276.sxllr +++| WTC2:CONT2; # AFTER WRITE LABEL #
02423 M00S02277.sxllr +++| CONTROL EJECT;
02424 M00S02278.sxllr +++| P<LLRQ> = LLRENT;
02425 M00S02279.sxllr +++| LLR$DR[0] = 0;
02426 M00S02280.sxllr +++| LTCENTRY = LLR$LTCT[0];
02427 M00S02281.sxllr +++| GOTO WTENTR[LLR$PRCST[0]];
02428 M00S02282.sxllr +++|
02429 M00S02283.sxllr +++|#
02430 M00S02284.sxllr +++|* "INITIAL" PROCESS STATE.
02431 M00S02285.sxllr +++|#
02432 M00S02286.sxllr +++|
02433 M00S02287.sxllr +++|WTINIT:
02434 M00S02288.sxllr +++|
02435 M00S02289.sxllr +++|#
02436 M00S02290.sxllr +++|* CHECK LABEL BUFFER FOR BUSY. IF BUSY, RETURN *LLRQ*
02437 M00S02291.sxllr +++|* TO THE DELAY CHAIN.
02438 M00S02292.sxllr +++|#
02439 M00S02293.sxllr +++|
02440 M00S02294.sxllr +++|
02441 M00S02295.sxllr +++| IF LABELBUSY
02442 M00S02296.sxllr +++| THEN
02443 M00S02297.sxllr +++| BEGIN # EXIT TO DELAY CHAIN #
02444 M00S02298.sxllr +++| DELAY(UCP$INTV,LLRENT,LLRQIND);
02445 M00S02299.sxllr +++| RETURN;
02446 M00S02300.sxllr +++| END # RETURNED TO DELAY CHAIN #
02447 M00S02301.sxllr +++|
02448 M00S02302.sxllr +++| LABELBUSY = TRUE; # RESERVE LABEL BUFFER #
02449 M00S02303.sxllr +++|#
02450 M00S02304.sxllr +++|* READ THE LABEL FROM THE UCP. IF THE UCP IS SWAPPED OUT, DELAY
02451 M00S02305.sxllr +++|* THE REQUEST AND TRY AGAIN LATER.
02452 M00S02306.sxllr +++|#
02453 M00S02307.sxllr +++|
02454 M00S02308.sxllr +++|SFLOOP:
Line S02309 Modification History |
M01 (Removed by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02455 M01S02309.sxllr1 ---| IF LLR$UCPABT[0]
02456 M01S02310.sxllr1 ---| THEN
02457 M01S02311.sxllr1 ---| BEGIN
02458 M01S02312.sxllr1 ---| GOTO COMPLUCP;
02459 M01S02313.sxllr1 ---| END
02460 M01S02314.sxllr1 ---|
02461 M00S02315.sxllr +++| LTC$SFUCPA[LTCENTRY] = LLR$ADDR2[0];
02462 M00S02316.sxllr +++| LTC$SFSCPA[LTCENTRY] = MAT$FWA[MAT$ENTRY"LABBUF"];
02463 M00S02317.sxllr +++| LTC$SFFP[LTCENTRY] = LABLEN;
02464 M00S02318.sxllr +++| LTC$SFFC[LTCENTRY] = SFREAD;
02465 M00S02319.sxllr +++| SFCALL(LOC(LTC$WORD0[LTCENTRY]),RCL);
02466 M00S02320.sxllr +++| IF LTC$SFRC[LTCENTRY] EQ SFRCUCPGON
02467 M00S02321.sxllr +++| THEN
02468 M00S02322.sxllr +++| BEGIN
02469 M00S02323.sxllr +++| GOTO COMPLUCP;
02470 M00S02324.sxllr +++| END
02471 M00S02325.sxllr +++|
02472 M00S02326.sxllr +++| IF LTC$SFRC[LTCENTRY] EQ SFRCBDUCPA
02473 M00S02327.sxllr +++| THEN
02474 M00S02328.sxllr +++| BEGIN
02475 M00S02329.sxllr +++| KILL$UC(KILLCODE"INVADDR");
02476 M00S02330.sxllr +++| GOTO COMPLUCP;
02477 M00S02331.sxllr +++| END
02478 M00S02332.sxllr +++|
02479 M00S02333.sxllr +++| IF LTC$SFRC[LTCENTRY] EQ SFRCSWPOUT
02480 M00S02334.sxllr +++| THEN
02481 M00S02335.sxllr +++| BEGIN
02482 M00S02336.sxllr +++| LTC$SFUCPA[LTCENTRY] = 0;
02483 M00S02337.sxllr +++| LTC$SFSCPA[LTCENTRY] = 0;
02484 M00S02338.sxllr +++| LTC$SFFC[LTCENTRY] = SFSWPI;
Line S02339 Modification History |
M01 (Removed by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02485 M01S02339.sxllr1 ---| SFCALL(LOC(LTC$WORD0[LTCENTRY]),NRCL);
Line S00013 Modification History |
M01 (Added by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02486 M01S00013.sxllr1 +++| SFCALL(LOC(LTC$WORD0[LTCENTRY]),RCL);
02487 M00S02340.sxllr +++|
02488 M00S02341.sxllr +++|#
02489 M00S02342.sxllr +++|* "CONT1" PROCESS STATE.
02490 M00S02343.sxllr +++|#
02491 M00S02344.sxllr +++|
02492 M00S02345.sxllr +++|WTC1:
02493 M00S02346.sxllr +++| LTCENTRY = LLR$LTCT[0];
02494 M00S02347.sxllr +++| IF LTC$SFFCC[LTCENTRY]
02495 M00S02348.sxllr +++| THEN
02496 M00S02349.sxllr +++| BEGIN
02497 M00S02350.sxllr +++| GOTO SFLOOP;
02498 M00S02351.sxllr +++| END
02499 M00S02352.sxllr +++|
02500 M00S02353.sxllr +++| LLR$PRCST[0] = PROCST"CONT1";
02501 M00S02354.sxllr +++| DELAY(UCP$INTV,LLRENT,LLRQIND);
02502 M00S02355.sxllr +++| RETURN;
02503 M00S02356.sxllr +++| END
02504 M00S02357.sxllr +++|
02505 M00S02358.sxllr +++| IF LTC$SFRC[LTCENTRY] NQ 0
02506 M00S02359.sxllr +++| THEN
02507 M00S02360.sxllr +++| BEGIN
02508 M00S02361.sxllr +++| FE$RTN[0] = "WT$LAB.";
02509 M00S02362.sxllr +++| MESSAGE(FEMSG[0],UDFL1);
02510 M00S02363.sxllr +++| ABORT;
02511 M00S02364.sxllr +++| END
02512 M00S02365.sxllr +++|
02513 M00S02366.sxllr +++|
02514 M00S02367.sxllr +++| LLR$PRCST[0] = PROCST"CONT2";
02515 M00S02368.sxllr +++| LLR$RC[0] = REQCODE"SWRT$LABEL";
02516 M00S02369.sxllr +++| LLR$RS[0] = PROCST"INITIAL";
02517 M00S02370.sxllr +++| ADD$LNK(LLRENT,LCHN"DRQUEUE",0);
02518 M00S02371.sxllr +++| RETURN;
02519 M00S02372.sxllr +++|
02520 M00S02373.sxllr +++|#
02521 M00S02374.sxllr +++|* RETURN THE RESPONSE CODE TO THE *UCP*.
02522 M00S02375.sxllr +++|#
02523 M00S02376.sxllr +++|
02524 M00S02377.sxllr +++|COMPLUCP:
Line S02378 Modification History |
M01 (Removed by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02525 M01S02378.sxllr1 ---| IF NOT LLR$UCPABT[0]
02526 M01S02379.sxllr1 ---| THEN
02527 M01S02380.sxllr1 ---| BEGIN
02528 M01S02381.sxllr1 ---| LTCENTRY = LLR$LTCT[0];
02529 M01S02382.sxllr1 ---| LTC$RQR[LTCENTRY] = LLR$DR[0];
02530 M01S02383.sxllr1 ---| UCP$RES;
Line S00014 Modification History |
M01 (Added by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02531 M01S00014.sxllr1 +++| LABELBUSY = FALSE;
02532 M01S00015.sxllr1 +++| LLR$DR[0] = 0;
02533 M01S00016.sxllr1 +++| LLR$UCPABT[0] = FALSE;
02534 M00S02384.sxllr +++| LLR$Y[0] = SM$EXIT$TY;
02535 M00S02385.sxllr +++| LLR$Z[0] = SM$TY$Z;
02536 M00S02386.sxllr +++| LLR$PRCNME[0] = REQTYP4"UNLD$CART";
02537 M00S02387.sxllr +++| LLR$PRCST[0] = PROCST"INITIAL";
02538 M00S02388.sxllr +++| ADD$LNK(LLRENT,LCHN"LL$READY",0);
Line S02389 Modification History |
M01 (Removed by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02539 M01S02389.sxllr1 ---| END
Line S00017 Modification History |
M01 (Added by) | sxllr1 |
Seq # *Modification Id* Act
----------------------------+
02540 M01S00017.sxllr1 +++| RETURN;
02541 M00S02390.sxllr +++|
02542 M00S02391.sxllr +++|#
02543 M00S02392.sxllr +++|* "CONT2" PROCESS STATE.
02544 M00S02393.sxllr +++|#
02545 M00S02394.sxllr +++|
02546 M00S02395.sxllr +++|WTC2:
02547 M00S02396.sxllr +++|
02548 M00S02397.sxllr +++|#
02549 M00S02398.sxllr +++|* MARK THE REQUEST COMPLETE AND RETURN TO *LLRQ* MONITOR.
02550 M00S02399.sxllr +++|#
02551 M00S02400.sxllr +++|
02552 M00S02401.sxllr +++| IF NOT LLR$UCPABT[0]
02553 M00S02402.sxllr +++| THEN
02554 M00S02403.sxllr +++| BEGIN # SEND REQUEST BACK TO UCP #
02555 M00S02404.sxllr +++| LTC$CART[LTCENTRY] = FALSE;
02556 M00S02405.sxllr +++| LTC$LLRQA[LTCENTRY] = 0;
02557 M00S02406.sxllr +++| LTC$RQR[LTCENTRY] = LLR$DR[0];
02558 M00S02407.sxllr +++| UCP$RES;
02559 M00S02408.sxllr +++| END # COMPLETED RETURN REQUEST #
02560 M00S02409.sxllr +++|
02561 M00S02410.sxllr +++| P<CLEAR> = LLR$DRDRA[0]; # CLEAR *DRD* RESERVE #
02562 M00S02411.sxllr +++| CLN = 0;
02563 M00S02412.sxllr +++| LLR$PRCST[0] = PROCST"COMPLETE";
02564 M00S02413.sxllr +++| RETURN;
02565 M00S02414.sxllr +++| END # WT$LAB #
02566 M00S02415.sxllr +++|
02567 M00S02416.sxllr +++| TERM