Ultima VII and memory HOW-TO
This HOW-TO was created with the purpose of helping you having enough memory available to play Ultima 7: Black Gate and Ultima 7 part 2: Serpent Isle at their best performance.
First of all, I have to mention the following: the information on this HOW-TO works for many computers, but there's always the possibility that it won't work with yours. I will not be held responsible if anything undesirable happens to your machine, and remember, before attempting any of the changes this HOW-TO mentions, you should:
a) have some moderate knowledge
of MS-DOS
b) read the RDOSUMB.TXT file that comes with RDOSUMB
The BASIC INFO: label refers to topics that should be read for those who do not fulfill any of these two conditions.
Unless specified, whenever I mention U7 I am referring to both Ultima 7: Black Gate and to Ultima 7 part 2: Serpent Isle.
Ah, and remember that Ultima is a trademark of Origin systems, and MS-DOS and Windows are trademarks of Microsoft corp. Not that anyone would forget.
I. RDOSUMB
RDOSUMB is a program that lets you use your High Memory Area (HMA) without loading any Expanded Memory Manager like EMM386.EXE, QEMM, etc.
Ultima 7 will not run with any of
the EMM drivers, because of its peculiar (and annoying) memory system, called Voodoo.
Without EMM, you usually wouldn't be able to access your HMA, so you'd be forced to
install all your drivers on your Low Memory, leaving little space for some important
drivers, and the game itself, to run. RDOSUMB is here to solve this problem.
RDOSUMB can be downloaded from http://sorry.vse.cz/dimension/rdos/rdosumb/
BASIC INFO: The latest version, as of this date (15-06-2000), is 1f. Its programmers order the versions using hexadecimal values (ranging from 0-f) instead of decimals. So, for example, after version 09, the next versions aren't 10,11,12,etc but 0a,0b,0c,0d,0e,0f and only then 10,11,12...
Be sure to have the RDOSUMB.TXT file (included with the RDOSUMB zip) handy, because it's vital that you read the instructions within. I will try to guide you through this process, though.
II. Getting RDOSUMB to work
The chapter "INSTALLATION OF RDOSUMB" (specially lines 146 to 217) on the RDOSUMB.TXT file gives a complete description on how to setup RDOSUMB on your system. I will try to add some info and some help:
A good way to verify if your system works with RDOSUMB (and afterwards, when it's already working) is to use the multiple configuration that has been included in all MS-DOS vesions from 6.0 to 7.1 (included in Win95 OSR2 & Win98). Check Erinnyes Dragon's page for an excellent guide on, amongst other Useful Things You Should Know (tm), how to setup up multiple configurations on your system.
BASIC INFO: Oh, OK, I'll do all the dirty work =). Check Appendix A for the creation of a basic multiple configuration.
BASIC INFO: Although it's strongly recommended that you create a multiple configuration, if you don't want to mess around with your files, you can leave them alone and create a bootdisk
Insert a blank, formatted disk on your floppy drive and type at your DOS prompt:
sys a: <ENTER>
Now you can copy your config.sys and autoexec.bat files to that floppy with:
copy autoexec.bat a: <ENTER>
copy config.sys a: <ENTER>
Remember now that every time I tell you to edit config.sys or autoexec.bat, you should be editing a:\config.sys and a:\autoexec.bat, respectively.
Once, on a certain computer, RDOSUMB recognized its chipset, but then the system immediatly locked up. I wrote down the indicated chipset and used the * #X (see line 172 of RDOSUMB.TXT) option, where X was the number I wrote down. I had no further problems on that computer and U7 runs perfectly on it.
After doing what is mentioned on the beforementioned chapter, you can type at your DOS prompt
mem /f <ENTER>
You should at this moment have a big amount of HMA available! It's time to set up your config.sys and autoexec.bat for the best U7 performance.
III. Necessary system variables & drivers
The following line should be included on config.sys:
FILES=50
Usually 40 will do, but you
should have so much memory available that the extra 10 won't do any harm. Also, the number
of buffers should also be changed:
BUFFERS=30
Next don't forget to search for your Microsoft compatible mouse driver, and to add it to the convenient file. Don't forget to load it into HMA.
BASIC INFO: Your U7 manual should give you complete directions on how to search and install your mouse driver. If you don't have any, you can download the famous Cute Mouse 1.2 (the best version) from Micro Dragon's Home Page (which contains lots of other useful and interesting Ultima-related files).
After installing your mouse driver, there is
something you should change: if it was installed on config.sys (which is the case if the
file had the extension .SYS), you should change the word DEVICE for DEVICEHIGH. Example:
If it was:
DEVICE=C:\MOUSE.SYS
It should become:
DEVICEHIGH=C:\MOUSE.SYS
If it was installed on autoexec.bat (which is the case if the file had either the extension .COM or .EXE), you should add a LH on the beggining of the line. Example:
If it used to be:
C:\MOUSE.COM
It should become:
LH C:\MOUSE.COM
This way your mouse driver will most probably be loaded on HMA.
Remember that these two "rules" (adding HIGH at the end of DEVICE, on config.sys & adding LH at the beggning of the line on autoexec.bat) can be used on any program that you want to load on your configuration files.
You can also add other different things to your configuration files, like path, your favorite prompt, your keyboard configuration, doskey, etcetc but I will not go into that here as they aren't essential to improve the performance of U7.
IV. High quality SFX and music
IMPORTANT NOTE: The information on this chapter is (mostly) for users of 16 bit Sound Blaster cards, like the SBAWE32 and the SBAWE64. It was written after exchanging ideas with Contrapuntal Dragon and after reading his essential Ultima and the AWE - FAQ 2.0, which you should read in addition to this chapter. I haven't any knowledge of how to get the best sound performance on other sound cards, so if you don't have a SB, and have the knowledge to share, please do!
Back to the SB then. First you
should install Newton Dragon's sound patch for U7. It dramatically improves the SFX during
gameplay. You can get it from the above mentioned
Micro Dragon's Home Page
After following its installation instructions, you should add the
following line to your autoexec.bat (replacing C:\SB16 to the path where your AWEUTIL.COM
file is):
LH C:\SB16\AWEUTIL.COM /EM:GS /R:20 /C:50
You can use other emulation options instead of GS: GM and MT32. Personally, on my SBAWE64, I chose GS for two reasons:
I'm not a musician or sound technician, so you should try it for yourself and use the one that better suits your tastes. :) As I said, I'd appreciate receiving different opinions so I could upgrade this HOW-TO.
The /R:20 and /C:50 are completely optional, as they represent, respectively, the reverb and chorus values. They can be removed completely.
V. Smartdrive
Take advantage of your large amount of
free memory and install Smartdrive, to improve your gaming performance.
I have been using it with lage buffer values, for the best possible
performance. Although I haven't seen any disadvantage in this, I'd recommend the following
settings:
LH C:\WINDOWS\SMARTDRV.EXE /X C+ 16384 0
You should reduce 16384 to 8192 if you only have 16Mb RAM, and to 4096 if you only have 8Mb.
You can check Appendix B and Appendix C for a sample config.sys and autoexec.bat, respectively
VI. Appendixes
Appendix A: How to create a multiple configuration without many worries.
menuitem =
normal,Normal Configuration
menuitem =
u7,Configuration to play Ultima 7
[normal]
c. Add the following line at the end of the same file:
[u7]
Any change or addition being done during this HOW-TO to this file, should be inserted after this last line
d.
Save & close your c:\config.sys file and open
your c:\autoexec.bat (a:\autoexec.bat for bootdisk users)
e. Add the following lines to the beginning
of it (don't forget the : before normal):
%goto config%
:normal
f. Add the following lines to the end of your file:
goto exit
:u7
:exit
Any change or addition to this
file during this HOW-TO should be inserted between the
:u7
and the
:exit
lines.
Appendix B: Sample config.sys
rem ==================== BEGINNING OF CONFIG.SYS ====================
[menu]
menuitem=normal, Windows 98
menuitem=u7,Configuration for Ultima 7
menudefault=normal,2
menucolor=7,0
[normal]
device=C:\WINDOWS\himem.sys /testmem:off
device=c:\windows\emm386.exe RAM
dos=high,umb
devicehigh=C:\WINDOWS\COMMAND\display.sys con=(ega,,1)
Country=351,850,C:\WINDOWS\COMMAND\country.sys
DEVICEhigh=C:\CDROM12X\CD1200.SYS /D:CD003
[u7]
DEVICE=C:\windows\HIMEM.SYS
device=c:\util\rdosumb\rdosumb.com * #1D
DOS=HIGH,UMB
FILES=50
BUFFERS=25,0
FCBS=8
INSTALL=c:\util\rdosumb\upload.com /E
rem ==================== END OF CONFIG.SYS ====================
Appendix B: Sample autoexec.bat
rem ==================== BEGGINING OF AUTOEXEC.BAT ====================
@ECHO OFF
prompt $p$g
SET SOUND=C:\SBLASTER\CTSND
SET MIDI=SYNTH:1 MAP:E MODE:0
SET BLASTER=A220 I5 D1 H5 P330 E620 T6
goto %config%
:normal
path=C:\WINDOWS;C:\WINDOWS\COMMAND;c:\;c:\util;c:\dos
c:\windows\command\mode con codepage prepare=((850) C:\WINDOWS\COMMAND\ega.cpi)
lh c:\windows\command\mode con codepage select=850
lh c:\windows\command\keyb us,,C:\WINDOWS\COMMAND\keyboard.sys
lh c:\windows\command\doskey
goto end
:u7
path=C:\WINDOWS;C:\WINDOWS\COMMAND;C:\;C:\UTIL;C:\DOS;
C:\UTIL\RDOSUMB\UPLOAD.COM /D
lh C:\CTMOUSE.COM
SET CTCM=C:\SBLASTER\CTCM
lh doskey
lh C:\WINDOWS\CTCM
C:\SBLASTER\DOS\DIAGNOSE /S
C:\SBLASTER\DOS\MIXERSET /P /Q
C:\SBLASTER\DOS\AWEUTIL /S
lh c:\SBLASTER\dos\aweutil /em:gs /c:50 /r:20
lh c:\windows\smartdrv /x c+ 16384 0
cls
mem /f
lh command
goto end
:end
rem ==================== END OF AUTOEXEC.BAT ===================
BASIC INFO: Remember: Autoexec.bat and Config.sys are not case sensitive, so you don't have to worry about writing in capitals or not.
That's it, hope you enjoy U7 to its fullest! Any
questions/suggestions/opinions can be mailed to
prq@aeiou.pt
Pedro R. Quaresma, aka Binary Dragon.
Thanks to:
Copyright Pedro R. Quaresma
This How-To was first created in 10-09-1998 and it was last updated on 15-06-2000.