
{ TYPE deck MTT$SCB_HARDWARE_STATUS

{ WARNING!!!!!
{ If the following TYPE (subrange) is modified, then the TYPE
{ mtt$scb_trick_variant_record MUST be changed.  See the comments
{ above the variant record definition further on.

  TYPE
    mtt$scb_hardware_status_options = (mtc$scb_short_warning_step,
          mtc$scb_hardware_failure_step, mtc$scb_long_warning_idle,
          mtc$scb_hardware_failure_idle, mtc$scb_170_status);

  TYPE
    mtt$scb_hardware_status_actions = (mtc$scb_hsa_set, mtc$scb_hsa_clear);

  TYPE
    mtt$scb_hardware_status_count = 0 .. mtc$scb_max_hardware_status,

    mtt$scb_hardware_status = ARRAY [mtt$scb_hardware_status_options] OF
          mtt$scb_hardware_status_count;

  TYPE
    mtt$scb_hardware_status_msg = RECORD
      message_read: boolean,
      message: dpt$top_line_message,
    RECEND,

    mtt$scb_hardware_status_msgs = ARRAY [mtt$scb_hardware_status_options]
          OF mtt$scb_hardware_status_msg;

{ WARNING!!!!!
{ The following record MUST be modified if the TYPE mtt$scb_hardware_status
{ changes.  The ERRORS_PRESENT variant must be the same length as the
{ HARDWARE_STATUS variant; i.e. there must be as many bytes in the
{ ERRORS_PRESENT field as there are ordinals in the TYPE
{ mtt$scb_hardware_status_options (above).

  TYPE
    mtt$scb_trick_variant_record = RECORD
      CASE 0..1 OF
      = 0 =
        hardware_status: mtt$scb_hardware_status,
      = 1 =
        errors_present: 0 .. 0ffffffffff(16),
      CASEND,
    RECEND;

*copyc dpt$top_line_message
*copyc mtc$scb_max_hardware_status
