TIGCC Library Header Files

GCC4TI uses a special library of header files, due to a very specific method of calling TIOS functions. This library is written in such a way that it can be used for producing both "nostub" programs (i.e. programs which does not need any kernel) or kernel-based programs. The user may select whether a "nostub" or "Doors" (after the name of a very old, long-superseded kernel) program will be created. All functions in this library are based only on legal TIOS calls (i.e. calls which have an entry in the TIOS jump table), so they will probably work with any version of the TIOS. And, in this release of the library a lot of "standard" functions defined in ANSI C are also implemented, so this release is highly "ANSI compatible" (in addition to lot of TI-specific functions).

Functions and data types are grouped in different header files, depending on their purpose (note that some functions and data types are defined in more than one header file). Click on a header file name for the description of all functions and data types defined in this header file.

alloc.hRoutines for dynamic memory allocation
args.hRoutines for retrieving arguments passed to the program
asmtypes.hCommon type definitions known to ASM programmers
assert.hAssert routine for debugging purposes
bascmd.hRoutines for executing TI-Basic commands
basfunc.hRoutines for executing TI-Basic functions
basop.hRoutines for executing TI-Basic operators
cert.hRoutines for accessing certificates and other memory-mapped files
compat.hVarious calc-dependent and AMS-dependent pseudo-constants
ctype.hRoutines for checking and changing character types
default.hDefault header file which is always included
dialogs.hRoutines for creating dialogs
dll.hDeclarations for creating and using nostub libraries
doors.hBasic header file for kernel-mode programming
error.hRoutines for error handling
estack.hRoutines for symbolic manipulation and expression handling
events.hRoutines for event-driven programming and for mode settings
files.hRoutines for accessing files (needs AMS 2.00 or later)
flash.hLow-level routines for working with the Flash ROM
flashapp.hRoutines, variables and structures related to FlashApps.
float.hVarious platform-dependent floating point constants proposed by ANSI
gdraw.hRoutines for graph screen drawing
graph.hCommon (non-windowed) graphic routines
graphing.hRoutines, variables and structures related to graphing in general.
gray.hRoutines for grayscale graphics
homescr.hHome Screen manipulation routines
intr.hRoutines for creating interrupt handlers
inttypes.hC99 standard header file containing string constants usable in format arguments to printf-type and scanf-type functions, for printing and scanning the portable integer types defined in stdint.h.
iso646.hISO C99 definitions of alternative spellings for operators
kbd.hKeyboard handling routines
limits.hVarious platform-dependent constants proposed by ANSI
link.hCalc/calc and calc/computer link interface routines
math.hANSI-compatible routines for floating point arithmetic
mem.hRoutines for manipulation of memory blocks
menus.hRoutines for creating popup and toolbar menus
nostub.hBasic header file for kernel-less programming
peekpoke.hRoutines for easier access to the memory and to I/O ports
printf.hPrinting routines (now deprecated, use stdio.h instead)
rsa.hRoutines for large number arithmetic, message digesting and RSA encryption
setjmp.hANSI-compatible routines for non-local jumps
sprites.hSimple sprite routines
statline.hRoutines for manipulation of the status line
stats.hRoutines for working with statistics.
stdarg.hANSI routines for creating functions with variable numbers of arguments
stdbool.hISO C99 definitions of boolean type and values
stddef.hANSI definitions of default macros and types
stdint.hC99-compatible integer types with a fixed size in bits
stdio.hANSI-compatible file and TTY input/output routines
stdlib.hSome useful routines proposed by ANSI (sorting, searching, etc.)
string.hANSI-compatible string manipulation routines
system.hSystem routines (for accessing system timers, queues, etc.)
textedit.hRoutines to access the text editor
tigcclib.hIncludes all other header files
timath.hRoutines for floating point arithmetic
unknown.hUnknown routines
values.hVarious platform-dependent constants
vat.hRoutines for accessing the variable allocation table
version.hConstants describing the version number of GCC4TI
wingraph.hRoutines for windowed graphics

Note: This library is not compatible with the romcalls.h header file which comes with extremely old versions of the TIGCC compiler. Include the tigcclib.h header file instead. Also, note that this library depends strongly on GNU C extensions, so it is not portable to other compilers. That's why this library cannot be used for compiling programs using the '-ansi' command switch, which disables the use of GNU extensions and allows only ANSI-proposed features (except if each extension is marked as such).

Return to the main index