home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky comp.sys.ibm.pc.hardware:23762 comp.os.msdos.programmer:9181 comp.sys.ibm.pc.misc:12400 comp.sys.ibm.pc.programmer:390
- Path: sparky!uunet!wupost!uwm.edu!ogicse!qiclab!leonard
- From: leonard@qiclab.scn.rain.com (Leonard Erickson)
- Newsgroups: comp.sys.ibm.pc.hardware,comp.os.msdos.programmer,comp.sys.ibm.pc.misc,comp.sys.ibm.pc.programmer
- Subject: Re: Why does HIMEM.SYS not work with some keyboard chips?
- Message-ID: <1992Sep9.044414.29506@qiclab.scn.rain.com>
- Date: 9 Sep 92 04:44:14 GMT
- Article-I.D.: qiclab.1992Sep9.044414.29506
- References: <1992Sep4.023741.3497@leela.cs.orst.edu> <1992Sep4.153652.16199@uniwa.uwa.edu.au>
- Reply-To: 70465.203@compuserve.com
- Organization: SCN Research/Qic Laboratories of Tigard, Oregon.
- Lines: 45
-
- gude@uniwa.uwa.edu.au (David J W Emrich) writes:
-
- >Hold on to your seats, the problem is a REAL-GOOD-ONE. The story starts
- >way back when IBM (and later Microsoft) decided that the 8088 was going
- >to be the end all and be all of the Micro world and that _no one_ would
- >_ever_ need to have more than 1Meg of address space (640KRam, and 384K
- >device BIOS etc.)
-
- >Then came the bigger better processors, but in true form, they had to be
- >completely down-ward compatible with the older XTs. This meant that to
- >access anything more than the normal 1Meg of RAM, evil things had to
- >happen.
-
- It's more like this.
-
- On an 8088, an attempt to access any address in the FFFF segment would wrap
- around to low ram (FFFF:0000-FFFF:000F was the top 16 bytes of RAM, the
- rest of the segment was at 0000:0000-0000:FFF0).
-
- On the 286, the accesses *didn't* wrap, they just went on to the first
- 64k-16 of RAM above the 1 meg mark.
-
- Apparently so major applications programs *depended* on the wraparound.
- So if the wrap around couldn't be duplicated, they wouldn't run on the
- AT, and nobody would buy it. But at the same time, The AT needed to
- be able to run protected mode OSes like Xenix. Which required that
- the addresses *not* wrap.
-
- The obvious solution was to put in hardware allowing software selection
- of the hardware for the "wrap kludge".
-
- I suspect it was tied to the keyboard controller because it was the
- only "free" toggle. Or at least the easiest one to deal with. Why
- add a chip when you have an unused portion of one that'll do the same
- thing?
-
- The slowness *only* matters if you are toggling modes frequently. Which
- *shouldn't* be happening. The old software that required the kludge
- is gone by now, so the kludge can be disabled and *left* disabled.
-
- --
- Leonard Erickson leonard@qiclab.scn.rain.com
- CIS: [70465,203] 70465.203@compuserve.com
- FIDO: 1:105/51 Leonard.Erickson@f51.n105.z1.fidonet.org
- (The CIS & Fido addresses are preferred)
-