F$Link

Link
Links to a memory module that has the specified name, language, and type

OS9 F$Link 103F 00

Entry Conditions

A
type/language byte

X
address of the module name (See the following example)

Exit Conditions

A
type/language code

B
attributes / revision level (if no error)

X
address of the last byte of the module name + 1 (See the following example)

Y
absolute address of the module’s execution entry point

U
module header absolute address

Error Output

CC
carry set on error

B
error code (if any)

Additional Information

  • The module’s link count increases by one whenever Link references its name. Incrementing in this manner keeps track of how many processes are using the module.
  • If the module requested is not shareable (not re-entrant), only one process can link to it at a time.
  • Before the Link call:

T
E
S
T
$0D

^
 
 
 
 

  • After the Link call:

T
E
S
T
$0D

 
 
 
 
^

  • This is the order in which the Link call operates:
    1. NitrOS-9 searches the module directory for a module that has the specified name, language, and type.
    2. If NitrOS-9 finds the module, the address of the module’s header is returned in Register U and the absolute address of the module’s execution entry point is returned in Register Y. (This, and other information, is contained in the module header.)
    3. If NitrOS-9 does not find the module or if the type/language codes in the entry and exit conditions do not math, NitrOS-9 returns one of the following errors:
    4. Module not found
    5. Module busy (not shareable and in use)
    6. Incorrect or defective module header

krn


MongoDB Logo MongoDB