{$if not def EXEC_TASKS_H ***** EXEC/TASKS.H *****} CONST EXEC_TASKS_H=0; {$if not def EXEC_NODES_H;incl"exec/nodes.h";endif} {$if not def EXEC_LISTS_H;incl"exec/lists.h";endif} TYPE p_Task=^Task; Task=Record tc_Node:Node; tc_Flags,tc_State:Byte; tc_IDNestCnt,tc_TDNestCnt:Short; tc_SigAlloc,tc_SigWait,tc_SigRecvd,tc_SigExcept:Long; tc_TrapAlloc,tc_TrapAble:Word; tc_ExceptData,tc_ExceptCode,tc_TrapData:Ptr; tc_TrapCode,tc_SPReg,tc_SPLower,tc_SPUpper:Ptr; tc_Switch,tc_Launch:Ptr; { VOID } tc_MemEntry:List; tc_UserData:Ptr; End; CONST TB_PROCTIME=0; TB_STACKCHK=4; TB_EXCEPT=5; TB_SWITCH=6; TB_LAUNCH=7; TF_PROCTIME=$1; TF_STACKCHK=$10; TF_EXCEPT=$20; TF_SWITCH=$40; TF_LAUNCH=$80; TS_INVALID=0; TS_ADDED=1; TS_RUN=2; TS_READY=3; TS_WAIT=4; TS_EXCEPT=5; TS_REMOVED=6; SIGB_ABORT=0; SIGB_CHILD=1; SIGB_BLIT=4; SIGB_SINGLE=4; SIGB_DOS=8; SIGF_ABORT=$1; SIGF_CHILD=$2; SIGF_BLIT=$10; SIGF_SINGLE=$10; SIGF_DOS=$100; {$endif} {$if not def EXEC_TASKS_LIB} CONST EXEC_TASKS_LIB=0; Library SysBase: -120:Procedure Disable; -126:Procedure Enable; -132:Procedure Forbid; -138:Procedure Permit; -282:Procedure AddTask(a1:p_Task; a2,a3:Long); -288:Procedure RemTask(a1:p_Task); -294:Function Findtask(a1:Str):p_Task; -300:Function SetTaskPri(a1:p_Task; d0:Short):Short; -306:Function SetSignals(d0,d1:Long):Long; -318:Function _Wait(d0:Long):Long; -324:Procedure Signal(a1:p_Task; d0:Long); -330:Function AllocSignal(d0:integer):integer; -336:Procedure FreeSihnal(d0:integer) End; {$endif}