This general macro stores a date in the storage area specified by the
caller. The date will be returned in one of several forms, as specified
by the caller.
Format
- label
- A symbolic name can be assigned to the macro statement.
- AREA=addr
- The address of the storage area in which the date is to be placed.
The address can be any valid assembler expression. If used, the base or
index registers must be in the range 0-9.
- FORMAT
- The pattern of the date that is to be returned. Acceptable values
are:
- STANDARD
- An 8-byte date is to be returned in the format YYYYMMDD.
- JULIAN
- A 5-byte date is to be returned in the pattern YYDDD, where YY is the last
two digits of the year and DDD is the number of days so far this year,
including the current day (e.g., 27 August 1989 would be
89239).
- EJULIAN
- A 6-byte date is to be returned in the pattern CYYDDD, where C is an
indicator of the thousands and hundreds positions of the year (X'40' =
19, '0' = 20, '1' = 21, etc.), YY is the last two
digits of the year, and DDD is the number of days so far this year, including
the current day.
- SYS
- A system or subsystem date is returned. Acceptable values
are:
- YES
- The system local standard date is to be returned. This is the
default.
- NO
- The subsystem local date is to be returned.
- BSS
- The subsystem for which the subsystem local date is to be returned.
This parameter is valid only when a CP expansion is generated and SYS=NO is
specified or defaulted. Acceptable values are:
- YES
- The subsystem local date is to be returned for the BSS.
- NO
- The subsystem local date is to be returned for the subsystem whose index
is contained in R15.
- MODE
- The kind of macro expansion to generate. Acceptable values
are:
- NORM
- The type of expansion is to be determined based on the value of a global
variable that is set when the BEGIN macro is invoked.
- CP
- A CP expansion is to be generated.
- ECB
- An ECB expansion is to be generated.
Entry Requirements
- If BSS=NO is specified then R15 must contain the subsystem index of the
subsystem whose local date is to be returned.
- For ECB expansions, R8 must point to the program base and R9 must point to
the ECB.
Return Conditions
- Control is returned to the next sequential instruction.
- The contents of R14 and R15 are unknown. The contents of all other
registers are preserved across this macro call.
- The protect key is unchanged.
- The date is returned in the specified area, in the specified
format.
Programming Considerations
- The EJULIAN date format conforms to the format used for IBM standard tape
labels.
- This macro can be executed from the CP or from an ECB program. When
executed from an ECB program, fast-link macro linkage is used.
- This macro can be executed on any I-stream.
- The source of the date returned by this macro is only updated when the
system is above 1052 state.
- The date returned by this macro is only valid if clock restart has
completed; no checks are made by this macro for completion of clock
restart.
Examples
None.