fabrec = RECORD
  CASE integer OF
  1 : (
      bid : byte;		{ Fab identifier }
      bln : byte;		{ Rab length }
      ctx : word;		{ Available to user }
      ifi : word;		{ Pointer to ifab }
      sts : word;		{ Completion code }
      stv : word;		{ More error information }
      alq : doubleword;		{ Allocation quantity }
      deq : word;		{ * Automatic extension quantity }
      fac : byte;		{ Types of record operations }
      shr : byte;		{ File sharing }
      fop : word;		{ File processing options }
      rtv : byte;		{ Window size }
      org : byte;		{ * File organization }
      rat : byte;		{ * Record attributes }
      rfm : byte;		{ * Record format }
      xab : ^XabRec ;		{ Pointer to first xab }
      bpa : word;		{ Location of private I/O buffer }
      bps : word;		{ Size of private I/O buffer }
      mrs : word;		{ * Maximum record size }
      mrn : doubleword;		{ * Maximum record number }
      jnl : word;		{ Undocumented field (journal?) }
      nam : word;		{ Pointer to nam block }
      fna : ^RmsFileName ;	{ description of filespec, ptr. loaded later }
      dna : word;		{ Location of filepsec defaults }
      fns : byte;		{ Size of filespec }
      dns : byte;		{ Size of filespec defaults }
      bls : word;		{ * Block size }
      fsz : byte;		{ * Size of fixed area for VFC records }
      bks : byte;		{ * Bucket size }
      dev : byte;		{ Device characteristics }
      lch : byte;		{ Logical channel }
      jnk : ARRAY [1..34B] OF char
      ) ;
  2 : ( AllFab : ARRAY [1..40] OF integer) ; { used to clr fab before open }
    END; { fab rec }
