From: "Tom Del Rosso"
References: <firstname.lastname@example.org> <email@example.com> <firstname.lastname@example.org>
Subject: Re: Which basic compiler to buy?
X-Newsreader: Microsoft Outlook Express 6.00.2600.0000
NNTP-Posting-Date: Wed, 18 Dec 2002 04:03:25 GMT
Organization: AT&T Worldnet
Date: Wed, 18 Dec 2002 04:03:25 GMT
"Tom MacIntyre" wrote in
> >To be fair, IBM's hardware set the memory limit.
> But wasn't DOS still incapable of exceeding the 640k long after the
> hardware support was there?
That was mostly because of Intel's hardware goof. Their segmented
memory made it necessary for any program of more than 64k to do a lot of
address arithmetic, and that made it hard to migrate to a different
system with more segments. DOS couldn't really have been designed with
enough foresight to have been portable to the 286 memory model. Intel's
data on the 8086 didn't say a word about planning for the segments
becoming virtual, so the natural assumption was that consecutively
numbered segments were consecutive. In fact Intel encouraged that
assumption when they explicitly stated that segments and offsets could
be added different ways, for example the way 0040:017A = 0000:057A.
Getting back to IBM's goofs, the original DOS made by a small company
which sold it to MS, had 1 meg of RAM, because they used a little 8086
system that could switch out the ROM! I don't know who made that