# BlitzMax/Modules

Modules are precompiled source code stored in the 'mod' folder within your BlitzMax installation directory. The entire language of BlitzMax is based on the official modules i.e. those managed by BRL.
Modules can be written in native BlitzMax or externally declared in C, C++, ObjectiveC or Assembly. Fasm is used to compile x86 assembly and GNU Build Tools is for C languages.

# Modscopes

A modscope is a reference to a group of modules which are related to each other in some way, usually by author. The modscope is followed by a full stop ('.') and then the module's name. For example, 'Brl.Blitz' is the same as saying, "the module name Blitz from the module scope Brl".

#### Official

   * Brl
   * Pub
   * MaxGUI

#### Third Party

   * Axe
   * BaH
   * Gman
   * Koriolis
   * Sidesign
   * Vertex
   * wxMax

# Modules
## Official
#### Audio

* Brl
   * Audio
   * AudioSample

#### Audio: Drivers and Loaders

* Brl
   * DirectSoundAudio
   * FreeAudioAudio
   * OpenALAudio
   * OGGLoader
   * WAVLoader
* Pub
   * OpenAL

#### BASIC

* Brl
   * Blitz
   * Retro
   * Reflection

#### Data structures

* Brl
   * LinkedList
   * Map

#### Miscellaneous

* Brl
   * Bank
* Pub
   * ZLib

#### Events

* Brl
   * Event
   * EventQueue
   * Hook
   * Timer

#### Graphics

* Brl
   * Max2D
   * Graphics
   * GLGraphics
   * Pixmap
* Pub
   * OpenGL

#### Graphics: Drivers and Loaders

* Brl
   * GLMax2D
   * D3D7Max2D
   * BMPLoader
   * PNGLoader
   * JPGLoader
   * TGALoader

#### GUI

* MaxGUI
   * MaxGUI
   * Drivers
   * Localization
   * ProxyGadgets

#### GUI: Drivers

* MaxGUI
   * Win32MaxGUIEx
   * FLTKMaxGUI
   * CocoaMaxGUI

#### Math

* Brl
   * Math
   * Random

#### Networking

* Brl
   * Socket
   * GNet

#### Other

* Pub
   * Lua

#### Streams

* Brl
   * Stream
   * BankStream
   * EndianStream
   * RamStream
   * SocketStream
   * TextStream

#### System

* Brl
   * Threads
   * MaxLua
   * System
   * FileSystem
   * StandardIO

#### User Input

* Brl
   * KeyCodes
   * PolledInput
* Pub
   * FreeJoy

#### Undocumented

* Brl
   * AppStub
   * Basic
   * DXGraphics
   * Font
   * FreeTypeFont
   * HTTPStream
   * MaxUtil
* Pub
   * DirectX
   * ENet
   * FreeAudio
   * FreeProcess
   * FreeType
   * Glew
   * LibJPEG
   * LibPNG
   * MacOS
   * OGGVorbis
   * StdC
   * Win32

## Third Party
#### Audio

* BaH
   * BASS
   * FMOD
   * GME
   * irrKlang
   * PortMidi (Deprecated)
   * TagLib

#### Audio: Drivers

* BaH
   * FMODAudio
   * irrKlangAudio

#### Database

* BaH
   * Database
   * DBmSQL
   * DBMySQL
   * DBODBC
   * DBOracle
   * DBPostgreSQL
   * DBSQLite
   * DBXbase

#### Graphics

* BaH
   * Cairo
   * Graphviz
   * LibSVG
* Sidesign
   * MiniB3D

#### GUI

* BaH
   * GTKMaxGUI (Linux)
   * GTKWebGTKHTML (Linux)
   * GTKWebMozilla (Linux)
* wxMax

#### Imaging

* BaH
   * EXRLoader
   * GDAL
   * FreeImage
   * RGBLoader

#### Internet

* BaH
   * ClearSilver
   * Flickcurl
   * FTPParser
   * Libcurl
   * LibcurlSSL

#### Math

* BaH
   * MAPM
   * MathToolkit
   * muParser

#### Miscellaneous

* BaH
   * MaxUnit
   * RealtimeBattle (Linux)

#### Networking

* BaH
   * Raknet
* Vertex
   * BNetEx

#### Other

* Axe
   * Lua

#### Physics

* BaH
   * Box2D
   * Chipmunk

#### System

* BaH
   * AppStub (MacOS)
   * Boost
   * Crypto
   * DateTime
   * Libnotify (Linux)
   * Growl (MacOS)
   * Random
   * Volumes

#### Text

* BaH
   * Base64
   * Expat
   * Format
   * LibXML
   * LibXSLT
   * Locale
   * RegEx
   * RTL
   * Tesseract

## External links

* BlitzMax Website
* Brucey's Modules
* Brucey's Programming Forum