A weblog focused on interesting circuits, ideas, schematics and other information about microelectronics and microcontrollers.
GCC for Motorola 6809
GCC6809 is a port of the free GNU C compiler to the 6809 processor.
GCC6809 provides a port of the C compiler proper, plus an assembler, linker, and library manager, forming a complete "toolchain".
The C compiler is a port of GCC modified to generate 6809 assembly language. GCC is designed to support multiple "backends", and has been ported onto a wide variety of different architectures, such as x86, PowerPC, MIPS, Sparc, etc. The 6809 port is mostly just another backend, although some of the common GCC files have been changed also.
GCC6809 has been tuned and optimized for writing real-world 6809 programs:
* It utilizes 100% of the 6809 instruction set, including all addressing modes. It also selects the right branch/call instructions.
* It has builtin functions for accessing special 6809 instructions that aren't exposed through normal C, such as daa and sync.
* It can be used to write interrupt handlers as well as user code.
* It has extensions for forcing code/data into different output sections/banks.
* There is optional support for 8-bit "int" for tiny applications.