> -----Original Message-----
> From: IBM Mainframe Discussion List On Behalf Of Crabtree, Anne D
> 
> In our IEFACTRT (accounting exit), an assembler program, it has the
following commands:
> 
> L     R2,PARMJOBC
> ICM   R1,7,0(R2)
> 
> If PARMJOBC contains a binary integer length of 4 with 00 00 00 08,
what ends up in all bits of R1?  I
> am trying to add additional values to what is in R1 by doing:
> 
> MVC   WK1(4),SMF30CPS
> A     R1,WK1
> 
> This is not doing what I want it to do! If SMF30CPS, also a binary
integer length of 4, has 00 00 00
> 01,  what ends up in R1?

In a later post you added that, prior to L   R2,PARMJOBC you have SR
R1,R1.  So, the updated sequence of instructions should be
substantially:

SR    R1,R1
...          (at this point, R1 contains 00 00 00 00)

L     R2,PARMJOBC
...          Since location PARMJOBC contains 00 00 00 08, R2 now
contains 00 00 00 08)

ICM   R1,7,0(R2)
...          Now R1 contains, in its second through fourth bytes, the
contents of the first three bytes of storage at location 8, which
(according to my really old "yellow booklet") is the Restart Old PSW.

MVC   WK1(4),SMF30CPS
...          Now the area of storage known to your program as WK1
contains, in its first four bytes, the contents of the area of storage
known to your program as SMF30CPS.

A     R1,WK1
...          Now R1 contains the arithmetic sum of the first three bytes
of the Restart Old PSW and whatever was in the first four bytes of the
storage area WK1.

As others have suggested, the L   R2,PARMJOBC should probably be LA
R2,PARMJOBC.

    -jc-

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to