Turbo51 is a Free Pascal compiler for the 8051 family of microcontrollers. If you are programming for the 8051 family of microcontrollers and you like Pascal programming language then you will LOVE Turbo51.
Main features:
Win32 console application
Fast single pass optimizing compiler
Borland Turbo Pascal 7 syntax
Full floating point support
Mixed pascal and assembler programming
Full use of register banks
Advanced multi-pass optimizer
Smart LINKER
Generates Compact high quality code
Output formats: Binary, Intel Hex
Assembler source code generation
Turbo51 is still under development. But all major functions work and produce usable code. I have successfully used Turbo51 for many complex projects based on many different 8051 derivatives. Therefore I have decided to release it - as a freeware. There is still some work to be done, in particular the documentation. But even in this stage it is possible to use Turbo51 for serious work. On this site you will find basic documentation and some examples that show the syntax, features and generated files. This information should be enough to become familiar with the compiler.
new:
* Fixed bug: Wrong HEX file (at address $0002) in some rare cases
* Fixed bug: Compiler crashes while trying to report "Procedure outside of CODE segment" error
* Fixed bug: IDATA memory usage not reported if delcared in unit
* Fixed bug: Wrong IDATA directive processing in some cases
* Fixed bug: Wrong optimization of BitAddress1 := not BitAddress2 in some cases
* Fixed bug: Wrong optimization of RRC A in some rare cases
* Fixed bug: Wrong optimization of Case statement range lower limit comparison in some cases
* Fixed bug: instructions with R4 and R5 before call to the sysLongIntToReal were removed in some cases
* New feature: Improved code for Case statement range lower limit comparison
* New feature: Support for any extension of unit source file