Mercurial > hg > index.cgi
annotate docs/manual/manual.html @ 304:d85d173ba120 ccdev
Checkpoint lwcc development - preprocessor is runnable but nonfunctional
The preprocessor is currently runnable but doesn't actually do anything
useful. This is just a checkpoint.
author | William Astle <lost@l-w.ca> |
---|---|
date | Tue, 17 Sep 2013 19:33:41 -0600 |
parents | 155799f6cfa5 |
children | c4853a54b4a1 |
rev | line source |
---|---|
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
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"> |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2 <HTML |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3 ><HEAD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
4 ><TITLE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
5 >LW Tool Chain</TITLE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
6 ><META |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
7 NAME="GENERATOR" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
8 CONTENT="Modular DocBook HTML Stylesheet Version 1.79"></HEAD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
9 ><BODY |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
10 CLASS="BOOK" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
11 BGCOLOR="#FFFFFF" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
12 TEXT="#000000" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
13 LINK="#0000FF" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
14 VLINK="#840084" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
15 ALINK="#0000FF" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
16 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
17 CLASS="BOOK" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
18 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
19 NAME="AEN1" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
20 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
21 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
22 CLASS="TITLEPAGE" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
23 ><H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
24 CLASS="TITLE" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
25 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
26 NAME="AEN2" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
27 >LW Tool Chain</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
28 ></H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
29 ><H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
30 CLASS="AUTHOR" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
31 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
32 NAME="AEN4" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
33 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
34 >William Astle</H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
35 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
36 CLASS="COPYRIGHT" |
245
0bc1c88fe776
Fix typo in documentation of lwasm --define switch.
William Astle <lost@l-w.ca>
parents:
236
diff
changeset
|
37 >Copyright © 2009-2013 William Astle</P |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
38 ><HR></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
39 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
40 CLASS="TOC" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
41 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
42 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
43 ><B |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
44 >Table of Contents</B |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
45 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
46 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
47 >1. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
48 HREF="#AEN10" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
49 >Introduction</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
50 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
51 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
52 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
53 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
54 >1.1. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
55 HREF="#AEN13" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
56 >History</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
57 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
58 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
59 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
60 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
61 >2. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
62 HREF="#AEN18" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
63 >Output Formats</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
64 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
65 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
66 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
67 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
68 >2.1. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
69 HREF="#AEN21" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
70 >Raw Binaries</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
71 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
72 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
73 >2.2. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
74 HREF="#AEN24" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
75 >DECB Binaries</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
76 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
77 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
78 >2.3. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
79 HREF="#AEN29" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
80 >OS9 Modules</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
81 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
82 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
83 >2.4. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
84 HREF="#AEN37" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
85 >Object Files</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
86 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
87 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
88 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
89 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
90 >3. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
91 HREF="#AEN45" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
92 >LWASM</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
93 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
94 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
95 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
96 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
97 >3.1. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
98 HREF="#AEN48" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
99 >Command Line Options</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
100 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
101 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
102 >3.2. <A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
103 HREF="#AEN170" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
104 >Dialects</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
105 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
106 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
107 >3.3. <A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
108 HREF="#AEN177" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
109 >Source Format</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
110 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
111 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
112 >3.4. <A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
113 HREF="#AEN187" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
114 >Symbols</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
115 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
116 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
117 >3.5. <A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
118 HREF="#AEN192" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
119 >Numbers and Expressions</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
120 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
121 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
122 >3.6. <A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
123 HREF="#AEN200" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
124 >Assembler Directives</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
125 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
126 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
127 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
128 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
129 >3.6.1. <A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
130 HREF="#AEN203" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
131 >Data Directives</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
132 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
133 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
134 >3.6.2. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
135 HREF="#AEN314" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
136 >Address Definition</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
137 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
138 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
139 >3.6.3. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
140 HREF="#AEN361" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
141 >Conditional Assembly</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
142 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
143 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
144 >3.6.4. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
145 HREF="#AEN426" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
146 >OS9 Target Directives</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
147 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
148 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
149 >3.6.5. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
150 HREF="#AEN451" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
151 >Miscelaneous Directives</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
152 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
153 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
154 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
155 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
156 >3.7. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
157 HREF="#AEN491" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
158 >Macros</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
159 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
160 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
161 >3.8. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
162 HREF="#AEN514" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
163 >Structures</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
164 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
165 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
166 >3.9. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
167 HREF="#AEN535" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
168 >Object Files and Sections</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
169 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
170 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
171 >3.10. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
172 HREF="#AEN599" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
173 >Assembler Modes and Pragmas</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
174 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
175 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
176 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
177 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
178 >4. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
179 HREF="#AEN693" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
180 >LWLINK</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
181 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
182 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
183 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
184 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
185 >4.1. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
186 HREF="#AEN696" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
187 >Command Line Options</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
188 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
189 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
190 >4.2. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
191 HREF="#AEN793" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
192 >Linker Operation</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
193 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
194 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
195 >4.3. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
196 HREF="#AEN807" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
197 >Linking Scripts</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
198 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
199 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
200 >4.4. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
201 HREF="#AEN864" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
202 >Format Specific Linking Notes</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
203 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
204 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
205 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
206 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
207 >4.4.1. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
208 HREF="#AEN867" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
209 >OS9 Modules</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
210 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
211 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
212 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
213 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
214 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
215 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
216 >5. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
217 HREF="#AEN879" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
218 >Libraries and LWAR</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
219 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
220 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
221 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
222 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
223 >5.1. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
224 HREF="#AEN883" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
225 >Command Line Options</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
226 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
227 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
228 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
229 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
230 >6. <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
231 HREF="#OBJCHAP" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
232 >Object Files</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
233 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
234 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
235 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
236 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
237 CLASS="LOT" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
238 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
239 CLASS="LOT" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
240 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
241 ><B |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
242 >List of Tables</B |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
243 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
244 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
245 >6-1. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
246 HREF="#AEN966" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
247 >Object File Term Types</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
248 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
249 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
250 >6-2. <A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
251 HREF="#AEN996" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
252 >Object File Operator Numbers</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
253 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
254 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
255 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
256 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
257 CLASS="CHAPTER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
258 ><HR><H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
259 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
260 NAME="AEN10" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
261 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
262 >Chapter 1. Introduction</H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
263 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
264 >The LW tool chain provides utilities for building binaries for MC6809 and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
265 HD6309 CPUs. The tool chain includes a cross-assembler and a cross-linker |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
266 which support several styles of output.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
267 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
268 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
269 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
270 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
271 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
272 NAME="AEN13" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
273 >1.1. History</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
274 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
275 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
276 >For a long time, I have had an interest in creating an operating system for |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
277 the Coco3. I finally started working on that project around the beginning of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
278 2006. I had a number of assemblers I could choose from. Eventually, I settled |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
279 on one and started tinkering. After a while, I realized that assembler was not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
280 going to be sufficient due to lack of macros and issues with forward references. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
281 Then I tried another which handled forward references correctly but still did |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
282 not support macros. I looked around at other assemblers and they all lacked |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
283 one feature or another that I really wanted for creating my operating system.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
284 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
285 >The solution seemed clear at that point. I am a fair programmer so I figured |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
286 I could write an assembler that would do everything I wanted an assembler to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
287 do. Thus the LWASM probject was born. After more than two years of on and off |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
288 work, version 1.0 of LWASM was released in October of 2008.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
289 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
290 >As the aforementioned operating system project progressed further, it became |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
291 clear that while assembling the whole project through a single file was doable, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
292 it was not practical. When I found myself playing some fancy games with macros |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
293 in a bid to simulate sections, I realized I needed a means of assembling |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
294 source files separately and linking them later. This spawned a major development |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
295 effort to add an object file support to LWASM. It also spawned the LWLINK |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
296 project to provide a means to actually link the files.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
297 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
298 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
299 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
300 CLASS="CHAPTER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
301 ><HR><H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
302 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
303 NAME="AEN18" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
304 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
305 >Chapter 2. Output Formats</H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
306 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
307 >The LW tool chain supports multiple output formats. Each format has its |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
308 advantages and disadvantages. Each format is described below.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
309 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
310 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
311 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
312 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
313 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
314 NAME="AEN21" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
315 >2.1. Raw Binaries</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
316 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
317 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
318 >A raw binary is simply a string of bytes. There are no headers or other |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
319 niceties. Both LWLINK and LWASM support generating raw binaries. ORG directives |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
320 in the source code only serve to set the addresses that will be used for |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
321 symbols but otherwise have no direct impact on the resulting binary.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
322 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
323 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
324 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
325 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
326 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
327 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
328 NAME="AEN24" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
329 >2.2. DECB Binaries</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
330 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
331 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
332 >A DECB binary is compatible with the LOADM command in Disk Extended |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
333 Color Basic on the CoCo. They are also compatible with CLOADM from Extended |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
334 Color Basic. These binaries include the load address of the binary as well |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
335 as encoding an execution address. These binaries may contain multiple loadable |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
336 sections, each of which has its own load address.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
337 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
338 >Each binary starts with a preamble. Each preamble is five bytes long. The |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
339 first byte is zero. The next two bytes specify the number of bytes to load |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
340 and the last two bytes specify the address to load the bytes at. Then, a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
341 string of bytes follows. After this string of bytes, there may be another |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
342 preamble or a postamble. A postamble is also five bytes in length. The first |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
343 byte of the postamble is $FF, the next two are zero, and the last two are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
344 the execution address for the binary.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
345 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
346 >Both LWASM and LWLINK can output this format.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
347 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
348 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
349 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
350 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
351 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
352 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
353 NAME="AEN29" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
354 >2.3. OS9 Modules</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
355 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
356 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
357 > Since version 2.5, LWASM is able to generate OS9 modules. The syntax is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
358 basically the same as for other assemblers. A module starts with the MOD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
359 directive and ends with the EMOD directive. The OS9 directive is provided |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
360 as a shortcut for writing system calls. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
361 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
362 > LWASM does NOT provide an OS9Defs file. You must provide your own. Also note |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
363 that the common practice of using "ifp1" around the inclusion of the OS9Defs |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
364 file is discouraged as it is pointless and can lead to unintentional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
365 problems and phasing errors. Because LWASM reads each file exactly once, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
366 there is no benefit to restricting the inclusion to the first assembly pass. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
367 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
368 > As of version 4.5, LWASM also implements the standard data/code address |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
369 streams for OS9 modules. That means that between MOD and EMOD, any RMB, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
370 RMD, RMQ, or equivalent directives will move the data address ahead and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
371 leave the code address unmodified. Outside of an actual module, both the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
372 code and data addresses are moved ahead equally. That last bit is critical |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
373 to understand because it means any directives that follow an EMOD directive |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
374 may have different results than other assemblers. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
375 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
376 > Additionally, within a module body, the ORG directive sets only the data |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
377 address, not the code address. However, outside a module body, ORG sets both |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
378 addresses. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
379 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
380 >Both code and data addresses are reset to 0 by the MOD directive.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
381 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
382 > As of version 4.5, LWLINK also supports creation of OS9 modules. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
383 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
384 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
385 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
386 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
387 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
388 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
389 NAME="AEN37" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
390 >2.4. Object Files</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
391 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
392 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
393 >LWASM supports generating a proprietary object file format which is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
394 described in <A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
395 HREF="#OBJCHAP" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
396 >Chapter 6</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
397 >. LWLINK is then used to link these |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
398 object files into a final binary in any of LWLINK's supported binary |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
399 formats.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
400 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
401 >Object files also support the concept of sections which are not valid |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
402 for other output types. This allows related code from each object file |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
403 linked to be collapsed together in the final binary.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
404 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
405 >Object files are very flexible in that they allow references that are not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
406 known at assembly time to be resolved at link time. However, because the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
407 addresses of such references are not known at assembly time, there is no way |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
408 for the assembler to deduce that an eight bit addressing mode is possible. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
409 That means the assember will default to using sixteen bit addressing |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
410 whenever an external or cross-section reference is used.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
411 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
412 >As of LWASM 2.4, it is possible to force direct page addressing for an |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
413 external reference. Care must be taken to ensure the resulting addresses |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
414 are really in the direct page since the linker does not know what the direct |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
415 page is supposed to be and does not emit errors for byte overflows.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
416 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
417 >It is also possible to use external references in an eight bit immediate |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
418 mode instruction. In this case, only the low order eight bits will be used. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
419 Again, no byte overflows will be flagged.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
420 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
421 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
422 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
423 CLASS="CHAPTER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
424 ><HR><H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
425 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
426 NAME="AEN45" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
427 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
428 >Chapter 3. LWASM</H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
429 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
430 >The LWTOOLS assembler is called LWASM. This chapter documents the various |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
431 features of the assembler. It is not, however, a tutorial on 6x09 assembly |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
432 language programming.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
433 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
434 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
435 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
436 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
437 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
438 NAME="AEN48" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
439 >3.1. Command Line Options</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
440 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
441 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
442 >The binary for LWASM is called "lwasm". Note that the binary is in lower |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
443 case. lwasm takes the following command line arguments.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
444 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
445 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
446 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
447 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
448 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
449 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
450 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
451 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
452 >--6309</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
453 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
454 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
455 >-3</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
456 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
457 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
458 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
459 >This will cause the assembler to accept the additional instructions available |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
460 on the 6309 processor. This is the default mode; this option is provided for |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
461 completeness and to override preset command arguments.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
462 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
463 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
464 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
465 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
466 >--6809</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
467 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
468 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
469 >-9</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
470 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
471 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
472 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
473 >This will cause the assembler to reject instructions that are only available |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
474 on the 6309 processor.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
475 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
476 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
477 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
478 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
479 >--decb</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
480 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
481 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
482 >-b</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
483 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
484 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
485 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
486 >Select the DECB output format target. Equivalent to <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
487 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
488 >--format=decb</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
489 >.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
490 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
491 >While this is the default output format currently, it is not safe to rely |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
492 on that fact. Future versions may have different defaults. It is also trivial |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
493 to modify the source code to change the default. Thus, it is recommended to specify |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
494 this option if you need DECB output.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
495 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
496 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
497 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
498 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
499 >--format=type</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
500 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
501 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
502 >-f type</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
503 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
504 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
505 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
506 >Select the output format. Valid values are <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
507 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
508 >obj</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
509 > for the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
510 object file target, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
511 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
512 >decb</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
513 > for the DECB LOADM format, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
514 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
515 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
516 >os9</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
517 > for creating OS9 modules, and <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
518 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
519 >raw</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
520 > for |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
521 a raw binary.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
522 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
523 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
524 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
525 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
526 >--list[=file]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
527 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
528 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
529 >-l[file]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
530 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
531 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
532 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
533 >Cause LWASM to generate a listing. If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
534 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
535 >file</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
536 > is specified, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
537 the listing will go to that file. Otherwise it will go to the standard output |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
538 stream. By default, no listing is generated. Unless <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
539 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
540 >--symbols</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
541 > |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
542 is specified, the list will not include the symbol table.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
543 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
544 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
545 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
546 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
547 >--symbols</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
548 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
549 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
550 >-s</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
551 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
552 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
553 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
554 >Causes LWASM to generate a list of symbols when generating a listing. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
555 It has no effect unless a listing is being generated.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
556 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
557 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
558 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
559 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
560 >--obj</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
561 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
562 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
563 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
564 >Select the proprietary object file format as the output target.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
565 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
566 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
567 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
568 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
569 >--output=FILE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
570 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
571 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
572 >-o FILE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
573 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
574 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
575 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
576 >This option specifies the name of the output file. If not specified, the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
577 default is <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
578 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
579 >a.out</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
580 >.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
581 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
582 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
583 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
584 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
585 >--pragma=pragma</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
586 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
587 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
588 >-p pragma</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
589 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
590 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
591 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
592 >Specify assembler pragmas. Multiple pragmas are separated by commas. The |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
593 pragmas accepted are the same as for the PRAGMA assembler directive described |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
594 below.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
595 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
596 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
597 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
598 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
599 >--raw</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
600 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
601 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
602 >-r</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
603 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
604 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
605 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
606 >Select raw binary as the output target.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
607 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
608 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
609 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
610 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
611 >--includedir=path</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
612 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
613 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
614 >-I path</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
615 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
616 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
617 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
618 >Add <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
619 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
620 >path</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
621 > to the end of the include path.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
622 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
623 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
624 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
625 CLASS="OPTION" |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
626 >--define=SYM[=VAL]</CODE |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
627 >, <CODE |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
628 CLASS="OPTION" |
245
0bc1c88fe776
Fix typo in documentation of lwasm --define switch.
William Astle <lost@l-w.ca>
parents:
236
diff
changeset
|
629 >-D SYM[=VAL]</CODE |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
630 ></DT |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
631 ><DD |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
632 ><P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
633 >Pre-defines the symbol SYM as either the specified VAL. If VAL is omitted, |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
634 the symbol is defined as 1. The symbol will be defined as though it were |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
635 defined using the SET directive in the assembly source. That means it can |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
636 be overridden by a SET directive within the source code. Attempting to |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
637 redefine SYM using EQU will result in a multiply defined symbol error.</P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
638 ></DD |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
639 ><DT |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
640 ><CODE |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
641 CLASS="OPTION" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
642 >--help</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
643 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
644 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
645 >-?</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
646 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
647 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
648 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
649 >Present a help screen describing the command line options.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
650 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
651 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
652 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
653 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
654 >--usage</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
655 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
656 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
657 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
658 >Provide a summary of the command line options.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
659 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
660 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
661 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
662 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
663 >--version</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
664 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
665 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
666 >-V</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
667 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
668 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
669 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
670 >Display the software version.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
671 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
672 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
673 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
674 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
675 >--debug</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
676 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
677 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
678 >-d</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
679 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
680 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
681 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
682 >Increase the debugging level. Only really useful to people hacking on the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
683 LWASM source code itself.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
684 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
685 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
686 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
687 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
688 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
689 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
690 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
691 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
692 ><A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
693 NAME="AEN170" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
694 >3.2. Dialects</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
695 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
696 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
697 >LWASM supports all documented MC6809 instructions as defined by Motorola. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
698 It also supports all known HD6309 instructions. While there is general |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
699 agreement on the pneumonics for most of the 6309 instructions, there is some |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
700 variance with the block transfer instructions. TFM for all four variations |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
701 seems to have gained the most traction and, thus, this is the form that is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
702 recommended for LWASM. However, it also supports COPY, COPY-, IMP, EXP, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
703 TFRP, TFRM, TFRS, and TFRR. It further adds COPY+ as a synomym for COPY, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
704 IMPLODE for IMP, and EXPAND for EXP.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
705 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
706 >By default, LWASM accepts 6309 instructions. However, using the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
707 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
708 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
709 >--6809</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
710 > parameter, you can cause it to throw errors on |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
711 6309 instructions instead.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
712 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
713 >The standard addressing mode specifiers are supported. These are the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
714 hash sign ("#") for immediate mode, the less than sign ("<") for forced |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
715 eight bit modes, and the greater than sign (">") for forced sixteen bit modes.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
716 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
717 >Additionally, LWASM supports using the asterisk ("*") to indicate |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
718 base page addressing. This should not be used in hand-written source code, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
719 however, because it is non-standard and may or may not be present in future |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
720 versions of LWASM.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
721 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
722 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
723 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
724 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
725 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
726 ><A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
727 NAME="AEN177" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
728 >3.3. Source Format</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
729 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
730 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
731 >LWASM accepts plain text files in a relatively free form. It can handle |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
732 lines terminated with CR, LF, CRLF, or LFCR which means it should be able |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
733 to assemble files on any platform on which it compiles.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
734 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
735 >Each line may start with a symbol. If a symbol is present, there must not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
736 be any whitespace preceding it. It is legal for a line to contain nothing |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
737 but a symbol.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
738 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
739 >The op code is separated from the symbol by whitespace. If there is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
740 no symbol, there must be at least one white space character preceding it. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
741 If applicable, the operand follows separated by whitespace. Following the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
742 opcode and operand is an optional comment.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
743 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
744 > It is important to note that operands cannot contain any whitespace |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
745 except in the case of delimited strings. This is because the first |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
746 whitespace character will be interpreted as the separator between the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
747 operand column and the comment. This behaviour is required for approximate |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
748 source compatibility with other 6x09 assemblers. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
749 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
750 >A comment can also be introduced with a * or a ;. The comment character is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
751 optional for end of statement comments. However, if a symbol is the only |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
752 thing present on the line other than the comment, the comment character is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
753 mandatory to prevent the assembler from interpreting the comment as an opcode.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
754 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
755 >For compatibility with the output generated by some C preprocessors, LWASM |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
756 will also ignore lines that begin with a #. This should not be used as a general |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
757 comment character, however.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
758 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
759 >The opcode is not treated case sensitively. Neither are register names in |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
760 the operand fields. Symbols, however, are case sensitive.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
761 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
762 > As of version 2.6, LWASM supports files with line numbers. If line |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
763 numbers are present, the line must start with a digit. The line number |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
764 itself must consist only of digits. The line number must then be followed |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
765 by either the end of the line or exactly one white space character. After |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
766 that white space character, the lines are interpreted exactly as above. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
767 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
768 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
769 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
770 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
771 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
772 ><A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
773 NAME="AEN187" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
774 >3.4. Symbols</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
775 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
776 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
777 >Symbols have no length restriction. They may contain letters, numbers, dots, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
778 dollar signs, and underscores. They must start with a letter, dot, or |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
779 underscore.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
780 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
781 >LWASM also supports the concept of a local symbol. A local symbol is one |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
782 which contains either a "?" or a "@", which can appear anywhere in the symbol. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
783 The scope of a local symbol is determined by a number of factors. First, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
784 each included file gets its own local symbol scope. A blank line will also |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
785 be considered a local scope barrier. Macros each have their own local symbol |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
786 scope as well (which has a side effect that you cannot use a local symbol |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
787 as an argument to a macro). There are other factors as well. In general, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
788 a local symbol is restricted to the block of code it is defined within.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
789 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
790 >By default, unless assembling to the os9 target, a "$" in the symbol will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
791 also make it local. This can be controlled by the "dollarlocal" and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
792 "nodollarlocal" pragmas. In the absence of a pragma to the contrary, for |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
793 the os9 target, a "$" in the symbol will not make it considered local while |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
794 for all other targets it will.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
795 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
796 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
797 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
798 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
799 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
800 ><A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
801 NAME="AEN192" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
802 >3.5. Numbers and Expressions</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
803 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
804 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
805 > Numbers can be expressed in binary, octal, decimal, or hexadecimal. Binary |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
806 numbers may be prefixed with a "%" symbol or suffixed with a "b" or "B". |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
807 Octal numbers may be prefixed with "@" or suffixed with "Q", "q", "O", or |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
808 "o". Hexadecimal numbers may be prefixed with "$", "0x" or "0X", or suffixed |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
809 with "H". No prefix or suffix is required for decimal numbers but they can |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
810 be prefixed with "&" if desired. Any constant which begins with a letter |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
811 must be expressed with the correct prefix base identifier or be prefixed |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
812 with a 0. Thus hexadecimal FF would have to be written either 0FFH or $FF. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
813 Numbers are not case sensitive. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
814 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
815 > A symbol may appear at any point where a number is acceptable. The |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
816 special symbol "*" can be used to represent the starting address of the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
817 current source line within expressions. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
818 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
819 >The ASCII value of a character can be included by prefixing it with a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
820 single quote ('). The ASCII values of two characters can be included by |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
821 prefixing the characters with a quote (").</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
822 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
823 > LWASM supports the following basic binary operators: +, -, *, /, and %. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
824 These represent addition, subtraction, multiplication, division, and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
825 modulus. It also supports unary negation and unary 1's complement (- and ^ |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
826 respectively). It is also possible to use ~ for the unary 1's complement |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
827 operator. For completeness, a unary positive (+) is supported though it is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
828 a no-op. LWASM also supports using |, &, and ^ for bitwise or, bitwise and, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
829 and bitwise exclusive or respectively. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
830 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
831 > Operator precedence follows the usual rules. Multiplication, division, and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
832 modulus take precedence over addition and subtraction. Unary operators take |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
833 precedence over binary operators. Bitwise operators are lower precdence |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
834 than addition and subtraction. To force a specific order of evaluation, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
835 parentheses can be used in the usual manner. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
836 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
837 > As of LWASM 2.5, the operators && and || are recognized for boolean and and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
838 boolean or respectively. They will return either 0 or 1 (false or true). |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
839 They have the lowest precedence of all the binary operators. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
840 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
841 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
842 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
843 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
844 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
845 ><A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
846 NAME="AEN200" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
847 >3.6. Assembler Directives</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
848 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
849 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
850 >Various directives can be used to control the behaviour of the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
851 assembler or to include non-code/data in the resulting output. Those directives |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
852 that are not described in detail in other sections of this document are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
853 described below.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
854 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
855 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
856 ><HR><H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
857 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
858 ><A |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
859 NAME="AEN203" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
860 >3.6.1. Data Directives</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
861 ></H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
862 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
863 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
864 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
865 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
866 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
867 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
868 >FCB <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
869 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
870 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
871 >, .DB <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
872 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
873 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
874 >, .BYTE <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
875 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
876 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
877 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
878 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
879 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
880 >Include one or more constant bytes (separated by commas) in the output.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
881 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
882 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
883 >FDB <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
884 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
885 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
886 >, .DW <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
887 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
888 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
889 >, .WORD <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
890 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
891 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
892 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
893 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
894 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
895 >Include one or more words (separated by commas) in the output.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
896 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
897 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
898 >FQB <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
899 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
900 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
901 >, .QUAD <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
902 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
903 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
904 >, .4BYTE <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
905 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
906 >expr[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
907 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
908 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
909 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
910 >Include one or more double words (separated by commas) in the output.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
911 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
912 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
913 >FCC <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
914 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
915 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
916 >, .ASCII <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
917 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
918 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
919 >, .STR <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
920 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
921 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
922 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
923 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
924 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
925 >Include a string of text in the output. The first character of the operand |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
926 is the delimiter which must appear as the last character and cannot appear |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
927 within the string. The string is included with no modifications></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
928 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
929 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
930 >FCN <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
931 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
932 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
933 >, .ASCIZ <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
934 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
935 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
936 >, .STRZ <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
937 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
938 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
939 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
940 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
941 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
942 >Include a NUL terminated string of text in the output. The first character of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
943 the operand is the delimiter which must appear as the last character and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
944 cannot appear within the string. A NUL byte is automatically appended to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
945 the string.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
946 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
947 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
948 >FCS <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
949 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
950 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
951 >, .ASCIS <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
952 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
953 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
954 >, .STRS <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
955 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
956 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
957 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
958 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
959 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
960 >Include a string of text in the output with bit 7 of the final byte set. The |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
961 first character of the operand is the delimiter which must appear as the last |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
962 character and cannot appear within the string.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
963 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
964 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
965 >ZMB <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
966 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
967 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
968 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
969 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
970 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
971 >Include a number of NUL bytes in the output. The number must be fully resolvable |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
972 during pass 1 of assembly so no forward or external references are permitted.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
973 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
974 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
975 >ZMD <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
976 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
977 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
978 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
979 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
980 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
981 >Include a number of zero words in the output. The number must be fully |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
982 resolvable during pass 1 of assembly so no forward or external references are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
983 permitted.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
984 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
985 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
986 >ZMQ <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
987 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
988 >expr<CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
989 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
990 ></CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
991 ></CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
992 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
993 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
994 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
995 >Include a number of zero double-words in the output. The number must be fully |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
996 resolvable during pass 1 of assembly so no forward or external references are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
997 permitted.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
998 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
999 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1000 >RMB <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1001 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1002 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1003 >, .BLKB <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1004 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1005 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1006 >, .DS <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1007 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1008 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1009 >, .RS <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1010 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1011 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1012 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1013 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1014 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1015 >Reserve a number of bytes in the output. The number must be fully resolvable |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1016 during pass 1 of assembly so no forward or external references are permitted. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1017 The value of the bytes is undefined.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1018 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1019 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1020 >RMD <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1021 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1022 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1023 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1024 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1025 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1026 >Reserve a number of words in the output. The number must be fully |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1027 resolvable during pass 1 of assembly so no forward or external references are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1028 permitted. The value of the words is undefined.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1029 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1030 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1031 >RMQ <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1032 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1033 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1034 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1035 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1036 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1037 >Reserve a number of double-words in the output. The number must be fully |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1038 resolvable during pass 1 of assembly so no forward or external references are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1039 permitted. The value of the double-words is undefined.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1040 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1041 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1042 >INCLUDEBIN <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1043 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1044 >filename</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1045 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1046 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1047 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1048 >Treat the contents of <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1049 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1050 >filename</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1051 > as a string of bytes to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1052 be included literally at the current assembly point. This has the same effect |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1053 as converting the file contents to a series of FCB statements and including |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1054 those at the current assembly point.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1055 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1056 > If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1057 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1058 >filename</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1059 > beings with a /, the file name |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1060 will be taken as absolute. Otherwise, the current directory will be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1061 searched followed by the search path in the order specified.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1062 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1063 > Please note that absolute path detection including drive letters will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1064 not function correctly on Windows platforms. Non-absolute inclusion will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1065 work, however.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1066 ></DD |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1067 ><DT |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1068 >FILL <CODE |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1069 CLASS="PARAMETER" |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1070 >size</CODE |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1071 >,<CODE |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1072 CLASS="PARAMETER" |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1073 >byte</CODE |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1074 ></DT |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1075 ><DD |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1076 ><P |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1077 >Insert <CODE |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1078 CLASS="PARAMETER" |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1079 >size</CODE |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1080 > bytes of <CODE |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1081 CLASS="PARAMETER" |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1082 >byte</CODE |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1083 >.</P |
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1084 ></DD |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1085 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1086 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1087 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1088 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1089 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1090 ><HR><H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1091 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1092 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1093 NAME="AEN314" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1094 >3.6.2. Address Definition</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1095 ></H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1096 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1097 >The directives in this section all control the addresses of symbols |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1098 or the assembly process itself.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1099 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1100 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1101 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1102 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1103 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1104 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1105 >ORG <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1106 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1107 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1108 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1109 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1110 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1111 >Set the assembly address. The address must be fully resolvable on the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1112 first pass so no external or forward references are permitted. ORG is not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1113 permitted within sections when outputting to object files. For the DECB |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1114 target, each ORG directive after which output is generated will cause |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1115 a new preamble to be output. ORG is only used to determine the addresses |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1116 of symbols when the raw target is used.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1117 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1118 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1119 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1120 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1121 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1122 > EQU <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1123 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1124 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1125 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1126 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1127 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1128 > = <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1129 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1130 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1131 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1132 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1133 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1134 >Define the value of <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1135 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1136 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1137 > to be <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1138 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1139 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1140 >.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1141 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1142 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1143 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1144 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1145 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1146 > SET <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1147 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1148 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1149 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1150 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1151 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1152 >Define the value of <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1153 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1154 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1155 > to be <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1156 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1157 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1158 >. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1159 Unlike EQU, SET permits symbols to be defined multiple times as long as SET |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1160 is used for all instances. Use of the symbol before the first SET statement |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1161 that sets its value is undefined.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1162 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1163 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1164 >SETDP <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1165 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1166 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1167 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1168 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1169 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1170 >Inform the assembler that it can assume the DP register contains |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1171 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1172 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1173 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1174 >. This directive is only advice to the assembler |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1175 to determine whether an address is in the direct page and has no effect |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1176 on the contents of the DP register. The value must be fully resolved during |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1177 the first assembly pass because it affects the sizes of subsequent instructions.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1178 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1179 >This directive has no effect in the object file target.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1180 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1181 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1182 >ALIGN <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1183 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1184 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1185 >[,<CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1186 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1187 >value</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1188 >]</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1189 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1190 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1191 >Force the current assembly address to be a multiple of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1192 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1193 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1194 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1195 >. If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1196 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1197 >value</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1198 > is not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1199 specified, a series of NUL bytes is output to force the alignment, if |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1200 required. Otherwise, the low order 8 bits of <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1201 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1202 >value</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1203 > |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1204 will be used as the fill. The alignment value must be fully resolved on the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1205 first pass because it affects the addresses of subsquent instructions. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1206 However, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1207 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1208 >value</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1209 > may include forward references; as |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1210 long as it resolves to a constant for the second pass, the value will be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1211 accepted.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1212 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1213 >Unless <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1214 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1215 >value</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1216 > is specified as something like $12, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1217 this directive is not suitable for inclusion in the middle of actual code. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1218 The default padding value is $00 which is intended to be used within data |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1219 blocks. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1220 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1221 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1222 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1223 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1224 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1225 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1226 ><HR><H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1227 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1228 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1229 NAME="AEN361" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1230 >3.6.3. Conditional Assembly</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1231 ></H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1232 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1233 >Portions of the source code can be excluded or included based on conditions |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1234 known at assembly time. Conditionals can be nested arbitrarily deeply. The |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1235 directives associated with conditional assembly are described in this section.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1236 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1237 >All conditionals must be fully bracketed. That is, every conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1238 statement must eventually be followed by an ENDC at the same level of nesting.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1239 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1240 >Conditional expressions are only evaluated on the first assembly pass. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1241 It is not possible to game the assembly process by having a conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1242 change its value between assembly passes. Due to the underlying architecture |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1243 of LWASM, there is no possible utility to IFP1 and IFP2, nor can they, as of LWASM 3.0, actually |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1244 be implemented meaningfully. Thus there is not and never will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1245 be any equivalent of IFP1 or IFP2 as provided by other assemblers. Use of those opcodes |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1246 will throw a warning and be ignored.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1247 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1248 >It is important to note that if a conditional does not resolve to a constant |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1249 during the first parsing pass, an error will be thrown. This is unavoidable because the assembler |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1250 must make a decision about which source to include and which source to exclude at this stage. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1251 Thus, expressions that work normally elsewhere will not work for conditions.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1252 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1253 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1254 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1255 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1256 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1257 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1258 >IFEQ <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1259 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1260 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1261 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1262 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1263 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1264 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1265 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1266 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1267 > evaluates to zero, the conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1268 will be considered true.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1269 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1270 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1271 >IFNE <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1272 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1273 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1274 >, IF <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1275 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1276 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1277 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1278 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1279 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1280 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1281 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1282 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1283 > evaluates to a non-zero value, the conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1284 will be considered true.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1285 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1286 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1287 >IFGT <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1288 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1289 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1290 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1291 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1292 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1293 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1294 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1295 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1296 > evaluates to a value greater than zero, the conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1297 will be considered true.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1298 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1299 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1300 >IFGE <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1301 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1302 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1303 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1304 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1305 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1306 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1307 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1308 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1309 > evaluates to a value greater than or equal to zero, the conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1310 will be considered true.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1311 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1312 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1313 >IFLT <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1314 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1315 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1316 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1317 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1318 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1319 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1320 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1321 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1322 > evaluates to a value less than zero, the conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1323 will be considered true.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1324 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1325 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1326 >IFLE <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1327 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1328 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1329 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1330 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1331 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1332 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1333 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1334 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1335 > evaluates to a value less than or equal to zero , the conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1336 will be considered true.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1337 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1338 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1339 >IFDEF <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1340 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1341 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1342 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1343 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1344 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1345 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1346 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1347 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1348 > is defined at this point in the assembly |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1349 process, the conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1350 will be considered true.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1351 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1352 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1353 >IFNDEF <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1354 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1355 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1356 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1357 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1358 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1359 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1360 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1361 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1362 > is not defined at this point in the assembly |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1363 process, the conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1364 will be considered true.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1365 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1366 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1367 >ELSE</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1368 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1369 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1370 >If the preceding conditional at the same level of nesting was false, the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1371 statements following will be assembled. If the preceding conditional at |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1372 the same level was true, the statements following will not be assembled. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1373 Note that the preceding conditional might have been another ELSE statement |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1374 although this behaviour is not guaranteed to be supported in future versions |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1375 of LWASM.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1376 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1377 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1378 >ENDC</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1379 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1380 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1381 >This directive marks the end of a conditional construct. Every conditional |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1382 construct must end with an ENDC directive.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1383 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1384 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1385 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1386 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1387 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1388 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1389 ><HR><H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1390 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1391 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1392 NAME="AEN426" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1393 >3.6.4. OS9 Target Directives</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1394 ></H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1395 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1396 >This section includes directives that apply solely to the OS9 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1397 target.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1398 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1399 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1400 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1401 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1402 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1403 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1404 >OS9 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1405 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1406 >syscall</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1407 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1408 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1409 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1410 > This directive generates a call to the specified system call. <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1411 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1412 >syscall</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1413 > may be an arbitrary expression. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1414 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1415 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1416 >MOD <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1417 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1418 >size</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1419 >,<CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1420 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1421 >name</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1422 >,<CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1423 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1424 >type</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1425 >,<CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1426 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1427 >flags</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1428 >,<CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1429 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1430 >execoff</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1431 >,<CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1432 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1433 >datasize</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1434 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1435 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1436 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1437 > This tells LWASM that the beginning of the actual module is here. It will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1438 generate a module header based on the parameters specified. It will also |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1439 begin calcuating the module CRC. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1440 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1441 > The precise meaning of the various parameters is beyond the scope of this |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1442 document since it is not a tutorial on OS9 module programming. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1443 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1444 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1445 >EMOD</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1446 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1447 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1448 > This marks the end of a module and causes LWASM to emit the calculated CRC |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1449 for the module. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1450 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1451 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1452 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1453 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1454 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1455 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1456 ><HR><H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1457 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1458 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1459 NAME="AEN451" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1460 >3.6.5. Miscelaneous Directives</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1461 ></H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1462 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1463 >This section includes directives that do not fit into the other |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1464 categories.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1465 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1466 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1467 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1468 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1469 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1470 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1471 >INCLUDE <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1472 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1473 >filename</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1474 >, USE <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1475 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1476 >filename</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1477 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1478 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1479 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1480 > Include the contents of <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1481 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1482 >filename</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1483 > at |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1484 this point in the assembly as though it were a part of the file currently |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1485 being processed. Note that if whitespace appears in the name of the file, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1486 you must enclose <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1487 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1488 >filename</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1489 > in quotes.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1490 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1491 >Note that the USE variation is provided only for compatibility with other |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1492 assemblers. It is recommended to use the INCLUDE variation.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1493 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1494 >If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1495 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1496 >filename</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1497 > begins with a "/", it is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1498 interpreted as an absolute path. If it does not, the search path will be used |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1499 to find the file. First, the directory containing the file that contains this |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1500 directive. (Includes within an included file are relative to the included file, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1501 not the file that included it.) If the file is not found there, the include path |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1502 is searched. If it is still not found, an error will be thrown. Note that the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1503 current directory as understood by your shell or operating system is not searched.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1504 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1505 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1506 >END <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1507 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1508 >[expr]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1509 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1510 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1511 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1512 >This directive causes the assembler to stop assembling immediately as though |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1513 it ran out of input. For the DECB target only, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1514 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1515 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1516 > |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1517 can be used to set the execution address of the resulting binary. For all |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1518 other targets, specifying <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1519 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1520 >expr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1521 > will cause an error.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1522 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1523 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1524 >ERROR <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1525 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1526 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1527 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1528 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1529 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1530 >Causes a custom error message to be printed at this line. This will cause |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1531 assembly to fail. This directive is most useful inside conditional constructs |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1532 to cause assembly to fail if some condition that is known bad happens. Everything |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1533 from the directive to the end of the line is considered the error message.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1534 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1535 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1536 >WARNING <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1537 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1538 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1539 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1540 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1541 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1542 >Causes a custom warning message to be printed at this line. This will not cause |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1543 assembly to fail. This directive is most useful inside conditional constructs |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1544 or include files to alert the programmer to a deprecated feature being used |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1545 or some other condition that may cause trouble later, but which may, in fact, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1546 not cause any trouble.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1547 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1548 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1549 >.MODULE <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1550 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1551 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1552 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1553 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1554 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1555 >This directive is ignored for most output targets. If the output target |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1556 supports encoding a module name into it, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1557 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1558 >string</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1559 > |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1560 will be used as the module name.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1561 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1562 >As of version 3.0, no supported output targets support this directive.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1563 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1564 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1565 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1566 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1567 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1568 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1569 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1570 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1571 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1572 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1573 NAME="AEN491" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1574 >3.7. Macros</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1575 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1576 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1577 >LWASM is a macro assembler. A macro is simply a name that stands in for a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1578 series of instructions. Once a macro is defined, it is used like any other |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1579 assembler directive. Defining a macro can be considered equivalent to adding |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1580 additional assembler directives.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1581 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1582 >Macros may accept parameters. These parameters are referenced within a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1583 macro by the a backslash ("\") followed by a digit 1 through 9 for the first |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1584 through ninth parameters. They may also be referenced by enclosing the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1585 decimal parameter number in braces ("{num}"). The special expansion "\*" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1586 translates to the exact parameter string, including all parameters, passed |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1587 to the macro. These parameter references are replaced with the verbatim text |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1588 of the parameter passed to the macro. A reference to a non-existent |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1589 parameter will be replaced by an empty string. Macro parameters are expanded |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1590 everywhere on each source line. That means the parameter to a macro could be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1591 used as a symbol or it could even appear in a comment or could cause an |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1592 entire source line to be commented out when the macro is expanded. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1593 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1594 >Parameters passed to a macro are separated by commas and the parameter list |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1595 is terminated by any whitespace. This means that neither a comma nor whitespace |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1596 may be included in a macro parameter.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1597 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1598 >Macro expansion is done recursively. That is, within a macro, macros are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1599 expanded. This can lead to infinite loops in macro expansion. If the assembler |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1600 hangs for a long time while assembling a file that uses macros, this may be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1601 the reason.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1602 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1603 >Each macro expansion receives its own local symbol context which is not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1604 inherited by any macros called by it nor is it inherited from the context |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1605 the macro was instantiated in. That means it is possible to use local symbols |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1606 within macros without having them collide with symbols in other macros or |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1607 outside the macro itself. However, this also means that using a local symbol |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1608 as a parameter to a macro, while legal, will not do what it would seem to do |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1609 as it will result in looking up the local symbol in the macro's symbol context |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1610 rather than the enclosing context where it came from, likely yielding either |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1611 an undefined symbol error or bizarre assembly results.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1612 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1613 >Note that there is no way to define a macro as local to a symbol context. All |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1614 macros are part of the global macro namespace. However, macros have a separate |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1615 namespace from symbols so it is possible to have a symbol with the same name |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1616 as a macro.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1617 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1618 >Macros are defined only during the first pass. Macro expansion also |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1619 only occurs during the first pass. On the second pass, the macro |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1620 definition is simply ignored. Macros must be defined before they are used.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1621 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1622 >The following directives are used when defining macros.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1623 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1624 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1625 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1626 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1627 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1628 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1629 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1630 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1631 >macroname</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1632 > MACRO [NOEXPAND]</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1633 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1634 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1635 >This directive is used to being the definition of a macro called |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1636 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1637 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1638 >macroname</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1639 >. If <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1640 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1641 >macroname</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1642 > already |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1643 exists, it is considered an error. Attempting to define a macro within a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1644 macro is undefined. It may work and it may not so the behaviour should not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1645 be relied upon.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1646 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1647 >If NOEXPAND is specified, the macro will not be expanded in a program |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1648 listing. Instead, all bytes emitted by all instructions within the macro |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1649 will appear to be emitted on the line where the macro is invoked, starting |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1650 at the address of the line of the invokation. If the macro uses ORG or other |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1651 directives that define symbols or change the assembly address, these things |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1652 will also be hidden (except in the symbol table) and the output bytes will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1653 appear with incorrect address attribution. Thus, NOEXPAND should only be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1654 used for macros that do not mess with the assembly address or otherwise |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1655 define symbols that should be visible.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1656 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1657 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1658 >ENDM</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1659 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1660 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1661 >This directive indicates the end of the macro currently being defined. It |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1662 causes the assembler to resume interpreting source lines as normal.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1663 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1664 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1665 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1666 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1667 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1668 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1669 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1670 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1671 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1672 NAME="AEN514" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1673 >3.8. Structures</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1674 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1675 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1676 > Structures are used to group related data in a fixed structure. A structure |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1677 consists a number of fields, defined in sequential order and which take up |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1678 specified size. The assembler does not enforce any means of access within a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1679 structure; it assumes that whatever you are doing, you intended to do. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1680 There are two pseudo ops that are used for defining structures. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1681 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1682 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1683 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1684 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1685 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1686 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1687 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1688 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1689 >structname</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1690 > STRUCT</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1691 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1692 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1693 > This directive is used to begin the definition of a structure with name |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1694 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1695 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1696 >structname</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1697 >. Subsequent statements all form part of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1698 the structure definition until the end of the structure is declared. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1699 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1700 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1701 >ENDSTRUCT, ENDS</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1702 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1703 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1704 >This directive ends the definition of the structure. ENDSTRUCT is the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1705 preferred form. Prior to version 3.0 of LWASM, ENDS was used to end a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1706 section instead of a structure.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1707 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1708 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1709 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1710 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1711 > Within a structure definition, only reservation pseudo ops are permitted. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1712 Anything else will cause an assembly error.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1713 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1714 > Once a structure is defined, you can reserve an area of memory in the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1715 same structure by using the structure name as the opcode. Structures can |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1716 also contain fields that are themselves structures. See the example |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1717 below.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1718 ><PRE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1719 CLASS="PROGRAMLISTING" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1720 >tstruct2 STRUCT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1721 f1 rmb 1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1722 f2 rmb 1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1723 ENDSTRUCT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1724 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1725 tstruct STRUCT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1726 field1 rmb 2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1727 field2 rmb 3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1728 field3 tstruct2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1729 ENDSTRUCT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1730 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1731 ORG $2000 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1732 var1 tstruct |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1733 var2 tstruct2</PRE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1734 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1735 >Fields are referenced using a dot (.) as a separator. To refer to the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1736 generic offset within a structure, use the structure name to the left of the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1737 dot. If referring to a field within an actual variable, use the variable's |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1738 symbol name to the left of the dot.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1739 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1740 >You can also refer to the actual size of a structure (or a variable |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1741 declared as a structure) using the special symbol sizeof{structname} where |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1742 structname will be the name of the structure or the name of the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1743 variable.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1744 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1745 >Essentially, structures are a shortcut for defining a vast number of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1746 symbols. When a structure is defined, the assembler creates symbols for the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1747 various fields in the form structname.fieldname as well as the appropriate |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1748 sizeof{structname} symbol. When a variable is declared as a structure, the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1749 assembler does the same thing using the name of the variable. You will see |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1750 these symbols in the symbol table when the assembler is instructed to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1751 provide a listing. For instance, the above listing will create the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1752 following symbols (symbol values in parentheses): tstruct2.f1 (0), |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1753 tstruct2.f2 (1), sizeof{tstruct2} (2), tstruct.field1 (0), tstruct.field2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1754 (2), tstruct.field3 (5), tstruct.field3.f1 (5), tstruct.field3.f2 (6), |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1755 sizeof{tstruct.field3} (2), sizeof{tstruct} (7), var1 {$2000}, var1.field1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1756 {$2000}, var1.field2 {$2002}, var1.field3 {$2005}, var1.field3.f1 {$2005}, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1757 var1.field3.f2 {$2006}, sizeof(var1.field3} (2), sizeof{var1} (7), var2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1758 ($2007), var2.f1 ($2007), var2.f2 ($2008), sizeof{var2} (2). </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1759 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1760 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1761 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1762 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1763 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1764 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1765 NAME="AEN535" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1766 >3.9. Object Files and Sections</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1767 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1768 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1769 >The object file target is very useful for large project because it allows |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1770 multiple files to be assembled independently and then linked into the final |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1771 binary at a later time. It allows only the small portion of the project |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1772 that was modified to be re-assembled rather than requiring the entire set |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1773 of source code to be available to the assembler in a single assembly process. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1774 This can be particularly important if there are a large number of macros, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1775 symbol definitions, or other metadata that uses resources at assembly time. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1776 By far the largest benefit, however, is keeping the source files small enough |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1777 for a mere mortal to find things in them.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1778 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1779 >With multi-file projects, there needs to be a means of resolving references to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1780 symbols in other source files. These are known as external references. The |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1781 addresses of these symbols cannot be known until the linker joins all the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1782 object files into a single binary. This means that the assembler must be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1783 able to output the object code without knowing the value of the symbol. This |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1784 places some restrictions on the code generated by the assembler. For |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1785 example, the assembler cannot generate direct page addressing for instructions |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1786 that reference external symbols because the address of the symbol may not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1787 be in the direct page. Similarly, relative branches and PC relative addressing |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1788 cannot be used in their eight bit forms. Everything that must be resolved |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1789 by the linker must be assembled to use the largest address size possible to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1790 allow the linker to fill in the correct value at link time. Note that the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1791 same problem applies to absolute address references as well, even those in |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1792 the same source file, because the address is not known until link time.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1793 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1794 >It is often desired in multi-file projects to have code of various types grouped |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1795 together in the final binary generated by the linker as well. The same applies |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1796 to data. In order for the linker to do that, the bits that are to be grouped |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1797 must be tagged in some manner. This is where the concept of sections comes in. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1798 Each chunk of code or data is part of a section in the object file. Then, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1799 when the linker reads all the object files, it coalesces all sections of the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1800 same name into a single section and then considers it as a unit.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1801 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1802 >The existence of sections, however, raises a problem for symbols even |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1803 within the same source file. Thus, the assembler must treat symbols from |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1804 different sections within the same source file in the same manner as external |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1805 symbols. That is, it must leave them for the linker to resolve at link time, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1806 with all the limitations that entails.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1807 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1808 >In the object file target mode, LWASM requires all source lines that |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1809 cause bytes to be output to be inside a section. Any directives that do |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1810 not cause any bytes to be output can appear outside of a section. This includes |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1811 such things as EQU or RMB. Even ORG can appear outside a section. ORG, however, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1812 makes no sense within a section because it is the linker that determines |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1813 the starting address of the section's code, not the assembler.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1814 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1815 >All symbols defined globally in the assembly process are local to the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1816 source file and cannot be exported. All symbols defined within a section are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1817 considered local to the source file unless otherwise explicitly exported. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1818 Symbols referenced from external source files must be declared external, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1819 either explicitly or by asking the assembler to assume that all undefined |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1820 symbols are external.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1821 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1822 >It is often handy to define a number of memory addresses that will be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1823 used for data at run-time but which need not be included in the binary file. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1824 These memory addresses are not initialized until run-time, either by the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1825 program itself or by the program loader, depending on the operating environment. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1826 Such sections are often known as BSS sections. LWASM supports generating |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1827 sections with a BSS attribute set which causes the section definition including |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1828 symbols exported from that section and those symbols required to resolve |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1829 references from the local file, but with no actual code in the object file. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1830 It is illegal for any source lines within a BSS flagged section to cause any |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1831 bytes to be output.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1832 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1833 >The following directives apply to section handling.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1834 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1835 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1836 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1837 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1838 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1839 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1840 >SECTION <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1841 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1842 >name[,flags]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1843 >, SECT <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1844 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1845 >name[,flags]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1846 >, .AREA <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1847 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1848 >name[,flags]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1849 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1850 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1851 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1852 >Instructs the assembler that the code following this directive is to be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1853 considered part of the section <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1854 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1855 >name</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1856 >. A section name |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1857 may appear multiple times in which case it is as though all the code from |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1858 all the instances of that section appeared adjacent within the source file. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1859 However, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1860 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1861 >flags</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1862 > may only be specified on the first |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1863 instance of the section.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1864 ><P |
168 | 1865 ><CODE |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1866 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1867 >flags</CODE |
168 | 1868 > is a comma separated list of flags. If a |
1869 flag is "bss", the section will be treated as a BSS section and no | |
1870 statements that generate output are permitted.</P | |
1871 ><P | |
1872 >If the flag is "constant", | |
1873 the same restrictions apply as for BSS sections. Additionally, all symbols | |
1874 defined in a constant section define absolute values and will not be | |
1875 adjusted by the linker at link time. Constant sections cannot define | |
1876 complex expressions for symbols; the value must be fully defined at assembly | |
1877 time. Additionally, multiple instances of a constant section do not | |
1878 coalesce into a single addressing unit; each instance starts again at offset | |
1879 0.</P | |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1880 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1881 >If the section name is "bss" or ".bss" in any combination of upper and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1882 lower case, the section is assumed to be a BSS section. In that case, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1883 the flag <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1884 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1885 >!bss</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1886 > can be used to override this assumption.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1887 ><P |
168 | 1888 > If the section name is "_constants" or "_constant", in any |
1889 combination of upper and lower case, the section is assumed to be a constant | |
1890 section. This assumption can be overridden with the "!constant" | |
1891 flag.</P | |
1892 ><P | |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1893 >If assembly is already happening within a section, the section is implicitly |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1894 ended and the new section started. This is not considered an error although |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1895 it is recommended that all sections be explicitly closed.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1896 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1897 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1898 >ENDSECTION, ENDSECT</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1899 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1900 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1901 >This directive ends the current section. This puts assembly outside of any |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1902 sections until the next SECTION directive. ENDSECTION is the preferred form. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1903 Prior to version 3.0 of LWASM, ENDS could also be used to end a section but |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1904 as of version 3.0, it is now an alias for ENDSTRUCT instead.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1905 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1906 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1907 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1908 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1909 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1910 > EXTERN, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1911 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1912 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1913 > EXTERNAL, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1914 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1915 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1916 > IMPORT</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1917 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1918 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1919 >This directive defines <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1920 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1921 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1922 > as an external symbol. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1923 This directive may occur at any point in the source code. EXTERN definitions |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1924 are resolved on the first pass so an EXTERN definition anywhere in the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1925 source file is valid for the entire file. The use of this directive is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1926 optional when the assembler is instructed to assume that all undefined |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1927 symbols are external. In fact, in that mode, if the symbol is referenced |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1928 before the EXTERN directive, an error will occur.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1929 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1930 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1931 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1932 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1933 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1934 > EXPORT, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1935 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1936 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1937 > .GLOBL, EXPORT <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1938 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1939 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1940 >, .GLOBL <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1941 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1942 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1943 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1944 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1945 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1946 >This directive defines <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1947 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1948 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1949 > as an exported symbol. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1950 This directive may occur at any point in the source code, even before the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1951 definition of the exported symbol.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1952 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1953 >Note that <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1954 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1955 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1956 > may appear as the operand or as the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1957 statement's symbol. If there is a symbol on the statement, that will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1958 take precedence over any operand that is present.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1959 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1960 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1961 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1962 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1963 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1964 > EXTDEP</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1965 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1966 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1967 >This directive forces an external dependency on |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1968 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1969 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1970 >sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1971 >, even if it is never referenced anywhere else in |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1972 this file.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1973 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1974 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1975 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1976 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1977 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1978 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1979 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1980 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1981 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
1982 NAME="AEN599" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1983 >3.10. Assembler Modes and Pragmas</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1984 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1985 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1986 >There are a number of options that affect the way assembly is performed. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1987 Some of these options can only be specified on the command line because |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1988 they determine something absolute about the assembly process. These include |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1989 such things as the output target. Other things may be switchable during |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1990 the assembly process. These are known as pragmas and are, by definition, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1991 not portable between assemblers.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1992 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1993 >LWASM supports a number of pragmas that affect code generation or |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1994 otherwise affect the behaviour of the assembler. These may be specified by |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1995 way of a command line option or by assembler directives. The directives |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1996 are as follows.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1997 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1998 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
1999 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2000 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2001 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2002 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2003 >PRAGMA <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2004 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2005 >pragma[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2006 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2007 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2008 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2009 >Specifies that the assembler should bring into force all <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2010 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2011 >pragma</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2012 >s |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2013 specified. Any unrecognized pragma will cause an assembly error. The new |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2014 pragmas will take effect immediately. This directive should be used when |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2015 the program will assemble incorrectly if the pragma is ignored or not supported.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2016 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2017 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2018 >*PRAGMA <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2019 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2020 >pragma[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2021 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2022 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2023 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2024 >This is identical to the PRAGMA directive except no error will occur with |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2025 unrecognized or unsupported pragmas. This directive, by virtue of starting |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2026 with a comment character, will also be ignored by assemblers that do not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2027 support this directive. Use this variation if the pragma is not required |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2028 for correct functioning of the code.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2029 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2030 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2031 >*PRAGMAPUSH <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2032 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2033 >pragma[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2034 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2035 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2036 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2037 >This directive saves the current state of the specified pragma(s) for later retrieval. See discussion below for more information.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2038 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2039 >This directive will not throw any errors for any reason.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2040 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2041 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2042 >*PRAGMAPOP <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2043 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2044 >pragma[,...]</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2045 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2046 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2047 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2048 >This directive restores the previously saved state of the specified pragma(s). See discussion below for more information.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2049 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2050 >This directive will not throw any errors for any reason.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2051 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2052 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2053 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2054 ><P |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2055 >Each pragma supported has a positive version and a negative version. |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2056 The positive version enables the pragma while the negative version disables |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2057 it. The negatitve version is simply the positive version with "no" prefixed |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2058 to it. For instance, "pragma" vs. "nopragma". When only one version is |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2059 listed below, its opposite can be obtained by prepending "no" if it is not |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2060 present or removing "no" from the beginning if it is present.</P |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2061 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2062 >Pragmas are not case sensitive.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2063 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2064 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2065 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2066 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2067 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2068 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2069 >index0tonone</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2070 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2071 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2072 >When in force, this pragma enables an optimization affecting indexed addressing |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2073 modes. When the offset expression in an indexed mode evaluates to zero but is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2074 not explicity written as 0, this will replace the operand with the equivalent |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2075 no offset mode, thus creating slightly faster code. Because of the advantages |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2076 of this optimization, it is enabled by default.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2077 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2078 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2079 >cescapes</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2080 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2081 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2082 >This pragma will cause strings in the FCC, FCS, and FCN pseudo operations to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2083 have C-style escape sequences interpreted. The one departure from the official |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2084 spec is that unrecognized escape sequences will return either the character |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2085 immediately following the backslash or some undefined value. Do not rely |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2086 on the behaviour of undefined escape sequences.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2087 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2088 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2089 >importundefexport</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2090 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2091 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2092 >This pragma is only valid for targets that support external references. When |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2093 in force, it will cause the EXPORT directive to act as IMPORT if the symbol |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2094 to be exported is not defined. This is provided for compatibility with the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2095 output of gcc6809 and should not be used in hand written code. Because of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2096 the confusion this pragma can cause, it is disabled by default.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2097 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2098 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2099 >undefextern</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2100 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2101 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2102 >This pragma is only valid for targets that support external references. When in |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2103 force, if the assembler sees an undefined symbol on the second pass, it will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2104 automatically define it as an external symbol. This automatic definition will |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2105 apply for the remainder of the assembly process, even if the pragma is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2106 subsequently turned off. Because this behaviour would be potentially surprising, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2107 this pragma defaults to off.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2108 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2109 >The primary use for this pragma is for projects that share a large number of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2110 symbols between source files. In such cases, it is impractical to enumerate |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2111 all the external references in every source file. This allows the assembler |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2112 and linker to do the heavy lifting while not preventing a particular source |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2113 module from defining a local symbol of the same name as an external symbol |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2114 if it does not need the external symbol. (This pragma will not cause an |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2115 automatic external definition if there is already a locally defined symbol.)</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2116 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2117 >This pragma will often be specified on the command line for large projects. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2118 However, depending on the specific dynamics of the project, it may be sufficient |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2119 for one or two files to use this pragma internally.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2120 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2121 ><DT |
253 | 2122 >export</DT |
2123 ><DD | |
2124 ><P | |
2125 >This pragma causes all symbols to be added to the export list | |
2126 automatically. This is useful when a large number of symbols need to be | |
2127 exported but you do not wish to include an EXPORT directive for all of them. | |
2128 This is often useful on the command line but might be useful even inline | |
2129 with the PRAGMA directive if a large number of symbols in a row are to be | |
2130 exported.</P | |
2131 ></DD | |
2132 ><DT | |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2133 >dollarlocal</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2134 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2135 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2136 >When set, a "$" in a symbol makes it local. When not set, "$" does not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2137 cause a symbol to be local. It is set by default except when using the OS9 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2138 target.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2139 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2140 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2141 >dollarnotlocal</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2142 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2143 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2144 > This is the same as the "dollarlocal" pragma except its sense is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2145 reversed. That is, "dollarlocal" and "nodollarnotlocal" are equivalent and |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2146 "nodollarlocal" and "dollarnotlocal" are equivalent. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2147 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2148 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2149 >pcaspcr</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2150 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2151 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2152 > Normally, LWASM makes a distinction between PC and PCR in program |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2153 counter relative addressing. In particular, the use of PC means an absolute |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2154 offset from PC while PCR causes the assembler to calculate the offset to the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2155 specified operand and use that as the offset from PC. By setting this |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2156 pragma, you can have PC treated the same as PCR. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2157 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2158 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2159 >shadow</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2160 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2161 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2162 >When this pragma is in effect, it becomes possible to define a macro |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2163 that matches an internal operation code. Thus, it makes it possible to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2164 redefine either CPU instructions or pseudo operations. Because this feature |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2165 is of dubious utility, it is disabled by default.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2166 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2167 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2168 >nolist</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2169 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2170 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2171 >Lines where this pragma is in effect will not appear in the assembly |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2172 listing. Also, any symbols defined under this pragma will not show up in |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2173 the symbol list. This is most useful in include files to avoid spamming the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2174 assembly listing with dozens, hundreds, or thousands of irrelevant |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2175 symbols.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2176 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2177 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2178 >autobranchlength</DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2179 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2180 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2181 >One of the perennial annoyances for 6809 programmers is that the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2182 mneumonics for the short and long branch instructions are different (bxx vs. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2183 lbxx), which is at odds with the rest of the instruction set. This pragma |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2184 is a solution to those annoying byte overflow errors that short branch |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2185 instructions tend to aquire.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2186 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2187 >When this pragma is in effect, which is not the default, whenever any |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2188 relative branch instruction is used, its size will be automatically |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2189 determined based on the actual distance to the destination. In other words, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2190 one can write code with long or short branches everywhere and the assembler |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2191 will choose a size for the branch.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2192 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2193 >Also, while this pragma is in effect, the > and < symbols can be used |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2194 to force the branch size, analogous to their use for other instructions with |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2195 < forcing 8 bit offsets and > forcing 16 bit offets.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2196 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2197 >Because this pragma leads to source that is incompatible with other |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2198 assemblers, it is strongly recommended that it be invoked using the PRAGMA |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2199 directive within the source code rather than on the command line or via the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2200 *PRAGMA directive. This way, an error will be raised if someone tries to |
231
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2201 assemble the code under a different assembler.</P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2202 ></DD |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2203 ><DT |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2204 >nosymbolcase, symbolnocase</DT |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2205 ><DD |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2206 ><P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2207 >Any symbol defined while this pragma is in force will be treated as |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2208 case insensitive, regardless whether the pragma is in force when the symbol |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2209 is referenced.</P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2210 ><P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2211 >It is important to note that this pragma will not work as expected in |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2212 all cases when using the object file assembly target. It is intended for |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2213 use only when the assembler will be producing the final binary.</P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2214 ></DD |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2215 ><DT |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2216 >condundefzero</DT |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2217 ><DD |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2218 ><P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2219 >This pragma will cause the assembler to change the way it handles |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2220 symbols in conditional expressions. Ordinarily, any symbol that is not |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2221 defined prior to the conditional will throw an undefined symbol error. With |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2222 this pragma in effect, symbols that are not yet defined at the point the |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2223 conditional is encountered will be treated as zero.</P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2224 ><P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2225 >This is not the default because it encourages poor code design. One |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2226 should use the "IFDEF" or "IFNDEF" conditionals to test for the presence of |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2227 a symbol.</P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2228 ><P |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2229 >It is important to note that if a symbol is defined but it does not |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2230 yet evaluate to a constant value at the point where the conditional appears, |
2cc599f1bebf
Added --define to lwasm documentation.
William Astle <lost@l-w.ca>
parents:
168
diff
changeset
|
2231 the assembler will still complain about a non constant condition.</P |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2232 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2233 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2234 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2235 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2236 >As a convenience, each input file has a pragma state stack. This |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2237 allows, through the use of *PRAGMAPUSH and *PRAGMAPOP, a file to change a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2238 pragma state and then restore it to the precise state it had previously. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2239 If, at the end of an input file, all pragma states have not been popped, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2240 they will be removed from the stack. Thus, it is critical to employ |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2241 *PRAGMAPOP correctly. Because each input file has its own pragma stack, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2242 using *PRAGMAPUSH in one file and *PRAGMAPOP in another file will not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2243 work.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2244 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2245 >Pragma stacks are more useful in include files, in particular in |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2246 conjunction with the nolist pragma. One can push the state of the nolist |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2247 pragma, engage the nolist pragma, and then pop the state of the nolist |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2248 pragma at the end of the include file. This will cause the entire include |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2249 file to operate under the nolist pragma. However, if the file is included |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2250 while nolist is already engaged, it will not undo that state.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2251 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2252 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2253 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2254 CLASS="CHAPTER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2255 ><HR><H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2256 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
2257 NAME="AEN693" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2258 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2259 >Chapter 4. LWLINK</H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2260 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2261 >The LWTOOLS linker is called LWLINK. This chapter documents the various features |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2262 of the linker.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2263 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2264 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2265 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2266 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2267 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
2268 NAME="AEN696" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2269 >4.1. Command Line Options</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2270 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2271 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2272 >The binary for LWLINK is called "lwlink". Note that the binary is in lower |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2273 case. lwlink takes the following command line arguments.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2274 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2275 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2276 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2277 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2278 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2279 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2280 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2281 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2282 >--decb</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2283 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2284 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2285 >-b</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2286 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2287 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2288 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2289 >Selects the DECB output format target. This is equivalent to <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2290 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2291 >--format=decb</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2292 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2293 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2294 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2295 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2296 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2297 >--output=FILE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2298 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2299 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2300 >-o FILE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2301 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2302 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2303 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2304 >This option specifies the name of the output file. If not specified, the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2305 default is <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2306 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2307 >a.out</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2308 >.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2309 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2310 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2311 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2312 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2313 >--format=TYPE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2314 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2315 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2316 >-f TYPE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2317 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2318 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2319 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2320 >This option specifies the output format. Valid values are <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2321 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2322 >decb</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2323 > |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2324 and <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2325 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2326 >raw</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2327 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2328 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2329 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2330 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2331 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2332 >--raw</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2333 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2334 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2335 >-r</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2336 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2337 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2338 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2339 >This option specifies the raw output format. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2340 It is equivalent to <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2341 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2342 >--format=raw</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2343 > |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2344 and <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2345 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2346 >-f raw</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2347 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2348 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2349 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2350 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2351 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2352 >--script=FILE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2353 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2354 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2355 >-s</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2356 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2357 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2358 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2359 >This option allows specifying a linking script to override the linker's |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2360 built in defaults.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2361 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2362 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2363 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2364 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2365 >--section-base=SECT=BASE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2366 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2367 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2368 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2369 >Cause section SECT to load at base address BASE. This will be prepended |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2370 to the built-in link script. It is ignored if a link script is provided.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2371 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2372 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2373 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2374 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2375 >--map=FILE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2376 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2377 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2378 >-m FILE</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2379 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2380 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2381 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2382 >This will output a description of the link result to FILE.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2383 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2384 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2385 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2386 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2387 >--library=LIBSPEC</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2388 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2389 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2390 >-l LIBSPEC</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2391 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2392 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2393 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2394 >Load a library using the library search path. LIBSPEC will have "lib" prepended |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2395 and ".a" appended.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2396 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2397 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2398 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2399 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2400 >--library-path=DIR</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2401 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2402 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2403 >-L DIR</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2404 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2405 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2406 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2407 >Add DIR to the library search path.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2408 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2409 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2410 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2411 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2412 >--debug</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2413 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2414 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2415 >-d</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2416 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2417 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2418 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2419 >This option increases the debugging level. It is only useful for LWTOOLS |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2420 developers.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2421 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2422 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2423 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2424 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2425 >--help</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2426 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2427 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2428 >-?</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2429 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2430 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2431 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2432 >This provides a listing of command line options and a brief description |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2433 of each.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2434 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2435 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2436 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2437 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2438 >--usage</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2439 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2440 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2441 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2442 >This will display a usage summary |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2443 of each command line option.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2444 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2445 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2446 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2447 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2448 >--version</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2449 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2450 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2451 >-V</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2452 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2453 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2454 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2455 >This will display the version of LWLINK.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2456 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2457 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2458 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2459 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2460 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2461 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2462 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2463 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2464 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
2465 NAME="AEN793" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2466 >4.2. Linker Operation</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2467 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2468 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2469 > LWLINK takes one or more files in supported input formats and links them |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2470 into a single binary. Currently supported formats are the LWTOOLS object |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2471 file format and the archive format used by LWAR. While the precise method is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2472 slightly different, linking can be conceptualized as the following steps. </P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2473 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2474 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2475 ><OL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2476 TYPE="1" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2477 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2478 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2479 >First, the linker loads a linking script. If no script is specified, it |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2480 loads a built-in default script based on the output format selected. This |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2481 script tells the linker how to lay out the various sections in the final |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2482 binary.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2483 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2484 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2485 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2486 >Next, the linker reads all the input files into memory. At this time, it |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2487 flags any format errors in those files. It constructs a table of symbols |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2488 for each object at this time.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2489 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2490 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2491 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2492 >The linker then proceeds with organizing the sections loaded from each file |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2493 according to the linking script. As it does so, it is able to assign addresses |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2494 to each symbol defined in each object file. At this time, the linker may |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2495 also collapse different instances of the same section name into a single |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2496 section by appending the data from each subsequent instance of the section |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2497 to the first instance of the section.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2498 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2499 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2500 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2501 >Next, the linker looks through every object file for every incomplete reference. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2502 It then attempts to fully resolve that reference. If it cannot do so, it |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2503 throws an error. Once a reference is resolved, the value is placed into |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2504 the binary code at the specified section. It should be noted that an |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2505 incomplete reference can reference either a symbol internal to the object |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2506 file or an external symbol which is in the export list of another object |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2507 file.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2508 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2509 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2510 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2511 >If all of the above steps are successful, the linker opens the output file |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2512 and actually constructs the binary.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2513 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2514 ></OL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2515 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2516 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2517 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2518 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2519 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2520 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
2521 NAME="AEN807" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2522 >4.3. Linking Scripts</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2523 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2524 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2525 >A linker script is used to instruct the linker about how to assemble the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2526 various sections into a completed binary. It consists of a series of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2527 directives which are considered in the order they are encountered.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2528 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2529 >The sections will appear in the resulting binary in the order they are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2530 specified in the script file. If a referenced section is not found, the linker will behave as though the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2531 section did exist but had a zero size, no relocations, and no exports. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2532 A section should only be referenced once. Any subsequent references will have |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2533 an undefined effect.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2534 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2535 >All numbers are in linking scripts are specified in hexadecimal. All directives |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2536 are case sensitive although the hexadecimal numbers are not.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2537 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2538 >A section name can be specified as a "*", then any section not |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2539 already matched by the script will be matched. The "*" can be followed |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2540 by a comma and a flag to narrow the section down slightly, also. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2541 If the flag is "!bss", then any section that is not flagged as a bss section |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2542 will be matched. If the flag is "bss", then any section that is flagged as |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2543 bss will be matched.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2544 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2545 >The following directives are understood in a linker script.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2546 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2547 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2548 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2549 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2550 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2551 ><DT |
236
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2552 >sectopt <CODE |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2553 CLASS="PARAMETER" |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2554 >section</CODE |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2555 > padafter <CODE |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2556 CLASS="PARAMETER" |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2557 >byte,...</CODE |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2558 ></DT |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2559 ><DD |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2560 ><P |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2561 > This will cause the linker to append the specified list of byte values |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2562 (specified in hexadecimal separated by commas) to the end of the named |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2563 section. This is done once all instances of the specified section are |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2564 collected together. This has no effect if the specified section does not |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2565 appear anywhere in any of the objects specified for linking. </P |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2566 ><P |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2567 > If code depends on the presence of this padding somewhere, it is sufficient |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2568 to include an empty section of the specified name in the object that depends |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2569 on it. </P |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2570 ></DD |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2571 ><DT |
234
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2572 >define basesympat <CODE |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2573 CLASS="PARAMETER" |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2574 >string</CODE |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2575 ></DT |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2576 ><DD |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2577 ><P |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2578 > This causes the linker to define a symbol for the ultimate base address of |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2579 each section using the pattern specified by <CODE |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2580 CLASS="PARAMETER" |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2581 >string</CODE |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2582 >. |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2583 In the string, %s can appear exactly once and will be replaced with the |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2584 section name. The base address is calculated after all instances of each |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2585 section have been collapsed together. </P |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2586 ><P |
236
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2587 > It should be noted that if none of the objects to be linked contains a |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2588 particular section name, there will be no base symbol defined for it, even |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2589 if it is listed explicitly in the link script. If code depends on the |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2590 presence of these symbols, it is sufficient to include an empty section of |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2591 the specified name in the object that depends on it. </P |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2592 ><P |
234
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2593 > If the pattern resolves to the same string for multiple |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2594 sections, the results are undefined. </P |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2595 ></DD |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2596 ><DT |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2597 >define lensympat <CODE |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2598 CLASS="PARAMETER" |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2599 >string</CODE |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2600 ></DT |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2601 ><DD |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2602 ><P |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2603 > This causes the linker to define a symbol for the ultimate length of each |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2604 section using the pattern specified by <CODE |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2605 CLASS="PARAMETER" |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2606 >string</CODE |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2607 >. In |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2608 the string, %s can appear exactly once and will be replaced with the section |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2609 name. The length is calculated after all instances of a section have been |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2610 collapsed together. </P |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2611 ><P |
236
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2612 > It should be noted that if none of the objects to be linked contains a |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2613 particular section name, there will be no length symbol defined for it, even |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2614 if it is listed explicitly in the link script. If code depends on the |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2615 presence of these symbols, it is sufficient to include an empty section of |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2616 the specified name in the object that depends on it. </P |
ce1fdc8d6568
Added ability to add padding after a section when linking.
William Astle <lost@l-w.ca>
parents:
234
diff
changeset
|
2617 ><P |
234
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2618 >If the pattern resolves to the same string for multiple |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2619 sections, the results are undefined. </P |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2620 ></DD |
d389adbcc4ab
Added section base and length symbols to lwlink
William Astle <lost@l-w.ca>
parents:
232
diff
changeset
|
2621 ><DT |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2622 >section <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2623 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2624 >name</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2625 > load <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2626 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2627 >addr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2628 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2629 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2630 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2631 > This causes the section <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2632 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2633 >name</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2634 > to load at |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2635 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2636 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2637 >addr</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2638 >. For the raw target, only one "load at" entry is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2639 allowed for non-bss sections and it must be the first one. For raw targets, |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2640 it affects the addresses the linker assigns to symbols but has no other |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2641 affect on the output. bss sections may all have separate load addresses but |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2642 since they will not appear in the binary anyway, this is okay.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2643 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2644 >For the decb target, each "load" entry will cause a new "block" to be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2645 output to the binary which will contain the load address. It is legal for |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2646 sections to overlap in this manner - the linker assumes the loader will sort |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2647 everything out.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2648 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2649 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2650 >section <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2651 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2652 >name</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2653 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2654 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2655 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2656 > This will cause the section <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2657 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2658 >name</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2659 > to load after the previously listed |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2660 section.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2661 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2662 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2663 >entry <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2664 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2665 >addr or sym</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2666 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2667 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2668 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2669 >This will cause the execution address (entry point) to be the address |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2670 specified (in hex) or the specified symbol name. The symbol name must |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2671 match a symbol that is exported by one of the object files being linked. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2672 This has no effect for targets that do not encode the entry point into the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2673 resulting file. If not specified, the entry point is assumed to be address 0 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2674 which is probably not what you want. The default link scripts for targets |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2675 that support this directive automatically starts at the beginning of the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2676 first section (usually "init" or "code") that is emitted in the binary.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2677 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2678 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2679 >pad <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2680 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2681 >size</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2682 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2683 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2684 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2685 >This will cause the output file to be padded with NUL bytes to be exactly |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2686 <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2687 CLASS="PARAMETER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2688 >size</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2689 > bytes in length. This only makes sense for a raw target.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2690 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2691 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2692 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2693 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2694 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2695 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2696 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2697 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2698 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
2699 NAME="AEN864" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2700 >4.4. Format Specific Linking Notes</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2701 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2702 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2703 >Some formats require special information to be able to generate actual |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2704 binaries. If the specific format you are interested in is not listed in |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2705 this section, then there is nothing special you need to know about to create |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2706 a final binary.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2707 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2708 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2709 ><HR><H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2710 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2711 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
2712 NAME="AEN867" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2713 >4.4.1. OS9 Modules</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2714 ></H3 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2715 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2716 >OS9 modules need to embed several items into the module header. These |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2717 items are the type of module, the langauge of the module, the module |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2718 attributes, the module revision number, the data size (bss), and the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2719 execution offset. These are all either calculated or default to reasonable |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2720 values.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2721 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2722 >The data size is calcuated as the sum of all sections named "bss" or |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2723 ".bss" in all object files that are linked together.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2724 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2725 >The execution offset is calculated from the address of the special |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2726 symbol "__start" which must be an exported (external) symbol in one of the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2727 objects to be linked.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2728 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2729 >The type defaults to "Prgrm" or "Program module". The language |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2730 defaults to "Objct" or "6809 object code". Attributes default to enabling |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2731 the re-entrant flag. And finally, the revision defaults to zero.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2732 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2733 >The embedded module name is the output filename. If the output |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2734 filename includes more than just the filename, this will probably not be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2735 what you want.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2736 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2737 >The type, language, attributes, revision, and module name can all be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2738 overridden by providing a special section in exactly one of the object files |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2739 to be linked. This section is called "__os9" (note the two underscores). |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2740 To override the type, language, attributes, or revision values, define a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2741 non-exported symbol in this section called "type", "lang", "attr", or "rev" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2742 respectively. Any other symbols defined are ignored. To override the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2743 module name, include as the only actual code in the section a NUL terminated |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2744 string (the FCN directive is useful for this). If there is no code in the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2745 section or it beings with a NUL, the default name will be used. Any of the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2746 preceeding that are not defined in the special section will retain their |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2747 default values.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2748 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2749 >The built-in link script for OS9 modules will place the following |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2750 sections, in order, in the module: "code", ".text", "data", ".data". It |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2751 will merge all sections with the name "bss" or ".bss" into the "data" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2752 section. All other section names are ignored. What this means is that you |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2753 must define your data variables in the a section called "bss" or ".bss" even |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2754 though you will be refencing them all as offsets from U. This does have the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2755 unpleasant side effect that all BSS references will end up being 16 bit |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2756 offsets because the assembler cannot know what the offset will be once the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2757 linker is finished its work. Thus, if the tightest possible code is |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2758 required, having LWASM directly output the module is a better choice.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2759 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2760 >While the built-in link script is probably sufficient for most |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2761 purposes, you can provide your own script. If you provide a custom link |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2762 script, you must start your code and data sections at location 000D to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2763 accommodate the module header. Otherwise, you will have an incorrect |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2764 location for the execution offset. You must use the ENTRY directive in the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2765 script to define the entry point for the module.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2766 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2767 >It should also be obvious from the above that you cannot mix the bss |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2768 (rmb) definitions with the module code when linking separately. Those |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2769 familiar with typical module creation will probably find this an unpleasant |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2770 difference but it is unavoidable.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2771 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2772 >It should also be noted that direct page references should also be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2773 avoided because you cannot know ahead of time whether the linker is going to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2774 end up putting a particular variable in the first 256 bytes of the module's |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2775 data space. If, however, you know for certain you will have less than 256 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2776 bytes of defined data space across all of the object files that will be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2777 linked, you can instead use forced DP addressing for your data addresses |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2778 instead of the ,u notation. When linking with 3rd party libraries, this |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2779 practice should be avoided. Also, when creating libraries, always use the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2780 offset from U technique.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2781 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2782 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2783 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2784 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2785 CLASS="CHAPTER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2786 ><HR><H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2787 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
2788 NAME="AEN879" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2789 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2790 >Chapter 5. Libraries and LWAR</H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2791 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2792 >LWTOOLS also includes a tool for managing libraries. These are analogous to |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2793 the static libraries created with the "ar" tool on POSIX systems. Each library |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2794 file contains one or more object files. The linker will treat the object |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2795 files within a library as though they had been specified individually on |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2796 the command line except when resolving external references. External references |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2797 are looked up first within the object files within the library and then, if |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2798 not found, the usual lookup based on the order the files are specified on |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2799 the command line occurs.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2800 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2801 >The tool for creating these libary files is called LWAR.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2802 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2803 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2804 ><HR><H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2805 CLASS="SECTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2806 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
2807 NAME="AEN883" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2808 >5.1. Command Line Options</A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2809 ></H2 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2810 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2811 >The binary for LWAR is called "lwar". Note that the binary is in lower |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2812 case. The options lwar understands are listed below. For archive manipulation |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2813 options, the first non-option argument is the name of the archive. All other |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2814 non-option arguments are the names of files to operate on.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2815 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2816 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2817 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2818 CLASS="VARIABLELIST" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2819 ><DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2820 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2821 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2822 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2823 >--add</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2824 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2825 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2826 >-a</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2827 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2828 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2829 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2830 >This option specifies that an archive is going to have files added to it. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2831 If the archive does not already exist, it is created. New files are added |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2832 to the end of the archive.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2833 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2834 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2835 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2836 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2837 >--create</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2838 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2839 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2840 >-c</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2841 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2842 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2843 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2844 >This option specifies that an archive is going to be created and have files |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2845 added to it. If the archive already exists, it is truncated.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2846 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2847 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2848 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2849 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2850 >--merge</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2851 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2852 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2853 >-m</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2854 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2855 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2856 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2857 >If specified, any files specified to be added to an archive will be checked |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2858 to see if they are archives themselves. If so, their constituent members are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2859 added to the archive. This is useful for avoiding archives containing archives.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2860 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2861 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2862 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2863 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2864 >--list</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2865 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2866 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2867 >-l</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2868 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2869 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2870 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2871 >This will display a list of the files contained in the archive.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2872 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2873 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2874 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2875 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2876 >--debug</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2877 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2878 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2879 >-d</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2880 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2881 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2882 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2883 >This option increases the debugging level. It is only useful for LWTOOLS |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2884 developers.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2885 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2886 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2887 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2888 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2889 >--help</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2890 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2891 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2892 >-?</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2893 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2894 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2895 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2896 >This provides a listing of command line options and a brief description |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2897 of each.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2898 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2899 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2900 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2901 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2902 >--usage</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2903 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2904 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2905 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2906 >This will display a usage summary |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2907 of each command line option.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2908 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2909 ><DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2910 ><CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2911 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2912 >--version</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2913 >, <CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2914 CLASS="OPTION" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2915 >-V</CODE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2916 ></DT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2917 ><DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2918 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2919 >This will display the version of LWLINK. |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2920 of each.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2921 ></DD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2922 ></DL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2923 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2924 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2925 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2926 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2927 CLASS="CHAPTER" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2928 ><HR><H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2929 ><A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2930 NAME="OBJCHAP" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2931 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2932 >Chapter 6. Object Files</H1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2933 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2934 >LWTOOLS uses a proprietary object file format. It is proprietary in the sense |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2935 that it is specific to LWTOOLS, not that it is a hidden format. It would be |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2936 hard to keep it hidden in an open source tool chain anyway. This chapter |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2937 documents the object file format.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2938 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2939 >An object file consists of a series of sections each of which contains a |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2940 list of exported symbols, a list of incomplete references, and a list of |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2941 "local" symbols which may be used in calculating incomplete references. Each |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2942 section will obviously also contain the object code.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2943 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2944 >Exported symbols must be completely resolved to an address within the |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2945 section it is exported from. That is, an exported symbol must be a constant |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2946 rather than defined in terms of other symbols.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2947 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2948 >Each object file starts with a magic number and version number. The magic |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2949 number is the string "LWOBJ16" for this 16 bit object file format. The only |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2950 defined version number is currently 0. Thus, the first 8 bytes of the object |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2951 file are <FONT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2952 COLOR="RED" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2953 >4C574F424A313600</FONT |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2954 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2955 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2956 >Each section has the following items in order:</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2957 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2958 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2959 ><UL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2960 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2961 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2962 >section name</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2963 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2964 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2965 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2966 >flags</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2967 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2968 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2969 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2970 >list of local symbols (and addresses within the section)</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2971 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2972 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2973 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2974 >list of exported symbols (and addresses within the section)</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2975 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2976 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2977 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2978 >list of incomplete references along with the expressions to calculate them</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2979 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2980 ><LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2981 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2982 >the actual object code (for non-BSS sections)</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2983 ></LI |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2984 ></UL |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2985 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2986 >The section starts with the name of the section with a NUL termination |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2987 followed by a series of flag bytes terminated by NUL. There are only two |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2988 flag bytes defined. A NUL (0) indicates no more flags and a value of 1 |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2989 indicates the section is a BSS section. For a BSS section, no actual |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2990 code is included in the object file.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2991 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2992 >Either a NULL section name or end of file indicate the presence of no more |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2993 sections.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2994 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2995 >Each entry in the exported and local symbols table consists of the symbol |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2996 (NUL terminated) followed by two bytes which contain the value in big endian |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2997 order. The end of a symbol table is indicated by a NULL symbol name.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2998 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
2999 >Each entry in the incomplete references table consists of an expression |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3000 followed by a 16 bit offset where the reference goes. Expressions are |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3001 defined as a series of terms up to an "end of expression" term. Each term |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3002 consists of a single byte which identifies the type of term (see below) |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3003 followed by any data required by the term. Then end of the list is flagged |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3004 by a NULL expression (only an end of expression term).</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3005 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3006 CLASS="TABLE" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3007 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
3008 NAME="AEN966" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3009 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3010 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3011 ><B |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3012 >Table 6-1. Object File Term Types</B |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3013 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3014 ><TABLE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3015 BORDER="1" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3016 FRAME="border" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3017 CLASS="CALSTABLE" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3018 ><COL><COL><THEAD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3019 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3020 ><TH |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3021 >TERMTYPE</TH |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3022 ><TH |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3023 >Meaning</TH |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3024 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3025 ></THEAD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3026 ><TBODY |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3027 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3028 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3029 >00</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3030 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3031 >end of expression</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3032 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3033 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3034 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3035 >01</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3036 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3037 >integer (16 bit in big endian order follows)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3038 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3039 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3040 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3041 >02</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3042 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3043 > external symbol reference (NUL terminated symbol name follows)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3044 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3045 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3046 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3047 >03</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3048 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3049 >local symbol reference (NUL terminated symbol name follows)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3050 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3051 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3052 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3053 >04</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3054 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3055 >operator (1 byte operator number)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3056 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3057 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3058 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3059 >05</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3060 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3061 >section base address reference</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3062 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3063 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3064 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3065 >FF</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3066 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3067 >This term will set flags for the expression. Each one of these terms will set a single flag. All of them should be specified first in an expression. If they are not, the behaviour is undefined. The byte following is the flag. Flag 01 indicates an 8 bit relocation. Flag 02 indicates a zero-width relocation (see the EXTDEP pseudo op in LWASM).</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3068 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3069 ></TBODY |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3070 ></TABLE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3071 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3072 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3073 >External references are resolved using other object files while local |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3074 references are resolved using the local symbol table(s) from this file. This |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3075 allows local symbols that are not exported to have the same names as |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3076 exported symbols or external references.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3077 ><DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3078 CLASS="TABLE" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3079 ><A |
254
155799f6cfa5
Add documentation for the FILL pseudo operation
William Astle <lost@l-w.ca>
parents:
253
diff
changeset
|
3080 NAME="AEN996" |
153
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3081 ></A |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3082 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3083 ><B |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3084 >Table 6-2. Object File Operator Numbers</B |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3085 ></P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3086 ><TABLE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3087 BORDER="1" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3088 FRAME="border" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3089 CLASS="CALSTABLE" |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3090 ><COL><COL><THEAD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3091 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3092 ><TH |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3093 >Number</TH |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3094 ><TH |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3095 >Operator</TH |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3096 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3097 ></THEAD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3098 ><TBODY |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3099 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3100 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3101 >01</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3102 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3103 >addition (+)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3104 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3105 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3106 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3107 >02</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3108 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3109 >subtraction (-)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3110 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3111 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3112 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3113 >03</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3114 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3115 >multiplication (*)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3116 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3117 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3118 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3119 >04</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3120 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3121 >division (/)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3122 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3123 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3124 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3125 >05</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3126 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3127 >modulus (%)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3128 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3129 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3130 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3131 >06</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3132 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3133 >integer division (\) (same as division)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3134 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3135 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3136 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3137 >07</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3138 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3139 >bitwise and</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3140 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3141 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3142 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3143 >08</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3144 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3145 >bitwise or</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3146 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3147 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3148 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3149 >09</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3150 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3151 >bitwise xor</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3152 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3153 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3154 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3155 >0A</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3156 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3157 >boolean and</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3158 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3159 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3160 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3161 >0B</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3162 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3163 >boolean or</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3164 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3165 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3166 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3167 >0C</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3168 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3169 >unary negation, 2's complement (-)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3170 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3171 ><TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3172 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3173 >0D</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3174 ><TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3175 >unary 1's complement (^)</TD |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3176 ></TR |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3177 ></TBODY |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3178 ></TABLE |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3179 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3180 ><P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3181 >An expression is represented in a postfix manner with both operands for |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3182 binary operators preceding the operator and the single operand for unary |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3183 operators preceding the operator.</P |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3184 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3185 ></DIV |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3186 ></BODY |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3187 ></HTML |
83b7b4ce3bbd
Added prebuilt manual to repository to avoid failures to include it during releases
lost@l-w.ca
parents:
diff
changeset
|
3188 > |