New Features in Maximus 3.0 =========================== * Added MEX, the Maximus Extension Language. MEX is a true programming language that includes features from the BASIC, C and Pascal languages. MEX is easy to use, but it also supports many advanced language constructs, including function calls, block scoping, dynamic strings, arrays, structures, pass-by-reference arguments, and more. MEX is a complement to MECCA, the original Maximus scripting language. While MECCA is still fully supported, many tasks can be simplified by using MEX scripts. MEX programs can access many internal Maximus features and functions, including the fields in the user record, the message and file area data files, the file tag queue, and much more. MEX supports over 100 internal functions that allow user-developed programs to interface with an on- line user. As a testament to the power of MEX, Maximus 3.0 will ship with a number of MEX system utilities and applications. The release will include the sources for MEXBank, a MEX- based time bank, and MEXChat, a split-screen chat application. In addition, numerous parts of Maximus itself have been converted to MEX, such as many of the menu headers and display options. * Hierarchical message and file area support. Both message and file areas can be grouped into logical subsections. Internal commands for area selection now automatically recognize these subsections and allow users to move easily through the hierarchy. * Extensive support for RIP graphics. Maximus 3.0 will: automatically detect RIP support, automatically size menu output based on the RIP window size, display most internal prompts using RIP graphics, allow the SysOp to add both RIP and non-RIP strings to the system language file, select special .RIP files for display instead of .BBS files, and automatically send/display RIP scene and icon files to the user. Other points of interest related to RIP: the RIP sequences are automatically filtered from the local SysOp console. Both MECCA and MEX support an interface to the RIP file-sending mechanism. The system also comes with a complete set of RIP support files. * Support for SysOp-defined privilege levels. The old system of 12 user privilege levels has been expanded to include a flexible set of user "classes" that can be used to define the attributes of an arbitrary privilege level. Numeric privilege levels are associated with each class, so a purely-numeric privilege level system can be used if desired. However, the SysOp can also assign synonyms to each class (such as "Limited" or "Normal") for backwards compatibility. * Access Control Strings (ACS) have now replaced privilege levels qualifiers. Menu commands can be restricted to users with an arbitrary set of privilege levels, keys, or other attributes. This differs from the previous "all users of level X or greater" method of access control used in Maximus 2.x. * Support for local file attaches in Squish message areas. This allows users to enter messages and upload files to be sent to the addressee. Features such as file compression and storage can be controlled by the SysOp. * Added a "Reply in other area" menu option that allows users to reply to a message in a location other than the current area. * Maximus-OS/2 now uses the Master Control Program (MCP) for handling inter-process communications. MCP is a multithreaded, 32-bit detached process that handles all communications needs for Maximus nodes. * Maximus-OS/2 supports "Session Monitor" (SM), a 32-bit Presentation Manager LAN administration tool. SM allows the SysOp to view, start, and stop remote Maximus tasks that are running on a LAN. SM can also be used on a local machine to view multiple Maximus sessions on the desktop. * Maximus-OS/2 supports a new REXX API for accessing the Maximus user file. * A message-tracking system for use in technical support environments. Maximus can keep an audit trail of all messages in certain areas, assign "ownership" of messages to individuals, and produce detailed reports regarding the status of various messages. * Full support for CD-ROMs and other slow filesystems. Maximus will copy files to a staging area before a transfer and it will only access the drive when absolutely necessary. Areas can also be specifically excluded from new files searches. * The internal user editor has been redesigned. The screen layout is much more user-friendly, and all of the new fields can be edited with only a few keystrokes. * Support for nested menus. The Link_Menu and Return menu commands can be used to create a multilevel menu hierarchy, rather than the flat menu structure of Maximus 2.x. * Optional support for user password encryption. This feature uses the RSA Data Security "MD5" algorithm as a one-way hash for storing passwords in the user file. * A new menu option allows users to limit QWK message downloads by message date. * Added SoundBlaster support for Maximus-OS/2. Maximus can now play your TUNES.BBS tunes on any SoundBlaster- compatible card. * A new "UMSGID" option that ensures that messages within Squish-format areas always maintain the same message numbers over the area's lifetime. * Support for an unlimited number of tagged message areas. * Menu commands can now be assigned to function keys and cursor keys. Users must run a terminal program that supports "DoorWay mode" to use this feature. * Browse now supports wildcard and group-based area selection. * Added the following fields to the user file: number of files downloaded (total), number of files downloaded (today), number of files uploaded, number of messages read, number of messages posted, date of first call, date of last newfiles scan, date of last password change, date of birth, and more. * Maximus now supports file descriptions up to 1024 bytes in size. * Automatic/manual file date support is now configurable for each individual file area. FB will now automatically parse dates and sizes that are embedded directly in the file listing. Also added limited support for PCBoard- style "line continuation characters" in file listings. * Remote users can now optionally use the "local" external message editor. * Users can now tag message areas directly from the "More" prompt within the message tag command.