<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to F$Link</title><link>https://sourceforge.net/p/nitros9/wiki/F%2524Link/</link><description>Recent changes to F$Link</description><atom:link href="https://sourceforge.net/p/nitros9/wiki/F$Link/feed" rel="self"/><language>en</language><lastBuildDate>Fri, 27 Jun 2014 23:18:26 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/nitros9/wiki/F$Link/feed" rel="self" type="application/rss+xml"/><item><title>F$Link modified by Lothan</title><link>https://sourceforge.net/p/nitros9/wiki/F%2524Link/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;&lt;strong&gt;Link&lt;/strong&gt;&lt;br /&gt;
&lt;strong&gt;Links to a memory module that has the specified name, language, and type&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;OS9 F$Link 103F 00&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Entry Conditions&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A &lt;br /&gt;
&lt;em&gt;type/language byte&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;X &lt;br /&gt;
&lt;em&gt;address of the module name&lt;/em&gt; (See the following example) &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Exit Conditions&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A &lt;br /&gt;
&lt;em&gt;type/language code&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;B &lt;br /&gt;
&lt;em&gt;attributes / revision level&lt;/em&gt; (if no error) &lt;/p&gt;
&lt;p&gt;X &lt;br /&gt;
&lt;em&gt;address of the last byte of the module name&lt;/em&gt; + 1 (See the following example) &lt;/p&gt;
&lt;p&gt;Y &lt;br /&gt;
&lt;em&gt;absolute address of the module’s execution entry point&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;U &lt;br /&gt;
&lt;em&gt;module header absolute address&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Error Output&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;CC &lt;br /&gt;
carry set on error &lt;/p&gt;
&lt;p&gt;B &lt;br /&gt;
&lt;em&gt;error code&lt;/em&gt; (if any) &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Additional Information&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;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. &lt;/li&gt;
&lt;li&gt;If the module requested is not shareable (not re-entrant), only one process can link to it at a time. &lt;/li&gt;
&lt;li&gt;Before the Link call: &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;T &lt;br /&gt;
E &lt;br /&gt;
S &lt;br /&gt;
T &lt;br /&gt;
$0D &lt;/p&gt;
&lt;p&gt;^ &lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;After the Link call: &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;T &lt;br /&gt;
E &lt;br /&gt;
S &lt;br /&gt;
T &lt;br /&gt;
$0D &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
&amp;nbsp;&lt;br /&gt;
^ &lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;This is the order in which the Link call operates: &lt;ol&gt;
&lt;li&gt;NitrOS-9 searches the module directory for a module that has the specified name, language, and type. &lt;/li&gt;
&lt;li&gt;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.) &lt;/li&gt;
&lt;li&gt;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: &lt;/li&gt;
&lt;li&gt;Module not found &lt;/li&gt;
&lt;li&gt;Module busy (not shareable and in use) &lt;/li&gt;
&lt;li&gt;Incorrect or defective module header &lt;/li&gt;
&lt;/ol&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;em&gt;krn&lt;/em&gt;&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Lothan</dc:creator><pubDate>Fri, 27 Jun 2014 23:18:26 -0000</pubDate><guid>https://sourceforge.net0c4c6516539f3eeb93cf6fa03f4b8c37ac8df4f9</guid></item></channel></rss>