Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

cdisco - Deactivate a contingency routine

&pagelevel(4)&pagelevel



Definition

#include <cont.h>

void cdisco(struct enacop *enacopar);

cdisco deactivates a contingency routine (TU or P1) defined with cenaco.

For detailed information on contingency routines, refer to chapter “Contingency and STXIT routines” and the "Executive Macros" manual.

Parameter

struct enacop *enacopar

Pointer to a structure which is defined in <cont.h> as follows:

struct enacop
{
  char resrv1 [7];                 /* reserved for int. use */
  char coname [54];                /* name of cont. routine */
  char resrv2 [15];                /* reserved for int. use */
  char level;                      /* priority of cont.rout. */
  int  (*econt)(struct contp);     /* start adr of cont.rout. */
  int  comess;                     /* contingency message */
  int coidret;                     /* contingency identifier */
  errcod secind;                   /* secondary indicator */
  char resrv3 [2];                 /* reserved for int. use */
  errcod rcode1;                   /* return code */
};
#define errcod     char
#define _norm      0      /* normterm */
#define _abnorm    4      /* abnormend */
#define _enabled   4      /* codefenabled */
#define _preven    12     /* coprevenabled */
#define _parerr    16     /* coparerror */
#define _maxexc    24     /* comaxexceed */

cdisco evaluates only the coidret entry (identifier of the contingency process) in the structure.

Entries supplied by cdisco:

secind

"Secondary Indicator", as stored in the most significant byte of register 15 (values X’10’ or X’16’) after execution of the DISCO macro.

rcode1

"Return Code", as stored in the least significant byte of register 15 (values 0 or 4) after execution of the DISCO macro.

Note

The Assembler macro DISCO locks the contingency routine only for future event requests.
However, if an event that was requested earlier occurs after DISCO, the contingency routine will be called even after DISCO.
Note that calls to the contingency routine econt are suppressed even for events that were requested earlier.

See also

cenaco