Previous Topic: Compiler DirectivesNext Topic: User ID Routine


User-defined Functions and ADDRESS Environments

CA-GSS provides an assembler language interface so that you can add your own functions and ADDRESS environments. Both interfaces are compatible with TSO/E REXX, and routines that are used in that environment are transportable to the CA‑GSS service.

Under CA‑GSS, functions and ADDRESS environments have few differences. The most obvious difference is in the way you invoke the routine. Other differences include:

Functions and ADDRESS environments can read and write stack records and access REXX variables. Under CA‑GSS, functions and ADDRESS environments can execute under a subtask. Functions can also execute synchronously, provided they do nothing that would cause a wait (for example, performing I/O).

When functions and ADDRESS environments are called, Register 0 contains the address of the environment block. The address of the External Routines Table is in this block and is mapped by the IBM IRXEXTE macro. The External Routines Table contains the addresses of the service routines that CA‑GSS supports.