*copyc osd$default_pragmats

MODULE pum$backup_label_type_commands;

?? PUSH (LISTEXT := ON) ??
*copyc clp$evaluate_parameters
*copyc osp$set_status_condition
*copyc clt$value
*copyc cle$ecc_parameter_list
*copyc pue$error_condition_codes
*copyc ost$status
?? POP ??
?? EJECT ??


  PROCEDURE [XDCL, #GATE] pup$display_backup_flt_cmd (
        parameter_list: clt$parameter_list;
    VAR status: ost$status);

{ PROCEDURE (osm$disblt) display_backup_label_type, disblt (
{   output, o: file = $output
{   status)

?? PUSH (LISTEXT := ON) ??
?? FMT (FORMAT := OFF) ??

  VAR
    pdt: [STATIC, READ, cls$declaration_section] record
      header: clt$pdt_header,
      names: array [1 .. 3] of clt$pdt_parameter_name,
      parameters: array [1 .. 2] of clt$pdt_parameter,
      type1: record
        header: clt$type_specification_header,
        default_value: string (7),
      recend,
      type2: record
        header: clt$type_specification_header,
      recend,
    recend := [
    [1,
    [88, 11, 18, 13, 21, 35, 955],
    clc$command, 3, 2, 0, 0, 0, 0, 2, 'OSM$DISBLT'], [
    ['O                              ',clc$abbreviation_entry, 1],
    ['OUTPUT                         ',clc$nominal_entry, 1],
    ['STATUS                         ',clc$nominal_entry, 2]],
    [
{ PARAMETER 1
    [2, clc$normal_usage_entry, clc$non_secure_parameter,
    $clt$parameter_spec_methods[clc$specify_by_name, clc$specify_positionally],
    clc$pass_by_value, clc$immediate_evaluation, clc$standard_parameter_checking, 3,
  clc$optional_default_parameter, 0, 7],
{ PARAMETER 2
    [3, clc$normal_usage_entry, clc$non_secure_parameter,
    $clt$parameter_spec_methods[clc$specify_by_name],
    clc$pass_by_reference, clc$immediate_evaluation, clc$standard_parameter_checking, 3,
  clc$optional_parameter, 0, 0]],
{ PARAMETER 1
    [[1, 0, clc$file_type],
    '$output'],
{ PARAMETER 2
    [[1, 0, clc$status_type]]];

?? FMT (FORMAT := ON) ??
?? POP ??

    CONST
      p$output = 1,
      p$status = 2;

    VAR
      pvt: array [1 .. 2] of clt$parameter_value;

    status.normal := TRUE;

    clp$evaluate_parameters (parameter_list, #SEQ (pdt), NIL, ^pvt, status);
    IF status.normal THEN
      osp$set_status_condition (pue$backup_label_type_commands, status);
    IFEND;

  PROCEND pup$display_backup_flt_cmd;
?? EJECT ??

  PROCEDURE [XDCL] pup$change_backup_flt_cmd (
        parameter_list: clt$parameter_list;
    VAR status: ost$status);

{   PROCEDURE (osm$chablt) change_backup_label_type, chablt (
{     file_label_type, flt: key
{         (labeled, labelled, l)
{         (unlabeled, unlabelled, u)
{       keyend = $required
{     status)

?? PUSH (LISTEXT := ON) ??
?? FMT (FORMAT := OFF) ??

  VAR
    pdt: [STATIC, READ, cls$declaration_section] record
      header: clt$pdt_header,
      names: array [1 .. 3] of clt$pdt_parameter_name,
      parameters: array [1 .. 2] of clt$pdt_parameter,
      type1: record
        header: clt$type_specification_header,
        qualifier: clt$keyword_type_qualifier,
        keyword_specs: array [1 .. 6] of clt$keyword_specification,
      recend,
      type2: record
        header: clt$type_specification_header,
      recend,
    recend := [
    [1,
    [89, 9, 25, 14, 36, 36, 768],
    clc$command, 3, 2, 1, 0, 0, 0, 2, 'OSM$CHABLT'], [
    ['FILE_LABEL_TYPE                ',clc$nominal_entry, 1],
    ['FLT                            ',clc$abbreviation_entry, 1],
    ['STATUS                         ',clc$nominal_entry, 2]],
    [
{ PARAMETER 1
    [1, clc$normal_usage_entry, clc$non_secure_parameter,
    $clt$parameter_spec_methods[clc$specify_by_name, clc$specify_positionally],
    clc$pass_by_value, clc$immediate_evaluation,
  clc$standard_parameter_checking, 229, clc$required_parameter, 0, 0],
{ PARAMETER 2
    [3, clc$normal_usage_entry, clc$non_secure_parameter,
    $clt$parameter_spec_methods[clc$specify_by_name],
    clc$pass_by_reference, clc$immediate_evaluation,
  clc$standard_parameter_checking, 3, clc$optional_parameter, 0, 0]],
{ PARAMETER 1
    [[1, 0, clc$keyword_type], [6], [
    ['L                              ', clc$abbreviation_entry,
  clc$normal_usage_entry, 1],
    ['LABELED                        ', clc$nominal_entry,
  clc$normal_usage_entry, 1],
    ['LABELLED                       ', clc$alias_entry,
  clc$normal_usage_entry, 1],
    ['U                              ', clc$abbreviation_entry,
  clc$normal_usage_entry, 2],
    ['UNLABELED                      ', clc$nominal_entry,
  clc$normal_usage_entry, 2],
    ['UNLABELLED                     ', clc$alias_entry,
  clc$normal_usage_entry, 2]]
    ],
{ PARAMETER 2
    [[1, 0, clc$status_type]]];

?? FMT (FORMAT := ON) ??
?? POP ??

    CONST
      p$file_label_type = 1,
      p$status = 2;

    VAR
      pvt: array [1 .. 2] of clt$parameter_value;

    status.normal := TRUE;

    clp$evaluate_parameters (parameter_list, #SEQ (pdt), NIL, ^pvt, status);
    IF status.normal THEN
      osp$set_status_condition (pue$backup_label_type_commands, status);
    IFEND;

  PROCEND pup$change_backup_flt_cmd;

MODEND pum$backup_label_type_commands;
