
{ Define 180 job and task cpu priorities. For purposes of sharing the CPU in
{ dual state, the equivalent 170 priorities are also shown in comments.

  TYPE
    jmt$dispatching_priority = 0 .. jmc$max_dispatching_priority,
    jmt$user_dispatching_priority = jmc$priority_p1 .. jmc$priority_p8,
    jmt$system_dispatching_priority = jmc$priority_p10 .. jmc$priority_p14,
    jmt$dispatching_priority_bias = -jmc$max_dispatching_priority ..
          jmc$max_dispatching_priority;



{  Jmc$dp_conversion is used to change a dispatching priority to a bit number
{  that is used in dispatching priority sets.  Because task switch uses
{  #unchecked_conversion to select elements from the dispatching control sets
{  rather than the CYBIL IN set manipulator, the bit stored in the sets has to
{  be a "converted" dispatching priority.  The leftmost bit in the set
{  represents the highest dispatching priority.  The following table relates
{  priorities and bits:
{------------------------------------------------------------------------------
{    Dispatching                       Dispatching      Conversion
{     Priority        Dispatching       Priority         Function
{       Name           Priority           Bit            Returns
{    -----------      -----------      -----------      ----------
{        P1                2               14                2
{        P2                3               13                3
{        P3                4               12                4
{        P4                5               11                5
{        P5                6               10                6
{        P6                7                9                7
{        P7                8                8                8
{        P8                9                7                9
{        P9               10                6               10
{        P10              11                5               11
{        P11              12                4               12
{        P12              13                3               13
{        P13              14                2               14
{        P14              15                1               15
{------------------------------------------------------------------------------

  CONST

    jmc$dp_conversion = 16,

    jmc$max_dispatching_priority = 15,
    jmc$min_dispatching_priority = 2, { Minimum dispatchable priority
    jmc$null_dispatching_priority = 0;

{ The following constants define the range of values permitted on SCL
{ parameter definitions. The values are specified internally as one number
{ greater than the external values.  The following internal range of 2 .. 11
{ is specified as 1 .. 10 externally.

  CONST
    jmc$lowest_dispatching_priority = 2,
    jmc$highest_dispatch_priority = 11;

  CONST
    jmc$priority_p1 = 2, { 170 - 10 }
    jmc$priority_p2 = 3, { 170 - 10 }
    jmc$priority_p3 = 4, { 170 - 20 }
    jmc$priority_p4 = 5, { 170 - 20 }
    jmc$priority_p5 = 6, { 170 - 30 }
    jmc$priority_p6 = 7, { 170 - 30 }
    jmc$priority_p7 = 8, { 170 - 40 }
    jmc$priority_p8 = 9, { 170 - 40 }
    jmc$priority_p9 = 10, { 170 - 50 }
    jmc$priority_p10 = 11, { 170 - 50 }
    jmc$priority_p11 = 12, { 170 - 60 }
    jmc$priority_p12 = 13, { 170 - 60 }
    jmc$priority_p13 = 14, { 170 - 70 }
    jmc$priority_p14 = 15; { 170 - 70 }


