Document revision date: 19 July 1999
[Compaq] [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]
[OpenVMS documentation]

OpenVMS Record Management Services Reference Manual


Previous Contents Index


$NAM

The $NAM macro allocates storage for a NAM block and initializes certain NAM fields with default values 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 NO_SHORT_UPCASE SRCHXABS SYNCHK>,
RLF =related-file-nam-block-address,
RSA =resultant-string-address,
RSS =resultant-string-size

Arguments


For a description of the control block fields that correspond to the $NAM macro arguments, see Chapter 5.

Arguments fall into three categories: values, addresses, and keywords. Rules applicable to these argument categories are described in Appendix B.

Note that multiple arguments can be specified for the NOP keyword, but the arguments must be enclosed within left angle (<) and right angle (>) brackets.


$NAM_STORE

The $NAM_STORE macro 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 NO_SHORT_UPCASE PWD SRCHXABS SYNCHK>,
RLF =related-file-nam-block-address,
RSA =resultant-string-address,
RSS =#resultant-string-size

Arguments


For a description of the control block fields that correspond to the $NAM_STORE macro arguments, see Chapter 5.

Arguments fall into several categories: values, addresses, keywords, and the address of the control block to receive the specified arguments. Rules applicable to these argument categories for the control block store macros are described in Appendix B.

The NAM argument nam-address is required for the $NAM_STORE macro and is not present for the $NAM macro. Also, the following $NAM_STORE argument fields are not available for the $NAM macro:

Note that R0 is usually used by the $NAM_STORE macro; thus, R0 is not preserved and does not contain a return status.


$NAML

The $NAML macro allocates storage for a NAML block and initializes certain NAML fields with default values and user-specified values.

Format

$NAML ESA=expanded-string-address,


ESS =expanded-string-size,
NOP =<NOCONCEAL PWD NO_SHORT_UPCASE SRCHXABS SYNCHK>,
RLF =related-file-nam-block-address,
RSA =resultant-string-address,
RSS =resultant-string-size,
FILESYS _NAME=file system name buffer address,
FILESYS _NAME_ALLOC=file system name buffer size,
INPUT _FLAGS=<NO_SHORT_OUTPUT>,
LONG _DEFNAME=long default file specification string address,
LONG _DEFNAME_SIZE=long default file specification string size,
LONG _FILENAME=long file specification string address,
LONG _FILENAME_SIZE=long file specification string size,
LONG _EXPAND=long expanded string area address,
LONG _EXPAND_ALLOC=long expanded string area size,
LONG _RESULT=long resultant string area address,
LONG _RESULT_ALLOC=long resultant string area size,
USER _CONTEXT=user context

Arguments


For a description of the control block fields that correspond to the $NAML macro arguments, see Chapter 6.

Arguments fall into three categories: values, addresses, and keywords. Rules applicable to these argument categories are described in Appendix B.

Note that multiple arguments can be specified for the NOP keyword, but the arguments must be enclosed with left angle (<) and right angle (>) brackets.


$NAML_STORE

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

Format

$NAML_STORE NAM=naml-address,


DID =#directory-identification,
DVI =#device-identification,
ESA =expanded-string-address,
ESS =#expanded-string-size,
FID =#file-identification,
NOP =<NOCONCEAL NO_SHORT_UPCASE PWD SRCHXABS SYNCHK>,
RLF =related-file-nam-block-address,
RSA =resultant-string-address,
RSS =#resultant-string-size,
FILESYS _NAME=file system name buffer address,
FILESYS _NAME_ALLOC=#file system name buffer size,
INPUT _FLAGS=<NO_SHORT_OUTPUT>,
LONG _DEFNAME=long default file specification string address,
LONG _DEFNAME_SIZE=#long default file specification string size,
LONG _FILENAME=long file specification string address,
LONG _FILENAME_SIZE=#long file specification string size,
LONG _EXPAND=long expanded string area address,
LONG _EXPAND_ALLOC=#long expanded string area size,
LONG _RESULT=long resultant string area address,
LONG _RESULT_ALLOC=#long resultant string area size,
USER _CONTEXT=#user context

Arguments


For a description of the control block fields that correspond to the $NAML_STORE macro arguments, see Chapter 6.

Arguments fall into several categories: values, addresses, keywords, and the address of the control block to receive the specified arguments. Rules applicable to these argument categories for the control block store macros are described in Appendix B.

The NAML argument naml-address is required for the $NAML_STORE macro and is not present for the $NAML macro. Also, the following $NAML_STORE argument fields are not available for the $NAML macro:

Note that R0 is usually used by the $NAML_STORE macro; thus, R0 is not preserved and does not contain a return status.


$RAB

The $RAB macro 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,
RAC ={KEY|RFA|SEQ},
RBF =record-buffer-address,
RHB =record-header-buffer-address,
ROP =<ASY BIO CCO CDK CVT EOF EQNXT ETO FDL KGE KGT LIM LOA LOC NLK NXR NXT PMT PTA RAH REA REV 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

Arguments


For a description of the control block fields that correspond to the $RAB macro arguments, see Chapter 7. In some cases, specific default values are assigned automatically when you omit an argument. These specific defaults are noted in the text that explains each field in Chapter 7. If there is no specific default, RMS uses a default value of 0.

Arguments fall into three categories: values, addresses, and keywords. Rules applicable to these argument categories are described in Appendix B.

Note that multiple arguments can be specified for the ROP keyword, but the arguments must be enclosed within left angle (<) and right angle (>) brackets. Also note that the KGE and EQNXT arguments are logically synonymous, as are the KGT and NXT arguments.


$RAB_STORE

The $RAB_STORE macro 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 allocates and 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,
RAC ={KEY|RFA|SEQ},
RBF =record-buffer-address,
RFA =#record-file-address,
RHB =record-header-buffer-address,
ROP =<ASY BIO CCO CDK CVT EOF EQNXT ETO FDL KGE KGT LIM LOA LOC NLK NXR NXT PMT PTA RAH REA REV 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

Arguments


For a description of the control block fields that correspond to the $RAB_STORE macro arguments, see Chapter 7.

Arguments fall into many categories: values, addresses, keywords, and the address of the control block to receive the specified arguments. Rules applicable to these argument categories for the control block store macros are described in Appendix B.

The RAB argument rab-address is required for the $RAB_STORE macro and is not present for the $RAB macro.

The RFA argument record-file-address is a value (not an address), and it is not available for the $RAB macro. The value for the 3-word RAB$W_RFA field must be set before each RFA record access. This argument is specified by its symbolic address. If a register is used to contain a value for the RAB$W_RFA field, do not use R12, because two contiguous registers must be used to contain the value of this 3-word field. Note that you cannot use the byte, word, or longword displacements for an offset, or for indexed or deferred addressing.

Note that multiple arguments can be specified for the ROP keyword, but the arguments must be enclosed within left angle (<) and right angle (>) brackets. Also note that the KGE and EQNXT arguments are logically synonymous, as are the KGT and NXT arguments.

Note that R0 is usually used by the $RAB_STORE macro; thus, R0 is not preserved and does not contain a return status.


$RAB64 (Alpha Only)

On Alpha systems, the $RAB64 macro allocates storage for a RAB64 and initializes certain RAB64 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.

The defaults unique to $RAB64 are as follows:

User-specified values using the CTX, KBF, RHB, RBF, RSZ, UBF, or USZ keywords are moved into the quadword fields for these keywords. In contrast, the $RAB macro moves them into the longword (or word) fields for these keywords.


Format

$RAB64 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,
RAC ={KEY|RFA|SEQ},
RBF =record-buffer-address,
RHB =record-header-buffer-address,
ROP =<ASY BIO CCO CDK CVT EOF EQNXT ETO FDL KGE KGT LIM LOA LOC NLK NXR NXT PMT PTA RAH REA REV 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

Arguments


For a description of the control block fields that correspond to the $RAB64 macro arguments, see Chapter 8. In some cases, specific default values are assigned automatically when you omit an argument. These specific defaults are described above or noted in the text that explains each field in Chapter 8. If there is no specific default, RMS uses a default value of 0.

Arguments fall into three categories: values, addresses, and keywords. Rules applicable to these argument categories are described in Appendix B.

Note that multiple arguments can be specified for the ROP keyword, but the arguments must be enclosed within left angle (<) and right angle (>) brackets. Also note that the KGE and EQNXT arguments are logically synonymous, as are the KGT and NXT arguments.


$RAB64_STORE (Alpha Only)

On Alpha systems, the $RAB64_STORE macro moves user-specified values into fields of the specified RAB64. The expanded $RAB64_STORE code executes at run time on a previously initialized (allocated) RAB64. In contrast, the $RAB64 macro allocates and initializes the RAB64 at assembly time. The $RAB64_STORE macro must reside in a code program section.

User-specified values that use the CTX, KBF, RHB, RBF, RSZ, UBF, or USZ keywords are moved into the quadword fields for these keywords. In contrast, the $RAB_STORE macro moves them into the longword (or word) fields for these keywords.


Format

$RAB64_STORE RAB=rab64-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,
RAC ={KEY|RFA|SEQ},
RBF =record-buffer-address,
RFA =#record-file-address,
RHB =record-header-buffer-address,
ROP =<ASY BIO CCO CDK CVT EOF EQNXT ETO FDL KGE KGT LIM LOA LOC NLK NXR NXT PMT PTA RAH REA REV 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

Arguments


For a description of the control block fields that correspond to the $RAB64_STORE macro arguments, see Chapter 8.

Arguments fall into many categories: values, addresses, keywords, and the address of the control block to receive the specified arguments. Rules applicable to these argument categories for the control block store macros are described in Appendix B.

The RAB argument rab64-address is required for the $RAB64_STORE macro and is not present for the $RAB64 macro.

The RFA argument record-file-address is a value (not an address), and it is not available for the $RAB64 macro. The value for the 3-word RAB64$W_RFA field must be set before each RFA record access. This argument is specified by its symbolic address. If a register is used to contain a value for the RAB64$W_RFA field, do not use R12, because two contiguous registers must be used to contain the value of this 3-word field. Note that you cannot use the byte, word, or longword displacements for an offset, or for indexed or deferred addressing.

Note that multiple arguments can be specified for the ROP keyword, but the arguments must be enclosed within left angle (<) and right angle (>) brackets. Also note that the KGE and EQNXT arguments are logically synonymous, as are the KGT and NXT arguments.

Note that R0 is usually used by the $RAB64_STORE macro; thus, R0 is not preserved and does not contain a return status.


$XABALL

The $XABALL macro 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,


ALN ={ANY|CYL|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

Arguments


For a description of the control block fields that correspond to the $XABALL macro arguments, see Chapter 9.

Arguments fall into three categories: values, addresses, and keywords. Rules applicable to these argument categories are described in Appendix B.

Note that multiple arguments can be specified for the AOP keyword, but the arguments must be enclosed within left angle (<) and right angle (>) brackets.


$XABALL_STORE

The $XABALL_STORE macro 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,
ALN ={ANY|CYL|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-identification,
VOL =#volume-number

Arguments


For a description of the control block fields that correspond to the $XABALL_STORE macro arguments, see Chapter 9.

Arguments fall into several categories: value, address, keyword, and the address of the control block to receive the specified arguments. Rules applicable to these argument categories for the control block store macros are described in Appendix B.

The XAB argument xaball-address is required for the $XABALL_STORE macro and is not present for the $XABALL macro. Also, the RFI argument related file identification sets the XAB$W_RFI field, which is a 3-word field used when the XAB$B_ALN field XAB$V_RFI option is set. This argument is usually specified by its symbolic address. If a register is used to contain a value for the XAB$W_RFI field, do not use R12, because two contiguous registers must be used to contain the value of this 3-word field. Note that you cannot use the byte, word, or longword displacements for an offset, or for indexed or deferred addressing.

Note that R0 is usually used by the $XABALL_STORE macro; thus, R0 is not preserved and does not contain a return status.


$XABDAT

The $XABDAT macro allocates and initializes a XABDAT. No value is returned for this assembly-time operation.

Format

$XABDAT EDT=date-time,


NXT =next-xab-address

Arguments


For a description of the control block fields that correspond to the $XABDAT macro arguments, see Chapter 9.

Rules applicable to arguments are described in Appendix B.


$XABDAT_STORE

The $XABDAT_STORE macro 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,


CDT =#creation-date-time,
EDT =#expiration-date-time,
RDT =#revision-date-time,
RVN =#revision-number,
NXT =next-xab-address

Arguments


For a description of the control block fields that correspond to the $XABDAT_STORE macro arguments, see Chapter 9.

Arguments fall into several categories: values, addresses, keywords, and the address of the control block to receive the specified arguments. Rules applicable to these argument categories for the control block store macros are described in Appendix B.

The XAB argument xabdat-address is required for the $XABDAT_STORE macro and is not present for the $XABDAT macro. Also, the arguments differ from the general rules.

Note that R0 is usually used by the $XABDAT_STORE macro; thus, R0 is not preserved and does not contain a return status.


Previous Next Contents Index

  [Go to the documentation home page] [How to order documentation] [Help on this site] [How to contact us]  
  privacy and legal statement  
4523PRO_035.HTML