| nostub.h | Header File

Header File Index

Basic header file for kernel-less programming

This header file will be included automatically by default.h, except if you define the global preprocessor symbol `USE_KERNEL`, or if you explicitly include the doors.h header file before including any other header file.
First, this header file defines a global symbol named `NOSTUB` which is used in other header files to indicate nostub mode. Next, it includes default.h to make sure that the basic macros which TIGCC needs are defined.
It then handles nostub-specific directives such as `OPTIMIZE_ROM_CALLS` (which is useful only for nostub mode) and `USE_FLINE_ROM_CALLS` (which needs special support in nostub mode). If these symbols are defined, some of the definitions from default.h are overwritten.
It contains code for `tigcc.a`, to support `SAVE_SCREEN` and `RETURN_VALUE`. Finally, it contains some rather complicated macros and `asm` statements to put data needed for `RETURN_VALUE` directly into the assembly file.

See also: How to make a nostub program, default.h, doors.h