Skip to content

MCI Control Sequences

phantasm4489 edited this page Apr 28, 2021 · 13 revisions

Any text file may contain imbedded control sequences which will send out variable text or cause certain things to happen.

MCI - Introducer:

~ This is the MCI introducer, this must be at the beginning of each text file by itself in order for Express to switch to the MCI interpreter for displaying the text file.

MCI - User Specification:

MCI Code Description
~N User Name
~IN User Internet Name
~RN User Realname
~UL User Location
~P User Password
~# User Phone
~TC Total User Calls
~LC User Last Call to the system
~TT Times on today (new in 5.1.0)
~M User Messages Posted
~A User Access Level
~S User Slot Number
~CA User Conf. Access **** NOTE CHANGED FROM X ****
~BR User BaudRate
~HW User Computer Equipment
~TL User Initial Time Limit at logon in Minutes
~TR User Number of Mins Remaining today
~UB User Bytes Uploaded
~DB User Bytes Downloaded
~FU User Files Uploaded
~FD User Files Downloaded
~BD User Byte Download Limit
~LG User Logged On-Node
~ON User Logged On-Node (same as LG)
~Dx Change the MCI command terminator. i.e.: ~D.
~OD Online Since Date
~OT Online Since Time
~Cx Change foreground ansi color to anything from 0-7.
~Bx Change background ansi color to anything from 0-7.
~Zx Change background ansi color to anything from 0-7. (Same as Bx above)
~FF Show a list of the users flagged files
~FL Show a list of the users flagged files one file per line
~FC Number of flagged files the user has
~h Back Space
~q Change to default ANSI mode.
~f Clear Screen.
~Nx Newlines where x is the number of them you would like
~~ This indicates you wish the ~ symbol to appear, you can have as many of them as you like after the first ~ to display them (NOTE: no ',' on this command)
~xN Goto X position on screen. ie: ~x10
~yN Goto Y position on screen. ie: ~y10

NOTE: The above commands allow you to specify a width identifier before the action test.. ie: ~10N would only display the first 10 letters of the username.

MCI - System Specification:

MCI Code Description
~SC System Total calls
~CT Show current Time
~DT Show current Date
~VE Show current express version
~VD Show current express version date
~CL this command will display a list of conferences, commonly used in the JoinConf.TXT file
~CD second style of conference list (see ~CL above)
~ML this displays a list of message bases in this conference useful for JoinMsgBase.txt file
~MD this is a second style of message base list (see ~ML above)
~AK shows a list of the await screen keyboard shortcuts, useful for custom await screens
~CF shows the current conference number (New in 5.4.0)
~CN shows the current conference name (New in 5.4.0)
~MB shows the current messagebase number (New in 5.4.0)
~MN shows the current messagebase name (New in 5.4.0)
~VD shows the build date of the current version of express (New in 5.4.0)
~VE shows the version number of express (New in 5.4.0)

MCI - Extra Specification:

MCI Code Description
~wn Delays by n 50's of a second
~CR will wait for any key to be pressed.
~CR_Prompt will wait for and prompt the user to press any key. ie: ~CR_PressAnyKey
~SP will do a standard pause, this is useful to put in between each ~SS command.
~SR_ This allows you to have random textfiles by using this MCI Command. represents the maximal number of random file you want to change. and is the full path to the textfiles you want to be random displayed. (without .TXT)
~SX Show Sequential Files
~SS_Name Show file. This file may also be an MCI file.
~NS Enable non-stop mode for this file - this is useful for ANSI animations where you don't want the pause prompt to interfere with the animation (New in v5.3.0)
~SMO Slow mode on (with otional speed parameter 1-5) enables a delay when displaying this file so that ANSI animations don't just get sent as fast as possible (New in v5.3.0)
~SMC Slow mode cancel - disables the SMO command above (New in v5.3.0)
~SM_menuname Switch the current menu name (New in 5.4.0) - used to switch to a different menu file

WARNING: This command could cause a serious loop problem if you tell it to show the same file you are viewing. WARNING: You may need to increase STACK if you nest to many of these files.

NOTE: If this command is accessed via the message base or the View or ViewSysop commands, then the file you are going to view has to have a file comment of 'Allowed' or '{xxx}Allowed'

{xxx} specifies security level or above ie:

{050}Allowed, indicates that only those over or equal to access level of 50 are allowed to view the file.

~SR - Show Random Files

  SYNTAX: ~<numb>SR_<fileid>

           ^    ^  ^
           |    |  |
           |    |  ---------- pathname without security level and file
           |    |             extension
           |    ------------- Command to show random file
           ------------------ Number of Random files

  IE: ~10SR_BBS:Logon

This will look for a random file between 1-10, the syntax for the file to display is:

  SYNTAX: PathName<seq>.FileName[security level]<extension>

  IE: BBS:001.Logon200.TXT

This would be the first of ten files to create to be displayed by the random function, the '200' is the security level which is optional.

~SX - Show Sequential Files

  SYNTAX: ~SX_<fileid>

           ^  ^
           |  |
           |  ---------- pathname without security level and file
           |             extension
           ------------- Command to show sequential file

  IE: ~SX_BBS:Logon
  1. This will look for a file called BBS:Logon which will store the last sequence of the that was displayed. If this file does not exist, the 'SX' command will create it.
  2. Then it will construct a display file name based on the next sequence number as follows:
     SYNTAX: PathName<seq>.FileName
  1. It will then look for the appropriate file to display. The actual ASCII file should contain the following information for the filename:
     SYNTAX: PathName<seq>.FileName[security level]<extension>

     IE: BBS:001.Logon200.TXT --v
         BBS:001.Logon100.TXT ----- notice the different security levels
                                    keeping in mind that they are optional.
         BBS:002.Logon200.TXT

~CC_Name Launch a door 'Name' is the door's name. ie: ~CC_WHO will look in SYSCMD, BBSCmd and CONFCMD directory which must be located in the BBS:Commands directory.

~CC_WHO

NOTE: It is important to realize that most MENU COMMANDS should only be run from the MENU PROMPT. For Instance , forcing the READING of mail at the FRONTEND of express would not be wise because the BBS does not know who is logging onto the system. So use your own judgement on these matters.


NOTE: ALL MCI COMMANDS MUST END WITH EITHER A SPACE OR A '|' SYMBOL ALL COMMANDS ARE CASE SENSITIVE!!!!!!!!


Having a line in a text file that contains:

~N , I hope everything is going well in ~L .

Might show:

Joseph Hodge, I hope everything is going well in Virginia.