cc65 generated programs with the default setup run with the I/O area and the kernal and BASIC ROM enabled (RAM at $A000 - $BFFF may be used for the heap), which gives a usable memory range of $1000 - $1DFF. All ROM entry points may be called directly without additional code.
Special locations:
The text screen is located at $1E00 (as in the standard setup).
The C runtime stack is located at $1DFF and growing downwards.
The C heap is located at the end of the program and grows towards the C runtime stack.