\begin_layout Date
\size normal
-SDCC 2.8.1
+SDCC 2.8.3
\size footnotesize
\newline
In previous versions, both forms would have toggled the bit.
\end_layout
+\begin_layout Itemize
+in older versions, the preprocessor was always called with -std=c99 regardless
+ of the --std-xxx setting.
+ This is no longer true, and can cause compilation failures on code built
+ with --std-c89 but using c99 preprocessor features, such as one-line (//)
+ comments
+\end_layout
+
\begin_layout Standard
\emph on
\end_inset
+
\begin_inset LatexCommand \label{lyx:-Wl option}
\end_inset
\end_inset
+
\begin_inset LatexCommand \label{lyx:-codeseg}
\end_inset
\end_inset
+\end_layout
+
+\begin_layout Section
+Other SDCC language extensions
+\begin_inset LatexCommand \index{Other SDCC language extensions}
+
+\end_inset
+
+
+\end_layout
+
+\begin_layout Subsection
+Binary constants
+\end_layout
+
+\begin_layout Standard
+SDCC supports the use of binary constants, such as 0b01100010.
+ This feature is only enabled when the compiler is invoked using --std-sdccxx.
+\end_layout
+
+\begin_layout Standard
+\begin_inset VSpace bigskip
+\end_inset
+
+
\end_layout
\begin_layout Section
\end_layout
\begin_layout Standard
-18F: 2220, 2221, 2320, 2321, 2331, 2431, 2455, 24j10, 2525, 2550, 25j10,
- 2620
+18F: 2220, 2221, 2320, 2321, 2331, 2420, 2423, 2431, 2455, 2480, 24j10
+\end_layout
+
+\begin_layout Standard
+18F: 2520, 2523, 2525, 2550, 2580, 2585, 25j10, 2620, 2680, 2682, 2685
\end_layout
\begin_layout Standard
-18F: 4220, 4221, 4320, 4321, 4331, 4431, 4455, 44j10, 4520, 4525, 4550,
- 45j10, 4620
+18F: 4220, 4221, 4320, 4321, 4331, 4420, 4423, 4431, 4455, 4480, 44j10
\end_layout
\begin_layout Standard
-18F: 6520, 6620, 6680, 6720
+18F: 4520, 4523, 4525, 4550, 4580, 4585, 45j10, 4620, 4680, 4682, 4685
\end_layout
\begin_layout Standard
-18F: 8520, 8620, 8680, 8720
+18F: 6520, 6585, 6620, 6680, 6720
+\end_layout
+
+\begin_layout Standard
+18F: 8520, 8585, 8620, 8680, 8720
+\end_layout
+
+\begin_layout Standard
+A list of supported devices is also available via '
+\family typewriter
+sdcc -mpic16 -plist
+\family default
+'.
\end_layout
\begin_layout Subsection
\end_inset
--optimize-goto Try to use (conditional) BRA instead of GOTO.
+-no-optimize-goto Do not use (conditional) BRA instead of GOTO.
\end_layout
\begin_layout Description
Note: No 18f prefix here!
\end_layout
+\begin_layout Enumerate
+Set up the I/O library by doing
+\series bold
+one
+\series default
+ of the following:
+\end_layout
+
+\begin_deeper
\begin_layout Enumerate
Adjust
\family typewriter
.
\end_layout
+\begin_layout Enumerate
+Adjust
+\family typewriter
+/path/to/sdcc/device/include/pic16/adc.h
+\newline
+
+\family default
+Add the new devices to the correct ADC style class.
+\end_layout
+
+\end_deeper
\begin_layout Enumerate
Edit
\family typewriter
\begin_layout Enumerate
Edit
\family typewriter
-/path/to/sdcc/src/pic16/devices.inc
+/path/to/sdcc/device/include/pic16devices.txt
+\newline
+
\family default
-.
- Copy and modify an existing entry and insert it at the correct place (keep
- the file sorted).
- The file is hardly documented, look at the entries for the 18f2221...
+Copy and modify an existing entry or create a new one and insert it at the
+ correct place (keep the file sorted).
\end_layout
\begin_layout Enumerate
-Recompile SDCC, including the pic16 libraries.
+Recompile the pic16 libraries.
\end_layout
\begin_layout Subsection