{
{   The purpose of this request is to initialize a pointer to the virtual}
{ memory segment which was assigned by the system when the file}
{ was opened.}
{   It is necessary to obtain a pointer to the segment so that the file}
{ can be accessed as memory using machine instructions.}
{   As a convenience this request returns a pointer of type cell, adaptable}
{ heap or adaptable sequence.}
{}
{   The content of the pointer variable is initialized as follows:}
{
{      amc$cell_pointer:}
{        .The byte offset portion of the PVA is set to the}
{         current_byte_address of the file.}
{}
{      amc$heap_pointer - pointer to adaptable heap:}
{        .The byte offset portion of the heap_pointer is set to the}
{         address of the first byte in the segment.}
{        .If the file is null in length, the LIMIT portion of the}
{         heap_pointer is set to the file_limit. The heap must be RESET}
{         by the CYBIL application.}
{        .If the file contains data the LIMIT portion of the heap_pointer}
{         is determined as follows:}
{           .If the file has an access_mode which includes pfc$read,}
{            pfc$modify or pfc$shorten but not pfc$append, the LIMIT}
{            is set to the eoi_byte_address of the file.}
{           .If the file has an access_mode which includes pfc$append,}
{            the LIMIT is set to the file_limit.}
{}
{      amc$sequence_pointer - pointer to adaptable sequence:}
{        .The byte offset portion of the sequence_pointer is set to the}
{         address of the first byte in the segment.}
{        .The NEXT portion of the sequence_pointer is set to the}
{         current_byte_address.}
{        .If the file is null in length, the LIMIT portion of the}
{         sequence_pointer is set to file_limit.}
{        .If the file contains data, the LIMIT portion of the}
{         sequence_pointer is determined as follows:}
{           .If the file has an access_mode which includes pfc$read,}
{            pfc$modify or pfc$shorten but not pfc$append, the LIMIT}
{            is set to the eoi_byte_address of the file.}
{           .If the file has an access_mode which includes pfc$append,}
{            the LIMIT is set to the file_limit.}
{
{   This request does not change the contents of the segment access file. The}
{ user must follow the language conventions surrounding usage of heaps and}
{ sequences.}
{
{       BAP$GET_SEGMENT_POINTER (FILE_IDENTIFIER, CALL_BLOCK,
{        FAP_CONTROL_INFORMATION, FAP_LAYER_NUMBER, STATUS)
{
{ FILE_IDENTIFIER: (input) This parameter specifies the file access
{       identifier established when the file was opened.
{
{ CALL_BLOCK: (input) This paramter specifies the call block
{        used by this request.
{
{ FAP_CONTROL_INFORMATION: (input) This paramter specifies control
{        information necessary for orderly transfer of control from
{        the fap the the access method and from one access method
{        layer to another.
{
{ FAP_LAYER_NUMBER: (input) This parameter specifies the index into the
{        fap_control_information for this layer.
{
{ STATUS: (output) This parameter specifies the request status. THis is
{        the application's status variable.
{
