&PL      PROC  &P,4                                                     OBT00010
OBTAIN   NAME  0                                                        OBT00020
SYSOBTIN NAME  1                                                        OBT00030
         LCL   &SYMBOL1,&SYMBOL2,&SYMBOL3,&X,&Y,&Z,&XX,&YY,&ZZ          OBT00040
         DO    0                                                        OBT00050
.*       SYSOBTIN PRM-LIST,ERROR-ADDR                                   OBT00060
.*       OBTAIN  PRM-LIST,ERROR-ADDR,VOL-SEQ-NO,FCBCORE                 OBT00070
         ENDO                                                           OBT00080
&X       SET   '&P(1)'(1,1)                                             OBT00090
&Y       SET   '&P(2)'(1,1)                                             OBT00100
&Z       SET   '&P(3)'(1,1)                                             OBT00110
&SYMBOL1 SET   0                                                        OBT00120
&SYMBOL2 SET   0                                                        OBT00130
&SYMBOL3 SET   0                                                        OBT00140
         DO    (('A'<'&X')**('&X'<'Z'))++('&X'='A')++('&X'='Z')++('&X'=COBT00150
               '$')++('&X'='#')++('&X'='@')++('&X'='?')                 OBT00160
&SYMBOL1 SET   1                                                        OBT00170
         ENDO                                                           OBT00180
         DO    (('A'<'&Y')**('&Y'<'Z'))++('&Y'='A')++('&Y'='Z')++('&Y'=COBT00190
               '$')++('&Y'='#')++('&Y'='@')++('&Y'='?')                 OBT00200
&SYMBOL2 SET   1                                                        OBT00210
         ENDO                                                           OBT00220
         DO    (('A'<'&Z')**('&Z'<'Z'))++('&Z'='A')++('&Z'='Z')++('&Z'=COBT00230
               '$')++('&Z'='#')++('&Z'='@')++('&Z'='?')                 OBT00240
&SYMBOL3 SET   1                                                        OBT00250
         ENDO                                                           OBT00260
         DS    0H                                                       OBT00270
         DO    '&PL'=''=0                                               OBT00280
&PL      EQU   *                                                        OBT00290
         ENDO                                                           OBT00300
         DO    ('&P(3)'='(0)')++('&P(3)'='0')                           OBT00310
         GOTO  .OBTAIN1                                                 OBT00320
         ENDO                                                           OBT00330
         DO    '&P(3)'=''                                               OBT00340
&XX      SET   1                                                        OBT00350
         ENDO                                                           OBT00360
         DO    &SYMBOL3                                                 OBT00370
&XX      SET   1                                                        OBT00380
         PNOTE 'P','3RD PARAM ERROR  VOL SEQ NUMBER IS ASSUMED FOR 1  ' OBT00390
         ENDO                                                           OBT00400
         DO    '&P(3)'=''=0                                             OBT00410
&XX      SET   '&P(3)'                                                  OBT00420
         ENDO                                                           OBT00430
         DO    '&P(4)'=''                                               OBT00440
&ZZ      SET   0                                                        OBT00450
         ENDO                                                           OBT00460
         DO    '&P(4)'='FCBCORE'                                        OBT00470
&ZZ      SET   512                                                      OBT00480
         ENDO                                                           OBT00490
         DO    ('&P(4)'=''=0)**('&P(4)'='FCBCORE'=0)                    OBT00500
&ZZ      SET   0                                                        OBT00510
         PNOTE  'P',4TH PARAM ERROR    DEFAULT=FCB NOT IN CORE          OBT00520
         ENDO                                                           OBT00530
         DO    &P(0)=1                                                  OBT00540
         LA    0,1                                                      OBT00550
         SLL   0,16                                                     OBT00560
         GOTO  .OBTAIN1                                                 OBT00570
         ENDO                                                           OBT00580
         DO    &P(0)=0                                                  OBT00590
         LA    0,&XX+&ZZ                                                OBT00600
         GOTO  .OBTAIN1                                                 OBT00610
         ENDO                                                           OBT00620
.OBTAIN1 LABEL                                                          OBT00630
         DO    '&P(1)'=''                                               OBT00640
         PNOTE 'P','PRM-LIST IS NOT SPECIFIED'                          OBT00650
         NOP   *                        PATCH AREA                      OBT00660
         GOTO  .OBTAIN2                                                 OBT00670
         ENDO                                                           OBT00680
         DO    ('&P(1)'='(1)')++('&P(1)'='1')                           OBT00690
         GOTO  .OBTAIN2                                                 OBT00700
         ENDO                                                           OBT00710
         DO    &SYMBOL1=0                                               OBT00720
         PNOTE 'P','1ST PARAM ERROR '                                   OBT00730
         NOP   *                       PATCH AREA                       OBT00740
         GOTO  .OBTAIN2                                                 OBT00750
         ENDO                                                           OBT00760
         CNOP  0,4                                                      OBT00770
         L     1,*+8                                                    OBT00780
         B     *+8                                                      OBT00790
         DC    A(&P(1))                                                 OBT00800
.OBTAIN2 LABEL                                                          OBT00810
         SVC   37                       SV$OBTAN                        OBT00820
         LTR   0,0                                                      OBT00830
         DO    '&P(2)'=''                                               OBT00840
         BNM   *+6                                                      OBT00850
         SVC   28                                                       OBT00860
         GOTO  .EXIT                                                    OBT00870
         ENDO                                                           OBT00880
         DO    ('&P(2)'='(0)')++('&P(2)'='0')                           OBT00890
         PNOTE 'P','2ND PARAM ERROR '                                   OBT00900
         NOP   *                       PATCH AREA                       OBT00910
         GOTO  .EXIT                                                    OBT00920
         ENDO                                                           OBT00930
         DO    ('&P(2)'='(1)')++('&P(2)'='1')                           OBT00940
         PNOTE 'P','2ND PARAM ERROR '                                   OBT00950
         NOP   *                       PATCH AREA                       OBT00960
         GOTO  .EXIT                                                    OBT00970
         ENDO                                                           OBT00980
         DO    &SYMBOL2=0                                               OBT00990
         BMR   &P(2)                                                    OBT01000
         GOTO  .EXIT                                                    OBT01010
         ENDO                                                           OBT01020
         BM    &P(2)                                                    OBT01030
.EXIT    LABEL                                                          OBT01040
         END                                                            OBT01050
