18.08.2013 Views

(SYSLIB) Programming Reference Manual - Public Support Login ...

(SYSLIB) Programming Reference Manual - Public Support Login ...

(SYSLIB) Programming Reference Manual - Public Support Login ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

ID$–Identification Line Routine<br />

11.2. PLUS Interface<br />

ID$ can be called directly from PLUS programs. The data structure requirements for ID$<br />

are described in 11.1.2. The calling sequence for ID$ is described in 11.2.2.<br />

When ID$ is called from PLUS programs, the output is limited to a maximum of 10 lines<br />

for the processor/program identification line(s).<br />

11.2.1. Packet<br />

PLUS programs that call ID$ do not need to supply a packet for ID$. Instead, the calling<br />

program passes parameters to ID$, and ID$ builds the packet on the Automatic Storage<br />

Stack (PLSSTACK).<br />

The calling program must provide the following data entities:<br />

• A buffer containing the ASCII processor/program description. It may be any length<br />

up to ten times the maximum number of characters per line, minus the number of<br />

characters needed for the date/time output fields. (Date/time fields require 41 or<br />

fewer characters, depending on specified options.) The length of this buffer must be<br />

passed to ID$ in character granularity.<br />

• A buffer to contain the ASCII output from ID$. It must be long enough to contain the<br />

entire output string (at most 41 characters longer than the description). ID$ will<br />

space-fill this buffer to its end. The length of the buffer must be passed to ID$ in<br />

word granularity.<br />

• A 36-bit signed integer used to return error codes from ID$ to the calling program.<br />

The above data entities must be declared LOCATABLE. These data entities are passed<br />

to ID$ to create the identification line.<br />

11.2.2. Calling Sequence<br />

The following procedure declaration is required to call the ID$ routine. This procedure<br />

must be declared by the calling program.<br />

PROCEDURE ID_LINE( ID_OUTPUT_ADDRESS: 36 BIT MACHINE POINTER,<br />

ID_OUTPUT_LENGTH: 36 BIT SIGNED INTEGER,<br />

ID_NAME_ADDRESS: 36 BIT MACHINE POINTER,<br />

ID_NAME_LENGTH: 36 BIT SIGNED INTEGER,<br />

ID_DATE: 36 BIT MACHINE LOGICAL,<br />

ID_OPTIONS: 36 BIT SIGNED INTEGER,<br />

%ID_ERROR_CODE: 36 BIT SIGNED INTEGER)<br />

IMPORTED (‘external-name’);<br />

11–8 7833 1733–004

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!