Mercurial > hg > index.cgi
comparison docs/manual/manual.html @ 254:155799f6cfa5
Add documentation for the FILL pseudo operation
author | William Astle <lost@l-w.ca> |
---|---|
date | Wed, 30 Jan 2013 21:32:14 -0700 |
parents | ed1009bce533 |
children | c4853a54b4a1 |
comparison
equal
deleted
inserted
replaced
253:ed1009bce533 | 254:155799f6cfa5 |
---|---|
130 HREF="#AEN203" | 130 HREF="#AEN203" |
131 >Data Directives</A | 131 >Data Directives</A |
132 ></DT | 132 ></DT |
133 ><DT | 133 ><DT |
134 >3.6.2. <A | 134 >3.6.2. <A |
135 HREF="#AEN306" | 135 HREF="#AEN314" |
136 >Address Definition</A | 136 >Address Definition</A |
137 ></DT | 137 ></DT |
138 ><DT | 138 ><DT |
139 >3.6.3. <A | 139 >3.6.3. <A |
140 HREF="#AEN353" | 140 HREF="#AEN361" |
141 >Conditional Assembly</A | 141 >Conditional Assembly</A |
142 ></DT | 142 ></DT |
143 ><DT | 143 ><DT |
144 >3.6.4. <A | 144 >3.6.4. <A |
145 HREF="#AEN418" | 145 HREF="#AEN426" |
146 >OS9 Target Directives</A | 146 >OS9 Target Directives</A |
147 ></DT | 147 ></DT |
148 ><DT | 148 ><DT |
149 >3.6.5. <A | 149 >3.6.5. <A |
150 HREF="#AEN443" | 150 HREF="#AEN451" |
151 >Miscelaneous Directives</A | 151 >Miscelaneous Directives</A |
152 ></DT | 152 ></DT |
153 ></DL | 153 ></DL |
154 ></DD | 154 ></DD |
155 ><DT | 155 ><DT |
156 >3.7. <A | 156 >3.7. <A |
157 HREF="#AEN483" | 157 HREF="#AEN491" |
158 >Macros</A | 158 >Macros</A |
159 ></DT | 159 ></DT |
160 ><DT | 160 ><DT |
161 >3.8. <A | 161 >3.8. <A |
162 HREF="#AEN506" | 162 HREF="#AEN514" |
163 >Structures</A | 163 >Structures</A |
164 ></DT | 164 ></DT |
165 ><DT | 165 ><DT |
166 >3.9. <A | 166 >3.9. <A |
167 HREF="#AEN527" | 167 HREF="#AEN535" |
168 >Object Files and Sections</A | 168 >Object Files and Sections</A |
169 ></DT | 169 ></DT |
170 ><DT | 170 ><DT |
171 >3.10. <A | 171 >3.10. <A |
172 HREF="#AEN591" | 172 HREF="#AEN599" |
173 >Assembler Modes and Pragmas</A | 173 >Assembler Modes and Pragmas</A |
174 ></DT | 174 ></DT |
175 ></DL | 175 ></DL |
176 ></DD | 176 ></DD |
177 ><DT | 177 ><DT |
178 >4. <A | 178 >4. <A |
179 HREF="#AEN685" | 179 HREF="#AEN693" |
180 >LWLINK</A | 180 >LWLINK</A |
181 ></DT | 181 ></DT |
182 ><DD | 182 ><DD |
183 ><DL | 183 ><DL |
184 ><DT | 184 ><DT |
185 >4.1. <A | 185 >4.1. <A |
186 HREF="#AEN688" | 186 HREF="#AEN696" |
187 >Command Line Options</A | 187 >Command Line Options</A |
188 ></DT | 188 ></DT |
189 ><DT | 189 ><DT |
190 >4.2. <A | 190 >4.2. <A |
191 HREF="#AEN785" | 191 HREF="#AEN793" |
192 >Linker Operation</A | 192 >Linker Operation</A |
193 ></DT | 193 ></DT |
194 ><DT | 194 ><DT |
195 >4.3. <A | 195 >4.3. <A |
196 HREF="#AEN799" | 196 HREF="#AEN807" |
197 >Linking Scripts</A | 197 >Linking Scripts</A |
198 ></DT | 198 ></DT |
199 ><DT | 199 ><DT |
200 >4.4. <A | 200 >4.4. <A |
201 HREF="#AEN856" | 201 HREF="#AEN864" |
202 >Format Specific Linking Notes</A | 202 >Format Specific Linking Notes</A |
203 ></DT | 203 ></DT |
204 ><DD | 204 ><DD |
205 ><DL | 205 ><DL |
206 ><DT | 206 ><DT |
207 >4.4.1. <A | 207 >4.4.1. <A |
208 HREF="#AEN859" | 208 HREF="#AEN867" |
209 >OS9 Modules</A | 209 >OS9 Modules</A |
210 ></DT | 210 ></DT |
211 ></DL | 211 ></DL |
212 ></DD | 212 ></DD |
213 ></DL | 213 ></DL |
214 ></DD | 214 ></DD |
215 ><DT | 215 ><DT |
216 >5. <A | 216 >5. <A |
217 HREF="#AEN871" | 217 HREF="#AEN879" |
218 >Libraries and LWAR</A | 218 >Libraries and LWAR</A |
219 ></DT | 219 ></DT |
220 ><DD | 220 ><DD |
221 ><DL | 221 ><DL |
222 ><DT | 222 ><DT |
223 >5.1. <A | 223 >5.1. <A |
224 HREF="#AEN875" | 224 HREF="#AEN883" |
225 >Command Line Options</A | 225 >Command Line Options</A |
226 ></DT | 226 ></DT |
227 ></DL | 227 ></DL |
228 ></DD | 228 ></DD |
229 ><DT | 229 ><DT |
241 ><B | 241 ><B |
242 >List of Tables</B | 242 >List of Tables</B |
243 ></DT | 243 ></DT |
244 ><DT | 244 ><DT |
245 >6-1. <A | 245 >6-1. <A |
246 HREF="#AEN958" | 246 HREF="#AEN966" |
247 >Object File Term Types</A | 247 >Object File Term Types</A |
248 ></DT | 248 ></DT |
249 ><DT | 249 ><DT |
250 >6-2. <A | 250 >6-2. <A |
251 HREF="#AEN988" | 251 HREF="#AEN996" |
252 >Object File Operator Numbers</A | 252 >Object File Operator Numbers</A |
253 ></DT | 253 ></DT |
254 ></DL | 254 ></DL |
255 ></DIV | 255 ></DIV |
256 ><DIV | 256 ><DIV |
1062 ><P | 1062 ><P |
1063 > Please note that absolute path detection including drive letters will | 1063 > Please note that absolute path detection including drive letters will |
1064 not function correctly on Windows platforms. Non-absolute inclusion will | 1064 not function correctly on Windows platforms. Non-absolute inclusion will |
1065 work, however.</P | 1065 work, however.</P |
1066 ></DD | 1066 ></DD |
1067 ><DT | |
1068 >FILL <CODE | |
1069 CLASS="PARAMETER" | |
1070 >size</CODE | |
1071 >,<CODE | |
1072 CLASS="PARAMETER" | |
1073 >byte</CODE | |
1074 ></DT | |
1075 ><DD | |
1076 ><P | |
1077 >Insert <CODE | |
1078 CLASS="PARAMETER" | |
1079 >size</CODE | |
1080 > bytes of <CODE | |
1081 CLASS="PARAMETER" | |
1082 >byte</CODE | |
1083 >.</P | |
1084 ></DD | |
1067 ></DL | 1085 ></DL |
1068 ></DIV | 1086 ></DIV |
1069 ></DIV | 1087 ></DIV |
1070 ><DIV | 1088 ><DIV |
1071 CLASS="SECTION" | 1089 CLASS="SECTION" |
1072 ><HR><H3 | 1090 ><HR><H3 |
1073 CLASS="SECTION" | 1091 CLASS="SECTION" |
1074 ><A | 1092 ><A |
1075 NAME="AEN306" | 1093 NAME="AEN314" |
1076 >3.6.2. Address Definition</A | 1094 >3.6.2. Address Definition</A |
1077 ></H3 | 1095 ></H3 |
1078 ><P | 1096 ><P |
1079 >The directives in this section all control the addresses of symbols | 1097 >The directives in this section all control the addresses of symbols |
1080 or the assembly process itself.</P | 1098 or the assembly process itself.</P |
1206 ><DIV | 1224 ><DIV |
1207 CLASS="SECTION" | 1225 CLASS="SECTION" |
1208 ><HR><H3 | 1226 ><HR><H3 |
1209 CLASS="SECTION" | 1227 CLASS="SECTION" |
1210 ><A | 1228 ><A |
1211 NAME="AEN353" | 1229 NAME="AEN361" |
1212 >3.6.3. Conditional Assembly</A | 1230 >3.6.3. Conditional Assembly</A |
1213 ></H3 | 1231 ></H3 |
1214 ><P | 1232 ><P |
1215 >Portions of the source code can be excluded or included based on conditions | 1233 >Portions of the source code can be excluded or included based on conditions |
1216 known at assembly time. Conditionals can be nested arbitrarily deeply. The | 1234 known at assembly time. Conditionals can be nested arbitrarily deeply. The |
1369 ><DIV | 1387 ><DIV |
1370 CLASS="SECTION" | 1388 CLASS="SECTION" |
1371 ><HR><H3 | 1389 ><HR><H3 |
1372 CLASS="SECTION" | 1390 CLASS="SECTION" |
1373 ><A | 1391 ><A |
1374 NAME="AEN418" | 1392 NAME="AEN426" |
1375 >3.6.4. OS9 Target Directives</A | 1393 >3.6.4. OS9 Target Directives</A |
1376 ></H3 | 1394 ></H3 |
1377 ><P | 1395 ><P |
1378 >This section includes directives that apply solely to the OS9 | 1396 >This section includes directives that apply solely to the OS9 |
1379 target.</P | 1397 target.</P |
1436 ><DIV | 1454 ><DIV |
1437 CLASS="SECTION" | 1455 CLASS="SECTION" |
1438 ><HR><H3 | 1456 ><HR><H3 |
1439 CLASS="SECTION" | 1457 CLASS="SECTION" |
1440 ><A | 1458 ><A |
1441 NAME="AEN443" | 1459 NAME="AEN451" |
1442 >3.6.5. Miscelaneous Directives</A | 1460 >3.6.5. Miscelaneous Directives</A |
1443 ></H3 | 1461 ></H3 |
1444 ><P | 1462 ><P |
1445 >This section includes directives that do not fit into the other | 1463 >This section includes directives that do not fit into the other |
1446 categories.</P | 1464 categories.</P |
1550 ><DIV | 1568 ><DIV |
1551 CLASS="SECTION" | 1569 CLASS="SECTION" |
1552 ><HR><H2 | 1570 ><HR><H2 |
1553 CLASS="SECTION" | 1571 CLASS="SECTION" |
1554 ><A | 1572 ><A |
1555 NAME="AEN483" | 1573 NAME="AEN491" |
1556 >3.7. Macros</A | 1574 >3.7. Macros</A |
1557 ></H2 | 1575 ></H2 |
1558 ><P | 1576 ><P |
1559 >LWASM is a macro assembler. A macro is simply a name that stands in for a | 1577 >LWASM is a macro assembler. A macro is simply a name that stands in for a |
1560 series of instructions. Once a macro is defined, it is used like any other | 1578 series of instructions. Once a macro is defined, it is used like any other |
1649 ><DIV | 1667 ><DIV |
1650 CLASS="SECTION" | 1668 CLASS="SECTION" |
1651 ><HR><H2 | 1669 ><HR><H2 |
1652 CLASS="SECTION" | 1670 CLASS="SECTION" |
1653 ><A | 1671 ><A |
1654 NAME="AEN506" | 1672 NAME="AEN514" |
1655 >3.8. Structures</A | 1673 >3.8. Structures</A |
1656 ></H2 | 1674 ></H2 |
1657 ><P | 1675 ><P |
1658 > Structures are used to group related data in a fixed structure. A structure | 1676 > Structures are used to group related data in a fixed structure. A structure |
1659 consists a number of fields, defined in sequential order and which take up | 1677 consists a number of fields, defined in sequential order and which take up |
1742 ><DIV | 1760 ><DIV |
1743 CLASS="SECTION" | 1761 CLASS="SECTION" |
1744 ><HR><H2 | 1762 ><HR><H2 |
1745 CLASS="SECTION" | 1763 CLASS="SECTION" |
1746 ><A | 1764 ><A |
1747 NAME="AEN527" | 1765 NAME="AEN535" |
1748 >3.9. Object Files and Sections</A | 1766 >3.9. Object Files and Sections</A |
1749 ></H2 | 1767 ></H2 |
1750 ><P | 1768 ><P |
1751 >The object file target is very useful for large project because it allows | 1769 >The object file target is very useful for large project because it allows |
1752 multiple files to be assembled independently and then linked into the final | 1770 multiple files to be assembled independently and then linked into the final |
1959 ><DIV | 1977 ><DIV |
1960 CLASS="SECTION" | 1978 CLASS="SECTION" |
1961 ><HR><H2 | 1979 ><HR><H2 |
1962 CLASS="SECTION" | 1980 CLASS="SECTION" |
1963 ><A | 1981 ><A |
1964 NAME="AEN591" | 1982 NAME="AEN599" |
1965 >3.10. Assembler Modes and Pragmas</A | 1983 >3.10. Assembler Modes and Pragmas</A |
1966 ></H2 | 1984 ></H2 |
1967 ><P | 1985 ><P |
1968 >There are a number of options that affect the way assembly is performed. | 1986 >There are a number of options that affect the way assembly is performed. |
1969 Some of these options can only be specified on the command line because | 1987 Some of these options can only be specified on the command line because |
2234 ></DIV | 2252 ></DIV |
2235 ><DIV | 2253 ><DIV |
2236 CLASS="CHAPTER" | 2254 CLASS="CHAPTER" |
2237 ><HR><H1 | 2255 ><HR><H1 |
2238 ><A | 2256 ><A |
2239 NAME="AEN685" | 2257 NAME="AEN693" |
2240 ></A | 2258 ></A |
2241 >Chapter 4. LWLINK</H1 | 2259 >Chapter 4. LWLINK</H1 |
2242 ><P | 2260 ><P |
2243 >The LWTOOLS linker is called LWLINK. This chapter documents the various features | 2261 >The LWTOOLS linker is called LWLINK. This chapter documents the various features |
2244 of the linker.</P | 2262 of the linker.</P |
2245 ><DIV | 2263 ><DIV |
2246 CLASS="SECTION" | 2264 CLASS="SECTION" |
2247 ><HR><H2 | 2265 ><HR><H2 |
2248 CLASS="SECTION" | 2266 CLASS="SECTION" |
2249 ><A | 2267 ><A |
2250 NAME="AEN688" | 2268 NAME="AEN696" |
2251 >4.1. Command Line Options</A | 2269 >4.1. Command Line Options</A |
2252 ></H2 | 2270 ></H2 |
2253 ><P | 2271 ><P |
2254 >The binary for LWLINK is called "lwlink". Note that the binary is in lower | 2272 >The binary for LWLINK is called "lwlink". Note that the binary is in lower |
2255 case. lwlink takes the following command line arguments.</P | 2273 case. lwlink takes the following command line arguments.</P |
2442 ><DIV | 2460 ><DIV |
2443 CLASS="SECTION" | 2461 CLASS="SECTION" |
2444 ><HR><H2 | 2462 ><HR><H2 |
2445 CLASS="SECTION" | 2463 CLASS="SECTION" |
2446 ><A | 2464 ><A |
2447 NAME="AEN785" | 2465 NAME="AEN793" |
2448 >4.2. Linker Operation</A | 2466 >4.2. Linker Operation</A |
2449 ></H2 | 2467 ></H2 |
2450 ><P | 2468 ><P |
2451 > LWLINK takes one or more files in supported input formats and links them | 2469 > LWLINK takes one or more files in supported input formats and links them |
2452 into a single binary. Currently supported formats are the LWTOOLS object | 2470 into a single binary. Currently supported formats are the LWTOOLS object |
2498 ><DIV | 2516 ><DIV |
2499 CLASS="SECTION" | 2517 CLASS="SECTION" |
2500 ><HR><H2 | 2518 ><HR><H2 |
2501 CLASS="SECTION" | 2519 CLASS="SECTION" |
2502 ><A | 2520 ><A |
2503 NAME="AEN799" | 2521 NAME="AEN807" |
2504 >4.3. Linking Scripts</A | 2522 >4.3. Linking Scripts</A |
2505 ></H2 | 2523 ></H2 |
2506 ><P | 2524 ><P |
2507 >A linker script is used to instruct the linker about how to assemble the | 2525 >A linker script is used to instruct the linker about how to assemble the |
2508 various sections into a completed binary. It consists of a series of | 2526 various sections into a completed binary. It consists of a series of |
2676 ><DIV | 2694 ><DIV |
2677 CLASS="SECTION" | 2695 CLASS="SECTION" |
2678 ><HR><H2 | 2696 ><HR><H2 |
2679 CLASS="SECTION" | 2697 CLASS="SECTION" |
2680 ><A | 2698 ><A |
2681 NAME="AEN856" | 2699 NAME="AEN864" |
2682 >4.4. Format Specific Linking Notes</A | 2700 >4.4. Format Specific Linking Notes</A |
2683 ></H2 | 2701 ></H2 |
2684 ><P | 2702 ><P |
2685 >Some formats require special information to be able to generate actual | 2703 >Some formats require special information to be able to generate actual |
2686 binaries. If the specific format you are interested in is not listed in | 2704 binaries. If the specific format you are interested in is not listed in |
2689 ><DIV | 2707 ><DIV |
2690 CLASS="SECTION" | 2708 CLASS="SECTION" |
2691 ><HR><H3 | 2709 ><HR><H3 |
2692 CLASS="SECTION" | 2710 CLASS="SECTION" |
2693 ><A | 2711 ><A |
2694 NAME="AEN859" | 2712 NAME="AEN867" |
2695 >4.4.1. OS9 Modules</A | 2713 >4.4.1. OS9 Modules</A |
2696 ></H3 | 2714 ></H3 |
2697 ><P | 2715 ><P |
2698 >OS9 modules need to embed several items into the module header. These | 2716 >OS9 modules need to embed several items into the module header. These |
2699 items are the type of module, the langauge of the module, the module | 2717 items are the type of module, the langauge of the module, the module |
2765 ></DIV | 2783 ></DIV |
2766 ><DIV | 2784 ><DIV |
2767 CLASS="CHAPTER" | 2785 CLASS="CHAPTER" |
2768 ><HR><H1 | 2786 ><HR><H1 |
2769 ><A | 2787 ><A |
2770 NAME="AEN871" | 2788 NAME="AEN879" |
2771 ></A | 2789 ></A |
2772 >Chapter 5. Libraries and LWAR</H1 | 2790 >Chapter 5. Libraries and LWAR</H1 |
2773 ><P | 2791 ><P |
2774 >LWTOOLS also includes a tool for managing libraries. These are analogous to | 2792 >LWTOOLS also includes a tool for managing libraries. These are analogous to |
2775 the static libraries created with the "ar" tool on POSIX systems. Each library | 2793 the static libraries created with the "ar" tool on POSIX systems. Each library |
2784 ><DIV | 2802 ><DIV |
2785 CLASS="SECTION" | 2803 CLASS="SECTION" |
2786 ><HR><H2 | 2804 ><HR><H2 |
2787 CLASS="SECTION" | 2805 CLASS="SECTION" |
2788 ><A | 2806 ><A |
2789 NAME="AEN875" | 2807 NAME="AEN883" |
2790 >5.1. Command Line Options</A | 2808 >5.1. Command Line Options</A |
2791 ></H2 | 2809 ></H2 |
2792 ><P | 2810 ><P |
2793 >The binary for LWAR is called "lwar". Note that the binary is in lower | 2811 >The binary for LWAR is called "lwar". Note that the binary is in lower |
2794 case. The options lwar understands are listed below. For archive manipulation | 2812 case. The options lwar understands are listed below. For archive manipulation |
2985 followed by any data required by the term. Then end of the list is flagged | 3003 followed by any data required by the term. Then end of the list is flagged |
2986 by a NULL expression (only an end of expression term).</P | 3004 by a NULL expression (only an end of expression term).</P |
2987 ><DIV | 3005 ><DIV |
2988 CLASS="TABLE" | 3006 CLASS="TABLE" |
2989 ><A | 3007 ><A |
2990 NAME="AEN958" | 3008 NAME="AEN966" |
2991 ></A | 3009 ></A |
2992 ><P | 3010 ><P |
2993 ><B | 3011 ><B |
2994 >Table 6-1. Object File Term Types</B | 3012 >Table 6-1. Object File Term Types</B |
2995 ></P | 3013 ></P |
3057 allows local symbols that are not exported to have the same names as | 3075 allows local symbols that are not exported to have the same names as |
3058 exported symbols or external references.</P | 3076 exported symbols or external references.</P |
3059 ><DIV | 3077 ><DIV |
3060 CLASS="TABLE" | 3078 CLASS="TABLE" |
3061 ><A | 3079 ><A |
3062 NAME="AEN988" | 3080 NAME="AEN996" |
3063 ></A | 3081 ></A |
3064 ><P | 3082 ><P |
3065 ><B | 3083 ><B |
3066 >Table 6-2. Object File Operator Numbers</B | 3084 >Table 6-2. Object File Operator Numbers</B |
3067 ></P | 3085 ></P |