PreInit support can be divided into two areas:
- PreInit assembler driver support
Users must create a PreInit
driver that is used to create a PreInit environment. The driver will
setup the PreInit environment, load the PreInit interface CELQPIPI.
CELQPIPI is loaded RMODE(31), AMODE(64). All PreInit requests must
be made from a non-Language Environment-conforming driver (such as
assembler).
The following assembler macros are provided to
be used in the driver to define the PreInit table:
- CELQPIT PreInit table header
- CELQPITY PreInit table entry
- CELQPITS PreInit table end
The driver will be used to invoke the PreInit interface
by using function calls to CELQPIPI using the standard OS linkage
parameter list.
Function calls to CELQPIPI from the customer
PreInit driver:
- init_main
- init_sub
- call_main
- call_sub
- call_sub_addr
- term
- start_seq
- end_seq
- add_entry
- delete_entry
- identify_entry
- identify_attributes
- Application program support running in the PreInit environment.
The
PreInit table contains the names and entry point addresses of each
routine that can be executed within the PreInit environment.
The
applications defined in the PreInit table must be able to run as AMODE
64 (with XPLINK implied).
Languages Supported:
- C
- C++
- Assembler (64-bit Language Environment-conforming assembler)
- Language mix of the above