Hi..
JW> JC> What version of himem.sys is that? Microsoft has released source
JW> JC> code to himem.sys that makes use of no such thing...
The microsoft-released himem.sys source code has several include files that
have not been released. These include files contain all the really 'tasty'
stuff such as the extended memory block-copy, etc.
JW> When you have loaded M$ Himem.sys (without emm386) your computer
JW> is in "Big Real Mode". I don't say that Himem.sys makes use of Big
JW> Real to provide XMS-memory, because when you have also loaded emm386
JW> to emulate EMS, this Big Real Mode is gone.
I _dont_ think so. Try this some time:
load himem.sys
do not load emm386.exe
write a program that monitors the various CPU exceptions, then try to execute
mov ax,[10000h] If your machine is in bigreal mode, the instruction
will work quite happily.. if you're in normal, 64k-segment mode, you'll
get a protection error.
You'll find that himem does not place the system into bigreal mode.
Now, disassemble himem.sys and study it carefully. You'll see that the
block-move operationfor 386+ CPU's uses a descriptor that gives himem.sys
bigreal addressing mode. Next, you'll see that the 64k segmnts are dutifly
re-instated when himem exits.
Craig
--- FMail/386 1.20+
---------------
* Origin: Comms Barrier BBS +61.3.9585.1112, +61.3.9583.6119 (3:632/533)
|