www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2001/09/28/04:08:58

Date: Fri, 28 Sep 2001 10:04:57 +0200
From: "Eli Zaretskii" <eliz AT is DOT elta DOT co DOT il>
Sender: halo1 AT zahav DOT net DOT il
To: vps AT winnie DOT obuda DOT kando DOT hu
Message-Id: <9003-Fri28Sep2001100457+0300-eliz@is.elta.co.il>
X-Mailer: Emacs 20.6 (via feedmail 8.3.emacs20_6 I) and Blat ver 1.8.9
CC: djgpp AT delorie DOT com
In-reply-to: <Pine.LNX.4.33.0109280104380.4704-100000@winnie.obuda.kando.hu>
(message from Kovacs Viktor Peter on Fri, 28 Sep 2001 01:16:18 +0200
(CEST))
Subject: Re: Run djgpp program in real dos got SIGSEGV signal ?
References: <Pine DOT LNX DOT 4 DOT 33 DOT 0109280104380 DOT 4704-100000 AT winnie DOT obuda DOT kando DOT hu>
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

> Date: Fri, 28 Sep 2001 01:16:18 +0200 (CEST)
> From: Kovacs Viktor Peter <vps AT winnie DOT obuda DOT kando DOT hu>
> 
> [On Thu, 27 Sep 2001, Eli Zaretskii wrote:]
> > > Date: Thu, 27 Sep 2001 02:46:11 +0200 (CEST)
> > > From: Kovacs Viktor Peter <vps AT winnie DOT obuda DOT kando DOT hu>
> > > > Not true: near pointers are _not_ required to have data segments
> > > > larger than the installed physical RAM.
> > >  As long as you don't touch any memory, that is on an expansion card.
> > If you mean memory-mapped devices, then accessing them requires to map
> > them into your address space first.  How to do that is described in
> > the FAQ, but it doesn't require near pointers, either.
> 
>  Under dpmi, there is no way to map anything. (the support is optional)

I don't understand the sentence in the parens, but what the FAQ
describes and the code it shows was proven to work several times.

>  It seems to me, that you don't understand the workings of dpmi
>  extenders. You _have_to_ set segment limits to 4Gb before access to
>  any non program memory. (low mem, video mem, etc.)

Then please explain these facts:

  - the code in section 18.7 of the FAQ does work, without setting the
    segment limit to 4GB;

  - the DJGPP startup code sets up a segment descriptor for accessing
    low memory, and that descriptor's limit is set to 0x10ffff, which
    is 1MB + 64KB, a far cry from 4GB; and accessing conventional
    memory works with this segment;

  - the FAQ describes in section 18.4 how to set up a segment that
    spans only 32KB of the video RAM; that code also works.

None of this code sets huge segment limits, and yet it works.  Perhaps
you mean something else, and there's a misunderstanding here.

>  Please read the documentation before attacking anyone...
>  (intel x86 developer docs, win4.x kerel docs, pmode and cwsdpmi source)

Yes, I'm familiar with most of these docs.  And I didn't try to attack
anyone, sorry if my message sounded like I were.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019