cdc:nos2.source:nam5871:cssare
Table of Contents
CSSARE
Table Of Contents
- [00006] PROC CSSARE
- [00007] ACTION REPORT COMMAND
- [00010] ACTION REPORT COMMAND.
- [00030] PROC SSBCBW
- [00031] PROC SSBSBW
- [00032] PROC SSTAQE
Source Code
- CSSARE.txt
- *DECK CSSARE
- USETEXT TEXTCS
- USETEXT TEXTSS
- USETEXT TXCMDCS
- USETEXT TXTAPSS
- PROC CSSARE;
- # TITLE - ACTION REPORT COMMAND #
- BEGIN
- #
- ** CSSARE - ACTION REPORT COMMAND.
- *
- * D.K. ENDO 83/02/09
- *
- * THIS PROCEDURE PROCESSES THE REPORT COMMAND.
- *
- * PROC CSSARE
- *
- * ENTRY 1. HDRCMD = COMMAND HEADER.
- * 2. PARMS = PARAMETER LIST.
- *
- * EXIT 1. ENTRIES IN THE EVENT QUEUE. (CONTROL ON/OFF)
- * 2. MESSAGES TO THE C-LAYER.
- *
- #
- #
- **** PROC CSSARE - XREF LIST.
- #
- XREF
- BEGIN
- PROC SSBCBW; # CLEAR BIT IN WORD #
- PROC SSBSBW; # SET BET IN WORD #
- PROC SSTAQE; # ACCEPT QUEUE ENTRY #
- END
- #
- ****
- #
- DEF MODEIDX # HDR$TXWCNT[0]+2 #; # INDEX TO MODE (ON/OFF) WORD #
- DEF NORIDX # HDR$TXWCNT[0]+3 #; # INDEX TO NPUCB ORDINAL WORD #
- DEF NPUIDX # HDR$TXWCNT[0]+1 #; # INDEX TO NP/NPS PARAMETER WORD#
- ITEM I; # LOOP INDUCTION VARIABLE #
- #
- * FLG$WORD - BASED ARRAY POINTED TO A REPORT FLAG WORD IN THE
- * NPUCB-S.
- #
- BASED ARRAY FLG$WORD [00:00] S(1);
- BEGIN
- ITEM FW$WORD I(00,00,60);
- END
- #
- * CSSARE CODE BEGINS HERE
- #
- #
- * IF REQUEST TO RECEIVE REPORTS, THEN IF ONE NPU IS SPECIFIED, THEN
- * SET THE REPORT FLAG IN THE NPUCB CORRESPONDING TO THIS OPERATOR.
- * IF *NPUS* IS SPECIFIED, THEN SET THE REPORT FLAG IN ALL THE ACTIVE
- * NPUCB-S FOR THIS OPERATOR.
- #
- IF PAR$PCODE[MODEIDX] EQ "ON0"
- THEN
- BEGIN
- IF PAR$PCODE[NPUIDX] EQ "NP0"
- THEN
- BEGIN
- P<FLG$WORD> = LOC(NPU$RFLGS[PAR$ORD[NORIDX]]);
- SSBSBW( FLG$WORD , HDR$OPORD[0] );
- END
- ELSE
- BEGIN
- FOR I=0 STEP 1 WHILE I LS CSNPCNT
- DO
- BEGIN
- IF NPU$STAT[I] NQ SUPSTAT"SUPLOST"
- THEN
- BEGIN
- P<FLG$WORD> = LOC(NPU$RFLGS[I]);
- SSBSBW( FLG$WORD , HDR$OPORD[0] );
- END
- END
- END
- END
- #
- * IF REPORTS ARE TO BE TURNED OFF, THEN IF ONE NPU WAS SPECIFIED,
- * THEN CLEAR THE REPORT FLAG IN THE NPUCB FOR THIS OPERATOR. IF
- * ALL NPUS WAS SPECIFIED, THEN CLEAR THE FLAGS IN ALL THE NPUCB-S
- * FOR THIS OPERATOR.
- #
- ELSE
- BEGIN
- IF PAR$PCODE[NPUIDX] EQ "NP0"
- THEN
- BEGIN
- P<FLG$WORD> = LOC(NPU$RFLGS[PAR$ORD[NORIDX]]);
- SSBCBW( FLG$WORD , HDR$OPORD[0]);
- END
- ELSE
- BEGIN
- FOR I=0 STEP 1 WHILE I LS CSNPCNT
- DO
- BEGIN
- IF NPU$STAT[I] NQ SUPSTAT"SUPLOST"
- THEN
- BEGIN
- P<FLG$WORD> = LOC(NPU$RFLGS[I]);
- SSBCBW( FLG$WORD , HDR$OPORD[0] );
- END
- END
- END
- END
- #
- * SEND AN EMPTY TERMINAL TEXT WITH THE INPUT ALLOWED FLAG SET TO
- * INDICATE THAT THE COMMAND IS COMPLETE.
- #
- WCB$WORD[1] = 2;
- WCB$SMID[1] = SMID"TTEXT";
- WCB$IAF[1] = TRUE;
- ABHWORD[1] = 0;
- ABHADR[1] = HDR$OPORD[0];
- SSTAQE(P<CNQ>,WCBUF[1],ABH[1],MSGBUF);
- END # CSSARE #
- TERM
cdc/nos2.source/nam5871/cssare.txt ยท Last modified: 2023/08/05 17:21 by Site Administrator