annotate docs/manual/x800.html @ 455:cad5937314cb

Add operandsizewarning pragma Add operandsizewarning pragma that will raise warnings for certain operands if the operand size could be smaller. (Long branch used instead of short branch, for instance.)
author William Astle <lost@l-w.ca>
date Fri, 16 Feb 2018 22:53:46 -0700
parents fc166b3bbae3
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
394
fc166b3bbae3 Update manual for recent additions.
William Astle <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">
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
2 <HTML
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
3 ><HEAD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
4 ><TITLE
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
5 >Convenience Instructions</TITLE
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
6 ><META
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
7 NAME="GENERATOR"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
8 CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
9 REL="HOME"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
10 TITLE="LW Tool Chain"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
11 HREF="index.html"><LINK
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
12 REL="UP"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
13 TITLE="LWASM"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
14 HREF="c62.html"><LINK
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
15 REL="PREVIOUS"
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
16 TITLE="Assembler Modes and Pragmas"
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
17 HREF="x659.html"><LINK
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
18 REL="NEXT"
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
19 TITLE="Cycle Counts"
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
20 HREF="x805.html"></HEAD
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
21 ><BODY
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
22 CLASS="SECTION"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
23 BGCOLOR="#FFFFFF"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
24 TEXT="#000000"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
25 LINK="#0000FF"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
26 VLINK="#840084"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
27 ALINK="#0000FF"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
28 ><DIV
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
29 CLASS="NAVHEADER"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
30 ><TABLE
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
31 SUMMARY="Header navigation table"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
32 WIDTH="100%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
33 BORDER="0"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
34 CELLPADDING="0"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
35 CELLSPACING="0"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
36 ><TR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
37 ><TH
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
38 COLSPAN="3"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
39 ALIGN="center"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
40 >LW Tool Chain</TH
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
41 ></TR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
42 ><TR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
43 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
44 WIDTH="10%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
45 ALIGN="left"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
46 VALIGN="bottom"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
47 ><A
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
48 HREF="x659.html"
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
49 ACCESSKEY="P"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
50 >Prev</A
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
51 ></TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
52 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
53 WIDTH="80%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
54 ALIGN="center"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
55 VALIGN="bottom"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
56 >Chapter 3. LWASM</TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
57 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
58 WIDTH="10%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
59 ALIGN="right"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
60 VALIGN="bottom"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
61 ><A
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
62 HREF="x805.html"
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
63 ACCESSKEY="N"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
64 >Next</A
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
65 ></TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
66 ></TR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
67 ></TABLE
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
68 ><HR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
69 ALIGN="LEFT"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
70 WIDTH="100%"></DIV
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
71 ><DIV
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
72 CLASS="SECTION"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
73 ><H1
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
74 CLASS="SECTION"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
75 ><A
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
76 NAME="CONVINST"
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
77 >3.11. Convenience Instructions</A
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
78 ></H1
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
79 ><P
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
80 >&#13;Similar to the 6800 compatibility instructions (pragma 6800compat) these
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
81 pragma 6809conv and pragma 6309conv enable convenience extensions to the
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
82 6809 and 6309 instruction set. Originally intended for compatibility with
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
83 the MACRO-80c assembler, these have proven useful in large codebases that
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
84 target both the 6809 and the 6309.</P
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
85 ><P
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
86 >&#13;The 6809 extensions are straightforward with the exception of "TSTD" which
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
87 assembles as "STD -2,S". A benefit of using these is they will "just work"
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
88 and take on their 6309 equivalent when you enable 6309 assembly mode.
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
89 Supported instructions: ASRD, CLRD, COMD, LSLD, LSRD, NEGD, TSTD.</P
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
90 ><P
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
91 >&#13;6309 extensions are based on common patterns described by Chris Burke and
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
92 Darren Atkinson in their 6309 documentation and include the following
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
93 instructions: ASRQ, CLRQ, COMQ, LSLE, LSLF, LSLQ, LSRQ, NEGE,
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
94 NEGF, NEGW, NEGQ, TSTQ.</P
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
95 ></DIV
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
96 ><DIV
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
97 CLASS="NAVFOOTER"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
98 ><HR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
99 ALIGN="LEFT"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
100 WIDTH="100%"><TABLE
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
101 SUMMARY="Footer navigation table"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
102 WIDTH="100%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
103 BORDER="0"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
104 CELLPADDING="0"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
105 CELLSPACING="0"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
106 ><TR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
107 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
108 WIDTH="33%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
109 ALIGN="left"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
110 VALIGN="top"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
111 ><A
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
112 HREF="x659.html"
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
113 ACCESSKEY="P"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
114 >Prev</A
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
115 ></TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
116 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
117 WIDTH="34%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
118 ALIGN="center"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
119 VALIGN="top"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
120 ><A
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
121 HREF="index.html"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
122 ACCESSKEY="H"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
123 >Home</A
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
124 ></TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
125 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
126 WIDTH="33%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
127 ALIGN="right"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
128 VALIGN="top"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
129 ><A
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
130 HREF="x805.html"
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
131 ACCESSKEY="N"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
132 >Next</A
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
133 ></TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
134 ></TR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
135 ><TR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
136 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
137 WIDTH="33%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
138 ALIGN="left"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
139 VALIGN="top"
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
140 >Assembler Modes and Pragmas</TD
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
141 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
142 WIDTH="34%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
143 ALIGN="center"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
144 VALIGN="top"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
145 ><A
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
146 HREF="c62.html"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
147 ACCESSKEY="U"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
148 >Up</A
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
149 ></TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
150 ><TD
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
151 WIDTH="33%"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
152 ALIGN="right"
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
153 VALIGN="top"
455
cad5937314cb Add operandsizewarning pragma
William Astle <lost@l-w.ca>
parents: 394
diff changeset
154 >Cycle Counts</TD
394
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
155 ></TR
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
156 ></TABLE
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
157 ></DIV
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
158 ></BODY
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
159 ></HTML
fc166b3bbae3 Update manual for recent additions.
William Astle <lost@l-w.ca>
parents:
diff changeset
160 >