Log in

View Full Version : Dos Memory Problems Under Win98se


Mighty Midget
30-07-2006, 11:10 AM
Due to sound and joystick issues, I need to run a dos game (Subwar 2050) under windows. But then I get the message "not enough dos memory".

Please, tell a noob :tomato: how to free enough mem (how much would be fair to assume?) so that I can run the game under windows.

_r.u.s.s.
30-07-2006, 02:29 PM
i still remember when i was trying to run a game with EMS and XMS support on 98. but i never "did it" =]

well maybe you ll have luck. in your windows directory (or system32, i cant exactly remember) there should be .pif file named like "ms-dos configuration for games with ems and xms.pif"(am also not sure if the name is exactly like that, but you ll surely recognise .pif file with longgg name containing words xms and ems=). so in the pif file should be instructions how to do it when you check the properities of the file. gl, and tell me if it worked for you=P

Japo
30-07-2006, 06:07 PM
I think MM's problem is about low memory, not XMS nor EMS? Besides Win98 can run programs which need that (most old not ancient DOS games), although I'm sure that there can appear annoying issues. If the problem's about low memory it's a pain, it was back at the DOS days but at least then it could be resolved.

Besides what Russ has said, there's a "Memory" section in each shortcut's Properties. You can configure stuff there, although it never helped me. You can tell how much low memory you need, the only inconvenience is that there's a limit to the amount Windows will give you. The theoretical solution if you need more is the same as with old DOS --removing lines from CONFIG.SYS and AUTOEXEC.BAT or trying to kick TSRs from low to high memory-- but I really don't know how good an idea it is to fiddle with those files in Windows. When a game could be run under Win98 but lacked low memory (Colonization for instance) I had to reboot in pure DOS.

Mighty Midget
30-07-2006, 06:20 PM
The problem, as far as I understand, is that dos games need a section of the memory that is used by windows. It may have to do with low/hi mem.

Beside: What does TSR mean? Second, I looked at the .pif but didn't understand what I should do with the config and autoexec boxes. Edit, sure, but how and to what?

Japo
30-07-2006, 06:34 PM
I think that your problem, which was common with old games --but never appears if you use DOSBox-- is about low memory. That's the fisrt 640 kb, the fastest and only directly compatible portion of RAM.

TSR stands for "Terminate and Stay Resident", it means the DOS programs which resided in memory, something slightly similar to the programs you see in Windows's Task Manager when you press Ctrl+Alt+Del. They occupy memory, and many of them needed low memory. So under DOS you could modify some lines from CONFIG.SYS and AUTOEXEC.BAT in order to try and load them in high memory, or remove them if they were not neccesary.

About the edition... Copy-post the content of the boxes here and I'll see if I can help you.

Mighty Midget
30-07-2006, 06:49 PM
config:

REM ************************************************** ****
REM ** Sample Windows 98 Program Information File
REM ** Optimize Conventional Memory (TPA)
REM ** Expanded (EMS) and Extended Memory (XMS) Support
REM ************************************************** ****


REM ** This example assumes C:\WINDOWS is the Windows directory
REM ** Modify the path to match your configuration

REM ** Increasing available TPA improves performance in MS-DOS mode
REM ** Load items high to increase available TPA
REM ** The order in which items are loaded may affect utilization of the UMA

REM ** Following are required to load items in upper memory
DOS=HIGH,UMB
DEVICE=C:\WINDOWS\HIMEM.SYS
REM ** EMM386 can emulate EMS within XMS
REM ** The RAM switch sets aside 64K of the UMA as a page frame for use with EMS
REM ** Using multiple of 1024, this example reserves an additional 4mb of XMS for EMS emulation
DEVICE=C:\WINDOWS\EMM386.EXE 4096 RAM

REM ** DEVICEHIGH= is required to load a device in upper memory
REM ** OAKCDROM.SYS is a IDE/ATAPI CD ROM driver
REM ** Copy OAKCDROM.SYS from Startup disk to C:\WINDOWS\COMMAND
REM DEVICEHIGH=C:\WINDOWS\COMMAND\OAKCDROM.SYS /D:mscd001

REM ** If compressed with DriveSpace
REM DEVICEHIGH=C:\WINDOWS\COMMAND\DRVSPACE.SYS /MOVE

REM ** Install MS-DOS support for hardware in this environment



autoexec:

REM ************************************************** ****
REM ** Sample Windows 98 Program Information File
REM ************************************************** ****

REM ** Set environment variables
SET TMP=c:\windows\TEMP
SET TEMP=C:\windows\TEMP
SET PROMPT=MS-DOS Mode $p$g
SET winbootdir=C:\WINDOWS
SET PATH=C:\WINDOWS;C:\WINDOWS\COMMAND

REM ** LH is required to load items in upper memory
REM ** MSCDEX is required to access the CD ROM in MS-DOS mode
REM ** Specify a CD ROM drive letter with /L:[drive letter]
REM ** Load MSCDEX file into EMS with /E
REM LH C:\WINDOWS\COMMAND\MSCDEX.EXE /D:mscd001

CLS
ECHO ************************************************** ****
ECHO ** Windows 98 MS-DOS Mode **
ECHO ** Expanded Memory (EMS) Support **
ECHO ** **
ECHO ** Type EXIT to return to Windows 98 **
ECHO ************************************************** ****

_r.u.s.s.
30-07-2006, 06:54 PM
<div class='quotetop'>QUOTE(Mighty Midget @ Jul 30 2006, 06:20 PM) 245921</div>
I looked at the .pif but didn't understand what I should do with the config and autoexec boxes. Edit, sure, but how and to what?
[/b]
well you can open autoexec.bat and config.sys in text editor

anyways, i found this http://support.microsoft.com/?id=188157

Mighty Midget
30-07-2006, 06:57 PM
thanks, but I know how to edit them, but not exactly what I should edit. Lines about mem, sure. But I never was a Merlin at this :unsure:

Japo
30-07-2006, 11:51 PM
There's not much to remove. As the CONFIG.SYS states, they are already optimized for maximum conventional (low) memory. Not even the CD drivers are installed. Well some games did not need EMS only XMS, so you could try using the other PIF Russ's link talks about, that should save a little more low memory. But I don't really know what this PIFs business is all about. Are they run automatically? When?

_r.u.s.s.
30-07-2006, 11:54 PM
well, when you restart(start) computer, operating system will just use your new config.sys and autoexec.bat

Japo
31-07-2006, 12:29 AM
Yes but which ones. Because each PIF configured to restart in DOS has its own CONFIG.SYS and AUTOEXEC.BAT lines, and now I learn about these other PIFs in the WINDOWS directory. My guess is that the CONFIG.SYS and AUTOEXEC.BAT used when restarting in DOS are composed of the lines in the PIF you mention plus the additional ones in the particular PIF you run. Even if that's true, which one of the two PIFs your link talks about is used? Maybe it can be toggled configuring the game's PIF properties? I'm using XP now so I can't check.

_r.u.s.s.
31-07-2006, 12:42 AM
<div class='quotetop'>QUOTE(Japofran @ Jul 31 2006, 12:29 AM) 245992</div>
Maybe it can be toggled configuring the game's PIF properties? I'm using XP now so I can't check.
[/b]
erm =]
<div class='quotetop'>QUOTE(support.microsoft.com @ ' post=)</div>
To create a unique environment for an MS-DOS-based program:
1. Right-click the program's executable (.exe) file or its .pif file, and then click Properties.
2. Click the Program tab, and then click Advanced.
3. Click to select the MS-DOS Mode check box, and then click Specify A New MS-DOS Configuration.
[/b]

Japo
31-07-2006, 01:38 AM
Yes I know that but when you restart, the lines you insert in the game's PIF properties won't be the only ones to load, they're additional. I'm guessing the rest is in the PIFs in \WINDOWS you mention, but I don't know --and it really doesn't matter because they'll be necessary. For example, if you didn't add anything I think you'd have XMS and EMS but not mouse support, for that you had to add the DOS mouse driver line in the PIF. But here we are guessing that MM hasn't added any lines to the PIF of the game he's trying to run, has he?

So the only piece of advice I can give you MM, is configure the game's PIF so that there's no EMS support. The game won't work if it needs EMS, and even if it doesn't it could need more memory than the amount you save doing this. The truth is that, contrarily to what many say, not all old games work in Win95/98, and many of them produce other problems in addition to insufficient low memory.

Mighty Midget
31-07-2006, 03:39 PM
I got it to work with a dos boot disc. Sound included. But because it's in DOS I can't get my joystick to work. It's one of them modern ones (BOOOOO, yeah I know :bleh: ). What's the idea of having a game that supports throttle units as well as having one such unit, if I can't get them to work together?! :huh:

The problem was EMS related. I added the EMM386 to my config, and then it worked.

Japo
31-07-2006, 05:46 PM
It's easy to get a DOS game to work in DOS. However as I've said, the game's needing EMS is no reason for its not working in Windows.

My problem is quite the opposite --my new computer has no socket where I can plug my old non-USB joystick. :crybaby:

Mighty Midget
31-07-2006, 06:08 PM
Maybe one of THESE (http://www.pearl.de/p/PE8985-USB-Adapter-USB-Gameport-aktiv.html) will do the trick for you.

(It's easy when you know what you're doing. I don't :w00t: :wallbash: )

Japo
31-07-2006, 06:33 PM
I had imagined those existed, and I think I'll be buying a similar one for the printer, but I don't know if it will pay for the joystick, I already used it seldom.