cdc:nos2.source:nam5871:nfetch
Table of Contents
NFETCH
Table Of Contents
- [00002] FUNC NFETCH(BARRAY,SYMBOL) I
Source Code
- NFETCH.txt
- *DECK NFETCH
- FUNC NFETCH(BARRAY,SYMBOL) I;
- BEGIN
- *IF,DEF,IMS
- #
- *1DC NFETCH
- * 1.PROC NAME AUTHOR DATE
- * NFETCH PETER TAM 6/24/77
- *
- * 2.FUNCTIONAL DESCRIPTION
- * NFETCH DOES A TABLE LOOKUP OF THE REQUIRED ITEM
- * TO OBTAIN ITS COORINATES (I.E INDEX WITHIN ARRAY,
- * STARTING BIT WITHIN WORD AND LENGTH IN BITS)
- * AND RETURNS TO THE CALLER THE REQUIRED FIELD.
- * THE TABLE CONTAINING THIS INFORMATION IS ASSEMBLED
- * IN THE COMPASS ROUTINE NP$SYM , WHICH IN TURN
- * USES THE ITEM, DEF AND STATUS MACROS DEFINED IN NETMAC.
- *
- * 3.METHOD USED
- * NFETCH IS A SYMPL ROUTINE CALLABLE BY FTN CALLING SEQUENCES
- * TO ACCESS SUPERVISORY MESSAGE FIELDS IN SYMPL COMMON DECKS.
- * IT IS TO BE ACCESSED AS AN FTN INTEGER FUNCTION
- * I=NFETCH(ARRAY,ITEM)
- * WHERE ARRAY IS AN ARRAY CONTAINING THE SUPERVISORY MESSAGE
- * ITEM IS THE LEFT JUSTIFIED ZERO FIELD DISPLAY CODE NAME
- * OF THE REQUIRED FIELD IN THE SUPERVISORY MESSAGE.
- *
- * 4.ENTRY CONDITIONS
- * SEE FUNCTIONAL DESCRIPTION
- *
- * 5. EXIT CONDITIONS
- * THE VALUE OF THE FUNCTION WILL BE SET TO THE FIELD SPECIFIED.
- *
- * 6.COMDECKS CALLED
- * NP$CRT
- *
- * 7.ROUTINES CALLED
- * NP$ERR
- *
- * 8.DAYFILE MESSAGES
- * NETWORK APPLICATION ABORTED, RC = 68.
- * NFETCH: ILLEGAL FIELD MNEMONIC.
- *
- #
- *ENDIF
- *CALL NP$CRT
- XREF PROC NP$ERR;
- XREF ITEM NP$SYME U;
- XREF ARRAY NP$SYM[0:300] S(2);
- BEGIN
- ITEM SYMNAME C(0,0,7);
- ITEM SYMST U(0,54,6);
- ITEM SYMWORD U(1,6,12);
- ITEM SYMBIT U(1,18,12);
- ITEM SYMLGTH U(1,30,12);
- ITEM SYMVAL U(1,0,60);
- END
- ARRAY BARRAY[0:O"77777"] S(1);
- ITEM CONTENTS U;
- ITEM SYMBOL U;
- ITEM I U;
- ITEM J U;
- FOR I = 0 STEP 1 UNTIL NP$SYME DO
- BEGIN
- IF SYMNAME[I] EQ C<0,7>SYMBOL
- THEN BEGIN
- J = SYMST[I];
- IF J EQ 4
- THEN BEGIN
- NFETCH = SYMVAL[I];
- RETURN;
- END
- IF J EQ 3 OR J EQ 2
- THEN BEGIN
- NFETCH =
- B<SYMBIT[I],SYMLGTH[I]>CONTENTS[SYMWORD[I]];
- RETURN;
- END
- IF J EQ 1
- THEN BEGIN
- NFETCH =
- C<SYMBIT[I],SYMLGTH[I]>CONTENTS[SYMWORD[I]];
- RETURN;
- END
- END
- END
- NP$ERR("68"); # ILLEGAL FIELD MNEMONIC. #
- END
- TERM
cdc/nos2.source/nam5871/nfetch.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator