back to article Bill Gates, Harry Evans and the smearing of a computer legend

The roots of Microsoft's success in using a clone of Gary Kildall's CP/M operating system are well-known and supported by a court ruling five years ago. But that hasn't stopped a software consultant from making claims that could smear Kildall and the late computer pioneer's legacy. In an astonishing piece published by the IEEE …

COMMENTS

This topic is closed for new posts.
Thumb Up

@Vladimir Plouzhnikov - Re: Memories of the once cutting edge.

Ha, yeah. I'm not sure whether to thank you for reminding me or to suggest we start a forum to discuss the matter in all its glorious detail.

As they say, 'it's déjà vu all over again', it reminds me of the disputes and arguments we had at users' group meetings way back then. >:-)

1
0
WTF?

Re: Memories of the once cutting edge.

wasn't PIP a rip from DEC's OSs? I definately used PIP on PDP 11's running RSTS/E and maybe RSX.

1
0
Silver badge

Re: Memories of the once cutting edge.

Was only later versions of RT-11 that included DCL. Around the time that CP/M was written, it was all PIP etc.

0
0
Silver badge

Re: Memories of the once cutting edge.

I don't think RSTS had PIP, but I could be wrong. Certainly RSX-11M before version 4.0 only used MCR, so PIP was essential. DCL was added to RSX-11M as a port from IAS, which derived from RSX-11D.

Interestingly, it appears that RSX-11M was one of the the first project that Dave Cutler led.

0
0

Re: Memories of the once cutting edge.

The 'Gary went flying' thing is a myth. What really happened is that Dorothy Kildall, who was Gary's wife and lawyer, looked at the contract IBM offered and said "No way." Gates knew why DR had turned IBM down but decided the potential was so great that he would go with what IBM wanted and renegotiate later. It was the right choice as the IBM PC and MS-DOS market overtook the CP/M world in remarkably little time. Just a few years later, folks who considered themselves fairly savvy had never seen a CP/M system running.

One aspect the article misses is the CP/M was hardly original. It was based on large systems (mainly the TOPS-10 OS of the DECsystem10 mainframe) Kildall had worked with before deciding to create something make small systems usable for non-coders.

Another thing that makes the source code comparison dubious is that CP/M was written in Kildall's own PL/M language. I suppose if a disassembly of CP/M-86 and PC-DOS 1.0 were each created and compared, that might be a useful comparison.

I do know that there was a DR copyright easter egg hidden in CP/M that be reproduced on the original IBM PC. It was coded in such a way as to create incompatibilities if not replicated, I suppose. I find it hard to believe there wasn't an easy workaround and that it was just the quick and dirty way to get it done.

2
0
Silver badge

Re: Memories of the once cutting edge.

>I do know that there was a DR copyright easter egg hidden in CP/M that be reproduced on the original IBM PC.

Exactly. That proved to IBM that their new baby had some issues. Gary was preparing for litigation but IBM settled. This included:

Money to Gary, amount never revealed.

IBM rewrote much or DOS to avoid the copyright issues. This is why the comparison fails. It was only MS/PC-DOS 1.0 that was derived from CP/M source code. Later versions had IBM written code.

DRI were given the rights to clone any PC-DOS version. This is why Concurrent-CP/M-86 and DR-DOS could use FAT (with improvements) without being sued.

IBM would sell CP/M-86 alongside PC-DOS. However they priced it at $250 vs $70 and then did not update this to later versions, so DRI had to do their own retail CP/M-86 1.1 for IBM-PC.

1
0
Pint

Re: Memories of the once cutting edge.

"I do know that there was a DR copyright easter egg hidden in CP/M that be reproduced on the original IBM PC."

This sounds like an echo of the story ---- I am tempted to call it a hoax --- peddled by the sci-fi writer Jerry Pournelle.

The Spectrum article makes it perfectly clear that in a 160 KB OS there is no way to conceal that Easter Egg.

"First, no one knows the secret command; Pournelle claims he wrote the command down but has never shown it to anyone. In addition, such a message would be easily seen by opening the binary files in a simple text editor unless the message was encrypted. CP/M had to fit on a floppy disk that held only 160 kilobytes; Kildall’s achievement was squeezing an entire operating system into such a small footprint. But it is difficult to imagine he could do this and also squeeze in an undetectable encryption routine."

2
2

Re: Memories of the once cutting edge.

Pretty easy to do actually, you wouldn't have the message stored as a string, but as pointers to the chars that made up the string, then using a simple cypher of some sort, you could build the message by loading the starting location then applying the cypher to the starting location to derive the next location, until the message is built.

That said would be pretty dull task to embed the hidden message but meh, certainly do-able.

0
0
Holmes

so

The only thing QDOS did was rip off the API.

But thanks to the google / oracle spat we now know that an API is not protectable.

So they did nothing wrong? Also I'm guessing this was more an attempt for the guy to advertise his codesafe software.

2
0
Gold badge
Happy

Re: so

I don't think this year's google/oracle spat tells us *anything* about the protectability of an API over 30 years ago.

But then, as a lapsed physicist, I have issues around proper time-ordering and causality.

1
0
Happy

Re: so

And by google / oracle, you really meant sco / ibm, right?

0
1
Headmaster

Re: so

"But thanks to the google / oracle spat we now know that an API is not protectable"

Maybe not! The trial judge gave his judgement that API should not be copyrightable, but the appeal court may decide differently. It won't be settled law in the USA until the US Supreme Court has given judgement.

What, you think that Oracle are going to give up so soon?

0
0
Anonymous Coward

Re: so

Ok, it may not be 30 years ago, but there were also copies of MS-DOS, such as DR-DOS, which were fully compatible systems, including API.

There are even systems now which try to copy Windows' API, such as Wine.

0
0
Windows

APIs are not protected

It's pretty well established that APIs are not protected by copyright; they're "functional", while copyright is about "expressive" works. So a clean-room copy of an API is okay and quite normal.

I recall a Microsoft magazine advertisement from 1982 or so that was emphasizing that MS-DOS was more like CP/M (8-bit for the Z-80) than CPM-86 was. So programmers would have an easier time with MS-DOS. CP/M-86 was a flop. The DEC Rainbow was so named because it ran both 8-bit and 16-bit versions of CP/M; by the time it came out, neither mattered. Eventually it got a port of MS-DOS but even that wasn't enough, because PC compatibility was the market requirement, not OS support. The OS didn't do all that much, after all; early PC programs largely wrote to the hardware.

3
0
Silver badge

Re: APIs are not protected

> The OS didn't do all that much, after all; early PC programs largely wrote to the hardware.

Most CP/M systems used serial terminals such as ADM-3a and Wyse 50 which allowed screen adressing and character attributes to give useful screen orientated user inteface.

Many MS-DOS systems continued to use these serial terminals or emulated them in their BIOS.

PC-DOS was largely useless for anything more sophisticated than command line stuff. While it did have ANSI.SYS this was a very poor and slow emulation of a character addressable terminal. Using the IBM-PC BIOS calls to access the underlying addressability of the screen was also quite poor.

The only way on an IBM-PC to get the features previously common on CP/M with a good performance was to do direct screen writes. Much software, such as WordStar, WordPerfect, Supercalc etc could be configured to use terminal codes from a wide range of devices, or could be configured to use CGA or Hercules. Turbo-Pascal was available in different versions for MS-DOS (configurable terminal) or PC-DOS (direct screen writes) as well as CP/M, CP/M-86 and others.

Your 'early' and 'largely' do not fit together, though direct writes may be done by software it wasn't generally the only mechanism until Lotus.

1
0

Surely there is another conclusion.

Once could infer that either the code does not match, or the code checking software so heavily plugged does not work as well as suggested.

5
0

This post has been deleted by its author

Anonymous Coward

IEEE

Maybe hard pressed for cash ?

2
0
Silver badge

I don't quite follow.

The nearest thing to a smear of Kildall I can see is in the reference to the circumstances of his death. I will say that

"Breaking this statement down, I determined that “jnz” was a standard program assembly language statement for “jump if not zero."

is hardly worth breaking out the deerstalker and pipe for.

4
0

Re: I don't quite follow.

Wat?!

If he doesn't know there's this thing called assembly language and there's this thing called a manual, he's in desperate need of someone to give him a boot up the jacksie and tell him to sod off until he gets a clue.

2
0
WTF?

No results?

So an example of how effective this code scanner is, is by showing an example where it didn't pick up any similarities? Does the thing actually work?

3
0

Ms Stob covered this (in the days of Dr. Dobbs)

http://www.drdobbs.com/waltz/184411096

"It matters not a bit that you scream and you holler

For what kind of jerk ends a string with a dollar?"

4
0
Anonymous Coward

QDOS was a clone of CP/M in the same way that Linux is a clone of AT&T Unix - they have similar system calls, but the actual implementation of those system calls and the underlying sub-systems are different. QDOS also tried to improve on CP/M in much the same way as GNU bash tried to improve on AT&T Bourne shell, by providing more intuitive and flexible commands.

10
0
Silver badge

> QDOS also tried to improve on CP/M ... by providing more intuitive and flexible commands.

Nonsense. COPY was much less flexible than PIP. EDLIN was ... well, useless.

You may have experienced MS-DOS 2.x or 3.x but QDOS wasn't even at MS-DOS 1.0 level and MS-DOS 1.0 was _much_ worse than CP/M 2.3.

2
0
Gold badge
Meh

so it's a *partial* API copy

and since the API is *not* protected that's no problem.

It *might* get a bit murky if you used the debugger to look *inside* some of those functions, could not find another way to implement them and simply copied chunks of the code. The first part does not help the case but the 2nd is *highly* unlikely given the number of ways to implement stuff at this level.

However debuggers are flexible tools and I'd guess Paterson would have used it to look at either the data structures on disk or the data structures those disk files created in memory.

QDOS was created to be *compatible* with CP/M to leverage its tools, hence doing things like putting all the *new* elements of a disk data structure after the CP/M bits to allow CP/M tools to read them (hopefully ignoring the rest of the structure).

*if* the assertion about CP/M being written in PL/M is true it would have been compiled into machine code so this tool *could* have picked up similarities, but that would suggest that QDOS copied the *source* code and ran it through the same (or very similar) compiler. That would make a match even less likely as human and compiler generated code is unlikely to be very similar.

All told a very cynical exercise in product publicity.

But note.On this basis there is *nothing* to stop you producing an API clone of Windows *provided* you don't look inside the functions and *only* use the documentation.

But how will you clone the functions they don't document?

2
0
LDS
Silver badge

Microsoft was forced to publish its API to be "cloned"

Let's remember that Microsoft was forced to publish its own API so everybody could "clone" them for interoperability reasons - what's SAMBA if not a clone of several Windows API under *nix?

Isn't ReactOS trying to implement a "clone" of Windows? As long as Paterson didn't copy real CP/M code he has just written a compatible OS.

4
0

IEEE

Are these the same guys who ratified Microsoft's part published file spec' as a standard a year or so back?

3
0

Re: IEEE

No, that was ISO. And considerably more than a year or so back.

0
0
FAIL

IEEE is just a shadow of its former self

I spent a significant part of my life disassembling and understanding how CP/M, 86-DOS and CDOS worked internally. I wrote an IEEE Spectrum article in the 70's explaining a neat trick that the CDOS (Cromemco DOS clone) originated to optimize floppy disk read routines to the Z80 instruction set.

It is hard to believe that Spectrum would publish something like this when there are so many with actual expertize still alive to peer-review junk like this...

11
0
Silver badge

Re: IEEE is just a shadow of its former self

> CDOS (Cromemco DOS clone)

You imply that CDOS is a clone of [MS-]DOS.

Cromemco's CDOS was a clone of CP/M 1.x written for the Z80.

1
0

Dunno why the fuck Bill Gates' name is in the title of this article.

All I can say is that whatever occured in the past, thank the heavens Microsoft were as successful as they were, where would we be now, otherwise?

1
7
Anonymous Coward

Douglas Adams 1995

“The idea that Bill Gates has appeared like a knight in shining armour to lead all customers out of a mire of technological chaos neatly ignores the fact that it was he who, by peddling second-rate technology, led them into it in the first place.”

8
1
Silver badge

Where is the joke icon?

This was a joke, wasn't it?

0
2
Anonymous Coward

Re: Douglas Adams 1995

Douglas Adams was hardly an IT expert, or an IT history expert, he was certainly not impartial either. Douglas was a gadget fan and a Mac enthusiast. Asking Douglas Adams about IT history is like asking Stephen Fry about the same.

What Douglas failed to grasp, because he didn't work in industry, was that MS managed to supply inexpensive (relatively) Operating Systems which broke the strangle hold of Big Iron on the datacentre and the dumb terminal on the desktop.

2
3
Thumb Down

Re: Where is the joke icon?

It wasn't a joke. It was a real quote from the great man. I believe it was in a Guardian article back in 1995. A quick google search turned up this:

http://www.gksoft.com/a/fun/dna-on-microsoft.html

Which, if you scroll down to the bottom, you'll find:

"Autor: Douglas Adams

Quelle: "http://fsinfo.cs.uni-sb.de/~ramsch/Anti-ms/dna.html"

(ursprünglich: "The Guardian" of Friday Sep 01 1995) "

My German isn't that great but "ursprünglich" means "originally", though I can't find the original article on the Graun's website.

Colin

0
1

Re: Douglas Adams 1995

Adams had no firsthand idea what things were like before the 80s. Or even before the IBM PC. The Model T was not technologically exciting, even when newly introduced, but it was the critical product that changed the world while more exotic machines came and went with little effect on the average motorist's life.

He also thought it mattered that the original 128K Mac had no Y2K issues lurking in it. As if anyone was still using one for anything important just two years later, never mind sixteen years later. Even those original units that boosted up to 512K to become actually useful machines were still extremely limited to what was being offered for half the price only five years later. And that is just counting Apple and leaving aside the rest of the industry's advances.

1
1
Pint

Re: Douglas Adams 1995

Dear Douglas, your acerbic wit is sorely missed.

2
0
Facepalm

Where would we be now?

Running something looking like a PC, but running very much more reliably, with a proper formal security model, true multi-tasking, no memory leakage, and in a world where use of the phrase "anti-virus software" would cause everyone present to frown in puzzlement...

5
1

Microsoft did that too

Absurd thing is, you describe Unix and believe or not, Microsoft was also a Unix vendor.

See: http://www.answers.com/topic/xenix-technology

As I was loading games from tape to my Atari that time, I have no clue why it wasn't that popular.

0
0
Silver badge

Re: Where would we be now?

As one who has just lost several days trying to chase down some sort of funkiness in the CIFS world, I am no Microsoft apologist. Yet I am curious to know what this wonderful machine is. Does it run a Unix variant? Those have true multitasking, but their security models have been pretty flaky at times. Does it run Multics? That was pretty secure, but not invulnerable, and I don't know it had every been shoe-horned into PC factor back when QDOS was out there. OS/2? That I can't comment on--I've known users who thought very well of it.

0
0
Gold badge
Meh

Re: Douglas Adams 1995

Wrong.

IBM *started* looking at these "personal computer" things when they discovered their engineers were using them to bypass their in house IT dept.

Specifically the Apple II and, although I'd guess some of the CP/M machines were as portable.

MS did provide an OS that because it was backed by IBM raised the level of comfort that large corporations had about this happening.

Perhaps you should do a little more reading on the subject.

1
0
Silver badge
Unhappy

Re: Where is the joke icon?

Sorry, my "where's the joke icon" was actually directed at b166er at 15:12, not at the reply about Douglas Adams.

I always had great respect for Douglas ever since I heard the radio series of the Hitch Hikers Guide to the Galaxy when it was first aired on Radio 4 in 1977. At the time, I was impressed that he was the first radio show writer to make good use of Stereo to benefit the comedy content, but as time progressed, his detailed use of English ("...almost, but not quite, exactly unlike Tea..." etc) to make rational arguments of clearly absurd situations was genius.

I was very upset when his refreshing view of the world was taken from us all. I can only hope that he is really sitting in a bar in the Domain of the King, enriching that world, wherever it is.

I'm sorry that my reply was misconstrued.

0
0
Silver badge

Re: Douglas Adams 1995

> IBM *started* looking at these "personal computer" things

IBM had previous produced it own desktop computer, the 5100 series. The IBM PC was model 5150 (I have one here) was based on another machine they produced, the Series 23.

But generally you are right. Apple ][ with CP/M softcards started appearing in customer mainframe sites running BASIC, Visicalc, Wordstar and such and IBM decided that they needed to keep their customers IBM only so they built the IBM PC to be better than Apple ][.

64Kb (up to 256Kb max on Model A) vs 48Kb, 160Kb diskette vs 120Kb, 4.77Mhz vs ??. MS BASIC, Visicalc, Wordstar etc. It could also be a terminal to mainframe.

Actually you could buy a 16Kb IBM PC with no diskette to run BASIC as these had a cassette port built in (the model B I have still has this).

0
0
Silver badge

Re: Where would we be now?

I'm really not sure what you mean by "their security models have been pretty flaky at times", because it has not changed. The standard UNIX security model has not changed significantly in 40 years. It is amazing that it stands up at all against what is available in modern operating systems, let alone be regarded as more secure in some instances.

Whilst it is far from perfect, it is simple enough to be well understood by most people working with it, something that I don't believe is really true about some other operating systems. This means that it was and is used correctly. Also, remember that UNIX was not just multi-tasking from the word go, but also multi-user. It was a mature although developing operating system when the IBM PC was launched.

At the time of the original IBM PC, UNIX could and did run on 16 bit machines. You must remember that Xenix (which ran on IBM PC/XTs), was based on UNIX Version 7, and UNIX Version 7 ran on PDP11s in as little as 128KB of memory. In fact the architecture of non-I&D PDP11s required the kernel to fit in less than 56KB of memory.

The biggest problem is that UNIX has always worked best on systems with hard-disks. The basic tool set of UNIX (effectively the / and /usr filesystem) was around 2.5MB on a PDP11 IIRC, so squeezing that down to 128KB disks was an impossible task. That's not to say people didn't try. I saw several floppy based implementations of UNIX around at the time, but they were generally slow and barely usable. Also, pipes working through floppies (early UNIXs at the time used an unlinked file to store the pipe data over 1 block) were incredibly slow.

There were small UNIX systems available at the time. AT&T had their 3B1, and other people like Onyx, Tadpole and Torch (and many others) had mainly 68000 based UNIX systems available, albeit more expensive than a PC. And the interesting thing is that these contemporary systems to the IBM PC were already 32 bit systems, not 16 bits like the Intel 8086.

Life really would have been better based around UNIX on PCs!

0
0
FAIL

Disappointing

As a dues-paying member of the IEEE, I am not only disappointed that this article in the generalist Spectrum magazine is so woefully wrong, but I am doubly disappointed that I in part paid for it.

9
0

Re: Disappointing

Wasn't that magazine publishing articles like "I found an effective way of code analysis via neural network based algorithm, here is a first attempt"?

I mean are they trying to become popular science in age of mass ignorance?

0
0
Boffin

I remember those days

And who ripped of what from whom used to be a very popular discussion and a subject of much controversy, as well as what exactly defines "ripped off". In those days my department used to receive pieces of kit from unknown sources, with little of no documentation, with the instructions, "figure out what it is, how it works, and how we can make one". We certainly didn't directly use any code, or hardware designs, but there were many long nights pouring through disassembled code, and hand drawn sections of schematics, to figure out what it was doing and why..

2
0
Anonymous Coward

Pirates of Silicon Valley...

Well, there is an alternate version of what happened during that period. Here is a documentary that mentions the events (watch from 12:46 onwards) http://www.youtube.com/watch?v=HFg0YkQRB74

The participants in the documentary include: Steve Balmer, Bill Gates, the IBM executive who was responsible for signing a deal with Microsoft for MS-DOS, and a former employee of Digital Research.

1
0

Watch the movie too

While on it, watch the TV movie of that documentary which was shot before Steve Jobs got prophet status, e.g. Hollywood could dare to show him objectively.

You will also understand why he was that pissed off about Android.

0
0
Silver badge

Beyond Doubt

I'm happy to accept that neither QDOS nor MS-DOS nor PC-DOS contains a line of code from CP/M. Or even CP/M-86, given that 8080 code won't run on an 8088.

But MS-DOS was almost identical to CP/M in terms of what the commands were, their syntax, and their function. For that matter, CP/M was derived from OS/8 by the Digital Equipment Corporation in the very same way - even though OS/8 used 6.2 filenames instead of 8.3 filenames.

In that case, there was even a smoking gun - the PIP command (Peripheral Interchange Program) - which Microsoft at least had the decency to rename to COPY.

Lotus 1-2-3 established that look and feel could be protected... but that would mean that Linux is an illegal rip-off of Unix, wouldn't it?

So perhaps we shouldn't want to go there...

1
1
This topic is closed for new posts.

Forums

Biting the hand that feeds IT © 1998–2018