comparison docs/manual/manual.html @ 333:507f442dc71e

Add support for 6800 compatibility instructions. The occasional program uses the 6800 compatibility instructions since they are actually specified by Motorola in at least some documentation. They advertised the 6809 as source compatible with the 6800. This mode is not enabled by default, however. It is my belief that receiving an error when using a non-6809 instruction is more useful since it is unlikely that much 6800 source code is being assembled for the 6809 these days. Nevertheless, the --6809compat option is present for just those purposes so one does not have to resort to using macros (which would work equally well in most cases).
author William Astle <lost@l-w.ca>
date Tue, 15 Apr 2014 10:57:34 -0600
parents b30091890d62
children e95f07cbce4e
comparison
equal deleted inserted replaced
332:26bfe8d557e2 333:507f442dc71e
119 HREF="#AEN65" 119 HREF="#AEN65"
120 >Command Line Options</A 120 >Command Line Options</A
121 ></DT 121 ></DT
122 ><DT 122 ><DT
123 >3.2. <A 123 >3.2. <A
124 HREF="#AEN190" 124 HREF="#AEN197"
125 >Dialects</A 125 >Dialects</A
126 ></DT 126 ></DT
127 ><DT 127 ><DT
128 >3.3. <A 128 >3.3. <A
129 HREF="#AEN197" 129 HREF="#AEN206"
130 >Source Format</A 130 >Source Format</A
131 ></DT 131 ></DT
132 ><DT 132 ><DT
133 >3.4. <A 133 >3.4. <A
134 HREF="#AEN207" 134 HREF="#AEN216"
135 >Symbols</A 135 >Symbols</A
136 ></DT 136 ></DT
137 ><DT 137 ><DT
138 >3.5. <A 138 >3.5. <A
139 HREF="#AEN212" 139 HREF="#AEN221"
140 >Numbers and Expressions</A 140 >Numbers and Expressions</A
141 ></DT 141 ></DT
142 ><DT 142 ><DT
143 >3.6. <A 143 >3.6. <A
144 HREF="#AEN220" 144 HREF="#AEN229"
145 >Assembler Directives</A 145 >Assembler Directives</A
146 ></DT 146 ></DT
147 ><DD 147 ><DD
148 ><DL 148 ><DL
149 ><DT 149 ><DT
150 >3.6.1. <A 150 >3.6.1. <A
151 HREF="#AEN223" 151 HREF="#AEN232"
152 >Data Directives</A 152 >Data Directives</A
153 ></DT 153 ></DT
154 ><DT 154 ><DT
155 >3.6.2. <A 155 >3.6.2. <A
156 HREF="#AEN334" 156 HREF="#AEN343"
157 >Address Definition</A 157 >Address Definition</A
158 ></DT 158 ></DT
159 ><DT 159 ><DT
160 >3.6.3. <A 160 >3.6.3. <A
161 HREF="#AEN381" 161 HREF="#AEN390"
162 >Conditional Assembly</A 162 >Conditional Assembly</A
163 ></DT 163 ></DT
164 ><DT 164 ><DT
165 >3.6.4. <A 165 >3.6.4. <A
166 HREF="#AEN446" 166 HREF="#AEN455"
167 >OS9 Target Directives</A 167 >OS9 Target Directives</A
168 ></DT 168 ></DT
169 ><DT 169 ><DT
170 >3.6.5. <A 170 >3.6.5. <A
171 HREF="#AEN471" 171 HREF="#AEN480"
172 >Miscelaneous Directives</A 172 >Miscelaneous Directives</A
173 ></DT 173 ></DT
174 ></DL 174 ></DL
175 ></DD 175 ></DD
176 ><DT 176 ><DT
177 >3.7. <A 177 >3.7. <A
178 HREF="#AEN511" 178 HREF="#AEN520"
179 >Macros</A 179 >Macros</A
180 ></DT 180 ></DT
181 ><DT 181 ><DT
182 >3.8. <A 182 >3.8. <A
183 HREF="#AEN534" 183 HREF="#AEN543"
184 >Structures</A 184 >Structures</A
185 ></DT 185 ></DT
186 ><DT 186 ><DT
187 >3.9. <A 187 >3.9. <A
188 HREF="#AEN555" 188 HREF="#AEN564"
189 >Object Files and Sections</A 189 >Object Files and Sections</A
190 ></DT 190 ></DT
191 ><DT 191 ><DT
192 >3.10. <A 192 >3.10. <A
193 HREF="#AEN619" 193 HREF="#AEN628"
194 >Assembler Modes and Pragmas</A 194 >Assembler Modes and Pragmas</A
195 ></DT 195 ></DT
196 ></DL 196 ></DL
197 ></DD 197 ></DD
198 ><DT 198 ><DT
199 >4. <A 199 >4. <A
200 HREF="#AEN713" 200 HREF="#AEN727"
201 >LWLINK</A 201 >LWLINK</A
202 ></DT 202 ></DT
203 ><DD 203 ><DD
204 ><DL 204 ><DL
205 ><DT 205 ><DT
206 >4.1. <A 206 >4.1. <A
207 HREF="#AEN716" 207 HREF="#AEN730"
208 >Command Line Options</A 208 >Command Line Options</A
209 ></DT 209 ></DT
210 ><DT 210 ><DT
211 >4.2. <A 211 >4.2. <A
212 HREF="#AEN813" 212 HREF="#AEN827"
213 >Linker Operation</A 213 >Linker Operation</A
214 ></DT 214 ></DT
215 ><DT 215 ><DT
216 >4.3. <A 216 >4.3. <A
217 HREF="#AEN827" 217 HREF="#AEN841"
218 >Linking Scripts</A 218 >Linking Scripts</A
219 ></DT 219 ></DT
220 ><DT 220 ><DT
221 >4.4. <A 221 >4.4. <A
222 HREF="#AEN893" 222 HREF="#AEN907"
223 >Format Specific Linking Notes</A 223 >Format Specific Linking Notes</A
224 ></DT 224 ></DT
225 ><DD 225 ><DD
226 ><DL 226 ><DL
227 ><DT 227 ><DT
228 >4.4.1. <A 228 >4.4.1. <A
229 HREF="#AEN896" 229 HREF="#AEN910"
230 >OS9 Modules</A 230 >OS9 Modules</A
231 ></DT 231 ></DT
232 ></DL 232 ></DL
233 ></DD 233 ></DD
234 ></DL 234 ></DL
235 ></DD 235 ></DD
236 ><DT 236 ><DT
237 >5. <A 237 >5. <A
238 HREF="#AEN908" 238 HREF="#AEN922"
239 >Libraries and LWAR</A 239 >Libraries and LWAR</A
240 ></DT 240 ></DT
241 ><DD 241 ><DD
242 ><DL 242 ><DL
243 ><DT 243 ><DT
244 >5.1. <A 244 >5.1. <A
245 HREF="#AEN912" 245 HREF="#AEN926"
246 >Command Line Options</A 246 >Command Line Options</A
247 ></DT 247 ></DT
248 ></DL 248 ></DL
249 ></DD 249 ></DD
250 ><DT 250 ><DT
262 ><B 262 ><B
263 >List of Tables</B 263 >List of Tables</B
264 ></DT 264 ></DT
265 ><DT 265 ><DT
266 >6-1. <A 266 >6-1. <A
267 HREF="#AEN995" 267 HREF="#AEN1009"
268 >Object File Term Types</A 268 >Object File Term Types</A
269 ></DT 269 ></DT
270 ><DT 270 ><DT
271 >6-2. <A 271 >6-2. <A
272 HREF="#AEN1025" 272 HREF="#AEN1039"
273 >Object File Operator Numbers</A 273 >Object File Operator Numbers</A
274 ></DT 274 ></DT
275 ></DL 275 ></DL
276 ></DIV 276 ></DIV
277 ><DIV 277 ><DIV
557 completeness and to override preset command arguments.</P 557 completeness and to override preset command arguments.</P
558 ></DD 558 ></DD
559 ><DT 559 ><DT
560 ><CODE 560 ><CODE
561 CLASS="OPTION" 561 CLASS="OPTION"
562 >--6800compat</CODE
563 ></DT
564 ><DD
565 ><P
566 >This is equivalent to <CODE
567 CLASS="OPTION"
568 >--pragma=6800compat</CODE
569 >.</P
570 ><P
571 >This will enable recognition of 6800 compatibility instructions.</P
572 ></DD
573 ><DT
574 ><CODE
575 CLASS="OPTION"
562 >--6809</CODE 576 >--6809</CODE
563 >, <CODE 577 >, <CODE
564 CLASS="OPTION" 578 CLASS="OPTION"
565 >-9</CODE 579 >-9</CODE
566 ></DT 580 ></DT
795 ><DIV 809 ><DIV
796 CLASS="SECTION" 810 CLASS="SECTION"
797 ><HR><H2 811 ><HR><H2
798 CLASS="SECTION" 812 CLASS="SECTION"
799 ><A 813 ><A
800 NAME="AEN190" 814 NAME="AEN197"
801 >3.2. Dialects</A 815 >3.2. Dialects</A
802 ></H2 816 ></H2
803 ><P 817 ><P
804 >LWASM supports all documented MC6809 instructions as defined by Motorola. 818 > LWASM supports all documented MC6809 instructions as defined by
805 It also supports all known HD6309 instructions. While there is general 819 Motorola. By default, this does not include any MC6800 compatibility
806 agreement on the pneumonics for most of the 6309 instructions, there is some 820 instructions. As of LWASM 4.11, those compatibility instructions can be
807 variance with the block transfer instructions. TFM for all four variations 821 enabled using the <CODE
808 seems to have gained the most traction and, thus, this is the form that is 822 CLASS="PARAMETER"
809 recommended for LWASM. However, it also supports COPY, COPY-, IMP, EXP, 823 >--6800compat</CODE
810 TFRP, TFRM, TFRS, and TFRR. It further adds COPY+ as a synomym for COPY, 824 > option or the
811 IMPLODE for IMP, and EXPAND for EXP.</P 825 <CODE
826 CLASS="PARAMETER"
827 >6800compat</CODE
828 > pragma. It also supports all known HD6309
829 instructions. While there is general agreement on the pneumonics for most
830 of the 6309 instructions, there is some variance with the block transfer
831 instructions. TFM for all four variations seems to have gained the most
832 traction and, thus, this is the form that is recommended for LWASM.
833 However, it also supports COPY, COPY-, IMP, EXP, TFRP, TFRM, TFRS, and TFRR.
834 It further adds COPY+ as a synomym for COPY, IMPLODE for IMP, and EXPAND for
835 EXP. </P
812 ><P 836 ><P
813 >By default, LWASM accepts 6309 instructions. However, using the 837 >By default, LWASM accepts 6309 instructions. However, using the
814 <CODE 838 <CODE
815 CLASS="PARAMETER" 839 CLASS="PARAMETER"
816 >--6809</CODE 840 >--6809</CODE
829 ><DIV 853 ><DIV
830 CLASS="SECTION" 854 CLASS="SECTION"
831 ><HR><H2 855 ><HR><H2
832 CLASS="SECTION" 856 CLASS="SECTION"
833 ><A 857 ><A
834 NAME="AEN197" 858 NAME="AEN206"
835 >3.3. Source Format</A 859 >3.3. Source Format</A
836 ></H2 860 ></H2
837 ><P 861 ><P
838 >LWASM accepts plain text files in a relatively free form. It can handle 862 >LWASM accepts plain text files in a relatively free form. It can handle
839 lines terminated with CR, LF, CRLF, or LFCR which means it should be able 863 lines terminated with CR, LF, CRLF, or LFCR which means it should be able
875 ><DIV 899 ><DIV
876 CLASS="SECTION" 900 CLASS="SECTION"
877 ><HR><H2 901 ><HR><H2
878 CLASS="SECTION" 902 CLASS="SECTION"
879 ><A 903 ><A
880 NAME="AEN207" 904 NAME="AEN216"
881 >3.4. Symbols</A 905 >3.4. Symbols</A
882 ></H2 906 ></H2
883 ><P 907 ><P
884 >Symbols have no length restriction. They may contain letters, numbers, dots, 908 >Symbols have no length restriction. They may contain letters, numbers, dots,
885 dollar signs, and underscores. They must start with a letter, dot, or 909 dollar signs, and underscores. They must start with a letter, dot, or
903 ><DIV 927 ><DIV
904 CLASS="SECTION" 928 CLASS="SECTION"
905 ><HR><H2 929 ><HR><H2
906 CLASS="SECTION" 930 CLASS="SECTION"
907 ><A 931 ><A
908 NAME="AEN212" 932 NAME="AEN221"
909 >3.5. Numbers and Expressions</A 933 >3.5. Numbers and Expressions</A
910 ></H2 934 ></H2
911 ><P 935 ><P
912 >&#13;Numbers can be expressed in binary, octal, decimal, or hexadecimal. Binary 936 >&#13;Numbers can be expressed in binary, octal, decimal, or hexadecimal. Binary
913 numbers may be prefixed with a "%" symbol or suffixed with a "b" or "B". 937 numbers may be prefixed with a "%" symbol or suffixed with a "b" or "B".
948 ><DIV 972 ><DIV
949 CLASS="SECTION" 973 CLASS="SECTION"
950 ><HR><H2 974 ><HR><H2
951 CLASS="SECTION" 975 CLASS="SECTION"
952 ><A 976 ><A
953 NAME="AEN220" 977 NAME="AEN229"
954 >3.6. Assembler Directives</A 978 >3.6. Assembler Directives</A
955 ></H2 979 ></H2
956 ><P 980 ><P
957 >Various directives can be used to control the behaviour of the 981 >Various directives can be used to control the behaviour of the
958 assembler or to include non-code/data in the resulting output. Those directives 982 assembler or to include non-code/data in the resulting output. Those directives
961 ><DIV 985 ><DIV
962 CLASS="SECTION" 986 CLASS="SECTION"
963 ><HR><H3 987 ><HR><H3
964 CLASS="SECTION" 988 CLASS="SECTION"
965 ><A 989 ><A
966 NAME="AEN223" 990 NAME="AEN232"
967 >3.6.1. Data Directives</A 991 >3.6.1. Data Directives</A
968 ></H3 992 ></H3
969 ><P 993 ><P
970 ></P 994 ></P
971 ><DIV 995 ><DIV
1195 ><DIV 1219 ><DIV
1196 CLASS="SECTION" 1220 CLASS="SECTION"
1197 ><HR><H3 1221 ><HR><H3
1198 CLASS="SECTION" 1222 CLASS="SECTION"
1199 ><A 1223 ><A
1200 NAME="AEN334" 1224 NAME="AEN343"
1201 >3.6.2. Address Definition</A 1225 >3.6.2. Address Definition</A
1202 ></H3 1226 ></H3
1203 ><P 1227 ><P
1204 >The directives in this section all control the addresses of symbols 1228 >The directives in this section all control the addresses of symbols
1205 or the assembly process itself.</P 1229 or the assembly process itself.</P
1331 ><DIV 1355 ><DIV
1332 CLASS="SECTION" 1356 CLASS="SECTION"
1333 ><HR><H3 1357 ><HR><H3
1334 CLASS="SECTION" 1358 CLASS="SECTION"
1335 ><A 1359 ><A
1336 NAME="AEN381" 1360 NAME="AEN390"
1337 >3.6.3. Conditional Assembly</A 1361 >3.6.3. Conditional Assembly</A
1338 ></H3 1362 ></H3
1339 ><P 1363 ><P
1340 >Portions of the source code can be excluded or included based on conditions 1364 >Portions of the source code can be excluded or included based on conditions
1341 known at assembly time. Conditionals can be nested arbitrarily deeply. The 1365 known at assembly time. Conditionals can be nested arbitrarily deeply. The
1494 ><DIV 1518 ><DIV
1495 CLASS="SECTION" 1519 CLASS="SECTION"
1496 ><HR><H3 1520 ><HR><H3
1497 CLASS="SECTION" 1521 CLASS="SECTION"
1498 ><A 1522 ><A
1499 NAME="AEN446" 1523 NAME="AEN455"
1500 >3.6.4. OS9 Target Directives</A 1524 >3.6.4. OS9 Target Directives</A
1501 ></H3 1525 ></H3
1502 ><P 1526 ><P
1503 >This section includes directives that apply solely to the OS9 1527 >This section includes directives that apply solely to the OS9
1504 target.</P 1528 target.</P
1561 ><DIV 1585 ><DIV
1562 CLASS="SECTION" 1586 CLASS="SECTION"
1563 ><HR><H3 1587 ><HR><H3
1564 CLASS="SECTION" 1588 CLASS="SECTION"
1565 ><A 1589 ><A
1566 NAME="AEN471" 1590 NAME="AEN480"
1567 >3.6.5. Miscelaneous Directives</A 1591 >3.6.5. Miscelaneous Directives</A
1568 ></H3 1592 ></H3
1569 ><P 1593 ><P
1570 >This section includes directives that do not fit into the other 1594 >This section includes directives that do not fit into the other
1571 categories.</P 1595 categories.</P
1675 ><DIV 1699 ><DIV
1676 CLASS="SECTION" 1700 CLASS="SECTION"
1677 ><HR><H2 1701 ><HR><H2
1678 CLASS="SECTION" 1702 CLASS="SECTION"
1679 ><A 1703 ><A
1680 NAME="AEN511" 1704 NAME="AEN520"
1681 >3.7. Macros</A 1705 >3.7. Macros</A
1682 ></H2 1706 ></H2
1683 ><P 1707 ><P
1684 >LWASM is a macro assembler. A macro is simply a name that stands in for a 1708 >LWASM is a macro assembler. A macro is simply a name that stands in for a
1685 series of instructions. Once a macro is defined, it is used like any other 1709 series of instructions. Once a macro is defined, it is used like any other
1774 ><DIV 1798 ><DIV
1775 CLASS="SECTION" 1799 CLASS="SECTION"
1776 ><HR><H2 1800 ><HR><H2
1777 CLASS="SECTION" 1801 CLASS="SECTION"
1778 ><A 1802 ><A
1779 NAME="AEN534" 1803 NAME="AEN543"
1780 >3.8. Structures</A 1804 >3.8. Structures</A
1781 ></H2 1805 ></H2
1782 ><P 1806 ><P
1783 >&#13;Structures are used to group related data in a fixed structure. A structure 1807 >&#13;Structures are used to group related data in a fixed structure. A structure
1784 consists a number of fields, defined in sequential order and which take up 1808 consists a number of fields, defined in sequential order and which take up
1867 ><DIV 1891 ><DIV
1868 CLASS="SECTION" 1892 CLASS="SECTION"
1869 ><HR><H2 1893 ><HR><H2
1870 CLASS="SECTION" 1894 CLASS="SECTION"
1871 ><A 1895 ><A
1872 NAME="AEN555" 1896 NAME="AEN564"
1873 >3.9. Object Files and Sections</A 1897 >3.9. Object Files and Sections</A
1874 ></H2 1898 ></H2
1875 ><P 1899 ><P
1876 >The object file target is very useful for large project because it allows 1900 >The object file target is very useful for large project because it allows
1877 multiple files to be assembled independently and then linked into the final 1901 multiple files to be assembled independently and then linked into the final
2084 ><DIV 2108 ><DIV
2085 CLASS="SECTION" 2109 CLASS="SECTION"
2086 ><HR><H2 2110 ><HR><H2
2087 CLASS="SECTION" 2111 CLASS="SECTION"
2088 ><A 2112 ><A
2089 NAME="AEN619" 2113 NAME="AEN628"
2090 >3.10. Assembler Modes and Pragmas</A 2114 >3.10. Assembler Modes and Pragmas</A
2091 ></H2 2115 ></H2
2092 ><P 2116 ><P
2093 >There are a number of options that affect the way assembly is performed. 2117 >There are a number of options that affect the way assembly is performed.
2094 Some of these options can only be specified on the command line because 2118 Some of these options can only be specified on the command line because
2170 ><P 2194 ><P
2171 ></P 2195 ></P
2172 ><DIV 2196 ><DIV
2173 CLASS="VARIABLELIST" 2197 CLASS="VARIABLELIST"
2174 ><DL 2198 ><DL
2199 ><DT
2200 >6800compat</DT
2201 ><DD
2202 ><P
2203 >When in force, this pragma enables recognition of various
2204 compatibility instructions useful when assembling 6800 code. These
2205 compatibility instructions are assembled into equivalent 6809 instructions.
2206 This mode also includes several analogous instructions which are not
2207 strictly 6800 instructions but allow the similar style to be applied to 6809
2208 specific features.</P
2209 ><P
2210 >Technically, a compliant 6809 assembler must recognize these
2211 instructions by default since Motorola advertised the 6809 as being source
2212 compatible with the 6800. However, most source code does not require this
2213 compatibility and LWASM itself did not support these instructions prior to
2214 version 4.11 so this mode is disabled by default.</P
2215 ></DD
2175 ><DT 2216 ><DT
2176 >index0tonone</DT 2217 >index0tonone</DT
2177 ><DD 2218 ><DD
2178 ><P 2219 ><P
2179 >When in force, this pragma enables an optimization affecting indexed addressing 2220 >When in force, this pragma enables an optimization affecting indexed addressing
2359 ></DIV 2400 ></DIV
2360 ><DIV 2401 ><DIV
2361 CLASS="CHAPTER" 2402 CLASS="CHAPTER"
2362 ><HR><H1 2403 ><HR><H1
2363 ><A 2404 ><A
2364 NAME="AEN713" 2405 NAME="AEN727"
2365 ></A 2406 ></A
2366 >Chapter 4. LWLINK</H1 2407 >Chapter 4. LWLINK</H1
2367 ><P 2408 ><P
2368 >The LWTOOLS linker is called LWLINK. This chapter documents the various features 2409 >The LWTOOLS linker is called LWLINK. This chapter documents the various features
2369 of the linker.</P 2410 of the linker.</P
2370 ><DIV 2411 ><DIV
2371 CLASS="SECTION" 2412 CLASS="SECTION"
2372 ><HR><H2 2413 ><HR><H2
2373 CLASS="SECTION" 2414 CLASS="SECTION"
2374 ><A 2415 ><A
2375 NAME="AEN716" 2416 NAME="AEN730"
2376 >4.1. Command Line Options</A 2417 >4.1. Command Line Options</A
2377 ></H2 2418 ></H2
2378 ><P 2419 ><P
2379 >The binary for LWLINK is called "lwlink". Note that the binary is in lower 2420 >The binary for LWLINK is called "lwlink". Note that the binary is in lower
2380 case. lwlink takes the following command line arguments.</P 2421 case. lwlink takes the following command line arguments.</P
2567 ><DIV 2608 ><DIV
2568 CLASS="SECTION" 2609 CLASS="SECTION"
2569 ><HR><H2 2610 ><HR><H2
2570 CLASS="SECTION" 2611 CLASS="SECTION"
2571 ><A 2612 ><A
2572 NAME="AEN813" 2613 NAME="AEN827"
2573 >4.2. Linker Operation</A 2614 >4.2. Linker Operation</A
2574 ></H2 2615 ></H2
2575 ><P 2616 ><P
2576 >&#13;LWLINK takes one or more files in supported input formats and links them 2617 >&#13;LWLINK takes one or more files in supported input formats and links them
2577 into a single binary. Currently supported formats are the LWTOOLS object 2618 into a single binary. Currently supported formats are the LWTOOLS object
2623 ><DIV 2664 ><DIV
2624 CLASS="SECTION" 2665 CLASS="SECTION"
2625 ><HR><H2 2666 ><HR><H2
2626 CLASS="SECTION" 2667 CLASS="SECTION"
2627 ><A 2668 ><A
2628 NAME="AEN827" 2669 NAME="AEN841"
2629 >4.3. Linking Scripts</A 2670 >4.3. Linking Scripts</A
2630 ></H2 2671 ></H2
2631 ><P 2672 ><P
2632 >A linker script is used to instruct the linker about how to assemble the 2673 >A linker script is used to instruct the linker about how to assemble the
2633 various sections into a completed binary. It consists of a series of 2674 various sections into a completed binary. It consists of a series of
2827 ><DIV 2868 ><DIV
2828 CLASS="SECTION" 2869 CLASS="SECTION"
2829 ><HR><H2 2870 ><HR><H2
2830 CLASS="SECTION" 2871 CLASS="SECTION"
2831 ><A 2872 ><A
2832 NAME="AEN893" 2873 NAME="AEN907"
2833 >4.4. Format Specific Linking Notes</A 2874 >4.4. Format Specific Linking Notes</A
2834 ></H2 2875 ></H2
2835 ><P 2876 ><P
2836 >Some formats require special information to be able to generate actual 2877 >Some formats require special information to be able to generate actual
2837 binaries. If the specific format you are interested in is not listed in 2878 binaries. If the specific format you are interested in is not listed in
2840 ><DIV 2881 ><DIV
2841 CLASS="SECTION" 2882 CLASS="SECTION"
2842 ><HR><H3 2883 ><HR><H3
2843 CLASS="SECTION" 2884 CLASS="SECTION"
2844 ><A 2885 ><A
2845 NAME="AEN896" 2886 NAME="AEN910"
2846 >4.4.1. OS9 Modules</A 2887 >4.4.1. OS9 Modules</A
2847 ></H3 2888 ></H3
2848 ><P 2889 ><P
2849 >OS9 modules need to embed several items into the module header. These 2890 >OS9 modules need to embed several items into the module header. These
2850 items are the type of module, the langauge of the module, the module 2891 items are the type of module, the langauge of the module, the module
2916 ></DIV 2957 ></DIV
2917 ><DIV 2958 ><DIV
2918 CLASS="CHAPTER" 2959 CLASS="CHAPTER"
2919 ><HR><H1 2960 ><HR><H1
2920 ><A 2961 ><A
2921 NAME="AEN908" 2962 NAME="AEN922"
2922 ></A 2963 ></A
2923 >Chapter 5. Libraries and LWAR</H1 2964 >Chapter 5. Libraries and LWAR</H1
2924 ><P 2965 ><P
2925 >LWTOOLS also includes a tool for managing libraries. These are analogous to 2966 >LWTOOLS also includes a tool for managing libraries. These are analogous to
2926 the static libraries created with the "ar" tool on POSIX systems. Each library 2967 the static libraries created with the "ar" tool on POSIX systems. Each library
2935 ><DIV 2976 ><DIV
2936 CLASS="SECTION" 2977 CLASS="SECTION"
2937 ><HR><H2 2978 ><HR><H2
2938 CLASS="SECTION" 2979 CLASS="SECTION"
2939 ><A 2980 ><A
2940 NAME="AEN912" 2981 NAME="AEN926"
2941 >5.1. Command Line Options</A 2982 >5.1. Command Line Options</A
2942 ></H2 2983 ></H2
2943 ><P 2984 ><P
2944 >The binary for LWAR is called "lwar". Note that the binary is in lower 2985 >The binary for LWAR is called "lwar". Note that the binary is in lower
2945 case. The options lwar understands are listed below. For archive manipulation 2986 case. The options lwar understands are listed below. For archive manipulation
3136 followed by any data required by the term. Then end of the list is flagged 3177 followed by any data required by the term. Then end of the list is flagged
3137 by a NULL expression (only an end of expression term).</P 3178 by a NULL expression (only an end of expression term).</P
3138 ><DIV 3179 ><DIV
3139 CLASS="TABLE" 3180 CLASS="TABLE"
3140 ><A 3181 ><A
3141 NAME="AEN995" 3182 NAME="AEN1009"
3142 ></A 3183 ></A
3143 ><P 3184 ><P
3144 ><B 3185 ><B
3145 >Table 6-1. Object File Term Types</B 3186 >Table 6-1. Object File Term Types</B
3146 ></P 3187 ></P
3208 allows local symbols that are not exported to have the same names as 3249 allows local symbols that are not exported to have the same names as
3209 exported symbols or external references.</P 3250 exported symbols or external references.</P
3210 ><DIV 3251 ><DIV
3211 CLASS="TABLE" 3252 CLASS="TABLE"
3212 ><A 3253 ><A
3213 NAME="AEN1025" 3254 NAME="AEN1039"
3214 ></A 3255 ></A
3215 ><P 3256 ><P
3216 ><B 3257 ><B
3217 >Table 6-2. Object File Operator Numbers</B 3258 >Table 6-2. Object File Operator Numbers</B
3218 ></P 3259 ></P