next up previous contents
Next: Dimensional Levels Up: TEST records Previous: Silicon Graphics Iris workstation,   Contents


VAX running VMS using Fortran

C234567
C      We declare the test record as an array of bytes
       INTEGER*1 TESTREC(24)
C
C      MAGIC: We load in the magic number (in decimal)
       TESTREC(1) = 71
       TESTREC(2) = -13
       TESTREC(3) = 70
       TESTREC(4) = -29
C
C      MACHID:  VAX/VMS
       TESTREC(5) = 1
C
C      NUMOBJECTS: We will write only one object, 
C      so this can be 0 or 1.
       TESTREC(6) = 0
C
C      SPECA: We use ASCII, and the VAX is a little-endian 
C      machine
       TESTREC(7) = 13
C
C      RESERVED1
       TESTREC(8) = 0
C
C      RECHDR: We are using VAX Fortran Record Headers
C      (I.e., segmented variable length records)
       TESTREC(9) = 2
C
C      RESERVED2
       TESTREC(10) = 0
C
C      SPECB: In Fortran, arrays are in column-major order, 
C      and array indices start from 1.
       TESTREC(11) = 3
C
C      SLEN: On a VAX, a short integer is 16 bits
       TESTREC(12) = 16
C
C      LLEN: On a VAX, a long integer is 32 bits
       TESTREC(13) = 32
C
C      FLEN: On a VAX, a floating-point number is 32 bits
       TESTREC(14) = 32
C
C      DLEN: On a VAX, a double precision floating-point 
C      number is 64 bits
       TESTREC(15) = 64
C
C      FPFORM: We are using VAX format floating-point numbers
C      (VAX D for double precision).
       TESTREC(16) = 34
C
C      MORE RESERVED...
       TESTREC(17) = 0
       TESTREC(18) = 0
       TESTREC(19) = 0
       TESTREC(20) = 0
       TESTREC(21) = 0
       TESTREC(22) = 0
       TESTREC(23) = 0
       TESTREC(24) = 0
C
C      Now write it all out
       WRITE(LUNIT) TESTREC
C



Eric Nash 2003-09-25