Help Topics > Table of Contents





TADS Compiler Options





General Notes

Windows 95/98 and NT provide virtual memory at the operating system level, and can supply applications with very large amounts of memory. The built-in virtual memory mechanism in TADS was designed for computers with limited amounts of memory and no native virtual memory system. In general, you will not need to use any of the memory or swap file options (all of the -m options, and -tf and -ts) when running TADS on Windows.

Certain options are designed for systems where a sort of hybrid graphical/command line environment exists, such as the DOS box under Windows. In particular, the -p option, which makes the compiler wait for a user keystroke after compilation is finished, is designed for environments where the command line window in which the compiler runs will disappear after the compiler exits. Similarly, the -e option is meant to help you see errors on terminals where errors could scroll off the screen. When running in the TADS Workbench environment, you should not need any of these options, because TADS Workbench displays the compiler's output in a graphical window; there is no danger of the window disappearing before you see it, and you can scroll through all of the output the window captures.

List of TADS Compiler Options

-C+ Use C-style operators: use = for assignment, and == for comparison.
-C- Use traditional TADS operators: use := for assignment, and = for comparison.
-C Toggle previous -C setting. The default setting is -C-.
-case+ Treat upper- and lower-case letters as distinct in symbol names.
-case- Treat upper- and lower-case letters as equivalent in symbol names.
-case Toggle previous -case setting. The default setting is -case+.
-ctab file Use file as the character-mapping file.
-D symbol=value Define the preprocessor symbol symbol to the text given by value. If the equals sign and value are omitted, the symbol is defined to the text 1 (the digit one). The effect is the same as though a #define statement appeared before the start of the text of the source file.
-ds+ Include debugging information in the compiled .gam file.
-ds- Do not include debugging information in the compiled .gam file.
-ds Toggle previous -ds setting. The default setting is -ds-.
-ds2+ Include new-style debugging information in the compiled .gam file. This option should be used when compiling for TADS Workbench's integrated debugger.
-ds2- Do not include new-style debugging information in the compiled .gam file.
-ds2 Toggle previous -ds2 setting. The default setting is -ds2-.
-e file Capture errors and warnings and write them to the text file file. Overwrites any existing file of the same name.
-Fs file Capture the text of all of the strings in the game and write the contents to the text file file. Overwrites any existing file of the same name.
-fv a|b|c|* Set the .gam file format version to a, b, c, or *. Setting the version to * uses the most recent format version, which is currently c. This allows a .gam file to be generated that is compatible with older versions of the TADS Interpreter.
-i path Add path to the list of directories to search for files included with the #include preprocessor directive.
-l file Load a precompiled header file.
-m size Limit the in-memory virtual object cache to the given size in bytes. By default, the cache size is limited only by available memory. After the cache is full, the compiler uses the swap file to store additional data.
-mg size Set the "goto" label table to the given size. The default is 8192 bytes.
-mh size Set the execution heap to the given size. This is significant only for running the preinit function. The default is 65535 bytes.
-ml size Set the local symbol table size. The default is 16384 bytes.
-mp size Set the parse node pool size. The default is 24576 bytes. You must increase this value if the compiler displays the error message "no space for new parse node."
-ms size Set the execution stack size. This is significant only for running the preinit function. The default size is 512 stack slots.
-o file Write output to the named .gam file.
-o- Do not write an output .gam file.
-p+ Pause for a key after compilation.
-p- Do not pause for a key after compilation.
-p Toggle previous -p setting. Default setting is -p-.
-s+ Show statistics after compilation is finished.
-s- Do not show statistics after compilation is finished.
-s Toggle previous -s setting. Default setting is -s-.
-tf file Use file as the virtual memory swap file. Overwrites any existing file of the same name.
-ts size Set the maximum swap file size. By default, the swap file size is unlimited.
-t+ Enable virtual memory swapping.
-t- Disable virtual memory swapping.
-t Toggle previous -t setting. Default setting is -t+.
-U symbol Undefine the given preprocessor symbol. The effect is the same as though you had inserted a #undef preprocessor directive at the start of your source file.
-v level Set the warning verbosity level. The default warning level is 0; currently, levels 1 and 2 are meaningful. At higher levels, the compiler displays more warnings than at lower levels.
-v-abin Supress the "ambiguous binary operators" warning message.
-w file Precompile the game to the given file. This file can be loaded with the -l option.
-Za+ Generation run-time argument checking for functions and methods. This generates slightly larger code which includes checking in each function call to ensure that the correct number of arguments are passed by the caller.
-Za- Do not generate run-time argument checking code.
-Za Toggle previous -Za setting. Default setting is -Za+.
-1a+, -1a-, -1a   Same as the equivalent -Za options.
-1k+ Disable TADS version 2 language keywords, increasing compatibility with code written for TADS version 1.
-1k- Enable all TADS version 2 language keywords.
-Za Toggle previous -1k setting. Default setting is -1k-.
-1e+ Ignore a semicolon after an if{...} construct, increasing compatibility with code written for TADS version 1.
-1e- Treat a semicolon after an if{...} construct as significant.
-Za Toggle previous -1e setting. Default setting is -1e-.
-1d keyword Replace the TADS language keyword "do" with the given keyword. This can be used to increase compatibility with games written for TADS version 1.







Help Topics > Table of Contents

Copyright ©1999, 2007 by Michael J. Roberts.