z/OS MVS Programming: Callable Services for High-Level Languages
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Example

z/OS MVS Programming: Callable Services for High-Level Languages
SA23-1377-02

The following example, coded in C/370™ uses CSRL16J to transfer control to a C/370 program. The target routine executes in the mode and with the register contents specified by the calling program in the L16J parameter list.

This example performs the following operations:
  • Fills in L16J parameter list with PSW and execution mode data.
  • Calls an assembler routine to obtain the current register contents of registers 0 through 13 and copies them to the L16J parameter list.
  • Defines the contents of registers 14 and 15 for the target routine.
  • Issues setjmp to allow return from the target routine.
  • Invokes the C/370 function L16JPrg through CSRL16J.
  • CSRL16J issues longjmp to return to caller and complete processing.

To use this example, you must also use the assembler program following the C/370 example.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014