delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2002/08/20/02:22:44

From: Charles Sandmann <sandmann AT clio DOT rice DOT edu>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Accessing 4GB w/o DPMI
Date: Mon, 19 Aug 2002 23:45:05 CDT
Organization: Rice University, Houston TX
Lines: 19
Message-ID: <3d61c951.sandmann@clio.rice.edu>
References: <2c6a63a7 DOT 0208192030 DOT f501db4 AT posting DOT google DOT com>
NNTP-Posting-Host: clio.rice.edu
X-Trace: joe.rice.edu 1029819205 3009 128.42.105.3 (20 Aug 2002 04:53:25 GMT)
X-Complaints-To: abuse AT rice DOT edu
NNTP-Posting-Date: 20 Aug 2002 04:53:25 GMT
X-NewsEditor: ED-1.5.9
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

> Can I write a program in DJGPP that will allow me to access all
> physical memory in a machine (up to 4GB) w/o having to resort to
> loading some sort of DPMI driver?  

Yes - you can write the program with the DJGPP tools (GCC compiler).
You would need to write your own stub loader to switch to protected
mode, manage hardware interrupts, manage DOS/BIOS calls.  This is
not a trivial task.  Since DPMI drivers are small and can be bypassed,
there's not a real reason to avoid them, however.

> I'd like to be able to boot from a
> DOS disk, and access huge amounts of RAM w/o much more functionality
> than the peeking and poking I once did in BASIC programs.

While I haven't tried it, I don't know why you wouldn't be able to 
access all 4Gb physical memory in a machine with the PMODE DPMI
provider.  It does not turn on paging if VCPI isn't present, so all
memory is mapped one-to-one - and a simple farpeek or farpoke could
get to it all.

- Raw text -


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