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