Using the EXEC interface modules for AMODE(64) applications

For non- Language Environment® AMODE(64) assembler language programs, the CALL statements that the language translator generates invoke EXEC interface modules that provide communication between your code and the CICS® EXEC interface program, DFHEIG.

A language translator reads your source program and creates a new one. Normal language statements remain unchanged, but CICS commands are translated into CALL statements of the form required by the language in which you are coding. The calls invoke CICS-provided EXEC interface modules or stubs ; that is, function-dependent sections of code used by the CICS high-level programming interface. These stubs, which are provided in the SDFHLOAD library, must be link-edited with your application program. These stubs are invoked during execution of EXEC CICS commands.

The following stub programs are provided to transfer control from an AMODE(64) application program to CICS . These stubs use CICS internal control blocks to locate the required CICS code.
  • DFHEAG0 (prolog and epilog stub).

    When the DFHEIENT macro calls this stub, it transfers control to the AMODE(64) PROLOG program.

    When the DFHEIRET macro calls this stub, it transfers control to the AMODE(64) EPILOG program.

  • DFHEAG (command stub).

    When the DFHECALL macro calls this stub, it transfers control to the AMODE(64) initial command processor. DFHEG1 is an alias of DFHEAG and the DFHECALL macro actually calls the alias, DFHEG1.

You must link-edit the DFHEAG and DFHEAG0 stubs with the AMODE(64) application program. Use the following binder statements:


ORDER DFHEAG
INCLUDE SYSLIB(DFHEAG)
ENTRY
program_name
NAME
program_name
(R)

program_name is the name of the AMODE(64) application.

This is similar to the way that stubs DFHEAI and DFHEAI0 are link-edited with AMODE(24) and AMODE(31) assembler language application programs.