←back to thread

244 points rbanffy | 9 comments | | HN request time: 0s | source | bottom
Show context
csense ◴[] No.44606352[source]
"Glenn came to my tool shed computer room in 1975, so we could "adapt" CP/M to the IMSAI hardware. What this means is that I would rewrite the parts of CP/M that manage things like diskette controllers and CRTs.

Well. come on, I'd already done this so many times that the tips of my fingers were wearing thin, so I designed a general interface, which I called the BIOS (BASIC I/O System) that a good programmer could change on the spot for their hardware. This little BIOS arrangement was the secret to the success of CP/M.

With the BIOS in place, a programmer could make CP/M work with their specialized hardware. With all those hobbyists out there, believe me, there was no shortage of specialized hardware. Glenn and I built a BIOS that afternoon and stuck CP/M on an IMSAI. He demo'd it to Ed Faber and the IMSAI engineers, and they loved it."

Writing a BIOS for a new machine in a single afternoon. Those were the days...

replies(2): >>44606433 #>>44610618 #
1. WalterBright ◴[] No.44606433[source]
In retrospect, MS-DOS was a rather trivial program. Sometimes I wonder why I and/or many others did not write an equivalent, even just for fun.
replies(6): >>44606476 #>>44606487 #>>44607613 #>>44607757 #>>44608443 #>>44612745 #
2. mikewarot ◴[] No.44606476[source]
FreeDOS is one such program. It comes in quite handy at times.
replies(1): >>44606494 #
3. zozbot234 ◴[] No.44606487[source]
There wasn't much of a point in writing a replacement when MS-DOS was bundled with your computer. The FreeDOS project only got started when Microsoft first announced that the then-new Windows 95 would start to move away from MS-DOS and people saw the writing on the wall.
4. WalterBright ◴[] No.44606494[source]
True, but it wasn't usable until 2006, about 20 years too late.
replies(1): >>44608587 #
5. eichin ◴[] No.44607613[source]
TurboDOS was a contemporary one - had multiprocessing (as in, you could have multiple Z80 CPU boards in a single card cage that passed messages over a bus) and was delivered as linkable objects, so you could customize the OS for your hardware (in the multi-Z80 setup, you didn't need any I/O that wasn't in the daughterboards, so in this case the tiny version of TurboDOS on the daughter boards did the message passing thing and talked to the physical serial ports, but didn't need a disk driver since the only disk was hooked to the single master board. Great (long-lost) stuff - we were building an early dialup info-service so each daughter board had multiple modems...
6. rbanffy ◴[] No.44607757[source]
> Sometimes I wonder why I and/or many others did not write an equivalent, even just for fun

In a sense, every game developer back then wrote a very small real-time operating system that dealt with user input, state management, screen updates, and audio. I wrote a window server (a window-stacker would be more accurate) for the Apple II.

7. Torwald ◴[] No.44608443[source]
They did. The GNU project started in 1983.
8. stuaxo ◴[] No.44608587{3}[source]
Its only a decade and change, not too bad

Many things worked way before that.

9. burnt-resistor ◴[] No.44612745[source]
API quirks compatibility, legal threats, and lack of distribution into channel resellers.