// JOB DDIA,,,E000
// DVC 20 // LFD SYS007
// EXEC DDIPSM
/$
         IDENT C'DDI BATCH MODE TEST'
*
*
*              PUI1=OUTPUT
*
*
*        MSGN USAGE
*              MSG1 = INITIAL MESSAGE
*              MSG1 TO MSG255 = BATCH MODE BUFFERS
*
         OPTIONS MSGSIZE=90,MSGNO=255
*
*        PACKET USAGE
*              PUI2=INPUT
*
*
*
1        PAUSE C'   NETREQ ????,150,YES'
4        SETPAC PUI=1,I24=1,I23=1
         TYPE  C'SELECT TERMINAL : ISSUE SETPAC'
         PAUSE C'SETPAC PUI=1,I23=X,I24=Y,I7=Z'
         TYPE  C'FOR LINE X,STA Y,DEVA Z :'
         PAUSE C'SETPAC PUI=1,I23=X,I24=Y,I7=Z'
         MOVE  PUI2.I23,,PUI1.I23
         MOVE  PUI2.I24,,PUI1.I24
*
*        BEGIN INPUT/OUTPUT
*
3        DO    100
         DO    50
         IF    MSG1,EQ,C'*ENDTEST*',150
         GO    3
*
*        OUTPUT
*
50       COUNT LC1,0
         COUNT LC3,0
         SETPAC PUI=1,I1=X'21',I18=0,I22=0,I7=0
         IF    LC8,NE,X'0001',55
         SETPAC PUI=1,I22=X'04'
55       IF    MSG1,NE,C'PUNCH',51
         SETPAC PUI=1,I7=1
51       COUNT LC2,-1,NE,0,54
         SETPAC PUI=1,I18=X'20'
54       PACREQ PUI=1,I15=MSG1(LC3),I16=84,I4=200
200      IF    PUI1.I11,EQ,X'81',53
         IF    PUI1.I11,ANY,X'80',52
         NOTE  C'OUTPUT FAILS'
         GO    150
52       COUNT LC3,+1
         GO    51
53       EXIT
*
*        INPUT
*
100      COUNT LC1,0
         COUNT LC2,0
         COUNT LC8,0
         SETPAC PUI=2,I1=X'11'
101      PACREQ PUI=2,I15=MSG1(LC2),I16=84,I4=201
201      IF    PUI2.I11,ANY,X'80',102
         NOTE  C'INPUT FAILS'
         GO    150
102      COUNT LC2,+1
         IF    PUI2.I21,NE,X'04',107
         COUNT LC8,1
107      IF    PUI2.I11,EQ,X'81',103
         IF    LC2,NE,X'00FF',101
         NOTE  C'INPUT OVERFLOW'
         GO    150
103      EXIT
*
*        END
*
150      TYPE  C'PERFORM NETREL'
         PAUSE C'   NETREL ????'
         TERM  C'END OF TEST'
         RUN   1
         END
/*
/&
