cdc:nos2.source:nam5871:ndlims
Table of Contents
NDLIMS
Table Of Contents
- [00002] PROC NDLIMS
- [00006] NDLP - A BRIEF OVERVIEW
Source Code
- NDLIMS.txt
- *DECK NDLIMS
- PROC NDLIMS;
- BEGIN
- *IF,DEF,IMS
- #
- ** NDLP - A BRIEF OVERVIEW
- *
- * D.K. ENDO 82/02/04
- *
- * THE PURPOSE OF THIS SECTION IS TO GIVE A BRIEF AND CONCISE
- * OVERVIEW OF THE NETWORK DEFINITION LANGUAGE PROCESSOR(NDLP).
- * IT HAS BEEN ASSUMED THAT THE READER OF THIS OVERVIEW IS ALREADY
- * FAMILIAR WITH THE NETWORK DEFINITION LANGUAGE(NDL) SYNTAX, THE
- * OVERALL STRUCTURES OF NETWORK AND LOCAL CONFIGURATION FILES
- * (NCF AND LCF), AND HOW THE CONFIGURATION FILES ARE USED BY THE
- * NETWORK.
- *
- * THIS OVERVIEW HAS TWO MAJOR SECTIONS. THE FIRST SECTION DESCRIBES
- * NDLP IN TERMS OF DATA FLOW. IT IDENTIFIES THE MAJOR PROCESSES OF
- * NDLP AND THE FILES AND TABLES USED TO TRANSFER DATA BETWEEN
- * THE PROCESSES. THE SECOND SECTION IS MORE OF A FUNCTIONAL
- * EXPLANATION. IT DESCRIBES THE MAJOR MODULES OF NDLP AND THE
- * BASIC STRUCTURE AND LOGIC OF EACH ONE.
- *
- *
- * SECTION I: DATA FLOW
- *
- * NDLP IS BASICALLY A TWO PASS COMPILER. DURING THE FIRST PASS,
- * OR READING, OF THE INPUT SOURCE NDLP DOES SYNTAX CRACKING AND
- * CHECKING. IN ADDITION IT REFORMATS THE INPUT SOURCE INTO A
- * MORE STRUCTURED FORM. USING THE MORE STRUCTURED FORM OF THE
- * SOURCE NDLP DOES A SECOND PASS, OR READING, OF THE INPUT.
- * DURING THE SECOND PASS IT DOES COMPATIBILITY CHECKING BETWEEN
- * PARAMETERS ON THE SAME STATEMENT AND OTHER STATEMENTS AND CREATES
- * A CONFIGURATION FILE BASED ON THE SOURCE. A THIRD PROCESS NDLP
- * DOES IS TO CREATE VARIOUS LISTINGS SUCH AS A SOURCE LISTING OR
- * A FILE CONTENTS SUMMARY LISTING. SUMMING IT UP IN ONE SENTENCE,
- * NDLP IS PARTITIONED INTO THREE MAJOR PROCESSES: 1)PASS 1, 2)PASS 2
- * AND 3)LISTING CREATION.
- *
- * THE FOLLOWING LISTS THE FILES AND TABLES WHICH ARE USED TO PASS
- * INFORMATION BETWEEN EACH PROCESS:
- *
- * 1)BETWEEN PASS 1 AND PASS 2 --
- * STATEMENT TABLE - EACH ENTRY IN THIS TABLE CORRESPONDS TO A
- * STATEMENT,IN THE INPUT SOURCE,IN A STRUCTURED
- * FORM. AN EXCEPT IS THE TERMDEV STATEMENT IN
- * WHICH 2 ENTRIES ARE MADE:TERMINAL AND DEVICE.
- * THIS TABLE IS CREATED BY PASS 1 AND IS THE
- * MAJOR INTERFACE BETWEEN PASS 1 AND PASS 2.
- * PASS 1 WRITES THIS TABLE TO A LOCAL FILE:
- * ZZZZZU3.
- *
- * THE REMAINDER OF THE TABLES PASSED BETWEEN PASS 1 TO PASS 2
- * ARE ONLY CREATED WHEN PARSING A SOURCE FOR AN NCF.
- *
- * CONSOLE MAP - EACH BIT IN THIS MAP CORRESPONDS TO EACH
- * TERMINAL STATEMENT. A BIT IS SET ONLY IF
- * A CONSOLE WAS DEFINED FOR THE TERMINAL.
- * COUPLER TABLE - THERE IS A ENTRY FOR EACH COUPLER DEFINED IN
- * THE NETWORK. EACH ENTRY CONTAINS A COUPLER
- * NAME, COUPLER/HOST NODE I.D., AND THE NODE
- * I.D. OF THE NPU THAT SUPPORTS THE COUPLER.
- * IT IS USED TO CREATE ENTRIES IN THE LOGLINK
- * XREF TABLE.
- * LABEL TABLE - CONTAINS ALL THE ELEMENT NAMES DEFINED BY
- * THE SOURCE AND GENERATED BY NDLP. USED
- * BY PASS 2 TO CREATE DEVICE AND LINE XREF
- * TABLE ENTRIES.
- * LOGLINK TABLE - HAS AN ENTRY FOR EACH LOGICAL LINK DEFINED
- * BY THE SOURCE. EACH ENTRY CONTAINS THE
- * LOGLINK NAME AND THE NODE I.D.-S OF THE
- * NODES WHICH THE LINK CONNECTS. USED TO
- * DEFAULT OR CHECK SUPERVISORY LINKS.
- * NPU TABLE - CONTAINS AN ENTRY FOR EACH NPU DEFINED.
- * EACH ENTRY CONTAINS AN NPU NAME, FLAG IF
- * AT LEAST ONE SUPLINK IS DEFINED, NPU NODE
- * I.D., AND A BIT MAP USED TO CHECK UNIQUENESS
- * OF PORT NUMBERS. USED TO CHECK AND CREATE
- * ENTRIES IN THE PHYSICAL LINK AND LOGICAL LINK
- * TABLES.
- * TRUNK NODE ID TBL-HAS AN ENTRY FOR EACH TRUNK. EACH ENTRY HAS
- * THE NODE I.D.-S OF THE NPU-S THAT THE TRUNK
- * CONNECTS. USED TO VALIDATE LOGLINK-S
- * SPANNING ONLY ONE TRUNK.
- *
- * 2)BETWEEN PASS 1 AND LIST --
- * DEFINE TABLE - CONTAINS AN ENTRY FOR EACH DEFINE NAME AND
- * CORRESPONDING REPLACEMENT STRING. USED
- * BY PASS 1 TO DO DEFINE STRING PROCESSING.
- * USED BY LIST TO CREATE THE DEFINE COMMAND
- * LISTING.
- * EXPANDED SECONDARY
- * INPUT FILE- CONTAINS ONLY SOURCE LINE WITH DEFINE NAMES
- * REPLACED BY ITS CORRESPONDING DEFINE STRING.
- * USED BY LIST TO CREATE THE EXPANDED SOURCE
- * LISTING. WRITTEN BY PASS 1 TO FILE ZZZZU4A.
- * PASS 1 ERROR FILE-CONTAINS AN ENTRY FOR EACH SYNTAX ERROR
- * DETECTED BY PASS 1. EACH ENTRY HAS AN ERROR
- * CODE, LINE NUMBER, AND A CLARIFIER WORD.
- * USED BY LIST TO CREATE AN ERROR SUMMARY
- * LISTING. WRITTEN BY PASS 1 TO FILE ZZZZZU1.
- * SECONDARY INPUT
- * FILE - CONTAINS COPY OF ORIGINAL SOURCE PARSED BY
- * PASS 1. USED BY PASS 2 TO CREATE THE SOURCE
- * LISTING AND THE EXPANDED SOURCE LISTING
- * WRITTEN BY PASS 1 TO FILE ZZZZZU4.
- * 3)BETWEEN PASS 2 AND LIST --
- * PASS 2 ERROR FILE-CONTAINS AN ENTRY FOR EACH ERROR DETECTED BY
- * PASS 2. FORMAT IS SAME AS PASS 1 ERROR FILE.
- * USED BY LIST TO CREATE AN ERROR SUMMARY
- * LISTING. WRITTEN BY PASS 2 TO FILE ZZZZZU2.
- * NCF/LCF - USED BY LIST TO CREATE A FILE CONTENTS
- * SUMMARY LISTING. FILE WRITTEN TO BY PASS 2
- * DEPENDS ON THE NFILE/LFILE STATEMENT.
- *
- * THERE ARE TABLES USED WITHIN EACH MAJOR PROCESS THAT ARE NOT
- * PASSED TO OTHERS. THEY ARE:
- *
- * 1) WITHIN PASS 1 --
- * KEYWORD TABLE - CONTAINS AN ENTRY FOR EACH STATEMENT NAME,
- * KEYWORD, AND DELIMITER VALID IN NDL. IF THE
- * ENTRY IS A STATEMENT NAME IT CONTAINS THE
- * NAME, THE STATEMENT NAME FLAG SET, LABEL
- * REQUIRED FLAG, STATEMENT I.D., AND A
- * STATEMENT ALLOWED BIT MAP. IF THE ENTRY
- * IS A KEYWORD, IT CONTAINS THE NAME, KEYWORD
- * NAME FLAG SET, VALUE REQUIRED FLAG, KEYWORD
- * I.D., AND KEYWORD ALLOW MAP. IF THE ENTRY
- * IS A DELIMITER, IT CONTAINS THE DELIMITER,
- * THE DELIMITER FLAG SET, AND A DELIMITER I.D.
- * THIS TABLE IS SORTED IN ALPHABETICAL ORDER
- * WITH THE DELIMITERS AT THE END FOR THE TABLE.
- * LEXICAL TABLE - CONTAINS AN ENTRY FOR EACH LETTER IN THE
- * ALPHABET AND ONE ENTRY FOR DELIMITERS. EACH
- * ENTRY POINTS TO ITS CORRESPONDING CHARACTER
- * GROUP IN THE KEYWORD TABLE AND HOW MANY
- * ENTRIES THERE ARE IN THE GROUP. FOR EXAMPLE:
- * THE 13TH ENTRY IN THE LEXICAL TABLE WOULD
- * POINT TO THE FIRST ENTRY, IN THE KEYWORD
- * TABLE, BEGINNING WITH THE LETTER -M- AND,
- * ALSO, GIVE THE TOTAL NUMBER OF STATEMENT
- * NAMES AND KEYWORDS BEING WITH THAT SAME
- * LETTER.
- * TNN TABLE - TRUNK NPU NAME TABLE CONTAINS AN ENTRY FOR
- * EACH TRUNK DEFINED IN THE NETWORK. EACH
- * ENTRY HAS THE N1 AND N2 VALUE SPECIFIED FOR
- * THAT TRUNK. IT IS USED, WITH THE NPU TABLE,
- * TO BUILD THE TRUNK NODE I.D. TABLE. THIS
- * TABLE IS ONLY GENERATED WHEN PARSING AN
- * NCF DIVISION.
- * LNT TABLE - LOGICAL LINK NODE NAME TABLE CONTAINS AN
- * ENTRY FOR EACH LOGLINK DEFINE IN THE
- * NETWORK. EACH ENTRY HAS THE NCNAME VALUE FOR
- * THE LOGLINK. IT IS USED, WITH THE NPU AND
- * COUPLER TABLE, IO BUILD THE LOGICAL LINK
- * TABLE. THIS TABLE IS ONLY GENERATED WHEN
- * PARSING AN NCF DIVISION.
- *
- * 2)WITHIN PASS 2:
- * LINE CONFIGURA-
- * TION FILE - CONTAINS A RECORD FOR EACH NPU DEFINED. EACH
- * RECORD CONTAINS AN ENTRY FOR EACH LINE OR
- * GROUP DEFINED ON THE NPU. EACH ENTRY
- * CONTAINS LINE CONFIGURATION INFORMATION FOR
- * THE LINE. IT IS USED TO BUILD THE CONFIGURA-
- * TION TABLE IN THE NCB-S. IT IS ONLY BUILT WHEN
- * CHECKING PARAMETERS FOR AN NCF.
- * LINE CONFIGURA-
- * TION FILE INDEX - CONTAINS AN ENTRY FOR EACH RECORD IN THE
- * LINE CONFIGURATION FILE. EACH ENTRY POINTS TO
- * A UNIQUE RECORD. IT ALSO CONTAINS THE NPU
- * NAME AND NODE I.D. THAT CORRESPONDS TO THE
- * RECORD. IT IS ONLY BUILT WHEN CHECKING
- * PARAMETERS FOR AN NCF.
- * SUPLINK TABLE - CONTAINS AN ENTRY FOR EACH SUPLINK DEFINED OR
- * DEFAULTED BY NDLP. EACH ENTRY CONTAINS THE
- * SUPLINK NAME AND THE HOST NODE I.D. THAT THE
- * NPU WILL BE SUPERVISED BY. IT IS USED TO
- * BUILD THE SUPERVISOR TABLE IN THE NCB-S. IT
- * IS ONLY BUILT WHEN CHECKING PARAMETERS FOR
- * AN NCF.
- *
- * THE THREE TABLES ABOVE ARE USED TO BUILD THE NPU CONFIGURE BLOCKS.
- * THE REMAINDER OF THE INFORMATION NEEDED TO BUILD THE NCB-S
- * ARE GOTTEN FROM THE NPU, PHYSICAL LINK, LOGICAL LINK CROSS
- * REFERENCE TABLES, WHICH ARE PART OF THE NCF.
- *
- * 3)WITHIN LIST --
- * THERE ARE NO TABLES BUILT BY LIST PER SE, BUT RATHER BUFFERS
- * USED TO FORMAT THE LINE IMAGES. THERE ARE TWO BIT MAPS USED
- * IN CREATING AN NCF SUMMARY. ONE IS A TIPTYPE MAP USED TO
- * LIST WHICH ONES WERE DEFINED FOR AN NPU. THE OTHER IS A
- * NODE I.D. MAP USED TO LIST WHICH NODE I.D.-S WERE NOT USED.
- * FINALLY THERE ARE BUFFERS USED TO READ IN VARIOUS FILES CREATED
- * BY PASS 1 AND PASS 2.
- *
- * AGAIN, THE PURPOSE OF THIS SECTION WAS TO IDENTIFY THE MAJOR
- * PROCESSES OF NDLP AND THE TABLES AND FILES USED TO TRANSFER DATA
- * BETWEEN THEM. IN SUMMARY, THERE ARE THREE MAJOR PROCESSES:
- * 1)PASS 1 -- SYNTAX CRACKING AND CHECKING.
- * 2)PASS 2 -- PARAMETER COMPATIBILITY CHECKING AND CONFIGURATION
- * FILE CREATION.
- * 3)LIST -- LISTING CREATION.
- * THE TABLES PASSED FROM PASS 1 TO PASS 2 ARE:
- * 1)STATEMENT TABLE 5)LOGLINK TABLE
- * 2)CONSOLE MAP 6)NPU TABLE
- * 3)COUPLER TABLE 7)TRUNK NODE I.D. TABLE
- * 4)LABEL TABLE
- * THE TABLES PASSED FROM PASS 1 TO LIST ARE:
- * 1)DEFINE TABLE.
- * 2)EXPANDED SECONDARY INPUT FILE.
- * 3)SECONDARY INPUT FILE.
- * 4)PASS 1 ERROR FILE
- * THE TABLES PASSED FROM PASS 2 TO LIST ARE:
- * 1)PASS 2 ERROR FILE.
- * 2)NCF OR LCF.
- *
- * SECTION II: FUNCTIONAL DESCRIPTION --
- *
- * NDLP IS MADE UP OF SIX MAIN MODULES: NDLMAIN, NDLINIT, NDLPSS1,
- * NDLP2NF, NDLP2LF, AND NDLLIST. NDLMAIN IS THE EXECUTIVE ROUTINE
- * FOR NDLP. IT LOADS AND EXECUTES THE OTHER MAIN MODULES AS
- * THEY ARE NEEDED. NDLINIT DOES INITIALIZATION TASKS FOR NDLP WHICH
- * INCLUDE CONTROL CARD CRACKING, MANAGED TABLES INITIALIZATION, AND
- * SETTING UP FET-S. THE REMAINDER OF THE MODULES CORRESPOND TO THE
- * THREE MAJOR PROCESSES AS DESCRIBED BY THE FIRST SECTION. NDLPSS1
- * HAS THE FUNCTION OF PASS 1 WHICH IS TO DO SYNTAX CRACKING AND
- * CHECKING. PASS 2 IS BROKEN UP INTO TWO MODULES, NDLP2NF AND
- * NDLP2LF. BOTH ESSENTIALLY HAVE THE SAME FUNCTION: TO DO PARAMETER
- * COMPATIBILITY CHECKING AND CONFIGURATION FILE CREATION. NDLP2NF
- * CHECKS STATEMENTS DEFINING AN NCF AND NDLP2LF CHECKS STATEMENTS
- * DEFINING AN LCF. NDLLIST CORRESPONDS TO LIST WHICH DOES ALL THE
- * LISTING GENERATION.
- *
- * NDLMAIN -- THIS MODULE IS THE EXECUTIVE FOR NDLP. IT BEGINS BY
- * EXECUTING THE INITIALIZATION ROUTINE. THE INITIALIZATION ROUTINE
- * DETERMINES FROM THE CONTROL CARD WHETHER NDLP WAS CALLED TO DO A
- * FILE SUMMARY RUN OR A FILE CREATION RUN. IF A FILE SUMMARY WAS
- * REQUESTED NDLMAIN WILL EXECUTE NDLLIST TO GENERATE THE SUMMARY.
- * IF IT IS A CREATION RUN THEN FOR EACH CONFIGURATION FILE DEFINED
- * IN THE INPUT SOURCE NDLMAIN CALLS NDLPSS1, NDLP2NF OR NDLP2LF, AND
- * NDLLIST. FINALLY NDLMAIN RETURNS SCRATCH FILE AND ISSUES A
- * DAYFILE MESSAGE THAT NDLP IS COMPLETE.
- *
- * NDLINIT --THIS MODULE DOES ALL THE INITIALIZATION TASKS FOR NDLP.
- * IT FIRST CRACKS THE CONTROL CARD TO DETERMINE THE TYPE OF RUN,
- * ALTERNATE INPUT/OUTPUT FILE NAMES, AND LISTING OPTIONS REQUESTED.
- * NDLINIT THEN INITIALIZES THE DYNAMIC TABLE MANAGER. FINALLY IT
- * INITIALIZES VARIOUS FET-S NEEDED TO DO I/O.
- *
- * NDLPSS1 -- THIS MODULE UTILIZES THE SYNGEN SUBSYSTEM. THE SYNTAX
- * TABLE DRIVER (NDLSTD) IS THE MAIN ROUTINE. NDLSTD CALLS FIVE
- * OTHER PROCEDURES AS NEEDED TO PARSE AND CHECK THE SOURCE INPUT.
- * DIAG DOES DIAGNOSTIC PROCESSING, WHICH BASICALLY MEANS CALLING
- * ERRMS1 TO MAKE ENTRIES IN THE PASS 1 ERROR FILE. LEXSCAN FORMS
- * THE NEXT TOKEN FROM THE SOURCE. LEXSNC CAUSES SCANNING TO BEGIN
- * TO CONTINUE ON THE NEXT CARD OR LINE IMAGE. PRINTRC IS USED TO
- * PRINT TRACE INFORMATION. SUBR CONTAINS ALL THE SYNTATIC ROUTINES
- * USED TO DO ERROR CHECKING AND TABLE CREATION.(SEE THE IMS CODE FOR
- * NDLSTD TO GET MORE DETAILS OF THE SYNGEN SUBSYSTEM)
- *
- * NDLP2LF -- THIS MODULE DOES FURTHER CHECKING OF LCF STATEMENTS AND
- * DOES CREATION OF THE LCF DEFINED BY THE SOURCE. NDLP2LF CONTAINS
- * SUB-MODULES, ONE FOR EACH STATEMENT, AND A PASS 2 LCF TERMINATION
- * ROUTINE. IT FIRST INITIALIZES ALL THE TABLES NEEDED TO CREATE AN
- * LCF. THEN FOR EACH ENTRY IN THE STATEMENT TABLE, NDLP2LF CALL THE
- * APPROPRIATE PROC TO CHECK THE ENTRY. THIS IS DONE BY SWITCHING
- * ON THE STATEMENT I.D. NUMBER. THEN IN EACH STATEMENT PROC IT
- * SWITCHES ON KEYWORD I.D. TO CHECK EACH VALUE DECLARATION. NDLP2LF
- * FINALLY CALLS LCFTERM TO WRITE THE LCF TABLES AND RECORDS OUT TO
- * A LOCAL FILE.
- *
- * NDLP2NF -- THIS MODULE DOES FURTHER CHECKING OF NCF STATEMENTS AND
- * DOES CREATION OF THE NCF DEFINED BY THE SOURCE. NDLP2NF THREE
- * OTHER MODULE: 1)NDLNFNT, 2)NDLNFCM, AND 3)NDLNFTM. NDLNFNT
- * CONTAINS SUB-MODULE, ONE FOR EACH STATEMENT, WHICH CHECK THE
- * NETWORK ELEMENT STATEMENTS(NFILE, NPU, SUPLINK, COUPLER, LOGLINK,
- * AND TRUNK). NDLNFCM CONTAINS SUB-MODULES WHICH CHECK THE COMMU-
- * NICATION ELEMENT STATEMENTS(LINE, TERMINAL, DEVICE). NDLNFTM DOES
- * NCB CREATION AND WRITES THE NCF TABLE TO A LOCAL FILE.
- *
- * NDLLIST -- THIS MODULE, BASED ON FLAGS SET BY NDLINIT, GENERATES
- * LISTINGS FOR NDLP. THERE IS A SUB-PROC FOR EACH TYPE OF LISTING.
- * IN ADDITION THERE IS A SUB-PROC FOR EACH NDL STATEMENT AND A
- * CALLED WHEN A FILE SUMMARY IS NEEDED.
- *
- * AS FOR THE OVERLAY STRUCTURE FOR NDLP THERE ARE FIVE PRIMARY
- * OVERLAYS AND THREE SECONDARY OVERLAYS. NDLMAIN IS IN THE MAIN
- * OVERLAY(0,0). THE PRIMARY OVERLAYS ARE NDLINIT(1,0), NDLPSS1(2,0)
- * NDLP2NF(3,0), NDLP2LF(4,0), AND NDLLIST(5,0). THE SECONDARY
- * OVERLAYS ARE ALL CALLED BY NDLP2NF. THEY ARE NDLNFNT(3,1),
- * NDLNFCM(3,2), AND NDLNFTM(3,3). THE FAST OVERLAY LOADER IS USED
- * TO LOAD ALL THE OVERLAYS(SEE LOADER MANUAL FOR DESCRIPTION). THE
- * OVERLAY LOADER IS CALLED THRU NDLOVLD. NDLOVLD INITIALIZES THE
- * CALL TO THE FAST OVERLAY LOADER AND SETS UP A RETURN-JUMP TO THE
- * OVERLAY ONCE IT HAS BEEN LOADED.
- *
- * THE DYNAMIC TABLE MANAGER IS THE ONE USED BY NVF/CS. THE DESIGN
- * OF THE MANAGER IS ROUGHLY EQUIVALENT TO THE STANDARD COMMON DECK
- * -COMCMTP- WHICH CONTAINS A COMPASS MANAGED TABLE PACKAGE. THE
- * DYNAMIC TABLE AREA IS LOCATED IN HIGH CORE. THE AREA IS ALLOCATED
- * BY THE MANAGER THRU A SERIES OF TWO WORD ENTRIES. EACH ENTRY
- * CORRESPONDS TO A TABLE DEFINED FOR USE BY NDLP. THIS IS A PRE-
- * DETERMINED NUMBER OF TABLE DEFINED AT COMPILATION TIME. THE FIRST
- * WORD IN THE ENTRY IS A POINTER INTO THE DYNAMIC TABLE AREA WHICH
- * IS THE FIRST WORD ALLOCATED TO THE TABLE. THE SECOND WORD IN THE
- * ENTRY SPECIFIES THE NUMBER CP WORDS ALLOCATED TO THAT TABLE. AS
- * MORE SPACE IS NEEDED FOR EACH TABLE AND TABLES NEED TO BE MOVED
- * AROUND THE MANAGER UPDATES THE TABLE POINTERS AND ALLOCATED WORD
- * COUNTS AS NEEDED. THE TABLE MANAGER AND THE TABLE POINTERS ARE
- * LOCATED IN THE MAIN OVERLAY. THE TABLE POINTERS ARE IN A COMMON
- * BLOCK LABELED -TABLES-.
- *
- * THERE ARE EIGHT SYMPL TEXTS DEFINE FOR NDLP:
- *
- * NDLDATT -- THIS TEXT CONTAIN A COMMON BLOCK LABELED -NDLDATA-.
- * NDLDATA CONTAINS ALL THE FLAGS SET BY NDLINIT, FILE
- * NAMES, ERROR/WARNING COUNTS, NAME OF CURRENT OVERLAY
- * LOADED, AND THE TITLE TEXT. IT ALSO CONTAINS THE
- * STATUS LIST FOR ALL THE STATEMENT AND KEYWORD I.D.-S.
- *
- * NDLER1T -- THIS TEXT DEFINES THE TABLE CONTAINING ALL THE PASS 1
- * ERROR MESSAGE INFORMATION.
- *
- * NDLER2T -- THIS TEXT DEFINES THE TABLE CONTAINING ALL THE PASS 2
- * ERROR MESSAGE INFORMATION.
- *
- * NDLFETT -- DEFINES ALL THE FILE ENVIRONMENT TABLES USED BY NDLP,
- * ALSO ALL THE CIRCULAR BUFFERS AND WORKING STORAGE
- * AREAS FOR I/O PROCESSING.
- *
- * NDLNCFT -- CONTAINS COMMON INFORMATION USED IN NCF CREATION.
- *
- * NDLOVLT -- DEFINES THE TABLE TABLE CONTAINING ALL THE OVERLAY
- * NAMES AND THEIR LEVELS.
- *
- * NDLPS2T -- CONTAINS INFORMATION COMMON TO ALL PASS 2 TYPE
- * ROUTINES.
- *
- * NDLTBLT -- CONTAINS DEFINITIONS OF ALL THE TABLES MANAGED BY THE
- * DYNAMIC TABLE MANAGER. IF YOU NOTICE, EACH TABLE IS
- * DEFINED BY A BASED ARRAY FOLLOWED BY A ONE WORD ITEM.
- * THIS CORRESPONDS TO THE TWO WORD ENTRY AS DESCRIBED
- * PREVIOULSY. ONE WORD IS ALLOCATED TO THE BASED ARRAY
- * AND IS USED AS THE TABLE POINTER INTO THE DYNAMIC
- * TABLE AREA. THE ONE WORD ITEM IS USED AS THE COUNT
- * OF THE NUMBER OF CP WORDS ALLOCATED TO THE TABLE.
- * THIS TEXT ALSO CONTAINS A DEFINE OF THE ENTRY SIZE
- * OF EACH TABLE AND THE INITIAL SIZE ALLOCATED FOR EACH
- * TABLE WHEN USED.
- *
- *
- * IT IS HOPED THAT THIS OVERVIEW WILL GIVE AN OVER-ALL UNDERSTANDING
- * OF HOW NDLP IS DESIGNED AND STRUCTURED. FOR A MORE DETAILED
- * DESCRIPTION OF EACH MODULE SEE THE IMS CODE LOCATED AT THE
- * BEGINNING OF EACH MODULE.
- *
- * APPENDIX A.
- *
- * A NOTE ON MODIFYING NDLP IN TERMS OF ADDING AND DELETING A
- * KEYWORD.
- *
- * A KEYWORD MAY BE ANY PARAMETER NAME (E.G. - NODE, TIPTYPE,
- * NAME1, ETC.) OR STATEMENT NAME (E.G. - NFILE, LINE, INCALL, ETC.)
- *
- * ADDING A KEYWORD --
- *
- * STEP I.
- *
- * KEYWORD LIST:
- *
- * IN DECK NDLSDAT, INSERT THE NEW KEYWORD IN ALPHABETICAL
- * ORDER,ALSO ON THE SAME LINE INSERT THE FOLLOWING MASKS,
- * ACCORDING TO THE FORMAT AND DEFINITION AS FOLLOWS:
- *
- * FLAGS/
- * KEYWORD NAME ID ---SAMAP/KAMAP---
- *
- * AUTO 04001 00050 00000
- * INCALL 60173 00006 50000
- *
- * WHERE:
- *
- * FLAG1(BIT 0) FLAG TO INDICATE THAT THIS IS A STATEMENT
- * NAME ENTRY.
- *
- * FLAG2(BIT 1) FLAG TO INDICATE WHETHER LABEL IS REQUIRED,
- * 0 - LABEL NOT REQUIRED.
- * 1 - LABEL REQUIRED.
- *
- * FLAG3(BIT 2) RESERVED FOR CDC USE.
- *
- * FLAG4(BIT 3) FLAG TO INDICATE THAT THIS IS A KEYWORD
- * ENTRY.
- *
- * FLAG5(BIT 4) VALUE REQUIRED FLAG.
- *
- * FLAG6(BIT 5) RESERVED FOR CDC USE.
- *
- * STID/KWID(BIT 6-14) NUMERIC IDENTIFIER FOR THE DELIMITER,
- * STATEMENT, OR KEYWORD.
- *
- * SAMAP/KAMAP(BIT 15-44) BIT MAP FOR:
- * STATEMENT NAMES - A BIT IS SET ACCORDING TO
- * THE ID OF THE STATEMENT
- * IT CAN FOLLOW.
- * PARAMETER NAMES - A BIT SET CORRESPONDING
- * TO THE ID OF THE STATE-
- * IT CAN APPEAR ON.
- *
- * NO FURTHER CHANGES ARE NEEDED FOR SYNGEN CODE.
- *
- * STEP II.
- *
- * PASS 1 -- STATEMENT NAMES:
- *
- * IF THE NEW KEYWORD IS A STATEMENT NAME THEN MAKE THE APPROPRI-
- * ATE CHANGES IN PROC CKSTMTDEC WHICH HAS SWITCHES FOR STATEMENT
- * DECLARATIONS.
- *
- * PASS 1 -- PARAMETER NAMES:
- *
- * IF THE NEW KEYWORD IS A PARAMETER ON A STATEMENT THEN SWITCHES
- * IN PROC CKVDEC HAS TO BE MODIFIED TO REFLECT THE NEW KEYWORD
- * AND ALSO THE KIND OF VALUES (E.G. DECIMAL,HEXIDECIMAL, ALPHA-
- * NUMERIC ETC) IT CAN ASSUME. ALSO, CHANGED ARE THE SWITCHES IN
- * ENTVAL FOR ENTERING APPROPRIATE VALUES INTO THE CORRECT OFF-
- * SETS IN STATEMENT TABLE.
- *
- * IF THE NEW KEYWORD ASSUMES RESERVED LITERALS SUCH AS "YES",
- * "NO","CCP" ETC., THEN PROC CHKTABL HAS TO BE CHANGED TO UPDATE
- * THE CORRESPONDING TABLES.
- *
- * STEP III.
- *
- * PASS2 -- COMMUNICATION ELEMENTS (NDLNFCM):
- *
- * IF THE NEW KEYWORD IS A DEVICE PARAMETER THEN DEPENDING ON THE
- * TIPTYPE USED, THE SWITCHES IN THE CORRESPONDING DEVICE HAND-
- * LING PROC (E.G., PROC ASYDEV FOR ASYNC DEVICE) ARE MODIFIED.
- *
- * SIMILARLY,THE SAME APPROACH APPLIES FOR LINE AND TERMINAL
- * PARAMETERS.
- *
- * PASS2 -- NETWORK ELEMENTS (NDLNFNT):
- *
- * IF THE NEW KEYWORD IS A TRUNK, COUPLER,NPU,LOGLINK, SUPLINK,
- * OR NFILE PARAMETER, THE SWITCHES FOR THE CORRESPONDING
- * PROCEDURES HAVE TO BE MODIFIED.
- *
- * PASS 2 -- STATEMENT NAMES:
- *
- * IF THE NEW KEYWORD IS A NEW STATEMENT NAME,THEN SWITCHES FOR
- * NDLNFCM,NDLNFTN OR NDLP2LF ARE MODIFIED TO REFLECT THE
- * NEW STATEMENT DEPENDING ON WHICH GROUP THE NEW KEYWORD BELONGS
- * TO. THE RELATED CROSS REFERENCE TABLES HAVE TO BE CHANGED
- * OR CREATED ACCORDINGLY.
- *
- * PASS 2 -- CHECK RANGE:
- *
- * IF THE NEW PARAMETER REQUIRES A NUMERIC VALUE, THEN NDLCKRG
- * HAS TO BE CHANGED TO REFLECT THE NEWLY ADDED KEYWORD AND ITS
- * LEGAL RANGE.
- *
- * STEP IV.
- *
- * LIST:
- *
- * IN MOST CASES, NDLLIST HAS TO BE CHANGED TO REFLECT THE
- * EXISTENCE OR NON-EXISTENCE OF A KEYWORD OR STATEMENT. (E.G. -
- * IF A NEW PARAMETER ON DEVICE STATEMENT IS ADDED THEN PROC
- * DEVLIST HAS TO BE MODIFIED TO REFLECT THE NEW CHANGE)
- *
- * DELETING A KEYWORD --
- *
- * DELETING A KEYWORD WOULD GO THROUGH A SIMILAR PROCESS MENTIONED
- * ABOVE, IN THAT INSTEAD OF ADDING EXTRA SWITCHES OR KEYWORDS
- * TO ACCOMMODATE THE NEW KEYWORD IN EACH OF THE STEP MENTIONED
- * ABOVE, DELETION OF SWITCHES OR KEYWORD(S) WILL OCCUR IN THESE
- * STEPS.
- *
- #
- *ENDIF
- END
- TERM
cdc/nos2.source/nam5871/ndlims.txt ยท Last modified: 2023/08/05 17:22 by Site Administrator