On Wed, Dec 4, 2013 at 1:29 PM, Tony Thigpen <[email protected]> wrote:
> I am doing my first attempt at modifying an internal macro to be > baseless. The first two examples are: > > NILF R1,X'00FF0000' > LTR R1,R1 > BNZ *+4+4 > OI 68(R13),X'80' > .... > > TM 68(R13),X'80' > BNO *+4+6+2 > IILF R1,X'FF0000FF' > SVC 12 > .... > > It looks like the first should be changed to > JNE *+2+2 > and the second to > JNO *+2+3+1 > > Am I reading the book right? > No. Although the assembled instructions have the displacement in half words, your source code should still use the original "offset". HLASM itself will halve the value. And it will complain bitterly if the offset is not even. So you just replace the B??? with J??? and leave the operand itself alone. > > -- > Tony Thigpen > -- This is clearly another case of too many mad scientists, and not enough hunchbacks. Maranatha! <>< John McKown
