please see embedded remarks below.
Dick
----- Original Message -----
From: Sean 'Captain Napalm' Conner <spc_at_armigeron.com>
To: <classiccmp_at_classiccmp.org>
Sent: Friday, April 07, 2000 1:13 PM
Subject: Re: !Re: Nuke Redmond!
> It was thus said that the Great Richard Erlacher once stated:
> >
> > > MS DOS:
> > > They bought a clone of CP/M
> > >
> > I used CP/M every day for about six years. When I saw my first MS-DOS,
I
> > noted that the console command for a file list was 'DIR' and 'TYPE' and
> > that's where the similarity ended. The file system architecture and
> > associated function set was totally different from CP/M's, and the
console
> > commands were different. What they had in common beyond 'DIR' was that
they
> > responded to keyboard commands just like ALL other OS'. CP/M used PIP
> > rather than Copy. Are you now going to say they swiped that from OS-8?
I
> > just can't convince my self that there's much in common between MSDOS
and
> > CP/M.
>
> The similarities of MS-DOS to CP/M are mostly internal. In looking over
> the list of OS functions between the two, the first 36 functions of each
are
> the same, with a few notable exceptions where the concept don't match
> (MS-DOS for example does not have an IOBYTE).
What of those things internal would you have had them leave out in order to
be more different from CP/M, which was a VERY popular OS at the time,
without removing its functionality. Since the features to which you refer
are internal, I assume you have precice citations of common source code,
right? They're certainly not obvious to me in my role as a fairly frequent
user.
> There are also two ways to call MS-DOS functions, one through the
> documented interrupt call (INT 21h), the other a call to location 0005h
> (that is, for a COM program consisting of a single segment, calling
location
> 0005h in the current segment has the same effect of calling INT 21h---for
an
> EXE program you may not be able to do it since the PSP (the segment the
call
> lives in) is in a different segment than the rest of the program
> typically)), which is how you call BDOS in CP/M.
>
Since there is only one segment in CP/M, I guess you've got 'em there. Of
course it really doesn't matter what the location is, does it? I guess any
OS that load a register and then calls a specific location is a copy of
CP/M, right?
>
> You can also terminate a program by calling location 0000h (again, in a
> COM program). In CP/M this causes a warm reset (similar functionality).
>
It's like saying a FORD is a copy of a Dusenberg because they both use
wheels.
>
> The register usage is different, but that's only to be expected because
of
> differences between the 8080 and 8086, but 8080 code could be mechanically
> translated to 8086 since there was a one-to-one relationship between
> registers. It wouldn't produce optimal code, but it would produce code
that
> would more or less work and these register mappings map pretty well
between
> the CP/M and MS-DOS calls.
>
The mapping of one register set into the other is not an accident. Ask
Intel about that! I'm told that CP/M-86 is considerably more than a
translation of CP/M-80. Now you suggest that the roots of MS-DOS are
entirely in CP/M? They may have common roots, as they reflect the then
conventional wisdom about how one should write a microcomputer operating
system. It should be no surprise to anyone that there are some
similarities. One doesn't want to ignore what works just because it wasn't
invented in house. After all, Pascal is not a copy of Algol just because it
uses mnemonic variable names.
>
> Tim Patterson, who wrote the initial version of MS-DOS while at Seattle
> Products, may have had access to CP/M sources since Seattle Products sold
> CP/M systems and they were working on an 8086 based computer in the late
> 70s. Tim probably modeled his QDOS (Quick-n-Dirty Operating System)
closely
> after CP/M (some say he may have mechanically translated CP/M since
> copyright statements to Digital Research have allegedly been found in
MS-DOS
> 1.x but I haven't seen any). Why not? It would have been a quick and
easy
> way to get an OS for the 8086 system up and running.
>
I've heard that, too. Does that mean that anyone who writes a program to do
what he's seen another program do is making a copy? You're not even sure he
actually saw and read the source code. How many programmers do you know
who'd simply copy someone else's work in a case like this? Everybody wants
to leave his own mark.
>
> Microsoft's coming along and obtaining QDOS for $50,000 isn't that
> straightforward but that's a story for another time.
>
Buying something that shortens your burden is kind-of like buying an
integrated circuit rather than making the thing yourself starting with a
wheelbarrow of sand. The fact that Microsoft knew that IBM had gone to
Kildall probably told them what they wanted was sort-f like CP/M.
>
> > > MS Visual BASIC:
> > > Now this one has bothered me for several years, did they buy the
underlying
> > > technology or copy something that already existed. I've a strange
feeling
> > > that this one was actual innovation!
>
> Apple was working on a version of BASIC for the Macintosh that would
> resemble VB today in the late 80s/early 90s. Microsoft got wind of it and
> threatened to cut their license to Microsoft BASIC for the APPLE II (still
> amoney maker at the time) if Apple actually released the product. Apple
> towed the line and what do you know---Microsoft produces this very
> innovative product called Visual Basic shortly thereafter, but for
Windows.
>
... and now you'd like me to believe that MS knew this and copied it?
Frankly, if I'd been in Billy's place, knowing that Apple had considered it
would have scared me off.
>
> To my knowledge, the Apple ``Visual Basic'' never saw the light of day.>
> -spc (All on topic, stuff happened more than 10 years ago)
>
Received on Fri Apr 07 2000 - 19:14:18 BST
This archive was generated by hypermail 2.3.0
: Fri Oct 10 2014 - 23:32:40 BST