From: Eli Zaretskii Newsgroups: comp.os.msdos.programmer,comp.os.msdos.djgpp Subject: Re: Is DOS dead? Date: Wed, 15 Mar 2000 19:01:54 +0200 Organization: NetVision Israel Lines: 44 Message-ID: References: <38C7D12E DOT 1E12 AT gmx DOT net> <38CD09B3 DOT 7373 AT gmx DOT net> <38CE19B2 DOT 69C7 AT gmx DOT net> <38CF7CED DOT 505A AT gmx DOT net> NNTP-Posting-Host: is.elta.co.il Mime-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII X-Trace: news.netvision.net.il 953140067 12146 199.203.121.2 (15 Mar 2000 17:07:47 GMT) X-Complaints-To: abuse AT netvision DOT net DOT il NNTP-Posting-Date: 15 Mar 2000 17:07:47 GMT X-Sender: eliz AT is In-Reply-To: <38CF7CED.505A@gmx.net> To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Errors-To: dj-admin AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Wed, 15 Mar 2000, Michael Tippach wrote: > > Not before it does quite a bit of trickery to get things to their > > normal state again. > > Cleaning up the artificial condition created to trigger the exception is > not what I call trickery but a necessary step. ``Necessary'' does not contradict ``tricky''. I said ``tricky'' because the code isn't easy to get right. Clearly, a vanilla C code cannot run from the exception handler before it restores the normal execution environment. So generating an exception is only half of the job, albeit an important half. > > For fake exceptions triggered > > by deliberately lowering the DS limit, this is easily done, since we > > lowered the limit ourselves. For real exceptions, it's not so easy. > > That is true. Though I fail to see the relevance for this as we were > always talking about deliberately causing exceptions in either case. The relevance is that checking the limit against 4KB is much easier than to look at all the other possible causes of real exceptions. > Personally, I don't use DJGPP for I find the non- flat > memory model a bit offensive. I rather find it defensive (pun intended). It saves many a hacker from him/herself. > > > it takes 3 more lines of assembly code to detect NT. > > > > That's not really true, especially now that you need to distinguish > > between NT and W2K. > > So does W2K return a different value than 0x3205 from function 0x3306? No, it reports the same value, but behaves differently. > Well, make it 5 lines of code instead of 3, in that case. Please show us those 5 lines. It will help DJGPP tremendously, since currently I cannot find any way of telling NT from W2K.