Go to single file .html
[fw/sdcc] / doc / SDCCUdoc-31.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
2 <HTML>
3 <HEAD>
4  <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
5  <TITLE>SDCC Compiler User Guide: Appendix A: The Z80 and gbz80 port</TITLE>
6  <LINK HREF="SDCCUdoc-30.html" REL=previous>
7  <LINK HREF="SDCCUdoc.html#toc31" REL=contents>
8 </HEAD>
9 <BODY>
10 Next
11 <A HREF="SDCCUdoc-30.html">Previous</A>
12 <A HREF="SDCCUdoc.html#toc31">Contents</A>
13 <HR>
14 <H2><A NAME="s31">31. Appendix A: The Z80 and gbz80 port</A> </H2>
15
16 <P>2.2.0 can target both the Zilog Z80 and the Nintendo Gameboy's Z80-like
17 gbz80. The port is incomplete - long support is incomplete (mul, div and mod
18 are unimplimented), and both float and bitfield support is missing, but apart
19 from that the code generated is correct.
20 <P>As always, the code is the authoritave reference - see z80/ralloc.c and
21 z80/gen.c. The stack frame is similar to that generated by the IAR Z80 compiler.
22 IX is used as the base pointer, HL is used as a temporary register, and BC
23 and DE are available for holding varibles. IY is currently unusued. Return
24 values are stored in HL. One bad side effect of using IX as the base pointer
25 is that a functions stack frame is limited to 127 bytes - this will be fixed
26 in a later version.bc
27 <P>9
28 <P>
29 <HR>
30 Next
31 <A HREF="SDCCUdoc-30.html">Previous</A>
32 <A HREF="SDCCUdoc.html#toc31">Contents</A>
33 </BODY>
34 </HTML>