BASIC-DOS: PC DOS Reimagined
basicdos.com
basicdos.com
It makes me wonder about what aspects of modern systems we take for granted. And also what kinds of OS research are going on today, the kinds of systems we might see in the future. Does anyone have any resources to help stay abreast of that?
Digital Research was in fact able to deliver on the idea of a multi-tasking DOS. https://en.wikipedia.org/wiki/Multiuser_DOS Compatibility suffered in some places, as the idea of having to share a system wasn't present in most DOS drivers. It filled its niche, but never broke out of it.
I feel if MS-DOS did establish a stronger multi-tasking foundation in those early years, there may have been less of a need of NT for home users. Who knows how many more years the average person would have been using DOS?
XenDOS was likely abandoned when it was found that third-party programs had started assuming direct hardware access in the DOS 1.x days, making transition to a new DOS framework difficult.
Windows 9x had full PMT and decent memory protection. It was a separate kernel that ran alongside DOS and populated DOS memory data structures to keep the two systems in sync. It could have been a "home user" successor kernel, but the writing was definitely on the wall at Microsoft that NT with its more robust architecture was the future, as far back as the mid-90s, with 9x acting as a transitional phase.
ROM BASIC was available on IBM PCs but clones typically didn't have it.
The flexible design did catch on, simultaneously a blessing and a curse to IBM.
The basic in ROM on IBM PCs was cassette basic and only supported loading and saving from cassette tapes. Although there might have been an obscure clone manufacturer or two which supported a cassette tape interface, in general clone makers didn't so there was no needed for an embedded cassette basic. Even IBM didn't support a cassette tape interface after the original IBM PC (5150). This meant that for years you could boot an IBM computer to cassette basic but not actually load or save any BASIC programs once you had done so.
You get a powerful, structured, and easy to learn language that is also pretty trivial to implement while also being capable of low-level assembly access if really needed and to even compile native binaries for much better performance than most BASIC ever dreamed of.
Some oddness to be found: run MSBASIC.EXE, then enter the command "FILES" (which is the BASIC command to get a listing of the files in the current directory), essentially a DIR command. That gets stuck in an endless loop, showing ". .*"
Not sure how that compares with PC-DOS 1.0, but it seems high.
An integrated text mode IDE, like Turbo Pascal (1983), would have been a killer app at that moment that would have given some serious trouble to M$.
But how do pass arguments to commands that are in BASIC variables? Like:
A$="MYFILE"
TYPE A$
DEL A$
Needs quoting work..