C11 TITLE 'IEEAVM00 - AVM - OPEN PARMLIB ROUTINE' VM000001 * * * ðOCìEäHññ KOPPEKTéPOBKA: äATA 26.08.89 BPEMñ 05.16 * æOKõC VM000002 * VM000003 * FUNCTIONS: - FIND SYS1.PARMLIB BY LOCATE VM000004 * - OPEN DCB FOR SYS1.PARMLIB VM000005 * - FIND PRESRES BY BLDL VM000006 * - STORE ITS ABSOLUTE ADDRESS TO IOBSEEK VM000007 * - ON ERROR, WRITE MESSAGE TO OPERATOR AND CLOSE DCB VM000008 * VM000009 * ENTRY: LINK FROM IEEAVM01; R1 - ADDRESS OF DCB FOR SYS1.PARMLIB VM000010 * VM000011 * EXITS: RETURN TO CALLER VM000012 * VM000013 * ìEHéHçPAä éBã çõT OTä. 23 ìATùûKO T: 219-07-07 * VM000014 SPACE 2 VM000015 PRINT NOGEN VM000016 REQU BASE,3,RDCB,4,RCVT,5,RUCB,6,RJFCB,7,RTIOE,8,RIOB,9,W1,10 VM000017 SPACE 2 VM000018 DCBD VM000019 USING IHADCB,RDCB VM000020 SPACE 2 VM000021 UCB DSECT VM000022 USING UCB,RUCB VM000023 IEFUCBOB VM000024 SPACE 2 VM000025 *********************************************************************** VM000026 * PROLOG, * VM000027 *********************************************************************** VM000028 IEEAVM00 CSECT VM000029 USING *,BASE VM000030 SAVEAREA EQU * VM000031 SAVE (14,12) VM000032 LR BASE,15 VM000033 ST 13,SAVEAREA+4 VM000034 LA 13,SAVEAREA VM000035 LR RDCB,1 VM000036 L RCVT,16 VM000037 * VM000038 L RJFCB,DCBEXLST VM000039 L RJFCB,0(RJFCB) VM000040 LA RJFCB,0(RJFCB) VM000041 MVI 0(RJFCB),C' ' VM000042 MVC 1(43,RJFCB),0(RJFCB) VM000043 MVC 0(12,RJFCB),PLIBNAME VM000044 * VM000045 ST RJFCB,LOCLIST+4 VM000046 LOCATE LOCLIST VM000047 IFREG 15,NZ,LOCERR VM000048 * VM000049 MVC 118(6,RJFCB),LOCAREA+6 VM000050 OI 52(RJFCB),X'08' VM000051 * VM000052 ST RJFCB,OBTLIST+4 VM000053 STADR 118(RJFCB),OBTLIST+8 VM000054 OBTAIN OBTLIST VM000055 IFREG 15,NZ,LOCERR VM000056 SPACE 2 VM000057 *********************************************************************** VM000058 * OPEN, BLDL * VM000059 *********************************************************************** VM000060 @GETDD DCBDDNAM VM000061 IFREG 15,Z,OPENERR VM000062 LR RTIOE,15 VM000063 MVC SAVEUCB,18(RTIOE) VM000064 * VM000065 L W1,40(RCVT) VM000066 * VM000067 UCBLOOP LH RUCB,0(W1) VM000068 N RUCB,=X'0000FFFF' VM000069 C RUCB,=X'0000FFFF' VM000070 BE LOCERR VM000071 IFREG RUCB,Z,NEXTUCB VM000072 CLIB UCBID,X'FF',NE,NEXTUCB VM000073 TMB UCBTBYT3,UCB3DACC,Z,NEXTUCB VM000074 CLCB UCBVOLI,118(RJFCB),E,VOLFOUND VM000075 NEXTUCB LA W1,2(W1) VM000076 B UCBLOOP VM000077 * VM000078 VOLFOUND STH RUCB,18(RTIOE) VM000079 OPEN ((RDCB)),TYPE=J VM000080 MVC 18(2,RTIOE),SAVEUCB VM000081 TMB DCBOFLGS,DCBOFOPN,Z,OPENERR VM000082 * VM000083 BLDL (RDCB),BLDLLIST VM000084 IFREG 15,NZ,OPENERR VM000085 * VM000086 L RIOB,DCBIOBAD VM000087 @CNVTTRA TTRZ,32(RIOB),DCB=(RDCB) VM000088 IFREG 15,Z,RET VM000089 SPACE 2 VM000090 *********************************************************************** VM000091 * CONSTANTS * VM000092 *********************************************************************** VM000093 LOCERR WTO MF=(E,LERRMSG) VM000094 OPENERR WTO MF=(E,OPERRMSG) VM000095 TMB DCBOFLGS,DCBOFOPN,Z,RET4 VM000096 *.? UCB VM000097 *.? CLOSE ((RDCB)) VM000098 *.? UCB VM000099 RET4 LA 15,4 VM000100 RET L 13,SAVEAREA+4 VM000101 RETURN (14,12),RC=(15) VM000102 SPACE 2 VM000103 *********************************************************************** VM000104 * CONSTANTS * VM000105 *********************************************************************** VM000106 LERRMSG WTO 'AVM021I SYS1.PARMLIB NOT FOUND BY LOCATE', +VM000107 ROUTCDE=(2,4),MF=L VM000108 OPERRMSG WTO 'AVM022I PRESRES CANNOT BE OPENED', +VM000109 ROUTCDE=(2,4),MF=L VM000110 * VM000111 PLIBNAME EQU LERRMSG+12,12 VM000112 * VM000113 LOCLIST CAMLST NAME,0,,LOCAREA VM000114 OBTLIST CAMLST SEARCH,0,0,OBTAREA VM000115 BLDLLIST DC H'1,12',CL8'PRESRES' VM000116 TTRZ DC F'0' VM000117 * VM000118 DS 0D VM000119 LOCAREA DS CL265 VM000120 OBTAREA EQU LOCAREA VM000121 SAVEUCB EQU LOCAREA,2 VM000122 SPACE 2 VM000123 LTORG VM000124 END VM000125 * VM000126 * VM000127 * VM000128 * VM000129 * VM000130 * VM000131 * VM000132