<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
