Blitz:Resident Files

From Amiga Coding
Revision as of 17:53, 26 August 2015 by Daedalus (talk | contribs)
Jump to: navigation, search

Blitz Basic / AmiBlitz allows the use of so-called "Resident" files. These files are chunks of pre-compiled Blitz code, and are usually used to add predefined structs, constants and macros to your code, such as for use with the standard OS libraries.

Adding Resident Files

To add resident files to your source, go to the Compiler Settings window, opened from the Compiler menu of the main Blitz editor. In this window there is an area for Resident files; simply click in the box and add a new line for each resident file you wish to add. In AmiBlitz you should only enter the name of the file itself, AmiBlitz will know where to look for it. Blitz Basic requires the path to the file, which is usually something like BlitzLibs:ExampleFile.res.

Useful Resident Files

AmigaLibs.res
Contains all the structs and constants defined for many key Amiga libraries, including, exec.library, intuition.library, gadtools.library and dos.library.
bb2objtypes.res
Contains definitions for all the internal Blitz object structures.
MUI.res
Contains all the structs and constants used by the core MUI libraries and classes.
MUI2.res
Contains all the same definitions as MUI.res, in addition to the structs and constants used by many popular 3rd party MUI classes, such as NList.mcc and BetterString.mcc.
all.res
Combines all the contents of AmigaLibs.res, including new definitions for OS3.9, as well as MUI.res, SDSTCP.res, wizard.res and bb2objtypes.res.


Note: Many definitions are provided in multiple resident files. If two resident files are included that both contain the same definition, an error will be given when you try to compile that something is already defined. In this case, you need to remove one of the resident files. To replace it, try to use a resident file that includes all the definitions you need, for example MUI2.res or all.res.

Creating Resident Files

It is possible to create your own resident files, which can be useful for reusing large chunks of code in multiple programs