VOGONS


MS-DOS 6.22 memory problem

Topic actions

Reply 20 of 28, by Elia1995

User metadata
Rank Oldbie
Rank
Oldbie

I just installed Caldera DR-DOS 7.03, again got the CD working and aweutil for my AWE32 PnP working with the sound blaster CTCU CTCM drivers, installed Windows 3.11 and a windows game seems to work just fine.
I then proceeded to retry the games which gave me the memory errors on 6.22 that day, Realms of Chaos and Monster Bash mainly, well, the memory issue is still there, both games require XMS but they don't start.
Whereas Duke Nukem 3D, which is obviously more demanding, works just fine.
Now I'm at the university, once I come back home, I'll update this message with all the values mem /c gives me.
One thing I can already tell you is that EMS and XMS are working.

I'll also post my autoexec and config files, as I come back home in roughly 2-3 hours.

Currently assembled vintage computers I own: 11

Most important ones:
A "modded" Olivetti M4 434 S (currently broken).
An Epson El Plus 386DX running MS-DOS 6.22 (currently broken).
Celeron Coppermine 1.10GHz on an M754LMRTP motherboard

Reply 21 of 28, by tpowell.ca

User metadata
Rank Member
Rank
Member
Falcosoft wrote:
I don't think the limit is 32MB. Even XMS 2.0 implemented in HIMEM.SYS of DOS 6.22 supports 64MB of memory. It's because the 16b […]
Show full quote

Since DOS6 cannot see more than 32MB, these games ran without error. I cannot remember the game(s) but I do know they needed XMS and not EMS.

I don't think the limit is 32MB. Even XMS 2.0 implemented in HIMEM.SYS of DOS 6.22 supports 64MB of memory. It's because the 16bit DX register that stores the number of blocks that used for querying/allocating XMS memory uses 1K units.
So the maximum available XMS is 1024 * 65535 = 64MB. With later HIMEM.SYS in DOS 7.1 you can reach 4GB XMS since according to XMS 3.0 specification the full 32bit EDX register can be used.
https://en.wikipedia.org/wiki/Extended_memory
http://www.phatcode.net/res/219/files/xms20.txt

You are correct, I mixed up my two vintage machines.
My 486 never had issues using DOS 7 since it only had 64MB of RAM; it was my K6-III that had issues with DOS 7 and 256MB of RAM in some games. Using DOS 6.22's HIMEM.SYS fixed those issues.

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 22 of 28, by Elia1995

User metadata
Rank Oldbie
Rank
Oldbie
Elia1995 wrote:
I just installed Caldera DR-DOS 7.03, again got the CD working and aweutil for my AWE32 PnP working with the sound blaster CTCU […]
Show full quote

I just installed Caldera DR-DOS 7.03, again got the CD working and aweutil for my AWE32 PnP working with the sound blaster CTCU CTCM drivers, installed Windows 3.11 and a windows game seems to work just fine.
I then proceeded to retry the games which gave me the memory errors on 6.22 that day, Realms of Chaos and Monster Bash mainly, well, the memory issue is still there, both games require XMS but they don't start.
Whereas Duke Nukem 3D, which is obviously more demanding, works just fine.
Now I'm at the university, once I come back home, I'll update this message with all the values mem /c gives me.
One thing I can already tell you is that EMS and XMS are working.

I'll also post my autoexec and config files, as I come back home in roughly 2-3 hours.

Ok, I'm back home and as I promised, I'm gonna post all the tiny helpful details, more specifically values and configuration settings.

Here is mem /c, which shows all the programs using the memory, as well as the free memory.

5HyC9LI.png

Here's my current config.sys:

DEVICEHIGH=C:\CTCM\CTCM.EXE
DEVICEHIGH=C:\DRDOS\EMM386.EXE DPMI=ON FRAME=NONE INT15=2048 /V
DEVICEHIGH=C:\DRDOS\DPMS.EXE
DEVICEHIGH=C:\DRDOS\SETVER.EXE
SHELL=C:\COMMAND.COM C:\ /E:512 /P
BREAK=OFF
BUFFERS=80
REM ** FILES=20
FCBS=4,4
LASTDRIVE=Z
HISTORY=ON,512,ON
COUNTRY=39,,C:\DRDOS\COUNTRY.SYS
DOS=HIGH,UMB
DEVICEHIGH=C:\DRDOS\OAKCDROM.SYS /D:OEMCD001
FILES=40

here's the autoexec.bat

@ECHO OFF
SET SOUND=C:\SB16
SET BLASTER=A220 I7 D1 H5 P300 E620 T6
SET MIDI=SYNTH:1 MAP:E MODE:0
SET CTCM=C:\CTCM
LH C:\SB16\DIAGNOSE /S /W=C:\WINDOWS
LH C:\SB16\AWEUTIL /R:50 /C:50 /S
LH C:\SB16\MIXERSET /P /Q
LH C:\CTCM\CTCU /S /W=C:\WINDOWS
PATH C:\DRDOS;C:\NWCLIENT;C:\WINDOWS;;C:\
EMM386 PIC=ON
DPMI ON
KEYB IT+
VERIFY OFF
PROMPT $P$G
SET DRDOSCFG=C:\DRDOS
LH NWCDEX /D:OEMCD001 /L:E

As I said, I replaced DOS 6.22 first with OS/2 Warp 4.52 (just for the heck of testing that totally new system for me) and then, after another HDD wipe, MBR rebuild, etc, Dr. DOS 7.03 which is what I'm currently running in there.

Now the situation is SLIGHTLY better than with MS-DOS 6.22, I mean that I can now run games like Monster Bash (although I get music but no Sound Blaster sounds, guess why ? Memory), Duke Nukem 2 now works perfectly again, ROC works only if I don't load the CD-ROM driver (those little 6 or 7 extra KB eaten by NWCDEX are needed by ROC), Blake Stone now works perfectly again as well, I mean, now the situation is heaven compared to 6.22, a lot of games now work, but it still ISN'T PERFECT like it was when it was working perfectly with the CD and all, before changing HDD, I used to be able to play ROC just fine with the CD-ROM loaded, for example, Monster Bash had sound effects and with the aweutil /R:50 /C:50 just sounded amazing compared to my other Sound Blaster 16.

Let's figure out what kind of tweaking I'm missing...

Currently assembled vintage computers I own: 11

Most important ones:
A "modded" Olivetti M4 434 S (currently broken).
An Epson El Plus 386DX running MS-DOS 6.22 (currently broken).
Celeron Coppermine 1.10GHz on an M754LMRTP motherboard

Reply 23 of 28, by konc

User metadata
Rank l33t
Rank
l33t

You need to understand that the version of DOS you're using makes no real difference for what you're after, run games. There is no need to try a dozen of them in case one magically "fixes" your issues, because it won't. There are way too many things wrong in your configuration files, but let's start somewhere:
Begin your config.sys with
DEVICE=C:\DRDOS\HIMEM.SYS
DEVICE=C:\DRDOS\EMM386 NOEMS
DOS=HIGH, UMB
Yes, exactly as above, don't add devicehigh everywhere please until you know what you're doing. Keep the rest as is for now (obviously remove duplicate entries for emm386 & dos=...) and report back. You can safely switch to 6.22 or 7.1 that have a mem command which doesn't such and actually provides useful information, but it's up to you.

Reply 24 of 28, by Elia1995

User metadata
Rank Oldbie
Rank
Oldbie

If I enable both HIMEM.SYS and EMM386, EMM386 will crash with a compatibility error between the two, you can't run both HIMEM and EMM386 in DR. DOS 7.03

Currently assembled vintage computers I own: 11

Most important ones:
A "modded" Olivetti M4 434 S (currently broken).
An Epson El Plus 386DX running MS-DOS 6.22 (currently broken).
Celeron Coppermine 1.10GHz on an M754LMRTP motherboard

Reply 25 of 28, by konc

User metadata
Rank l33t
Rank
l33t
Elia1995 wrote:

If I enable both HIMEM.SYS and EMM386, EMM386 will crash with a compatibility error between the two, you can't run both HIMEM and EMM386 in DR. DOS 7.03

Another reason to go back to MS-DOS then 🤣 Anyway, I don't know about DR-DOS but what I wrote definitely applies for MS-DOS.

Reply 26 of 28, by Elia1995

User metadata
Rank Oldbie
Rank
Oldbie

Well, I was always running MS-DOS 6.22 with both Himem and EMM386 loaded anyway and not much was different, except that now I can run those games and I get 641 free memory (not enough to run Realms of Chaos: 650, but I get them if I don't load the CD-ROM driver), whereas in MS-DOS 6.22 with the exact same drivers it was below 520.

What else needs tweaking by the way ? It's just a tiny little bit of memory preventing me to run everything like it did before, and if it's the case, I'm even fine reinstalling MS-DOS 6.22 for the sake of further testing, but first let's see if there's something else that can be done with what we got here in Dr. Dos

Currently assembled vintage computers I own: 11

Most important ones:
A "modded" Olivetti M4 434 S (currently broken).
An Epson El Plus 386DX running MS-DOS 6.22 (currently broken).
Celeron Coppermine 1.10GHz on an M754LMRTP motherboard

Reply 27 of 28, by Azarien

User metadata
Rank Oldbie
Rank
Oldbie
dr_st wrote:

Aladdin is one example that comes to mind. There is a nifty EATXMS utility that "eats" XMS memory, which I used to get Aladdin to run on my 256MB RAM system.

I remember using smartdrv with very large buffer for the same purpose.

Reply 28 of 28, by Elia1995

User metadata
Rank Oldbie
Rank
Oldbie

Somehow I managed to fix the memory problem, now when I do "mem" I also see an extra string that says EMS, now every game works fine, Bash has its sounds back, Realms of Chaos runs even if I keep my CD-ROM driver loaded, everything is working again as they were before swapping the HDD.
I'm kinda afraid to format and install MS-DOS 6.22 now that I got everything working, especially because I really don't know HOW I managed to get it working in first place, I think I'll leave it as it is, since even Windows 3.11 is working perfectly fine with 3.x games.
The last things to do now, before enjoying the system and get all my DOS games back in, is to install the mouse driver and get AWE32 music to work in Rise of the Triad, since it's tricky and I never get it to work at first try...

Currently assembled vintage computers I own: 11

Most important ones:
A "modded" Olivetti M4 434 S (currently broken).
An Epson El Plus 386DX running MS-DOS 6.22 (currently broken).
Celeron Coppermine 1.10GHz on an M754LMRTP motherboard