The PreInit table is built using the macros described in this
topic. Therefore, its size is under the control of your application,
not Language Environment.
None of the routines in the PreInit table can be nested routines.
All routines must be external routines.
Language Environment uses the high-order bit of the entry address to determine
what AMODE to use when calling the routine. If the routine_entry is
zero, and the routine_name is supplied, Language Environment uses the AMODE
returned by the system loader. If the routine_entry is supplied,
you must provide the AMODE in the high-order bit of the address.
An add_entry of an XPLINK program into a non-XPLINK preinitialized
sub-environment will be not valid. If the environment is non-XPLINK,
then the subprogram added with the add_entry function must
also be non-XPLINK. However, you can do an add_entry of a
main XPLINK program into a non-XPLINK environment. When a call_main is
done with this scenario the environment will switch to XPLINK in order
to allow the program to run.