Path: utzoo!utgpu!news-server.csri.toronto.edu!bonnie.concordia.ca!uunet!zaphod.mps.ohio-state.edu!rpi!clarkson!grape.ecs.clarkson.edu!nelson From: nelson@sun.soe.clarkson.edu (Russ Nelson) Newsgroups: comp.sys.ibm.pc.misc Subject: Re: What's so special about the UMB? Message-ID: Date: 31 May 91 13:49:08 GMT References: <1991May30.213856.1@freke.claremont.edu> Sender: usenet@grape.ecs.clarkson.edu Reply-To: nelson@clutx.clarkson.edu (aka NELSON@CLUTX.BITNET) Organization: Clarkson University, Potsdam NY Lines: 22 In-Reply-To: dhosek@freke.claremont.edu's message of 31 May 91 04:38:56 GMT In article <1991May30.213856.1@freke.claremont.edu> dhosek@freke.claremont.edu (Don Hosek) writes: What is it about the first 64K of extended mem that makes it so special to DOS 5.0, DESQview, et alia? It seems that there should be no more trouble accessing any other 64K block of extended mem than the UMB, but I'm acknowledgedly ignorant of such things... It's a consequence of Intel's segment/offset address calculation. You see, if you add a segment of 0ffffh and an offset of 10h, you get a linear address of 100000h. That's more than one meg. In fact, it's the first byte of the UMB. Now, the 8088 didn't keep that bit, and so some programs might make use of that wrap-around. To be safe, IBM's AT design has a provision for forcing address bit A20 to a zero. Basically, accessing the HMA is just a matter of setting up the right segment, and changing the hardware so that it respects A20. That's what HIMEM.SYS does. -- --russ I'm proud to be a humble Quaker. Clear cutting is criminal, spiking trees is criminal, and using hyperbole of this magnitude in a serious discussion is criminal. -- Irv Chidsey