Maximus is a bulletin board system, originally developed by Scott J. Dudley through his company, Lanius Corporation. The software was first written and released for both MS-DOS and OS/2, with later versions supporting 32-bit Windowsoperating systems. The MS-DOS version interfaced with the serial port through a FOSSIL driver. Version 1.0 was released in 1990, with versions 2.0 and 3.01 following in 1991 and 1995. The source code for Maximus and its companion utilities, such as Squish, was released under the GNU General Public License in 2002. It has since been ported to run under Linux, and other Unix-like operating systems. By default, Maximus provides a relatively basic interface for BBS callers rendered in either ANSI or ASCII, compared with other BBS software. Menu layout is auto-generated and simply-drawn. With some effort, however, it is very customisable, including a provision for a system operator to supply RIP graphics for users. When BBS systems were popular, Maximus often appealed to system operators who wanted a system that appeared light-weight, but also to those who wanted great flexibility in their ability to customise their system's looks and behaviour. Maximus configuration is entirely through editing text files, prior to running a compiler to convert the text files to binary configuration files. Since the release of version 3.0 of Maximus, in December 1995, Maximus has supported two independent programming languages for system operators to customise their BBS. Both are compiled to Maximus-recognised byte-code before being used:
The MECCA language is primarily display-oriented, providing basic tokens to indicate actions such as colour changes for text displayed to a user, and simple functionality for designing things such as menus that require user input, or writing certain information to files on disk to exchange information with BBS door programs.
The MEX language is a more structured, Turing-complete programming language, that borrows ideas from C, Pascal, BASIC, and a selection of similar languages. MEX provides supports for functions, structures, arrays, strings, and several additional complex concepts. Using MEX, system operators can write reasonably complex programs to run on their BBS and interact with users.