Mercurial > hg > index.cgi
comparison docs/manual/manual.html @ 563:8c6c3363e18e
Update manual to reflect pragma nolistcode and correct nolist semantics
author | William Astle <lost@l-w.ca> |
---|---|
date | Fri, 01 Dec 2023 21:16:54 -0700 |
parents | 543b5d1341d2 |
children | fc072f6cde09 |
comparison
equal
deleted
inserted
replaced
562:6237505ee1dc | 563:8c6c3363e18e |
---|---|
198 HREF="#CONVINST" | 198 HREF="#CONVINST" |
199 >Convenience Instructions</A | 199 >Convenience Instructions</A |
200 ></DT | 200 ></DT |
201 ><DT | 201 ><DT |
202 >3.12. <A | 202 >3.12. <A |
203 HREF="#AEN822" | 203 HREF="#AEN826" |
204 >Cycle Counts</A | 204 >Cycle Counts</A |
205 ></DT | 205 ></DT |
206 ></DL | 206 ></DL |
207 ></DD | 207 ></DD |
208 ><DT | 208 ><DT |
209 >4. <A | 209 >4. <A |
210 HREF="#AEN828" | 210 HREF="#AEN832" |
211 >LWLINK</A | 211 >LWLINK</A |
212 ></DT | 212 ></DT |
213 ><DD | 213 ><DD |
214 ><DL | 214 ><DL |
215 ><DT | 215 ><DT |
216 >4.1. <A | 216 >4.1. <A |
217 HREF="#AEN831" | 217 HREF="#AEN835" |
218 >Command Line Options</A | 218 >Command Line Options</A |
219 ></DT | 219 ></DT |
220 ><DT | 220 ><DT |
221 >4.2. <A | 221 >4.2. <A |
222 HREF="#AEN928" | 222 HREF="#AEN932" |
223 >Linker Operation</A | 223 >Linker Operation</A |
224 ></DT | 224 ></DT |
225 ><DT | 225 ><DT |
226 >4.3. <A | 226 >4.3. <A |
227 HREF="#AEN942" | 227 HREF="#AEN946" |
228 >Linking Scripts</A | 228 >Linking Scripts</A |
229 ></DT | 229 ></DT |
230 ><DT | 230 ><DT |
231 >4.4. <A | 231 >4.4. <A |
232 HREF="#AEN1009" | 232 HREF="#AEN1013" |
233 >Format Specific Linking Notes</A | 233 >Format Specific Linking Notes</A |
234 ></DT | 234 ></DT |
235 ><DD | 235 ><DD |
236 ><DL | 236 ><DL |
237 ><DT | 237 ><DT |
238 >4.4.1. <A | 238 >4.4.1. <A |
239 HREF="#AEN1012" | 239 HREF="#AEN1016" |
240 >OS9 Modules</A | 240 >OS9 Modules</A |
241 ></DT | 241 ></DT |
242 ></DL | 242 ></DL |
243 ></DD | 243 ></DD |
244 ></DL | 244 ></DL |
245 ></DD | 245 ></DD |
246 ><DT | 246 ><DT |
247 >5. <A | 247 >5. <A |
248 HREF="#AEN1024" | 248 HREF="#AEN1028" |
249 >Libraries and LWAR</A | 249 >Libraries and LWAR</A |
250 ></DT | 250 ></DT |
251 ><DD | 251 ><DD |
252 ><DL | 252 ><DL |
253 ><DT | 253 ><DT |
254 >5.1. <A | 254 >5.1. <A |
255 HREF="#AEN1028" | 255 HREF="#AEN1032" |
256 >Command Line Options</A | 256 >Command Line Options</A |
257 ></DT | 257 ></DT |
258 ></DL | 258 ></DL |
259 ></DD | 259 ></DD |
260 ><DT | 260 ><DT |
272 ><B | 272 ><B |
273 >List of Tables</B | 273 >List of Tables</B |
274 ></DT | 274 ></DT |
275 ><DT | 275 ><DT |
276 >6-1. <A | 276 >6-1. <A |
277 HREF="#AEN1111" | 277 HREF="#AEN1115" |
278 >Object File Term Types</A | 278 >Object File Term Types</A |
279 ></DT | 279 ></DT |
280 ><DT | 280 ><DT |
281 >6-2. <A | 281 >6-2. <A |
282 HREF="#AEN1141" | 282 HREF="#AEN1145" |
283 >Object File Operator Numbers</A | 283 >Object File Operator Numbers</A |
284 ></DT | 284 ></DT |
285 ></DL | 285 ></DL |
286 ></DIV | 286 ></DIV |
287 ><DIV | 287 ><DIV |
905 > option or the | 905 > option or the |
906 <CODE | 906 <CODE |
907 CLASS="PARAMETER" | 907 CLASS="PARAMETER" |
908 >6800compat</CODE | 908 >6800compat</CODE |
909 > pragma. It also supports all known HD6309 | 909 > pragma. It also supports all known HD6309 |
910 instructions. While there is general agreement on the pneumonics for most | 910 instructions. While there is general agreement on the mnemonics for most |
911 of the 6309 instructions, there is some variance with the block transfer | 911 of the 6309 instructions, there is some variance with the block transfer |
912 instructions. TFM for all four variations seems to have gained the most | 912 instructions. TFM for all four variations seems to have gained the most |
913 traction and, thus, this is the form that is recommended for LWASM. | 913 traction and, thus, this is the form that is recommended for LWASM. |
914 However, it also supports COPY, COPY-, IMP, EXP, TFRP, TFRM, TFRS, and TFRR. | 914 However, it also supports COPY, COPY-, IMP, EXP, TFRP, TFRM, TFRS, and TFRR. |
915 It further adds COPY+ as a synomym for COPY, IMPLODE for IMP, and EXPAND for | 915 It further adds COPY+ as a synomym for COPY, IMPLODE for IMP, and EXPAND for |
2447 ><P | 2447 ><P |
2448 >Lines where this pragma is in effect will not appear in the assembly | 2448 >Lines where this pragma is in effect will not appear in the assembly |
2449 listing. Also, any symbols defined under this pragma will not show up in | 2449 listing. Also, any symbols defined under this pragma will not show up in |
2450 the symbol list. This is most useful in include files to avoid spamming the | 2450 the symbol list. This is most useful in include files to avoid spamming the |
2451 assembly listing with dozens, hundreds, or thousands of irrelevant | 2451 assembly listing with dozens, hundreds, or thousands of irrelevant |
2452 symbols.</P | 2452 symbols. It is important to note that this pragma will not hide lines that |
2453 generate output to the binary.</P | |
2454 ></DD | |
2455 ><DT | |
2456 >nolistcode</DT | |
2457 ><DD | |
2458 ><P | |
2459 >Lines where this pragma is in effect will not appear in the assembly | |
2460 listing. Also, any symbols defined under this pragma will not show up in | |
2461 the symbol list. This is most useful in include files to avoid spamming the | |
2462 assembly listing with dozens, hundreds, or thousands of irrelevant | |
2463 symbols. Unlike "nolist", this pragma will hide lines that generate output | |
2464 to the binary.</P | |
2453 ></DD | 2465 ></DD |
2454 ><DT | 2466 ><DT |
2455 >autobranchlength</DT | 2467 >autobranchlength</DT |
2456 ><DD | 2468 ><DD |
2457 ><P | 2469 ><P |
2680 ><DIV | 2692 ><DIV |
2681 CLASS="SECTION" | 2693 CLASS="SECTION" |
2682 ><HR><H2 | 2694 ><HR><H2 |
2683 CLASS="SECTION" | 2695 CLASS="SECTION" |
2684 ><A | 2696 ><A |
2685 NAME="AEN822" | 2697 NAME="AEN826" |
2686 >3.12. Cycle Counts</A | 2698 >3.12. Cycle Counts</A |
2687 ></H2 | 2699 ></H2 |
2688 ><P | 2700 ><P |
2689 > The following options for displaying cycle counts in listings are provided. | 2701 > The following options for displaying cycle counts in listings are provided. |
2690 These options are enabled from pragmas on the command line or in the | 2702 These options are enabled from pragmas on the command line or in the |
2719 ></DIV | 2731 ></DIV |
2720 ><DIV | 2732 ><DIV |
2721 CLASS="CHAPTER" | 2733 CLASS="CHAPTER" |
2722 ><HR><H1 | 2734 ><HR><H1 |
2723 ><A | 2735 ><A |
2724 NAME="AEN828" | 2736 NAME="AEN832" |
2725 ></A | 2737 ></A |
2726 >Chapter 4. LWLINK</H1 | 2738 >Chapter 4. LWLINK</H1 |
2727 ><P | 2739 ><P |
2728 >The LWTOOLS linker is called LWLINK. This chapter documents the various features | 2740 >The LWTOOLS linker is called LWLINK. This chapter documents the various features |
2729 of the linker.</P | 2741 of the linker.</P |
2730 ><DIV | 2742 ><DIV |
2731 CLASS="SECTION" | 2743 CLASS="SECTION" |
2732 ><HR><H2 | 2744 ><HR><H2 |
2733 CLASS="SECTION" | 2745 CLASS="SECTION" |
2734 ><A | 2746 ><A |
2735 NAME="AEN831" | 2747 NAME="AEN835" |
2736 >4.1. Command Line Options</A | 2748 >4.1. Command Line Options</A |
2737 ></H2 | 2749 ></H2 |
2738 ><P | 2750 ><P |
2739 >The binary for LWLINK is called "lwlink". Note that the binary is in lower | 2751 >The binary for LWLINK is called "lwlink". Note that the binary is in lower |
2740 case. lwlink takes the following command line arguments.</P | 2752 case. lwlink takes the following command line arguments.</P |
2928 ><DIV | 2940 ><DIV |
2929 CLASS="SECTION" | 2941 CLASS="SECTION" |
2930 ><HR><H2 | 2942 ><HR><H2 |
2931 CLASS="SECTION" | 2943 CLASS="SECTION" |
2932 ><A | 2944 ><A |
2933 NAME="AEN928" | 2945 NAME="AEN932" |
2934 >4.2. Linker Operation</A | 2946 >4.2. Linker Operation</A |
2935 ></H2 | 2947 ></H2 |
2936 ><P | 2948 ><P |
2937 > LWLINK takes one or more files in supported input formats and links them | 2949 > LWLINK takes one or more files in supported input formats and links them |
2938 into a single binary. Currently supported formats are the LWTOOLS object | 2950 into a single binary. Currently supported formats are the LWTOOLS object |
2984 ><DIV | 2996 ><DIV |
2985 CLASS="SECTION" | 2997 CLASS="SECTION" |
2986 ><HR><H2 | 2998 ><HR><H2 |
2987 CLASS="SECTION" | 2999 CLASS="SECTION" |
2988 ><A | 3000 ><A |
2989 NAME="AEN942" | 3001 NAME="AEN946" |
2990 >4.3. Linking Scripts</A | 3002 >4.3. Linking Scripts</A |
2991 ></H2 | 3003 ></H2 |
2992 ><P | 3004 ><P |
2993 >A linker script is used to instruct the linker about how to assemble the | 3005 >A linker script is used to instruct the linker about how to assemble the |
2994 various sections into a completed binary. It consists of a series of | 3006 various sections into a completed binary. It consists of a series of |
3191 ><DIV | 3203 ><DIV |
3192 CLASS="SECTION" | 3204 CLASS="SECTION" |
3193 ><HR><H2 | 3205 ><HR><H2 |
3194 CLASS="SECTION" | 3206 CLASS="SECTION" |
3195 ><A | 3207 ><A |
3196 NAME="AEN1009" | 3208 NAME="AEN1013" |
3197 >4.4. Format Specific Linking Notes</A | 3209 >4.4. Format Specific Linking Notes</A |
3198 ></H2 | 3210 ></H2 |
3199 ><P | 3211 ><P |
3200 >Some formats require special information to be able to generate actual | 3212 >Some formats require special information to be able to generate actual |
3201 binaries. If the specific format you are interested in is not listed in | 3213 binaries. If the specific format you are interested in is not listed in |
3204 ><DIV | 3216 ><DIV |
3205 CLASS="SECTION" | 3217 CLASS="SECTION" |
3206 ><HR><H3 | 3218 ><HR><H3 |
3207 CLASS="SECTION" | 3219 CLASS="SECTION" |
3208 ><A | 3220 ><A |
3209 NAME="AEN1012" | 3221 NAME="AEN1016" |
3210 >4.4.1. OS9 Modules</A | 3222 >4.4.1. OS9 Modules</A |
3211 ></H3 | 3223 ></H3 |
3212 ><P | 3224 ><P |
3213 >OS9 modules need to embed several items into the module header. These | 3225 >OS9 modules need to embed several items into the module header. These |
3214 items are the type of module, the langauge of the module, the module | 3226 items are the type of module, the langauge of the module, the module |
3280 ></DIV | 3292 ></DIV |
3281 ><DIV | 3293 ><DIV |
3282 CLASS="CHAPTER" | 3294 CLASS="CHAPTER" |
3283 ><HR><H1 | 3295 ><HR><H1 |
3284 ><A | 3296 ><A |
3285 NAME="AEN1024" | 3297 NAME="AEN1028" |
3286 ></A | 3298 ></A |
3287 >Chapter 5. Libraries and LWAR</H1 | 3299 >Chapter 5. Libraries and LWAR</H1 |
3288 ><P | 3300 ><P |
3289 >LWTOOLS also includes a tool for managing libraries. These are analogous to | 3301 >LWTOOLS also includes a tool for managing libraries. These are analogous to |
3290 the static libraries created with the "ar" tool on POSIX systems. Each library | 3302 the static libraries created with the "ar" tool on POSIX systems. Each library |
3299 ><DIV | 3311 ><DIV |
3300 CLASS="SECTION" | 3312 CLASS="SECTION" |
3301 ><HR><H2 | 3313 ><HR><H2 |
3302 CLASS="SECTION" | 3314 CLASS="SECTION" |
3303 ><A | 3315 ><A |
3304 NAME="AEN1028" | 3316 NAME="AEN1032" |
3305 >5.1. Command Line Options</A | 3317 >5.1. Command Line Options</A |
3306 ></H2 | 3318 ></H2 |
3307 ><P | 3319 ><P |
3308 >The binary for LWAR is called "lwar". Note that the binary is in lower | 3320 >The binary for LWAR is called "lwar". Note that the binary is in lower |
3309 case. The options lwar understands are listed below. For archive manipulation | 3321 case. The options lwar understands are listed below. For archive manipulation |
3500 followed by any data required by the term. Then end of the list is flagged | 3512 followed by any data required by the term. Then end of the list is flagged |
3501 by a NULL expression (only an end of expression term).</P | 3513 by a NULL expression (only an end of expression term).</P |
3502 ><DIV | 3514 ><DIV |
3503 CLASS="TABLE" | 3515 CLASS="TABLE" |
3504 ><A | 3516 ><A |
3505 NAME="AEN1111" | 3517 NAME="AEN1115" |
3506 ></A | 3518 ></A |
3507 ><P | 3519 ><P |
3508 ><B | 3520 ><B |
3509 >Table 6-1. Object File Term Types</B | 3521 >Table 6-1. Object File Term Types</B |
3510 ></P | 3522 ></P |
3572 allows local symbols that are not exported to have the same names as | 3584 allows local symbols that are not exported to have the same names as |
3573 exported symbols or external references.</P | 3585 exported symbols or external references.</P |
3574 ><DIV | 3586 ><DIV |
3575 CLASS="TABLE" | 3587 CLASS="TABLE" |
3576 ><A | 3588 ><A |
3577 NAME="AEN1141" | 3589 NAME="AEN1145" |
3578 ></A | 3590 ></A |
3579 ><P | 3591 ><P |
3580 ><B | 3592 ><B |
3581 >Table 6-2. Object File Operator Numbers</B | 3593 >Table 6-2. Object File Operator Numbers</B |
3582 ></P | 3594 ></P |