EMS5150T Board (905-2161) Software Drivers Faxback Doc. # 2057 The Micro Mainframe EMS Software has been designed to support the Lotus/Intel/Microsoft standard (LIM). The version is 3.2 which does not contain support for functions 10 and 11 (Which was specified by Lotus Development Corporation.). The name of the file which provides the drivers for the Micro Mainframe EMS board is called "EMS32.BIN". This file MUST reside on the system disk in the ROOT directory. You must also create a file on your "BOOT" disk called "CONFIG.SYS". If you already have a file on your disk called "CONFIG.SYS" then you need to modify it. You may obtain further information on how to do this by consulting you DOS manual. The "CONFIG.SYS" file as a minimum must contain the following line to install the EMS driver software: DEVICE = EMS32.BIN When the computer "BOOTS" from the disk it will load the EMS driver program called "EMS32.BIN" and initialize the EMS RAM. This driver software checks the EMS RAM for memory errors, and determines the amount of RAM present, sets its internal parameters and exits to DOS. There is one option for the EMS invocation line. Micro Mainframe has provided a "QUICK" check of the EMS RAM. As you will know the PC can take some time to test its memory, so we have provided an option to quicken the long memory test related only Micro Mainframe's EMS RAM. To use this option you need to append to "CONFIG.SYS" file as follows: DEVICE = EMS32.BIN /Q Where the "Q" is the option switch. This enables the "QUICK" check of the EMS RAM. As an added bonus the "QUICK" check also performs a non-destructive RAM test. This enables the EMS RAM DISK software to detect the presence of a constructed RAM disk. This allows you to "reboot" your computer (without power loss) and still have the contents of the Micro Mainframe EMS RAM DISK. (See EMS RAM DISK documentation for more details). This completes the information requires to install the EMS software. Please consult the technical information for further details on how to use the EMS software in your programs. Please also NOTE that if any software is installed through the "CONFIG.SYS" file and it uses the EMS MEMORY you MUST have the "DEVICE - EMS32.BIN" appear first. Other wise the installed software will NOT be able to locate the EMS software as it has not been installed yet. Compatibility Mode for DESQVIEW and PC TOOLS: It has been noted that DesqView and PC Tools (version 5 and above) can cause system crashes when used in conjunction with the MMF EMS board. We have implemented a special `compatibility' mode in our EMS software which allows you to use these programs without experiencing this problem. In order to use this mode you need to add a "/C" option switch in you "CONFIG.SYS" file as shown below: DEVICE = EMS32.BIN /C This mode may also be used in conjunction with the "QUICK" RAM test discussed above. To do this simply add "/QC" as the option switch instead of "/C". Please note that if you are experiencing problems with your software and the EMS memory, please verify that it will work with LIM specification 3.2. If so, the problems may be eliminated through the use of the compatibility mode. EMS RAM Disk Software: The EMS RAM Disk software is a file on the disk named "EMSRAMDK.BIN". This file is the interface between your computer's MS-DOS and Micro Mainframe's EMS software. The software provides the necessary information to the DOS for use as a block device (disk drive). The disk device can be set for several different sizes. The smallest unit is 16K (16384 bytes). The reason for this is the EMS software standard switches memory on 16K blocks or pages. You tell your computer to install the EMS RAM Disk software by entering lines in the "CONFIG.SYS" file. The line in the "CONFIG.SYS" file should read as follows: DEVICE = EMSRAMDK.BIN /B=N or DEVICE = EMSRAMDK.BIN /B=A Where (N) is the number of 16K pages of memory to use in the RAM DISK. The number (N) can range from 1 to 512, but is dependent upon how much EMS RAM is available. A board with 2 Megabytes of memory installed can use 128 pages of EMS RAM. This would leave the system with NO available EMS RAM and a 2 Meg RAM DISK. If the (N) is omitted then the software will use a default value of 1. This would yield a 16K RAM DISK. The RAM DISK software would inform you of the default usage. If you wish you may use the /B=A option. this option tells the driver to use all of the EMS memory that it finds for the RAM disk. As you add additional memory the RAM disk will automatically grow. You may optionally specify the name of the RAM DISK as it appears on your directory listings. The option switch is "/L=name". Where name can be up to 11 characters. The "CONFIG.SYS" file would look like the following for a 160K RAM DISK and a volume ID of TOM'S Disk: DEVICE = EMSRAMDK.BIN /B=160,L=TOM'S Disk Please remember that you must have first installed the EMS driver program "EMS32.BIN" before the "EMSRAMDK.BIN" program can function. this again is done by entering the DEVICE=EMS32.BIN command in the "CONFIG.SYS" file before the DEVICE = EMSRAMDK.BIN command. Now if your computer is reset and you have some important information in your EMS RAM DISK you need not fear if you have used the quick test mode in the loading of the EMS software configuration. The RAM DISK software MUST however see that the information in the directory is correct and your "BOOT" disk must contain the same parameters as the old disk contained. If the above conditions are met then the RAM DISK software will indicate the contents of the RAM DISK have been preserved. This simply means that the directory information and the FAT table have not been reset to zeros. There is NO guarantee that the other information in the EMS RAM DISK was undisturbed. But, if the information was undisturbed then you have the opportunity to copy it to a regular diskette or hard disk. It is a good practice NOT to leave important information in the RAM DISK when you are done. You should move you information to another less volatile storage location, such as a diskette or hard disk. The main point is the Micro Mainframe tries to give you the opportunity to recover from an otherwise horrible disaster. Other Programs Provided for Use With the EMS BOARD: Print Spooler: Micro Mainframe has also provided an EMS print spool. This program, called ESPOOL.EXE, will send information to the printer and also catch what your computer is sending to the printer to keep the computer moving along quickly and not waste valuable time waiting for the printer. The ESPOOL program has several operations which it will perform. The first is the print spooling function. Others include "Status of spool" and "Clear Spool". To invoke the printer spool you need to include on the command line the size you wish to allocate to the print spooler. You also need to tell the spooler which printer it is to spool for. The command line would appear as follows for a 2 EMS page spool using the default printer. A>ESPOOL /B=2 The "B" stands for blocks of EMS memory. The numeric range is 1-512. You must however have sufficient free EMS pages to fill the request or the spooler will not be installed and an error message will be displayed. If you wish to have the spooler spool information for another printer other than 0 (zero) you need to tell the spooler at installation time of that request. A>ESPOOL /B-10/P=1 This will spool information for printer number 1 using 10 pages of EMS memory or 160K of space. Once the spooler has been loaded you may perform either of the two following commands. The first is a "Status" request. The status request will display the number of bytes currently awaiting to be delivered to the printer, the number of EMS pages allocated to the spooler and the printer number the spool is active for. To invoke the status request simply enter the command "ESPOOL" and press return. The spooler software will see that you have requested a status and deliver the information to you. Note that if you invoke a status request but have not yet invoked the spooler and error message will appear. If you have found that you need to EMPTY the spool of the information previously sent to it you can issue the "CLEAR SPOOL" command. The CLEAR SPOOL command is given on the command line. The following will zero all input and output buffers and ready the spool to receive new printer information. the following will illustrate the command line. A:>ESPOOL /C One final option provides additional support for faster printers. ESPOOL.EXE will wait a programmable amount of time before determining that the printer is busy. Feel free to experiment with different delay values to find the best performance. Factors that influence the delay value are CPU speed clock speed, printer interface electronics, and computer. Please note: Take care not to over extend the delay. Doing such could cause your computer to miss interrupts. The option switch to control the delay is [/D=n] where N= 1 to 65535. The default is 200. An example of using the delay option appears in the following command line: A:>ESPOOL /B=2/D=160 This would setup a spooler using 2 pages of EMS memory and a delay of 1670. EMS Utilities: EMSMAP.EXE Displays a use map of the EMS memory system EMSSTAT.EXE Displays a use map of the internal save area. To invoke either of these utilities simply type in their names at the DOS prompt. The EMSMAP.EXE program is the most useful. This will give you some idea of the mapping of the EMS memory. This will aid programmers in their understanding of the EMS mapping. The EMSSTAT.EXE program is useful when interrupt driven tasks are consuming space in the save area. The programmers and users are able to see the consumption of time in the EMS swap. It is also an indication of how may pending tasks are present. EMS Software Technical Manual is available from Micro Mainframe for an additional charge. The EMS technical manual covers all aspects of the EMS software interface and also some unique features of the Micro Mainframe implementation of the LIM 3.2 standard. If you would like additional information regarding this manual please call Micro Mainframe directly (916) 985-7501. There is a nominal charge for the duplication costs and shipping charges. If you are a programmer then the EMS technical manual is a must. If you wish to tinker around with the software then again you must get the EMS manual. The Micro Mainframe implementation of the LIM 3.2 has some extensions which would be of interest to all programmers. These extensions give the programmer greater flexibility in using the EMS memory. (jej-05/11/94)