cc65 generated programs with the default setup run with the I/O area and a CHR bank enabled, which gives a usable memory range of $8000 - $FFF3. All boot ROM entry points may be called directly without additional code.
The text screen is located at VRAM $2000.
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.