This information is extracted from Vol. 1., No. 2 of GENEVA NEWS, published by Camden Communications Inc., copyright (c) 1985. MEX MEX, a sophisticated terminal and file transfer program for CP/M-80 computers, was written by Ron Fowler. It's part of a series of developments originating from the MODEM telecommunication standard designed by Ward Christensen --others being MODEM7 and XMODEM. The powerful and flexible features that MEX offers are ideal for sophisticated computer users. They're also easy to use for the non- specialist. NEEDING DIRECTION MEX's help facility is a multi-level reference for nearly all on-line problems. The first level is a simple quick-reference guide to the MEX's commands. It doesn't go into detail, but is ideal for a fast memory jog for infrequently used functions. The second help level describes the purpose and syntax of each MEX command. This is implemented as a CP/M random access file, resulting in short access times. The third help utility is a complete 76K manual formatted for printing using WordStar. The document is well-written and is virtually all the user will need to begin telecommunicating with MEX. SPEAK THE LANGUAGE MEX supports three file transfer methods: Christensen protocol (popularly called MODEM or XMODEM), CompuServe "A" and straight ASCII. The first two protocols are implemented according to informal industry standards --no surprises there. The ASCII transfer is well thought-out and is easy to use for most purposes. During ASCII data capture, incoming text is automatically stored in an in-memory buffer. When the buffer fills, it's dumped to disk and the buffer is filled again. In order to prevent loss of incoming data, MEX sends out an XOFF (Ctrl-S) character when the buffer is nearly full, and waits for the sending computer to stop sending data before writing the data to disk. When the data is safely on disk, MEX transmits XON (Ctrl-Q) to request that the remote computer resume. ASCII capture can be toggled on and off at will during a terminal session. The ASCII text may be echoed to the serial printer as well as saved to disk. MEX buffers text internally as it is sent to the printer --avoiding data loss with slow printers. DON'T TOUCH THAT DIAL Assuming that the your computer is connected to an auto-dial modem, MEX will dial and re-dial the telephone as required. MEX dials single numbers or can be given a list of telephone numbers to call until one responds with a carrier. This feature is useful with multiple-number timeshare services: If one local number's busy, try another. MEX produces an audible tone to alert the user that a connection has been made. Another labor-saving tool is the built-in telephone library. The number of phone numbers is limited only by available memory. The phone number library is maintained by MEX itself, not by an external program. To facilitate ease of use, the telephone numbers can be associated with a name that is at least somewhat descriptive of the number. In addition to the telephone library, MEX maintains a list of "keystrings," which can be transmitted with just two keystrokes. In terminal mode, pressing a pre-determined escape key plus any other key sends the sequence, which may be a system ID or password, or any often- used instruction. Carriage-returns and control codes may be included in the keystring sequence. Both the phone number library and the keystring library may be written to disk or maintained in RAM. FOLLOWING THE MAP One of the most sophisticated facilities in MEX is the scripting facility. Anything that can be done from the keyboard can be done from command files that MEX reads and executes. In addition to the normal commands to go into terminal mode, dial numbers or toggle output to a file or printer, MEX supports a number of commands that are specifically designed for use with script files. These commands allow automatic dialing of a system, waiting for a specific input from that remote computer, capturing messages waiting to a disk file, transfering other disk files and breaking the connection --all without operator intervention. IT'S THE LOCAL DIALECT MEX allows complete control over communications parameters, which the documentation calls STAT values. When transmitting straight ASCII text, the following values may be selected: delay between characters, wait after carriage return, remote acknowledgment code and time to allow before signalling timeout. The exact clock rate of the computer may also be specified, so as to help MEX trim its timing loops for greater precision. Another STAT variable is the search path for the HELP documentation. This tells MEX whether the file is in RAM or on a physical disk. Other option settings include page length and line length and even the length of time the built-in tone should sound when terminal contact has been made. LOCAL AUTHORITIES Two of MEX's unique features are DEBUG and EXTEND modes. DEBUG displays all text received in hexadecimal format -- not in character ASCII form. This is useful for debugging communications software on the remote computer. EXTEND increases the size of MEX's instruction set by making script files execute automatically when their names are entered. This allows the user to define specialized commands which can perform specific tasks. An example might be LOGTIM, which would go through a complete timeshare system dialing and logon process. JUST CLONING AROUND The CLONE command saves a new version of MEX on disk or in RAM with defaults set to MEX's current values. Using CLONE, separate versions of MEX can exist, each with its customized STAT values, keystrings and telephone libraries. MEX can also be instructed to execute a script file each time it's run. This default file contains commands that are always executed, such as modem initialization strings. This is useful if the MEX implementation is in a read-only-memory (ROM) chip, and thus can't be CLONEd. PUTTING IT ALL TOGETHER MEX distributed in two pieces. The first is the general CP/M MEX.COM program. This handles everything except actual character input and output (I/O) and modem control. The CP/M program is distributed as a binary .COM file. Actual communications are handled by a hardware- specific assembler file which can be customized by users. The overlay file is to be assembled by the ASM program and integrated with the MEX.COM file with MLOAD.COM (included with MEX.COM). There any many hardware-specific overlays. JUST FOR US MEX and all of its overlays are in the public domain --i.e., free to the user. Don't equate price with value, as MEX is one of the most powerful communications packages available for any computer. Exactly where can you get MEX? There are a number of places you can try. There are literally hundreds of Remote CP/M and other bulletin board systems around the country that have MEX and some of its overlays available for free downloading. The current public domain version of MEX is version 1.14. David B. Kozinn is the author of the MXO-PX.ASM hardware overlay for the Geneva computer. He's an avid Geneva owner and firmly believes that the Geneva is "the way to go." -Ed