                   What's new in Synchronet BBS Version 2.20
                   =========================================

General
~~~~~~~
o Support for WIP (Windows Interface Protocol) terminal programs (DCTERMW.ZIP)
        by automatically detecting WIP terminals and displaying WIP menus
o Each security level can be set to expire to a specific security level, the
        default expired level, or a specific quick-validation set
o Loadable module can be executed during daily maintenance for each expired
        user enabling custom expiration options/features
o New exemption (E) keeps specific users from expiring when their time runs out
        if the "Expire when out-of-time" option has been enabled in SCFG
o Expired users are written to the detailed log with a !% line for each user
o New SBBS command line switch (o) to force all pending events to execute
        and then immediately exit (for use with Front-end mailers)
o New system toggle to disallow credit to minute conversions
o Timed events can be forced by creating a semaphore file in the DATA directory
        (similar to forced QWKnet call-outs)
o Number of seconds between checks for node semaphores (down/rerun/event/etc)
        and seconds between checks for waiting for call statistics can be
        configured on a per-node basis
o Each node can be individually toggled to disallow local beeps
o New user locations can be allowed without commas (between city and state)
        if the sysop wishes
o Quick-validation hot-keys require locally input system password if changing
        a user with level 90 or higher (reduces accidental Quick-validations)
o If daily statistics database (DSTS.DAB) time stamp is more than 24 hours
        in the future (apparently corrupted), a critical error is generated
o Last few callers and callers today listing can be custom colorized and
        easily removed from the logon procedure for some or all users
        (number of callers displayed for last few callers is Baja modifiable)
o Low-priority input toggle available on a per-node basis to fine-tune
        aggregate system performance under multitasking environments
o ARS keywords SUB and DIR now support sub-board and directory internal codes
        (static) as well as the area number (dynamic) for the value argument
o Doors can be configured for maximum time allowed (in drop file)
o Waiting for call configuration (SCFG) command line configurable for each node
o 32-bit DOS and OS/2 versions of the Synchronet configuration (SCFG) program
o RIP and WIP screens are not displayed locally for a cleaner local console
o E-7-1 remote terminals are now directly supported by Synchronet


Message Networks
~~~~~~~~~~~~~~~~
o New FA: (file attachment) status override for sysops and 'F' exempt users
        to send file attachments from anywhere to multiple addresses
o Sub-boards can be toggled for "Internet Networked" to allow posts to unknown
        user names and the 'N' restriction to work properly with NetXpress
o QWK NetMail imported for an unknown address will be returned to the sender
        (bounced) with "BADADDR: address" in the subject of the message


Message Base
~~~~~~~~~~~~
o Moderated messages now show Moderated and Validated attributes
o When changing message attributes, a hot-key menu interface is used
o When moving messages between sub-boards, the original message may be left
        intact (copying messages rather than moving)
o When deleting messages from a message base, they are only flagged for
        deletion later by message base maintenance, allowing the user to
        undelete the message
o More than 3000-4000 messages per sub-board supported (if memory allows)
o Messages and text files of any size (no maximum length) can be viewed online
o File attachments (e-mail) can now be forwarded among users
o Local posts and e-mail from user #1 may contain @-code variables/actions
o Sub-boards can be configured with static QWK conference numbers instead of
        the default dynamic numbering scheme


Guru Chat
~~~~~~~~~
o New response variables:
        `O      SysOp's name
        `S      System name
        `G      Guru's name
        `I      System's QWK ID
        `L      User's level (previously `m)
        `T      Time
        `M      Month
        `W      Day of the week
        `J      Day of the month
        `Y      Year
        `Z      User's zip/postal code
o AR strings can be used in Guru expressions by enclosing them in brackets
        e.g. (HELLO&GURU&[LEVEL 90 OR FLAG S])
o Guru starts conversation in "Local" mode (not multinode chat mode)


File Transfers
~~~~~~~~~~~~~~
o Non-Synchronet color codes (@-codes, pipe-codes, etc) are now supported in
        the descriptions of extended file listings (&E toggled ON)
o Files moved from the upload or sysop directories automatically have their
        upload date set to the current date so they will appear in new-scans
o When in novice mode and batch flagging is enabled, file scans clear the
        screen and display the batch flag command reference at the top of the
        screen between each group of files
o File areas can be configured for maximum file age in days for the new
        file maintenance utility (DELFILES) to purge by upload date, last
        download date, and/or files not on disk
o Users can select a default download protocol and enable auto hang-up after
        download (sysop can configure new user default values for these too)
o Files placed in the batch download queue, but not downloaded during the call
        will be automatically added to the batch download queue during the
        user's next logon
o File contents can be viewed from the (R)emove/Edit file prompt
o External programs can place files in the batch download queue by creating a
        list of files as DATA\FILE\####.DWN (where #### is the user number)
o File areas can be set to deduct users' time online during uploads (instead
        of the default behavior of suspending their time while uploading)
o File areas can be set to award uploaders with minutes instead of credits


PCMS (Programmable Command and Menu Structure) Enhancements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
o Login procedure is controlled by a loadable module instead of hard-coded,
        allowing custom login protocols and matrix menus
o Loadable logon module has greater control over logon procedure, assuming
        responsibility for displaying logon screens, initiating logon events,
        displaying auto-message, last few callers, etc.
o Optional synchronization module to be executed whenever nodes and displays
        are synchronized (very frequently)
o Optional logout module to be executed offline during logout procedure
        (after disconnection)
o Optional expired user module to be executed offline during daily maintenance
        when users expire
o Modules can be loaded and executed from anywhere by placing @EXEC:MODNAME@
        in TEXT.DAT lines (excluding lines with % specifiers), menus, text
        files, and even e-mail messages (optional)
o Command shells and modules can use dynamic global and local variables
        (character strings and 32-bit integers)
o Direct file i/o operations available for command shells and modules
o Maximum binary executable size increased from 32k to 64k
o Read/write access to over 100 internal system string and integer variables
o Ability to dynamically load alternate TEXT.DAT files allowing complete
        foreign language and graphical protocol shells
o Additional TEXT.DAT line to specify which keys are to be used for Yes and No,
        completing the support necessary for foreign language shells
o Comments allowed in TEXT.DAT by placing '#' at the beginning of the line


Baja Compiler Version 2.00 Enhancements
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
o Compiler supports C-like macros (!define) for pre-processor definition of
        integer and string constants
o Compiler supports multi-file projects using a C-like pre-processor directive
        (!include) for combining multiple source/include files
o Many enhanced functions
o New String Manipulation functions
o New Integer Manipulation functions
o New Logic/Control Flow functions
o New Display functions
o New Input functions
o New Miscellaneous functions
o New File Base functions
o New Chat functions
o New File I/O functions
o New File system functions
o New Directory system functions

/* End of V220A.NEW */
