www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/08/07/08:17:00

Xref: news-dnh.mv.net comp.os.msdos.djgpp:1387
Path: news-dnh.mv.net!mv!news.sprintlink.net!howland.reston.ans.net!swrinde!news.uh.edu!uuneo.neosoft.com!news!sandmann
From: Charles Sandmann <sandmann AT praline DOT no DOT NeoSoft DOT com>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Near Pointers in DJGPP 2.0
Date: Fri, 04 Aug 1995 20:12:01 CDT
Organization: NeoSoft Internet Services +1 713 968 5800
Lines: 16
References: <3vu56m$895 AT romulus DOT rutgers DOT edu>
Reply-To: sandmann AT clio DOT rice DOT edu
Nntp-Posting-Host: praline.no.neosoft.com
To: djgpp AT sun DOT soe DOT clarkson DOT edu
Dj-Gateway: from newsgroup comp.os.msdos.djgpp

> But it seems that I still have to use segments (selectors in this
> case) to access memory.  Shouldn't you be able to just specify
> an absolute address and access any memory on your system?

You are working in a virtual environment in DJGPP; NULL does not point
to the interrupt table.  So the device will appear at a different address.
You must call DPMI calls to find out where that address is and ask to
map that that device so you can see the memory (if it isn't in the 1Mb area).

Once mapped, you can access it in V2 a variety of ways:
 1) <sys/farptr.h> - works everywhere, offsets constant.
 2) dpmi 0508 if the dpmi you are working with supports it (only 386max 7 and
    cwsdpmi so far).
 3) <sys/nearptr.h> - works most but not all places, offset needs to be
    reloaded since can change on a malloc call

- Raw text -


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