![kueller](/assets/img/avatar_default.png)
git-svn-id: svn://svn.compuextreme.de/Viitor/V961/Viitor_cc65@4236 504e572c-2e33-0410-9681-be2bf7408885
50 lines
1.8 KiB
HTML
50 lines
1.8 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
|
|
<HTML>
|
|
<HEAD>
|
|
<META NAME="GENERATOR" CONTENT="LinuxDoc-Tools 0.9.20">
|
|
<TITLE>Commodore 610 specific information for cc65: Memory layout</TITLE>
|
|
<LINK HREF="cbm610-4.html" REL=next>
|
|
<LINK HREF="cbm610-2.html" REL=previous>
|
|
<LINK HREF="cbm610.html#toc3" REL=contents>
|
|
</HEAD>
|
|
<BODY>
|
|
<A HREF="cbm610-4.html">Next</A>
|
|
<A HREF="cbm610-2.html">Previous</A>
|
|
<A HREF="cbm610.html#toc3">Contents</A>
|
|
<HR>
|
|
<H2><A NAME="s3">3.</A> <A HREF="cbm610.html#toc3">Memory layout</A></H2>
|
|
|
|
|
|
<P>cc65 generated programs for the Commodore 610 run in bank 1, the memory bank
|
|
reserved for BASIC programs. Since there are no ROMs in this memory bank, the
|
|
program has almost full 64K for its own. A disadvantage is that kernal
|
|
subroutines cannot be called (at least not in a fast and effective manner), so
|
|
the runtime has replace kernal functionality.</P>
|
|
<P>The default memory configuration for the CBM 610 allocates all memory between
|
|
$0002 and $FFF0 in bank 1 for the compiled program. Some space
|
|
in low memory is lost, because a separate hardware stack is set up in page 1,
|
|
and the kernal replacement functions need some more memory locations. A few
|
|
more bytes are lost in high memory, because the runtime sets up a CBM
|
|
compatible jump table at $FF81. The main startup code is located at
|
|
$0400, so about 63K of the complete bank are actually usable for
|
|
applications.</P>
|
|
<P>Special locations:</P>
|
|
<P>
|
|
<DL>
|
|
<DT><B>Stack</B><DD><P>The C runtime stack is located at $FF81 and growing downwards.</P>
|
|
|
|
<DT><B>Heap</B><DD><P>The C heap is located at the end of the program and grows towards the C
|
|
runtime stack.</P>
|
|
</DL>
|
|
</P>
|
|
|
|
|
|
|
|
|
|
<HR>
|
|
<A HREF="cbm610-4.html">Next</A>
|
|
<A HREF="cbm610-2.html">Previous</A>
|
|
<A HREF="cbm610.html#toc3">Contents</A>
|
|
</BODY>
|
|
</HTML>
|