c~ PARMQUAL.SAV PARMQUAL.SAV8BACKUP/LOG PARMQUAL.EXE,.OBJ,.FOR PARMQUAL.SAV/SAV/INTER $PERROT @@} !oV5.4 _IPNVAX:: S _$1$DUA0: V5.3 ~ *[SYSIPN.COMMAND]PARMQUAL.EXE;3+,(D. /@ 4 -#0123 KPWO 56o7 o89G@HJ0DX0205(zoh PARMQUAL01zo05-05  ?! LIBRTL_001QUALPARMQUALS=QUAL  $ , D L d l     T \ p x  O[^VޟdWX0VPPY~P~Y^xVP@|ވ, Y^PWP P40ըVVЫWի1XYZ\Ո \\zxWT\UUTP@|"YYY\XUTP@|/LZVVTP@|/VUPP@VTQA|DHVUU`VTP@|dh\Z1|xWYZZY\L|/"ZPPˀZY\L|˄ˈ ZPPˠZY\L|ˤ˨eWJ6XSPPPKl[}PQPk} PQ Pּ0PP|CPVW<XXY, }-k cV#VX,XF }VP,P  XWVYV|~ݏQVAL$V^(W,}04V^P PD@V|~* P1 through P8), which are assumed to be in the format of DCL<* command parameters and qualifiers. The local DCL symbols:* * PARM1, PARM2, ...** QUAL1, QUAL2, ...!* QVAL1, QVAL2, ...** QUALS*=* are set to the values derived from the arguments. The last@* symbol in each sequence is set to a null value, to signal that* it is the last.* * Example:*.* Suppose that XXX.COM is: $ RUN PARMQUAL!* $ SHOW SYM /ALL /LOCAL*?* And we invoke XXX as: $ @XXX AAA/BBB /CCC=XXX/DDD EEE*** Then the symbols are: PARM1 = "AAA"* PARM2 = "EEE"* PARM3 = ""* QUAL1 = "/BBB"* QUAL2 = "/CCC"* QUAL3 = "/DDD"* QUAL4 = ""-* QVAL1 = ""0* QVAL2 = "XXX"-* QVAL3 = ""-* QVAL4 = ""* QUALS = "/BBB/CCC/DDD"**?* 30 Sep 1986 ajout des valeurs des qualifiers (QVAL)*1* 17 Apr 1984 Fix problems with following cases:* $ PROC AAA /BBB="/CCC"* $ PROC "" BBB**1* Alan L. Zirkle Naval Surface Weapons Center* Code N41+* 6 March 1984 Dahlgren, Virginia 22448* IMPLICIT INTEGER (A-Z) CHARACTER*128 VALUE(8) CHARACTER*1 ORD INTEGER VLEN(8) EXTERNAL LIB$_NOSUCHSYM LOGICAL IN_QUOTE CHARACTER*128 SUMQUALS COMMON QLEN,SUMQUALS* DATA QLEN,QUALS,PARMS,MAXPARM / 0,0,0,0 / DO I=1,8 ORD = CHAR(I+ICHAR('0'))7 STATUS = LIB$GET_SYMBOL('P'//ORD,VALUE(I),VLEN(I))- IF (STATUS.NE.%LOC(LIB$_NOSUCHSYM)) THEN5 IF (.NOT.STATUS) CALL LIB$STOP(%VAL(STATUS)) IF (VLEN(I).GT.0) MAXPARM = I ENDIF ENDDO DO I=1,MAXPARM IN_QUOTE = .FALSE. START = 1 COL = 1 IF (VLEN(I).EQ.0) GO TO 20>10 IF (VALUE(I)(COL:COL).EQ.'"') IN_QUOTE = .NOT. IN_QUOTE IF (IN_QUOTE) GO TO 204 IF (COL.GT.1.AND.VALUE(I)(COL:COL).EQ.'/') THEN( IF (VALUE(I)(START:START).EQ.'/') THEN5 CALL DEFINE('QUAL',QUALS,VALUE(I)(START:COL-1)) ELSE5 CALL DEFINE('PARM',PARMS,VALUE(I)(START:COL-1)) ENDIF START = COL ENDIF20 COL = COL + 1! IF (COL.LE.VLEN(I)) GO TO 10+ IF (VALUE(I)(START:START).EQ.'/') THEN3 CALL DEFINE('QUAL',QUALS,VALUE(I)(START:VLEN(I))) ELSE3 CALL DEFINE('PARM',PARMS,VALUE(I)(START:VLEN(I))) ENDIF ENDDO2 LEN = 0 ! This allows definition of a null value* CALL DEFINE('QUAL',QUALS,VALUE(1)(1:LEN))* CALL DEFINE('PARM',PARMS,VALUE(1)(1:LEN))2 STATUS = LIB$SET_SYMBOL('QUALS',SUMQUALS(1:QLEN))- IF (.NOT.STATUS) CALL LIB$STOP(%VAL(STATUS)) END& SUBROUTINE DEFINE(TYPE,ORDINAL,VALUE) IMPLICIT INTEGER (A-Z) CHARACTER*(*) TYPE,VALUE CHARACTER*1 ORD CHARACTER*128 SUMQUALS character*128 qval COMMON QLEN,SUMQUALS ORDINAL = ORDINAL + 1 ORD = CHAR(ORDINAL+ICHAR('0')) n=index(value,'=') lq=0 lv=len(value) qval=value(1:lq) if (type .eq. 'QUAL') then if (n .ne. 0) then qval=value(n+1:len(value)) value=value(1:n-1) lq=lv-n lv=n-1 endif/ status=lib$set_symbol('QVAL'//ord,qval(1:lq)). if (.not.status) call lib$stop(%val(status)) endif/ STATUS = LIB$SET_SYMBOL(TYPE//ORD,VALUE(1:lv))- IF (.NOT.STATUS) CALL LIB$STOP(%VAL(STATUS)) IF (TYPE.EQ.'QUAL') THEN$ SUMQUALS(QLEN+1:) = VALUE(1:lv) QLEN = QLEN + lv ENDIF ENDk0 ~ PARMQUAL.SAVbi 0& PARMQUAL.SAV8BACKUP/LON-HARS~jM-A^igN-/BK|VHRMUQncn@Wsub-KER !XROT @mP.r7091V5/5;2 [zcNVAX88OKRV  W$5 F9:5c4+; 6;Mȁ75AOac 8898!iWM nNLOC rP3.EX_;3+,(fPVOmZ r#q|1-wpY#;8|cx}kv|}"=|dxu0 7z2 Ahor[1 O<=39p( 2_\{W]d3tXm GsEd(9-!o5.x=oondw :6k(x"$!aBdI/ FuZ4e(a^]*ɓM1%Hgk"t[$$e(~Jocedrk!(ph"#CM/Syfs>v.1 thgkugh P9-,.vfhc;r!.8ssumfTDU#c9$ߋ);#$\#o'A#1a iM_~l|`m`ors.`nd q|aliikev ! Qecd))*/!pAj):!Jkw|8.*^@RM* POSM2, -..?$ QXGtji;!)0)" $;$ .!>!!%KAL- QTAO2< %,, /ML  Sj*!bij"cq;k zco!vhwe.qeIf frm=pfd a^a1+#':6 # y&k.##Pr0 hzїځjэߙpދҘݚʁ݋ۗw+ъߓͷɀߟ'ߧ߿jݭ[ߏ"/ЮTpێnн`ZG$Л1#s7tbUPopwC!?sТV7 v ]d oTuSsDbol<<0$?v )m?GBe2lie~p!T"V_X쮝3w*QFt"Q!y@2|1"+U|DUPLI'jt.wBPIu2 k|#:CvFju&2 Petmb8k0|\YYЋ`a\ىih &define<1 !!vuu@vtp`\ۋD>AJue{ilgvz\X'wyzzy|l\2 zpp z \X-,define<1 !zpp zy|l\ ښAL5dxfklE1ۍ!w2ߔ &define<єQȊ ,MLO@ne( .#IF/͈Jqhh;|P r{2PTsohc(\/Q<2pna8u/%v71,M6l9%x&,% 04UҭD&f>R](='TYPsu~.TQkc0e|/?"x.\LڇBTOP9W)ZY\L5T.4.'Q&~2 UUALLۅ AcE(1.s֮J!YM"+ &PPHD@Kl[}PQPk} PQ Pּ0PP|CPVW<XXY, }-k cV#VX,XF }VP,P  XWVYV|~ݏQVAL$V^(W,}04V^P PD@V|~