delorie.com/archives/browse.cgi   search  
Mail Archives: opendos/1997/03/11/14:07:18

Message-Id: <9703111850.AA26292@hum.amu.edu.pl>
Comments: Authenticated sender is <grendel AT ananke DOT amu DOT edu DOT pl>
From: "Mark Habersack" <grendel AT ananke DOT amu DOT edu DOT pl>
Organization: KGB
To: "Matthias Paul" <MPAUL AT ibh DOT rwth-aachen DOT de>
Date: Tue, 11 Mar 1997 19:42:04 +0100
Mime-Version: 1.0
Subject: Re: [opendos] OD case sensitivity
Reply-To: grendel AT ananke DOT amu DOT edu DOT pl
Cc: opendos AT mail DOT tacoma DOT net
In-Reply-To: <348B2FE71E1@ibh.rwth-aachen.de>
Sender: owner-opendos AT mail DOT tacoma DOT net

On 11 Mar 97 (at 15:46) Matthias Paul became famous by saying:

> [IBMBIO passes pre-environment to command processor]
> > >   Some may call this a bug, but it's also a feature, if it's known...
> > >   (Mind, that a pre-environment was introduced with DR DOS 6.0, long
> > >   before MS-DOS 6.0 did it rather differently).
> > I consider this to be a feature, but also a cause for headaches for some,
> > unexperienced, users. So, the conclusion is that the feature should be
> > made optional.
> 
> I agree.  It should be made selectable by a new CONFIG.SYS directive 
> like
> 
>  FORCEENVUPCASE=<ON>|OFF
With ON being the default.

> [4DOS]
> > >   4DOS & NDOS do not evaluate the pre-environment, when they build
> > >   the master-environment from it.  They just take it over.  
> > >   So, strange side effects appear with these command processors, 
> > >   if you don't upstring all your CONFIG.SYS SET= directives.
> > > 
> > >   To avoid some of the problems, 4DOS & NDOS have with DR DOS style
> > >   pre-environments, you should insert:
> > > 
> > >    IF "4"=="%@Eval[2+2]%" c:\opendos\command.com /C EXIT
> > Or just put it in the 4start.btm
> 
> No, you can't do that, since this would be executed every time, you
> spawn into a new shell.  AUTOEXEC.BAT normally is executed only 
> once... ;-)  (else we'd to do some more precautions here).
Sure you can! Just use the '_shell' variable! It always contains the current 
shell's nesting level with 0 being the primary shell:

  iff "%_SHELL"=="0" then
     c:\opendos\command.com /C EXIT
  endiff

and it does the trick.

> Of course, you can improve my example by adding:
> 
> IF "4"=="%@Eval[2+2]%" IF ""=="%Os%" c:\opendos\command.com /C EXIT
BTW. The VAR variable *is not* set on startup as described in DOSBOOK. OD 
just sets the OS variable to 'OPENDOS' 

********************************************************
For when it comes down to it there's no use trying to
  pretend. For when it comes down to there's no one really
left to blame - blame it on me, you can blame it on me
We're just sugar mice on the rain.
----
Visit http://ananke.amu.edu.pl/~grendel

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019