In a message dated 12/14/2006 3:16:31 P.M. Central Standard Time,  
[EMAIL PROTECTED] writes:

>000001FE          BNZ    496(,R12)                   4770 C1F0


Several other posts have explained what went wrong.  I will add a  little 
more:  you have messed up your base register and/or local  addressability so 
that 
the BNZ instruction, when executed, is a successful  branch and the branch 
address happens to be in the middle of that same  instruction.  Or you may have 
branched into the middle of the BNZ some  other way which is not obvious from 
the snippet of code you gave us.
 
The CPU thinks you are trying to execute an instruction whose operation  code 
is C1, which is a 6-byte long instruction since its op code is between C0  
and FF.  The PSW does not really point to the LA.  It appears to point  to the 
LA at first glance.  Since the LA, if executed, would have resulted  in an ILC 
of 4 and not 6, you should then conclude that the problem is not with  the LA 
but somewhere else.  Next you should suspect that you attempted to  execute a 
6-byte-long instruction just before the LA.  Subtract 6 from  the PSW's 
address and you can see the C1, which is a 6-byte instruction.   The next step 
in 
debugging is to determine why you branched to the C1 as if it  were the 
beginning of an executable instruction, which it is not.
 
Bill  Fairchild


----------------------------------------------------------------------
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

Reply via email to