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)