> On Oct 4, 2015, at 10:02 PM, Antony Gordon <cuzint...@gmail.com> wrote:
> 
> Hi,
> 
> set /p is a Windows NT feature of CMD.EXE. It was not available in MS-DOS or 
> Windows 9x. 

Ok, I knew it is in a Windows DOS somewhere. Didn’t really pay much attention 
to which one. 

> 
> I even double checked on my Win98 VM and my Win ME VM before I wrote this. 
> (Don’t ask why I have those. Just don’t). I get “Syntax Error” in both 
> Windows 98 and Windows ME.
> 
> It was nice of whomever wrote FreeCOM to include that Windows NT command 
> interpreter function. I never tested it, but did they also include Delayed 
> Expansion and IF (…) ELSE (…) and stuff like %~dpn0?

Don’t know. 

> 
> If the utilities are small as you say, then building a custom FreeCOM with 
> them built in would allow your programs to pass the information without 
> necessarily using the environment. 

-rw-r--r--   1 jerome  staff    18K Sep 28 05:18 LICENSE
-rw-r--r--   1 jerome  staff    17K Sep 28 05:18 V8POWER.TXT
-rw-r--r--   1 jerome  staff   886B Sep 28 05:18 VASK.COM
-rw-r--r--   1 jerome  staff   2.8K Sep 28 05:22 VCHOICE.COM
-rw-r--r--   1 jerome  staff   1.5K Sep 28 05:17 VCLS.COM
-rw-r--r--   1 jerome  staff   1.0K Sep 28 05:18 VCURSOR.COM
-rw-r--r--   1 jerome  staff   912B Sep 28 05:17 VDELAY.COM
-rw-r--r--   1 jerome  staff   1.5K Sep 28 05:17 VECHO.COM
-rw-r--r--   1 jerome  staff   777B Sep 28 05:17 VERRLVL.COM
-rw-r--r--   1 jerome  staff   1.7K Sep 30 16:36 VFDUTIL.COM
-rw-r--r--   1 jerome  staff   1.7K Sep 28 05:17 VFRAME.COM
-rw-r--r--   1 jerome  staff   1.7K Sep 28 05:17 VGOTOXY.COM
-rw-r--r--   1 jerome  staff   1.8K Sep 28 05:18 VINFO.COM
-rw-r--r--   1 jerome  staff   1.6K Sep 28 05:18 VLINE.COM
-rw-r--r--   1 jerome  staff   1.1K Sep 28 05:17 VMATH.COM
-rw-r--r--   1 jerome  staff   1.8K Sep 28 05:18 VMODE.COM
-rw-r--r--   1 jerome  staff   1.4K Sep 28 05:18 VPAUSE.COM
-rw-r--r--   1 jerome  staff   1.1K Sep 28 05:18 VPCSPKR.COM
-rw-r--r--   1 jerome  staff   1.9K Sep 28 05:18 VPROGRES.COM
-rw-r--r--   1 jerome  staff   1.1K Sep 28 05:17 VSTR.COM
-rw-r--r--   1 jerome  staff   1.8K Sep 28 05:18 VVER.COM
-rw-r--r--   1 jerome  staff   886B Sep 28 05:18 VVIEW.COM

A simple TSR that could one could run at the start/end of a batch would be more 
flexible than modifying FreeCOM. Something like “VTSRDATA begin” and “VTSRDATA 
end”. But, you would still be presented with the problem of passing output to 
other command line programs. For example, prompt the user 
for a filename to use as a zip archive before creating it. (There may be a way 
to do it, but this is just a off the top of my head example)

> 
> So assuming your install script always works under FreeCOM, you have 
> guarantees that set /p is there. Assuming it is running under Microsoft’s 
> COMMAND.COM on MS-DOS, you won’t have set /p and your script will fail at 
> stage 7.

Not exactly, stage 6 sets up the support for I/O redirection and set /p support 
under any command shell that supports it. (Basically only FreeCOM). 

Under normal/typical installations, this is not an issue for anyone who would 
be booting off of the install media. 

However, that being said. If for some reason, they do it another way. (i.e., 
just run the installer from an already booted system) Stage 6 also validates
that I/O redirection and set /p are functioning. If not, it terminates the 
installer with an error message telling the user why it could not proceed.

Later, I may place vchoice options in stage 6, that tell the user that they 
cannot proceed with the install using their current config and need to boot
the install media to continue and offer to reboot. 

> 
> 
> If your installer, still using the same batch file, was spawned in a custom 
> command shell, (or FreeCOM), than you can guarantee what you need will be 
> there. 

This may be what I end up doing. Either that or force booting from install 
media.

> 
> Regarding finding the master environment, in order for FreeDOS to maintain 
> compatibility with MS-DOS and the all the abandoned DOS software out there, 
> FreeDOS has to implement SysVars, commonly called the List of Lists. This 
> list can’t change it’s structure because by doing so, many DOS applications 
> won’t be able to run because a lot of them depend on this “undocumented” (by 
> Microsoft) structure.

I hear you. But, I avoid using “undocumented” functions when there is a 
documented solution. 

> 
> I’m not trying to pick a part your program, just trying to point you to a 
> hopefully better implementation. Jim wants a batch file, you have these power 
> tools, why not build them into the interpreter as internal commands? You 
> implement the same code minus the startup functions and you can probably 
> create a “V8” area in DOS memory where the utilities communicate since they 
> are a part of the command shell. 

I understand. 

As for building them into the shell, there would be definite advantages. Maybe 
someday. 
For example, right now V8 sits at about 30k total for the binaries. If they 
were combined and inserted into a shell, they would require
about 10k. Between 800-1200 bytes of each is duplicated per tool for command 
line processing. (varies based on what it needs to parse)

> 
> This precludes using the environment as you can create an in memory 
> “structure” that they can manipulate.
> 
> 
> <snip>
> ------------------------------------------------------------------------------
> _______________________________________________
> Freedos-devel mailing list
> Freedos-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/freedos-devel


------------------------------------------------------------------------------
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to