Oldest-Known Version of MS-DOS's Predecessor Discovered (arstechnica.com) 70
An anonymous reader quotes a report from The Guardian: Microsoft's MS-DOS (and its IBM-branded counterpart, PC DOS) eventually became software juggernauts, powering the vast majority of PCs throughout the '80s and serving as the underpinnings of Windows throughout the '90s. But the software had humble beginnings, as we've detailed in our history of the IBM PC and elsewhere. It began in mid-1980 as QDOS, or "Quick and Dirty Operating System," the work of developer Tim Paterson at a company called Seattle Computer Products (SCP). It was later renamed 86-DOS, after the Intel 8086 processor, and this was the version that Microsoft licensed and eventually purchased.
Last week, Internet Archive user f15sim discovered and uploaded a new-old version of 86-DOS to the Internet Archive. Version 0.1-C of 86-DOS is available for download here and can be run using the SIMH emulator; before this, the earliest extant version of 86-DOS was version 0.34, also uploaded by f15sim. This version of 86-DOS is rudimentary even by the standards of early-'80s-era DOS builds and includes just a handful of utilities, a text-based chess game, and documentation for said chess game. But as early as it is, it remains essentially recognizable as the DOS that would go on to take over the entire PC business. If you're just interested in screenshots, some have been posted by user NTDEV on the site that used to be Twitter.
According to the version history available on Wikipedia, this build of 86-DOS would date back to roughly August of 1980, shortly after it lost the "QDOS" moniker. By late 1980, SCP was sharing version 0.3x of the software with Microsoft, and by early 1981, it was being developed as the primary operating system of the then-secret IBM Personal Computer. By the middle of 1981, roughly a year after 86-DOS began life as QDOS, Microsoft had purchased the software outright and renamed it MS-DOS. Microsoft and IBM continued to co-develop MS-DOS for many years; the version IBM licensed and sold on its PCs was called PC DOS, though for most of their history the two products were identical. Microsoft also retained the ability to license the software to other computer manufacturers as MS-DOS, which contributed to the rise of a market of mostly interoperable PC clones. The PC market as we know it today still more or less resembles the PC-compatible market of the mid-to-late 1980s, albeit with dramatically faster and more capable components.
Last week, Internet Archive user f15sim discovered and uploaded a new-old version of 86-DOS to the Internet Archive. Version 0.1-C of 86-DOS is available for download here and can be run using the SIMH emulator; before this, the earliest extant version of 86-DOS was version 0.34, also uploaded by f15sim. This version of 86-DOS is rudimentary even by the standards of early-'80s-era DOS builds and includes just a handful of utilities, a text-based chess game, and documentation for said chess game. But as early as it is, it remains essentially recognizable as the DOS that would go on to take over the entire PC business. If you're just interested in screenshots, some have been posted by user NTDEV on the site that used to be Twitter.
According to the version history available on Wikipedia, this build of 86-DOS would date back to roughly August of 1980, shortly after it lost the "QDOS" moniker. By late 1980, SCP was sharing version 0.3x of the software with Microsoft, and by early 1981, it was being developed as the primary operating system of the then-secret IBM Personal Computer. By the middle of 1981, roughly a year after 86-DOS began life as QDOS, Microsoft had purchased the software outright and renamed it MS-DOS. Microsoft and IBM continued to co-develop MS-DOS for many years; the version IBM licensed and sold on its PCs was called PC DOS, though for most of their history the two products were identical. Microsoft also retained the ability to license the software to other computer manufacturers as MS-DOS, which contributed to the rise of a market of mostly interoperable PC clones. The PC market as we know it today still more or less resembles the PC-compatible market of the mid-to-late 1980s, albeit with dramatically faster and more capable components.
Old memories (Score:2, Interesting)
Re: (Score:3)
I still have a 5.25" floppy disk that is labeled, in handwriting, IBM DOS 1.0. The disk hasn't been readable for many years, even if I did have a drive to put it in.
Re: (Score:1)
I have one of those too! The label is fully readable as is the QR code I hadnprinted.
E
Re: (Score:2)
Positively amazing, provided that QR code was invented about 15 years after your diskette was made.
Re: (Score:2)
The QR standard was re-invented recently. 2D barcodes came into existence soon after the creation of what we now understand to be barcodes and modern people will now misnomer older 2D barcodes (which I've seen on insurance and car registration documents for decades) as QR codes.
Re:Old memories (Score:5, Interesting)
5.25" floppies tend to last much longer than their 3.5" counterparts. The 8 inch floppies last practically forever because the density isn't that high.
Re: (Score:2)
I wouldn't know! I do have an 8" floppy in my collection, but have never had a device that could read it.
Re: (Score:2)
AFAIK, 8 inch diskettes use the same material and the same low-level record density as 360Kb 5.25 inch diskettes. The ubiquitous 8-inch 250Kb diskette format seems so small in comparison due to writing only one side of the diskette and using FM recording (frequency modulation) instead of MFM.
Re: (Score:3)
Actually, 8" disks are plenty dense - the technology behind the 1.2MB format actually came from the 8" format, just shrunk down. 8" floppies actually can hold several MB of data.
In fact, many people have connected 8" drives to PCs - there are adapters now that adapt the floppy 34-pin to the 8" 50 pin interface, and setting your BIOS to 5.25" 1.2MB mode is suf
Re: (Score:2)
The typical format used with an 8" disk was 360kB or less. IIRC my Altos formatted to even less than that, like 300 or 320kB. So the sector sizes are enormous.
Re: (Score:2)
8" floppies actually can hold several MB of data.
How exactly? The math is simple. These floppies use 500 kbits per second raw data transfer when formatted with MFM, and spin with 6 revolutions per second (yes, these are exactly the same numbers as the 1.2MB 5.25'' HD floppies). This makes about 83.3 raw kbits per track. Multiply this to 2 sides and 77 cylinders, and you get about 1.6MB maximum theoretical capacity (because you can't use all the raw bits for data)
A commonly used large 8'' floppy format was 1232KB (77 cylinders x 2 sides x 8 sectors per tra
Re: (Score:2)
There is a decent chance that the data can be recovered, if you think it might be valuable. Data recovery from floppy disks has come a long way in recent years.
Re: (Score:2)
Every time I think of early DOS versions, one command always bubbles up from the depths of my memory:
PROMPT $P$G
--
Abort, Retry, Fail?
Re: (Score:2)
Although I never touched 366DOS, I did have an occasion to use EDLIN and frankly, I was not impressed at all
It did, however, allow me to edit the config.sys file that I bungled up, while every other tool to edit text files was unavailable
All hail EDLIN the tool you never wanted to use, particularly when it was the only tool you could use
Re: (Score:3)
Re:Old memories (Score:4, Informative)
Re: (Score:2)
Yes, vi has page editing capabilities without EDLIN's weird (imo) one line at a time approach.
My initial experience was with DECVAX (DECTPU) and DECStations (community college night job at a DEC sponsored lab), so stepping backwards into EDLIN in the late 80's was no fun. However this was all because the civil engineering company my day job was at used PC's for CAD and Desktop Publishing.
I do not remember the details, but I was likely attempting to set up memory management on a 286 with a whopping 2MB of R
Re: (Score:2)
That worked with only a bootable disk.
Re: (Score:2)
A fankle, fo
Re: (Score:2)
As a DOS user for quite some years (My first PC was an IBM PC 5150 with 64kB on board, and 384kB on an ISA card) the very first thing copied to a new install was always an editor. Or if I had space on the floppy I was using at the time, Norton Commander, which had an editor.
I had a 30 MB Quantum external MFM disk on my PC, but it eventually died.
Re: (Score:2)
My first computer came with a 42MB MFM hard drive, but I later re-formatted it with an RLL-capable controller card and it automagically became a 60MB hard drive. Very tricksy!
Re: (Score:1)
Re: (Score:2)
If your first spear had a fire-hardened head, you were not a bleeding edge technology user.
Re: (Score:3, Interesting)
Re:Old memories (Score:4, Informative)
Another hotbed of activity was some folks who worked at a South Seattle fire station. These, in fact, were the ones who took the circulating pirated source code and created the package that became the Seattle Computer product that Bill Gates purchased for $50,000, resold to IBM, and then seized himself as MSDOS.
I do not mean to disrespect your valuable information, but the Seattle Computer product (QDOS/86-DOS) was not pirated, its source code wasn't circulating (maybe you meant CP/M source code?) and its creator Tim Paterson might have been working shifts in a fire station (I have no idea), but he is more well known to have been an employee of Seattle Computer, where he was also designing and soldering S-100 boards that his company was selling.
The theory that QDOS/86-DOS was somehow using pirated source code from CP/M was once fairly widespread, but then was completely debunked decades ago, These days, with the availability of the source code of early DOS, everyone can check it for themselves.
Re: (Score:2)
If only life were like a movie... (Score:5, Insightful)
...our Chief Scientist would proclaim that now we have found Patient Zero, it is possible to devise a cure for Microsoft.
Re: (Score:2)
Wouldn't that have been BASIC on an Altair or something?
Re: (Score:2)
That was a weakened strain since, in spite of being pre-paid, ol' Bill didn't so much release it as have it escape and get it's worst bugs patched by people who already paid for it.
Re: (Score:2)
Re: (Score:2)
Would IBM have been better?
Re: (Score:2)
They would have been more competent, back in the day anyway. But I think they were constitutionally incapable of making any software lightweight enough to run on the 5150.
So... MicroSoft-DirtyOperatingSystem then? (Score:1)
The subsequent over-complexity, inconsistency, and arcane limits of DOS commands and Windows APIs must have roots in the Quickness and Dirtyness of the original OS that Microsoft bought and, again quickly, adapted and extended.
In fairness, they were dealing with the abomination of CPU chip design that was the 8086 processor. IBM's monstrosity of a chip can be contrasted with the Motorola 68000 of the same era. Take a look at their instruction sets side by side sometime if
Re:So... MicroSoft-DirtyOperatingSystem then? (Score:5, Insightful)
It was Intel's chip. IBM nearly went with the Motorola 68000, but couldn't secure a second source for it.
The 68k is much nicer. Lots of registers (for the time) and support for 24 bits of flat address space.
Re:So... MicroSoft-DirtyOperatingSystem then? (Score:4, Insightful)
The 68000 was created before its time, in a technical sense. It struggled to reach the projected yields and frequencies. It's telling that the Mac and the Amiga didn't appear before 1984. While the Lisa was released in 1983, its price was exorbitant.
Re: (Score:2)
Another issue was slow RAM. The Amiga was heavily constrained by RAM speed, and therefore difficult to get good performance from when all the other hardware was competing for cycles too.
It wasn't until the mid 80s that faster RAM became available. Even then, it wasn't cheap. The PC Engine being able to run its 6502 derivative at 8MHz was a real coup, and it was often faster than 68k for game code.
Re:So... MicroSoft-DirtyOperatingSystem then? (Score:5, Informative)
In the early 80's, almost all computers at that time period used shared memory architectures. There was nothing wrong with the architecture of the original A1000 and A500.
The real problem is that Commodore never updated the Amiga's memory controller over time. The AGA Amigas used modern 80ns RAM chips, but the memory controller (Alice) was hardwired to use 150 ns timing, which seriously starved the CPU. Also, the Amiga's logic didn't produce data cache control signals, so if you had a 68030, it couldn't run correctly without an extra memory controller, making upgrades very expensive. Trying to use a 68040 on an Amiga made things even more complicated, as it required burst mode operation and Agnus/Alice couldn't do that.
The early Amigas were great. The later ones were a mess of hacks that didn't really work.
Re: (Score:2)
I'm not saying it was a flaw exactly, but consider that the original Amigas were so short of memory bandwidth that 32 colour modes had a massive impact on available CPU and blitter cycles. High res modes paused the CPU and blitter during each scanline because all access slots were needed by video DMA.
Getting good performance requires understanding and managing DMA slots. Modern developers can use WinUAE to make it easier, but back in the day you pretty much had to figure it out by experimentation. The Hard
Re: (Score:2)
Another issue was slow RAM. The Amiga was heavily constrained by RAM speed, and therefore difficult to get good performance from when all the other hardware was competing for cycles too.
It wasn't until the mid 80s that faster RAM became available.
There were SRAM expansions for Amigas. It installed as fast RAM obviously, which is where you need the speed anyway.
Re: (Score:3)
Another issue was slow RAM. The Amiga was heavily constrained by RAM speed, and therefore difficult to get good performance from when all the other hardware was competing for cycles too.
It wasn't until the mid 80s that faster RAM became available. Even then, it wasn't cheap. The PC Engine being able to run its 6502 derivative at 8MHz was a real coup, and it was often faster than 68k for game code.
Only the first 512k of RAM was constrained, and even then the custom chips hit the RAM on odd cycles (the 68000 can only read memory on even cycles) to keep things moving at a decent pace.
Amiga fast ram is basically RAM above 512k, and the OS would prioritize (if the Fast RAM first program was run ) the fast RAM for a performance boost.
Re: (Score:2)
What you're thinking about was called "chip ram", which was shared between the amiga custom chips and the cpu. Where "fast ram" was only accessible by the cpu and could be much faster.
The limit was only 512k on the earliest models, it was increased to 2mb and remained there until the demise of commodore.
Re: (Score:2)
Most people only had 512k, or 1 meg but the extra 512 was "slow RAM", which the chipset couldn't access but which was on the same bus so the CPU had to wait for access anyway.
Re: (Score:2)
Only on the 1000. By the A500 and A2000, anything beyond your first 512kB (or for later A500s, 1MB, but even then only if you did some additional work) was fast ram.
Re: (Score:2)
I don't think so. The A500 definitely had slow RAM as well. I think the key thing was that it could be fast RAM, but to keep costs down it could also be controlled by the chipset (Agnus?) so that a controller/bus arbiter was not needed.
Re: (Score:2)
The 68000 had disadvantages compared to the 8088.
It did not support the existing inexpensive 8-bit peripherals, it had no legacy compatibility with CP/M applications, and there was no 8-bit version which allows for narrower memory and half as much bus logic to save costs.
Later disadvantages of the 68000 include double indirect addressing and inability to restart from a fault because of lost state.
Re: (Score:2)
There was an 8 bit bus version, the 68008. It wasn't popular. The Sinclair QL used it.
Re: (Score:2)
Re:So... MicroSoft-DirtyOperatingSystem then? (Score:5, Insightful)
To be fair, DOS itself isn't that bad. Most of the issues are to do with the 8086 and the IBM BIOS. The IBM architecture and ISA bus are not great either, particularly the way interrupts work.
The most famous issue is due to the 8086's 1MB address space. Some of it is needed for things like the video memory and the various components that made up the IBM Personal Computer, leaving a maximum of 640k for RAM. Of course, the original machines came with as little as 16k RAM, so it probably didn't look like a major limitation at the time.
By the standards of the day, i.e. against things like CPM, it wasn't that bad.
Re: (Score:2)
Re: (Score:3)
That was one of the rather neat things about the BBC, the teletext main screen mode took up a mere 1K of ram while allowing moderately rich semi graphical interfaces, so you got almost the full 32K for data.
Re: (Score:2)
I seem to recall its 6502 was running at 2MHz, so they must have splashed out on 4MHz RAM to use the "every other cycle" trick for the video hardware.
Actually I seem to remember the fast RAM being a difficult part of the development. Was it only one Japanese manufacturer that offered it?
The 6502 was nice like that. The Amiga was complex and hard to get good performance from in no small part due to the way it had to arbitrate RAM access, forcing the programmer to really think about it.
Re: (Score:2)
I seem to recall its 6502 was running at 2MHz, so they must have splashed out on 4MHz RAM to use the "every other cycle" trick for the video hardware.
IIRC, and frankly this is going a way back so I may not RC, the 6502 took two ticks to do anything. I don't know if that meant that the it actually only hit the RAM every other cycle.
Re: (Score:2)
It was something like that, basically you run the RAM twice as fast as the CPU and every other cycle is available for video etc
Re: (Score:2)
Re: (Score:2)
True indeed. The result was an 8 bit memory bus and 8 bit ISA, further limiting performance.
Re: (Score:1)
Re: (Score:2)
...now it all starts to make sense.
The subsequent over-complexity, inconsistency, and arcane limits of DOS commands and Windows APIs must have roots in the Quickness and Dirtyness of the original OS that Microsoft bought and, again quickly, adapted and extended.
If we're talking about APIs, original DOS stole them from CP/M, DOS 2.0 stole from Unix, DOS 3.0 stole some from IBM OSes, and Windows stole their API from the Mac. So, if you find DOS/Windows APIs cumbersome, it's the originals' fault :)
monstrosity of a chip [i8086] can be contrasted with the Motorola 68000 of the same era. Take a look at their instruction sets side by side sometime if you have time, with an eye for elegance, orthogonality, simplicity, consistency of design...
Funny, the MC68000 architecture is quite reminiscent to IBM's own System/360 from 1965.
Re: (Score:2)
The 68000 was a great chip. Unfortunately, Motorolla didn't have a working 68000 at the time IBM was shopping.
While the Intel 8088 was inferior, it was 1) available, 2) familiar to IBM Engineers (I beleive as a micro-controller).
This diffictulty in making a working product is also the reason Acorn (as in ARM) built their own (and better) version of the 68000.
Western Digital was created by ex-Motorolla employees who created a better 6800 chip, ie the 6502. See a pattern developing?
Re: (Score:2)
The 68000 was a great chip. Unfortunately, Motorolla didn't have a working 68000 at the time IBM was shopping.
The 68000 was available. What was not available yet was the 68008 with an 8-bit external bus which would have kept the system price down.
Re: (Score:2)
The only accurate statement there is that DOS cloned some CP/M system calls into int 21h to ease translation.
Re: (Score:2)
The only accurate statement there is that DOS cloned some CP/M system calls into int 21h to ease translation.
And cloned various data structures to be compatible with translated CP/M applications.
Mostly interoperable! (Score:3)
> which contributed to the rise of a market of mostly interoperable PC clones
That made for fun times. As a kin in the 90's I mostly started with win 3.11 after my C64 but of course had to deal with DOS 6.22 during that time too.
I still like using DOS on real hardware for many things, PIC programming and other serial stuff. I practically abandoned dos and windows once I found GNU/Linux, those early days of home computing were full of discovery, upgrades, compatibility and, SHENANIGANS!
The Microsoft FUD documents, Bill Gates vs Richard Stallman, Linus Tovalds, Bruce Perence, Eric S Raymond and so many others. Microsoft being hauled into court for antitrust reasons, all the incompatibilities between IBM clones and of course the blatent artificial incompatibilities between MS-DOS, PC-DOS and DR-DOS.
You dont get that today. Everything works and anything new is highly complicated, written in the language of the year, possibly cloud based and may also be bloated simply because we are so spoilt with GiB's of memory, TiBs of storage and multiple cores running several GHz's. Lean, clever, efficient code need not apply and almost every bit of hardware is the same as any other bit and is very mich plug and play.
The names involved today do include some of the old ones, but mostly are names of those running social networks which are as interesting as mud in my opinion.
No wonder so many like retro tech, you actually had to learn stuff and think and troubleshoot.
Re: (Score:1)
In related news... (Score:1)
And... (Score:1)
Re:And... (Score:4, Insightful)
You're only half right. Slashdot used to be relevant, but it was always behind 2-7 days on the majority of stories. It was never intended to be a place that broke news, it was a place to discuss it. And it still is.
See also DR-DOS (Score:2)
Very cool (Score:2)
But for me the version where DOS started getting good was 3.3 (or I guess 3.31). And 5.0 had the biggest impact on my life, because I really got into QBASIC. It was so much easier to learn with the built-in help compared to GW-BASIC, despite being very similar languages (minus the line numbers)