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

Reply via email to