Improve handling of nested struct/union/array, part of RFE #937.
[sdcc.git] / sdcc-web / previous.php
blobc1f37410a3cc07fc6fb3886bc30ed89e6db169a4
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3 <head>
4 <meta content="text/html; charset=UTF-8" http-equiv="content-type" />
5 <title>SDCC Previous News and Changes</title>
6 <link rel="stylesheet" href="styles/style.css" type="text/css" />
7 <link rel="icon" type="image/svg+xml" href="/images/sdcc.svg">
8 </head>
9 <body link="teal" vlink="#483d8b">
10 <div align="left">
11 <h1>SDCC - Small Device C Compiler</h1>
12 <table bgcolor="white" border="0" cellpadding="2" cellspacing="1" width="100%">
13 <tbody>
14 <tr>
15 <td valign="top" width="15%"><?php echo(file_get_contents('./left_menu.inc'));?>
16 </td>
17 <td width="85%">
19 <h2>Previous NEWS</h2>
21 <p><i><b>June 26th, 2023: SDCC 4.3.0 RC1 released.</b></i></p>
22 <p>SDCC 4.3.0 Release Candidate 1 source, doc and binary packages for amd64 GNU/Linux, 32 and 64 bit Windows and amd64 macOS are available in corresponding folders at:
23 <a href="http://sourceforge.net/projects/sdcc/files/">
24 http://sourceforge.net/projects/sdcc/files/</a>.</p>
26 <p><i><b>Mar 8th, 2022: SDCC 4.2.0 released.</b></i></p>
27 <p>A new release of SDCC, the portable optimizing compiler for STM8, MCS-51, DS390, HC08, S08, Z80, Z180, Rabbit, SM83, eZ80 in Z80 mode, Z80N, TLCS-90, 6502, Padauk and PIC microprocessors is now available.
28 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
29 Sources, documentation and binaries for GNU/Linux amd64, Windows amd64, macOS amd64 and Windows x86 are available.</p>
30 <p>SDCC 4.2.0 New Feature List:</p>
31 <ul>
32 <li>C23 memset_explicit</li>
33 <li>Support for --oldralloc has been removed from the z80, z180, tlcs90, z80n, ez80_z80, r2k, r2ka, r3ka backends.</li>
34 <li>gbz80 port now uses more efficient block-initalization of global variables (users of a custom crt0 need to adapt theirs).</li>
35 <li>Full support for __z88dk_callee for the z80, z180, gbz80, tlcs90, z80n, ez80_z80, r2k, r2ka, r3ka, stm8 backends.</li>
36 <li>Support for __raisonance, __iar and __cosmic calling conventions for stm8.</li>
37 <li>Support for a new __sdcccall(1) calling convention in the stm8 port AS NEW DEFAULT.</li>
38 <li>Support for a new __sdcccall(1) calling convention in the gbz80 port AS NEW DEFAULT.</li>
39 <li>Support for a new __sdcccall(1) calling convention in the z80, z80n and z180 ports AS NEW DEFAULT.</li>
40 <li>Support for a new __sdcccall(1) calling convention in the r2k, r2ka, r3k, tlcs90 and ez80_z80 ports.</li>
41 <li>Removed support for --profile for gbz80, z80, z180, tlcs90, z80n, ez80_z80, r2k, r2ka, r3ka backends.</li>
42 <li>The z80n port Z80N Core minimum version has been raised from 1.0 to 2.0.</li>
43 <li>Improved rematerialization support in the stm8, gbz80, z80, z180, tlcs90, z80n, ez80_z80, r2k, r2ka, r3ka backends.</li>
44 <li>The gbz80 port was renamed to sm83.</li>
45 <li>New in-development mos6502 port.</li>
46 </ul>
47 <p>Numerous other new features and bug fixes are included as well.</p>
48 <p>You can download the release from:<br />
49 <a href="https://sourceforge.net/projects/sdcc/files/">https://sourceforge.net/projects/sdcc/files/</a></p>
51 <p><i><b>Feb 27th, 2022: SDCC 4.2.0 RC2 released.</b></i></p>
52 <p>SDCC 4.2.0 Release Candidate 2 source, doc and binary packages for amd64 GNU/Linux, 32 and 64 bit Windows and amd64 macOS are available in corresponding folders at:
53 <a href="http://sourceforge.net/projects/sdcc/files/">
54 http://sourceforge.net/projects/sdcc/files/</a>.</p>
56 <p><i><b>Feb 22nd, 2022: SDCC 4.2.0 RC1 released.</b></i></p>
57 <p>SDCC 4.2.0 Release Candidate 1 source, doc and binary packages for amd64 GNU/Linux, 32 and 64 bit Windows and amd64 macOS are available in corresponding folders at:
58 <a href="http://sourceforge.net/projects/sdcc/files/">
59 http://sourceforge.net/projects/sdcc/files/</a>.</p>
61 <p><i><b>Mar 8th, 2021: SDCC 4.1.0 released.</b></i></p>
62 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000, GBZ80, eZ80, TLCS-90,
63 HC08, STM8, Padauk and PIC microprocessors is now available
64 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
65 Sources, documentation and binaries for GNU/Linux amd64, Windows amd64, macOS amd64 and Windows x86 are available.</p>
66 <p>SDCC 4.1.0 New Feature List:</p>
67 <ul>
68 <li>New z80n port for the Spectrum Next CPU (a Z80 variant).</li>
69 <li>Much better register allocation in the gbz80 backend.</li>
70 <li>Workarounds for Rabbit wait state bugs in the r2k backend.</li>
71 <li>New r2ka port to better support Rabbit 2000A, 2000B, 2000C, 3000.</li>
72 <li>Default crt0 and --data-loc for Rabbits suitable for typical Rabbit hardware configurations, such as the RCMs.</li>
73 <li>Many improvements in code generation for z80 and related ports.</li>
74 <li>Rabbit register definition headers for Rabbit 2000, 2000A, 2000B, 2000C, 3000, 3000A.</li>
75 <li> C23 digit separators.</li>
76 </ul>
77 <p>Numerous other new features and bug fixes are included as well.</p>
78 <p>You can download the release from:<br />
79 <a href="https://sourceforge.net/projects/sdcc/files/">https://sourceforge.net/projects/sdcc/files/</a></p>
81 <p><i><b>Jan 27th, 2021: SDCC 4.1.0 RC1 released.</b></i></p>
82 <p>SDCC 4.1.0 Release Candidate 1 source, doc and binary packages for amd64 GNU/Linux, 32 and 64 bit Windows and amd64 macOS are available in corresponding folders at:
83 <a href="http://sourceforge.net/projects/sdcc/files/">
84 http://sourceforge.net/projects/sdcc/files/</a>.</p>
86 <p><i><b>Jan 30th, 2020: SDCC 4.0.0 released.</b></i></p>
87 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000, GBZ80, eZ80, TLCS-90,
88 HC08, STM8, Padauk and PIC microprocessors is now available
89 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
90 Sources, documentation and binaries for GNU/Linux amd64, Windows amd64, macOS amd64 and Windows x86 are available.</p>
91 <p>SDCC 4.0.0 New Feature List:</p>
92 <ul>
93 <li>The pdk15 backend now passes the regression tests (both with and without --stack-auto), and is thus considered stable.</li>
94 <li>New in-development pdk13 backend for Padauk µC with 13-bit wide program memory.</li>
95 <li>C2X memccpy(), strdup(), strndup().</li>
96 <li>Better tail call optimization.</li>
97 <li>Many fixes in the pic14 backend.</li>
98 <li>C2X u8 character constants.</li>
99 <li>C2X bool, static_assert, alignof, alignas.</li>
100 <li>C2X attributes on statements.</li>
101 <li>C2X attribute declarations.</li>
102 <li>Support for extended ASCII characters in sdas, sdld.</li>
103 <li>Compiler support for UCNs and non-ASCII utf8 in identifiers.</li>
104 </ul>
105 <p>Numerous other new features and bug fixes are included as well.</p>
106 <p>You can download the release from:<br />
107 <a href="https://sourceforge.net/projects/sdcc/files/">https://sourceforge.net/projects/sdcc/files/</a></p>
109 <p><i><b>Jan 24th, 2020: SDCC 4.0.0 RC1 released.</b></i></p>
110 <p>SDCC 4.0.0 Release Candidate 1 source, doc and binary packages for amd64 GNU/Linux, 32 and 64 bit Windows and amd64 macOS are available in corresponding folders at:
111 <a href="http://sourceforge.net/projects/sdcc/files/">
112 http://sourceforge.net/projects/sdcc/files/</a>.</p>
114 <p><i><b>Apr 15th, 2019: SDCC 3.9.0 released.</b></i></p>
115 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000, GBZ80, eZ80, TLCS-90,
116 HC08, STM8, Padauk and PIC microprocessors is now available
117 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
118 Sources, documentation and binaries for GNU/Linux amd64, Windows amd64, macOS amd64 and Windows x86 are available.</p>
119 <p>SDCC 3.9.0 Feature List:</p>
120 <ul>
121 <li>Support for struct / union assignment.</li>
122 <li>Optimizations in the stm8 backend relevant to soft float increase Whetstone score by two thirds.</li>
123 <li>Improvements in rematerialization in the stm8 backend improve code generation for struct, union and arrays.</li>
124 <li>New stack allocator reduces stack space usage for the stm8, z80, z180, gbz80, r2k, r3ka, tlcs90 backends.</li>
125 <li>New ez80_z80 backend for eZ80 in Z80 mode.</li>
126 <li>Removed deprecated sdcclib utility.</li>
127 <li>New pdk14 backend for Padauk µC with 14-bit wide program memory.</li>
128 <li>New in-development pdk15 backend for Padauk µC with 15-bit wide program memory.</li>
129 </ul>
130 <p>Numerous other new features and bug fixes are included as well.</p>
131 <p>You can download the release from:<br />
132 <a href="https://sourceforge.net/projects/sdcc/files/">https://sourceforge.net/projects/sdcc/files/</a></p>
134 <p><i><b>Apr 8th, 2019: SDCC 3.9.0 RC1 released.</b></i></p>
135 <p>SDCC 3.9.0 Release Candidate 1 source, doc and binary packages for amd64 GNU/Linux, 32 and 64 bit Windows and amd64 macOS are available in corresponding folders at:
136 <a href="http://sourceforge.net/projects/sdcc/files/">
137 http://sourceforge.net/projects/sdcc/files/</a>.</p>
139 <p><i><b>Sep 27th, 2018: SDCC 3.8.0 released.</b></i></p>
140 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000, GBZ80, TLCS-90,
141 HC08, STM8 and PIC microprocessors is now available
142 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
143 Sources, documentation and binaries for GNU/Linux amd64, Windows amd64, macOS amd64 and Windows x86 are available.</p>
144 <p>SDCC 3.8.0 Feature List:</p>
145 <ul>
146 <li>Additional general utility function: bsearch().</li>
147 <li>Support for rematerialization in the stm8 backend reduces register pressure and stack usage.</li>
148 <li>Merged upstream GNU binutils 2.30</li>
149 <li>All Python code is now fully compatible with both Python 2.7 and Python 3.6, so Python 3 can be used instead of Python 2.</li>
150 <li>Regression testing for diagnostics.</li>
151 <li>Improved handling of local bool variables in the mcs51 backend substantially reduces code size.</li>
152 <li>Large memory model for stm8 for 24-bit codespace allows using more than 32KB of Flash for code.</li>
153 <li>New optimizations for calls to some standard library function (printf(), puts(), strcpy()).</li>
154 <li>The type of true and false from stdbool.h change from int to bool.</li>
155 <li>New C2X mode (--std-c2x, --std-sdcc2x, #pragma std_c2x) adds support for one-argument static_assert variant.</li>
156 <li>Intermingling of declarations and statements (ISO C99).</li>
157 <li>Support headers for AX8052 devices.</li>
158 <li>Adopted GCC 8.2 regression tests (execute part of the GCC C torture tests).</li>
159 </ul>
160 <p>Numerous other new features and bug fixes are included as well.</p>
161 <p>You can download the release from:<br />
162 <a href="https://sourceforge.net/projects/sdcc/files/">https://sourceforge.net/projects/sdcc/files/</a></p>
164 <p><i><b>Sep 17th, 2018: SDCC 3.8.0 RC1 released.</b></i></p>
165 <p>SDCC 3.8.0 Release Candidate 1 source, doc and binary packages for amd64 GNU/Linux, 32 and 64 bit Windows and amd64 macOS are available in corresponding folders at:
166 <a href="http://sourceforge.net/projects/sdcc/files/">
167 http://sourceforge.net/projects/sdcc/files/</a>.</p>
169 <p><i><b>Mar 1st, 2018: SDCC 3.7.0 released.</b></i></p>
170 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000, GBZ80, TLCS-90,
171 HC08, STM8 and PIC microprocessors is now available
172 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
173 Sources and documentation are available (for 3.8.0 we are aiming to bring back binary releases).</p>
174 <p>SDCC 3.7.0 Feature List:</p>
175 <ul>
176 <li>Changed putchar() prototype from void putchar(char) to int putchar(int) to improve standard-compliance and allow error reporting.</li>
177 <li>Various speed improvements in stm8 backend - Dhrystone score more than doubled, resulting in SDCC achieving the highest Dhrystone scores among STM8 C implementations.</li>
178 <li>Various speed improvements for multiplications resulting in SDCC achieving the highest Coremark scores among STM8 C implementations.</li>
179 <li>Declarations in for loops (ISO C99).</li>
180 <li>64-bit integers (long long) for the mcs51 and ds390 backends (now long long is fully supported in SDCC except for the pic14 and pic16 backends).</li>
181 <li>Full _Bool support for mcs51 and ds390 backend (now _Bool is fully supported in SDCC regardless of backend).</li>
182 <li>Additional wide character library functions: mbstowcs() and wcstombs(), btowc() and wctob(), wcscmp(), wcslen().</li>
183 <li>Changed PRNG for rand() from LCG to xorshift to improve speed and quality.</li>
184 <li>Support for Small-C calling convention on the callee side (i.e. function definitions with Small-C calling convention).</li>
185 <li>The obsolete macro SDCC (which used to contain the version number encoded as an integer) has finally been removed (except for mcs51, where it will survive a little bit longer for SiLabs IDE compability).</li>
186 <li>New devices supported by simulator (TLCS-90, and the 517, F380, XC88X, DS320 mcs51-variants along with dual-dptr and MDU support).</li>
187 <li>Timer, UART (incl. interrupt) and I/O support in STM8 simulator.</li>
188 <li>Simulator support for banked memory and bit banding.</li>
189 <li>Various simulator improvements: Conditional breakpoints, breakpoints by function name from SDCC debug output, OMF input, VCD output, simulator interface for simulated program and new operators in expressions.</li>
190 <li>Deprecated --nojtbound and the corresponding pragma.</li>
191 <li>Faster register allocator reduces compilation time by about 25% (does not apply to mcs51, ds390 which use a different register allocator).</li>
192 <li>Execution count guessing and use of execution count guesses in stm8 register allocation improve optimization for code speed.</li>
193 <li>Changed getchar() prototype from char getchar(void) to int getchar(void) to improve standard-compliance and allow error reporting.</li>
194 <li>Type qualifiers in array parameters (ISO C99).</li>
195 <li>static in array parameters (ISO C99).</li>
196 <li>Improved support for DWARFv2 debug info in ELF output (stm8, hc08, s08).</li>
197 <li>Various improvements in z80/z180/gbz80/tlcs90/r2k/r3ka code generation, in particular for mixed 16-/32-bit code.</li>
198 <li>__z88dk_fastcall function pointer support for --reserve-regs-iy.</li>
199 <li>tlcs90 is now a fully supported backend, no longer work in progress.</li>
200 <li>--data-seg to specify the segment for non-initialized data in the z80, z180, gbz80, tlcs90, r2k and r3ka backends.</li>
201 <li>New methods to obtain tree-decompositions of control-flow graphs improve compilation time / code-quality trade-off (when SDCC is built with support for the treedec library).</li>
202 <li>Additional general utility functions: qsort(), strtol(), strtoul().</li>
203 </ul>
204 <p>Numerous other new features and bug fixes are included as well.</p>
205 <p>You can download the release from:<br />
206 <a href="https://sourceforge.net/projects/sdcc/files/" target="_new">https://sourceforge.net/projects/sdcc/files/</a></p>
208 <p><i><b>Feb 20th, 2018: SDCC 3.7.0 RC2 released.</b></i></p>
209 <p>SDCC 3.7.0 Release Candidate 2 source and doc in corresponding folders at:
210 <a href="http://sourceforge.net/projects/sdcc/files/">
211 http://sourceforge.net/projects/sdcc/files/</a>.</p>
213 <p><i><b>Feb 11th, 2018: SDCC 3.7.0 RC1 released.</b></i></p>
214 <p>SDCC 3.7.0 Release Candidate 1 source and doc in corresponding folders at:
215 <a href="http://sourceforge.net/projects/sdcc/files/">
216 http://sourceforge.net/projects/sdcc/files/</a>.</p>
218 <p><i><b>June 12th, 2016: Small Device C Compiler 3.6.0 released.</b></i></p>
219 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000,
220 HC08, STM8 and PIC microprocessors is now available
221 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
222 Sources, documentation and binaries compiled for x86 Linux, x86 and x64 MS Windows and
223 x86 and PPC Mac OS X are available. </p>
224 <p>SDCC 3.6.0 Feature List:</p>
225 <ul>
226 <li>Merged upstream binutils 2.25</li>
227 <li>New memory management with lower overhead</li>
228 <li>Changed default language dialect to --std-sdcc11</li>
229 <li>Diagnostic for missing type specifier: No implicit int outside of C90 mode anymore</li>
230 <li>C11 generic selections</li>
231 <li>char type is now unsigned by default (old behaviour can be restored using --fsigned-char)</li>
232 <li>Character constants are now of type int instead of char.</li>
233 <li>ISO C95 and ISO C11 wide character constants</li>
234 <li>ISO C95 and ISO C11 wide string literals</li>
235 <li>Basic standard library support for wide characters: c16rtomb(), mbrtoc16(), mbsinit(), mbtowc(), mbrlen(), mbrtoc32, c32rtomb(), mbrtowc(), wcrtomb(), mblen(), wctomb()</li>
236 <li>Treat all ports the same in the manual (i.e. mcs51-specific stuff is now clearly described as such)</li>
237 <li>Reorganized interrupt handling for z80, z180, r2k, r3ka, tlcs90, gbz80 backends</li>
238 <li>Workaround for stm8 division hardware bug</li>
239 <li>ELF/DWARF support for stm8</li>
240 <li>Output symbol table for ELF</li>
241 <li>pic16 port now uses standard-compliant crt0iz that initializes static and globals to 0 by default</li>
242 </ul>
243 <p>Numerous feature requests and bug fixes are included as well.</p>
244 <p>You can download the release from:<br />
245 <a href="https://sourceforge.net/projects/sdcc/files/" target="_new">https://sourceforge.net/projects/sdcc/files/</a></p>
247 <p><i><b>June 5th, 2016: SDCC 3.6.0 RC2 released.</b></i></p>
248 <p>SDCC 3.6.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
249 32 and 64 bit Windows and universal Mac OS X are available in corresponding folders at:
250 <a href="http://sourceforge.net/projects/sdcc/files/">
251 http://sourceforge.net/projects/sdcc/files/</a>.</p>
253 <p><i><b>May 30th, 2016: SDCC 3.6.0 RC1 released.</b></i></p>
254 <p>SDCC 3.6.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
255 32 and 64 bit Windows and universal Mac OS X are available in corresponding folders at:
256 <a href="http://sourceforge.net/projects/sdcc/files/">
257 http://sourceforge.net/projects/sdcc/files/</a>.</p>
259 <p><i><b>June 24th, 2015: Small Device C Compiler 3.5.0 released.</b></i></p>
260 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000,
261 HC08, STM8 and PIC microprocessors is now available
262 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
263 Sources, documentation and binaries compiled for x86 Linux, x86 and x64 MS Windows and
264 x86 and PPC Mac OS X are available. </p>
265 <p>SDCC 3.5.0 Feature List:</p>
266 <ul>
267 <li>--disable-non-free configure option</li>
268 <li>Changed default language dialect from --std-sdcc89 to --std-sdcc99</li>
269 <li>Reorganized and updated manual</li>
270 <li>Reduced memory consumption (most noticeable for high --max-allocs-per-node)</li>
271 <li>Faster compilation for stm8 (most noticeable for high --max-allocs-per-node)</li>
272 <li>atoll() function for conversion of strings to long long</li>
273 <li>__z88dk_fastcall and __z88dk_callee calling conventions for more efficient function calls and better compability with z88dk</li>
274 <li>--lospre-unsafe-read renamed to --allow-unsafe-read</li>
275 </ul>
276 <p>Numerous feature requests and bug fixes are included as well.</p>
277 <p>You can download the release from:<br />
278 <a href="https://sourceforge.net/projects/sdcc/files/" target="_new">https://sourceforge.net/projects/sdcc/files/</a></p>
280 <p><i><b>June 20th, 2015: SDCC 3.5.0 RC2 released.</b></i></p>
281 <p>SDCC 3.5.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
282 32 and 64 bit Windows and universal Mac OS X are available in corresponding folders at:
283 <a href="http://sourceforge.net/projects/sdcc/files/">
284 http://sourceforge.net/projects/sdcc/files/</a>.</p>
286 <p><i><b>June 9th, 2015: SDCC 3.5.0 RC1 released.</b></i></p>
287 <p>SDCC 3.5.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
288 32 and 64 bit Windows and universal Mac OS X are available in corresponding folders at:
289 <a href="http://sourceforge.net/projects/sdcc/files/">
290 http://sourceforge.net/projects/sdcc/files/</a>.</p>
292 <p><i><b>April 11th, 2014: Small Device C Compiler 3.4.0 released.</b></i></p>
293 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000,
294 HC08, STM8 and PIC microprocessors is now available
295 (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
296 Sources, documentation and binaries compiled for x86 Linux, x86 and x64 MS Windows and
297 x86 and PPC Mac OS X are available. </p>
298 <p>SDCC 3.4.0 Feature List:</p>
299 <ul>
300 <li>New TLCS90 (Toshiba Z80 clone) target support</li>
301 <li>New STMicroelectronics STM8 target support</li>
302 <li>Support for named address spaces in ROM</li>
303 <li>Detects supported devices by gputils when building SDCC</li>
304 </ul>
305 <p>Numerous feature requests and bug fixes are included as well.</p>
306 <p>You can download the release from:<br />
307 <a href="https://sourceforge.net/projects/sdcc/files/" target="_new">https://sourceforge.net/projects/sdcc/files/</a></p>
309 <p><i><b>April 5th, 2014: SDCC 3.4.0 RC3 released.</b></i></p>
310 <p>SDCC 3.4.0 Release Candidate 3 source, doc and binary packages for x86 Linux,
311 32 bit Windows, 64 bit Windows and universal Mac OS X are available in corresponding folders at:
312 <a href="http://sourceforge.net/projects/sdcc/files/">
313 http://sourceforge.net/projects/sdcc/files/</a>.</p>
315 <p><i><b>March 27th, 2014: SDCC 3.4.0 RC2 released.</b></i></p>
316 <p>SDCC 3.4.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
317 32 bit Windows, 64 bit Windows and universal Mac OS X are available in corresponding folders at:
318 <a href="http://sourceforge.net/projects/sdcc/files/">
319 http://sourceforge.net/projects/sdcc/files/</a>.</p>
321 <p><i><b>March 16th, 2014: SDCC 3.4.0 RC1 released.</b></i></p>
322 <p>SDCC 3.4.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
323 32 bit Windows and universal Mac OS X are available in corresponding folders at:
324 <a href="http://sourceforge.net/projects/sdcc/files/">
325 http://sourceforge.net/projects/sdcc/files/</a>.</p>
327 <p><i><b>May 20th, 2013: Small Device C Compiler 3.3.0 released.</b></i></p>
328 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000, HC08 and PIC microprocessors
329 is now available (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>). Sources, documentation
330 and binaries compiled for x86 Linux, x86 and x64 MS Windows and x86 and PPC Mac OS X are available. </p>
331 <p>SDCC 3.3.0 Feature List:</p>
332 <ul>
333 <li>Many small improvements in code generation for the z80-related ports - merged smallopts branch</li>
334 <li>lospre (currently enabled for z80-related and hc08-related ports only) - merged lospre branch</li>
335 <li>More efficient initialization of globals in z80, z180, r2k and r3ka ports.</li>
336 <li>Inclusion of tests from the gcc test suite into the sdcc regression test suite led to many bugs being found and fixed.</li>
337 <li>Split sdas390 from sdas8051</li>
338 <li>Merged big parts of ASxxxx v5 into sdas</li>
339 <li>New pic devices (synchronization with MPLABX 1.60). (Except for very old MCU-s.)</li>
340 <li>New script which disassembles those hex files, in which MCS51 code there is. (mcs51-disasm.pl)</li>
341 <li>Added the PIC16F1788 and PIC16F1789 devices.</li>
342 <li>C11 _Alignof operator.</li>
343 <li>C11 _Alignas alignment specifier.</li>
344 <li>C11 _Static_Assert static assertion.</li>
345 </ul>
346 <p>Numerous feature requests and bug fixes are included as well.</p>
347 <p>You can download the release from:<br />
348 <a href="https://sourceforge.net/projects/sdcc/files/" target="_new">https://sourceforge.net/projects/sdcc/files/</a></p>
350 <p><i><b>May 12th, 2013: SDCC 3.3.0 RC3 released.</b></i></p>
351 <p>SDCC 3.3.0 Release Candidate 3 source, doc and binary packages for x86 Linux,
352 32 bit Windows, 64 bit Windows and universal Mac OS X are available in corresponding folders at:
353 <a href="http://sourceforge.net/projects/sdcc/files/">
354 http://sourceforge.net/projects/sdcc/files/</a>.</p>
356 <p><i><b>May 11th, 2013: SDCC 3.3.0 RC2 released.</b></i></p>
357 <p>SDCC 3.3.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
358 32 bit Windows, 64 bit Windows and universal Mac OS X are available in corresponding folders at:
359 <a href="http://sourceforge.net/projects/sdcc/files/">
360 http://sourceforge.net/projects/sdcc/files/</a>.</p>
362 <p><i><b>May 5th, 2013: SDCC 3.3.0 RC1 released.</b></i></p>
363 <p>SDCC 3.3.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
364 32 bit Windows and universal Mac OS X are available in corresponding folders at:
365 <a href="http://sourceforge.net/projects/sdcc/files/">
366 http://sourceforge.net/projects/sdcc/files/</a>.</p>
368 <p><i><b>July 9th, 2012: Small Device C Compiler 3.2.0 released.</b></i></p>
369 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, Z180, Rabbit 2000, HC08 and PIC microprocessors
370 is now available (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>). Sources, documentation
371 and binaries compiled for x86 Linux, x86 MS Windows and PPC Mac OS X are available. </p>
372 <p>SDCC 3.2.0 Feature List:</p>
373 <ul>
374 <li>Named address spaces with optimal placement of bank selection calls.</li>
375 <li>_Noreturn.</li>
376 <li>--std-c11 command line option for ISO C11.</li>
377 <li>ucsim support for the LR35902 (gameboy CPU).</li>
378 <li>The gbz80 port is alive again, there were many bug fixes and the generated code is much better now.</li>
379 <li>Pic 14 enhanced core libraries are included in sdcc builds by default</li>
380 <li>Added pic 14 enhanced core devices: 16f1503, 16f1508, 16f1509, 16f1516, 16f1517, 16f1518, 16f1519, 16f1526, 16f1527, 16f1946,
381 16f1947</li>
382 <li>PIC14/PIC16: Implemented __critical; PIC14 __critical function cannot have arguments for now, though</li>
383 <li>inclusion of some tests from the gcc test suite into the sdcc regression test suite led to many bugs being found and fixed.</li>
384 <li>Many macros with previously non-standard-compliant names have been renamed (SDCC_REVISION to __SDCC_REVISION, etc).</li>
385 <li>setjmp() / longjmp() for the z180 and r2k ports.</li>
386 <li>Added sdar archive managing utility. sdar and sdranlib are derived from GNU binutils package</li>
387 <li>Added support for pic 14 core devices: 16f720, 16f721, 16f882, 16f883, 16f884, 16f747, 16f946</li>
388 <li>sdcpp synchronized with GNU cpp 4.6.3</li>
389 <li>Added support for pic 18f1230/18f1330 device family</li>
390 <li>Implemented #pragma config for pic16 target</li>
391 <li>sdcc now works on Debian GNU/Hurd.</li>
392 <li>New register allocator for the hc08 port, resulting in better code being generated.</li>
393 <li>New s08 port.</li>
394 <li>New r3ka port.</li>
395 <li>Many small improvements in the z80, hc08 and r2k code generation, reducing code size.</li>
396 <li>Shift, multiplication, division and returning of long long are now supported (modulo for long long is still missing, integer
397 literals of type long long are broken).
398 </ul>
399 <p>Numerous feature requests and bug fixes are included as well.</p>
400 <p>You can download the release from:<br />
401 <a href="https://sourceforge.net/projects/sdcc/files/" target="_new">https://sourceforge.net/projects/sdcc/files/</a></p>
403 <p><i><b>July 6th, 2012: SDCC 3.2.0 RC4 released.</b></i></p>
404 <p>SDCC 3.2.0 Release Candidate 4 source, doc and binary packages for x86 Linux,
405 32 bit Windows and universal Mac OS X are available in corresponding folders at:
406 <a href="http://sourceforge.net/projects/sdcc/files/">
407 http://sourceforge.net/projects/sdcc/files/</a>.</p>
409 <p><i><b>June 29th, 2012: SDCC 3.2.0 RC3 released.</b></i></p>
410 <p>SDCC 3.2.0 Release Candidate 3 source, doc and binary packages for x86 Linux,
411 32 bit Windows and universal Mac OS X are available in corresponding folders at:
412 <a href="http://sourceforge.net/projects/sdcc/files/">
413 http://sourceforge.net/projects/sdcc/files/</a>.</p>
415 <p><i><b>June 24th, 2012: SDCC 3.2.0 RC2 released.</b></i></p>
416 <p>SDCC 3.2.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
417 32 bit Windows and universal Mac OS X are available in corresponding folders at:
418 <a href="http://sourceforge.net/projects/sdcc/files/">
419 http://sourceforge.net/projects/sdcc/files/</a>.</p>
421 <p><i><b>June 16th, 2012: SDCC 3.2.0 RC1 released.</b></i></p>
422 <p>SDCC 3.2.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
423 32 bit Windows and universal Mac OS X are available in corresponding folders at:
424 <a href="http://sourceforge.net/projects/sdcc/files/">
425 http://sourceforge.net/projects/sdcc/files/</a>.</p>
427 <p><i><b>November 27th, 2011: Small Device C Compiler 3.1.0 released.</b></i></p>
428 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80,
429 HC08, and PIC microprocessors is now available (<a href="http://sdcc.sourceforge.net"
430 target="_new">http://sdcc.sourceforge.net</a>). Sources, documentation and binaries
431 compiled for x86 Linux, x86 MS Windows and universal Mac OS X are available.</p>
432 <p>SDCC 3.1.0 Feature List:</p>
433 <ul>
434 <li>include/pic, non-free/include/pic, lib/pic, non-free/lib/pic renamed to */pic14</li>
435 <li>implemented --fomit-frame-pointer for mcs51</li>
436 <li>support for use of sdcc in z88dk (--reserve-regs-iy and --no-optsdcc-in-asm options; smallc calling convention)</li>
437 <li>new register allocator in the z80 and gbz80 ports (optimal when using --opt-code-size and a sufficiently high value for
438 --max-allocs-per-node for the z80 port)</li>
439 <li>C99 designated initializers</li>
440 <li>added strxfrm() and strcoll() functions; strerror() is the only string handling function still missing</li>
441 <li>added support for pic18f2xk22/pic18f4xk22 family (requires gputils > 0.14.0 and --enable-new-pics configure flag)</li>
442 <li>added support for enhanced core pic14 devices (requires gputils > 0.14.0 and --enable-new-pics configure flag)</li>
443 <li>setjmp() / longjmp() for the z80 port</li>
444 <li>_Bool / bool for the hc08, pic16 and pic14 ports</li>
445 <li>sdcpp synchronized with GNU cpp 4.6.1</li>
446 <li>z180 port</li>
447 <li>very basic (no integer constants, multiplication, division, shifts or use as return value) support for data types
448 long long, unsigned long long, int_fast64_t, int_least64_t, int64_t, uint_fast64_t, uint_least64_t, uint64_t in the
449 z80, z180, r2k and gbz80 ports</li>
450 <li>r2k port for the Rabbit 2000 and Rabbit 3000</li>
451 </ul>
452 <p>Numerous feature requests and bug fixes are included as well.</p>
453 <p>You can download the release from:<br />
454 <a href="http://sourceforge.net/projects/sdcc/files/" target="_new">http://sourceforge.net/projects/sdcc/files/</a></p>
456 <p></p>
457 <hr width="60%" />
458 <p></p>
460 <p><i><b>November 22nd, 2011: SDCC 3.1.0 RC3 released.</b></i></p>
461 <p>SDCC 3.1.0 Release Candidate 3 source, doc and binary packages for x86 Linux,
462 32 bit Windows and universal Mac OS X are available at:
463 <a href="http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.1.0-rc3/">
464 http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.1.0-rc3</a>.</p>
466 <p></p>
467 <hr width="60%" />
468 <p></p>
470 <p><i><b>November 18th, 2011: SDCC 3.1.0 RC2 released.</b></i></p>
471 <p>SDCC 3.1.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
472 32 bit Windows and universal Mac OS X are available at:
473 <a href="http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.1.0-rc2/">
474 http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.1.0-rc2</a>.</p>
476 <p></p>
477 <hr width="60%" />
478 <p></p>
480 <p><i><b>November 6th, 2011: SDCC 3.1.0 RC1 released.</b></i></p>
481 <p>SDCC 3.1.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
482 32 bit Windows and universal Mac OS X are available at:
483 <a href="http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.1.0-rc1/">
484 http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.1.0-rc1</a>.</p>
486 <p></p>
487 <hr width="60%" />
488 <p></p>
490 <p><i><b>November 1st, 2010: Small Device C Compiler 3.0.0 released.</b></i></p>
491 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80,
492 HC08, and PIC microprocessors is now available (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
493 Sources, documentation and binaries compiled for x86 Linux, x86 MS Windows and universal Mac OS X are available.</p>
494 <p>SDCC 3.0.0 Feature List:</p>
495 <ul>
496 <li>sdcpp synchronized with GNU cpp 4.5.0</li>
497 <li>changed z80 and gb targets object file extension to .rel</li>
498 <li>special sdcc keywords which are not preceded by a double underscore
499 are deprecated in sdcc version 3.0.0 and higher. See section ANSI-Compliance in sdccman</li>
500 <li>xa51 and avr targets are disabled by default in sdcc version 3.0.0 and higher</li>
501 <li>introduced new memory model huge for mcs51 to use bankswitching for all functions</li>
502 <li>removed generation of GameBoy binary image file format, rrgb map file
503 format and no$gmb sym file format from sdld linker. Utility makebin
504 generates GameBoy binary image file format, utility as2gbmap utility
505 converts sdas map file to rrgb map and no$gmb sym file formas.</li>
506 <li>implemented __builtin_offsetof</li>
507 <li>asxxxx / aslink renamed to sdas / sdld and synchronized with ASXXXX V2.0</li>
508 <li>majority of sdcc run time library released under GPL+LE license
509 (see http://sourceforge.net/apps/trac/sdcc/wiki/Files%20and%20Licenses)</li>
510 <li>introduced --use-non-free command line option</li>
511 <li>non free (non GPL compatible) header and library files moved to non-free directory</li>
512 <li>deprecated --no-pack-iram command line option</li>
513 </ul>
514 <p>Numerous feature requests and bug fixes are included as well.</p>
515 <p>You can download the release from:<br />
516 <a href="http://sourceforge.net/projects/sdcc/files/" target="_new">http://sourceforge.net/projects/sdcc/files/</a></p>
518 <p></p>
519 <hr width="60%" />
520 <p></p>
522 <p><i><b>October 22nd, 2010: SDCC 3.0.0 RC2 released.</b></i></p>
523 <p>SDCC 3.0.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
524 32 bit Windows and universal Mac OS X are available at:
525 <a href="http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.0.0-rc2/">
526 http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.0.0-rc2</a>.</p>
528 <p></p>
529 <hr width="60%" />
530 <p></p>
532 <p><i><b>October 10th, 2010: SDCC 3.0.0 RC1 released.</b></i></p>
533 <p>SDCC 3.0.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
534 32 bit Windows and universal Mac OS X are available at:
535 <a href="http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.0.0-rc1/">
536 http://sourceforge.net/projects/sdcc/files/snapshot_builds/sdcc-3.0.0-rc1</a>.</p>
538 <p></p>
539 <hr width="60%" />
540 <p></p>
542 <p><i><b>March 22th, 2009: Small Device C Compiler 2.9.0 released.</b></i></p>
543 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80,
544 HC08, and PIC microprocessors is now available (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
545 Sources, documentation and binaries compiled for x86 Linux, x86 MS Windows and
546 universal Mac OS X are available.</p>
547 <p>SDCC 2.9.0 Feature List:</p>
548 <ul>
549 <li>sdcpp synchronized with GNU cpp 4.3.3</li>
550 <li>Integer constants written in binary (prefix 0b or 0B, followed by a sequence
551 of 0 and 1digits) are now supported as a SDCC extension.</li>
552 <li>pic16 *printf() library functions return int</li>
553 <li>disabled support of undocumented and not standard compliant 'b' binary
554 format specifier ("%b", "%hb" and "%lb") in pic16 *printf() and printf_tiny() library functions</li>
555 <li>fixed initialization of unnamed bitfields members of objects of structure and union type</li>
556 <li>many optimizations to reduce code size and increase speed in the Z80 backend</li>
557 <li>added support for ar format libraries to adcc asxxxx</li>
558 <li>libraries, included in sdcc packages, are in ar format</li>
559 <li>sdcc asxxxx license changed to GPLv3</li>
560 <li>added support for many PIC16 devices</li>
561 </ul>
562 <p>Numerous feature requests and bug fixes are included as well.</p>
563 <p>You can download the release from:<br />
564 <a href="http://sourceforge.net/project/showfiles.php?group_id=599" target="_new">http://sourceforge.net/project/showfiles.php?group_id=599</a></p>
566 <p></p>
567 <hr width="60%" />
568 <p></p>
570 <p><i><b>March 15th, 2009: SDCC 2.9.0 RC2 released.</b></i></p>
571 <p>SDCC 2.9.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
572 32 bit Windows and universal Mac OS X are available at:
573 <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
575 <p></p>
576 <hr width="60%" />
577 <p></p>
579 <p><i><b>March 1st, 2009: SDCC 2.9.0 RC1 released.</b></i></p>
580 <p>SDCC 2.9.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
581 32 bit Windows and universal Mac OS X are available at:
582 <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
584 <p></p>
585 <hr width="60%" />
586 <p></p>
588 <p><i><b>March 30th, 2008: Small Device C Compiler 2.8.0 released.</b></i></p>
589 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80,
590 HC08, and PIC microprocessors is now available (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
591 Sources, documentation and binaries compiled for x86 Linux, x86 MS Windows and
592 universal Mac OS X are available.</p>
593 <p>SDCC 2.8.0 Feature List:</p>
594 <ul>
595 <li>added predefined preprocessor macro SDCC_REVISION holding SDCC's subversion revision number</li>
596 <li>added preprocessor macros SDCC_PARMS_IN_BANK1, SDCC_FLOAT_REENT and SDCC_INT_LONG_REENT</li>
597 <li>sdcpp synchronized with GNU cpp 4.2.3</li>
598 <li>multiple infiles for sdcclib</li>
599 <li>added option --acall-ajmp: replaces lcall/ljmp with acall/ajmp</li>
600 <li>added support for many PIC devices</li>
601 <li>sdcc executables on Mac OS X are built as universal binaries, so that they can run on both ppc and i386 Mac OS X</li>
602 <li>added --Werror command line option</li>
603 <li>Windows installer enhancements</li>
604 <li>generation of cdb debug info for as-z80 and link-z80</li>
605 <li>generation of cdb debug info for variables in pdata for mcs51</li>
606 <li>Tail call optimization for functions that take no parameters on Z80</li>
607 <li>Improved multiplication of unsigned chars on Z80</li>
608 <li>ISO/IEC 9899 standard compliant integer promotion of integer function arguments if --std-cXX is defined in command line</li>
609 </ul>
610 <p>Numerous feature requests and bug fixes are included as well.</p>
611 <p>You can download the release from:<br />
612 <a href="http://sourceforge.net/project/showfiles.php?group_id=599" target="_new">http://sourceforge.net/project/showfiles.php?group_id=599
613 </a></p>
615 <p></p>
616 <hr width="60%" />
617 <p></p>
619 <p><i><b>March 23th, 2008: SDCC 2.8.0 RC2 released.</b></i></p>
620 <p>SDCC 2.8.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
621 32 bit Windows and universal Mac OS X are available at:
622 <a href="http://sdcc.sourceforge.net/snapshots/sdcc-2.8.0-rc2">http://sdcc.sourceforge.net/snapshots/sdcc-2.8.0-rc2</a>
623 and <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
625 <p></p>
626 <hr width="60%" />
627 <p></p>
629 <p><i><b>March 9th, 2008: SDCC 2.8.0 RC1 released.</b></i></p>
630 <p>SDCC 2.8.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
631 32 bit Windows and universal Mac OS X are available at:
632 <a href="http://sdcc.sourceforge.net/snapshots/sdcc-2.8.0-rc1">http://sdcc.sourceforge.net/snapshots/sdcc-2.8.0-rc1</a>
633 and <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
635 <p></p>
636 <hr width="60%" />
637 <p></p>
639 <p><i><b>May 31st, 2007: Small Device C Compiler 2.7.0 released.</b></i></p>
640 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80,
641 HC08, and PIC microprocessors is now available (<a href="http://sdcc.sourceforge.net" target="_new">http://sdcc.sourceforge.net</a>).
642 Sources, documentation and binaries compiled for x86 Linux, x86 MS Windows and
643 PPC Mac OS X are available.</p>
645 <p></p>
646 <hr width="60%" />
647 <p></p>
649 <p><i><b>May 26th, 2007: SDCC 2.7.0 RC3 released.</b></i></p>
650 <p>SDCC 2.7.0 Release Candidate 3 source, doc and binary packages for x86 Linux,
651 32 bit Windows and ppc Mac OS X are available at:
652 <a href="http://sdcc.sourceforge.net/snapshots/sdcc-2.7.0-rc3">http://sdcc.sourceforge.net/snapshots/sdcc-2.7.0-rc3</a>
653 and <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
655 <p></p>
656 <hr width="60%" />
657 <p></p>
659 <p><i><b>May 22nd, 2007: SDCC 2.7.0 RC2 released.</b></i></p>
660 <p>SDCC 2.7.0 Release Candidate 2 source, doc and binary packages for x86 Linux,
661 32 bit Windows and ppc Mac OS X are available at:
662 <a href="http://sdcc.sourceforge.net/snapshots/sdcc-2.7.0-rc2">http://sdcc.sourceforge.net/snapshots/sdcc-2.7.0-rc2</a>
663 and <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
665 <p></p>
666 <hr width="60%" />
667 <p></p>
669 <p><i><b>May 21st, 2007: Circuit Cellar made the Sandeep's article "Anatomy of a Compiler A Retargetable ANSI-C
670 Compiler" publically available</b></i></p>
671 <p>Sandeep's article "Anatomy of a Compiler A Retargetable ANSI-C
672 Compiler", published in Circuit Cellar, issue 121, is now publicly
673 available at:
674 <a href="http://www.circuitcellar.com/SA/Articles2/Dutta-121.pdf">http://www.circuitcellar.com/SA/Articles2/Dutta-121.pdf</a>.</p>
676 <p></p>
677 <hr width="60%" />
678 <p></p>
680 <p><i><b>May 10th, 2007: SDCC 2.7.0 RC1 released.</b></i></p>
681 <p>SDCC 2.7.0 Release Candidate 1 source, doc and binary packages for x86 Linux,
682 32 bit Windows and ppc Mac OS X are available at:
683 <a href="http://sdcc.sourceforge.net/snapshots/sdcc-2.7.0-rc1">http://sdcc.sourceforge.net/snapshots/sdcc-2.7.0-rc1</a>
684 and <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
686 <p></p>
687 <hr width="60%" />
688 <p></p>
690 <p><i><b>July 31th, 2006: Small Device C Compiler 2.6.0 released</b></i></p>
691 <p>A new release of SDCC, the portable optimizing compiler for 8051, DS390, Z80, PIC, and HC08 microprocessors
692 is now available (<a href="http://sdcc.sourceforge.net">http://sdcc.sourceforge.net</a>). Sources, documentation
693 and binaries compiled for x86 Linux, x86 Microsoft Windows and PPC Mac OS X are available.</p>
694 <p>This release improves the compiler's conformance to the C standard. Significant progress was also made on the
695 PIC (both 14- and 16-bit) backends. For the 8051 SDCC has seen the addition of a new memory model, code banking
696 and bit variables. Numerous feature requests and bug fixes are included as well.</p>
697 <p>Since 2.5.0 the ChangeLog has grown by more than 3000 lines so all changes are simply too numerous to name.</p>
698 <p>You can download the this release from:<br />
699 <a href="http://sourceforge.net/project/showfiles.php?group_id=599">http://sourceforge.net/project/showfiles.php?group_id=599</a></p>
701 <p></p>
702 <hr width="60%" />
703 <p></p>
705 <p><i><b>July 28th, 2006: SDCC 2.6.0 RC2 released.</b></i></p>
706 <p>SDCC 2.6.0 Release Candidate 2 packages for x86 Linux, 32 bit Windows,
707 ppc MacOSX and doc packages are available at: <a href="http://sdcc.sourceforge.net/snapshots/sdcc-2.6.0-rc2">http://sdcc.sourceforge.net/snapshots/sdcc-2.6.0-rc1</a>
708 and <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
710 <p></p>
711 <hr width="60%" />
712 <p></p>
714 <p><i><b>July 12th, 2006: SDCC 2.6.0 RC1 released.</b></i></p>
715 <p>SDCC 2.6.0 Release Candidate 1 packages for x86 Linux, 32 bit Windows,
716 ppc MacOSX and doc packages are available at: <a href="http://sdcc.sourceforge.net/snapshots/sdcc-2.6.0-rc1">http://sdcc.sourceforge.net/snapshots/sdcc-2.6.0-rc1</a>
717 and <a href="http://sdcc.sourceforge.net/snap.php">http://sdcc.sourceforge.net/snap.php</a>.</p>
719 <p></p>
720 <hr width="60%" />
721 <p></p>
723 <p><i><b>April 19th, 2006: SDCC migrated from CVS to Subversion version control system.</b></i></p>
725 <p></p>
726 <hr width="60%" />
727 <p></p>
729 <p><i><b>May 12th, 2005: SDCC 2.5.0 released.</b></i></p>
730 <p>Source code and binaries Microsoft Windows and Linux are available from
731 the <a href="http://sourceforge.net/project/showfiles.php?group_id=599">Sourceforge
732 download page</a>.</p>
734 <p></p>
735 <hr width="60%" />
736 <p></p>
738 <p><i><b>February 26th, 2004 - SDCC 2.4.0
739 released</b></i></p>
740 <p>Source code and binaries for Mac OS X, Microsoft
741 Windows, and Linux are available from the <a href="http://sourceforge.net/project/showfiles.php?group_id=599">Sourceforge
742 download page</a>. SDCC has been tested on Mandrake 9.2, Windows
743 98, and Mac OS X with the gcc 3.3 update.</p>
745 <p></p>
746 <hr width="60%" />
747 <p></p>
749 <p><i><b>September 29, 2001 - Version 2.3.0
750 released</b></i></p>
751 <p>Version 2.3.0 is now available. This is the first
752 official release in some time, and includes many bug fixes and
753 significantly improved Z80 support.</p>
755 <p></p>
756 <hr width="60%" />
757 <p></p>
759 <p><i><b>July 11, 2001 - Winbin updates</b></i></p>
760 <p>Recently, Karl Bongers has put together a beta for win32
761 using pre-built cygwin
762 and Borland bins. You can download it <a href="ftp://sdcc.sourceforge.net/pub/sdcc/sdcc-2.2.2-7.11.01-winbin.zip">
763 here</a>.
764 Remember this is a beta build and will change from time to time.
765 Updates
766 will be posted in the <a href="index.php#Download">Download</a>
767 section as they become available. There will be a link in the <a href="index.php#Download">
768 Download</a> section for this and all future builds. Please *DO
769 NOT* email Karl directly
770 with problems. Any questions or fixes you have can be directed to the
771 mailing
772 list, see the link in the <a href="index.php#Support">Support</a>
773 section below.<br />
774 </p>
775 <p>If you run a win32 box I recommend installing Karl's
776 build, if only for the
777 ease of install. If you are a native Linux user, use the CVS tree.
778 Completely
779 remove the old source dir and do a fresh checkout.</p>
780 <p>As always, there is lots going on in CVS. There are a
781 LOT of changes to
782 the documentation. This has been and always will be a short side of
783 OSS,
784 SDCC included. The developers have added a lot of new command line
785 switches
786 and made changes to the old ones. The mcs51 header files have been
787 removed
788 and replaced with a common one. RTFM and then ask questions. The Z80
789 port
790 has been updated as well. Scott has fallen off the face of the earth
792 has not been heard from for a while ;-) We'll hear of his adventures
793 when
794 he returns. Meanwhile the PIC port has remained static. Michael has
795 been
796 working on an automated build for SDCC. If you download the source
797 files,
798 this should help tremendously.</p>
799 <p>There are a few bugs left that are keeping the
800 developers from releasing
801 v2.2.2. This has been said now for a long time now. You just can't rush
802 quality ;-) An <i>official</i> release should happen in
803 the next few months.</p>
804 <p>Special thanks to Johan Knol for keeping the ball
805 rolling while everyone
806 is working their paying jobs.</p>
808 <p></p>
809 <hr width="60%" />
810 <p></p>
812 <p><i><b>April 24, 2001 - Notes</b></i></p>
813 <p>There has been a <i><b>lot</b></i>
814 of updates to v2.2.2 CVS lately. v2.2.1
815 is comparatively old and we recommend you download a binary
816 build from the <a href="http://www.qsl.net/dl9sec/SDCC_OKR.html">OKR</a>
817 or update your sources from CVS. Mitja Kukovec has sent the mailing
818 list
819 some short instructions on installing Cygwin on a Win32 box, the link
821 the text is in the SUPPORT section.</p>
823 <p></p>
824 <hr width="60%" />
825 <p></p>
827 <p><i><b>February 20, 2001 - Pic Port</b></i></p>
828 <p>Scott has been making great strides on the pic port.
829 There are a lot of issues
830 with bringing his work into other branches of SDCC, so you will not see
832 of the features of his port in the avr and mcs51 trees. Scott has been
833 working
834 on generating intermediate 'pcode' that will be used for code
835 optimizations
836 and linker features. This is a major step and there are bound to be
837 problems...
838 on the cutting edge you might get cut every once in a while. This has
840 been implemented in any of the other trees, but if he pulls this off,
842 will see better and more flexible code come out of SDCC. We think it's
843 just
844 a matter of time ;-) Tip-o-the-hat to Scott.</p>
845 <p>Sandeep's daytime job keeps him from doing as much as he
846 would like, but
847 he pops in from time to time with fixes and other contributions.
848 Everyone
849 involved with the project has been very active lately, we are a lot
850 closer
851 to an <i>official</i> 2.2.2 release. As always, the above
852 can be had from
853 cvs. It would be a good idea to do a fresh check-out from cvs rather
854 than
855 an update as a LOT of things have changed. Binary builds from recent
857 sources can be downloaded from the <a href="http://www.qsl.net/dl9sec/SDCC_OKR.html">
858 OKR</a>
859 .</p>
861 <p></p>
862 <hr width="60%" />
863 <p></p>
865 <p><i><b>January 25, 2001 -- SDCC v2.2.2 is still in CVS</b></i></p>
866 <p>Due to numerous additions to SDCC to support the Dallas
867 DS'390, Version 2.2.2
868 has been delayed until more bugs are squashed. Kevin and Johan are
869 working
870 on them all the time ;-) Lots of help from the user and development
871 mailing
872 lists too.</p>
873 <p>Some (if not all) of SDCC users will be glad to know
874 that Scott Dattalo has
875 been porting SDCC to the 14bit versions of the Microchip PIC
876 controller.
877 His port is still in its early stages and needs a lot of work but it
878 does
879 compile programs. His code has been committed to cvs on sourceforge and
881 included when you update your cvs directories.</p>
883 <p></p>
884 <hr width="60%" />
885 <p></p>
887 <p><i><b>SDCC v2.2.1 is out!!! Check it out in
888 the <a href="/index.php#download">download</a> section<br />
889 </b></i></p>
890 <p>This is a milestone release for the development group.<br />
891 New stuff includes:</p>
892 <ul>
893 <li>bug fixes (always bug fixes) </li>
894 <li>better support for the Dallas '390, flat memory model
895 is a lot better than
896 before, not perfect. </li>
897 <li>changes to the assembler </li>
898 <li>better documentation </li>
899 <li>faster compile times </li>
900 <li>and more... </li>
901 </ul>
902 <p>There are more new command line switches to SDCC.. PAY
903 ATTENTION! Read the
904 documentation!</p>
905 <p>There have been additions to the SDCC developer team, we
906 would like to welcome</p>
907 <p>Kevin Vigor and Johan Knol<br />
908 And now... Scott Dattalo<br />
909 </p>
911 <p></p>
912 <hr width="60%" />
913 <p></p>
915 <p><i><b>V2.2.1 is in CVS</b></i></p>
916 <p><i><b>(Sept 17,2000) </b></i>The
917 latest version SDCC is in CVS at the moment. Michael Schmitt has been
918 making releases and posting them to the supporting web sites,
919 specifically the <a href="http://www.qsl.net/dl9sec/SDCC_OKR.htm">OKR</a>
920 . As always... the most recent source code is here on Sourceforge. A
921 lot of work is going into the flat 24bit model and the Dallas '390
922 processor by Kevin Vigor. Kevin has been committing updates and fixes
923 almost on a daily basis. '390 support is looking good. As soon as all
924 the "known" bugs have been squashed, a release will be posted here in
925 the download section.</p>
926 <p>If you are using SDCC on a win32/Cygwin platform, be aware you
927 will also need 'binutils' from the CVS tree.<br />
928 Once logged into CVS do: cvs -z3 co binutils-avr<br />
929 </p>
930 <p>Some users are experiencing problems with win32/Cygwin logging
931 into cvs. Compatibility issues on Cygwin and win32 versions of cvs will
932 be posted soon. I will be contacting Cygnus to see if we can post the
933 known working version of Cygwin here on Sourceforge.</p>
934 <p>AVR support is continuing. Sandeep expects a usable build
935 sometime before the end of October.</p>
937 <p></p>
938 <hr width="60%" />
939 <p></p>
941 <p><i><b>V2.2.0 is now released. </b></i></p>
942 <p><i><b>(Feb 27,2000)</b></i> SDCC
943 v2.2.0 is coming soon. As of February 27, 2000, work on v2.2.0 is
944 moving along but there are still a few compile problems to be worked
945 out. This will be a big step in the development of SDCC as it will now
946 support the Z80 with support for the Atmel AVR right behind it. The
947 next few 2.x releases will be mostly bug fixes (if there are any ;-)
948 and speed improvements.</p>
949 <p>SDCC now has limited support for the Dallas DS80C390
950 microprocessor using the --model-flat24 option. This is a processor
951 from Dallas Semiconductor which starts up in 8051 code compatible mode,
952 but has a new mode which allows direct, non-paging use of up to 4
953 megabytes of code and data space.The TINI board from Dallas uses this
954 processor and includes 512kbytes flash, ram + Ethernet on a small simm
955 stick board for $50.00. See <a href="http://www.ibutton.com">http://www.ibutton.com</a>
956 TINI for details.</p>
957 <p>As of the first week in April, <a href="http://www.systronix.com">Systronics</a> is now
958 shipping backorders for the STEP, STEP+, and the TINI. (Dallas must be
959 selling a ton of the TINI's. I have one of the STEP+TINI kits and love
960 it... I just finished getting an http server up and running on it)</p>
961 <h2>Previous Versions</h2>
962 <p>Released March 27, 2000</p>
963 <ul>
964 <li><a href="files/v2.2.0/sdcc-2.2.0a.tar.gz">SDCC
965 v2.2.0a Source (in gzipped tar format) [2.3M]</a> </li>
966 <li><a href="files/v2.2.0/sdcc-2.2.0a.winbin.tar.gz">SDCC
967 v2.2.0a Win32 Binary (in gzipped tar format) [2.3M]</a> </li>
968 <li><a href="files/v2.2.0/sdccdoc.tar.gz">SDCC
969 v2.2.0a Documentation [160K]</a></li>
970 </ul>
971 <p>Released January 20, 2000</p>
972 <ul>
973 <li><a href="ftp://sdcc.sourceforge.net/sdcc/pub/sdcc-2.1.9Ga.tar.gz">version
974 2.1.9Ga Source (in gzipped tar format)</a> </li>
975 <li><a href="ftp://sdcc.sourceforge.net/sdcc/pub/sdcc-2.1.9Gawinbin.tar.gz">version
976 2.1.9Ga Win32 Binary (in gzipped tar format)</a> </li>
977 </ul>
978 <p>All are gzipped tar archives.</p>
979 <?php include('./footer.php')?>
980 </td>
981 </tr>
982 </tbody>
983 </table>
984 </div>
985 </body>
986 </html>