> 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