by George Silberstern
The following files should have been included in the archive containing
ENVIRO EXE 6512 02-10-93 03:00 The ENVIRO Executable program
ENVIRO DOC 13182 02-10-93 03:00 This file - User Manual
FILE_ID DIZ 360 02-10-93 03:00 Description info for BBSes
If any of these files are missing, then you may not have an original
copy of the archive.
A number of years ago, PC-Magazine published a very brief utility that
would provide users with the location of the Environment buffer. since
that article appeared, I've been bashing my head in trying to come up
with an easy way to find out how that buffer is being used.
MS-DOS allocates a default size to the buffer, but doesn't provide for
a clear way to determine how it is being used. Sure, there is the SET
command, but it is only good to see what is in it. Even Digital
Research makes no such provisions in DR-DOS, and I've yet to see
something that does more than what the SET command provides for.
After agonizing over it, I finally came up with a solution in the form
of this program. ENVIRO now makes it possible to not only find out
where in memory the buffer resides, but also how big it is. But that
is not all, as it also indicates how many bytes are in use, and how
many remain free. As an added bonus, the content of the Environment
buffer is also displayed, giving an idea of how that space is being
This utility was churned out using Borland's Turbo Pascal compiler.
The first version I created only provided me with the buffer size and
location. In due course, I decided to add the usage statistics. Since
I wrote both versions for my personal use, I was not too concerned with
cosmetic appearances (in fact, I just dumped the figures without even
as much as a description of what they were).
I recently concluded that this would really be a useful utility for
others to have. This, made me decide to work on the program yet again.
It is the third re-work of ENVIRO. New to it are the displaying of the
contents of the Environment Buffer, the DOS version in use, and yes,
labels for everything
HOW ENVIRO CAN HELP YOU
If you ever wondered how you are using the Environment Buffer on your
computer, you will definitely benefit from using ENVIRO. This is
especially true if you ever tried to run an application and saw the DOS
Error message, "Out of Environment Space". That message basically
means that your system's Environment Buffer is full, and some or all of
the environment parameters required by the application, were not set up
properly for that reason. ENVIRO will let you see everything you need
to know in one shot.
ENVIRO is very simple to use, as it requires no Command Line parameters
to be entered when run. All you need to do is type ENVIRO, and press
Buffer, and/or you're interested in the technical details of what the
program tells you, this is all there is to know about ENVIRO.
The following statistics are displayed by ENVIRO every time the utility
þ BUFFER ADDRESS - This is the Memory Address at which the
Environment Buffer begins. The address is in Hexadecimal
þ BUFFER SIZE - This is the amount of space that has been
allocated to the Buffer. Unless you modified its size,
this will be the default value assigned by DOS. Default
Buffer sizes are discussed later. The number is the sum
of the "Bytes in use" and "Bytes free" values. Each byte
represents one character.
þ BYTES IN USE - This is the number of bytes in the Buffer
that are in use.
þ BYTES FREE - This is the number of bytes in the Buffer
that are still available. Once this value reaches zero,
DOS will display the "Out of Environment Space" message
every time you try to add data to the Buffer.
þ DOS VERSION - This is the version of DOS in use on your
Following these statistics, ENVIRO displays the actual contents of the
Environment Buffer. This is the very same information you can obtain
by issuing the SET command.
ADJUSTING THE ENVIRONMENT
DOS provides a default Environment Buffer size that can be just this
side of "too small" for some applications. This is especially true in
older versions of DOS. The default size of the Buffer depends on the
version of DOS you are using, as per the following table:
³ Version ³ Low ³ High ³Deflt³ ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
ÆÍÍÍÍÍÍÍÍÍÍÍØÍÍÍÍÍØÍÍÍÍÍÍÍØÍÍÍÍÍµ ³All values listed ³
³ MSDOS 3.3 ³ 160 ³ 32768 ³ 160 ³ ³in this table, are³
ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄ´ ³expressed in bytes³
³ MSDOS 5.0 ³ 160 ³ 32768 ³ 256 ³ ÃÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ´
ÃÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÅÄÄÄÄÄÄÄÅÄÄÄÄÄ´ ³DFT = Default Size³
³ DRDOS 6.0 ³ 512 ³ 32751 ³ 512 ³ ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ
When the Buffer is full, DOS will display the "Out of Environment
Space" message whenever an attempt at adding characters to it is made.
If you get this message, it means that it is time to increase the size
of the Buffer, or to edit the data placed into it. The latter isn't
always the right solution, so it is best to increase the space
allocated to the Buffer.
There are two ways of doing this, and they are identical in almost
every respect. Both require you to load a new copy of the command
processor, COMMAND.COM, but how this is done is what varies:
1] Batch File - To load a new copy of COMMAND.COM via a Batch file,
add this statement to a .BAT file (preferably AUTOEXEC.BAT):
COMMAND /E:xxxxx [/P]
This method is ideal for customizing the Environment Buffer on
the fly. You can always restore the original Buffer size by
using the EXIT command if you don't use the optional /P switch.
2] Configuration File - To boot the system with the modified Buffer
size, add the following statement to your CONFIG.SYS file:
SHELL=[path]COMMAND.COM /E:xxxxx /P
This method is the optimal solution because it defaults the
Environment Buffer to the modified size automatically. at Boot
time. [path] is the optional path to the command processor.
The /E: switch is what actually sets the new Environment Buffer size,
and the term 'xxxxx' represents the size that is desired. The size can
be any value in the range indicated in the chart at the start of this
section, for the version of DOS you're using.
Examples: (Method 1) COMMAND=COMMAND.COM /E:1024
(Method 2) SHELL=COMMAND.COM /E:1024 /P
The /P switch (optional for method 1) is used to make the new copy of
the command processor the permanent one. This means that once loaded,
this copy cannot be terminated with the EXIT command.
For more information on the COMMAND statement, consult your DOS manual.
REGISTRATION AND UPGRADES
ENVIRO is being released as Shareware. You may distribute the program
freely, as long as you do not alter the program in any way (that
includes disassembly, and reverse engineering). It would also be
greatly appreciated if you distributed the archive unchanged. That is,
containing all of the files listed at the start of this document.
ENVIRO is not exactly free. Should you find this to be as handy a tool
for getting your other software to work properly, etc., please show
your appreciation by registering your copy. Registered users of ENVIRO
are entitled to free upgrades to the program, and will receive a
discount when registering any other software I author(ed). You'll also
have the satisfaction of knowing that you're helping to support the
availability of inexpensive software.
I'm not asking for much: a mere $5 will give you that privilege, but if
you believe the program is worth more... I won't stop you from sending
in a higher amount!
SILBERSTERN, and mail it to the following address:
1 Makefield Road #E-184
Morrisville, Pa 19067
To obtain the most recent release of ENVIRO directly from me, you may
call my BBS, North Eastern Technical Reference [NETRef]. The telephone
number is 215/736-1889, and you can connect at 300-14400 baud (USR DS).
Once your account has been validated (done online), you will be able to
find this program, and any upgrades to it, as well as any other
software I have written for public release, in File Area #19.
If you have access to a FidoNet site, you can always File Request the
program using the magic name, ENVIRO, from 1:273/214.
WARRANTY AND COPYRIGHT INFORMATION
The author of this program shall not be held responsible
or accountable, under any circumstance, for the behavior
or performance of the program. Furthermore, neither the
author, or any party given permission to distribute this
program, shall be held liable or responsible for damages
incurred, including the incidental or consequential loss
of data, equipment or income, that may result from usage
or inability to use this program. This also implies any
data rendered inaccurate, and/or loss sustained by third
parties. These terms apply in all cases and situations,
even if the author has been advised of the possibilities
of such damages, or for any claims by any other parties.
All the programs, products, and features thereof, that are mentioned in
this documentation, whether included in the following list, or not, are
copyrighs and/or trademarked by their respective owners and authors.
Any error, or omission from the list is unintentional. Please refer to
the documentation of each product to determine the actual copyright
and/or trademark owner(s).
PC-Magazine is a trademark of Ziff-Davis Publishing. MS-DOS is a
product of Microsoft Corporation. DR-DOS is a product of Digital
Research, a division of Novell, Inc. Turbo Pascal is a trademark of
Borland International. USR is a trademark of U.S. Robotics, Inc.
ABOUT THE AUTHOR
George Silberstern was born and raised in Quito, Ecuador (South
America). He took a passing interest in Computer Science while in High
School. Computers became his hobby (ie. vice) while in College, where
he majored in Communications and Foreign Languages, and during his
Freshman year, in 1984, discovered Telecomputing and started his first
While Theatrical Operations became his principal career, he taught
himself several Computer programming languages. In 1987, George began
consulting on a freelance basis, primarily developing custom database
applications using Clipper (an xBase compiler).
In 1990, he started the North Eastern Technical Reference [NETRef], as
a product support BBS for his clients, and as a place where users can
obtain help with hardware and software problems. In 1991, NETRef BBS
became a member of FidoNet, and shortly thereafter became the official
United States support site for FidoPCB, a Fido to PCBoard Message
format converter originating in Europe.
George also authored the following Shareware and/or Public Domain
AutoClip - A group of processing front ends for automating
the development of Clipper applications
BIN-to-TXT - Data to Text conversion utility
NetSEND - An automatic Networking interface for PCBoard
BBSes for use with Procomm Plus