*DECK SSSAWR
USETEXT TEXTSS
PROC SSSAWR (WNUM);
# TITLE SSSAWR - ACCEPT WORKLIST REQUEST. #
BEGIN # SSSAWR #
#
** SSSAWR - ACCEPT WORKLIST REQUEST.
*
* S. H. FISCHER. 81/09/02.
*
* THIS ROUTINE ACCEPTS WORKLIST REQUESTS.
*
* PROC SSSASWR (WNUM)
*
* ENTRY WNUM = WORKLIST NUMBER.
*
* EXIT WORKLIST REQUEST SCHEDULED.
*
* METHOD
*
* FETCH WORKLIST DEFINITION CORRESPONDING TO WORKLIST NUMBER.
* IF TYPE 0 THEN SET CORRESPONDING BIT IN WORKLIST REQUEST QUEUE.
* IF TYPE 1 THEN INCREMENT CELL AT ADDRESS IN WORKLIST DEF.
* IF TYPE 2 THEN PASS WORKLIST DEFINITION TO OVERLAY REQUEST
* ACCEPTER.
*
#
#
**** PROC SSSAWR XREF LIST.
#
XREF
BEGIN
PROC SSSAOR; # ACCEPT OVERLAY WORKLIST REQUEST #
PROC SSBSBW; # SET BIT IN WORD #
END
#
****
#
BASED ARRAY CADD [00:00] S(1);
BEGIN
ITEM CADD$WD U(00,00,60);
END
ITEM I I; # SCRATCH CELL #
ITEM WNUM I; # WORKLIST NUMBER #
IF WDF$TYPE[WNUM] EQ 0
THEN
BEGIN
I = WNUM + 1;
SSBSBW( WRQ, I ); # SET BIT CORRESPONDING TO WORKLIST REQ #
RETURN;
END
ELSE IF WDF$TYPE[WNUM] EQ 1
THEN
BEGIN
P<CADD> = WDF$CADD[WNUM];
CADD$WD[0] = CADD$WD[0] + 1;
RETURN;
END
ELSE # TYPE 2 OVERLAY REQUEST #
BEGIN
SSSAOR( WDF$OVN[WNUM], WDF$OEN[WNUM] ); # MAKE OVL REQUEST #
RETURN;
END
RETURN;
END # SSSAWR #
TERM