&PL      PROC  &P,5                                                     ALL00010
ALLOC    NAME  0                                                        ALL00020
         LCL   &SYMBOL1,&SYMBOL2,&SYMBOL3,&X,&Y,&Z,&XX,&YY,&ZZ          ALL00030
         DO    0                                                        ALL00040
.*       ALLOC FCB-ADDR,ERROR-ADDR,VOL-SEQ-NUMBER,OLD,NOFCB             ALL00050
         ENDO                                                           ALL00060
&X       SET   '&P(1)'(1,1)                                             ALL00070
&Y       SET   '&P(2)'(1,1)                                             ALL00080
&Z       SET   '&P(3)'(1,1)                                             ALL00090
&SYMBOL1 SET   0                                                        ALL00100
&SYMBOL2 SET   0                                                        ALL00110
&SYMBOL3 SET   0                                                        ALL00120
         DO    (('A'<'&X')**('&X'<'Z'))++('&X'='A')++('&X'='Z')++('&X'=CALL00130
               '$')++('&X'='#')++('&X'='@')++('&X'='?')                 ALL00140
&SYMBOL1 SET   1                                                        ALL00150
         ENDO                                                           ALL00160
         DO    (('A'<'&Y')**('&Y'<'Z'))++('&Y'='A')++('&Y'='Z')++('&Y'=CALL00170
               '$')++('&Y'='#')++('&Y'='@')++('&Y'='?')                 ALL00180
&SYMBOL2 SET   1                                                        ALL00190
         ENDO                                                           ALL00200
         DO    (('A'<'&Z')**('&Z'<'Z'))++('&Z'='A')++('&Z'='Z')++('&Z'=CALL00210
               '$')++('&Z'='#')++('&Z'='@')++('&Z'='?')                 ALL00220
&SYMBOL3 SET   1                                                        ALL00230
         ENDO                                                           ALL00240
         DS    0H                                                       ALL00250
         DO    '&PL'=''=0                                               ALL00260
&PL      EQU   *                                                        ALL00270
         ENDO                                                           ALL00280
         DO    '&P(1)'=''                                               ALL00290
         PNOTE 'P','FCB-ADDR IS NOT SPECIFIED'                          ALL00300
         NOP   *                        PATCH AREA                      ALL00310
         GOTO  .ALLOC1                                                  ALL00320
         ENDO                                                           ALL00330
         DO    ('&P(1)'='(1)')++('&P(1)'='1')                           ALL00340
         GOTO  .ALLOC1                                                  ALL00350
         ENDO                                                           ALL00360
         DO    &SYMBOL1=0                                               ALL00370
         PNOTE 'P','1ST PARAM ERROR '                                   ALL00380
         NOP   *                       PATCH AREA                       ALL00390
         GOTO  .ALLOC1                                                  ALL00400
         ENDO                                                           ALL00410
         CNOP  0,4                                                      ALL00420
         L     1,*+8                                                    ALL00430
         B     *+8                                                      ALL00440
         DC    A(&P(1))                                                 ALL00450
.ALLOC1  LABEL                                                          ALL00460
         DO    ('&P(3)'='(0)')++('&P(3)'='0')                           ALL00470
         GOTO  .ALLOC2                                                  ALL00480
         ENDO                                                           ALL00490
         DO    '&P(3)'=''                                               ALL00500
&XX      SET   1                                                        ALL00510
         ENDO                                                           ALL00520
         DO    '&P(3)'=''=0                                             ALL00530
&XX      SET   '&P(3)'                                                  ALL00540
         ENDO                                                           ALL00550
         DO    &SYMBOL3                                                 ALL00560
&XX      SET   1                                                        ALL00570
         PNOTE 'P','3RD PARAM ERROR  VOL-SEQ-NUMBER IS ASSUMED FOR 1 '  ALL00580
         ENDO                                                           ALL00590
         DO    '&P(4)'=''                                               ALL00600
&YY      SET   0                                                        ALL00610
         ENDO                                                           ALL00620
         DO    '&P(4)'='OLD'                                            ALL00630
&YY      SET   256                                                      ALL00640
         ENDO                                                           ALL00650
         DO    ('&P(4)'=''=0)**('&P(4)'='OLD'=0)                        ALL00660
&YY      SET   0                                                        ALL00670
         PNOTE 'P','4TH PARAM ERROR  NEW FILE IS ASSUMED '              ALL00680
         ENDO                                                           ALL00690
         DO    '&P(5)'=''                                               ALL00700
&ZZ      SET   0                                                        ALL00710
         ENDO                                                           ALL00720
         DO    '&P(5)'='NOFCB'                                          ALL00730
&ZZ      SET   512                                                      ALL00740
         ENDO                                                           ALL00750
         DO    ('&P(5)'=''=0)**('&P(5)'='NOFCB'=0)                      ALL00760
&ZZ      SET   0                                                        ALL00770
         PNOTE 'P','5TH PARAM ERROR  1ST PARAM IS ASSUMED FOR FCB-ADDR' ALL00780
         ENDO                                                           ALL00790
         LA    0,&XX+&YY+&ZZ                                            ALL00800
.ALLOC2  LABEL                                                          ALL00810
         SVC   33                       SV$ALLOC                        ALL00820
         LTR   0,0                                                      ALL00830
         DO    '&P(2)'=''                                               ALL00840
         BNM   *+6                                                      ALL00850
         SVC   28                                                       ALL00860
         GOTO  .EXIT                                                    ALL00870
         ENDO                                                           ALL00880
         DO    ('&P(2)'='(1)')++('&P(2)'='1')                           ALL00890
         PNOTE 'P','2ND PARAM ERROR '                                   ALL00900
         NOP   *                        PATCH AREA                      ALL00910
         GOTO  .EXIT                                                    ALL00920
         ENDO                                                           ALL00930
         DO    ('&P(2)'='(0)')++('&P(2)'='0')                           ALL00940
         PNOTE 'P','2ND PARAM ERROR '                                   ALL00950
         NOP   *                        PATCH AREA                      ALL00960
         GOTO  .EXIT                                                    ALL00970
         ENDO                                                           ALL00980
         DO    &SYMBOL2=0                                               ALL00990
         BMR   &P(2)                                                    ALL01000
         GOTO  .EXIT                                                    ALL01010
         ENDO                                                           ALL01020
         BM    &P(2)                                                    ALL01030
.EXIT    LABEL                                                          ALL01040
         END                                                            ALL01050
