X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f X-Received: by 10.182.28.73 with SMTP id z9mr4782089obg.45.1444290311265; Thu, 08 Oct 2015 00:45:11 -0700 (PDT) Subject: Re: secret DJGPP documents? Newsgroups: comp.os.msdos.djgpp References: <201405111842 DOT s4BIgrRx012234 AT delorie DOT com> From: "Frank H. Sapone (fhsapone AT windstream DOT net) [via djgpp AT delorie DOT com]" Date: Thu, 8 Oct 2015 03:45:10 -0400 User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:38.0) Gecko/20100101 Thunderbird/38.3.0 MIME-Version: 1.0 In-Reply-To: Message-ID: <2943e$56161ee8$97d537ad$10931@ALLTEL.NET> X-Complaints-To: abuse AT usenetserver DOT com Organization: UseNetServer.com Lines: 76 X-Trace: 2943e56161ee83270920810931 X-Received-Bytes: 4783 X-Received-Body-CRC: 207945209 Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit Bytes: 5160 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk Huge necropost but hoping to reach out to the Sandmann on this (complete original message follows) On 5/27/2014 12:42 AM, Charles Sandmann wrote: >> "Rod Pemberton" wrote in message news:op DOT xft25kb26zenlw AT localhost... > >> I'm sure you've probably answered this before, but why was a >> replacement (MWDPMI) for CWSDPMI planned originally? > > CWSDPMI required a commercial compiler TurboC (which wasn't free) > to build. Later I started building with BorlandC (also not free) when I > wrote my own libc routines. The resulting code is not very tight > (not a lot of optimization happens without the developer rewriting > code to make it happen). It also had some areas of the code which could > be cleaned up. The goal was to build with a GNU provided > toolchain. Eventually Borland made TurboC free so users could build > it themselves. Windows provides built-in DPMI. So the need > decreased while the authors' time became less available. > > When DJGPP v2 was in development, we had concerns about what > DOS users would do. Stick with v1? Be forced to buy commercial > DPMI to run the free compiler and executables? The original plan > was always to have DPMI be fully built with the toolchain (using > DJASM and GCC). But that was a big project at the same time we > were trying to get v2 feature complete and bug free. So I did a quick > modification of DJ's GO32 and got a very minimal DPMI server working in > a few weeks of work. Go compare the GO32 > source to CWSDPMI sometime. So CWSDPMI was always > just another week or so of effort before it would be frozen as > good enough and we would work on the next generation. There > never were a lot of CWSDPMI releases - r1 to r3 were in 1996, > r4 in 1998 ... and the rest was just minor updates and big memory > handling. You can probably check the archives for the > number of times I said this will be the last release of CWSDPMI. > I'm glad other people have had the time and motivation to > provide alternatives so I don't have to worry about it. I still hear > about distributions using older versions (like r3). > Never underestimate the effort to bring something to production > that talks at a low level to the hardware. There were issues with > some types of machines, or hardware interrupts, that took months to > track down and debug with CWSDPMI. In the early > releases there were lots of people testing with simple test programs. > Still today occasionally I hear about new hardware > that doesn't handle A20 quite right (who cares anymore?) But > there just wasn't the time (or drive) to finish MWDPMI. I > still have an ancient Compaq laptop that DPMIOne will hard hang in some > configurations. > > CWSDPMI had a big installed base, so commercial companies > also helped out - like Symantec sending me a patches to work > around bugs in Intel chips. They got Intel to help them figure that out > ... things dealing with instruction sequences. I also got feedback from > id on the Quake user issues early during > the betas. > > You mention stuff with id. What was is that they worked with you on and what did you implement? Is any of the correspondence saved? I read some more ancient threads from Quake's heyday on here and it appeared that they wanted a Ring-0 version of CWSDPMI and some stuff with nearptrs. Sezero and I have been successfully using regular CWSDPMI.EXE instead of CWSDPR0.EXE in QDOS, Q2DOS, and uHexen2 with no issues... Though I switched backed to CWSDPR0.EXE in my QDOS project since the original id game used it as such. I haven't noticed any serious performance degradation or increase between using one or the other. Apologies for the necropost, but was looking over old archives and this caught my attention! Frank