Mail Archives: djgpp/1994/10/22/09:40:47
Mark Meyer writes:
I agree completely. Fortunately, someone else has already
done this. Maybe several have, but the system I work (play?) with now
is by Ian Stewartson, based on code written by Charles Forsyth.
Note that Stewartson's MS Shell is most closely related to ksh among
Unix shells. I wish he'd chosen to port bash :-)
Ian has both a shell and a set of utilities. The shell is
I agree too, and was really looking forward to using ms_sh22.
Unfortunately, MS Shell 2.2 didn't like DESQview/X 1.1, didn't like
GO32 very much, and didn't like GNU Make 2.69 and 2.70 at all. So I
gave up and went to Linux for general shell programming. I'd give 2.3
a try, except that I can't live without multi-tasking anymore, so why
bother.
barrier. Sucks! However, Ian's utilities all have the convention
that @filename in argv denotes a file that contains additional
parameters. MS Shell creates these parameter files and passes them to
the utilities _automatically_. There's a file, extend.lst, that
contains a list of executables and how they take their parameters
(Unixlike, DOSlike, etc.), and this takes a little setting up (though
Ian provides a sample extend.lst you can start with). However, once
I couldn't get this to work at all, after spending more time than it
took me to install Linux well enough to use GCC, X Windows, and all
network utilities that don't require my nameserver to change its
records (ie, mail)---about 2 hours, not including downloading the
.tar.gz files, but including reading the READMEs and HOW-TOs. My
problem, of course, YMMV, but why bother with MS Shell (which *still*
doesn't support anything that MS-DOG can't support, such as background
processes and two-way pipes), when it's so easy to have a nice Unix,
not Unixoid, environment?
the file is set up, you have yourself a nice Unixoid environment. You
can even call DOS programs in a Unixlike manner (- for options, / for
paths), and the shell automatically converts them to / and \ before
passing them to the DOS command!
This used to confuse the hell out of GO32 programs. It's probably OK
now as GO32's file parsing has gotten lots more robust since I tried
MS Shell.
I've found that with a couple of exceptions (the critical ones
being the Ghostscript and FSF makefiles, and MS Shell 2.2 failed
miserably with both of these), using 4DOS and a liberal application of
aliasing makes my system Unix-like enough. The only times I run into
the DOS command-line limitation any more is with 4DOS's select
command, and there are ways to avoid the limitation there in almost
all cases.
4DOS also allows you to ren and move directories. In general,
4DOS removes a lot of pointless COMMAND.COM restrictions (although not
the 127-char line-length limit). It is *not* (k|tc|c|ba)?sh for DOS,
but it does remove lots and lots of the frustrations of COMMAND.COM,
and aliasing and a good (better than any Unix shell) history
mechanism, lots of new variable substitution features, and many other
features add a lot to the DOS environment.
I guess I've done a lot of (possibly unfair) sniping at MS Shell.
What it comes down to is that (1) version 2.2 didn't work very well
*for me* and (2) 4DOS + DOS when I must use DOS, and Linux when I
don't absolutely need DOS (almost all the time), is a better
alternative *for me*. Obviously *Mark* has MS Shell working sweetly
for him, it is definitely much more Unix-like than 4DOS, and I
encourage *you* to try it. I enjoyed playing with it, but I could not
do real work with it (namely, automate the build of the FSF file
utilities using the FSF Makefile). So I think it may be of some use
to point out the pitfalls I fell into, especially in working with GO32
and GNU Make, since this is, after all, the DJGPP list.
+-----------------------------------------------------------------------+
| Stephen Turnbull |
| University of Tsukuba, Institute of Socio-Economic Planning |
| Tennodai 1-chome 1--1, Tsukuba, Ibaraki 305 JAPAN |
| Phone: +81 (298) 53-5091 Fax: +81 (298) 55-3849 |
| Email: turnbull AT shako DOT sk DOT tsukuba DOT ac DOT jp |
| |
| Founder and CEO, Skinny Boy Associates |
| Mechanism Design and Social Engineering |
| REAL solutions to REAL problems of REAL people in REAL time! REALLY. |
| Phone: +81 (298) 56-2703 |
+-----------------------------------------------------------------------+
- Raw text -