&MAC     PROC  &P,2                                                     ENQ00010
ENQ      NAME  1                                                        ENQ00020
EOT      NAME  2                                                        ENQ00030
POOL     NAME  3                                                        ENQ00040
DEQ      NAME  4                                                        ENQ00050
&MAC     DC    0Y(0)                                                    ENQ00060
         DO    '&P(1)'=''                                               ENQ00070
         DO    &P(0)=4                                                  ENQ00080
         PNOTE '*','OPERAND 1 OMITTED, REG 0 ASSUMED LOADED'            ENQ00090
         GOTO  .GEN                                                     ENQ00100
         ENDO                                                           ENQ00110
         PNOTE '*','OPERAND 1 OMITTED, REG 2 ASSUMED LOADED'            ENQ00120
         GOTO  .GEN                                                     ENQ00130
         ENDO                                                           ENQ00140
         DO    1-(('&P(1)'(1,1)='(')++('&P(1)'(1,1)>'Z'))               ENQ00150
         DO    &P(0)=3                                                  ENQ00160
         L     0,=A(&P(1))                                              ENQ00170
         GOTO  .GEN                                                     ENQ00180
         ENDO                                                           ENQ00190
         L     2,=A(&P(1))                                              ENQ00200
         GOTO  .GEN                                                     ENQ00205
         ENDO                                                           ENQ00210
         DO    &P(0)=3                                                  ENQ00220
         DO    1-(('&P(1)'='(0)')++('&P(1)'='0'))                       ENQ00230
         PNOTE '*','INVALID REGISTER NOTATION USED FOR OPERAND 1'       ENQ00240
         GOTO  .B                                                       ENQ00250
         ENDO                                                           ENQ00260
         GOTO  .B                                                       ENQ00270
         ENDO                                                           ENQ00280
         DO    1-(('&P(1)'='(2)')++('&P(1)'='2'))                       ENQ00290
         PNOTE '*','INVALID REGISTER NOTATION USED FOR OPERAND 1'       ENQ00300
         ENDO                                                           ENQ00310
.B       LABEL                                                          ENQ00320
         DO    1-(&P(0)=4)                                              ENQ00330
         GOTO  .GEN                                                     ENQ00340
         ENDO                                                           ENQ00350
         DO    ('&P(2)'='')                                             ENQ00360
         PNOTE '*','OPERAND 2 NOT SPECIFIED REG 0 ASSUMED LOADED'       ENQ00370
         GOTO  .GEN                                                     ENQ00380
         ENDO                                                           ENQ00390
         DO    1-(('&P(2)'(1,1)='(')++('&P(2)'(1,1)>'Z'))               ENQ00400
         L     0,=A(&P(2))                                              ENQ00410
         GOTO  .GEN                                                     ENQ00420
         ENDO                                                           ENQ00430
         DO    1-(('&P(2)'='(0)')++('&P(2)'='0'))                       ENQ00440
         PNOTE '*','INVALID REGISTER NOTATION USED FOR OPERAND 2'       ENQ00450
         ENDO                                                           ENQ00460
.GEN     LABEL                                                          ENQ00470
         DO    &P(0)=1                                                  ENQ00480
         L     15,=A(NT$ENQ)                                            ENQ00490
         ENDO                                                           ENQ00500
         DO    &P(0)=2                                                  ENQ00510
         L     15,=A(NT$EOT)                                            ENQ00520
         ENDO                                                           ENQ00530
         DO    &P(0)=3                                                  ENQ00540
         L     15,=A(NT$POOL)                                           ENQ00550
         ENDO                                                           ENQ00560
         DO    &P(0)=4                                                  ENQ00570
         L     15,=A(NT$DEQ)                                            ENQ00580
         ENDO                                                           ENQ00590
         BALR  14,15                                                    ENQ00600
         DO    &P(0)=1                                                  ENQ00610
         LTR   0,0                                                      ENQ00620
         BNZ   *+12                                                     ENQ00630
         BALR  1,0                                                      ENQ00640
         SVC   12                                                       ENQ00650
         B     *-16                                                     ENQ00660
         ENDO                                                           ENQ00670
         END                                                            ENQ00680
