User-written modules can be called at the same points during a CA Culprit run as the CA-supplied modules discussed in this manual. These points occur during:
Input file processing (the extract phase), called from the UM option of the INPUT parameter:
INPUT 80 F 400 UM(module)
Input record processing (the extract phase), called from type 7 logic:
017010 CALLmodule
Output processing (the output phase), called from the OUTPUT parameter:
01OUT UM(module)
Modules are treated as subroutines by the main CA Culprit processing logic, as follows:
The module executes at a specified exit point.
CA Culprit passes data, in the form of an argument list, to the module.
Control is returned to the CA Culprit program when the module finishes executing.
Modules must be written in a programming language that observes standard linkage conventions, such as COBOL, Assembler, PL/I or FORTRAN.
All modules must be compiled and link edited.
If a module already exists in a load (core-image) library, no new link is required. You can do one of the following:
Concatenate the library containing the module with the CA Culprit load (core-image) library.
Copy the library member into the CA Culprit load (core-image) library.
When procedure modules are link edited with names in the CULLUSnn format, care must be taken that the name does not duplicate a CA-supplied module.