
  PROCEDURE [INLINE] amp$terminate_file
    (    file_identifier: amt$file_identifier;
         file_instance: bat$task_file_entry);

?? PUSH (LISTEXT := ON) ??
?? RIGHT := 110 ??

    VAR
      dummy_area: cell,
      ignore_byte_address: amt$file_byte_address,
      ignore_status: ost$status;

{For: AMC$SEQUENTIAL, AMC$BYTE_ADDRESSABLE

    IF file_instance.instance_attributes.static_label.file_organization <= amc$byte_addressable THEN
      IF (file_instance.fap_control_information.fap_array <> NIL)
{   } AND (file_instance.private_read_information = NIL)
{   } AND (file_instance.global_file_information^.positioning_info.record_info.current_byte_address =
            file_instance.global_file_information^.eoi_byte_address)
{   } AND (file_instance.global_file_information^.positioning_info.record_info.file_position = amc$mid_record)
{   } AND (file_instance.global_file_information^.last_access_operation = amc$put_partial_req) THEN

{ TERMINATE THE FILE. }

        amp$put_partial (file_identifier, ^dummy_area, 0, ignore_byte_address, amc$terminate, ignore_status);
      IFEND;
    IFEND;

  PROCEND amp$terminate_file;

*copyc amp$put_partial
?? POP ??
