Syscalls: Difference between revisions
Jump to navigation
Jump to search
m (→Nucleus) |
(→Nucleus: NU_Current_Dir's drive) |
||
Line 106: | Line 106: | ||
==[http://en.wikipedia.org/wiki/Nucleus_RTOS Nucleus]== | ==[http://en.wikipedia.org/wiki/Nucleus_RTOS Nucleus]== | ||
*<tt>int TCT_Local_Control_Interrupts(int mask)</tt>: sets the interrupt mask. Returns the previous mask. | *<tt>int TCT_Local_Control_Interrupts(int mask)</tt>: sets the interrupt mask. Returns the previous mask. | ||
*<tt>int NU_Current_Dir(const char *drive, char *path)</tt>: fills in <tt>path</tt> with the full path name of the current working directory. Returns 0 on success | *<tt>int NU_Current_Dir(const char *drive, char *path)</tt>: fills in <tt>path</tt> with the full path name of the current working directory. Use "A:" as ''drive''. Returns 0 on success. | ||
*<tt>int NU_Get_First(struct dstat *statobj, const char * pattern)</tt>: given a pattern which contains both a path specifier and a search pattern, fills in the structure at <tt>statobj</tt> with information about the file and sets up internal parts of <tt>statobj</tt> to supply appropriate information for calls to <tt>NU_Get_Next</tt>. Returns 0 if a match was not found. | *<tt>int NU_Get_First(struct dstat *statobj, const char * pattern)</tt>: given a pattern which contains both a path specifier and a search pattern, fills in the structure at <tt>statobj</tt> with information about the file and sets up internal parts of <tt>statobj</tt> to supply appropriate information for calls to <tt>NU_Get_Next</tt>. Returns 0 if a match was not found. | ||
*<tt>int NU_Get_Next(struct dstat *statobj)</tt>: given a pointer to a <tt>DSTAT</tt> structure that has been set up by a call to <tt>NU_Get_First()</tt>, searches for the next match of the original pattern in the original path. Returns 0 if found and updates <tt>statobj</tt> for subsequent calls to <tt>NU_Get_Next</tt>. | *<tt>int NU_Get_Next(struct dstat *statobj)</tt>: given a pointer to a <tt>DSTAT</tt> structure that has been set up by a call to <tt>NU_Get_First()</tt>, searches for the next match of the original pattern in the original path. Returns 0 if found and updates <tt>statobj</tt> for subsequent calls to <tt>NU_Get_Next</tt>. |
Revision as of 21:43, 1 February 2012
Syscalls are OS functions exposed by Ndless to C and assembly programs. This article describes the syscalls currently available with Ndless 1.7.
Your help is needed to make this list grow to a full-fledged library. Try to find new syscalls, test them and share them for integration in Ndless.
Functions marked with (*) are available only if the program is linked against Newlib, i.e. when the nspire-ld switch -nostdlib is not used.
Functions crossed-out are deprecated and shouldn't be used anymore.
C standard library
ctype.h
errno.h
stdarg.h
stdio.h
- fclose
- feof
- ferror
- fflush
- fgetc
- fgets
- fopen
- freopen
- fprintf
- fputs
- fread
- fseek
- ftell (since v3.1)
- fwrite
- puts
- printf
- remove
- rename
- rewind
- stderr
- stdin
- stdout
- sprintf
- ungetc
- vsprintf
stdlib.h
string.h
- memcpy
- memcmp
- memmove
- memrev
- memset
- strcat
- strcoll
- strchr
- strcmp
- strcpy
- strcspn
- strerror
- strlen
- strncat
- strncmp
- strncpy
- strpbrk
- strrchr
- strspn
- strstr
C POSIX library
sys/stat.h
unistd.h
Nucleus
- int TCT_Local_Control_Interrupts(int mask): sets the interrupt mask. Returns the previous mask.
- int NU_Current_Dir(const char *drive, char *path): fills in path with the full path name of the current working directory. Use "A:" as drive. Returns 0 on success.
- int NU_Get_First(struct dstat *statobj, const char * pattern): given a pattern which contains both a path specifier and a search pattern, fills in the structure at statobj with information about the file and sets up internal parts of statobj to supply appropriate information for calls to NU_Get_Next. Returns 0 if a match was not found.
- int NU_Get_Next(struct dstat *statobj): given a pointer to a DSTAT structure that has been set up by a call to NU_Get_First(), searches for the next match of the original pattern in the original path. Returns 0 if found and updates statobj for subsequent calls to NU_Get_Next.
- void NU_Done(struct dstat *statobj): given a pointer to a DSTAT structure that has been set up by a call to NU_Get_First(), frees internal elements used by the statobj.
- NU_Set_Current_Dir(const char *name): Set the current working directory on the default drive.
TI-Nspire GUI
- void ascii2utf16(void *buf, const char *str, int max_size): converts the ASCII string str to the UTF-8 string buf of size max_size.
void show_dialog_box2(int winid, const char *utf8_title, const char *utf8_msg): displays a dialog box of title utf8_title containing utf8_msg. utf8_title and utf8_msg are C strings converted with ascii2utf16(). winid must be 0 (deprecated since Ndless 2.0 and replaced with libndls's show_msgbox).
Miscellaneous
- int read_unaligned_longword(void *ptr)
- int read_unaligned_word(void *ptr)