398
|
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 >Introduction</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="PREVIOUS"
|
|
13 TITLE="LW Tool Chain"
|
|
14 HREF="index.html"><LINK
|
|
15 REL="NEXT"
|
|
16 TITLE="Output Formats"
|
|
17 HREF="c18.html"></HEAD
|
|
18 ><BODY
|
|
19 CLASS="CHAPTER"
|
|
20 BGCOLOR="#FFFFFF"
|
|
21 TEXT="#000000"
|
|
22 LINK="#0000FF"
|
|
23 VLINK="#840084"
|
|
24 ALINK="#0000FF"
|
|
25 ><DIV
|
|
26 CLASS="NAVHEADER"
|
|
27 ><TABLE
|
|
28 SUMMARY="Header navigation table"
|
|
29 WIDTH="100%"
|
|
30 BORDER="0"
|
|
31 CELLPADDING="0"
|
|
32 CELLSPACING="0"
|
|
33 ><TR
|
|
34 ><TH
|
|
35 COLSPAN="3"
|
|
36 ALIGN="center"
|
|
37 >LW Tool Chain</TH
|
|
38 ></TR
|
|
39 ><TR
|
|
40 ><TD
|
|
41 WIDTH="10%"
|
|
42 ALIGN="left"
|
|
43 VALIGN="bottom"
|
|
44 ><A
|
|
45 HREF="index.html"
|
|
46 ACCESSKEY="P"
|
|
47 >Prev</A
|
|
48 ></TD
|
|
49 ><TD
|
|
50 WIDTH="80%"
|
|
51 ALIGN="center"
|
|
52 VALIGN="bottom"
|
|
53 ></TD
|
|
54 ><TD
|
|
55 WIDTH="10%"
|
|
56 ALIGN="right"
|
|
57 VALIGN="bottom"
|
|
58 ><A
|
|
59 HREF="c18.html"
|
|
60 ACCESSKEY="N"
|
|
61 >Next</A
|
|
62 ></TD
|
|
63 ></TR
|
|
64 ></TABLE
|
|
65 ><HR
|
|
66 ALIGN="LEFT"
|
|
67 WIDTH="100%"></DIV
|
|
68 ><DIV
|
|
69 CLASS="CHAPTER"
|
|
70 ><H1
|
|
71 ><A
|
|
72 NAME="AEN10"
|
|
73 ></A
|
|
74 >Chapter 1. Introduction</H1
|
|
75 ><P
|
|
76 >The LW tool chain provides utilities for building binaries for MC6809 and
|
|
77 HD6309 CPUs. The tool chain includes a cross-assembler and a cross-linker
|
|
78 which support several styles of output.</P
|
|
79 ><DIV
|
|
80 CLASS="SECTION"
|
|
81 ><H1
|
|
82 CLASS="SECTION"
|
|
83 ><A
|
|
84 NAME="AEN13"
|
|
85 >1.1. History</A
|
|
86 ></H1
|
|
87 ><P
|
|
88 >For a long time, I have had an interest in creating an operating system for
|
|
89 the Coco3. I finally started working on that project around the beginning of
|
|
90 2006. I had a number of assemblers I could choose from. Eventually, I settled
|
|
91 on one and started tinkering. After a while, I realized that assembler was not
|
|
92 going to be sufficient due to lack of macros and issues with forward references.
|
|
93 Then I tried another which handled forward references correctly but still did
|
|
94 not support macros. I looked around at other assemblers and they all lacked
|
|
95 one feature or another that I really wanted for creating my operating system.</P
|
|
96 ><P
|
|
97 >The solution seemed clear at that point. I am a fair programmer so I figured
|
|
98 I could write an assembler that would do everything I wanted an assembler to
|
|
99 do. Thus the LWASM probject was born. After more than two years of on and off
|
|
100 work, version 1.0 of LWASM was released in October of 2008.</P
|
|
101 ><P
|
|
102 >As the aforementioned operating system project progressed further, it became
|
|
103 clear that while assembling the whole project through a single file was doable,
|
|
104 it was not practical. When I found myself playing some fancy games with macros
|
|
105 in a bid to simulate sections, I realized I needed a means of assembling
|
|
106 source files separately and linking them later. This spawned a major development
|
|
107 effort to add an object file support to LWASM. It also spawned the LWLINK
|
|
108 project to provide a means to actually link the files.</P
|
|
109 ></DIV
|
|
110 ></DIV
|
|
111 ><DIV
|
|
112 CLASS="NAVFOOTER"
|
|
113 ><HR
|
|
114 ALIGN="LEFT"
|
|
115 WIDTH="100%"><TABLE
|
|
116 SUMMARY="Footer navigation table"
|
|
117 WIDTH="100%"
|
|
118 BORDER="0"
|
|
119 CELLPADDING="0"
|
|
120 CELLSPACING="0"
|
|
121 ><TR
|
|
122 ><TD
|
|
123 WIDTH="33%"
|
|
124 ALIGN="left"
|
|
125 VALIGN="top"
|
|
126 ><A
|
|
127 HREF="index.html"
|
|
128 ACCESSKEY="P"
|
|
129 >Prev</A
|
|
130 ></TD
|
|
131 ><TD
|
|
132 WIDTH="34%"
|
|
133 ALIGN="center"
|
|
134 VALIGN="top"
|
|
135 ><A
|
|
136 HREF="index.html"
|
|
137 ACCESSKEY="H"
|
|
138 >Home</A
|
|
139 ></TD
|
|
140 ><TD
|
|
141 WIDTH="33%"
|
|
142 ALIGN="right"
|
|
143 VALIGN="top"
|
|
144 ><A
|
|
145 HREF="c18.html"
|
|
146 ACCESSKEY="N"
|
|
147 >Next</A
|
|
148 ></TD
|
|
149 ></TR
|
|
150 ><TR
|
|
151 ><TD
|
|
152 WIDTH="33%"
|
|
153 ALIGN="left"
|
|
154 VALIGN="top"
|
|
155 >LW Tool Chain</TD
|
|
156 ><TD
|
|
157 WIDTH="34%"
|
|
158 ALIGN="center"
|
|
159 VALIGN="top"
|
|
160 > </TD
|
|
161 ><TD
|
|
162 WIDTH="33%"
|
|
163 ALIGN="right"
|
|
164 VALIGN="top"
|
|
165 >Output Formats</TD
|
|
166 ></TR
|
|
167 ></TABLE
|
|
168 ></DIV
|
|
169 ></BODY
|
|
170 ></HTML
|
|
171 > |