Jim,
 Not certain that it is releavant, but have you read the information at:

http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/igy3mg30/APPENDIX
1.4.13 

        also

http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/ceea4140/14.2.1 


"Jim McAlpine" <[EMAIL PROTECTED]> wrote in message
news:<[EMAIL PROTECTED]>...
> I inherited a set of programs one of which is assembler and runs as a
> subroutine which is called by a COBOL main program.  Here is a snippet
from
> the assembler routine which is linkied AMODE(31) RMODE(24) -
> 
>           L     R4,CZW3IOAA             ...SETUP ADDR OF IOAREA
>           L     R5,CZW3DCBA             ...SETUP ADDR OF DCB
>           LA    R8,DOGETS               SET UP 24 BIT ADDRESS
>           LA    R9,DOGETE               STORE CURR AMODE AND RET ADDR
>           BSM   R9,R8                   SWITCH AMODE TO 24 BIT
>  DOGETS   GET   (R5),(R4)
> +DOGETS   LR    1,R5                              LOAD PARAMETER REG
> +         LR    0,R4                              LOAD PARAMETER REG
> +         SLR   15,15                    CLEAR REGISTER             @
> +         ICM   15,7,49(1)               LOAD GET ROUTINE ADDR      @
> +         BALR  14,15                    LINK TO GET ROUTINE
>           BSM   0,R9                    SWITCH AMODE BACK TO 31 BIT
>  DOGETE   EQU   *
> 
> 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.
> 

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