Subroutine: DEPUTY Purpose: Start a task which temporarily assumes the role of the calling task. Category: SYSTEM, USER-INTERFACE File: srvreq.c Author: J.P. Terlouw Use: CALL DEPUTY( STRING, Input character IRC ) Output integer STRING character string containing a servant task name. IRC return code containing information about the fate of the command. 1 successful execution -6 task not present -7 max number of tasks already active User-initiated aborts, crashes and fatal calls to ERROR cause a non event-driven task to exit. In the latter case the caller never regains control. Event-driven tasks always regain control. For these the following codes are also defined: -8 fatal error -9 user abort -10 crash -11 aborted due to no-default user input request Description: After a call to DEPUTY the calling task is suspended until the called task is finished. The same set of keywords applies to all tasks spawned from successive calls to deputy. The keyword table is common to all tasks in the chain. Both calling and called tasks can obtain information from the keyword list using USRINP and provide and/or modify keywords using CANCEL or WKEY. Limitation: Keywords cannot be specified in the call to DEPUTY. Example: CALL DEPUTY('KIJK',IRC) Related docs: WKEY.DC2 SUBST.DC2 XEQ.DC2 Updates: Aug 10, 1981: JPT, Original document. Feb 15, 1990: JPT, Portable version, rewritten in ANSI C. Jun 10, 1998: JPT, Added event-driven task codes.