delorie.com/archives/browse.cgi | search |
From: | "Thomas Schachtner" <thomas DOT schachtner AT gmx DOT de> |
Newsgroups: | comp.os.msdos.djgpp |
Subject: | Re: read a specific memory address |
Date: | Fri, 4 May 2001 14:20:42 +0200 |
Organization: | Deutsche Telekom AG |
Lines: | 48 |
Message-ID: | <9cu780$5rr$1@news2.dtag.de> |
References: | <9cp464$ju8$1 AT news2 DOT dtag DOT de> <9cp8nj$ap6$1 AT nets3 DOT rz DOT RWTH-Aachen DOT DE> |
NNTP-Posting-Host: | masked-user.toshiba-tro.de |
X-Trace: | news2.dtag.de 988979264 6011 194.25.188.1 (4 May 2001 12:27:44 GMT) |
X-Complaints-To: | usenet AT news DOT dtag DOT de |
NNTP-Posting-Date: | 4 May 2001 12:27:44 GMT |
X-Priority: | 3 |
X-MSMail-Priority: | Normal |
X-Newsreader: | Microsoft Outlook Express 5.50.4522.1200 |
X-MimeOLE: | Produced By Microsoft MimeOLE V5.50.4522.1200 |
To: | djgpp AT delorie DOT com |
DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
Reply-To: | djgpp AT delorie DOT com |
hey, thank you for your info!!!! Now I try to use _farpeekb() or the DPMI... functions Do they work also with WindowsNT/Windows2000 environment? If not, is there any possibility to read values from a physical address? Thank your for the help, again Thomas "Hans-Bernhard Broeker" <broeker AT physik DOT rwth-aachen DOT de> wrote in message news:9cp8nj$ap6$1 AT nets3 DOT rz DOT RWTH-Aachen DOT DE... > Thomas Schachtner <thomas DOT schachtner AT gmx DOT de> wrote: > > > I want to read a value that is stored on (Real-Mode-)Address: F000:0000 > > That's simple. Use the _farpeekb() function. > > > And another value from e. g. 0x03847384 (a 32 bit memory address). > > There is no such thing as an absolute memory address, from the point > of view of a DJGPP application. We use a segmented memory model > similar to the 'tiny' model of 16 bit PC programing times, but with > segments potentially 4 Gigabytes long. > > You're probably referring to a linear adress space (i.e. the actual > physical address bits at the CPU's pins). You need special function > of the __dpmi_*() family to map such addresses into the program's > memory space, which are not available in all DPMI environments. > > > is the address the same as the value from a pointer? > > No. > > > Why not? > > Because of the Memory Management Unit (MMU) built into all x86 CPUs > since the 386. It translates logical addresses into linear/physical > ones, based upon settings you make in the 'descriptor tables'. > > -- > Hans-Bernhard Broeker (broeker AT physik DOT rwth-aachen DOT de) > Even if all the snow were burnt, ashes would remain.
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |