[comp.sys.ibm.pc] Question on Env Space Size

bowhall@gumby.paradyne.com (Richard Bowhall) (06/10/89)

How do I set the size of my environment space so that it can be larger   
then the DOS default?

Richard Bowhall
uunet!pdn!bowhall

baird@cod.NOSC.MIL (John M. Baird) (06/12/89)

From article <6173@pdn.paradyne.com>, by bowhall@gumby.paradyne.com (Richard Bowhall):
> How do I set the size of my environment space so that it can be larger   
> then the DOS default?
(Here we go with another endless series of partial answers, similar to the
@ECHO OFF series. On-line DOS help has the following to say. The part you
want is the /E option of the SHELL line in your CONFIG.SYS file.

John Baird, Naval Ocean Systems Center, San Diego                         )
                                SHELL

    SHELL=[d1:][pathname1]filename1[.ext1] [d2:][pathname2] /P [/E:nn]
							[/MSG]	[DOS 4.0 only]

[d1:][pathname1]filename1[.ext1] is the name and location of the program to 
    be loaded at system startup time to respond to (process) command lines 
    entered from the keyboard, sometimes called the command processor. This 
    is typically C:\ (the default on a system with a hard disk) or A:\ (the
    default on a system with diskettes only).

[d2:][pathname2] is the path to be used after system startup if the program
    needs to be reloaded from disk into memory. A reason for making this 
    different from [d1:][pathname1] would be to use a virtual disk.

/P keeps the program from trying to unload itself when AUTOEXEC.BAT terminates.
   It is not required, but something will break if it is left off.

/E specifies the size of the DOS environment space where SET variables are
    stored. For DOS 3.1, nn is the number of 16-character paragraphs to be
    allocated (maximum of 62 paragraphs). For later levels of DOS, it is 
    the number of characters to allocate (minimum of 128, maximum of 32767,
    default is 620).

/MSG causes error messages to be read into memory at boot time for later
    display on the screen, rather than being read in from disk as needed.

The SHELL command permits you to write and use your own program to process  
keyboard commands. Few people do that. A more frequent use is to expand the 
DOS environment space with the /E option so that a long PATH can coexist with 
several environment variables. An environment variable COMSPEC is created in
the DOS environment space to save the [d2:][pathname2] for later reference.

egs@u-word.Dallas.TX.US (Eric Schnoebelen) (06/14/89)

Looks like it might be time for a Frequently Asked/Answered Questions
monthly posting for this group....

In article <1554@cod.NOSC.MIL> baird@cod.NOSC.MIL (John M. Baird) writes:
- From article <6173@pdn.paradyne.com>, by bowhall@gumby.paradyne.com
	 (Richard Bowhall):
- > How do I set the size of my environment space so that it can be larger   
- > then the DOS default?
- (Here we go with another endless series of partial answers, similar to the
- @ECHO OFF series. On-line DOS help has the following to say. The part you
- want is the /E option of the SHELL line in your CONFIG.SYS file.
- - John Baird, Naval Ocean Systems Center, San Diego                       )
- 
-                                 SHELL
- 
-     SHELL=[d1:][pathname1]filename1[.ext1] [d2:][pathname2] /P [/E:nn]
- 							[/MSG]	[DOS 4.0 only]
- 

	Well, It looks like the on-line DOS help isn't quite correct.
The flags listed are only good for Command.com, and other command
processors that chose to implement them.  ( Few other command processors
exist, and probably none of them implement this set of flags, I know
mine doesn't. )

	The shell statement can be used to start any program as the
default shell.  Unfortunately, DOS ( at least through 3.3 ) doesn't
start a shell in the same environment as it does an application started
from a shell.  Shells must know that they are being invoked as such,
and remember to allocate the default environment, etc.  But that is
getting somewhat off the track.

- [d1:][pathname1]filename1[.ext1] is the name and location of the program to 
-     be loaded at system startup time to respond to (process) command lines 
-     entered from the keyboard, sometimes called the command processor. 

	This should be the complete pathname of command.com.

- [d2:][pathname2] is the path to be used after system startup if the program
-     needs to be reloaded from disk into memory.
- 
- /P keeps the program from trying to unload itself when AUTOEXEC.BAT
-    terminates. It is not required, but something will break if it is
-    left off.

	Actually, without /P, AUTOEXEC.BAT is not executed, and the
user will get an error ( bad or missing command interperter ) if they
type exit at the lowest level shell..

- /E specifies the size of the DOS environment space where SET variables are
-     stored. 
- 
[....]
- 
- The SHELL command permits you to write and use your own program to process  
- keyboard commands. Few people do that.

	Ask me about writing replacement shells for MS-DOS.  I love
sharing information...

-- 
Eric Schnoebelen,			JBA Incorporated, Lewisville, Tx.
egs@u-word.dallas.tx.us				...!killer!u-word!egs
	Real Programmers:   Real Programmers have trouble suppressing
		homicidal tendencies when asked, "Are you sure?"