SDCC - free open source, retargettable, optimizing ANSI-C compiler ------------------------------------------------------------------ Welcome to SDCC, free open source, retargettable, optimizing ANSI C compiler suite that targets a growing list of processors including 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, gbz80, Rabbit 2000/3000, Rabbit 3000A) and STMicroelectronics STM8. Work is in progress on supporting the Microchip PIC16 and PIC18 targets. It can be retargeted for other microprocessors. See share/sdcc/doc/INSTALL.txt for the installation instructions for the binary kits. See the share/sdcc/doc directory for more documentation. See http://sdcc.sourceforge.net/ for the latest information on sdcc. Licenses: ~~~~~~~~~ SDCC compiler suite is a collection of several components derived from different sources with different FOSS licenses. See the sdccman.pdf document, chapter "SDCC Suite Licenses" for details. The code or object files generated by SDCC suite are not licensed, so they can be used in FLOSS or proprietary (closed source) applications. The great majority of sdcc run-time libraries are licensed under the GPLv2+LE which allows linking of sdcc run time libraries with proprietary (closed source) applications. Exception are pic device libraries and header files which are derived from Microchip header (.inc) and linker script (.lkr) files. Microchip requires that "The header files should state that they are only to be used with authentic Microchip devices" which makes them incompatible with the GPL. Pic device libraries and header files are located at non-free/lib and non-free/include directories respectively. Sdcc should be run with the --use-non-free command line option in order to include non-free header files and libraries. See: http://www.gnu.org/copyleft/gpl.html http://sourceforge.net/apps/trac/sdcc/wiki/SDCC%20Library%20Licenses Support: ~~~~~~~~ SDCC compiler suite is a collaborative effort between a group of volunteers. Please feel free to report bugs via the Sourceforge bug tracker, or to ask questions on the user mailing list. See: http://sourceforge.net/tracker/?atid=100599&group_id=599&func=browse http://sourceforge.net/mail/?group_id=599 Notes: * The ds400, pic14 and pic16 are currently experimental, but work is in progress. Please check http://sdcc.sourceforge.net/snap.php for snapshots. * The TININative, avr and xa51 targets are no longer maintained. Roadmap: ~~~~~~~~ COPYING - GPL v2 debugger/ - sdcdb debugger device/ - Device libraries and examples doc/ - sdcc and target specific documentation sdas/ - Assemblers and linkers, derived from asxxxx sim/ - ucsim simulator src/ - Source to the C compiler and targets support/ - Libraries and apps that may not be provided by your system. Authors and interested persons: ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Sandeep Dutta (sandeep AT users.sourceforge.net) * Jean Loius-VERN * Daniel Drotos * Kevin Vigor * Johan Knol * Scott Dattalo * Karl Bongers * Bernhard Held * Frieder Ferlemann * Jesus Calvino-Fraga * Borut Razem * Vangelis Rokas * Erik Petrich * Paul Stoffregen * Michael Hope * Maarten Brock * Raphael Neider * Hans-Juergen Dorn * Klaus Flittner * Philipp Klaus Krause * Leland Morrison * Molnar Karoly * Ben Shi SDCC includes code from: * Alan Baldwin Initial version of ASXXXX and ASLINK. * John Hartman Porting ASXXXX and ASLINK for 8051. * Dmitry S. Obukhov malloc and serial I/O routines. * Pascal Felber Some of the Z80 related files are borrowed from the Gameboy Development Kit (GBDK). * The GCC development team http://gcc.gnu.org/ for GNU C preprocessor, the basis of sdcpp preprocessor and gcc test suite, partially included into the SDCC regression test suite * The GNU Binutils development team http://www.gnu.org/software/binutils/ for GNU Binutils, the basis of sdbinutils * Boost Community http://www.boost.org/ for Boost C++ libraries used in sdcc compiler * Timo Bingmann http://idlebox.net/2007/stx-btree/ for TX B+ Tree C++ Template Classes used in sdcc compiler * Malini Dutta Sandeep's wife, for her patience and support.