gbdk-releases/sdcc/doc/sdccman.html/node57.html
2015-01-10 16:25:09 +01:00

86 lines
3 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<!--Converted with LaTeX2HTML 99.1 release (March 30, 1999)
original version by: Nikos Drakos, CBLU, University of Leeds
* revised and updated by: Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>8.1 The Z80 and gbz80 port</TITLE>
<META NAME="description" CONTENT="8.1 The Z80 and gbz80 port">
<META NAME="keywords" CONTENT="sdccman">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">
<META NAME="Generator" CONTENT="LaTeX2HTML v99.1 release">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<LINK REL="STYLESHEET" HREF="sdccman.css">
<LINK REL="previous" HREF="node56.html">
<LINK REL="up" HREF="node56.html">
<LINK REL="next" HREF="node58.html">
</HEAD>
<BODY >
<!--Navigation Panel-->
<A NAME="tex2html1139"
HREF="node58.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next_motif.gif"></A>
<A NAME="tex2html1133"
HREF="node56.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up_motif.gif"></A>
<A NAME="tex2html1129"
HREF="node56.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="previous_motif.gif"></A>
<A NAME="tex2html1135"
HREF="node1.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents_motif.gif"></A>
<A NAME="tex2html1137"
HREF="node61.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index_motif.gif"></A>
<BR>
<B> Next:</B> <A NAME="tex2html1140"
HREF="node58.html">9. Support</A>
<B> Up:</B> <A NAME="tex2html1134"
HREF="node56.html">8. Other Processors</A>
<B> Previous:</B> <A NAME="tex2html1130"
HREF="node56.html">8. Other Processors</A>
&nbsp <B> <A NAME="tex2html1136"
HREF="node1.html">Contents</A></B>
&nbsp <B> <A NAME="tex2html1138"
HREF="node61.html">Index</A></B>
<BR>
<BR>
<!--End of Navigation Panel-->
<H2><A NAME="SECTION00091000000000000000">
8.1 The Z80 and gbz80 port</A>
</H2>
<P>
SDCC can target both the Zilog Z80 and the Nintendo Gameboy's Z80-like
gbz80. The port is incomplete - long support is incomplete (mul, div
and mod are unimplimented), and both float and bitfield support is
missing. Apart from that the code generated is correct.
<P>
As always, the code is the authoritave reference - see z80/ralloc.c
and z80/gen.c. The stack frame is similar to that generated by the
IAR Z80 compiler. IX is used as the base pointer, HL is used as a
temporary register, and BC and DE are available for holding varibles.
IY is currently unusued. Return values are stored in HL. One bad side
effect of using IX as the base pointer is that a functions stack frame
is limited to 127 bytes - this will be fixed in a later version.
<P>
<BR><HR>
<ADDRESS>
<I>Johan Knol</I>
<BR><I>2001-07-13</I>
</ADDRESS>
</BODY>
</HTML>