Cc65
cc65 is a cross development package for 6502 systems, including a macro assembler, a C cross compiler, linker, librarian and several other tools.
cc65 is based on a native C compiler that was originally adapted for the Atari 8-bit computers by John R. Dunning in 1989, which originated as a Small C descendant. It has several extensions, and some of the limits of the original Small C compiler are gone.
The toolkit has largely been expanded by Ullrich von Bassewitz and other contributors. The actual cc65 compiler, a complete set of binary tools and runtime library are under a license identical to zlib's. The ca65 cross-assembler is one of the most powerful 6502 cross-assemblers available under an open-source license.
The compiler itself comes close to ANSI C compatibility, while C library features depend on the target platform's hardware. stdio is supported on many platforms, as is Borland-style conio.h screen handling. GEOS is also supported on the Commodore 64 and even the Apple II. The library supports many of the Commodore platforms, Apple II family, Atari 8-bit family, Oric Atmos, Nintendo Entertainment System, Watara Supervision game console and Ohio Scientific Challenger 1P.
Officially supported host systems include Linux, Microsoft Windows, MS-DOS and OS/2, but the source code itself has been reported to work almost unmodified on many platforms beside these.Supported API
static
- conio
- dio
- em
- joystick
- mouse
- serial
- tgi
| conio | dio | emd | joy | mou | ser | tgi |
apple2 | | | 1 | 1 | 1 | 1 | 2 |
apple2enh | | | 1 | 1 | 1 | 1 | 2 |
atari | | | | 2 | | | 15 |
atmos | | | | | | | 1 |
c16 | | | 1 | 1 | | | |
c64 | | | 6 | 4 | 3 | 1 | 1 |
c128 | | | 5 | 2 | 3 | 1 | 2 |
cbm510 | | | 1 | 1 | | 1 | |
cbm610 | | | 1 | | | 1 | |
geos | | | 1 | 1 | | | 1 |
lynx | | | | 1 | | 1 | 1 |
nes | | | | 1 | | | |
osi | | | | | | | |
pet | | | | 1 | | | |
plus4 | | | | 1 | | 1 | |
supervision | | | | | | | |
vic20 | | | | 2 | | | |
Note: For static libraries, "Yes" means the feature is available. For dynamic libraries, the columns list the number of available drivers.