DOS program "Error 2009 : Not enough space for environment"

L

lurker

IS THERE A BETTER newsgroup for me to post this?

Friend brought to me a 6 month old eMachine with Windows XP Home. Not much has been installed on it. For several
months he was successfully using an ancient DOS program called FIRST1. Then it broke.

Very little new programs have been installed. Besides all the things eMachine provided, I see Spy Sweeper, Quick Books
Basic, Napster and two printers (HP DeskJet an Lexmark Z715.) I uninstalled Spy Sweeper and installed Windows Defender.

He has over 200 FIRST1 spread sheets that are needed!

To facilitate rapid testing of this problem, I copied FIRST1 to a USB Flash Drive and went from PC to PC to identify
where all it works and where it fails.

My personal PC (A clone) Dual boot:
Windows XP Home (FIRST1 fails)
Windows 2000 PRO (FIRST1 works okay)

My Wife's PC ( A clone):
Windows 2000 PRO (FIRST1 FAILS)

My 'server' Dual boot (Dell B110)
Windows XP Home (FIRST1 works)
Windows 2000 PRO (FIRST1 Works)

Summary: Both Windows XP Home and Windows 2000 have working machines and failing machines.

On failing machines,I have tried setting it to run compatibility mode for Windows 95, but behavior does not change. I
tried several other compatibility settings. When it fails, it always fails with the same message.

I have compared the Properties setting for Program,Memory, Compatibility, etc. against the working machine and they are
the same.

It feels like DOS extended memory does not work on the failing machines.

...\System32\config.nt and autoexec.nt are system default on all systems.

Any ideas appreciated.

I could export over 200 spread sheets and teach Excel to the owner, but there are just too many. I really need to fix this.

Carl
 
W

Wesley Vogel

How to Adjust MS-DOS Application Environment Size
http://support.microsoft.com/kb/161564

<quote>
Review the contents of CONFIG.NT in the %windir%\System32 folder.

Does it have entries like these:

dos=high, umb
device=%SystemRoot%\system32\himem.sys
files=100

Make it has the line dos=high
and bump up the files=

What does your Autoexec.nt file have in it?

--
Maurice N
MVP Windows - Shell / User
<quote>
from...
http://phorums.com.au/archive/index.php/t-133604.html

Read through some of these...
http://www.google.com/search?as_q=&...as_dt=i&as_sitesearch=&as_rights=&safe=images


--
Hope this helps. Let us know.

Wes
MS-MVP Windows Shell/User

In
 
L

lurker

Wesley said:
How to Adjust MS-DOS Application Environment Size
http://support.microsoft.com/kb/161564

<quote>
Review the contents of CONFIG.NT in the %windir%\System32 folder.

Does it have entries like these:

dos=high, umb
device=%SystemRoot%\system32\himem.sys
files=100

Make it has the line dos=high
and bump up the files=

What does your Autoexec.nt file have in it?

CONFIG.NT
I have tried environment up to 2048

dos=high, umb
device=%SystemRoot%\system32\himem.sys
shell=%systemroot%\system32\command.com /e:512
files=40

Autoexec.nt started out default, but now
has nothing in it any more.

carl
 
R

Robert Gault

lurker said:
<snip>
It feels like DOS extended memory does not work on the failing machines.

..\System32\config.nt and autoexec.nt are system default on all systems.

Any ideas appreciated.

I could export over 200 spread sheets and teach Excel to the owner, but
there are just too many. I really need to fix this.

Carl

The problem might be Expanded memory, in which case config.nt says
REM EMM
REM You can use EMM command line to configure EMM(Expanded Memory Manager).
REM The syntax is:
REM
REM EMM = [A=AltRegSets] [B=BaseSegment] [RAM]
REM
REM AltRegSets
REM specifies the total Alternative Mapping Register Sets you
REM want the system to support. 1 <= AltRegSets <= 255. The
REM default value is 8.
REM BaseSegment
REM specifies the starting segment address in the Dos conventional
REM memory you want the system to allocate for EMM page frames.
REM The value must be given in Hexdecimal.
REM 0x1000 <= BaseSegment <= 0x4000. The value is rounded down to
REM 16KB boundary. The default value is 0x4000
REM RAM
REM specifies that the system should only allocate 64Kb address
REM space from the Upper Memory Block(UMB) area for EMM page frames
REM and leave the rests(if available) to be used by DOS to support
REM loadhigh and devicehigh commands. The system, by default, would
REM allocate all possible and available UMB for page frames.
REM
REM The EMM size is determined by pif file(either the one associated
REM with your application or _default.pif). If the size from PIF file
REM is zero, EMM will be disabled and the EMM line will be ignored.
REM
 
M

mhc

lurker said:
CONFIG.NT
I have tried environment up to 2048

dos=high, umb
device=%SystemRoot%\system32\himem.sys
shell=%systemroot%\system32\command.com /e:512
files=40

Autoexec.nt started out default, but now
has nothing in it any more.

carl

The /e:512 in the shell= line is the culprit. Change the value from 512
to 2048 and I'll bet things work properly. FYI, the /e option sets the
size of the environment...
 
L

lurker

mhc said:
The /e:512 in the shell= line is the culprit. Change the value from 512
to 2048 and I'll bet things work properly. FYI, the /e option sets the
size of the environment...
Well, the shell line was not originally in it.
I added it with e:2048, then I tried 1024, then 512.

My general feel is tha "some program" was installed, and it changed
something that now prevents any other dos program from getting extended
memory. I have found other forum responsed that named itunes as one
that can cause problems, and some virtual sound card drivers.
Carl
 
M

mhc

lurker said:
Well, the shell line was not originally in it.
I added it with e:2048, then I tried 1024, then 512.

My general feel is tha "some program" was installed, and it changed
something that now prevents any other dos program from getting extended
memory. I have found other forum responsed that named itunes as one
that can cause problems, and some virtual sound card drivers.
Carl

OK, this time I read your message correctly!

First, is there any reason you're using COMMAND.COM as opposed to
CMD.EXE configured in full-screen mode? I've found quite a few DOS
programs that only work properly in full-screen mode, interestingly, the
most blatant being Microsoft Word 5.0a for DOS!

Second, set files=99.

And third, you should manually check for extended memory by loading
COMMAND.COM or CMD.EXE, and using the MEM command to check how much
extended/XMS memory is available.

At that point, let's see where we are...
 
L

lurker

mhc said:
OK, this time I read your message correctly!

First, is there any reason you're using COMMAND.COM as opposed to
CMD.EXE configured in full-screen mode? I've found quite a few DOS
programs that only work properly in full-screen mode, interestingly, the
most blatant being Microsoft Word 5.0a for DOS!

Second, set files=99.

And third, you should manually check for extended memory by loading
COMMAND.COM or CMD.EXE, and using the MEM command to check how much
extended/XMS memory is available.

At that point, let's see where we are...

You can try it yourself here:
http://www.rnc3.org/share/PFSChoice.zip

I have resorted to avoiding the FIRS1.PIF properties and tried tweaking the FIRST1.EXE properties for Memory. I am
convinced that the settings I choose are completely ignored.

Here is the MEM for a WORKING machine:

655360 bytes total conventional memory
655360 bytes available to MS-DOS
633280 largest executable program size

1048576 bytes total contiguous extended memory
0 bytes available contiguous extended memory
941056 bytes available XMS memory
MS-DOS resident in High Memory Area

HERE it is for a FAILING machine:
(No matter what Memory settings I choose in the Properties)

655360 bytes total conventional memory
655360 bytes available to MS-DOS
583376 largest executable program size

4194304 bytes total EMS memory
4194304 bytes free EMS memory

19922944 bytes total contiguous extended memory
0 bytes available contiguous extended memory
15580160 bytes available XMS memory
MS-DOS resident in High Memory Area

Carl
 
L

lurker

Robert said:
lurker said:
<snip>
It feels like DOS extended memory does not work on the failing machines.

..\System32\config.nt and autoexec.nt are system default on all systems.

Any ideas appreciated.

I could export over 200 spread sheets and teach Excel to the owner,
but there are just too many. I really need to fix this.

Carl

The problem might be Expanded memory, in which case config.nt says
REM EMM
REM You can use EMM command line to configure EMM(Expanded Memory Manager).
REM The syntax is:
REM
REM EMM = [A=AltRegSets] [B=BaseSegment] [RAM]
REM
REM AltRegSets
REM specifies the total Alternative Mapping Register Sets you
REM want the system to support. 1 <= AltRegSets <= 255. The
REM default value is 8.
REM BaseSegment
REM specifies the starting segment address in the Dos conventional
REM memory you want the system to allocate for EMM page frames.
REM The value must be given in Hexdecimal.
REM 0x1000 <= BaseSegment <= 0x4000. The value is rounded down to
REM 16KB boundary. The default value is 0x4000
REM RAM
REM specifies that the system should only allocate 64Kb address
REM space from the Upper Memory Block(UMB) area for EMM page frames
REM and leave the rests(if available) to be used by DOS to support
REM loadhigh and devicehigh commands. The system, by default, would
REM allocate all possible and available UMB for page frames.
REM
REM The EMM size is determined by pif file(either the one associated
REM with your application or _default.pif). If the size from PIF file
REM is zero, EMM will be disabled and the EMM line will be ignored.
REM

The PIF file has all Memory settings set to Auto (on the working machine).

I have tried every possible combination of manual settings (never more than 2048) but the MEM command results never
change (on the failing machine). I even tried turning all possible choices to NONE, but the allocations never changes.

Carl
 
L

lurker

lurker said:
IS THERE A BETTER newsgroup for me to post this?

Friend brought to me a 6 month old eMachine with Windows XP Home. Not
much has been installed on it. For several months he was successfully
using an ancient DOS program called FIRST1. Then it broke.

Very little new programs have been installed. Besides all the things
eMachine provided, I see Spy Sweeper, Quick Books Basic, Napster and two
printers (HP DeskJet an Lexmark Z715.) I uninstalled Spy Sweeper and
installed Windows Defender.

He has over 200 FIRST1 spread sheets that are needed!

To facilitate rapid testing of this problem, I copied FIRST1 to a USB
Flash Drive and went from PC to PC to identify where all it works and
where it fails.

My personal PC (A clone) Dual boot:
Windows XP Home (FIRST1 fails)
Windows 2000 PRO (FIRST1 works okay)

My Wife's PC ( A clone):
Windows 2000 PRO (FIRST1 FAILS)

My 'server' Dual boot (Dell B110)
Windows XP Home (FIRST1 works)
Windows 2000 PRO (FIRST1 Works)

Summary: Both Windows XP Home and Windows 2000 have working machines and
failing machines.

On failing machines,I have tried setting it to run compatibility mode
for Windows 95, but behavior does not change. I tried several other
compatibility settings. When it fails, it always fails with the same
message.

I have compared the Properties setting for Program,Memory,
Compatibility, etc. against the working machine and they are the same.

It feels like DOS extended memory does not work on the failing machines.

..\System32\config.nt and autoexec.nt are system default on all systems.

Any ideas appreciated.

I could export over 200 spread sheets and teach Excel to the owner, but
there are just too many. I really need to fix this.

Carl

Switching back and forth between two XP Home machines, one works, one does not work.

Works:

655360 bytes total conventional memory
655360 bytes available to MS-DOS
633248 largest executable program size

1048576 bytes total contiguous extended memory
0 bytes available contiguous extended memory
941056 bytes available XMS memory
MS-DOS resident in High Memory Area

Not Work:

655360 bytes total conventional memory
655360 bytes available to MS-DOS
583376 largest executable program size

4194304 bytes total EMS memory
4194304 bytes free EMS memory

19922944 bytes total contiguous extended memory
0 bytes available contiguous extended memory
15580160 bytes available XMS memory
MS-DOS resident in High Memory Area

Very interesting observation on BOTH machines...
I cannot affect the numbers displayed with the MEM command. Neither the PIF settings or the config.nt affect the numbers.

The WORKING system... does NOT have the shell line in config.nt. I did try adding the shell line, but still no affect
on settings. The working system continues to work
 
L

lurker

I have discovered another problem. I can't install Quicken 2000 on this one machine. I have not tested all of my
available platforms, but I tested on a different Windows 2000 and Windows XP machines. Quicken 2000 install okay on those.

I am beginning to believe this may be something that affects 16 bit DOS programs.

When I launch setup.exe, nothing seems to happen. Trying it form a command prompt, I see one blank line, then back to
the command prompt. No error messages, no window, or any hints. It is just ignored. I believe something has been
installed, and a setting made in registry or such, and it is affecting 16 bit DOS.

Carl
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top