Xref: utzoo comp.os.os2.misc:500 comp.os.os2.programmer:375 Path: utzoo!attcan!telly!lethe!torsqnt!news-server.csri.toronto.edu!cs.utexas.edu!uunet!bywater!arnor!larios!db3l From: db3l@ibm.com (David Bolen) Newsgroups: comp.os.os2.misc,comp.os.os2.programmer Subject: Re: Fast a20 support??? Message-ID: Date: 21 Dec 90 16:15:33 GMT References: <90353.082842TACON019@ysub.ysu.edu> Sender: news@arnor.uucp (NNTP News Poster) Organization: Laboratory Automation, IBM Thomas J. Watson Research Center Lines: 76 In-Reply-To: db3l@ibm.com's message of 20 Dec 90 10:46:51 I've just received a note indicating that I may have misinterpreted the use of the A20 gate within the BIOS source, and that it doesn't quite have as much to do with moving from protected mode to real mode as I thought. Since I'm taking a vacation until January 2, I figured I should at least post the note I got, although I'll hold back the sender's name. Unfortunately, presuming this is the true use of the a20 line, I am no longer sure what is really meant by "fast a20". However, the problem you are having may still have something to do with your 386sx box not entirely matching the spec for a 286-class machine, while the network software assumes it does. The following is the note I received: > In article <90353.082842TACON019@ysub.ysu.edu> TACON019@ysub.ysu.edu (Fred Ullom) writes: > > >Has anybody heard the term "fast a20" support or can tell us what this > >is? > >Well, I can't say whether the "fast a20" support is your problem, but what >I believe your network vendor is referring to is the use of address line 20 >(hence "a20") that is used in 286-class machines to return from protected mode >to real mode, since the chip does not support the operation itself. The A20 gate has nothing to do with real or protected mode per say, but is a gate on the 21st address line in a 286/386. The 8086 had only 1 MB of physical RAM and required only 20 address lines (a0 to a19) to address all of it, however by playing with segmentation you could address 1MB plus (64K - 16 bytes). For example 0ffffh:10h on the 8086 this would cause an overflow and wrap back around to 0:0. On a 286 (and above) this would address 10000:0 or the first byte of extended memory. The designers of the AT decided that the wrapping behavior was correct and fixed the "flaw" in the 286 by designing the a20 gate. By setting the a20 gate to off, the 21st address line is always forced to 0 and so 0ffffh:10h would still point to 0:0. By setting the a20 gate on you could address memory above 1 MB. If you want to use memory above 1MB you must turn on the a20 gate and go into protected mode. > >Without getting into much detail, the 286 chip provides a method for switching >from real (addressing is done as with the 8086) mode into protected mode (new >addressing with selectors and tables - only available on 2/3/486), but not the >reverse. This is a problem for systems (like OS/2 and apparently your network >software) that run in protected mode, but also want to switch to real mode >occasionally to run programs that only work there. > > > > Since all of the 80x86 chips start up in real >mode, this effectively returns from protected mode to real mode. > As above, the a20 gate has nothing to do with switching from protected to real mode. To switch modes you have to induce a reset of the the microprocessor and this is done by outputting data to the keyboard port. When the cpu resets it jumps to the power-on code in the bios. The power on code will then check the cmos ram for the shutdown status byte to see if this is a power-on condition or a return from protected mode. [ it's me again now -- David ] I apologize for any misinformation I posted. Perhaps the best thing for you to do is get further technical details from your network vendor on the meaning of "fast a20", and then talk to your computer vendor. -- -- David -- /-----------------------------------------------------------------------\ \ David Bolen / | Laboratory Automation, IBM Thomas J. Watson Research Center | / P.O. Box 218, Yorktown Heights, NY 10598 \ | - - - - - - - - - - - - M i t h r a n d i r - - - - - - - - - - - - | | Internet : db3l@ibm.com | Bitnet : db3l@yktvmv | | Usenet : uunet!bywater!arnor!larios!db3l | Phone : (914) 945-1940 | \-----------------------------------------------------------------------/