Skip to content

other 6502 C compilers

Bob Andrews edited this page Feb 26, 2024 · 10 revisions

cross compilers

  • (OSS) Oscar64 Optimizing Small memory C Compiler Assembler and Runtime for C64
  • (OSS) KickC is a C-compiler for 6502-based platforms creating optimized and readable assembler code. The language is 95% standard C with a few limitations and a few extensions.
  • (OSS) llvm-mos
  • (OSS) SDCC is a retargettable, optimizing Standard C (ANSI C89, ISO C99, ISO C11) compiler suite that targets the Intel MCS51 based microprocessors (8031, 8032, 8051, 8052, etc.), Maxim (formerly Dallas) DS80C390 variants, Freescale (formerly Motorola) HC08 based (hc08, s08), Zilog Z80 based MCUs (Z80, Z180, SM83, Rabbit 2000, 2000A, 3000A, TLCS-90), Padauk (pdk14, pdk15) and STMicroelectronics STM8. Work is in progress on supporting the Padauk pdk13 and MOS 6502 targets; Microchip PIC16 and PIC18 targets are unmaintained. SDCC can be retargeted for other microprocessors.
  • (semi-open) VBCC is a highly optimizing portable and retargetable ISO C compiler. It supports ISO C according to ISO/IEC 9899:1989 and most of ISO/IEC 9899:1999 (C99).
  • (closed source, free) Calypsi Toolchains is a series of C compiler and assembly language cross compiler tool chains. The current tool chains are aimed towards the retro and hobby communities.
  • (OSS) lcc65 from the Oric SDK
  • (OSS) GCC-6502 (inactive for over 5 years)
  • (OSS) Quetzalcoatl can compile and link programs written in a subset of ANSI C called Tiny C, Assembler, the 1983 UPL language or any combination thereof. (inactive for decades)
  • (commercial, free) WDCTools Suite (windows only)

native

Various native compilers existed, some of which are listed here. These are of historical interest mostly :)

  • (OSS) cc64 is a modern take on a native compiler

  • AztecC (C64, Apple2)

  • Beebug C (BBC)

  • Deep Blue C (Atari)

  • Hyper C (Apple2)

  • Lightspeed C (Atari)

  • Master C (BBC)

  • OSS tiny-c (Atari)

  • OSS C/65 (Atari)

  • PowerC (C64)

  • Small-C (Atari, BBC)

Clone this wiki locally