From:	CRDGW2::CRDGW2::MRGATE::"SMTP::CRVAX.SRI.COM::RELAY-INFO-VAX" 20-MAY-1991 11:28:34.88
To:	ARISIA::EVERHART
CC:	
Subj:	Re: F$Environment items from FORTRAN

From:	RELAY-INFO-VAX@CRVAX.SRI.COM@SMTP@CRDGW2
To:	Everhart@Arisia@MRGATE

Received:  by crdgw1.ge.com (5.57/GE 1.97)
	 id AA03769; Mon, 20 May 91 10:39:38 EDT
Received: From PUCC.PRINCETON.EDU by CRVAX.SRI.COM with TCP; Mon, 20 MAY 91 06:54:41 PDT
Received: from IRLEARN.UCD.IE by pucc.PRINCETON.EDU (IBM VM SMTP R1.2.2MX) with BSMTP id 2705; Mon, 20 May 91 09:54:44 EDT
Received: from mailgate.ucd.ie by IRLEARN.UCD.IE (Mailer R2.07) with BSMTP id
 8884; Mon, 20 May 91 14:53:09 GMT
Received: from enterprise.eurokom.ie by mailgate.ucd.ie; Mon, 20 May 91 13:43
 GMT
Received: from kirk.eurokom.ie by enterprise.eurokom.ie with PMDF#10597; Mon,
 20 May 1991 14:53 WET
Date: Mon, 20 May 1991 14:52 WET
From: "Tom Wade, VMS Systems" <T.Wade%cc.ucd.ie@pucc.PRINCETON.EDU>
Subject: Re: F$Environment items from FORTRAN
Sender: Tom Wade VMS Systems <T_WADE%kirk.eurokom.ie@pucc.PRINCETON.EDU>
To: INFO-VAX@KL.SRI.com, ISIS08@ECOSTAT.AAU.dk
Cc: BARKELEW@UTXVMS.CC.UTEXAS.edu
Message-Id: <3AC327F440000063@kirk.eurokom.ie>
X-Envelope-To: ISIS08@ECOSTAT.AAU.dk, INFO-VAX@KL.SRI.com,
 BARKELEW@UTXVMS.CC.UTEXAS.edu
X-Vms-To: info-vax@kl.sri.com
X-Vms-Cc: BARKELEW@UTXVMS.CC.UTEXAS.EDU,ISIS08@ECOSTAT.AAU.dk

>I could not find image verification or procedure depth.
>
>Does anyone have a relative complete description of these datafields in P1
>space ?

I reached the same conclusions about procedure verification. Image verification
appears to be in the location

        PRC_B_FLAGS2(R6)  (assuming R6 contains the address of the PRC, i.e.
after executing:

        Movl    #Ctl$Ag_Clidata, R6
        Movl    Ppd$L_Prc(R6), R6
)

Check for bit PRC_V_VERIMAGE.

Procedure depth is in PRC_W_PROCLEVEL(R6).

The method I used to find various things like this in the DCL space (without
internals or source listing) is to use ANALYZE/SYSTEM.

        SDA> Read SYS$SYSTEM:DCLDEF.STB
        SDA> Format ctl$ag_clidata /type=ppd

One can guess at quite a few of the fields.  Note the address of

        PPD$L_PRC       (e.g. 7FFE2BDC)

        SDA> Format 7FFE2BDC /type=PRC

You can see all sorts of interesting things like DCL prompt, recall buffer
etc.  By using ANALYZE /SYSTEM on a target process (SDA> SET PROCESS proc-name),
you can issue SET VERIFY commands on the target, and see what changes in any
of the FLAGS fields.  Once you find the bit, you can then issue a

        $ DUMP SYS$SYSTEM:DCLDEF.STB /output=DCLDEF.TXT

and search through it for a xxx_V_xxx symbol that matches that value. There
are probably better ways to get a dump of these values, so speak up if you
know.  The same worked for procedure depth.  When the target went into
nested procedures the PROCLEVEL word went up.  It went back to zero when
the procedures exited (after a CTRL/Y followed by EXIT).

Oh, and for the benefit of trigger-happy flamers:


"This information is provided as-is.  No warranty is expressed or implied.
If it doesn't do what I say, tough luck.  It's up to you to test that it meets
*your* requirements."

(Feel free to mail me about it though).

------------------------------------------------------------------------------
Tom Wade            |  Internet:    T.Wade@vms.eurokom.ie  (all domain mailers).
Speaker To VAXes    |  Bitnet:      T_WADE@CCVAX
EuroKom             |  PSI-Mail:    PSI%272431001992::T.WADE
University College  |  DEC EASYnet: DECWRL::"t.wade@vms.eurokom.ie"   (VMS Mail)
Belfield            |  JANET:       t.wade%ie.eurokom.vms@UK.AC.EARN-RELAY
Dublin 4            |  X400:        [Address Exceeds 65536 byte buffer]
Ireland             |  Telex:       (0500) 91178 UCD EI  ("TO: WADE" at start)
--------------------+----------------------------------------------------------
Voice:+353-1-2697890|  Official Disclaimer:  "This is not a disclaimer"
Fax:  +353-1-2838605|          Unix  ....  Just say No !
-------------------------------------------------------------------------------

