From: Kbwms Message-ID: Date: Wed, 6 May 1998 20:19:28 EDT To: eliz AT is DOT elta DOT co DOT il Cc: djgpp AT delorie DOT com Mime-Version: 1.0 Subject: Re: Knowledge Base Found & Difficulties with Start-up Code Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7bit Precedence: bulk Dear Eli Zaretskii, On 05-06-98 at 06:25:17 EST you wrote: > > > On Tue, 5 May 1998, Kbwms wrote: > > > > Actually, many entries in the FAQ need to be moved into the Knowledge > > > Base, but there are only 24 hours a day... > > > > > > > Need some help? > > I always need help with DJGPP, thanks for offering it. But you will > need to get hold of the Texinfo system, which is what we use for > writing the DJGPP documentation, before you can help in this one. In > particular, this means that you will probably need an editor which has > reasonable support for writing Texinfo documents (I suggest Emacs). If > you are familiar with Texinfo already, then I will be glad to tell you > how I would like this project to be done and what else is involved. > I'll become familiar with Texinfo and will let you know when I'm ready. I haven't used Emacs since 1989 but I can get a handle on that fairly quickly. > > While I have your attention: I notice that global variable _osmajor > > is not correctly set at start-up. > > That's a feature. In DJGPP v2.01, you need to call the function > _get_dos_version to have these variables initialized. When that > function was introduced, it wasn't obvious that it should be called at > startup, since the variables _osmajor and _osminor didn't exist > before, and their impact on existing programs was not clear. > Way to go! Call it a feature. > In the next release of DJGPP, _get_dos_version will be called by the > startup code, by popular demand. > Sounds like others out there feel lonely without it. [Concerning the DOS limit on command lines:] > If you call another DJGPP program, then the 126-character limit is > increased to 16KB minus the environment size (16KB is the size of the > transfer buffer of the parent program, and can be changed by using the > stubedit utility). So you shouldn't see any problems with > command-line size, UNLESS you spawn non-DJGPP programs. > > DJGPP couldn't have existed unless it overcame this limitation, since > you cannot dream of building GNU packages without breaking the > 126-char limit: the commands issued by the GNU Makefile's are way too > long. So this problem was solved a long time ago. If you have > problems with passing long command lines to DJGPP programs, please > describe them. > This problem is somehow connected to my Unix-like shell for DOS. When make spawns a program under the shell (from Thompson Automation), it fails to receive a full complement of arguments. When I switch to a DOS window, my program receives all 38 arguments. This is ironic since the shell is supposed to have a huge buffer for arguments - something like 1840 characters for a single command. I am seeking assistance from the supplier, as you might imagine. I figured as much. It simply didn't make sense on the face of it. Regarding c1loadef.c: I called __crt0_load_environment_file() with "cpp" as an argument and got all I needed in INCLUDE environment variables. Thanks very much. Thanks also for your helpful and informative comments. Sincerely, K.B. Williams