
                               					20-May-1983 10:31:17	VAX-11 FORTRAN V3.2-37              Page   1
								 4-Apr-1983 11:02:40	CAD$VOLSET:[GARY.STATS.SOURCE]COMPRESS.FOR;2

0001    !
0002    !			  COPYRIGHT (c) 1982 BY
0003    !	      MOSTEK CORPORATION, CARROLLTON TX
0004    !
0005    ! This software is furnished under a license and may be used and  copied
0006    ! only  in  accordance  with  the  terms  of  such  license and with the
0007    ! inclusion of the above copyright notice.  This software or  any  other
0008    ! copies  thereof may not be provided or otherwise made available to any
0009    ! other person.  No title to and ownership of  the  software  is  hereby
0010    ! transferred.
0011    !
0012    ! The information in this software is subject to change  without  notice
0013    ! and  should  not  be  construed  as  a commitment by MOSTEK
0014    ! CORPORATION.
0015    !
0016    ! MOSTEK assumes no responsibility for the use or  reliability  of  its
0017    ! software on equipment which is not supplied by MOSTEK.
0018    !
0019     
0020    !++
0021    ! FACILITY:
0022    !   MOSTEK CORPORATION
0023    !
0024    ! ABSTRACT: COMPRESS squeezes a pcb (parse control block) into a string
0025    !   
0026    !
0027    ! ENVIRONMENT: VAX/VMS unpriv
0028    !   
0029    !
0030    ! AUTHOR: Gary Smith, CREATION DATE: 4/04/83
0031    !
0032    ! MODIFIED BY:
0033    !
0034    !--
0035    !
0036    ! TABLE OF CONTENTS:
0037    !
0038    !
0039    ! INCLUDE FILES: none
0040    !
0041    !
0042    ! MACROS: none
0043    !
0044    !
0045    ! EQUATED SYMBOLS: none
0046    !
0047    !
0048    ! EXTERNAL REFERENCES: none
0049    !
0050     
0051    !++
0052    ! FUNCTIONAL DESCRIPTION: The PCB as created by the parser is a mixture
0053    !                         of numbers and characters masquerading as numbers.
0054    !                         COMPRESS turns these into bona fide character 
0055    !                         strings.
0056    !
0057    !

                               					20-May-1983 10:31:17	VAX-11 FORTRAN V3.2-37              Page   2
								 4-Apr-1983 11:02:40	CAD$VOLSET:[GARY.STATS.SOURCE]COMPRESS.FOR;2

0058    !
0059    ! FORMAL PARAMETERS: PCB -> the parse control block that starts the string
0060    !                           descriptor
0061    !
0062    !
0063    !
0064    ! IMPLICIT INPUTS: none
0065    !
0066    !
0067    !
0068    ! IMPLICIT OUTPUTS: none
0069    !
0070    !
0071    !
0072    ! ROUTINE VALUE and
0073    ! COMPLETION CODES: The compressed string
0074    !
0075    !
0076    !
0077    ! SIDE EFFECTS: none to date
0078    !
0079    !
0080    !
0081    !--
0082              CHARACTER * 132 FUNCTION COMPRESS( PCB )
0083     
0084              character * 132 local_string
0085     
0086              byte r_local_string(132)
0087     
0088              integer pcb(1)
0089     
0090              equivalence( local_string, r_local_string(1) )
0091     
0092    !++
0093    ! clear out any trash floating around
0094    !--
0095     
0096              local_string = ' '
0097              compress = ' '
0098     
0099    !++
0100    ! copy the characters into the local string
0101    !--
0102     
0103              do i = 1, pcb(1)
0104                 r_local_string(i) = pcb(1+i)
0105              end do
0106        
0107    !++
0108    ! leave with the compressed string
0109    !--
0110     
0111              compress = local_string
0112              return
0113              end

COMPRESS                       					20-May-1983 10:31:17	VAX-11 FORTRAN V3.2-37              Page   3
								 4-Apr-1983 11:02:40	CAD$VOLSET:[GARY.STATS.SOURCE]COMPRESS.FOR;2

PROGRAM SECTIONS

    Name				 Bytes   Attributes

  0 $CODE                                   95   PIC CON REL LCL   SHR   EXE   RD NOWRT LONG
  2 $LOCAL                                 180   PIC CON REL LCL NOSHR NOEXE   RD   WRT LONG

    Total Space Allocated                  275


ENTRY POINTS

    Address  Type  Name                      References

  0-00000000  CHAR COMPRESS                     82        97=      111=    


VARIABLES

    Address  Type  Name          Attributes  References

  2-00000084  I*4  I                           103=      104(2)  
  2-00000000  CHAR LOCAL_STRING       EQUIV     84        90        96=      111     


ARRAYS

    Address  Type  Name                            Attributes        Bytes  Dimensions       References

 AP-00000008@ I*4  PCB                                                  4  (1)                    82        88       103     
											         104     
  2-00000000  L*1  R_LOCAL_STRING                       EQUIV         132  (132)                  86        90       104=    

                               					20-May-1983 10:31:17	VAX-11 FORTRAN V3.2-37              Page   4
								 4-Apr-1983 11:02:40	CAD$VOLSET:[GARY.STATS.SOURCE]COMPRESS.FOR;2

0001              


  +----------------------------------------------+
  |           KEY TO REFERENCE FLAGS             |
  |   =   - Value Modified                       |
  |   #   - Defining Reference                   |
  |   A   - Actual Argument, possibly modified   |
  |   D   - Data Initialization                  |
  |  (n)  - Number of occurrences on line        |
  +----------------------------------------------+



COMMAND QUALIFIERS

  FORTRAN /DEBUG/OBJECT=OBJ:COMPRESS/LIST=LIS:COMPRESS/CONT=99/CROSS/NOOPT SRC:COMPRESS

  /CHECK=(NOBOUNDS,OVERFLOW,NOUNDERFLOW)
  /DEBUG=(SYMBOLS,TRACEBACK)
  /STANDARD=(NOSYNTAX,NOSOURCE_FORM)
  /SHOW=(NOPREPROCESSOR,NOINCLUDE,MAP)
  /F77  /NOG_FLOATING  /I4  /NOOPTIMIZE  /WARNINGS  /NOD_LINES  /CROSS_REFERENCE  /NOMACHINE_CODE  /CONTINUATIONS=99


COMPILATION STATISTICS

  Run Time:           0.89 seconds
  Elapsed Time:       4.07 seconds
  Page Faults:        362
  Dynamic Memory:     795 pages
