annotate docs/manual/x1007.html @ 495:5b8871fd7503

Merged previous lwcc development branch into mainline.
author William Astle <lost@l-w.ca>
date Mon, 05 Aug 2019 21:27:09 -0600
parents 52af0aa54fe5
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
489
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
2 <HTML
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
3 ><HEAD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
4 ><TITLE
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
5 >Format Specific Linking Notes</TITLE
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
6 ><META
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
7 NAME="GENERATOR"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
8 CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
9 REL="HOME"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
10 TITLE="LW Tool Chain"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
11 HREF="index.html"><LINK
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
12 REL="UP"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
13 TITLE="LWLINK"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
14 HREF="c827.html"><LINK
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
15 REL="PREVIOUS"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
16 TITLE="Linking Scripts"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
17 HREF="x941.html"><LINK
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
18 REL="NEXT"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
19 TITLE="Libraries and LWAR"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
20 HREF="c1022.html"></HEAD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
21 ><BODY
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
22 CLASS="SECTION"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
23 BGCOLOR="#FFFFFF"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
24 TEXT="#000000"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
25 LINK="#0000FF"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
26 VLINK="#840084"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
27 ALINK="#0000FF"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
28 ><DIV
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
29 CLASS="NAVHEADER"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
30 ><TABLE
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
31 SUMMARY="Header navigation table"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
32 WIDTH="100%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
33 BORDER="0"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
34 CELLPADDING="0"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
35 CELLSPACING="0"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
36 ><TR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
37 ><TH
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
38 COLSPAN="3"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
39 ALIGN="center"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
40 >LW Tool Chain</TH
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
41 ></TR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
42 ><TR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
43 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
44 WIDTH="10%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
45 ALIGN="left"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
46 VALIGN="bottom"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
47 ><A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
48 HREF="x941.html"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
49 ACCESSKEY="P"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
50 >Prev</A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
51 ></TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
52 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
53 WIDTH="80%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
54 ALIGN="center"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
55 VALIGN="bottom"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
56 >Chapter 4. LWLINK</TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
57 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
58 WIDTH="10%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
59 ALIGN="right"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
60 VALIGN="bottom"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
61 ><A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
62 HREF="c1022.html"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
63 ACCESSKEY="N"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
64 >Next</A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
65 ></TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
66 ></TR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
67 ></TABLE
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
68 ><HR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
69 ALIGN="LEFT"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
70 WIDTH="100%"></DIV
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
71 ><DIV
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
72 CLASS="SECTION"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
73 ><H1
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
74 CLASS="SECTION"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
75 ><A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
76 NAME="AEN1007"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
77 >4.4. Format Specific Linking Notes</A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
78 ></H1
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
79 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
80 >Some formats require special information to be able to generate actual
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
81 binaries. If the specific format you are interested in is not listed in
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
82 this section, then there is nothing special you need to know about to create
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
83 a final binary.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
84 ><DIV
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
85 CLASS="SECTION"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
86 ><H2
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
87 CLASS="SECTION"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
88 ><A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
89 NAME="AEN1010"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
90 >4.4.1. OS9 Modules</A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
91 ></H2
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
92 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
93 >OS9 modules need to embed several items into the module header. These
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
94 items are the type of module, the langauge of the module, the module
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
95 attributes, the module revision number, the data size (bss), and the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
96 execution offset. These are all either calculated or default to reasonable
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
97 values.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
98 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
99 >The data size is calcuated as the sum of all sections named "bss" or
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
100 ".bss" in all object files that are linked together.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
101 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
102 >The execution offset is calculated from the address of the special
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
103 symbol "__start" which must be an exported (external) symbol in one of the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
104 objects to be linked.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
105 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
106 >The type defaults to "Prgrm" or "Program module". The language
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
107 defaults to "Objct" or "6809 object code". Attributes default to enabling
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
108 the re-entrant flag. And finally, the revision defaults to zero.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
109 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
110 >The embedded module name is the output filename. If the output
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
111 filename includes more than just the filename, this will probably not be
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
112 what you want.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
113 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
114 >The type, language, attributes, revision, and module name can all be
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
115 overridden by providing a special section in exactly one of the object files
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
116 to be linked. This section is called "__os9" (note the two underscores).
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
117 To override the type, language, attributes, or revision values, define a
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
118 non-exported symbol in this section called "type", "lang", "attr", or "rev"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
119 respectively. Any other symbols defined are ignored. To override the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
120 module name, include as the only actual code in the section a NUL terminated
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
121 string (the FCN directive is useful for this). If there is no code in the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
122 section or it beings with a NUL, the default name will be used. Any of the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
123 preceeding that are not defined in the special section will retain their
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
124 default values.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
125 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
126 >The built-in link script for OS9 modules will place the following
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
127 sections, in order, in the module: "code", ".text", "data", ".data". It
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
128 will merge all sections with the name "bss" or ".bss" into the "data"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
129 section. All other section names are ignored. What this means is that you
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
130 must define your data variables in the a section called "bss" or ".bss" even
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
131 though you will be refencing them all as offsets from U. This does have the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
132 unpleasant side effect that all BSS references will end up being 16 bit
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
133 offsets because the assembler cannot know what the offset will be once the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
134 linker is finished its work. Thus, if the tightest possible code is
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
135 required, having LWASM directly output the module is a better choice.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
136 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
137 >While the built-in link script is probably sufficient for most
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
138 purposes, you can provide your own script. If you provide a custom link
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
139 script, you must start your code and data sections at location 000D to
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
140 accommodate the module header. Otherwise, you will have an incorrect
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
141 location for the execution offset. You must use the ENTRY directive in the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
142 script to define the entry point for the module.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
143 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
144 >It should also be obvious from the above that you cannot mix the bss
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
145 (rmb) definitions with the module code when linking separately. Those
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
146 familiar with typical module creation will probably find this an unpleasant
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
147 difference but it is unavoidable.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
148 ><P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
149 >It should also be noted that direct page references should also be
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
150 avoided because you cannot know ahead of time whether the linker is going to
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
151 end up putting a particular variable in the first 256 bytes of the module's
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
152 data space. If, however, you know for certain you will have less than 256
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
153 bytes of defined data space across all of the object files that will be
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
154 linked, you can instead use forced DP addressing for your data addresses
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
155 instead of the ,u notation. When linking with 3rd party libraries, this
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
156 practice should be avoided. Also, when creating libraries, always use the
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
157 offset from U technique.</P
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
158 ></DIV
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
159 ></DIV
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
160 ><DIV
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
161 CLASS="NAVFOOTER"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
162 ><HR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
163 ALIGN="LEFT"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
164 WIDTH="100%"><TABLE
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
165 SUMMARY="Footer navigation table"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
166 WIDTH="100%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
167 BORDER="0"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
168 CELLPADDING="0"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
169 CELLSPACING="0"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
170 ><TR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
171 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
172 WIDTH="33%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
173 ALIGN="left"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
174 VALIGN="top"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
175 ><A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
176 HREF="x941.html"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
177 ACCESSKEY="P"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
178 >Prev</A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
179 ></TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
180 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
181 WIDTH="34%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
182 ALIGN="center"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
183 VALIGN="top"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
184 ><A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
185 HREF="index.html"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
186 ACCESSKEY="H"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
187 >Home</A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
188 ></TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
189 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
190 WIDTH="33%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
191 ALIGN="right"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
192 VALIGN="top"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
193 ><A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
194 HREF="c1022.html"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
195 ACCESSKEY="N"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
196 >Next</A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
197 ></TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
198 ></TR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
199 ><TR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
200 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
201 WIDTH="33%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
202 ALIGN="left"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
203 VALIGN="top"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
204 >Linking Scripts</TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
205 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
206 WIDTH="34%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
207 ALIGN="center"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
208 VALIGN="top"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
209 ><A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
210 HREF="c827.html"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
211 ACCESSKEY="U"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
212 >Up</A
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
213 ></TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
214 ><TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
215 WIDTH="33%"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
216 ALIGN="right"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
217 VALIGN="top"
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
218 >Libraries and LWAR</TD
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
219 ></TR
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
220 ></TABLE
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
221 ></DIV
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
222 ></BODY
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
223 ></HTML
52af0aa54fe5 Update html and pdf documentation in preparation for release
William Astle <lost@l-w.ca>
parents:
diff changeset
224 >