<snip>
I think i am right in saying that RMODE(ANY) sees the program with
RMODE(24) and
its ok to execute and the I/O buffers are they 24bit or 31....
</snip>

It seems unlikely that the calling program pays any attention to the RMODE 
of anything that it calls.

It is up to the caller to meet the requirements of the callee. If the 
callee is AMODE 24, then it would be expected that any data passed from 
the caller to the callee be below 16M. That includes save area and 
parameter list.

Does COBOL actually have any support for AMODE-switching calls?

If this was assembler, and you were an AMODE 31 program and you LINKed to 
some other program via LINKX, you would need to know the AMODE of that 
program in order to accommodate its needs. This is a reason that LINKing 
to an AMODE 64 program is not accepted unless you have told LINKX 
AMODE64OK=YES which to some extent is intended to let you acknowledge that 
you have provided a 144-byte save area (or whatever the potentially AMODE 
64 routine might need in order to save registers).

Peter Relson
z/OS Core Technology Design


----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to