!*** MODULE $CAPDEF *** !DEC$ OPTIONS/ALIGN=(RECORDS=PACKED,COMMONS=PACKED)/NOWARN ! + PARAMETER CAP$K_ALL_USER = -1 PARAMETER CAP$K_ALL_USER_ADD = -1 PARAMETER CAP$K_ALL_CPU_ADD = -1 PARAMETER CAP$K_ALL_ACTIVE_CPUS = -1 PARAMETER CAP$K_ALL_USER_REMOVE = '00000000'X PARAMETER CAP$K_ALL_CPU_REMOVE = '00000000'X PARAMETER CAP$K_GET_FREE_CAP = '00000000'X ! ! Constants defining user capability numbers ! PARAMETER CAP$M_USER1 = '00000001'X PARAMETER CAP$M_USER2 = '00000002'X PARAMETER CAP$M_USER3 = '00000004'X PARAMETER CAP$M_USER4 = '00000008'X PARAMETER CAP$M_USER5 = '00000010'X PARAMETER CAP$M_USER6 = '00000020'X PARAMETER CAP$M_USER7 = '00000040'X PARAMETER CAP$M_USER8 = '00000080'X PARAMETER CAP$M_USER9 = '00000100'X PARAMETER CAP$M_USER10 = '00000200'X PARAMETER CAP$M_USER11 = '00000400'X PARAMETER CAP$M_USER12 = '00000800'X PARAMETER CAP$M_USER13 = '00001000'X PARAMETER CAP$M_USER14 = '00002000'X PARAMETER CAP$M_USER15 = '00004000'X PARAMETER CAP$M_USER16 = '00008000'X STRUCTURE /CAP/ UNION MAP INTEGER*4 CAP$L_CAP END MAP MAP PARAMETER CAP$S_USER1 = 1 PARAMETER CAP$V_USER1 = 0 PARAMETER CAP$S_USER2 = 1 PARAMETER CAP$V_USER2 = 1 PARAMETER CAP$S_USER3 = 1 PARAMETER CAP$V_USER3 = 2 PARAMETER CAP$S_USER4 = 1 PARAMETER CAP$V_USER4 = 3 PARAMETER CAP$S_USER5 = 1 PARAMETER CAP$V_USER5 = 4 PARAMETER CAP$S_USER6 = 1 PARAMETER CAP$V_USER6 = 5 PARAMETER CAP$S_USER7 = 1 PARAMETER CAP$V_USER7 = 6 PARAMETER CAP$S_USER8 = 1 PARAMETER CAP$V_USER8 = 7 PARAMETER CAP$S_USER9 = 1 PARAMETER CAP$V_USER9 = 8 PARAMETER CAP$S_USER10 = 1 PARAMETER CAP$V_USER10 = 9 PARAMETER CAP$S_USER11 = 1 PARAMETER CAP$V_USER11 = 10 PARAMETER CAP$S_USER12 = 1 PARAMETER CAP$V_USER12 = 11 PARAMETER CAP$S_USER13 = 1 PARAMETER CAP$V_USER13 = 12 PARAMETER CAP$S_USER14 = 1 PARAMETER CAP$V_USER14 = 13 PARAMETER CAP$S_USER15 = 1 PARAMETER CAP$V_USER15 = 14 PARAMETER CAP$S_USER16 = 1 PARAMETER CAP$V_USER16 = 15 BYTE %FILL (2) END MAP END UNION END STRUCTURE ! CAP ! ! Constants defining user CPU numbers ! PARAMETER CAP$M_CPU0 = '00000001'X PARAMETER CAP$M_CPU1 = '00000002'X PARAMETER CAP$M_CPU2 = '00000004'X PARAMETER CAP$M_CPU3 = '00000008'X PARAMETER CAP$M_CPU4 = '00000010'X PARAMETER CAP$M_CPU5 = '00000020'X PARAMETER CAP$M_CPU6 = '00000040'X PARAMETER CAP$M_CPU7 = '00000080'X PARAMETER CAP$M_CPU8 = '00000100'X PARAMETER CAP$M_CPU9 = '00000200'X PARAMETER CAP$M_CPU10 = '00000400'X PARAMETER CAP$M_CPU11 = '00000800'X PARAMETER CAP$M_CPU12 = '00001000'X PARAMETER CAP$M_CPU13 = '00002000'X PARAMETER CAP$M_CPU14 = '00004000'X PARAMETER CAP$M_CPU15 = '00008000'X PARAMETER CAP$M_CPU16 = '00010000'X PARAMETER CAP$M_CPU17 = '00020000'X PARAMETER CAP$M_CPU18 = '00040000'X PARAMETER CAP$M_CPU19 = '00080000'X PARAMETER CAP$M_CPU20 = '00100000'X PARAMETER CAP$M_CPU21 = '00200000'X PARAMETER CAP$M_CPU22 = '00400000'X PARAMETER CAP$M_CPU23 = '00800000'X PARAMETER CAP$M_CPU24 = '01000000'X PARAMETER CAP$M_CPU25 = '02000000'X PARAMETER CAP$M_CPU26 = '04000000'X PARAMETER CAP$M_CPU27 = '08000000'X PARAMETER CAP$M_CPU28 = '10000000'X PARAMETER CAP$M_CPU29 = '20000000'X PARAMETER CAP$M_CPU30 = '40000000'X PARAMETER CAP$M_CPU31 = '80000000'X STRUCTURE /CAP_CPUS/ UNION MAP INTEGER*4 CAP$L_CAP_CPUS END MAP MAP PARAMETER CAP$S_CPU0 = 1 PARAMETER CAP$V_CPU0 = 0 PARAMETER CAP$S_CPU1 = 1 PARAMETER CAP$V_CPU1 = 1 PARAMETER CAP$S_CPU2 = 1 PARAMETER CAP$V_CPU2 = 2 PARAMETER CAP$S_CPU3 = 1 PARAMETER CAP$V_CPU3 = 3 PARAMETER CAP$S_CPU4 = 1 PARAMETER CAP$V_CPU4 = 4 PARAMETER CAP$S_CPU5 = 1 PARAMETER CAP$V_CPU5 = 5 PARAMETER CAP$S_CPU6 = 1 PARAMETER CAP$V_CPU6 = 6 PARAMETER CAP$S_CPU7 = 1 PARAMETER CAP$V_CPU7 = 7 PARAMETER CAP$S_CPU8 = 1 PARAMETER CAP$V_CPU8 = 8 PARAMETER CAP$S_CPU9 = 1 PARAMETER CAP$V_CPU9 = 9 PARAMETER CAP$S_CPU10 = 1 PARAMETER CAP$V_CPU10 = 10 PARAMETER CAP$S_CPU11 = 1 PARAMETER CAP$V_CPU11 = 11 PARAMETER CAP$S_CPU12 = 1 PARAMETER CAP$V_CPU12 = 12 PARAMETER CAP$S_CPU13 = 1 PARAMETER CAP$V_CPU13 = 13 PARAMETER CAP$S_CPU14 = 1 PARAMETER CAP$V_CPU14 = 14 PARAMETER CAP$S_CPU15 = 1 PARAMETER CAP$V_CPU15 = 15 PARAMETER CAP$S_CPU16 = 1 PARAMETER CAP$V_CPU16 = 16 PARAMETER CAP$S_CPU17 = 1 PARAMETER CAP$V_CPU17 = 17 PARAMETER CAP$S_CPU18 = 1 PARAMETER CAP$V_CPU18 = 18 PARAMETER CAP$S_CPU19 = 1 PARAMETER CAP$V_CPU19 = 19 PARAMETER CAP$S_CPU20 = 1 PARAMETER CAP$V_CPU20 = 20 PARAMETER CAP$S_CPU21 = 1 PARAMETER CAP$V_CPU21 = 21 PARAMETER CAP$S_CPU22 = 1 PARAMETER CAP$V_CPU22 = 22 PARAMETER CAP$S_CPU23 = 1 PARAMETER CAP$V_CPU23 = 23 PARAMETER CAP$S_CPU24 = 1 PARAMETER CAP$V_CPU24 = 24 PARAMETER CAP$S_CPU25 = 1 PARAMETER CAP$V_CPU25 = 25 PARAMETER CAP$S_CPU26 = 1 PARAMETER CAP$V_CPU26 = 26 PARAMETER CAP$S_CPU27 = 1 PARAMETER CAP$V_CPU27 = 27 PARAMETER CAP$S_CPU28 = 1 PARAMETER CAP$V_CPU28 = 28 PARAMETER CAP$S_CPU29 = 1 PARAMETER CAP$V_CPU29 = 29 PARAMETER CAP$S_CPU30 = 1 PARAMETER CAP$V_CPU30 = 30 PARAMETER CAP$S_CPU31 = 1 PARAMETER CAP$V_CPU31 = 31 BYTE %FILL (4) END MAP END UNION END STRUCTURE ! CAP_CPUS PARAMETER CAP$M_IMPLICIT_AFFINITY_CLEAR = '00000001'X PARAMETER CAP$M_IMPLICIT_AFFINITY_SET = '00000002'X PARAMETER CAP$M_IMPLICIT_DEFAULT_ONLY = '00000004'X PARAMETER CAP$M_IMPLICIT_ALL_THREADS = '00000008'X STRUCTURE /IMP_FLAGS/ PARAMETER CAP$S_IMPLICIT_AFFINITY_CLEAR = 1 PARAMETER CAP$V_IMPLICIT_AFFINITY_CLEAR = 0 ! Shut implicit affinity off PARAMETER CAP$S_IMPLICIT_AFFINITY_SET = 1 PARAMETER CAP$V_IMPLICIT_AFFINITY_SET = 1 ! Turn implicit affinity on PARAMETER CAP$S_IMPLICIT_DEFAULT_ONLY = 1 PARAMETER CAP$V_IMPLICIT_DEFAULT_ONLY = 2 ! Only system default changed PARAMETER CAP$S_IMPLICIT_ALL_THREADS = 1 PARAMETER CAP$V_IMPLICIT_ALL_THREADS = 3 ! Change affects all kernel threads in process BYTE %FILL (1) END STRUCTURE ! IMP_FLAGS ! ! Note: the following flags structure must mimic that of [LIB]CPBDEF.SDL ! PARAMETER CAP$M_FLAG_CHECK_CPU = '00000001'X PARAMETER CAP$M_FLAG_PERMANENT = '00000002'X PARAMETER CAP$M_FLAG_CHECK_CPU_ACTIVE = '00000008'X PARAMETER CAP$M_FLAG_DEFAULT_ONLY = '00000010'X PARAMETER CAP$M_ALL_THREADS = '00000020'X PARAMETER CAP$M_PURGE_WS_IF_NEW_RAD = '00000040'X STRUCTURE /CAP_FLAGS/ PARAMETER CAP$S_FLAG_CHECK_CPU = 1 PARAMETER CAP$V_FLAG_CHECK_CPU = 0 ! Check that process can run PARAMETER CAP$S_FLAG_PERMANENT = 1 PARAMETER CAP$V_FLAG_PERMANENT = 1 ! Affect permanent mask PARAMETER CAP$S_FLAG_CHECK_CPU_ACTIVE = 1 PARAMETER CAP$V_FLAG_CHECK_CPU_ACTIVE = 3 ! Check all selected CPUs active PARAMETER CAP$S_FLAG_DEFAULT_ONLY = 1 PARAMETER CAP$V_FLAG_DEFAULT_ONLY = 4 ! Only system default changed PARAMETER CAP$S_ALL_THREADS = 1 PARAMETER CAP$V_ALL_THREADS = 5 ! Change affects all kernel threads in process PARAMETER CAP$S_PURGE_WS_IF_NEW_RAD = 1 PARAMETER CAP$V_PURGE_WS_IF_NEW_RAD = 6 ! If the home RAD was changed, purge the working BYTE %FILL (1) END STRUCTURE ! CAP_FLAGS !DEC$ END OPTIONS