&DL      PROC  &P,10,                                                  X00000000
               &ADDR=,&ALTD=,&ANSWER=,                                 X00000100
               &CALL=,&CSCT=,                                          X00000200
               &TCSADDR=,                                              X00000300
               &ERRET=,                                                X00000400
               &FIELDS=,                                               X00000500
               &LNEREQ=,                                               X00000600
               &PASSWORD=,&PFREQ=,&PLIM=,&POLL=,                       X00000700
               &QUEUE=,&QUEUEH=,&QUEUEL=,&QUEUEM=,&QUEUES=,            X00000800
               &TERM=,&TEST=,&RESTART=                                  00000900
XTU#DUST NAME  X   . 01/21/74 CONVERTED FROM 9700 ICAM                  00001000
TU#DUSTM NAME  0    OS/7 ICAM USER DUST MACROS                 73/08/22 00001100
NETREQ   NAME  (0,TL#DNLT,TL#DNTRQ)                                     00001200
MOPEN    NAME  (0,TL#DNLT,TL#DNTRQ)                                     00001300
NETREL   NAME  (1,TL#DNLT,TL#DNTRL)                                     00001400
DLNEREQ  NAME  (2,TL#DNLT,TL#DLNRQ)                                     00001500
LNEREQ   NAME  (2,TL#DNLT,TL#DLNRQ)                                     00001600
LNEREL   NAME  (3,TL#DNLT,TL#DLNRL)                                     00001700
RETRIEVE NAME  (10,TL#DRET,TL#DRETV)                                    00002200
STATUS   NAME  (14,TL#DST,TL#DSTAT)                                     00002600
TU#TWRKA NAME  (15)                                                     00002700
TU#PWRKA NAME  (16)                                                     00002800
TU#QWRKA NAME  (17)                                                     00002900
TU#DSNAP NAME  (18,TL#DCR,TL#DSNAP)                                     00003000
TU#MONTR NAME  (19,TL#DCR,TL#DSNAP)                                     00003100
TU#TRACE NAME  (20,TL#DCR,TL#DSNAP)                                     00003200
TU#DUMP  NAME  (21,TL#DCR,TL#DSNAP)                                     00003300
.* .                                                                    00003400
.* . * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** 00003500
.* .                                                                  * 00003600
.* . THIS AND ALL RELATED PROGRAMS ARE PROPERTY OF                    * 00003700
.* .                                                                  * 00003800
.* . UNIVAC CONTAINING ITS CONFIDENTIAL INFORMATION                   * 00003900
.* .                                                                  * 00004000
.* . * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ** 00004100
         GBL   &USER94                                                  00004200
         GBL   &VS9                                                     00004210
         LCL   &TU#CL                                                   00004300
         LCL   &TU#FLG1,&TU#FLG2,&TU#ER                                 00004400
         LCL   &TU#LEN,&TU#BR,&TU#NLIN                                  00004500
         LCL   &TU#LOOP,&TU#NT,&TU#NTRM                                 00004600
         LCL   &TU#WKAR                                                 00004700
         LCL   &TU#NTNM                                                 00004800
         LCL   &TU#NPARM                                                00004900
         DO    '&USER94'=''                                             00005000
&USER94  SET   0                                                        00005100
.* .                                                                    00005200
         ENDO                                                           00005300
.* .                                                                    00005400
.*   ELEMENT NAME = TU#DUSTM                                            00005500
.* .                                                                    00005600
.*   MAIN PROGRAM = DEFERRED USER SERVICE TASK                          00005700
.* .                                                                    00005800
.*   PROC NAMES:    NETREQ                                              00005900
.*                  NETREL                                              00006000
.*                  LNEREQ                                              00006100
.*                  LNEREL                                              00006200
.*                  TRMREQ                                              00006300
.*                  TRMREL                                              00006400
.*                  TRMCPY                                              00006500
.*                  TRMREP                                              00006600
.*                  POLCPY                                              00006700
.*                  POLREP                                              00006800
.*                  RETRIEVE                                            00006900
.*                  QHOLD                                               00007000
.*                  QRELSE                                              00007100
.*                  QDEPTH                                              00007200
.*                  STATUS                                              00007300
.*                  TU#TWRKA                                            00007400
.*                  TU#PWRKA                                            00007500
.*                  TU#QWRKA                                            00007600
.*                  TU#DSNAP                                            00007700
.*                  TU#MONTR                                            00007800
.*                  TU#TRACE                                            00007900
.*                  TU#DUMP                                             00008000
.* .                                                                    00008100
.*   AUTHOR:   GB                                                       00008200
.* .                                                                    00008300
.*   VERSION   16/00          DATE   73/08/22                           00008400
.* .                                                                    00008500
.*   FUNCTIONAL DESCRIPTION:                                            00008600
.*       TU#DUSTM GENERATES DUST MACRO EXPANSIONS FOR                   00008700
.*       USER DUST CALLS.  THE USER INTERFACE FOR NETWORK               00008800
.*       CONTROL IS THROUGH THE DUST FUNCTIONS.  THE                    00008900
.*       EXPANSION OF THE DUST CALLS IS CONTROLLED BY                   00009000
.*       TU#DUSTM.                                                      00009100
.*       THE DUST CALL GENERATES IN LINE THE CORRESPONDING              00009200
.*       DUST MACRO TABLE AND THE NECESSARY CODE TO PASS                00009300
.*       CONTROL TO ICAM.                                               00009400
.*       IF ANY ERRORS OCCUR IN THE EXPANSION,CODE IS                   00009500
.*       GENERATED WHICH WILL NOT PASS CONTROL TO ICAM.                 00009600
.* .                                                                    00009700
.*   ENTRANCE REQUIREMENTS:                                             00009800
.*       SEE ICAM PRM FOR PARAMETERS.                                   00009900
.* .                                                                    00010000
.*   EXIT CONDITIONS:                                                   00010100
.*       NONE                                                           00010200
.* .                                                                    00010300
.*   REGISTER USAGE:                                                    00010400
.*       TR#0  LOADED WITH ADDRESS OF USER TABLE                        00010500
.*       TR#1  LOADED WITH ADDRESS OF USER TABLE                        00010600
.* .                                                                    00010700
.*   ENVIRONMENT:                                                       00010800
.*       USER                                                           00010900
.* .                                                                    00011000
.*   ELEMENTS REFERENCING THIS ELEMENT:                                 00011100
.*       ICAM USER PROGRAMS                                             00011200
.* .                                                                    00011300
.*   ELEMENTS REFERENCED BY THIS ELEMENT:                               00011400
.*       TN#EQUS                                                        00011500
.* .                                                                    00011600
.*   TABLES REFERENCED BY THIS ELEMENT:                                 00011700
.*       NONE                                                           00011800
.* .                                                                    00011900
&TU#CL   SET   0                        CALL LENGTH                     00012000
&TU#FLG1 SET   0                       FLAG BYTE ONE                    00012100
&TU#FLG2 SET   0                       FLAG BYTE TWO                    00012200
&TU#ER   SET   0                       ERROR                            00012300
&TU#LEN  SET   0                       TABLE LENGTH                     00012400
&TU#BR   SET   0                       BRANCH ADDRESS                   00012500
&TU#NLIN SET   0                       NUMBER OF LINES                  00012600
&TU#LOOP SET   0                       LOOP CONTROL                     00012700
&TU#NT   SET   0                                                        00012800
&TU#NTRM SET   0                        NUMBER OF TERMINALS             00012900
&TU#WKAR SET   0                        WORKAREA                        00013000
&TU#NTNM SET   0                                                        00013100
.* .                                                                    00013200
         PRINT OFF                                                      00013300
         TL#EQUS                                                        00013400
         SYSTEM                                                         00013410
         PRINT ON                                                       00013500
.*  .                                                                   00013600
.*  FOLLOWING GENERATES A NETWORK REQUEST/RELEASE TABLE                 00013700
.*  .                                                                   00013800
         DO    &P(0,1)<2                                                00013900
         DO    ('&P(1)'='')            NETWORK NAME PRESENT?            00014000
         PNOTE 'P','NETWORK NAME MISSING FROM CALL LINE'                00014100
&TU#ER   SET   4                                                        00014200
         ENDO                                                           00014300
         DO    ('&P(0,1)'='0')                                          00014400
         DO    ('&ERRET'='')                                            00014500
         PNOTE 'P','ERRET KEYWORD MISSING FROM CALL LINE'               00014600
&TU#ER   SET   4                                                        00014700
         GOTO  .LBL0                                                    00014800
         ENDO                                                           00014900
&TU#FLG1 SET   &TU#FLG1++X'40'                                          00015000
.LBL0    LABEL                                                          00015100
         DO    ('&PASSWORD'='')                                         00015200
         GOTO  .LABEL1                                                  00015300
         ENDO                                                           00015400
&TU#FLG1 SET   &TU#FLG1++X'20'                                          00015500
.LABEL1  LABEL                                                          00015600
         DO    ('&RESTART'='YES')                                       00015605
&TU#FLG1 SET   &TU#FLG1++X'10'
         ENDO
         DO    ('&LNEREQ'='')++('&LNEREQ'='YES')++('&LNEREQ(1)'='YES')  00015700
&TU#FLG1 SET   &TU#FLG1++X'80'     . INDICATE AUTO OPENING OF LINES     00015800
         GOTO  .LBL1                                                    00015900
         ENDO                                                           00016000
         DO    ('&LNEREQ'='NO')++('&LNEREQ(1)'='NO')                    00016100
         GOTO  .LBL1                                                    00016200
         ENDO                                                           00016300
         PNOTE 'P','INVALID SPECIFICATION FOR LNEREQ KEYWORD, AUTO OPENX00016400
               ING OF LINES ASSUMED'                                    00016500
&TU#FLG1 SET   &TU#FLG1++X'80'                                          00016600
.LBL1    LABEL                                                          00016700
         ENDO                                                           00016800
         CNOP  0,4                                                      00016900
         DO    '&DL'=''                                                 00017000
         LA    1,*+8               . TABLE ADDRESS                      00017100
         ENDO                                                           00017200
         DO    '&DL'=''=0                                               00017300
&DL      LA    1,*+8               . TABLE ADDRESS                      00017400
         ENDO                                                           00017500
         B     TU#D&SYSNDX+&TU#ER                                       00017600
         DO    &P(0,1)=0                                                00017700
*        START OF NETWORK REQUEST TABLE                                 00017800
         ENDO                                                           00017900
         DO    &P(0,1)=1                                                00018000
*        START OF NETWORK RELEASE TABLE                                 00018100
         ENDO                                                           00018200
         DO    '&TCSADDR'=''=0                                          00018300
         DC    A(&TCSADDR)         . TCS ADDR. & ERROR HW AFTER MOPEN   00018400
         GOTO  .LABEL2                                                  00018500
         ENDO                                                           00018600
         DC    H'0'                . ERROR HALFWORD FOR USER            00018700
         DC    H'0'                . UNUSED                             00018800
.LABEL2  LABEL                                                          00018900
         DO    '&P(1)'=''                                               00019000
         DC    CL4'    '           . NETWORK NAME                       00019100
         GOTO  .ZZZZ                                                    00019200
         ENDO                                                           00019300
         DC    CL4'&P(1)'          . NETWORK NAME                       00019400
.ZZZZ    LABEL                                                          00019500
         DO    (&P(0,1)=0)         . DO IF NETREQ                       00019600
         DC    AL1(&TU#FLG1)       . FLAG BYTE                          00019700
         DC    AL3(&ERRET+0)       . ERROR RETURN ADDRESS               00019800
         DO    '&PASSWORD'=''=0                                         00019900
         DC    CL8'&PASSWORD'      . NETWORK PASSWORD                   00020000
         ENDO                                                           00020100
         DO    '&PASSWORD'=''                                           00020200
         DC    CL8'        '       . NO PASSWORD SPECIFIED              00020300
         ENDO                                                           00020400
         ENDO                      . ENDO NETREQ GENERATION             00020500
TU#D&SYSNDX  EQU *                                                      00020600
         DO    &USER94                                                  00020700
         SVC   SV#MCP              . CALL ICAM ACTIVITY CONTROL         00020800
         GOTO  .LABEL3                                                  00020900
         ENDO                                                           00021000
         DO    &VS9                                                     00021010
         CNOP  0,4                                                      00021011
         SVC   98                                                       00021012
         GOTO  .LABEL3                                                  00021013
         ENDO                                                           00021014
         SVC   09                  . CALL ICAM ACTIVITY CONTROL         00021100
.LABEL3  LABEL                                                          00021200
         DC    X'C1'               . IDENT. OVLY CNTRL & PHASE NO       00021300
         DC    AL1(&P(0,3))        . SECOND PART OF PHASE NO.           00021400
         GOTO  .EXIT                                                    00021500
         ENDO                                                           00021600
.*  .                                                                   00021700
.*  FOLLOWING GENERATES A LINE REQUEST/RELEASE TABLE                    00021800
.*  .                                                                   00021900
         DO    (&P(0,1)=2)++(&P(0,1)=3)                                 00022000
         DO    ('&P(1)'='')                                             00022100
         PNOTE 'P','LINE NAME MISSING FROM CALL LINE'                   00022200
&TU#ER   SET   4                                                        00022300
         ENDO                                                           00022400
         CNOP  0,4                                                      00022500
         DO    '&DL'=''                                                 00022600
         LA    1,*+8               . TABLE ADDRESS                      00022700
         ENDO                                                           00022800
         DO    '&DL'=''=0                                               00022900
&DL      LA    1,*+8               . TABLE ADDRESS                      00023000
         ENDO                                                           00023100
         B     TU#D&SYSNDX+&TU#ER                                       00023200
         DO    &P(0,1)=2                                                00023300
*        START OF LINE REQUEST TABLE                                    00023400
         ENDO                                                           00023500
         DO    &P(0,1)=3                                                00023600
*        START OF LINE RELEASE TABLE                                    00023700
         ENDO                                                           00023800
         DC    H'0'                . ERROR HALFWORD FOR USER            00023900
         DC    H'0'                . UNUSED                             00024000
         DO    '&P(1)'=''                                               00024100
         DC    CL4'    '           . LINE NAME                          00024200
         GOTO  .XXXX                                                    00024300
         ENDO                                                           00024400
         DC    CL4'&P(1)'          . LINE NAME                          00024500
.XXXX    LABEL                                                          00024600
TU#D&SYSNDX EQU *                                                       00024700
         DO    &USER94                                                  00024800
         SVC   SV#MCP              . CALL ICAM ACTIVITY CONTROL         00024900
         GOTO  .LABEL4                                                  00025000
         ENDO                                                           00025100
         DO    &VS9                                                     00025110
         CNOP  0,4                                                      00025111
         SVC   98                                                       00025112
         GOTO  .LABEL4                                                  00025113
         ENDO                                                           00025114
         SVC   09                  . CALL ICAM ACTIVITY CONTROL         00025200
.LABEL4  LABEL                                                          00025300
         DC    X'C1'               . IDENT. OVLY CONTRL & PHASE NO.     00025400
         DC    AL1(&P(0,3))        . SECOND PART OF PHASE NO.           00025500
         GOTO  .EXIT                                                    00025600
         ENDO                                                           00025700
         DO    &P(0,1)>3           . DO IF CALL NOT NQ,NR,LQ,LR         00025800
         PNOTE 'P','CALL SPECIFIED NOT SUPPORTED AT THIS TIME'          00025900
         DO    '&DL'=''                                                 00026000
         DC    3H'0'                                                    00026100
         ENDO                                                           00026200
         DO    '&DL'=''=0                                               00026300
&DL      DC    3H'0'                                                    00026400
         ENDO                                                           00026500
         ENDO                                                           00026600
.EXIT    LABEL                                                          00026700
*                                                                       00026800
         END                                                            00026900
