Journal of Computer and Communications, 2016, 4, 1-38
http://www.scirp.org/journal/jcc
ISSN Online: 2327-5227
ISSN Print: 2327-5219
DOI: 10.4236/jcc.2016.412001 October 18, 2016
Source Code Comparison of DOS and CP/M
Bob Zeidman
Zeidman Consulting, Cupertino, CA, USA
Abstract
In a previous paper [1], I compared DOS from Microsoft and CP/M from Digital
Research Inc. (DRI) to determine whether the original DOS source code had been
copied from CP/M source code as had been rumored for many years [2] [3]. At the
time, the source code for CP/M was publicly available but the source code for DOS
was not. My comparison was limited to the comparison of the DOS 1.11 binary code
and the source code for CP/M 2.0 from 1981. Since that time, the Computer History
Museum in Mountain View, California received the source code for DOS 2.0 from
Microsoft and was given permission to make it public. The museum also received the
source code for DOS 1.1 from Tim Paterson, the developer who was originally con-
tracted by Microsoft to write DOS. In this paper, I perform a further analysis using
the newly accessible source code and determine that no code was copied. I further
conclude that the commands were not copied but that a substantial number of the
system calls were copied.
Keywords
Copyright Infringement, CP/M, Digital Research, DOS, Intellectual Property,
Microsoft, Operating Systems, Software Forensics
1. CP/M Oddities
The DOS files were written in standard Intel assembly language syntax, but some CP/M
files used a variation I call DRI assembler that was created at DRI while other files were
written in the PL/M programming language developed at DRI. In particular, I found
that an exclamation point could be used to separate multiple instructions on a single line.
I eventually found an assembler user’s guide from DRI [4] that confirmed this syntax.
1.1. Cleaning the Code
For CP/M version 1.3, the code consisted of low-resolution PDF scans of dot matrix
printouts of source code. I performed a number of processes to recover the source code
How to cite this paper: Zeidman, B. (2016)
Source Code Comparison of DOS and CP/
M. Journal of Computer and Communica-
tions, 4, 1-38.
http://dx.doi.org/10.4236/jcc.2016.412001
Received: August 20, 2016
Accepted: October 15, 2016
Published: October 18, 2016
Copyright © 2016 by author and
Scientific Research Publishing Inc.
This work is licensed under the Creative
Commons Attribution International
License (CC BY 4.0).
http://creativecommons.org/licenses/by/4.0/
Open Access