>When the COBOL program is linked AMODE(ANY) RMODE(24) it runs >fine, but when the COBOL program is linked AMODE(31) RMODE(ANY) >the assembler subroutine abends with a 0C4 abend on the first >BSM instruction above.
The first BSM instruction switches the AMODE to 24. However, the code is resident above the line (RMODE=ANY almost always means the module is loaded above), so the fetch of the next sequential instruction (NSI) (L 1,R5) propbably fails. (If you're unlucky, there is some storage allocated at the 24-bit NSI address and s few more instructions might execute before strange things happen. Although the ASM routine was programmed to deal with different AMODEs, switching forth and back as needed, it is not able to run above the line. The RMODE of any code switching to AMODE24 MUST BE 24. Peter Hunkeler CREDIT SUISSE ---------------------------------------------------------------------- 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

