[comp.sys.ibm.pc] Patch Command.Com

phillips@cgfsv1.dec.com (01/21/87)

	Hi There,
	
	Has anybody tried to patch command.com so that it stays resident. I 
	would appreciate any help for DOS 2.11 and/or DOS 3.1. I've seen
	some different ideas but have not had any success in using them.

					Thanks in advance,

						Jim

mvolo@ecsvax.UUCP (Michael R. Volow) (01/23/87)

In regard to co-existence of Hercules cards, I thought that the real
Hercules monochrome graphics adapter could coexist with a real Hercules
color graphics adapr (which  was the reason that the latter -- a banal
card -- was conceived.
--Mike Volow
mvolow@ecsvax

bu147441@cisunx.UUCP (Dan "Belgarion" Eikenberry) (02/03/87)

In article <7709@decwrl.DEC.COM> phillips@cgfsv1.dec.com writes:
>
>	Has anybody tried to patch command.com so that it stays resident. I 

if you are using msdos.  you can type command/p i think.   it should make it
resident.
 I have been looking through the msdos manual and I cant find the reference.
I know i saw it in there somewhere.  As far as I know it should work
with any msdos >= 2.11
I know it doesnt work on pc-dos


-- 
Dan "Belgarion" Eikenberry			ZETS ZETS!!!!!!!!!!!!
University of Pitsburgh Computing and Information Systems Software Technician
E-MAIL : bu147441@cisunx.UUCP		US-MAIL: box 1741
  BITNET: 147441@pittvms			 3990 5th Ave.

wtm@neoucom.UUCP (02/07/87)

Well, there seems to be a lack of information in some (ms) dos 3.1
manuals these days.  Several manuals from different vedors that I
have have the Exact same explanation under the section that talks
about how to use config.sys:

"A typical configuration file might look like this:

	buffers=10
	files=10
	device=ansi.sys
	break=on
	shell=c:\bin\command.com a:\bin /p
	lastdrive=z

The BUFFERS and FILES commands are set to 10.

The ANSI.SYS device driver is installed.

The extended Ctrl + C is set.

This file also sets the MS-DOS command EXEC to
the COMMAND.COM file located in the \BIN
directory on Drive C (hard disk).  The A:\BIN tells
COMMAND.COM where to look for itself when it
needs to reread from disk.  The /P switch tells
COMMAND.COM that it is the first program
running on the system so that it can process the
MS-DOS EXIT command.

The loast logical drive on the system is set to Drive
Z."

Interpret the above as you wish.  Sounds to me like this
implies that they are suggesting that /P is intended to
indicate that COMMAND.COM should be unloadable.  I think
the manuals might be wrong.

  --Bill

Bill Mayhew
Division of Basic Medical Sciences
Northeastern Ohio Universities' College of Medicine
Rootstown, OH  44272  USA    phone:  216-324-2511
(wtm@neoucom.UUCP   ...!cbatt!neoucom!wtm)

vanzandt@uiucdcsp.UUCP (02/10/87)

	As I understand the /p parameter with the shell command it is
to be used in conjuction with the /e:nn (set environment size) to signify
that this is a "permanent" addition to the environment setting. Maybe they
mean that each child shell should inherit the same environment when the
/p parameter is specified???...

pinkas@mipos3.UUCP (02/13/87)

In article <75800019@uiucdcsp> version B 2.10.3 4.3bsd-beta 6/6/85; site mipos3.UUCP mipos3!intelca!amd!amdcad!sun!decwrl!decvax!mcnc!gatech!cuae2!ihnp4!inuxc!pur-ee!uiucdcs!uiucdcsp!vanzandt vanzandt@uiucdcsp.cs.uiuc.edu writes:
>
>
>	As I understand the /p parameter with the shell command it is
>to be used in conjuction with the /e:nn (set environment size) to signify
>that this is a "permanent" addition to the environment setting. Maybe they
>mean that each child shell should inherit the same environment when the
>/p parameter is specified???...

No, No, No.

Quoting from the DOS manual:  (PC-DOS 2.0, page 10-10)

"When a secondary command processor has been loaded, you can cause it to
return to the previous level of command processor by issuing the special
command EXIT.  If you used the /P parameter, it will not retrun to the
previous level (refer to Appendix F for additional information."

(Appendix F has no relevance on the current discussion.   -igp)

As far as DOS 2.x is concerned, the /E parameter doesn't exist.  It actuall
does, but they didn't document it.  The /E parameter determines the size of
the environment.  In 3.2 and above, it is measured in bytes.  In 3.1 and
below (including 2.x) it is measured in paragraphs (16 bytes).  As I
mentioned in a previous posting, DOS 3.2 appears to allocate the memory in
paragraphs, so giving it a size that is not a multiple of 16 wastes a few
bytes of memory.  Another case of MS fixing something that wasn't broken or
requested.

The second thing to remember is that by default, the environment size that
DOS allocates a new version of COMMAND.COM (a subshell if you like) is the
greater of either the default size (160 bytes) or the current size.  In any
case, you will not be able to add to the environment if it is full.  A
workaround is to set the COMSPEC variable to include /E specification.  In
DOS 3.2, I understand that you may specify the value of COMSPEC in the
SHELL= line in config.sys.  Not owning DOS 3.x, I cannot comment on the
validity of this method.  (Someone posted the syntax a few days ago.)

-Israel
-- 
----------------------------------------------------------------------
UUCP:	{amdcad,decwrl,hplabs,oliveb,pur-ee,qantel}!intelca!mipos3!pinkas
ARPA:	pinkas%mipos3.intel.com@relay.cs.net
CSNET:	pinkas%mipos3.intel.com

phil@sci.UUCP (02/13/87)

In article <75800019@uiucdcsp>, vanzandt@uiucdcsp.cs.uiuc.edu writes:
> 
> 
> 	As I understand the /p parameter with the shell command it is
> to be used in conjuction with the /e:nn (set environment size) to signify
> that this is a "permanent" addition to the environment setting. Maybe they
> mean that each child shell should inherit the same environment when the
> /p parameter is specified???...



The actual meaning of /p is PERMANENT. 
It instructs command.com, or whatever shell you might be loading,
that it is the first and master shell and that it should NEVER exit.
It has nothing to do with environment.
As far as I can tell, the increase in environment size for /e is not
passed on to a sub-shell
BUT you do seem to be able to do /e for the command "command" so as
to enlarge environment space for a sub shell!