Ultima and the AWE


This page is an effort to explain the 'hows, whys and wherefores' of getting Creative Labs' AWE32 series of cards to work with various Ultima games. ('cos most if not all predate the AWE - some by a long way.)

Note that this is by no means exhaustive. Due to the chicanery of PC setups there will inevitably be a million and one variables. My intention is to cover the common problems (However if you have something a little esoteric to share - be my guest!)
Now for the Real Stuff.


What's New: Sunday, March 28, 1999

What's New: Tuesday, April 07, 1998

Quick and Dirty Index

  1. Things to do First
  2. Which Ultimas support the AWE in native mode?
  3. Ultima Underworld I and II
  4. Ultima VIII: Pagan
  5. Black Gate and Serpent Isle
  6. Ultima IV: Quest of the Avatar
  7. Ultima VI: The False Prophet - Win95
  8. Status of other Ultimas
  9. AWE64 / SoundBlaster 32 / other AWE clones
  10. A note on the SoundBlaster Live! Cards
  11. Memory matters (I almost forgot to add this part)
  12. Credits
  13. Disclaimer-like hoobajoob

The Golden Tip - Do This First!.

The best advice before you start - Read The Fine Material. Both Creative and Origin do a reasonable job of their documentation. Some perusal may solve many problems encountered. If you do not have the manuals - I have this to say:

sToP HAnGiNg Out in WaREz GroOps, D000d! ;-)

Creative have been kind enough to provide some reasonbly good FAQ's on their cards. Namely Creative Labs' AWE32 FAQ and Creative Labs' AWE64 FAQ

As Creative have a tendency to update drivers on a fairly regular basis - and in my experience they also ship some old ones in their shrinkwrap packages (mine were ancient!) I suggest checking for newer versions (especially Windows) at

The SB16 / AWE File index at Creative

Now with that out of the way...


Which Ultimas support the AWE in native mode?
Out of the box - none of them. In fact Ultimas I - V have no music at all (on the PC version). U6 has SB / Adlib support (MT32/GM is also possible with Win95) as do later Ultimas.
However a little hacking around with Miles Drivers which usually are identified as DLL's or have the extension .ADV or .MDI you can get the Ultima Underworlds and Pagan to work in psuedo native mode.

To get these drivers you will need the set from Creative's FTP site at ftp://ftp.creaf.com/ The file is awe32a.exe
This did contain the driver used for Ultima VIII but no longer. This I'll get to later.
Fortunately the Underworlds are fairly easy to hack.


Ultima Underworld I and II
Step One.
Look for the MT32 Miles Driver in the relevant sound directory. This is called MT32MPU.ADV for Underworld I, DM05.ADV for UW2. Back them up in case soemthing goes wrong (unlikely)

Step Two.
Copy SBAWE32.DRV from the Miles driver set you dowloaded into the sound directory. Rename them appropriately (MT32MPU.ADV and DM05.ADV respectively).
Step Three
Look for the file UW.MT (Both games). Rename it UW.SBK
When setting sound, choose the MT32-LAPC1 option for music, SBPRO for sound. Easy, isn't it?

Ultima VIII: Pagan?

Yes - it can be done. Creative Labs and many other large games archives have a small zip file called u8awe32.zip (24KB). This contains the required Miles driver (AILAWE32.DLL) to add native support, and a text file or two.
All you need to do is select MT32 in the install section. Exit the install / setup. you will see a file called AILXMI.DLL. This is the driver for your current selection. All you need to do is COPY the AILAWE32.DLL file to AILXMI.DLL in the ULTIMA8 directory.
Then start the game as normal - then be amazed at the lift in quality!


Black Gate (VII) and Serpent Isle (VIIpt2)
Alas, there isn't a clean method of getting native support - they too use Miles, but for some reason tried and true methods like the above do not work. Believe me, I've tried everything.
There is a patch so that U7 and SI can use General MIDI synths, created by Newton Dragon. The precise URL escapes me at this time, but rest assured - it's on the Dragon's FTP site, the Ultima Archive or somewhere.
However whilst Newton has done a sterling job, the AWEUTIL TSR renders it all but useless IMO in most circumstances, as it leaves little room for the actual game - more often than not, the games will complain about the lack of conventional memory.
All is not lost though. You can use MT32 emulation which, while making the SFX sound odd, is better than nothing. Set the music in the install to MT32, and before running the games invoke the following.

AWEUTIL /EM:MT32

This should do the trick. However if this does nothing for you, you can fall back on SBPro. With one little addition:

AWEUTIL /C:50

Which will give the sound and music a little more body (SBP being too thin IMHO).
The C:50 is just an example; adjust this number as you see fit.


Ultima IV: Quest of the Avatar

There is an excellent patch for Ultima IV: Quest of the Avatar by Aridindae Dragon (Is that OK mate? Did I spell it right?) at http://weber.u.washington.edu/~draug/ - it enables AWE32 support in native mode (along with many other modern cards like Turtle Beach and Ensoniq) and as a bonus includes many useful features Lord British left out, like an 'Exit to DOS' key :-)


Ultima VI - The False Prophet (Win95 only!)

Yes Ultima VI can have wavetable sounds if played in a Windows 95 DOS Box (Not native DOS). This requires a recent set of Win95 AWE Drivers and the AWE Control Panel - check your driver / setup disks or Creative's FTP / WWW site. Have a copy of the MT32 Soundbank (synthmt.sbk) handy also, as you'll need it.

What you need to do is:

  1. Fire up the AWE Control Panel and turn on MPU401 emulation. (Found under 'Device')
  2. Select the MT32 Soundbank as necessary (Synth tab)
  3. Select MT32 / LAPC-1 in the Ultima VI install / sound setup
  4. Fire up U6 in a DOS box and enjoy!

Other Ultimas
Ultimas I through III did not have music on the PC versions - only the Apple and C128 versions had this feature as far as I know. If there are patches in the works I would be interested to hear about them!

Savage Empire and Martian Dreams use what I thought was essentially the Ultima VI engine, I've been corrected recently and as far as I know there are no patches for them - feel free to correct me further however!

Ultima Online and Ultima: Ascension, being Windows native should be supported, obviously. :-)


I have an AWE64 / SoundBlaster 32 / other AWE clone. Do these tips still apply?

Absolutely. They are equally applicable to Plug and Play versions of the AWE. If you are unsure, check your docs and the FAQ's mentioned at the top of the page
Both mentioned above are supposed to be 100% compatible with the legacy AWE32, so as long as you have the relevant TSR's and drivers mentioned (and have your boards installed OK - this is where PnP has problems in my experience) there should not be a problem.


A few notes on the SoundBlaster Live!

I've been seeing queries both on usenet and via email regarding getting the Ultima Series, in particular the Black Gate and Serpent Isle running on systems that use the Soundblaster Live! (or its Value sibling).
Unfortunately the news on that front isn't too good. It is apparent that the DOS drivers for the live require the use of EMS memory (despite everyone else putting EMM386 requirements to the sword years ago..) and will not work at all without them.
This effectively renders Black Gate and Serpent Isle mute, as the Voodoo memory manager disagrees strongly with EMS. At the time of writing there appears to be no workarounds or flat-memory model driver for that card.
My suggestions for folks looking into this card - DON'T. It's basically a Windows-specific card (I've not seen support aside Windows and DOS, although rumours of a Linux binary have been noted) and you would be better off with an AWE64 or similar if available and playing Ultima is important.
You can also pressure Creative Labs to produce a real-mode driver, or OSI to rewrite an updated U7. You might be pushing uphill though.


Memory and the AWE drivers

Memory management, whilst not usually in the scope of an FAQ like this one (I suggest Polychromic's page if you're in serious trouble), is still a problem for many. The release of Win95 "B" (otherwise known as OSR2.x or 4.00.1111) has made it difficult, if not impossible to dual boot, and the increased overheads memory-wise make getting the required amount of memory a challenge - especially for Ultima VII and SI.
This leaves the user with two choices: Try to wring as much memory out of MS-DOS as possible, or use a third party "upper memory block" manager. The latter will free up the most memory, but is hardware dependent and doesn't work for everyone. I'll state now that I'm not a motherboard / chipset guru, and I am unable to answer questions on these programs.
I recommend the following for starters. This method should free up enough memory to run most if not all of the Ultimas using the above tips.
If you are not running a compressed drive - and with hard disks cheap and large I'd imagine that would be most of you - make the following additions to the msdos.sys file in the root directory. To edit it , set it to non-hidden readable and non-system temporarily and load it into a text editor. Make a backup beforehand

	[Options]
	.
	.
	Drvspace=0
	Dblspace=0 

Save it, set the attributes back to read-only, hidden and system.
Get the Cute Mouse driver if you feel that your existing driver is too large. Try looking around Simtel mirrors or Micro Dragon's Files page.
If you're working only in DOS in this session - or working off a bootdisk - add the following to your config.sys file

	DEVICE=c:\windows\himem.sys
	DOS=HIGH,NOAUTO

If you have references to CTMMSYS.SYS or CTSB16.SYS - REM them out. They aren't necessary with modern drivers. Make sure that any AWE related Plug and Play drivers / detection programs (CTCM) are loaded however.
Divest the config. files of any unecessary drivers or TSRs - CD / Network / Anti-Virus / caches etc. Then let 'er rip; with luck you'll have around 580-590K free, which is just enough for AWEUTIL to work with.

It is my intention to publish a sample set of configuration files here - but I'll have to leave it for a future update (not too far away!)

RDOSUMB is the other method. It is a small driver/TSR that enables the creation of Upper Memory Blocks (UMBs) without the need for an EMM driver (which gives Ultima VII and VIIpt2 a heart failure due to the Voodoo memory manager these programs use) It works on many Pentium boards, including those using the Intel VX / Triton set. It can be found at http://sorry.vse.cz/dimension/rdos/rdosumb/ where the latest version and very detailed instructions can be found (and I urge you to read them carefully!)
Note: It seems that RDOSUMB doesn't cover many more modern chipsets - my Aladdin V for instance. If it doesn't look for a utility called UMBPCI which does a similar operation and appears to be more up-to-date.


Credits
The Ultima Dragons Internet Chapter, the denziens of rec.games.computer.ultima.dragons, Lawful Dragon for RDOSUMB, Michael Cunanan for the Ultima VI-Win95 info, Creative for releasing the cards themselves and of course Origin, basically because no Ultimas == no FAQ!

I hope this document has been of use to those of us fortunate enough to own both the fine products known as the Ultimas and the CLabs AWE32/64. If you have any more questions or comments (or better still leads on how to get more Ultimas working with the AWE) feel free to contact me at the address at the bottom of the page.


Psuedo-Legal Disclaimer-Waffle-Thingy

By the way - I am not employed by Creative Labs or Origin in any way, shape or form - I just like and use their products :-) All trademarks and the like are property of their respective owners.
The information provided is as accurate as possible at the time of writing, and you use such info at your own (extremely small really) risk. I ask for corrections for a reason y'know :-) I'm only one man!

Happy Adventuring, Contrapuntal Dragon.


Michael Fleming (Contrapuntal Dragon)
mfleming@zip.com.au

Copyright © 1997 Michael Fleming (Contrapuntal Dragon)
This page was created on Monday, 10 February 1997
Most recent revision Wednesday 5 January 2000
->Back to Main Index