434
|
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN""http://www.w3.org/TR/html4/loose.dtd">
|
|
2 <HTML
|
|
3 ><HEAD
|
|
4 ><TITLE
|
|
5 >OS9 Modules</TITLE
|
|
6 ><META
|
|
7 NAME="GENERATOR"
|
|
8 CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
|
|
9 REL="HOME"
|
|
10 TITLE="LW Tool Chain"
|
|
11 HREF="index.html"><LINK
|
|
12 REL="UP"
|
|
13 TITLE="Output Formats"
|
|
14 HREF="c18.html"><LINK
|
|
15 REL="PREVIOUS"
|
|
16 TITLE="DECB Binaries"
|
|
17 HREF="x24.html"><LINK
|
|
18 REL="NEXT"
|
|
19 TITLE="Object Files"
|
|
20 HREF="x35.html"></HEAD
|
|
21 ><BODY
|
|
22 CLASS="SECTION"
|
|
23 BGCOLOR="#FFFFFF"
|
|
24 TEXT="#000000"
|
|
25 LINK="#0000FF"
|
|
26 VLINK="#840084"
|
|
27 ALINK="#0000FF"
|
|
28 ><DIV
|
|
29 CLASS="NAVHEADER"
|
|
30 ><TABLE
|
|
31 SUMMARY="Header navigation table"
|
|
32 WIDTH="100%"
|
|
33 BORDER="0"
|
|
34 CELLPADDING="0"
|
|
35 CELLSPACING="0"
|
|
36 ><TR
|
|
37 ><TH
|
|
38 COLSPAN="3"
|
|
39 ALIGN="center"
|
|
40 >LW Tool Chain</TH
|
|
41 ></TR
|
|
42 ><TR
|
|
43 ><TD
|
|
44 WIDTH="10%"
|
|
45 ALIGN="left"
|
|
46 VALIGN="bottom"
|
|
47 ><A
|
|
48 HREF="x24.html"
|
|
49 ACCESSKEY="P"
|
|
50 >Prev</A
|
|
51 ></TD
|
|
52 ><TD
|
|
53 WIDTH="80%"
|
|
54 ALIGN="center"
|
|
55 VALIGN="bottom"
|
|
56 >Chapter 2. Output Formats</TD
|
|
57 ><TD
|
|
58 WIDTH="10%"
|
|
59 ALIGN="right"
|
|
60 VALIGN="bottom"
|
|
61 ><A
|
|
62 HREF="x35.html"
|
|
63 ACCESSKEY="N"
|
|
64 >Next</A
|
|
65 ></TD
|
|
66 ></TR
|
|
67 ></TABLE
|
|
68 ><HR
|
|
69 ALIGN="LEFT"
|
|
70 WIDTH="100%"></DIV
|
|
71 ><DIV
|
|
72 CLASS="SECTION"
|
|
73 ><H1
|
|
74 CLASS="SECTION"
|
|
75 ><A
|
|
76 NAME="AEN29"
|
|
77 >2.3. OS9 Modules</A
|
|
78 ></H1
|
|
79 ><P
|
|
80 > Since version 2.5, LWASM is able to generate OS9 modules. The syntax is
|
|
81 basically the same as for other assemblers. A module starts with the MOD
|
|
82 directive and ends with the EMOD directive. The OS9 directive is provided
|
|
83 as a shortcut for writing system calls. </P
|
|
84 ><P
|
|
85 > LWASM does NOT provide an OS9Defs file. You must provide your own. Also note
|
|
86 that the common practice of using "ifp1" around the inclusion of the OS9Defs
|
|
87 file is discouraged as it is pointless and can lead to unintentional
|
|
88 problems and phasing errors. Because LWASM reads each file exactly once,
|
|
89 there is no benefit to restricting the inclusion to the first assembly pass. </P
|
|
90 ><P
|
|
91 > It is also critical to understand that unlike many OS9 assemblers, LWASM
|
|
92 does NOT maintain a separate data address counter. Thus, you must define
|
|
93 all your data offsets and so on outside of the mod/emod segment. It is,
|
|
94 therefore, likely that source code targeted at other assemblers will require
|
|
95 edits to build correctly. </P
|
|
96 ><P
|
|
97 > LWLINK does not, yet, have the ability to create OS9 modules from object
|
|
98 files. </P
|
|
99 ></DIV
|
|
100 ><DIV
|
|
101 CLASS="NAVFOOTER"
|
|
102 ><HR
|
|
103 ALIGN="LEFT"
|
|
104 WIDTH="100%"><TABLE
|
|
105 SUMMARY="Footer navigation table"
|
|
106 WIDTH="100%"
|
|
107 BORDER="0"
|
|
108 CELLPADDING="0"
|
|
109 CELLSPACING="0"
|
|
110 ><TR
|
|
111 ><TD
|
|
112 WIDTH="33%"
|
|
113 ALIGN="left"
|
|
114 VALIGN="top"
|
|
115 ><A
|
|
116 HREF="x24.html"
|
|
117 ACCESSKEY="P"
|
|
118 >Prev</A
|
|
119 ></TD
|
|
120 ><TD
|
|
121 WIDTH="34%"
|
|
122 ALIGN="center"
|
|
123 VALIGN="top"
|
|
124 ><A
|
|
125 HREF="index.html"
|
|
126 ACCESSKEY="H"
|
|
127 >Home</A
|
|
128 ></TD
|
|
129 ><TD
|
|
130 WIDTH="33%"
|
|
131 ALIGN="right"
|
|
132 VALIGN="top"
|
|
133 ><A
|
|
134 HREF="x35.html"
|
|
135 ACCESSKEY="N"
|
|
136 >Next</A
|
|
137 ></TD
|
|
138 ></TR
|
|
139 ><TR
|
|
140 ><TD
|
|
141 WIDTH="33%"
|
|
142 ALIGN="left"
|
|
143 VALIGN="top"
|
|
144 >DECB Binaries</TD
|
|
145 ><TD
|
|
146 WIDTH="34%"
|
|
147 ALIGN="center"
|
|
148 VALIGN="top"
|
|
149 ><A
|
|
150 HREF="c18.html"
|
|
151 ACCESSKEY="U"
|
|
152 >Up</A
|
|
153 ></TD
|
|
154 ><TD
|
|
155 WIDTH="33%"
|
|
156 ALIGN="right"
|
|
157 VALIGN="top"
|
|
158 >Object Files</TD
|
|
159 ></TR
|
|
160 ></TABLE
|
|
161 ></DIV
|
|
162 ></BODY
|
|
163 ></HTML
|
|
164 > |