At 21:52 -0500 on 08/04/2011, Bill Godfrey wrote about Re: assembler help!:
On Thu, 4 Aug 2011 21:50:24 -0400, Robert A. Rosenberg
<[email protected]> wrote:
At 11:03 -0400 on 08/04/2011, van der Grijn, Bart (B) wrote about Re:
assembler help!:
I believe Anne mentioned something about PARMJOBC containing the address
to a field with x0..08, rather than the actual value.
Looking at the TWS supplied code on our system, that seems to match. It
has:
L DRKR2,PARMJOBC LOAD ADDR OF JOB CPU TIME
ICM DRKR1,K7,K0(DRKR2) LOAD JOB CPU TIME
I think that K0 should be K1 (ie: 1) not K0 or you will be loading
000000 not 000008 into the register. With an offset of 0, you are
truncating the last byte of the time and thus making it only 1/256th
(rounded down) of the actual value in the field.
If PARMJOBC represents the 4th argument passed to IEFACTRT, it
points to a 3-byte CPU time, followed by a byte containing the
number of accounting fields in the job statement. In that case, an
offset of 0 would be correct.
OOPS - Mea Culpa. I did not do research on the parms but relied on
the poster's claim that PARMJOC pointed at a 4 (not as you have
informed me a 3) byte field. Since it does, I agree that I was
mistaken (something that I should have been more careful to not have
done since more than one message in this thread have agreed that the
correct offset was 0). OTOH, in my defence (if I needed one) I am not
the only one posting incorrect replies due to a misstatement (In this
case that PARMJOBC contains, not just points at, the x'00000008'
field) in the original information supplied in the request for
assistance.
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html