[comp.os.msdos.programmer] Extended Memory Access

npw@eleazar.dartmouth.edu (Nicholas Wilt) (05/16/91)

In article <1991May15.025525.13136@monu6.cc.monash.edu.au> jas@monu6.cc.monash.edu.au (mr  j.a. grant) writes:
>
>Simple Question?
>
>I have an IBM 386 with 4Meg total memory (640=Dos, 3328=Extended)
>I am running C++ under Dos 4.00 - I have BorlandC, but I would prefer to 
>dodge object orientated at this stage.
>
>Q: I wish to construct a simple list which may require >2 Meg
>   of memory. Is there a simple way to generate this list - I was
>   hoping that mallocing a new pointer would find my free memory, but this 
>   doesn't appear to be so.

I recently uploaded a library to SIMTEL20 which interfaces with HIMEM.SYS
(the extended memory manager required for Windows 3.0) to let you 
allocate/free, lock/unlock, and copy extended memory.  It is called EMIL.ZIP 
and is located in the <MSDOS.C> directory.  

The library is intended for use with DOS applications generated by Microsoft 
C or Turbo C++, but it seems to me that it should work with Windows apps.
It might even work better, because DOS apps are limited to copying to/from
extended memory, while Windows apps can access it directly because they
run in protected mode.

I can mail it to interested users (I know SIMTEL20 is all but impossible
to get ahold of).  It's only 13K in .ZIP format.

--Nick
  npw@eleazar.dartmouth.edu