doc/TININative.txt, doc/macro-sys-design.txt, doc/libdoc.txt,
doc/README.txt, doc/test_suite_spec.lyx:
applaid patch
2446381: Dcoumentation spelling correcitons
thanks to Steven Borley
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@5290
4a8a32a2-be11-0410-ad9d-
d568d2c75423
+2008-12-19 Borut Razem <borut.razem AT siol.net>
+
+ * doc/sdccman.lyx, doc/random-notes.txt, doc/avr/avr_design.txt,
+ doc/TININative.txt, doc/macro-sys-design.txt, doc/libdoc.txt,
+ doc/README.txt, doc/test_suite_spec.lyx:
+ applaid patch 2446381: Dcoumentation spelling correcitons
+ thanks to Steven Borley
+
2008-12-16 Raphael Neider <rneider AT web.de>
* device/include/pic/pic12f629.h,
2008-12-16 Raphael Neider <rneider AT web.de>
* device/include/pic/pic12f629.h,
Roadmap:
COPYING - GPL v2
Roadmap:
COPYING - GPL v2
-as/ - Assembler, derrived from asxxxx
+as/ - Assembler, derived from asxxxx
debugger/
device/ - Device libraries and examples
doc/ - sdcc and target specific documentation
debugger/
device/ - Device libraries and examples
doc/ - sdcc and target specific documentation
-link/ - Linker, also derrived from asxxxx
+link/ - Linker, also derived from asxxxx
sim/ - Simulator (mcs51 only)
src/ - Source to the C compiler and targets
support/ - Libraries and apps that may not be provided by your system.
sim/ - Simulator (mcs51 only)
src/ - Source to the C compiler and targets
support/ - Libraries and apps that may not be provided by your system.
* Pascal Felber
Some of the Z80 related files are borrowed from the Gameboy
Development Kit (GBDK).
* Pascal Felber
Some of the Z80 related files are borrowed from the Gameboy
Development Kit (GBDK).
-* The GCC developement team http://gcc.gnu.org/
+* The GCC development team http://gcc.gnu.org/
The basis of sdcpp preprocessor
The basis of sdcpp preprocessor
time only the following functions have been mapped (more will be mapped in the future). Some
Native API calls return multiple values, I haven't found a good way to handle this yet, in most
cases these return a HANDLE and a pointer to ABSOLUTE memory in DPTR, in such cases SDCC will
time only the following functions have been mapped (more will be mapped in the future). Some
Native API calls return multiple values, I haven't found a good way to handle this yet, in most
cases these return a HANDLE and a pointer to ABSOLUTE memory in DPTR, in such cases SDCC will
-return ONLY the HANDLE and igonre the POINTER value. The HANDLE can then be used with MM_Deref to
+return ONLY the HANDLE and ignore the POINTER value. The HANDLE can then be used with MM_Deref to
obtain the POINTER value again (I hope my assumption is correct here).
SDCC Prototype Native API
obtain the POINTER value again (I hope my assumption is correct here).
SDCC Prototype Native API
IV) Register Usage
------------------
IV) Register Usage
------------------
-R0-R7 - Paramter passing & return value (differs from IAR I don't
+R0-R7 - Parameter passing & return value (differs from IAR I don't
like IAR's usage of R16-R23, specially since R0-R1 has
to be kept free anyway for divide & multiply operations)
R8-R25 - General purpose registers for local variables.
like IAR's usage of R16-R23, specially since R0-R1 has
to be kept free anyway for divide & multiply operations)
R8-R25 - General purpose registers for local variables.
------------------------------------
Registers R0-R7 (eight) registers will be used for parameter passing.
Unlike the 8051 port the AVR port will pass the first eight bytes of
------------------------------------
Registers R0-R7 (eight) registers will be used for parameter passing.
Unlike the 8051 port the AVR port will pass the first eight bytes of
-parameters in a registers (8051 passes only yhe first parameter in
-registers), the exception being.. part of a paramter will not be put
+parameters in a registers (8051 passes only the first parameter in
+registers), the exception being.. part of a parameter will not be put
strchr - string manipulation - #include <string.h> - all ports
char *strchr (char * string, char ch);
strchr - string manipulation - #include <string.h> - all ports
char *strchr (char * string, char ch);
- Return a pointer to the first occurance of the character ch is string
+ Return a pointer to the first occurrence of the character ch is string
or a NULL pointer if not found.
strrchr - string manipulation - #include <string.h> - all ports
char *strrchr(char * string, char ch);
or a NULL pointer if not found.
strrchr - string manipulation - #include <string.h> - all ports
char *strrchr(char * string, char ch);
- Return a pointer to the last occurance of the character ch is string
+ Return a pointer to the last occurrence of the character ch is string
or a NULL pointer if not found.
strspn - string manipulation - #include <string.h> - all ports
or a NULL pointer if not found.
strspn - string manipulation - #include <string.h> - all ports
simple level from one backend, such as the gbz80 and z80.
3. Provide a way to dynamically build a command line for any spawned
processes.
simple level from one backend, such as the gbz80 and z80.
3. Provide a way to dynamically build a command line for any spawned
processes.
-4. Provide a way for the backend to convientely access volatile global data
+4. Provide a way for the backend to conveniently access volatile global data
such as the source file name or current function name. This is mainly
to get around assembler limitations.
such as the source file name or current function name. This is mainly
to get around assembler limitations.
- A basic block. I cant remeber the conditions, but a basic block
+ A basic block. I can't remember the conditions, but a basic block
is one that is easy to optimise and analyse. I guess this means that it has
a nice set of assignments and a reasonably straight flow.
iCode
is one that is easy to optimise and analyse. I guess this means that it has
a nice set of assignments and a reasonably straight flow.
iCode
Remove any unneded iTemps that are just used in assignments.
Mark anything that can be rematerialised as rematerialisable.
There is no way I spelt that correctly. Something is rematerialisable
Remove any unneded iTemps that are just used in assignments.
Mark anything that can be rematerialised as rematerialisable.
There is no way I spelt that correctly. Something is rematerialisable
- if it can be generated easily and is constant, and hence dosnt need
+ if it can be generated easily and is constant, and hence dosn't need
to be cached away in an iTemp. An example is the address of something.
to be cached away in an iTemp. An example is the address of something.
- Packs iTemps that are only used once into normally unavailble registers.
+ Packs iTemps that are only used once into normally unavailable registers.
Register packing removes unneeded iTemps.
Register packing removes unneeded iTemps.
-2. Determine what number and type of regsiters are needed for each
+2. Determine what number and type of registers are needed for each
- If the iTemp lives for zero time, dont bother assigning
+ If the iTemp lives for zero time, don't bother assigning
If its not an iTemp, skip for now.
If its a conditional (determined in the register packing), skip as it will
be stored in carry.
If its not an iTemp, skip for now.
If its a conditional (determined in the register packing), skip as it will
be stored in carry.
iCode when this icode is allocated.
->seq - sequence number of the iCode given in
iCode when this icode is allocated.
->seq - sequence number of the iCode given in
- acesnding order of execution.
+ ascending order of execution.
is sizeof(char) == 1. It's either a SPECIFIER or a DECLARATOR - seems that
were the wrong way around. This is set in SDCCsymt.c, SDCCval.c, and the
yacc file. SDCCsymt.c and SDCCval.c havnt really changed in 5 days - must
is sizeof(char) == 1. It's either a SPECIFIER or a DECLARATOR - seems that
were the wrong way around. This is set in SDCCsymt.c, SDCCval.c, and the
yacc file. SDCCsymt.c and SDCCval.c havnt really changed in 5 days - must
-be SDCC.y. Nope, no changes. diff against 5 days ago shows only intersting
+be SDCC.y. Nope, no changes. diff against 5 days ago shows only interesting
changes are in SDCCicode. Same with -14 days.
Michael
changes are in SDCCicode. Same with -14 days.
Michael
\end_layout
\begin_layout Standard
\end_layout
\begin_layout Standard
-into seperate sections/chapters/appendices (it is hard to document PIC or
+into separate sections/chapters/appendices (it is hard to document PIC or
file as well.
The library files created with sdcclib are plain text files, so they can
be viewed with a text editor.
file as well.
The library files created with sdcclib are plain text files, so they can
be viewed with a text editor.
- It is not recomended to modify a library file created with sdcclib using
- a text editor, as there are file indexes numbers located accross the file
+ It is not recommended to modify a library file created with sdcclib using
+ a text editor, as there are file indexes numbers located across the file
used by the linker to quickly locate the required module to link.
Once a .rel file (as well as a .adb file) is added to a library using sdcclib,
it can be safely deleted, since all the information required for linking
used by the linker to quickly locate the required module to link.
Once a .rel file (as well as a .adb file) is added to a library using sdcclib,
it can be safely deleted, since all the information required for linking
- is specified for a local variable, it will NOT be overlayed.
+ is specified for a local variable, it will NOT be overlaid.
\end_layout
\begin_layout Standard
\end_layout
\begin_layout Standard
- will NOT be overlayed since these are implemented using external functions,
+ will NOT be overlaid since these are implemented using external functions,
from an interrupt service routine.
The #pragma\InsetSpace ~
nooverlay ensures that the parameters and local variables for
from an interrupt service routine.
The #pragma\InsetSpace ~
nooverlay ensures that the parameters and local variables for
- the function are NOT overlayed.
+ the function are NOT overlaid.
\begin_inset VSpace bigskip
\end_inset
\begin_inset VSpace bigskip
\end_inset
\end_layout
\begin_layout Standard
\end_layout
\begin_layout Standard
-On other architectures which have seperate opcodes for enabling and disabling
+On other architectures which have separate opcodes for enabling and disabling
interrupts you might want to make use of defines with inline assembly
\begin_inset LatexCommand index
name "Assembler routines"
interrupts you might want to make use of defines with inline assembly
\begin_inset LatexCommand index
name "Assembler routines"
crtstart.asm
\emph default
crtstart.asm
\emph default
- and when linking your project explicitely specify
+ and when linking your project explicitly specify
\emph on
crtstart.rel
\emph default
\emph on
crtstart.rel
\emph default
manually, or when there is a secondary, manually defined interrupt vector
table (e.g.
for the autovector feature of the Cypress EZ-USB FX2).
manually, or when there is a secondary, manually defined interrupt vector
table (e.g.
for the autovector feature of the Cypress EZ-USB FX2).
- More elegantly this can be achieved by obmitting the optional interrupt
+ More elegantly this can be achieved by omitting the optional interrupt
number after the interrupt keyword, see section
\begin_inset LatexCommand ref
reference "sub:Interrupt-Service-Routines"
number after the interrupt keyword, see section
\begin_inset LatexCommand ref
reference "sub:Interrupt-Service-Routines"
(+ | -) - switch _asm _endasm block preprocessing on / off.
Default is on.
(+ | -) - switch _asm _endasm block preprocessing on / off.
Default is on.
- You use this prama to define multilines of assembly code.
- This will prevent the preprocessor from changing the formating required
+ You use this pragma to define multilines of assembly code.
+ This will prevent the preprocessor from changing the formatting required
by assembly code.
Below is an example on how to use this pragma.
\end_layout
by assembly code.
Below is an example on how to use this pragma.
\end_layout
\begin_layout Standard
Functions that need to be in a switched bank must be put in a named segment.
\begin_layout Standard
Functions that need to be in a switched bank must be put in a named segment.
- The name can be mostly anything upto eight characters (e.g.
+ The name can be mostly anything up to eight characters (e.g.
BANK1).
To do this you either use -
\begin_inset ERT
BANK1).
To do this you either use -
\begin_inset ERT
\newline
Due to the way sdcc handles functions, place called functions prior
to calling functions in the file wherever possible: Otherwise sdcc will
\newline
Due to the way sdcc handles functions, place called functions prior
to calling functions in the file wherever possible: Otherwise sdcc will
- insert unneccessary pagesel directives around the call, believing that
+ insert unnecessary pagesel directives around the call, believing that
the called function is externally defined.
\end_layout
the called function is externally defined.
\end_layout
device/lib/pic/Makefile
\family default
to reflect your device.
device/lib/pic/Makefile
\family default
to reflect your device.
- This might even improve performance for smaller devices as unneccesary
+ This might even improve performance for smaller devices as unnecessary
BANKSELs might be removed.
\end_layout
BANKSELs might be removed.
\end_layout
--pstack-model=[model] Used in conjuction with the command above.
+-pstack-model=[model] Used in conjunction with the command above.
Defines the stack model to be used, valid stack models are:
\end_layout
Defines the stack model to be used, valid stack models are:
\end_layout
\end_layout
\begin_layout Subsection
\end_layout
\begin_layout Subsection
\end_layout
\begin_layout Standard
\end_layout
\begin_layout Standard
-There is a number of enviromental variables that can be used when running
+There is a number of environmental variables that can be used when running
SDCC to enable certain optimizations or force a specific program behaviour.
these variables are primarily for debugging purposes so they can be enabled/dis
abled at will.
SDCC to enable certain optimizations or force a specific program behaviour.
these variables are primarily for debugging purposes so they can be enabled/dis
abled at will.
\begin_layout Standard
\noindent
\begin_layout Standard
\noindent
-This feature allows for linking with specific libraries withoug having to
+This feature allows for linking with specific libraries without having to
explicit name them in the command line.
Note that the
\noun on
explicit name them in the command line.
Note that the
\noun on
\emph on
Interrupt Vector Address
\emph default
\emph on
Interrupt Vector Address
\emph default
- which points at the genetated ISR.
+ which points at the generated ISR.
This single GOTO instruction is part of an automatically generated
\emph on
interrupt entry point
This single GOTO instruction is part of an automatically generated
\emph on
interrupt entry point
Address of the specific interrupt.
This is not a problem for the LOW priority interrupts, but it is a problem
for the RESET and the HIGH priority interrupts because code may be written
Address of the specific interrupt.
This is not a problem for the LOW priority interrupts, but it is a problem
for the RESET and the HIGH priority interrupts because code may be written
- at the next interrupt's vector address and cause undeterminate program
+ at the next interrupt's vector address and cause indeterminate program
behaviour if that interrupt is raised.
\begin_inset Foot
status open
behaviour if that interrupt is raised.
\begin_inset Foot
status open
buf
\emph default
should normally be a data pointer where the resulting string will be placed.
buf
\emph default
should normally be a data pointer where the resulting string will be placed.
- No range checking is done so the user should allocate the necessery buffer.
+ No range checking is done so the user should allocate the necessary buffer.
For fprintf and vfprintf
\emph on
fp
For fprintf and vfprintf
\emph on
fp
\begin_inset Text
\begin_layout Standard
\begin_inset Text
\begin_layout Standard
status open
\begin_layout Standard
status open
\begin_layout Standard
-Check that the double quotes or an apostroph within the command line survive
+Check that the double quotes or an apostrophe within the command line survive
- Previously the apostrophs got slanted in the PDF output so a cut and paste
+ Previously the apostrophes got slanted in the PDF output so a cut and paste
did not work.
\end_layout
did not work.
\end_layout
\end_layout
\begin_layout Itemize
\end_layout
\begin_layout Itemize
-check that the compilers are not told to supress warnings.
+check that the compilers are not told to suppress warnings.
\end_layout
\begin_layout Itemize
\end_layout
\begin_layout Itemize
\end_layout
\begin_layout Enumerate
\end_layout
\begin_layout Enumerate
-give back to the public as you are probably at least partially publically
+give back to the public as you are probably at least partially publicly
funded
\end_layout
\begin_layout Enumerate
funded
\end_layout
\begin_layout Enumerate
-give students a chance to publically prove their skills and to possibly
+give students a chance to publicly prove their skills and to possibly
see a world wide impact
\end_layout
see a world wide impact
\end_layout
\end_layout
\begin_layout Standard
\end_layout
\begin_layout Standard
-The latest publically available version of the standard
+The latest publicly available version of the standard
\emph on
ISO/IEC 9899 - Programming languages - C
\emph default
\emph on
ISO/IEC 9899 - Programming languages - C
\emph default
\end_layout
\begin_layout Subsection
\end_layout
\begin_layout Subsection
\end_layout
\begin_layout Standard
\end_layout
\begin_layout Standard