Date: Tue, 2 Nov 1999 11:12:20 +0200 (IST) From: Eli Zaretskii X-Sender: eliz AT is To: Charles Sandmann cc: djgpp AT delorie DOT com Subject: Re: Problem with DOS and DPMI In-Reply-To: <381dc296.sandmann@clio.rice.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Mon, 1 Nov 1999, Charles Sandmann wrote: > > On Sun, 31 Oct 1999, Damian Yerrick wrote: > > > > > > Page Fault cr2=10000000 at eip=e75; flags=6 > > > > eax=00000030 ebx=00000000 ecx=0000000c edx=00000000 > > > > esi=0001a44a edi=00000000 ebp=00000000 esp=00002672 > > > > cs=18 ds=38 es=af fs=0 gs=0 ss=20 error=0002 > > > > ================================================ > > > > > > Page Fault in Sandmann's CWSDPMI not in Micro$oft's DPMW32 > > > > > > This means you are accessing an address below 0x00001000. > > > > Not in this case. This message comes from CWSDPMI, not from the > > application (the latter never prints cr2 and flags, and the segment > > registers are printed differently). Section 12.2 of the FAQ describes > > the application crash message when dereferencing NULL pointers; you > > will see that the format is different. > > You are both right. The message is from CWSDPMI, and it is > referencing a null pointer. the 0x10000000 address is the base of the > DPMI space, so would be where the null pointer lives. What exactly in the above data tells that it is a NULL pointer? AFAIK, Page Fault in a DPMI host can happen for a variety of reasons, the null page is only one of them. (In contrast, Page Fault in a DPMI client's code almost never happens _except_ when a null page is accessed.)