Comment by vetinari
7 years ago
It was actually 1MB+64kB, due to how real mode segmenting works. The infamous A20 line could be set up to alias that top 64kB to the first 64kB.
The 80286 CPUs did support up to 16 MB of RAM, but they needed to be switched into protected mode to be able to use it. The problem was, that there was no way to switch back, except reset. That might be the reason, why MS DOS never supported this mode.
With 80386, it was possible to run in protected mode AND run real mode binaries in VM86 mode, which is exactly what Windows 3.x used.
The 8086/8088 didn't have that A20 line setting. That was added later for backwards compatibility.
The 80286 reset thing wasn't a full PC reset, but a CPU reset.
> The 8086/8088 didn't have that A20 line setting. That was added later for backwards compatibility.
True
> The 80286 reset thing wasn't a full PC reset, but a CPU reset.
That required an extra hardware and BIOS support. The CPU had to be reset externally, and after jumping to FFFF:0000, the BIOS had to recognize that this is a CPU reset, not re-initialize the hardware and return execution to where it came from.