TIGCC 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 "Doors"
(kernel-based) programs. The user may select whether a "nostub" or "Doors" 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.h | Routines for dynamic memory allocation | |
args.h | Routines for retrieving arguments passed to the program | |
asmtypes.h | Common type definitions known to ASM programmers | |
assert.h | Assert routine for debugging purposes | |
bascmd.h | Routines for executing TI-Basic commands | |
basfunc.h | Routines for executing TI-Basic functions | |
basop.h | Routines for executing TI-Basic operators | |
cert.h | Routines for accessing certificates and other memory-mapped files | |
compat.h | Various calc-dependent and AMS-dependent pseudo-constants | |
ctype.h | Routines for checking and changing character types | |
default.h | Default header file which is always included | |
dialogs.h | Routines for creating dialogs | |
dll.h | Declarations for creating and using nostub libraries | |
doors.h | Basic header file for kernel-mode programming | |
error.h | Routines for error handling | |
estack.h | Routines for symbolic manipulation and expression handling | |
events.h | Routines for event-driven programming and for mode settings | |
files.h | Routines for accessing files (needs AMS 2.00 or later) | |
flash.h | Low-level routines for working with the Flash ROM | |
float.h | Various platform-dependent floating point constants proposed by ANSI | |
gdraw.h | Routines for graph screen drawing | |
graph.h | Common (non-windowed) graphic routines | |
graphing.h | Routines, variables and structures related to graphing in general. | |
gray.h | Routines for grayscale graphics | |
homescr.h | Home Screen manipulation routines | |
intr.h | Routines for creating interrupt handlers | |
kbd.h | Keyboard handling routines | |
limits.h | Various platform-dependent constants proposed by ANSI | |
link.h | Calc/calc and calc/computer link interface routines | |
math.h | ANSI-compatible routines for floating point arithmetic | |
mem.h | Routines for manipulation of memory blocks | |
menus.h | Routines for creating popup and toolbar menus | |
nostub.h | Basic header file for kernel-less programming | |
peekpoke.h | Routines for easier access to the memory and to I/O ports | |
printf.h | Printing routines (now deprecated, use stdio.h instead) | |
rsa.h | Routines for large number arithmetic, message digesting and RSA encryption | |
setjmp.h | ANSI-compatible routines for non-local jumps | |
sprites.h | Simple sprite routines | |
statline.h | Routines for manipulation of the status line | |
stdarg.h | ANSI routines for creating functions with variable numbers of arguments | |
stddef.h | ANSI definitions of default macros and types | |
stdint.h | C99-compatible integer types with a fixed size in bits | |
stdio.h | ANSI-compatible file and TTY input/output routines | |
stdlib.h | Some useful routines proposed by ANSI (sorting, searching, etc.) | |
string.h | ANSI-compatible string manipulation routines | |
system.h | System routines (for accessing system timers, queues, etc.) | |
textedit.h | Routines to access the text editor | |
tigcclib.h | Includes all other header files | |
timath.h | Routines for floating point arithmetic | |
unknown.h | Unknown routines | |
values.h | Various platform-dependent constants | |
vat.h | Routines for accessing the variable allocation table | |
version.h | Constants describing the version number of TIGCC | |
wingraph.h | Routines for windowed graphics |
Note: This library is not compatible with the romcalls.h
header file which comes with very 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 can not 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 extensions is marked as such).