| Overcoming AMS Dependencies

Previous | Making TIGCC Programs |

Many AMS dependencies result from the unavailability of specific ROM calls in the operating system. The AMS maintains a table of pointers of functions, the jump table (see __jmp_tbl in default.h). In early AMS releases this jump table was very incomplete, and it even changed at some places. Nevertheless, we try to maintain compatibility as much as possible. There are five types of workarounds for AMS dependencies:

- Manually Obtaining the Address of a ROM Function
- Wrapping a ROM Function in tigcc.a
- Wrapping a ROM Function with a Macro
- Reimplementing a ROM Function in tigcc.a
- Reimplementing a ROM Function as a Macro