Guardian Procedure Calls Reference Manual (G06.25+)

Guardian Procedure Calls (H-K)
Guardian Procedure Calls Reference Manual522629-013
7-12
HIST_FORMAT_ Procedure
-2 HIST_BAD_WIDTH
The value of the
limit parameter is less than the minimum width for output
defined by the HIST_MinWidth literal in the HHISTRY header file.
-9 HIST_BAD_WORKSPACE
The workspace structure has an invalid version identifier. This error can
occur if HIST_FORMAT_ is called without first calling the HIST_INIT_
procedure or if the workspace structure has become corrupted.
-10 HIST_BAD_FORMAT_CALL
Nothing to format. This error can occur if you call HIST_FORMAT_ again
after a previous call returned zero indicating no more text for the current
context.
workspace input, output
INT .EXT:ref:(HISTWORKSPACE_TEMPLATE)
identifies the workspace area. One purpose of this area is to specify the format of
the contents of the output text. The specific instance of the workspace must have
been initialized by the HIST_INIT_ or HIST_PRIOR_ procedure. You can adjust
the content and format of the display by setting the
workspace.FormatSelect
field; see “Considerations.”
text output
STRING .EXT:ref:*
is the buffer in which the output text is returned. The text has no termination
character. The length of the text string is returned in
ret-val.
limit input
INT:value
specifies the maximum length in bytes of the output line. This value must not be
less than the minimum width specified by the HIST_MinWidth literal in the
HHISTRY file; otherwise, an error occurs.
Considerations
The workspace.FormatSelect field determines what information is reported.
This field is initialized to a default value by the HIST_INIT_ procedure, but it can be
changed by the caller before the first HIST_FORMAT_ call for any stack frame.
Changing
FormatSelect between successive calls to HIST_FORMAT_ without
an intervening call to HIST_GETPRIOR_ has an undefined effect. The field is a bit
mask formed by combining the following literals:
HF_CodeSpace Shows the code space in which the procedure resides; for
example, user code (UC), user code RISC (UCr), accelerated
system library (acc SL), system code RISC (SCr), system