VOGONS

Common searches


First post, by noshutdown

User metadata
Rank Oldbie
Rank
Oldbie

when i removed emm386 from config.sys, the "dos=high" line doesn't seem to work, and dos is completely loaded in conventional memory.
also, are there any dos games very demanding in conventional memory(needs over 600kb), yet incompatible with emm386?

Reply 1 of 17, by kixs

User metadata
Rank l33t
Rank
l33t

emm386 is just a "driver" and enables UMB and EMS. You can disable EMS memory if some game isn't compatible with it. But the driver itself should work fine.

Requests are also possible... /msg kixs

Reply 2 of 17, by Scali

User metadata
Rank l33t
Rank
l33t
kixs wrote:

You can disable EMS memory if some game isn't compatible with it.

There isn't a lot of software that takes advantage of EMS. I would suggest not using any EMS unless an application needs it.
Most software uses XMS.

And yes, there is software that needs a lot of memory and isn't compatible with EMM386. For DOS I have a boot menu with 6 different memory configurations:

MENUITEM= FULL,Full configuration (No EMS) MENUITEM=DEMO,EMS configuration […]
Show full quote

MENUITEM= FULL,Full configuration (No EMS)
MENUITEM=DEMO,EMS configuration (Autosizing EMS/XMS memory)
MENUITEM=DEMO2,Standard configuration (No EMS/v86 mode)
MENUITEM=NOCD,Standard configuration without CD-ROM drivers (No EMS/v86 mode)
MENUITEM=BASIC,Basic configuration for DOS extenders (No EMS/XMS/v86 mode)
MENUITEM=BASIC2,Basic configuration without CD-ROM drivers (No EMS/XMS/v86 mode)

I posted them here some years ago: http://www.pouet.net/topic.php?which=9495&page=1

So I had some special configurations that didn't enable any EMS, XMS or v86 mode, and loaded as few drivers as possible, to get the maximum amount of free conventional memory.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 3 of 17, by kixs

User metadata
Rank l33t
Rank
l33t

I always use NOEMS option. But I rarely play games these days. So I really can't says about compatibility with loaded EMM386.

Requests are also possible... /msg kixs

Reply 4 of 17, by NeoVamp

User metadata
Rank Newbie
Rank
Newbie

Blackthorne needs EMS for some reason, which is odd because its a 1994 game. You'd think EMS was phased out by then.

Personally I had 2 memory configs, one with EMS and one without. but since I discovered that JEMM is incompatible with SoftMPU I changed those two
to one with JEMM+EMS and 629K and one with EMM386+EMS and 622K free. which seems to do the trick.

Pentium 1 - 233MHZ MMX / 96MB / Soundblaster AWE32 / MT-32 / SC-55 / SB-55
Diamond Stealth 64 / Diamond Monster 3D (4MB) / Dos 7.1 / 120GB IDE HDD

Reply 5 of 17, by collector

User metadata
Rank l33t
Rank
l33t

This forum is for DOS games on modern PCs. This should probably be in Marvin since it is about the an ancient OS.

The Sierra Help Pages -- New Sierra Game Installers -- Sierra Game Patches -- New Non-Sierra Game Installers

Reply 6 of 17, by NeoVamp

User metadata
Rank Newbie
Rank
Newbie
collector wrote:

This forum is for DOS games on modern PCs.

Where does it say that though? The forum description only states "Getting old DOS games working."
We even have a "Dos 6 conventional memory tricks" thread going on here. (he probably should have posted it in there though)

Pentium 1 - 233MHZ MMX / 96MB / Soundblaster AWE32 / MT-32 / SC-55 / SB-55
Diamond Stealth 64 / Diamond Monster 3D (4MB) / Dos 7.1 / 120GB IDE HDD

Reply 7 of 17, by jesolo

User metadata
Rank l33t
Rank
l33t
noshutdown wrote:

when i removed emm386 from config.sys, the "dos=high" line doesn't seem to work, and dos is completely loaded in conventional memory.
also, are there any dos games very demanding in conventional memory(needs over 600kb), yet incompatible with emm386?

You didn't specify which DOS version you're running, but I'm assuming it's DOS 6.22 or an earlier version?

You should still be able to load DOS into the high memory area without having to load an expanded memory driver (like EMM386.EXE).
You do, however, have to load HIMEM.SYS in your Config.sys file before you can use the "DOS=HIGH" command.

Just take note that, if you load EMM386.EXE (either with the RAM or NOEMS switch), you can also load other drivers (like your mouse, CD-ROM, etc.) into the upper memory area via the LOADHIGH (or LH) command (in your Autoexec.bat) or the DEVICEHIGH command (in your Config.sys), until that memory space is used up.
This frees up some conventional memory, which some DOS games desperately need.

The order in which you load your drivers into the upper memory area will also determine how much conventional memory you can free up.
Try and load those that takes up the most memory first and then move onto the ones that takes up less memory.

A typical example of what your Config.sys file would look like:

DEVICE=C:\DOS\HIMEM.SYS /TESTMEM:OFF
DOS=HIGH,UMB
DEVICE=C:\DOS\EMM386.EXE NOEMS

By placing the DOS=HIGH,UMB on the second line, this can (in some cases), save memory because it is loading DOS into upper memory before loading the memory manager.

Reply 8 of 17, by Jorpho

User metadata
Rank l33t++
Rank
l33t++
noshutdown wrote:

when i removed emm386 from config.sys, the "dos=high" line doesn't seem to work, and dos is completely loaded in conventional memory.

According to http://www.computerhope.com/ac.htm , you need to use HIMEM.SYS before that line.

If you have a PCI motherboard (i.e. Socket 7 or later), UMBPCI is very popular.

[EDIT: Ninja'd.]

Scali wrote:

And yes, there is software that needs a lot of memory and isn't compatible with EMM386.

Ultima VII is the only one people seem to ever mention.

Reply 9 of 17, by Stiletto

User metadata
Rank l33t++
Rank
l33t++
NeoVamp wrote:
collector wrote:

This forum is for DOS games on modern PCs.

Where does it say that though? The forum description only states "Getting old DOS games working."
We even have a "Dos 6 conventional memory tricks" thread going on here. (he probably should have posted it in there though)

It says it in the forum name: "Very Old Games On New Systems"

Prior to the invasion of the "retro hardware" collectors and the eventual creation of the Marvin subforum - the VOGONS forum, in total, was *only* for compatibility hacks/patches/tips trading, emulators, wrappers and associated utilities discussion.

Check http://vogons.zetafleet.com in the Internet Archive if you don't believe me.

Back then, a "modern system" meant a system running Windows XP. 😀

I'm user account #8 and know what I'm talking about.

"I see a little silhouette-o of a man, Scaramouche, Scaramouche, will you
do the Fandango!" - Queen

Stiletto

Reply 10 of 17, by noshutdown

User metadata
Rank Oldbie
Rank
Oldbie
jesolo wrote:

You didn't specify which DOS version you're running, but I'm assuming it's DOS 6.22 or an earlier version?

You should still be able to load DOS into the high memory area without having to load an expanded memory driver (like EMM386.EXE).
You do, however, have to load HIMEM.SYS in your Config.sys file before you can use the "DOS=HIGH" command.

of course i have himem.sys loaded. you know emm386 wouldn't work without it, and i just removed the emm386 line.
its plain simple aswell:

device=himem.sys
rem device=emm386.exe noems
dos=high,umb
files=40
buffers=10

mem indicates that all of dos are loaded in conventional memory, and there is no "upper memory" at all. "lh smartdrv 4096" doesn't work either.
oh and i am actually using win98 dos mode(f8 menu, not a dos window), does it behave very differently from dos6.22?

Reply 11 of 17, by Jorpho

User metadata
Rank l33t++
Rank
l33t++

On previous occasions, people have experienced problems using upper memory due to a virus infection. You might want to scan your PC before you start tearing your hair out looking for alternative explanations.

Reply 12 of 17, by jesolo

User metadata
Rank l33t
Rank
l33t
noshutdown wrote:
of course i have himem.sys loaded. you know emm386 wouldn't work without it, and i just removed the emm386 line. its plain simpl […]
Show full quote

of course i have himem.sys loaded. you know emm386 wouldn't work without it, and i just removed the emm386 line.
its plain simple aswell:

device=himem.sys
rem device=emm386.exe noems
dos=high,umb
files=40
buffers=10

mem indicates that all of dos are loaded in conventional memory, and there is no "upper memory" at all. "lh smartdrv 4096" doesn't work either.
oh and i am actually using win98 dos mode(f8 menu, not a dos window), does it behave very differently from dos6.22?

One thing that stands out is that you need to also remove the "UMB" in your DOS=HIGH,UMB statement, since you are not loading an expanded memory driver (however, I think that DOS will just ignore it if there are no UMB available).
I also noticed that you do not have a path specified in front of your "DEVICE" statements. I would suggest that you add the path in the front of your "DEVICE" statement (like in my example).
You cannot "LH" anything without EMM386.EXE loaded, since EMM386.EXE is what gives you access to the UMB.

Regardless of the above, I would strongly recommend that you set up a boot (startup) menu configuration - refer this thread for a guide: How to create a boot (start up) menu under Windows 9x/ME
The "F8" menu option didn't always work for me.

Jorpho also made a good point and this is an option that you also might want to explore.

Reply 13 of 17, by Zup

User metadata
Rank Oldbie
Rank
Oldbie

I remember having problems with games that complained about EMS and V86 mode.

You can use NOEMS, but if the game complains about V86 you had to skip EMM386.

I have traveled across the universe and through the years to find Her.
Sometimes going all the way is just a start...

I'm selling some stuff!

Reply 14 of 17, by Scali

User metadata
Rank l33t
Rank
l33t
kixs wrote:

emm386 is just a "driver" and enables UMB and EMS.

I'd like to clarify this...
EMM386 is not 'just' a driver.
It switches the CPU to v86 mode (requiring a 386) and then emulates an EMS card by remapping physical memory to an EMS 'window' in a very similar way that a real EMS card would do. It is very slow compared to real EMS, but at least it makes your system compatible with software that requires EMS.
The problem is with this v86 mode: some software will not work correctly under it (mainly when the software itself has some kind of DOS extender that wants to switch the CPU into a special mode).

Real EMS dates from the 8086/8086-era, and obviously doesn't require a 386 or v86-mode. Some 286/386 chipsets have support for EMS in the BIOS, which is much preferred over using EMM386 to emulate it. You get better performance, and you don't need to have v86 mode, so you don't get into compatibility problems.

So the short answer is: use the NOEMS switch unless you really need EMS memory. And avoid using EMM386 unless you really need the extra conventional memory it can free up by using UMBs. The compatibility and performance issues aren't worth the trouble.

http://scalibq.wordpress.com/just-keeping-it- … ro-programming/

Reply 15 of 17, by Sammy

User metadata
Rank Oldbie
Rank
Oldbie

i think it also depends on the mainboard how many upper memory you can access.

I have a Nforce2 Mainboard A7N8X-X, with that i can not get access to upper memory.
Dos is always in conventional Memory.

Emm386 reports "no page frame found".

And on other P4 Mainboards the UMBs are so small that only little driver like mouse oder keyb can be loaded in upper Memory but not big things like MSCDEX.

Reply 16 of 17, by gdjacobs

User metadata
Rank l33t++
Rank
l33t++
Sammy wrote:
i think it also depends on the mainboard how many upper memory you can access. […]
Show full quote

i think it also depends on the mainboard how many upper memory you can access.

I have a Nforce2 Mainboard A7N8X-X, with that i can not get access to upper memory.
Dos is always in conventional Memory.

Emm386 reports "no page frame found".

And on other P4 Mainboards the UMBs are so small that only little driver like mouse oder keyb can be loaded in upper Memory but not big things like MSCDEX.

I've seen problems with bootloaders (Grub) due to the memory mapping of the NForce2. There may be BIOS options to mitigate it, but I've never experimented with it.

All hail the Great Capacitor Brand Finder

Reply 17 of 17, by Gamecollector

User metadata
Rank Oldbie
Rank
Oldbie
Sammy wrote:

i think it also depends on the mainboard how many upper memory you can access.

The main culprit is the videocard.
If I use something like Matrox Mystique on P4P800 SE - I get around 92 kB of UMBs.
Modern videocards not support DOS and just grab all possible areas to itself.

Asus P4P800 SE/Pentium4 3.2E/2 Gb DDR400B,
Radeon HD3850 Agp (Sapphire), Catalyst 14.4 (XpProSp3).
Voodoo2 12 MB SLI, Win2k drivers 1.02.00 (XpProSp3).