From: "Rodney W. Grimes" Subject: Re: Accessing real memory (ie, below 1MB) under go32 To: sandmann AT clio DOT rice DOT edu (Charles W. Sandmann) Date: Tue, 14 Sep 1993 17:20:58 -0700 (PDT) Cc: djgpp AT sun DOT soe DOT clarkson DOT edu, dj AT ctron DOT com > > > The dosmem.s file allows you to read and write memory below 1M. What > > they don't provide is a mechanism for allocating and freeing memory > > below 1M. These functions are currently useful for accessing the BIOS > > data area or at-bus peripherals. > > There is a 4K buffer in low memory (___transfer_buffer contains the > 32 bit address in .s gas code). This value is currently only set for non-DPMI > mode (and is NULL for DPMI). This area can be used if you understand the > GO32 extender calls which use it and don't interfere with them. > > If you are willing to do DPMI only, you can call the Int 31h call to allocate > low memory under DPMI. This is probably better, since I believe V1.11 > emulates this DPMI function for non-DPMI, so you would have future > compatibility built in (is this correct DJ?) > > Finally, I know that for one commercial software project that has > been recently done with DJGPP they needed to add Int 13 support to the > extender. Maybe it's time to put that in the release? Can you point me to these folks please, I really don't like to reinvent the wheel. This is the one piece that is holding me up at this time, and I am hacking on it, but it will take me some time to get it all working. > I missed part of the discussion, our mail area has been full for the last > week so I didn't get any mailing list items :-( Basically I need to do int 13 I/O from a go32 program. I am writting install tools for FreeBSD that run under DOS (fdisk, disklabel, and a very special tar that can extract tar files into a ufs formatted file system on harddisk). -- Rod Grimes rgrimes AT cdrom DOT com