The old computers thread

Ugh, although I would like to do conspiracy stuff as for sure Microsoft did them (a plenty) I don't think they had power or the need to do anything of the sorts.

There are many angles to this story. I think these are most relevant

- BASIC is o.g. PC DOS tech, meaning, real mode, entire address space (and thus config space/VRAM) accessible to any code. In order to actually make PC graphics performant, VESA moved graphics into larger address/data space of the 386 bus in late 80s. At this point the true IBM PC architecture was dead, all that was left were compatibility parts. 386 was the future and to exploit it one uses protected mode which allows for far larger, faster bus, that can have 32 bit data path and 32 bit addressing (limits that served us for next 20 years).

- ISA, that is straightforwardly programmed from DOS, might have been buffed up in frequency and number of data lines to allow performance for high-resolution graphics. However, the ISA side still implies mapping all configuration and data in the 1 MB address space because the 16 MB one of 24-bit address lined 16-bit ISA is not accessible from real mode. Furthermore, PC uses segmented memory and thus no chunk larger than 64kB can be addressed in memory.

- VESA as a standard is accessible from QBasic/DOS by virtue of being present on the ISA. Limits from paragraph above apply. The VESA 2.0/3.0 commands are performed by standard ISA register I/O. The large, maybe even in megabytes large framebuffer is acessed by banking the 64kB A000 mapped VGA area via register, to point to another region of VRAM. So its doable. But to have performant graphics, you need to avoid ISA, and the "alternative" eg the cutting edge was VLB and PCI, not accessible under real mode

- "not accessible under real mode" comes with a caveat. Not all DOS is 16 bit. Extenders are used to kick the CPU into 386 protected mode and access the entire memory of the platform. One of your points was no 3D in BASIC...for compiled BASIC at least theoretically you could use an extender, and you could link in one of the early 3D APIs available for earliest PCI 3D cards. But this implies you have a 386 PC to begin with.

- the smoking gun as bots would say; PC, the entire ecosystem, has nothing to do with gaming until 1993. In no point of time before that year, has anyone in power ever considered gaming for anything as a requirement. The CPUs, the bus, the graphics standards, they were all for business. When IBM designed VGA they didn't bat an eye at what Atari/Amiga/Nintendo or the arcades were doing.

So the conclusion would be that VESA/3D tech belongs to 32 bit "Windows" era already, so no space for Microsoft to leave something behind when it already is?
 
Back
Top