The acquire_program call – IBM SC33-1683-02 User Manual

Page 357

Advertising
background image

The ACQUIRE_PROGRAM call

ACQUIRE_PROGRAM returns the entry and load point addresses, the length, and
a new program token for a usable copy of the named program, which can be
identified by either its name or a program token.

ACQUIRE_PROGRAM

DFHLDLDX [CALL,]

[CLEAR,]

[IN,

FUNCTION(ACQUIRE_PROGRAM),

{PROGRAM_NAME(name8 | string | 'string')|

PROGRAM_TOKEN(name4)},

[SUSPEND(NO|YES),]]

[OUT,

ENTRY_POINT(name4 | (Ra)),

[LOAD_POINT(name4 | (Ra)),]

[NEW_PROGRAM_TOKEN(name4),]

[PROGRAM_ATTRIBUTE(name1 | (Rn)),]

[PROGRAM_LENGTH(name4 | (Rn)),]

RESPONSE(name1 | *),

REASON(name1 | *)]

ENTRY_POINT(name4 | (Ra))

returns the program’s entry point address.

name4

The name of a 4-byte location to receive the 31-bit entry address

(Ra)

A register to receive the entry address.

LOAD_POINT(name4 | (Ra))

returns the program’s load point address.

name4

The name of a 4-byte location to receive the loaded address

(Ra)

A register that is to contain the load address.

NEW_PROGRAM_TOKEN(name4)

returns the new program token for a usable copy of the named program.

name4

The name of a location to receive a 4-byte token that identifies this
program and instance.

PROGRAM_ATTRIBUTE(name1 | (Rn))

returns the program attribute.

name1

The name of a 1-byte location to receive the program attribute.

(Rn)

A register in which the low-order byte receives the program attribute
and the other bytes are set to zero. It can have the values RELOAD,
RESIDENT, REUSABLE, or TRANSIENT.

RELOAD

The program is not reusable, and therefore several copies of
the program may be loaded. A copy is removed from storage
when a RELEASE_PROGRAM call (for that copy) is issued.

RESIDENT

There is a single copy of the program that is not removed from

loader functions

Chapter 3. The user exit programming interface (XPI)

325

Advertising