-Not finished - 19 Jan 2002 - checkpoint (Steve Kenton)
+Not finished - 20 Jan 2002 - checkpoint (Steve Kenton)
This is a sorted (ignoring leading '_') list of the SDCC library.
Sources are in ~sdcc/device/lib/*.c and ~sdcc/device/include/*.h.
Internal function calls are generated by the compiler to implement
IEEE floating point, etc. They are not normally called directly.
-ctype.h
-/*-------------------------------------------------------------------------
-
isalnum - character classification - #include <ctype.h> - all ports
char isalnum (unsigned char c); MACRO
Return true if c is an ASCII letter or digit
Return true if c is an ASCII letter
'a-z','A-Z' otherwise return false.
+isascii - character classification - #include <ctype.h> - missing
+ char isascii (unsigned char c);
+ Return true if c is an 7-bit ASCII character
+ 0x00-0x7F otherwise return false.
+
iscntrl - character classification - #include <ctype.h> - all ports
char iscntrl (unsigned char c);
Return true if c is an ASCII control character
toascii - character classification - #include <ctype.h> - all ports
char toascii(unsigned char c); MACRO
- Convert c from 8-bit to 7-bit ASCII.
+ Convert c from 8-bit value to 7-bit ASCII.
tolower - character classification - #include <ctype.h> - all ports
char _tolower(unsigned char c); MACRO
char toupper(unsigned char c); MACRO
Convert c from lower case to upper case.
-float.h
-/*-------------------------------------------------------------------------
-
__uchar2fs - IEEE single precision math - #include <float.h> - ??? ports
float __uchar2fs (unsigned char uc); INTERNAL
Convert an unsigned char to float.
char __fsgt (float a1, float a2); INTERNAL ??? typo in float.h ???
Compare two floats gt.
-malloc.h
-/*-------------------------------------------------------------------------
malloc - memory allocation - #include <malloc.h> - ??? ports
void *malloc (unsigned int);
void xdata * malloc (unsigned int );
void init_dynamic_memory (MEMHEADER xdata * , unsigned int );
Initialize the memory allocation system.
-math.h
-/*-------------------------------------------------------------------------
-
-/* Trigonometric functions */
sincosf - ANSI C math - #include <math.h> - all ports
float sincosf(const float x, const int iscos); INTERNAL
Compute the sine or cosine of x.
float atan2f (const float x, const float y); ??? x,y reversed ???
Compute the arc tangent of (x/y);
-/* Hyperbolic functions */
sinhf - ANSI C math - #include <math.h> - all ports
float sinhf (const float x);
Compute the hyperbolic sine of x.
float tanhf (const float x);
Compute the hyperbolic tangent of x.
-/* Exponential, logarithmic and power functions */
expf - ANSI C math - #include <math.h> - all ports
float expf (const float x);
Compute e to the x power.
float sqrtf (const float x);
Compute the square root of x.
-/* Nearest integer, absolute value, and remainder functions */
fabsf - ANSI C math - #include <math.h> - all ports
float fabsf (const float x);
Compute the absolute value of x.
float modff (float x, float * y);
Split x in to integer and fractional parts.
-setjmp.h
-/*-------------------------------------------------------------------------
setjmp - long jump - #include <setjmp.h> - ??? ports
int setjmp (unsigned char * jmpb);
Save the return address and sufficient task state
/*-------------------------------------------------------------------------
strcpy - string manipulation - #include <string.h> - all ports
char *strcpy (char * d, char * s);
- Copy the source string s to the destination string d.
+ Copy the nul terminated source string s to the destination d.
strncpy - string manipulation - #include <string.h> - all ports
char *strncpy(char * d, char * s, int n);
+ Copy the nul terminated source string s to the destination d but
+ do not copy more than n characters even if this causes d to not
+ be nul terminated.
strcat - string manipulation - #include <string.h> - all ports
char *strcat (char * front, char * back);
+ Copy the nul terminated string back to the end of the nul terminated
+ string front, overwriting the nul and creating a concatenation of
+ the two with a single trailing nul terminator.
strncat - string manipulation - #include <string.h> - all ports
char *strncat(char * front, char * back, int n);
+ Copy the nul terminated string back to the end of the nul terminated
+ string front, overwriting the nul and creating a concatenation of
+ the two, but do not copy more than n characters, even if this causes
+ the result to no be nul terminated.
strcmp - string manipulation - #include <string.h> - all ports
int strcmp (char * asrc, char * adst);
+ Compare two nul terminated strings asrc and adst. Return a value < 0 if asrc
+ is less than adst. Return a value > 0 if asrc is greater than adst. Otherwise
+ return 0.
strncmp - string manipulation - #include <string.h> - all ports
int strncmp(char * asrc, char * adst, int n);
+ Compare two nul terminated strings asrc and adst but do not check more than n
+ characters. Return a value < 0 if asrc is less than adst. Return a value > 0
+ if asrc is greater than adst. Otherwise return 0.
strchr - string manipulation - #include <string.h> - all ports
- char *strchr (char *, char );
+ char *strchr (char * string, char ch);
+ Return a pointer to the first occurance of the character ch is string
+ or a NULL pointer if not found.
strrchr - string manipulation - #include <string.h> - all ports
- char *strrchr(char *, char );
+ char *strrchr(char * string, char ch);
+ Return a pointer to the last occurance of the character ch is string
+ or a NULL pointer if not found.
strspn - string manipulation - #include <string.h> - all ports
int strspn (char *, char *);