[comp.sys.ibm.pc.misc] Fast a20 support?

TACON019@ysub.ysu.edu (Fred Ullom) (12/19/90)

WE ARE HAVING TROUBLE WITH SOME NEW 386SX MACHINES ON OUR NETWORK.
THEY REBOOT THEMSELVES PERIODICALLY OR LIGHT UP ALL THE LIGHTS ON THE
KEYBOARD JUST FOR FUN.

WE TALKED TO THE NETWORK VENDOR AND THEY SAID THAT SOME VENDORS ARE NOT
PROVIDING "FAST A20" KEYBOARD SUPPORT IN THEIR SX BOXES AND THE NETWORK
SOFTWARE REQUIRES THIS TO OPERATE IN PROTECTED MODE.

HAS ANYBODY HEARD THE TERM "FAST A20" SUPPORT OR CAN TELL US WHAT THIS
IS?

(sorry didn't mean to shout)

We are also told that this problem will manifest itself on the sx box with
OS/2 running applications in the DOS compatibility box.

Any help would be appreciated,
Thanks,

------------------------------------------------------------------------
tacon019@ysub.ysu.edu (Fred S. Ullom)
Youngstown State University
------------------------------------------------------------------------

grege@gold.gvg.tek.com (Greg Ebert) (12/20/90)

Maybe we should title this: GATE A20 NIGHTMARES STRIKE AGAIN !!!

Fast gate-A20 can be implemented in 2 ways:

	#1. Port 92h. This is on the PS/2, and some AT machines. AST Research
	    is one vendor; I don't know who else.

	#2. Kludge logic. I did this for a previous employer. Basically, you
	    'hide' the commands which control A20 from the keyboard controller.
	    External logic drives GATEA20, but it's fed-back into the
	    keyboard controller so software can query GATEA20 through the
	    controller.

The only nasty case I saw where fast GATEA20 was mandatory was while running
Novell non-dedicated NetWare. On a 486/33, it took 30-60 seconds to get a
response from the keyboard; on a 6Mhz AT, response was instantaeous. I can
post the details if someone is interested.

I'll bet that the buggy software you have blindly assumes the GateA20 command
was processed by the keyboard controller (ie, via a timing loop. Horrors !!)
and jumps into what it thinks is high memory (but is actually low memory),
has a heart attack, and reboots. If you want to do some detective work, put
a logic analyzer on the keyboard controller and watch the command stream.
Again, if someone asks for details, I'll post.