Stories
Slash Boxes
Comments

SoylentNews is people

posted by n1 on Friday August 05 2016, @03:07AM   Printer-friendly
from the troubled-genius dept.

The Computer History Museum has released part of the memoir of Gary Kildall. Kildall founded Digital Research, Inc., co-hosted The Computer Chronicles on television and wrote CP/M, the first operating system for personal computers. The extract from his memoir Computer Connections can be downloaded after agreeing to a lengthy EULA (Javascript required). It was provided by Kildall's family, who wrote

We have chosen to release only the first portion of his memoir. Unfortunately Gary's passion for life also manifested in a struggle with alcoholism, and we feel that the unpublished preface and later chapters do not reflect his true self.

In related news, a presentation comparing the source code of MS-DOS to that of CP/M will be given at the museum, in Mountain View, California, on Saturday during the Vintage Computer Festival.

additional coverage:


Original Submission

 
This discussion has been archived. No new comments can be posted.
Display Options Threshold/Breakthrough Mark All as Read Mark All as Unread
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • (Score: 0) by Anonymous Coward on Friday August 05 2016, @05:41AM

    by Anonymous Coward on Friday August 05 2016, @05:41AM (#384391)

    From the Wikipedia article:

    Kildall obtained a copy of PC DOS, examined it, and concluded that it infringed on CP/M. When he asked Gerry Davis what legal options were available, Davis told him that intellectual property law for software was not clear enough to sue.[12] Instead Kildall only threatened IBM with legal action, and IBM responded with a proposal to offer CP/M-86 as an option for the PC in return for a release of liability.

  • (Score: 2) by SomeGuy on Friday August 05 2016, @07:44AM

    by SomeGuy (5632) on Friday August 05 2016, @07:44AM (#384411)

    Kildall obtained a copy of PC DOS, examined it, and concluded that it infringed on CP/M.

    Of course he did. It looked and worked similarly. And he knew it was going to compete heavily against him.

    Many others did similar even when there was no real case, such as Lotus suing the makers of the spreadsheets VP Planner, Quattro Pro, and The Twin over the the trivial similarity of their menus.

    It will be interesting to hear what this presentation at Computer History Museum has to say, but it is fairly well established that the DOS code was in no way a direct copy. Keep in mind that at the time CP/M was mainly for the Z80 CPU and DOS was for the 8086/8088. You can't just copy unknown blocks of code and have it work, it would at minimum have to be translated and re-written for 8086. DOS also did quite a few things differently, such as using FAT from Microsoft's disk basic. On top of that, we are talking about just a few thousands bytes of code - just 6400 bytes for the 1.0 IBMDOS.COM (kernel) 1920 for the IBMBIO.COM (machine-specific drivers) and 3231 for the command interpreter. It was designed to make it easy to port CP/M application by using well known documented calls and structures. So of course there will be some similarities.

    In my mind the only remaining issue is that it may not have been "clean roomed" quite to the extent to pass the standards that evolved later.

    Personally, I think it would be more interesting to hear about marketing tactics afterward that may have helped keep CP/M-86 from making inroads on IBM PC and compatible systems.

    • (Score: 1) by anubi on Friday August 05 2016, @08:42AM

      by anubi (2828) on Friday August 05 2016, @08:42AM (#384426) Journal

      This is one of the reasons I really enjoy these forums.

      I had always thought PC-DOS *WAS* CP/M-86, rebranded, and customized for the PC.

      I thought Gary Kindall was the true author of DOS, but Gates had bought the rights to use it for the PC... how far off am I?

      I stand corrected. By the similarity of these, it sure had me fooled.

      --
      "Prove all things; hold fast that which is good." [KJV: I Thessalonians 5:21]
      • (Score: 2) by NCommander on Friday August 05 2016, @09:24AM

        by NCommander (2) Subscriber Badge <michael@casadevall.pro> on Friday August 05 2016, @09:24AM (#384433) Homepage Journal

        MS-DOS was based on a product Microsoft bought called QDOS which was intended to be a quick and dirty knock off CP/M. https://en.wikipedia.org/wiki/Seattle_Computer_Products [wikipedia.org] for the full story. Even taking an account that was 1980 dollar prices, MSFT made off like a fiend ...

        --
        Still always moving
        • (Score: 1) by anubi on Friday August 05 2016, @10:29AM

          by anubi (2828) on Friday August 05 2016, @10:29AM (#384437) Journal

          Thanks for the link, NCommander!

          That old CP/M I had on my old IMSAI was so similar to the MS-DOS I later played around with that I thought it was the same thing, just a later and more specific version.

          Of course, at that time, a lot of us were writing our own DOS. All incompatible with each other. My first one was centered around my pride and joy... a solenoid-controlled Astrocom-Marlux reel-to-reel audio tape transport sold by Lafayette Electronics. I made an interface to the IMSAI so it could control the transport. I would have to remember what starting block my program started at, and when I booted into my OS, it would ask me which block of the tape to start loading at. I would type in something like 38G2000(enter), and it would search the tape deck to find block 38 and start loading until end of file, then jump to location 2000. The onus was on me to know where the free blocks in the tape were and not overwrite any.
           
          ( I had my assembler on block 138 IIRC ).

          I remember I would format a 7" reel of tape and get several thousand blocks of 2 kilobytes each ( same data payload size as 2716 EPROM ). Manchester coded. I had coded that old OS to make it specifically easy for me to put stuff from RAM page to tape, tape to RAM, and RAM to EPROM, and EPROM to RAM.

          Remember those old erasers we had to put the 2716 under to clear them?

          Those were the days, weren't they?
           

          --
          "Prove all things; hold fast that which is good." [KJV: I Thessalonians 5:21]
          • (Score: 3, Interesting) by NCommander on Friday August 05 2016, @10:52AM

            by NCommander (2) Subscriber Badge <michael@casadevall.pro> on Friday August 05 2016, @10:52AM (#384441) Homepage Journal

            I postdate the era of "roll your own" OS by a good 10 years, but I'm well familiar with the concept, and I've done it on microcontrollers. For final shits and giggles though, if you want to play with a "modern" DOS-like environment, playing around with UEFI is basically portable DOS as the programming model is identical. It's not too hard to get any modern PC to load the UEFI shell (I've done it on this laptop, and on a 2011 desktop. My Itanium clunker had the shell burnt into ROM which helped a lot).

            In UEFI, your main function gets two points to a list of lists, and a list of pointers. Anyone who's familar with DOS will remember the magic list-of-lists programming model. You have to walk the table to figure out which APIs are available, and then call them with the correct prototype (the UEFI SDK has a rather impressive set of C macros to allow the compiler to catch most of the stupid. You can't just use a regular prototype as UEFI C uses an unusual call ABI which means most compilers can't do a regular function call into the function tables).

            --
            Still always moving
            • (Score: 0) by Anonymous Coward on Friday August 05 2016, @01:25PM

              by Anonymous Coward on Friday August 05 2016, @01:25PM (#384471)

              > You can't just use a regular prototype as UEFI C uses an unusual call ABI

              Is there any reason it’s different?

          • (Score: 2) by martyb on Friday August 05 2016, @04:36PM

            by martyb (76) Subscriber Badge on Friday August 05 2016, @04:36PM (#384523) Journal

            Nice to meet someone else who had worked on an IMSAI 8080!

            I was working at a lab which made various diagnostic tests. Accounting software, among other things, was running on CP/M [www.gaby.de] on their IMSAI 8080 [wikipedia.org]. I remember the first time I read through the documentation thinking that it looked familiar... I had previous experience using a DEC PDP-8 [wikipedia.org] and then a PDP-11 [wikipedia.org] — remember PIP (peripheral interchange program)? The IMSAI had 8-inch floppy disks with a write-enable tab, IIRC. And then it appeared in the movie "War Games"... fun times, indeed.

            Thanks for the trip down memory lane!

            --
            Wit is intellect, dancing.
            • (Score: 1) by anubi on Saturday August 06 2016, @06:54AM

              by anubi (2828) on Saturday August 06 2016, @06:54AM (#384711) Journal

              The last thing I had bought for my IMSAI was a pair of CALCOMP100 8 inch drives, and an FD1771 controller. That was when I was finally giving into commercial software ( aka CP/M ). No sooner than I finally had that beast functional, the company I worked for at the time got one of the first IBM PC's.

              Back then, they actually put the source code of the software, AND the schematic diagram of the machine in the technical manual!

              I felt like I knew everything about my machine. If it broke, I could always go get my oscilloscope and find the hung line or chip that did not do what it was supposed to do.

              These new machines.... well I feel I am in a tiny neighborhood I know reasonably well in a huge city. Move me a couple of miles over and I am lost.

              --
              "Prove all things; hold fast that which is good." [KJV: I Thessalonians 5:21]