*COMDECK IMSAT
 #
*1DC  AT      A P P L I C A T I O N   T A B L E 
* 
*     THE APPLICATION TABLE BLOCK IS A BASED ARRAY IN 
*     COMDECK ( A T ).  THE TABLE IS USED BY NIP
*     TO MANAGE NETWORK APPLICATIONS. 
* 
*     THE MINIMUM SIZE OF THE TABLE IS 12 WORDS LONG, WHICH 
*     WILL BE CREATED AT INITIALIZATION AND THE TABLE WILL
*     EXPAND OR SHRINK IN SIZE BY 4 WORDS. IT WILL EXPAND WHEN A
*     NEW APPLICATION NETS ON AND THE TABLE IS FULL. IT IS SHRINKED 
*     WHEN AT LEAST 8 ENTRIES IN THE TABLE ARE FREE AND THOSE ENTRIES 
*     EXCLUDE THE LAST 4 ENTRIES IN THE TABLE.
*     EACH ENTRY IS ONE WORD LONG AND WHEN A APPLICATION NETS ON
*     IT IS ASSIGNED THE FIRST AVAILABLE ENTRY IN THE TABLE.
*     THE INDEX INTO THE TABLE FOR THIS ENTRY BECOMES THE 
*     APPLICATION NUMBER (A N) ASSIGNED TO THE APPLICATION. 
*     NVF IS ALWAYS ASSIGNED THE FIRST ENTRY SO ITS (AN) IS ALWAYS
*     ONE. AN ENTRY IS FREED WHEN AN APPLICATION FAILS OR NETS OFF. 
*     THE TABLE IS DYNAMICALLY ALLOCATED AND CAN BE MOVED FOR 
*     GARAGE COLLECTION.
* 
*     P O I N T S  O F  I N T E R E S T 
* 
*    THE FIRST WORD IN THE APPLICATION TABLE IS GLOBAL......... 
*    THE ID OF THE APPLICATION TABLE (AT) IS A ( 1 )........... 
*    THE FIRST ENTRY WILL ALWAYS BE ASSIGNED TO NVF............ 
*    THE MINIMUM SIZE TO THE APPLICATION TABLE IS 12-WORDS .. 
*    THE APPLICATION TABLE IS A BASED ARRAY IN COMDECK ( A T ). 
*    THE ENTRIES TO THE APPLICATION TABLE ARE ONE-WORD LONG...
*    THE ENTRY IS FREE WHEN THE (ACBA) ADDRESS IS ZERO..........
* 
*     F O R M A T  O F  A P P  I C A T I O N  T A B L E ( A T ) 
* 
* 
*    0 0 0 0 0 0 0 0 0     1 1 2 2 2 2 2     3 3 3 3   4   4       5
*    0 1 2 3 4 5 6 7 8     8 9 0 1 2 3 4     3 4 5 6   2   8       9
*   I-----------I---------------------I-----------I--------I-------I
*   I           I                     I           I        I       I
*   I  A T I D  I       A T B S       I ///////// I ATNFE  I ATHAN I
*   I           I                     I           I        I       I
*   I-----------I---------------------I-----------I--------I-------I
*   I                          .                                   I
*   I                          .                                   I
*   I                          .                                   I
*   I---------------------I-----------------------I----------------I
*   I                     I    A T A S B V        I                I
*   I---------------------I-----------------------I----------------I
*   IA A A A A A A   A    IA A A A A A A     A A AI                I
*   IT T T T T T T   T    IT T T T T T T     T T TI                I
*   IS K I H U T P   D    IA A A A A P A     N N NI  A T A C B A   I
*   I            R   I    IS S S S S S S     V V VI                I
*   I            U   S    IB B B B B O B     F F FI                I
*   I                     IF W R O S   I     R N FI                I
*   I---------------------I-----------------------I----------------I
*   I                          .                                   I
*   I                          .                                   I
*   I--------------------------------------------------------------I
* 
* 
* 
* 
*     W H E R E . . . 
* 
* 
* 
*       ATID     = APPLICATION TABLE IDENTIFCATION. 
* 
*       ATBS     = APPLICATION BLOCK SIZE.
* 
*       ATNFE    = NUMBER OF FREE APPLICATION TABLE ENTRIES.
* 
*       ATHAN    = HIGHEST APPLICATION NUMBER IN USE. 
* 
*       ATASBV   = APPLICATION STATUS FLAG BITS.
* 
*       ATS      = SYSTEM ORIGIN FLAG, SET IF APPLICATION HAS SYSTEM
*                  ORIGIN PREVILEGES. 
* 
*       ATK      = K-DISPLAY FLAG, SET IF APPLICATION SUPPORTS
*                  THE K - DISPLAY
* 
*       ATI      = IGNORE FLAG, SET IF NIP SHOULD IGNORE HOP/ALT
*                  FROM APPLICATION.
* 
*       ATH      = HALF DUPLEX FLAG, SET IF NEW CONNECTION ARE TO BE
*                  SERVICED IN HALF DUPLEX MODE.
* 
*       ATU      = UPDATE FLAG, SET IF THE INPUT DATA AVAILABILITY
*                  STATUS WORD IN APPLICATION-S AIP FIELD LENGTH
*                  NEEDS TO BE UPDATED. 
* 
*       ATT      = DATA TRUNCATION FLAG, SET IF UPLINE DATA ARE TO
*                  BE TRUNCATED IF ITS TOO LARGE FOR APPLICATION-S
*                  INPUT BUFFER.
* 
*       ATPRU    = PRU FLAG, SET IF APPLICATION IS ALLOWED TO USE 
*                  PRU INTERFACE PROTOCAL FOR BATCH DEVICE CONNECTIONS. 
* 
*       ATDIS    = DISABLE INPUT FLAG, SET IF NEW CONNECTIONS ARE 
*                  TO BE INITIALLY ENABLED FOR OUTPUT, NO INPUT WILL
*                  BE DELIVERED ON THE CONNECTION UNTIL AN OUTPUT 
*                  -MSG- BLOCK OR LST/ON IS SENT BY THE APPLICATION.
* 
*       ATASBF   = FORCE NETWAIT FLAG, SET IF APPLICATION HAS ISSUED
*                  A FORCED NETWAIT REQUEST.
* 
*       ATASBW   = WAIT FLAG, SET IF APPLICATION IS IN NETWAIT STATE
*                  BUT IS NOT SWAPPED OUT.
* 
*       ATASBR   = ROLLOUT FLAG, SET IF APPLICATION IS SWAPPED OUT
*                  BY A NETWAIT CALL. 
* 
*       ATASBO   = ON FLAG, SET IF APPLICATION IS SWAPPED OUT DURING
*                  NETON REQUEST PROCESSING.
* 
*       ATASBS   = NWL SUSPENDED FLAG, SET IF NWL WORKLIST PROCESSING 
*                  WAS SUSPENDED BECAUSE APPLICATION IS SWAPPED OUT.
* 
*       ATPSO    = PWL SUSPENDED FLAG, SET IF PWL WORKLIST PROCESSING 
*                  WAS SUSPENDED BECAUSE APPLICATION IS SWAPPED OUT.
* 
*       ATASBI   = IN FLAG, SET IF A SWAP-IN REQUEST WAS ISSUED.
* 
*       ATNVFR   = SET IF NIP IS WAITING FOR NVF TO RESPOND TO NET/ON 
*                  REQUEST DURING APPLICATION NETON PROCESSING. 
* 
*       ATNVFN   = SET IF NIP IS WAITING FOR NVF TO RESPOND TO NET/OFF
*                  REQUEST DURING APPLICATION NETOFF PROCESSING.
* 
*       ATNVFF   = SET IF NIP IS WAITING FOR NVF TO RESPOND TO
*                  FAIL/APPL REQUEST DURING APPLICATION FAILURE 
*                  PROCESSING.
* 
*       ATACBA   = APPLICATION CONTROL BLOCK ADDRESS, ZERO INDICATES
*                  A FREE ENTRY AVAILABLE FOR ASSIGNMENT WHEN A NEW 
*                  APPLICATION NETS ON. 
 #
