Proper EMM386 configuration

Getting old DOS games working on modern hardware. (DOSBox topics belong in DOSBox areas below, not here).

Proper EMM386 configuration

Postby Synaps3 » 2015-2-17 @ 01:29

I have an old 486 PC that I'm setting up and I'm trying to make it work like dosbox. Everything makes sense to me except emm386. I'm not really a noob to dos, but I've just been using dosbox and never an actual PC with DOS 6.22.

The problem is I can't get all games/programs to "just work" like they do in dosbox and the problem is related to emm386. Some programs seem to work fine without emm386 at all and others seem to need it. If I enable it in the config.sys, then the programs that didn't work before start working, and the other programs still work but seem to randomly lock up. Is it normal to have to enable and disable emm386 all the time to make everything work or is there something wrong with my configuration?

One strange thing is NOEMS is not listed when I type "emm386 /?". It only says off, on and auto.

CONFIG.SYS:
Code: Select all
FILES=40
DEVICE=C:\DOS\HIMEM.SYS /testmem:off
DEVICE=C:\DOS\EMM386.EXE NOEMS - makes some programs work, but others lock up
DEVICE=C:\DOS\EMM386.EXE ON - does nothing
[NO EMM386] - most programs work, some will not start
BUFFERS=15,0
DOS=HIGH,UMB
LASTDRIVE=Z
FCBS=4,0


+ plus a few DEVICEHIGHs
Systems:
BOARD | RAM | CPU | GPU
ASUS CUV4X-D | 2GB | 2 x PIII Tualatin ~1.5 GHz | Radeon HD 4650
DELL DIMENSION XPS 466V | 64MB | AMD 5x86 133MHz | Number Nine Ticket to Ride
Synaps3
Newbie
 
Posts: 39
Joined: 2015-2-17 @ 00:55

Re: Proper EMM386 configuration

Postby Synaps3 » 2015-2-17 @ 03:22

This seems to have fixed the problem:

Code: Select all
DEVICE=C:\DOS\EMM386.EXE RAM HIGHSCAN I=B000-B7FF
Systems:
BOARD | RAM | CPU | GPU
ASUS CUV4X-D | 2GB | 2 x PIII Tualatin ~1.5 GHz | Radeon HD 4650
DELL DIMENSION XPS 466V | 64MB | AMD 5x86 133MHz | Number Nine Ticket to Ride
Synaps3
Newbie
 
Posts: 39
Joined: 2015-2-17 @ 00:55

Re: Proper EMM386 configuration

Postby Gamecollector » 2015-2-17 @ 03:36

Emm386 /? shows command prompt options. For config.sys options - use help.exe or something similar.
And yes, two configs (with and w/o EMS) is normal.
NOEMS - no expanded memory emulation, no frame.
RAM - expanded memory, full frame (64 KB of UMBs are used).
No option - expanded memory emulation, no/short frame.
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).
User avatar
Gamecollector
Oldbie
 
Posts: 1319
Joined: 2010-10-06 @ 22:17

Re: Proper EMM386 configuration

Postby ripsaw8080 » 2015-2-17 @ 04:31

Synaps3 wrote:I=B000-B7FF

Be careful including that range. You might want to forgo it unless you really need the upper memory, because it will conflict with any software that tries to use monochrome text mode.
User avatar
ripsaw8080
DOSBox Author
 
Posts: 4395
Joined: 2006-4-25 @ 23:24

Re: Proper EMM386 configuration

Postby FeedingDragon » 2015-2-17 @ 06:06

ripsaw8080 wrote:
Synaps3 wrote:I=B000-B7FF

Be careful including that range. You might want to forgo it unless you really need the upper memory, because it will conflict with any software that tries to use monochrome text mode.


I've never actually had a problem with this, and I play some fairly old games, well early 80's is the oldest I can think of off hand. According to everything I've read, B000-B7FF is only used by the MDA card. Even setting monochrome mode with another card (CGA/EGA/VGA) will use B800-BFFF instead. That being said, I haven't tried absolutely every game there is either.

Going through my programming manual.... Check 0040:0010 (004010) bits 4-5. If both are 1, then you have an MDA card installed & text page is B000:0000 - B7FF:00FF (B00000 - B7FFFF). Otherwise, text page is B800:0000 - BFFF:00FF (B80000 - BFFFFF). If you have a non-MDA card installed, and a program insists on using the monochrome RAM (B000-B7FF) then it won't work even if you don't include it in your EMM386 line.
Feeding Dragon
User avatar
FeedingDragon
Oldbie
 
Posts: 821
Joined: 2003-8-24 @ 03:25
Location: Central Texas

Re: Proper EMM386 configuration

Postby ripsaw8080 » 2015-2-17 @ 06:42

I suggest you do some reading about color display adapters and how they emulate MDA in text mode 7. I know of at least one game that uses mode 7 for its setup screen: Extase
User avatar
ripsaw8080
DOSBox Author
 
Posts: 4395
Joined: 2006-4-25 @ 23:24

Re: Proper EMM386 configuration

Postby FeedingDragon » 2015-2-17 @ 08:57

ripsaw8080 wrote:I suggest you do some reading about color display adapters and how they emulate MDA in text mode 7. I know of at least one game that uses mode 7 for its setup screen: Extase


I don't have that game, which explains why I don't have any problems :>

Did a Google search and read up on that. Yep, switching to Mode 7 switches the text mode page bank from B800 to B700. What I was referring to from my programming guide dealt with determining the limitations of the machine in question. Guess I was just approaching it from the wrong end, sorry.

So, Extase uses MDA page frame. Any other games use it even if later cards are present? I play a lot of old games (oldest is 1983 I believe,) and I haven't run into this particular problem. Now, most have been moved to be played in DOSBox (system speed, no composite emu, etc...) But I did test them on this system first.
Feeding Dragon
User avatar
FeedingDragon
Oldbie
 
Posts: 821
Joined: 2003-8-24 @ 03:25
Location: Central Texas

Re: Proper EMM386 configuration

Postby ripsaw8080 » 2015-2-17 @ 09:37

The mono video memory buffer starts at segment B000h, not B700h, but you probably just made a typo there.

Extase might be an unusual case of a color game that uses mode 7, but such cases are not really why color cards have mono emulation. The main purpose is to support software that will only work in mono mode (e.g. One Hundred and One Monochrome Mazes), and also to provide an option to use mono with software that is aware of both color and mono (e.g. Rogue).

An easy way to switch to mono mode on a color system is with DOS' external MODE program (i.e. the command: MODE MONO), which switches the BIOS flag to mono and sets mode 7. You have no choice but to use mono mode for the maze game, but Rogue adapts itself to color or mono. Of course, if you have both a color and mono card in your system then the color/mono mode switching sets the corresponding adapter as primary, and you have real mono rather than emulation of it on the color adapter.
User avatar
ripsaw8080
DOSBox Author
 
Posts: 4395
Joined: 2006-4-25 @ 23:24

Re: Proper EMM386 configuration

Postby FeedingDragon » 2015-2-17 @ 17:17

Yes, typo.... I meant B000 not B700, sorry I missed that.

There's quite a bit I load into memory that I could probably do away with, so I have the I=B000-B7FF line to get that 32K of upper RAM. Not an issue for me at the moment, as I don't have any games, that I know of, that require monochrome mode. May not be an issue with Synaps3 either. That being said, removing even one of my non-essential programs, I could easily get everything high without the B000 page (half page actually,) being used.
Feeding Dragon
User avatar
FeedingDragon
Oldbie
 
Posts: 821
Joined: 2003-8-24 @ 03:25
Location: Central Texas

Re: Proper EMM386 configuration

Postby Jorpho » 2015-2-17 @ 17:51

The official MS reference suggests that i=E000-EFFF should also be useful.
http://support.microsoft.com/KB/77083
User avatar
Jorpho
l33t++
 
Posts: 7043
Joined: 2003-2-14 @ 19:50
Location: Canada

Re: Proper EMM386 configuration

Postby Matth79 » 2015-2-18 @ 01:01

You WILL need different configurations.

Some games have their own memory manager, incompatible with EMM386 - they MAY be ok with HIMEM and DOS=HIGH.
Can't immediately think of any games that use EMS, but with EMS enabled (the RAM option) you lose 64k of upper memory compared to NOEMS, and with less loadhigh space, it may not be possible to free up as much conventional memory.
Matth79
Member
 
Posts: 499
Joined: 2014-5-19 @ 14:24


Return to DOS

Who is online

Users browsing this forum: No registered users and 1 guest