
                 Advanced Gravis Computer Technology Ltd.

     Fax (604) 431-5155                   BBS  (604) 431-5927 V32bis
     Compuserve: GO PCVENB (71333,350)    InterNET EMail: tech@gravis.com
     FidoNET: 1:153/978                   SBCNET: 13:900/3
     AOL: Adv Gravis                      Genie: Page M805 Topic 6

                     MEGA-EM VERSION 3.10 - 03/06/96
                               USERS MANUAL
     Copyright (C) 1993-1996 by Advanced Gravis Computer Technology Ltd.
                           All Rights Reserved


                 1.0  Legal Information
                 2.0  Introduction
                 3.0  Installation
                 4.0  Setup
                 5.0  Mega-Em Usage
                 6.0  Compatibility Problems With Various Software
                 7.0  Solutions to Commonly Encountered Problems
                 8.0  Answers to Commonly Asked Questions
                 9.0  Credits
                 10.0 Mega-Em Revision History


1.0 LEGAL INFORMATION
----------------------

This software and documentation are protected by copyright law,
with all rights reserved. Copyright is held by:

Advanced Gravis Computer Technology Ltd.
#101, 3750 North Fraser Way
Burnaby, B.C. V5J 5E9
CANADA

This software is provided as-is. Advanced Gravis makes no warranties,
express or implied, and does not warrant that the software will be fit
for any particular purpose. Advanced Gravis will in no event be liable
for loss of profits, nor incidental or consequential damages. You use
this software at your own risk.

This software may not be modified, disassembled or reverse engineered
in any way without written authorization from Advanced Gravis.

Mega-Em may be distributed in unmodified form freely to all Gravis
UltraSound owners, provided no charge is made for it, with the exclusion
of BBS (Bulletin Board System) service charges.

All trademarks and registered trademarks are the property of their
respective owners.


2.0 INTRODUCTION
-----------------

Mega-Em is a software program which allows you to use your Gravis UltraSound
to emulate the following sound devices:

* Roland MT-32/LAPC1
* Roland Sound Canvas/General MIDI
* Roland MPU-401 MIDI interface
* Sound Blaster (Basic version only - not Sound Blaster Pro)

In addition Mega-Em can also to replace the UltraMID TSR.

Mega-Em effectively combines all previous UltraSound TSR programs -
(IW)SBOS, UltraMID and older versions (2.xx) of Mega-Em.

Mega-Em currently requires the following to function correctly:

* A 386 or better AT class personal computer.
* A hard drive.
* A Gravis UltraSound/MAX/ACE/PnP card.
* An Expanded Memory Manager, such as EMM386, QEMM386 or 386MAX.
* Approximately 128k of free Expanded Memory (EMS).
* DOS 3.3 or later (EMM386 must be from DOS 5.0 or later).

Mega-Em will not work in an OS/2 or Windows DOS box.


3.0 INSTALLATION
-----------------

If Mega-Em was installed with the rest of your UltraSound software Mega-Em
is already installed correctly and you do not read this chapter.

If you downloaded Mega-Em from a BBS, FTP site etc., follow the following
instructions:

Step 1. Change to the directory where your UltraSound software is
        installed. For example, if your UltraSound software is installed
        in C:\ULTRASND, type the following:

        C: <ENTER>
        CD \ULTRASND <ENTER>

Step 2. Unzip the Mega-Em distribution archive into this directory. For
        example if the archive is on a floppy disk in drive A:, you would
        type:

        PKUNZIP A:\MEGA* <ENTER>

        If you are prompted with a message asking if you want to
        overwrite an existing file, press 'y'. Note that you will most
        likely overwrite an older version of Mega-Em.

Mega-Em is now installed and ready to use.


4.0 SETUP
----------

Unlike old versions, Mega-Em now has an interactive setup program. You
MUST set up Mega-Em before you can use it. If Mega-Em has not been set
up properly and you run MEGAEM.EXE, you will be forced into the setup
program. Alternatively you can run MESETUP.EXE to enter the setup.

The setup is self explanatory and will only be dealt with lightly here:

* Instructions on what keys to press are always listed at the bottom of
  the screen.

* Entering the configuration screen from the Main Menu is not compulsory.
  If you are configuring Mega-Em for the first time and just select
  "Save and Exit" you will configured with the default options.

* The default options will work for most users so don't change them
  unless you need to and understand what they do.

5.0 MEGA-EM USAGE
------------------

5.1  Overview
5.2  Command line options
5.3  Configuring Software For Use With Mega-Em


5.1 OVERVIEW

Before you can use any Roland or Sound Blaster software you must load
Mega-Em. You can do this from the command line by typing:

  MEGAEM <ENTER>

If you like, you can edit your AUTOEXEC.BAT file so Mega-Em will be
automatically load whenever you boot your computer. Just add the following
line to the end of your AUTOEXEC.BAT:

  MEGAEM

If you wish to use any command line options, type them after MEGAEM:

  MEGAEM [options] <ENTER>


Normally you can leave always leave Mega-Em loaded. Occasionally it may
interfere with other UltraSound software or you may wish to use another
UltraSound TSR (e.g. (IW)SBOS or UltraMID). If this happens, unload
Mega-Em by typing:

  MEGAEM -U <ENTER>

If you need to change Mega-Em's options just to run a particular piece of
software (such as Roland MT-32 software) you can invoke the interactive
menu by typing:

  MEGAEM -I <ENTER>

Any options you change will stay in effect until you run Mega-Em again.

If you run Windows in enhanced mode (usually this is the default mode)
Mega-Em will be automatically uninstalled. When you exit Windows you must
manually load Mega-Em again. Mega-Em will not be uninstalled if you run
Windows in standard mode (type WIN /S <ENTER>) however the UltraSound
Windows drivers will not work and you can NOT emulate a Roland or Sound
Blaster under Windows.


5.2  COMMAND LINE OPTIONS

Only a few of Mega-Em's options are configurable from the command line.
The rest you must configure from the interactive menu (see the -I option).

-? or -H      Displays the Mega-Em help screen.

-U or -F      Turn off emulation and uninstall Mega-Em from memory.

-SC or -GM    Selects Sound Canvas/General MIDI emulation (as opposed to
              MT-32 emulation). This is the default mode of operation
              for Mega-Em.

-MT           Selects MT-32 emulation (as opposed to Sound Canvas/General
              MIDI emulation).

-I or -ION    Runs Mega-Em in interactive mode. This option does nothing
              if Mega-Em is configured for interactive mode.

-IOFF         Disables interactive mode so Mega-Em runs in command line
              mode. This option does nothing if Mega-Em is configured for
              command line mode.

-Mxxx         Set music volume level (relative to master volume level).
              xxx = 1-100. The default level for Mega-Em is 80.

-Vxxx         Set master volume level. xxx = 1-100. The default level for
              Mega-Em is 100.

-L            Enable the UltraSound line in. This option is only necessary
              for people with old UltraSound software which does not include
              Ultramix. Normally you should use Ultramix to set you line in
              setting.

-M            Enable the UltraSound mic in.  This option is only necessary
              for people with old UltraSound software which does not include
              Ultramix. Normally you should use Ultramix to set you mic in
              setting.


5.3 CONFIGURING YOUR SOFTWARE FOR USE WITH MEGA-EM.

Software programs are configured for different sound devices in many
different ways. Some will attempt to auto-detect sound devices and use
the best one it finds, others will prompt you during the running of the
program. Most common is the use of a setup program, usually called SETUP,
INSTALL or CONFIG. Others require you to delete a configuration file,
after which you will be able to change the configuration. For the correct
procedure for a specific program, you should consult the program's manual.

Before configuring your software, you should make sure Mega-Em is loaded.
If the program is of the type that auto-detects, just run it and it should
detect the devices Mega-Em is emulating. If you are prompted to select
one or more sound devices you should select them in the following order:

UltraSound
Sound Blaster (for Sound) and General MIDI (for Music)
Sound Blaster (for Sound) and Roland MT-32 (for Music)
Sound Blaster
General MIDI
Roland MT-32
AdLib

NOTES: 'Roland' without any model number usually refers to the MT-32.

       'LAPC1' is equivalent to MT-32 when using Mega-Em.

       'FM' refers to AdLib/Sound Blaster music.

       The above order is occasionally not the best. If your selection
       sounds bad, try selecting a different sound device.

       If you have selected 'UltraSound' for one sound device, you MUST
       select 'UltraSound' or 'None' for any other sound devices. Mega-Em
       can NOT emulate sound devices while other UltraSound software is
       running.

Sometimes you will be prompted to enter your sound card settings. For
sound devices Mega-Em is emulating the settings are as follows:

  MIDI interface:              Roland MPU-401.
  Roland base address:         330 (hex) unless you changed it to 300 (hex)
                               in the Mega-Em Setup.
  Roland IRQ:                  2/9
                                OR
                               UltraSound SB/MIDI IRQ if you are doing
                               MIDI in with the UltraSound MIDI port
                                OR
                               Real MPU-401 IRQ setting if you are doing
                               MIDI in with a real MPU-401
  Sound Blaster base address:  The same as your UltraSound Base address
                               (usually 220).
  Sound Blaster IRQ:           The same as your UltraSound SB/MIDI IRQ. 
                               If you are unsure, type SET <ENTER> at the
                               DOS prompt. The last number on the line
                               starting with "ULTRASND=" is your Sound
                               Blaster IRQ.
  Sound Blaster DMA channel:   1

Your software should now be ready to run. The next time you run the software
make sure Mega-Em is loaded since many programs crash when configured for a
sound device that does not exist (or is not being emulated).


6.0 COMPATIBILITY PROBLEMS WITH VARIOUS SOFTWARE
-------------------------------------------------

6.1    Software that requires 386 protected mode and can not run under a
       memory manager.
6.2    Software which is incompatible with Mega-Em.
  6.2.1  Incompatibilities with all of Mega-Em's Emulations.
  6.2.2  Incompatibilities with Roland Emulation
  6.2.3  Incompatibilities with Sound Blaster DAC Emulation.
  6.2.4  UltraSound software that will not run with Mega-Em loaded.
6.3    Specific software with known compatibility problems.
  6.3.1  Harpoon (Roland)
  6.3.2  Darkseed (Sound Blaster DAC)
  6.3.3  Kings Quest I, Firehawk, Stellar 7 (Sound Blaster DAC)
  6.3.4  Budokan (Roland).
  6.3.5  Vectordemo (Sound Blaster DAC)
  6.3.6  Netroom 3
  6.3.7  Privateer


6.1 SOFTWARE THAT REQUIRES 386 PROTECTED MODE AND CAN NOT RUN UNDER A
    MEMORY MANAGER.

Many high-end games use the 386 protected mode to achieve superior
performance. A few of these require full control of the system and
will not operate if the system is already in protected mode, such as when
a memory manager is loaded (excluding HIMEM.SYS and several shareware
EMMs).

Mega-Em uses the power of 386 protected mode for its emulation, and hence
the aforementioned games are not compatible with Mega-Em. Examples of
known games which exhibit such problems are CYBER RACE, COMANCHE and ULTIMA 7.

The only solution is to use (IW)SBOS to emulate a Sound Blaster.


6.2 SOFTWARE WHICH IS INCOMPATIBLE WITH MEGA-EM.

6.2.1 INCOMPATIBILITIES WITH ALL OF MEGA-EM'S EMULATIONS.

Software Title          Reason                         Solution

Comanche                Protected mode conflict        Use (IW)SBOS
Cyberrace               Protected mode conflict        Use (IW)SBOS
Ultima 7                Protected mode conflict        Use (IW)SBOS
Windows                 Protected mode conflict        Use UltraSound
                                                       Windows drivers

6.2.2 INCOMPATIBILITIES WITH ROLAND EMULATION.

Software Title          Reason                         Solution

Most Legend Adventures  Needs smart mode compatibility Configure for Sound
                                                       Blaster Music

6.2.3 INCOMPATIBILITIES WITH SOUND BLASTER DAC EMULATION.

Software Title          Reason                         Solution

Noctropolis             Possibly buggy sound driver    None


6.2.4 ULTRASOUND SOFTWARE THAT WILL NOT RUN WITH MEGA-EM LOADED.

The following UltraSound software will not work correctly if Mega-Em
is loaded. To make it work unload Mega-Em by typing MEGAEM U <ENTER>.

Software Title             Description of failure

UltraSound Setup (SETGUS)  NMI (SBOS Vector) test fails


6.3 SPECIFIC SOFTWARE WITH KNOWN INCOMPATIBILITIES.

6.3.1 HARPOON (Roland).

While Harpoon does appear to have an MT-32 sound option, it does not
appear to use the Roland MPU-401 MIDI interface. Almost all other
software which supports Roland sound devices uses the MPU-401 interface.
Hence this is what Mega-Em uses for its emulation, and unfortunately is
not compatible with Harpoon.

6.3.2 DARKSEED (Sound Blaster DAC)

You may find Mega-Em gives unstable performance with Darkseed. The Sound
Blaster DAC drivers appear to be buggy. There is an update patch available
for Darkseed and this should correct any problems.

6.3.3 KINGS QUEST I, FIREHAWK, STELLAR 7 (Sound Blaster DAC)

These games are hard coded to use an IRQ of 7. If your Sound Blaster/MIDI
IRQ is not 7 they will not work.

6.3.4 BUDOKAN (Roland).

To use Budokan successfully with Mega-Em, you should load it by typing
BUDO Mt32 <ENTER>. If you choose Roland sound from within the game, you
may get no sound output, and the system may crash.

6.3.5 VECTORDEMO (Sound Blaster DAC)

This program may not always detect the Sound Blaster IRQ correctly. To
overcome the problem, you should always run the install section of the
demo before executing the demo.

6.3.6 NETROOM 3

Mega-Em is not compatible with Netroom's cloaking features. To disable
these features run CUSTOMIZ, select CUSTOM SETUP and turn off system and
video cloaking in the custom setup menu. Note that the cloaked utilities
(DPMI server, disk cache e.t.c.) supplied with Netroom can not be used
with Mega-Em.

6.3.7 PRIVATEER

If you configure Privateer to use Sound Blaster and General MIDI
(or Waveblaster) you can not use IRQ 7 for your Sound Blaster IRQ. This
appears to be a bug in the game.


7.0 SOLUTIONS TO COMMONLY ENCOUNTERED PROBLEMS
-----------------------------------------------

PROBLEM:   When using Mega-Em, the sound is choppy or there is a lot of
           static and clicks.

SOLUTION:  Many systems allow the ISA bus clock speed to be increased
           beyond the standard speed of 8 MHz. The Gravis UltraSound is
           designed to conform to the standard, and will not work reliably
           on systems with high bus clock speeds. You should be able to
           reduce the bus clock speed in one of your CMOS setup menus. The
           CMOS setup is usually accessible by rebooting your computer.

           Just because your other UltraSound software seems to be working
           correctly, this does not mean your bus speed is correct. However
           if you reduce your bus speed and this does not correct any
           problems, then feel free to put it back to its original setting.


PROBLEM:   Mega-Em gives a warning about the system's NMI not working
           correctly. The NMI is required or else protected mode software
           will not work correctly.

SOLUTION1: Your system requires parity checking to be enabled for the NMI
           to work. Reboot you computer and turn on parity checking in the
           CMOS setup.

SOLUTION2: You have upgraded your CPU and have not changed the CPU selection
           jumpers on your motherboard. This problem is common with 486SX to
           486DX upgrades. Check your motherboard manual to make sure the
           jumpers are set correctly.

SOLUTION3: Your system has been shipped with either the CPU selection jumpers
           set incorrectly (most common on 486 motherboards) or the parity
           checking/NMI jumper has been removed. Check your motherboard
           manual to make sure the jumpers are set correctly.

SOLUTION4: You may be unfortunate and have a non-IBM compatible motherboard
           which does not have a working NMI. This is most common on cut rate
           486 motherboards. You should have your vendor replace it with an
           IBM compatible motherboard.


PROBLEM:   Mega-Em is using the UltraSound MIDI port to provide MIDI in
           services and it is losing midi data causing problems such as
           stuck notes.

SOLUTION:  This MIDI in feature requires a fairly fast CPU (fast 386/slow 486)
           to work correctly. In addition setting your GF1 IRQ (IRQ1) to a
           number as small as possible and below your SB/MIDI IRQ can improve
           performance.


PROBLEM:   The systems hangs while the message "Testing NMI..." is
           displayed on the screen.

SOLUTION:  Run MESETUP, set the "User Level" to "Advanced", then set
           "Disable NMI" to "Yes". This will stop Mega-Em from using the
           system NMI. Note that most protected mode software will not
           work with Mega-Em if the NMI is disabled.


8.0 ANSWERS TO COMMONLY ASKED QUESTIONS
----------------------------------------

QUESTION: Could Mega-Em be modified so it does not require a 386 memory
          manager, and hence work with software such as Comanche,
          Ultima 7 etc. ?

ANSWER:   No. Mega-Em requires 386 protected mode for it's emulation to
          operate. It uses the memory manager as a means of entering
          protected mode, while still remaining compatible with a wide
          variety of software. Mega-Em can not work with the above
          mentioned software because they can not coexist with other
          protected mode software.


QUESTION: Well how come (IW)SBOS works with the above mentioned games?

ANSWER:   While (IW)SBOS is indeed a software emulator, it is hardware
          assisted by specific features built into the UltraSound card and
          makes no use of any protected mode features of the processor.


QUESTION: Can I have the source code?

ANSWER:   No.


QUESTION: Why doesn't Mega-Em support OS/2?

ANSWER:   Mega-Em requires operating system privileges to function. OS/2,
          like many multitasking operating systems will not allow DOS
          programs to gain these. Most DOS memory managers will. In addition
          OS/2 does not allow the systems NMI (non maskable interrupt) to be
          used, making it impossible for any DOS based software to emulate
          sound devices.


QUESTION: Mega-Em gives me a warning saying I have a pre 3.xx UltraSound
          board and Roland emulation will not work with most protected mode
          software. What gives?

ANSWER:   Mega-Em is supporting your UltraSound card as best in can. However
          the early revisions of the UltraSound were never meant to emulate
          Roland sound devices and do not have the necessary logic to
          provide protected mode emulation. Despite this Mega-Em will
          still give Roland emulation for real mode software.


9.0 CREDITS
------------

Jayeson Lee-Steere:  Main concept, design and programming, setup program and
                     documentation.

Lee Ingram:          Optimized patch set.

David Mercier,
Curtis Patzer,
Darren Schueller:    Internal development tools.

Forte Technologies:  UltraMID digital and MIDI sound engine.


10.0 MEGA-EM REVISION HISTORY
-----------------------------

VERSION 3.10

* UltraSound applications no longer cause a lockup when they are loaded
  with Mega-Em running on an Interwave.

VERSION 3.09

* Text no longer refers to GF1 when running on an Interwave based card.

* AdLib/Sound Blaster FM emulation now works with protected mode games.

* IWSBOS can no longer be run when Mega-Em is loaded.

VERSION 3.08

* The ULTRASND and ULTRA16 environment variables are no longer required
  when using an UltraSound Plug & Play card.

* Now works correctly on UltraSound Plug & Play cards with the base address
  set to something other than 220 hex.

* No longer detects older UltraSound cards as UltraSound PnP cards.

* Fixed some problems with digital sound getting stuck at the end of playing
  a sample.

VERSION 3.07b (Beta)

* Added support for the coming UltraSound Plug & Play card.

VERSION 3.06b (Beta)

* Revamped AdLib/Sound Blaster FM emulation.

* Buildpats is no longer required.

VERSION 3.05b (Beta)

* Added AdLib/Sound Blaster FM emulation.

VERSION 3.04b (Beta)

* Fixed a bug in protected mode Roland emulation which was preventing
  certain LucasArts products from working properly.

* Improved DOS4GW auto-patching.

* Fixed a bug in the Sound Blaster emulation. Now Magic Carpet and
  other games work better.

* Added check to make sure emulation is working correctly to catch any
  hardware conflicts.

* Added -L (enable line in) and -M (enable mic in) for people who don't
  have Ultramix.

* Fixed a bug in the UltraMID emulation which caused some applications
  to crash when playing back 8 bit samples.

* Fixed some small bugs in BUILDPATS.

* SBOS and old versions of Mega-Em can no longer be run with Mega-Em
  loaded.

* Volume controls now work properly.

VERSION 3.03b (Beta)

* First release of the all-new, rewritten Mega-Em. Emulates Roland
  Sound Canvas/General MIDI/MT-32, Sound Blaster and UltraMID. Improvements
  over older (2.xx) versions of Mega-Em include compatibility with most
  protected mode software, interactive setup, single executable, better
  sounding patch set, faster loading time, allows UltraSound software to
  run at the same time as Mega-Em, automatic reloading of patch set when
  necessary, automatically unloads when Windows is run and automatically
  takes advantage of extra hardware (the 16 bit record/playback CODEC) on
  the UltraSound MAX. Sound Blaster music (FM) support is not included.

                          -- END OF FILE --
