*********************************************************************** 00000001
* ðPOçPAMMA ðOìHOCTøà ðEPEPAâOTAHA äìñ COBETCKOçO TSO SVS             * 00000002
* B.â.öOPHéãKéM, çBã MðC, MOCKBA, OKT-HOñâ. 1986 ç.                   * 00000003
* CETEBOçO AäPECA HE éMEà, OäHAKO éMEà TEìEæOH: 262-15-68             * 00000004
*********************************************************************** 00000005
DYNALC   CSECT                                                          00000010
         PRINT NOGEN                                                    00000011
         ENTRY DYNALC
         B    14(R15)        BRANCH AROUND ID        4                  00000020
         DC   X'08',CL9'DYNALC'                     10                  00000030
         STM   14,12,12(13)                          4                  00000040
         CNOP  0,4                                                      00000050
         LR    12,13                                 2                  00000060
         BALR  13,0                                  2                  00000070
         BAL   13,76(13)                             4                  00000080
         USING *,13                                  - = 26 = (6*4)+2   00000090
         DS    18F                                  72                  00000100
         ST    12,4(13)                                                 00000110
         ST    13,8(12)                                                 00000120
         LR    R11,R1                                                   00000130
         USING ARGADDS,R11                                              00000140
         LA    7,DAPB34L                                                00000141
         USING DAPB34,7                                                 00000142
* éýEM ðPEäùä. Oâì. COXP. äìñ HAXOöäEHéñ CPPL                           00000150
         L     12,4(13)                                                 00000160
         L     12,4(12)                                                 00000161
         L     12,24(12)               12->CPPL                         00000170
         USING CPPL,12                                                  00000180
         LA    10,DAPLL                                                 00000190
         USING DAPL,10                                                  00000200
         LA    9,DAPB08L                                                00000210
         LA    8,DAIRACBL                                               00000220
         USING DAIRACB,8                                                00000230
         USING DAPB08,9                                                 00000240
*úAðOìH. DAPL                                                           00000250
         MVC   DAPLPSCB,CPPLPSCB                                        00000260
         MVC   DAPLUPT,CPPLUPT                                          00000270
         MVC   DAPLECT,CPPLECT                                          00000280
GETDDNAM L     R1,ADDNAME              1->DD-éMñ                        00000290
         TM    0(R1),X'80'             ECTø éMñ ?                       00000300
         BO    DDMVC                   äA                               00000310
         L     R2,0(R1)                HET - æOPMéPõEM                  00000320
         CVD   R2,DBLWORD                                               00000330
         UNPK  FTXXF001+2(2),DBLWORD+6(2) CONVERT TO ZONED              00000340
         OI    FTXXF001+3,X'F0'                                         00000350
         MVC   DA08DDN(8),FTXXF001   COPY FORTRAN DDNAME TO TEXT UNIT   00000360
         B     GETDSN                                                   00000370
DDMVC    MVC   DA08DDN(8),0(1)         éìé ðEPEäAHHOE                   00000380
GETDSN   MVC   DAPL18+12(8),DA08DDN    äìñ OCBOâ. DD                    00000381
         L     R1,AMVSDSN              1-> DSN                          00000390
         LA    R2,TUDSNAME             KõäA éMñ                         00000400
         LA    R3,44                   äìéHA                            00000410
DSLOOP   CLI   0(R1),C' '              BCE?                             00000420
         BE    GOTDS                   OK                               00000430
         MVC   0(1,R2),0(R1)           ðEPEûìEM                         00000440
         LA    R1,1(R1)                CäBéHEM                          00000450
         LA    R2,1(R2)                CäBéHEM                          00000460
         BCT   R3,DSLOOP               õMEHøûéM äìéHõ                   00000470
GOTDS    S     R2,=A(TUDSNAME)                                          00000480
         STCM  R2,B'0011',TUDSNLEN                                      00000490
GETMEM   L      R1,AMEMBER             R1 --> POSSIBLE MEMBER NAME      00000500
         MVC   DA08MNM(8),0(1)                                          00000510
GETDISP  L     R1,AIDISP               R1 --> STATUS PARM               00000520
         CLC   0(4,R1),=F'0'           UNCATALOG DATASET?               00000530
         BNE   *+12                    IF NOT, CHECK FOR CATALOG        00000540
         MVI   DA08DPS2,X'01'          ELSE, SIGNAL UNCATALOG           00000550
         B     GETSTAT                 AND GO GET STATUS                00000560
         CLC   0(4,R1),=F'1'           CATLG?                           00000570
         BNE   *+12                    NO                               00000580
         MVI   DA08DPS2,X'02'          æìAöOK CATLG                     00000590
         B     GETSTAT                                                  00000600
         CLC   0(4,R1),=F'2'           DELETE (HE OðéCAH B KOMM.)       00000610
         BNE   *+12                    NO                               00000620
         MVI   DA08DPS2,X'04'          DELETE                           00000630
         B     GETSTAT                                                  00000640
         MVI   DA08DPS2,X'08'          MUST BE KEEP                     00000650
GETSTAT  L     R1,AISTAT                                                00000660
         CLC   0(4,R1),=F'0'           NEW ?                            00000670
         BNE   *+12                                                     00000680
         MVI   DA08DSP1,X'04'          æìAöOK NEW                       00000690
         B     GETINOUT                                                 00000700
         CLC   0(4,R1),=F'1'           OLD ?                            00000710
         BNE   *+12                                                     00000720
         MVI   DA08DSP1,X'01'          æìAöOK OLD                       00000730
         B     GETINOUT                                                 00000740
         CLC   0(4,R1),=F'2'           SHR ?                            00000750
         BNE   *+12                                                     00000760
         MVI   DA08DSP1,X'08'          æìAöOK SHR                       00000770
         B      GETINOUT                                                00000780
         MVI   DA08DSP1,X'02'          éHAþE - MOD                      00000790
* æOPMéPõEM CðéCOK ATPéâõTOB.                                           00000800
GETINOUT L     R1,AINOUT                                                00000810
         CLC   0(4,R1),=F'0'                                            00000820
         BNE   OUT                                                      00000830
         MVI   DAILABEL,X'80'                                           00000840
         B     GETRECFM                                                 00000850
OUT      CLC   0(4,R1),=F'1'                                            00000860
         BNE   BOTH                                                     00000870
         MVI   DAILABEL,X'40'                                           00000880
         B      GETRECFM                                                00000890
BOTH     MVI    DAILABEL,X'80'+X'40' SIGNAL BOTH INPUT/OUTPUT           00000900
GETRECFM L     R1,AIRECFM                                               00000910
         CLC   0(4,R1),=F'1'                                            00000920
         BNE   *+12                                                     00000930
         MVI   DAIRECFM,X'80'+X'10'                                     00000940
         B     GETBLKSI                                                 00000950
         MVI   DAIRECFM,X'40'+X'10'+X'08' RECFM = V+B+S                 00000960
GETBLKSI L     R1,AIBLKSI                                               00000970
         L     R2,0(R1)                                                 00000980
         STCM  R2,B'0011',DAIBLKSI                                      00000990
GETLRECL L     R1,AILRECL                                               00001000
         L     R2,0(R1)                                                 00001010
         STCM  R2,B'0011',DAILRECL                                      00001020
GETUNIT  L     R1,ADEVICE                                               00001030
         MVC   DA08UNIT(8),0(1)                                         00001040
GETTRACK L     R1,AITRACK                                               00001050
         L     R2,0(R1)                                                 00001060
         STCM  R2,B'0111',DA08PQTY+1                                    00001070
         STCM  R2,B'0111',DA08SQTY+1                                    00001080
DYNALLOC DS    0H                                                       00001220
         MVI   DA34CTRL,DA34UNCH       OCBOâOäéTø ACB                   00001221
         ST    7,DAPLDAPB                                               00001222
         LA    1,DAPLL                                                  00001223
         LINK  EP=IKJEFD00                                              00001224
         DS    0H                                                       00001225
* OCB.   DD                                                             00001226
         MVC   DAPLDAPB,=A(DAPL18)     OCBOâOäéTø HAâOP äAHHùX          00001227
         LA    1,DAPLL                                                  00001228
         LINK  EP=IKJEFD00                                              00001229
         MVC   DAPLDAPB,=A(DAPL28)                                      00001230
         MVI   DA34CTRL,DA34CHN                                         00001231
         LA    1,DAPLL                                                  00001232
         LINK  EP=IKJEFD00                                              00001233
         LTR   R15,R15                                                  00001240
         BZ    EXITOK                                                   00001250
DYNFAIL  DS    0H                                                       00001260
         ST    15,S15                  R15 B ðAPAMETPù DAIR FAIL ROUT   00001261
          LA    R1,DFPARMS                                              00001270
         LINK   EP=IKJEFF18                                             00001280
         LA     R15,1                                                   00001290
         B      EXITBAD                                                 00001300
         EJECT                                                          00002860
EXITOK   SR    R15,R15                                                  00002861
EXITBAD  L     R1,AIRETCD                                               00002862
         ST    R15,0(R1)                                                00002863
         L     R13,4(R13)                                               00002864
         LM    R14,R12,12(R13)                                          00002865
         BR    R14                                                      00002866
         EJECT                                                          00002867
DBLWORD  DC    D'0'                    NICE DOUBLEWORD                  00002910
FTXXF001 DC    C'FTXXF001'             PLACE TO BUILD FORTRAN DDNAME    00002920
DAPLL    DC    A(0,0,DAECB,0,0)        éCðPABéTø ðOCì. AäP.             00002930
DAECB    DC    F'0'                                                     00002940
DAPB08L  DC    0F'0',H'8,0,0,0',A(TUDSNLEN),CL8' ',CL8' ',CL8' '        00002950
         DC    A(0,0,0,0),CL8' ',CL8' ',X'0000000000000000',CL8'ATTR'   00002960
         ORG   DAPB08L+X'47'                                            00002961
         DC    X'80'                   ðAMñTø - B äOP.                  00002962
         ORG                                                            00002963
DAPL18   DC    0F'0',X'0018',H'0,0,0',A(0),CL17' ',X'0800'              00002964
         DC    CL8' '                                                   00002965
FDDN     DC    H'0'                                                     00002966
DAPB34L  DC    0F'0',X'0034',H'0,0,0',CL8'ATTR',A(DAIRACBL)             00002967
DAPL28   DC    X'00280002',A(0,DAPB34L,DAPB08L)                         00002968
DFPARMS  DC    A(DAPLL,S15,ZERO,*+4),H'0,0' ðAPAMETPù äìñ IKJEFF18      00002969
S15      DC    F'0'                    OâìACTø äìñ 15R éú DAIR          00002970
ZERO     DC    F'0'                    AäPEC IKJEFF02 éìé 0             00002971
TUDSNLEN DC    AL2(*-*)                äìéHA                            00002972
TUDSNAME DC    CL44' '                 éMñ HAâOPA                       00002980
DAIRACBL DC    0F'0',50X'0'            âìOK XAPAKTEPéCTéK               00002990
ARGADDS  DSECT                                                          00003000
AIDSYS   DS   A                                                         00003010
ADDNAME  DS   A                                                         00003020
AMVSDSN  DS   A                                                         00003030
AMEMBER  DS   A                                                         00003040
ACMSFN   DS   A                                                         00003050
ACMSFT   DS   A                                                         00003060
ACMSFM   DS   A                                                         00003070
AISTAT   DS   A                                                         00003080
AIDISP   DS   A                                                         00003090
AINOUT   DS   A                                                         00003100
AIRECFM  DS   A                                                         00003110
AIBLKSI  DS   A                                                         00003120
AILRECL  DS   A                                                         00003130
ADEVICE  DS   A                                                         00003140
AITRACK  DS   A                                                         00003150
AIRETCD  DS   A                                                         00003160
R0  EQU  0                                                              00003170
R1  EQU  1                                                              00003180
R2  EQU  2                                                              00003190
R3  EQU  3                                                              00003200
R4  EQU  4                                                              00003210
R5  EQU  5                                                              00003220
R6  EQU  6                                                              00003230
R7  EQU  7                                                              00003240
R8  EQU  8                                                              00003250
R9  EQU  9                                                              00003260
R10 EQU  10                                                             00003270
R11 EQU  11                                                             00003280
R12 EQU  12                                                             00003290
R13 EQU  13                                                             00003300
R14 EQU  14                                                             00003310
R15 EQU  15                                                             00003320
         PRINT GEN                                                      00003321
         EJECT                                                          00003322
         IKJCPPL                                                        00003330
         EJECT                                                          00003331
         IKJDAPL                                                        00003340
         EJECT                                                          00003341
         IKJDAP08                                                       00003350
         EJECT                                                          00003351
         IKJDACB                                                        00003360
         EJECT                                                          00003361
         IKJDAP34                                                       00003362
         END                                                            00003370
