In order for CICS® Execution Diagnostic Facility (EDF) to be able to display the program's working storage (DSA stack) and static storage, CICS makes the determine working storage address call to the Language Environment-CICS interface module. Through the program register save area (pgmrsa) argument passed by CICS, Language Environment examines the program entry point (R15 saved in the caller's DSA) to determine if the program is a Language Environment-enabled program. If so, the member ID of the program's language is remembered. Otherwise, the member ID is determined through the lang argument passed by CICS.
In either case (Language Environment-enabled or not), the member-specific interface routine associated with the member ID is called to provide the working storage address (most probably same as the pgmrsa) and the static storage address and their length. This is because the working storage address could potentially be different than the DSA (as in COBOL) and the static storage could potentially be separate from the program load module.
Call CEECCICS (60, rsncode, syseib, preasa, ptoken, ttoken, rtoken, lang, pgmrsa, wsa, wsl, ssa, ssl, pgmep) Retcode (rc)
DCL 1 LANG, /* Language of program issuing */
/* HANDLE CONDITION or AID cmd */
2 ASSEMBLER BIT(1), /* LANG=ASSEMBLER */
2 C370 BIT(1), /* LANG=C/370 */
2 COBOL BIT(1), /* LANG=COBOL II */
2 PLI BIT(1), /* LANG=PL/I */
2 RPG BIT(1), /* LANG=RPG */
2 NOTAPPLIC BIT(1), /* LANG=NOTAPPLIC or blank */
3 * BIT(26), /* Reserved */