Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!iuvax!cica!tut.cis.ohio-state.edu!zaphod.mps.ohio-state.edu!swrinde!cs.utexas.edu!rice!solomon From: solomon@rice.edu (Richard L. Solomon) Newsgroups: comp.sys.ibm.pc Subject: Re: 640K limit Message-ID: <4308@brazos.Rice.edu> Date: 16 Jan 90 22:57:25 GMT References: <4668.25aed7f2@uwovax.uwo.ca> <1468@blackbird.afit.af.mil> <28808@amdcad.AMD.COM> <729@jethro.Corp.Sun.COM> Sender: root@rice.edu Reply-To: solomon@screech.rice.edu (Richard L. Solomon) Organization: Rice University, Houston, Texas Lines: 36 In article <729@jethro.Corp.Sun.COM> acm@sun.UUCP (Andrew MacRae) writes: >In article <28808@amdcad.AMD.COM> phil@pepsi.AMD.COM (Phil Ngai) writes: >>Don't be ridiculous. The 8088 can't ADDRESS more than 1 mega. Just where >>did you expect IBM to put the IO stuff? >> >>The problem is all the lazy software houses who haven't bothered to move >>to OS/2 and take advantage of the 16 meg protected mode even though the >>286 can handle it just fine. > >Simple. IBM/MicroSoft *should* have used soft pointers to the I/O memory >areas. NO....they SHOULD have mapped the I/O in the I/O ADDRESS SPACE where it belongs......there are 64kB of I/O addresses, anyone use that much? (Excluding VidRAM and EMS which obviously could legitimately be in the memory address space.) > They made the same mistake that was made with CP/M, hardcoding >areas of memory for specific uses. For those who don't remember, CP/M >was hardcoded so that the kernal *had* to reside in the top 4kb of a 64kb >address space, forever limiting its applications to 60kb in size. I beg to differ! CP/M requires that its "kernal" (and we use that term lightly :) ) reside at the top of the address space. The actual location of the CCP (user interface) was coded with just such a "soft pointer" as suggested. Admittedly the BDOS (2.5k) and the BIOS header table must follow immediately after the CCP, giving a "kernal" of minimally some 5k. Note that all of this info is for CP/M 2.2. Beyond that, only the first 256 BYTES of memory were hardcoded - DRI was not so devious as to map things into the MIDDLE of an address space so as to force you to buy CP/M 9000000....... Also, most early CP/M systems had 16 or 32kB of memory....their apps were limited to correspondingly less memory :) Richard Solomon solomon@owlnet.rice.edu