Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

$FAB

$FAB_STORE

$NAM

$NAM_STORE

$RAB

$RAB_STORE

$XABALL

$XABALL_STORE

$XABDAT

$XABDAT_STORE

$XABFHC

$XABFHC_STORE

$XABKEY

$XABKEY_STORE

$XABPRO

$XABPRO_STORE

$XABRDT

$XABRDT_STORE

$XABSUM

$XABSUM_STORE

$XABTRM

$XABTRM_STORE

$CLOSE

$CONNECT

$CREATE

$DELETE

$DISCONNECT

$DISPLAY

$ENTER

$ERASE

$EXTEND

$FIND

$FLUSH

$FREE

$GET

$NXTVOL

$OPEN

$PARSE

$PUT

$READ

$RELEASE

$REMOVE

$RENAME

$REWIND

$SEARCH

$SPACE

$TRUNCATE

$UPDATE

$WAIT

$WRITE

HELP RMS — VMS 4.6

 Record Management Services.

 VAX Record Management Services (RMS) are generalized routines that
 assist  user programs in processing and managing files and records
 within  files.   RMS   provides  transparent   network  processing
 between  DECnet/VAX  nodes.   RMS   also  includes  a set of macro
 instructions that  you  can  use  to  initialize  control  blocks,
 store  values in control blocks, and call RMS services.  For  more
 information  about  RMS,  see the VAX  Record Management  Services
 Reference  Manual  and  the  FDL Facility  in  the  VAX/VMS   File
 Definition Language Facility  Reference Manual.

Additional information available:

$FAB$FAB_STORE$NAM$NAM_STORE$RAB
$RAB_STORE$XABALL$XABALL_STORE$XABDAT$XABDAT_STORE
$XABFHC$XABFHC_STORE$XABKEY$XABKEY_STORE$XABPRO
$XABPRO_STORE$XABRDT$XABRDT_STORE$XABSUM$XABSUM_STORE
$XABTRM$XABTRM_STORE$CLOSE$CONNECT$CREATE$DELETE
$DISCONNECT$DISPLAY$ENTER$ERASE$EXTEND$FIND
$FLUSH$FREE$GET$NXTVOL$OPEN$PARSE$PUT
$READ$RELEASE$REMOVE$RENAME$REWIND$SEARCH$SPACE
$TRUNCATE$UPDATE$WAIT$WRITE

$FAB

  Allocates storage for a FAB and initializes certain FAB fields  with
  defaults  and  user-specified values.  No value is returned for this
  assembly-time operation.

     Format:

       $FAB     ALQ = allocation-quantity,
                BKS =  bucket-size,
                BLS =  block-size,
                CHAN_MODE =  channel-access-mode
                CTX =  user-context-value,
                DEQ =  extension-quantity,
                DNA =  default-filespec-address,
                DNM =  <filespec>,
                DNS =  default-filespec-string-size,
                FAC =  <BIO BRO DEL GET PUT TRN UPD>,
                FNA =  filespec-string-address,
                FNM =  <filespec>,
                FNS =  filespec-string-size,
                FOP = <CBT CIF CTG DFW DLT MXV NAM NEF NFS
                       OFP POS RCK RWC RWO SCF SPL SQO SUP
                       TEF TMD TMP UFO WCK>,
                FSZ =  header-size,
                GBC =  global-buffer-count,
                LNM_MODE =  logical-name-translation-access-mode
                MRN =  maximum-record-number,
                MRS =  maximum-record-size,
                NAM =  nam-address,
                        REL
                ORG =   IDX  ,
                        SEQ
                           CR
                RAT = <BLK FTN > ,
                           PRN
                       FIX
                       VAR
                       VFC
                RFM =  STM     ,
                       STMCR
                       STMLF
                       UDF
                RTV =  window-size,
                SHR = <DEL GET MSE NIL PUT UPD UPI>,
                XAB =  xab-address

$FAB_STORE

  Moves user-specified values into fields of the specified  FAB.   The
  expanded  $FAB_STORE  code  executes  at  run  time  on a previously
  initialized (allocated) FAB, in contrast to the  $FAB  macro,  which
  initializes  the  FAB  at  assembly-time.  The $FAB_STORE macro must
  reside in a code program section.

     Format:

       $FAB_STORE     FAB = fab-address,
                      ALQ =  #allocation-quantity,
                      BKS =  #bucket-size,
                      BLS =  #block-size,
                      CHAN_MODE =  #channel-access-mode
                      CTX =  user-context-value,
                      DEQ =  #extension-quantity,
                      DNA =  default-filespec-address,
                      DNS =  #default-filespec-string-size,
                      FAC = <BIO BRO DEL GET PUT TRN UPD>,
                      FNA =  filespec-string-address,
                      FNS =  #filespec-string-size,
                      FOP = <CBT CIF CTG DFW DLT MXV NAM NEF NFS
                             OFP POS RCK RWC RWO SCF SPL SQO
                             SUP TEF TMD TMP UFO WCK>,
                      FSZ =  #header-size,
                      GBC =  #global-buffer-count,
                      LNM_MODE =  #logical-name-translation-access-mode
                      MRN =  #maximum-record-number,
                      MRS =  #maximum-record-size,
                      NAM =  nam-address,
                              REL
                      ORG =   IDX   ,
                              SEQ
                                 CR
                      RAT = <BLK FTN >  ,
                                 PRN
                             FIX
                             VAR
                             VFC
                      RFM =  STM      ,
                             STMCR
                             STMLF
                             UDF
                      RTV =  #window-size,
                      SHR = <DEL GET MSE NIL PUT UPD UPI>,
                      XAB =  xab-address

$NAM

  Allocates storage for a NAM block and initializes certain NAM fields
  with  defaults  and user-specified values.  No value is returned for
  this assembly-time operation.

     Format:

       $NAM     ESA =  expanded-string-address,
                ESS =  expanded-string-size,
                NOP =  <NOCONCEAL PWD SRCHXABS SYNCHK>,
                RLF =  related-file-nam-block-address,
                RSA =  resultant-string-address,
                RSS =  resultant-string-size

$NAM_STORE

  Moves user-specified values into fields of the specified NAM  block.
  The  expanded  $NAM_STORE  code executes at run-time on a previously
  initialized (allocated) NAM block, in contrast to  the  $NAM  macro,
  which  initializes  a  NAM  block  at assembly time.  The $NAM_STORE
  macro must reside in a code program section.

     Format:

       $NAM_STORE     NAM =  nam-address,
                      DID =  #directory-identification,
                      DVI =  #device-identification,
                      ESA =  expanded-string-address,
                      ESS =  #expanded-string-size,
                      FID =  #file-identification,
                      NOP =  <NOCONCEAL PWD SRCHXABS SYNCHK>,
                      RLF =  related-file-nam-block-address,
                      RSA =  resultant-string-address,
                      RSS =  #resultant-string-size

$RAB

  Allocates storage for a RAB and initializes certain RAB fields  with
  defaults  and  user-specified  values.   You  cannot  use this macro
  within a sequence of executable instructions.  No value is  returned
  for this assembly-time operation.

     Format:

       $RAB     BKT =  bucket-code-number,
                CTX =  user-context-value,
                FAB =  fab-address,
                KBF =  key-buffer-address,
                KRF =  key-of-reference-number,
                KSZ =  key-size,
                MBC =  multiblock-count-number,
                MBF =  multibuffer-count-number,
                PBF =  prompt-buffer-address,
                PSZ =  prompt-buffer-size,
                       SEQ
                RAC =  KEY  ,
                       RFA
                RBF =  record-buffer-address,
                RHB =  record-header-buffer-address,
                ROP =  <ASY BIO CCO CVT EOF EQNXT ETO FDL KGE KGT
                       LIM LOA LOC NLK NXR NXT PMT PTA RAH REA
                       RLK RNE RNF RRL TMO TPT UIF ULK WAT WBH>,
                RSZ =  record-size,
                TMO =  time-out-number-of-seconds,
                UBF =  user-record-buffer-address,
                USZ =  user-record-buffer-size,
                XAB =  xab-address

  Note that the ROP arguments KGE and EQNXT are logically  synonymous,
  as are the arguments KGT and NXT.

$RAB_STORE

  Moves user-specified values into fields of the specified  RAB.   The
  expanded  $RAB_STORE  code  executes  at  run  time  on a previously
  initialized (allocated) RAB, in contrast to the  $RAB  macro,  which
  initializes  the  RAB  at  assembly time.  The $RAB_STORE macro must
  reside in a code program section.

     Format:

       $RAB_STORE    RAB =  rab-address,
                     BKT =  #bucket-code-number,
                     CTX =  user-context-value,
                     FAB =  fab-address,
                     KBF =  key-buffer-address,
                     KRF =  #key-of-reference-number,
                     KSZ =  #key-size,
                     MBC =  #multiblock-count-number,
                     MBF =  #multibuffer-count-number,
                     PBF =  prompt-buffer-address,
                     PSZ =  #prompt-buffer-size,
                            SEQ
                     RAC =  KEY  ,
                            RFA
                     RBF =  record-buffer-address,
                     RFA =  #record-file-address,
                     RHB =  record-header-buffer-address,
                     ROP =  <ASY BIO CCO CVT EOF EQNXT ETO FDL KGE KGT
                            LIM LOA LOC NLK NXR NXT PMT PTA RAH REA
                            RLK RNE RNF RRL TMO TPT UIF ULK WAT WBH>,
                     RSZ =  #record-size,
                     TMO =  #time-out-number-of-seconds,
                     UBF =  user-record-buffer-address,
                     USZ =  #user-record-buffer-size,
                     XAB =  xab-address

  Note that the ROP arguments KGE and EQNXT are logically  synonymous,
  as are the arguments KGT and NXT.

$XABALL

  Allocates and initializes a XABALL, which allows extended control of
  file  disk  space  allocation, both for initial allocation and later
  extension.  No value is returned for this assembly-time operation.

     Format:

       $XABALL  AID = area-identification-number,
                      ANY
                      CYL
                ALN = LBN  ,
                      RFI
                      VBN
                ALQ =  allocation-quantity,
                AOP = <CBT CTG HRD ONC>,
                BKZ =  bucket-size,
                DEQ =  extension-quantity,
                LOC =  location-number,
                NXT =  next-xab-address,
                RFI =  <f(1), f(2), f(3)>,
                VOL =  volume-number,

$XABALL_STORE

  Moves user-specified values into fields  of  the  specified  XABALL.
  The expanded $XABALL_STORE code executes at run time on a previously
  initialized (allocated) XABALL, in contrast to  the  $XABALL  macro,
  which  initializes  a  XABALL  at  assembly time.  The $XABALL_STORE
  macro must reside in a code program section.

     Format:

       $XABALL_STORE     XAB = xaball-address,
                         AID = #area-identification-number,
                               ANY
                               CYL
                         ALN = LBN   ,
                               RFI
                               VBN
                         ALQ =  #allocation-quantity,
                         AOP = <CBT CTG HRD ONC>,
                         BKZ =  #bucket-size,
                         DEQ =  #extension-quantity,
                         LOC =  #location-number,
                         NXT =  next-xab-address,
                         RFI =  #related-file-identifier,
                         VOL =  #volume-number,

$XABDAT

  Allocates and initializes a XABDAT.  No value is returned  for  this
  assembly-time operation.

     Format:

       $XABDAT     EDT = date-time, NXT = next-xab-address

$XABDAT_STORE

  Moves user-specified values into fields  of  the  specified  XABDAT.
  The expanded $XABDAT_STORE code executes at run time on a previously
  initialized (allocated) XABDAT, in contrast to  the  $XABDAT  macro,
  which  initializes  a  XABDAT  at  assembly time.  The $XABDAT_STORE
  macro must reside in a code program section.

     Format:

       $XABDAT_STORE   XAB =  xabdat-address,
                       BDT =  #backup-date-time,
                       CDT =  #creation-date-time,
                       EDT =  #expiration-date-time,
                       RDT =  #revision-date-time,
                       RVN =  #revision-number,
                       NXT =  next-xab-address

$XABFHC

  Allocates and initializes a XABFHC.  No value is returned  for  this
  assembly-time operation.

     Format:

       $XABFHC    NXT = next-xab-address

$XABFHC_STORE

  Moves user-specified values into fields  of  the  specified  XABFHC.
  The expanded $XABFHC_STORE code executes at run time on a previously
  initialized (allocated) XABFHC, in contrast to  the  $XABFHC  macro,
  which  initializes  a  XABFHC  at  assembly time.  The $XABFHC_STORE
  macro must reside in a code program section.

     Format:

       $XABFHC_STORE   XAB = xabfhc-address,
                       NXT = next-xab-address

$XABKEY

  Allocates and initializes a XABKEY.  No value is returned  for  this
  assembly-time operation.

     Format:

       $XABKEY   DAN =  data-bucket-area-number,
                 DFL =  data-bucket-fill-size,

                        BN2
                        DBN2
                        BN4
                        DBN4
                        BN8
                        DBN8
                        IN2
                        DIN2
                 DTP =  IN4   ,
                        DIN4
                        IN8
                        DIN8
                        PAC
                        DPAC
                        STG
                        DSTG

                 FLG = <CHG DAT_NCMPR DUP IDX_NCMPR KEY_NCMPR NUL>,
                 IAN =  index-bucket-area-number,
                 IFL =  index-bucket-file-size,
                 KNM =  key-name-buffer-address,
                 LAN =  lowest-level-index-area-number,
                 NUL =  null-key-value,
                 NXT =  next-xab-address,
                 POS =  <position,...>,
                 PROLOG =  prolog-level,
                 REF =  key-of-reference-value,
                 SIZ =  <size,...>

$XABKEY_STORE

  Moves user-specified values into fields  of  the  specified  XABKEY.
  The expanded $XABKEY_STORE code executes at run time on a previously
  initialized (allocated) XABKEY, in contrast to  the  $XABKEY  macro,
  which  initializes  the  XABKEY at assembly time.  The $XABKEY_STORE
  macro must reside in a code program section.

     Format:

       $XABKEY_STORE  XAB =  xabkey-address,
                      DAN =  #data-bucket-area-number,
                      DFL =  #data-bucket-fill-size,

                             BN2
                             DBN2
                             BN4
                             DBN4
                             BN8
                             DBN8
                             IN2
                             DIN2
                      DTP =  IN4   ,
                             DIN4
                             IN8
                             DIN8
                             PAC
                             DPAC
                             STG
                             DSTG

                      FLG = <CHG DAT_NCMPR DUP IDX_NCMPR KEY_NCMPR
                             NUL>,
                      IAN =  #index-bucket-area-number,
                      IFL =  #index-bucket-fill-size,
                      KNM =  key-name-buffer-address,
                      LAN =  #lowest-level-index-area-number,
                      NUL =  #null-key-value,
                      NXT =  next-xab-address,
                      POS =  <position,...>,
                      PROLOG =  #prolog-level,
                      REF =  #key-of-reference-value,
                      SIZ =  <size,...>

$XABPRO

  Allocates and initializes a XABPRO.  No value is returned  for  this
  assembly-time operation.

     Format:

       $XABPRO    ACLBUF = acl-buffer-address,
                  ACLCTX = <acl-context>,
                  ACLSIZ = acl-buffer-size,
                  MTACC =  magnetic-tape-accessibility,
                  NXT =    next-xab-address,
                  PRO =   <system, owner, group, world>,
                  PROT_OPT =  <PROPAGATE>,
                  UIC =   <group, member>

$XABPRO_STORE

  Moves user-specified values into fields  of  the  specified  XABPRO.
  The expanded $XABPRO_STORE code executes at run time on a previously
  initialized (allocated) XABPRO, in contrast to  the  $XABPRO  macro,
  which  initializes  a  XABPRO  at  assembly time.  The $XABPRO_STORE
  macro must reside in a code program section.

     Format:

       $XABPRO_STORE    XAB =  xabpro-address,
                        ACLBUF = acl-buffer-address,
                        ACLCTX = #<acl-context>,
                        ACLSIZ = #acl-buffer-size,
                        MTACC =  #magnetic-tape-accessibility,
                        NXT =   next-xab-address,
                        PRO =  <system, owner, group, world>,
                        PROT_OPT =  <PROPAGATE>,
                        UIC =   #uic-value

$XABRDT

  Allocates and initializes a XABRDT.  No value is returned  for  this
  assembly-time operation.

     Format:

       $XABRDT    NXT = next-xab-address

$XABRDT_STORE

  Moves user-specified values into fields  of  the  specified  XABRDT.
  The expanded $XABRDT_STORE code executes at run time on a previously
  initialized (allocated) XABRDT, in contrast to  the  $XABRDT  macro,
  which  initializes  the  XABRDT at assembly time.  The $XABRDT_STORE
  macro must reside in a code program section.

     Format:

       $XABRDT_STORE    XAB =  xabrdt-address,
                        RDT =  #revision-date-time,
                        RVN =  #revision-number,
                        NXT =  next-xab-address

$XABSUM

  Allocates and initializes a XABSUM.  No value is returned  for  this
  assembly-time operation.

     Format:

       $XABSUM     NXT = next-xab-address

$XABSUM_STORE

  Moves user-specified values into fields  of  the  specified  XABSUM.
  The expanded $XABSUM_STORE code executes at run time on a previously
  initialized (allocated) XABSUM, in contrast to  the  $XABSUM  macro,
  which  initializes  the  XABSUM at assembly time.  The $XABSUM_STORE
  macro must reside in a code program section.

     Format:

       $XABSUM_STORE    XAB = xabsum-address,
                        NXT =  next-xab-address

$XABTRM

  Allocates and initializes a XABTRM.  No value is returned  for  this
  assembly-time operation.

     Format:

       $XABTRM     ITMLST     = item-list-address,
                   ITMLST_LEN = item-list-length,
                   NXT        = next-xab-address

$XABTRM_STORE

  Moves user-specified values into fields  of  the  specified  XABTRM.
  The expanded $XABTRM_STORE code executes at run time on a previously
  initialized (allocated) XABTRM, in contrast to  the  $XABTRM  macro,
  which  initializes  a  XABTRM  at  assembly time.  The $XABTRM_STORE
  macro must reside in a code program section.

     Format:

       $XABTRM     XAB        =  xabtrm-address,
                   ITMLST     =  item-list-address,
                   ITMLST_LEN =  #item-list-length,
                   NXT        =  next-xab-address

$CLOSE

  The Close service terminates file processing and  closes  the  file.
  The  Close  service  performs an implicit Disconnect service for all
  record streams associated with the file.

     Format:

       SYS$CLOSE  fab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$CONNECT

  The Connect service establishes a record stream by  associating  and
  connecting a RAB with a FAB.

     Format:

       SYS$CONNECT  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$CREATE

  The Create service constructs a new file according to the attributes
  you  specify  in  the FAB.  If any XABs are chained to the FAB, then
  the characteristics described in the XABs are applied to  the  file.
  The Create service performs implicit Open and Display services.

     Format:

       SYS$CREATE  fab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$DELETE

  The Delete service removes an existing record  from  a  relative  or
  indexed   file.    You  cannot  use  this  service  when  processing
  sequential files.

     Format:

       SYS$DELETE  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$DISCONNECT

  The Disconnect service breaks the connection between  a  RAB  and  a
  FAB,  thereby  terminating  a  record stream.  All system resources,
  such as I/O buffers and data structure space, are deallocated.

     Format:

       SYS$DISCONNECT  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$DISPLAY

  The Display service retrieves file  attribute  information  about  a
  file  and  places  this  information  in  fields in the FAB, in XABs
  chained to the FAB, and in a NAM block (if requested).

     Format:

       SYS$DISPLAY  fab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$ENTER

  The Enter service inserts a file name into a directory.

     Format:

       SYS$ENTER  rab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$ERASE

  The Erase service deletes a RMS disk file  and  removes  the  file's
  directory entry as specified in the path to the file.  If additional
  directory entries have been created for this file  (by  use  of  the
  Enter service), then you must use the Remove service to delete them.

     Format:

       SYS$ERASE  fab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$EXTEND

  The Extend service increases the amount of space allocated to an RMS
  disk  file.   This  service  is most useful for relative and indexed
  files when performing block I/O using the Write service.

     Format:

       SYS$EXTEND  fab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$FIND

  The Find service locates a specified record in a  file  and  returns
  its  record's  file address in the RAB$W_RFA field of the RAB.  This
  service can be used with all file organizations.

     Format:

       SYS$FIND  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$FLUSH

  The Flush service writes out  all  modified  I/O  buffers  and  file
  attributes  associated  with the file.  This ensures that all record
  activity up to the point at which this service executes is  actually
  reflected in the file.

     Format:

       SYS$FLUSH  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$FREE

  The Free service unlocks all records that were previously locked for
  the record stream.

     Format:

       SYS$FREE  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$GET

  The Get service retrieves a record from a file.

     Format:

       SYS$GET  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$NXTVOL

  The Next Volume service, which applies only  to  files  on  magnetic
  tape  volumes,  allows  you  to  process  the  next tape volume in a
  multiple volume set.

     Format:

       SYS$NXTVOL  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$OPEN

  The Open service makes an existing file available for processing  by
  your  program.   This  service implements the type of access desired
  and determines the degree to which the file can be shared.  The Open
  service performs an implicit Display service.

     Format:

       SYS$OPEN  fab  [,err]  [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$PARSE

  The Parse service analyzes the file specification string  and  fills
  in various NAM block fields.

     Format:

       SYS$PARSE  fab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$PUT

  The Put service inserts a record into a file.

     Format:

       SYS$RAB  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$READ

  The Read service retrieves a specified number of bytes from  a  file
  (beginning  on  a  block  boundary) and transfers them to memory.  A
  Read  service  using  block  I/O  can  be  performed  on  any   file
  organization.

     Format:

       SYS$READ  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$RELEASE

  The Release service unlocks the record pointed to by the contents of
  the record's file address (RAB$W_RFA) field of the RAB.

     Format:

       SYS$RELEASE  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$REMOVE

  The Remove service deletes a file name from a directory.  It is  the
  reverse of the Enter service.

     Format:

       SYS$REMOVE  fab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$RENAME

  The Rename service changes the name of a file in a directory  or  in
  some cases, changes the directory of residence for a file.

     Format:

       SYS$RENAME  old-fab    [,err]    [,suc]   ,new-fab

     Arguments:

  old-fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments  for  this  service  call.   The  old-fab  argument is the
  address of the FAB control block that specifies the old file name.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

  new-fab

  The new-fab argument is the address of the FAB  control  block  that
  specifies the new file name.

$REWIND

  The Rewind service sets the context of a record stream to the  first
  record  in  the  file.  RMS alters the context of the next record to
  indicate the first record as being the next record.

     Format:

       SYS$REWIND  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$SEARCH

  The Search service scans a directory file and fills in  various  NAM
  block  fields.   The  Search service should be preceded by the Parse
  service, in order to initialize the NAM block appropriately.

     Format:

       SYS$SEARCH  fab    [,err]    [,suc]

     Arguments:

  fab

  FAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The fab argument is the address of
  the FAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$SPACE

  The Space service lets you position a file  forward  or  backward  a
  specified number of blocks.

     Format:

       SYS$SPACE  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$TRUNCATE

  The Truncate service removes records from the end  of  a  sequential
  file.

     Format:

       SYS$TRUNCATE  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$UPDATE

  The Update service allows you to modify the contents of an  existing
  record in a file residing on a disk device.

     Format:

       SYS$UPDATE  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

$WAIT

  The Wait service suspends  image  execution  until  an  asynchronous
  record  service  completes.   Upon  completion  of  the service, RMS
  returns control to your program at  the  point  following  the  Wait
  service call.

     Format:

       SYS$WAIT  rab

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.  It can be either the RAB whose  I/O  request
  is in progress or some other RAB.

$WRITE

  The  Write  service  transfers  a  user-specified  number  of  bytes
  (beginning  on  a  block  boundary)  to  an  RMS  file  of  any file
  organization.

     Format:

       SYS$WRITE  rab    [,err]    [,suc]

     Arguments:

  rab

  RAB control  block  whose  contents  are  to  be  used  as  indirect
  arguments for this service call.  The rab argument is the address of
  the RAB control block.

  err

  AST-level error completion routine that this service invokes if  the
  operation  is  unsuccessful.  The err argument is the address of the
  entry mask of this user-written completion routine.

  suc

  AST-level success completion routine that this  service  invokes  if
  the operation is successful.  The suc argument is the address of the
  entry mask of this user-written completion routine.

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026