cc65 generated programs with the default setup run with the I/O area and the kernal and BASIC ROM enabled, which gives a usable memory range of $0400 - $7FFF (32KB machine). All ROM entry points may be called directly without additional code.
The text screen is located at $8000.
The C runtime stack is located at $7FFF and growing downwards.
The C heap is located at the end of the program and grows towards the C runtime stack.