Next Previous Contents

3. Memory layout

cc65 generated programs with the default setup run with the I/O area and the kernal ROM enabled (memory under the kernal may be used for graphics or as extended memory - see the sections about graphics and extended memory drivers). The BASIC ROM is disabled, which gives a usable memory range of $0800 - $CFFF. This means that kernal entry points may be called directly, but using the BASIC ROM is not possible without additional code.

Special locations:

Text screen

The text screen is located at $400 (as in the standard setup).


The C runtime stack is located at $CFFF and growing downwards.


The C heap is located at the end of the program and grows towards the C runtime stack.

Next Previous Contents