cc65/cc65
Freecc65 - a freeware C compiler for 6502 based systems
FreeFree tier
About cc65/cc65
cc65 is a complete cross-development package for 65(C)02 systems, including a powerful macro assembler, a C compiler, linker, archiver, simulator, and several other tools. It provides C and runtime library support for many classic 6502-based machines, such as Apple II, Atari 400/800, Commodore 64, VIC-20, Nintendo Entertainment System, and dozens more. The project is open source under the Zlib license, with an active community and comprehensive documentation.
Key Features
Complete cross-development package for 65(C)02 systems
Powerful macro assembler
C compiler based on Small C
Linker and archiver
Simulator for testing
Runtime library support for many vintage 6502 machines
Supports over 30 target systems including Apple II, Atari, Commodore, NES, BBC Micro, and more
Open source under the Zlib license
Cross-platform tools run on modern operating systems
Active community with mailing list, GitHub discussions, and IRC
Pros & Cons
Pros
- Free and open source with permissive Zlib license
- Extensive support for a wide range of 6502-based systems
- Includes all necessary tools (compiler, assembler, linker, simulator) in one suite
- Active development and community support
- Comprehensive documentation and wiki
- Cross-platform: runs on Windows, Linux, and macOS
Cons
- Limited to 6502/65C02 architectures (not for modern CPUs)
- Steep learning curve for developers unfamiliar with retro computing
- Not actively developed for non-6502 targets
- Requires understanding of vintage hardware limitations (memory, I/O)
Best For
Developing homebrew software and games for retro 6502 systems (e.g., C64, NES, Atari)Learning 6502 assembly and C programming on vintage hardwarePorting or creating applications for emulated environmentsReverse engineering and preservation of classic softwareEducational projects in computer architecture and low-level programming
FAQ
What is cc65?
cc65 is a complete cross-development package for 65(C)02 systems, including a C compiler, macro assembler, linker, archiver, and simulator.
What systems are supported?
cc65 supports a wide range of 6502-based systems including Apple II, Atari 400/800, Commodore 64, VIC-20, Nintendo Entertainment System, BBC Micro, and many more. A full list can be found in the repository.
What license does cc65 use?
cc65 is released under the Zlib license, a permissive open-source license.
Is cc65 still actively maintained?
Yes, the project has an active core team and community contributors, with regular updates and releases on GitHub.