home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Commodore Free 30
/
Commodore_Free_Issue_30_2009_Commodore_Computer_Club.d64
/
general
< prev
next >
Wrap
Text File
|
2023-02-26
|
11KB
|
353 lines
u
CP/M the Operating System for
microcomputers of the 1980s
Mrs. Gaby Chaudry
http://www.gaby.de
By the end of the 1970s & early
1980s CP/M was the standard operating
system for microcomputers. On top of
that, it was the first DISK Operating
System (DOS), & therefore the basis
for today's DOS, & in first place
Microsoft?s DOS. MS-DOS itself derived
from nothing more than a CP/M clone
called QDOS (Quick & dirty
operating system) written by Tim
Patterson. Microsoft bought QDOS from
him to use with the first IBM PC. Many
former CP/M programs have been ported
to DOS, first of all DBase &
WordStar. CP/M itself on the other
hand is based on the Operating System
for the DEC PDP-10, called "TOPS-10",
at least as far as naming conventions
for files & devices & some commands
are concerned. Surely, there are other
influences, but they remain untold.
Many of the computing things that we
take for granted today, have there
roots back to the work of a single
man, that man was Gary Kildall, the
developer of CP/M. Who has ever
thought, why his "my hard disk" is
called C: or where does the DOS
command DIR comes from?
Gary Kildall was born in 1942, &
received a Ph.D. in Computer Science
in 1972, soon he fulfilled a draft
obligation to the United States Navy
by teaching at the Naval Postgraduate
School in Monterey, California. When
Gary attended the introduction of the
new Intel processor 8080 in 1973, he
was so enthusiastic about it, that he
suggested to the Intel managers to
write a compiler (i.e. a program that
builds a ready-to-run program out of
the program code) for the language
PL/1 (Programming Language Number 1).
At this time, PL/1 was often used on
mainframes, so that the Intel people
agreed immediately; the program was
then called (=Programming Language for
Microprocessors).
There was only a small problem: Gary
didn't own a computer that ran an 8080
CPU. He had access to a Digital
Equipment PDP-10 only, & so Gary built
his PL/M compiler in FORTRAN on the
PDP machine. When the compiler was
ready, he needed an 8080 computer for
testing. He even managed to convince
Shugart to donate him a floppy drive.
But, since the cables, power supply &
controller were missing; it didn't
help him very much.
Together with Gordon Eubanks (who
later became CEO of Symantec) he built
an 8080 based computer. For this
machine he wrote an operating system
which he called CP/M (Control
Program/Monitor). He offered a package
containing CP/M, PL/M, & a
development system to Intel for 20.000
US$. Intel wasn't interested in CP/M ,
but they agreed to buy PL/M. So Gary
at least had success with his compiler
& decided to put CP/M on the market
on his own. Together with his wife, he
established a company called
"Intergalactic Digital Research Inc.",
which later was renamed to "Digital
Research Inc." (DR).
Gary started to sell his CP/M through
mail order in technical magazines. It
should be mentioned that exactly at
that time many enthusiasts began to
build computers on their own (e.g.
Altair and IMSAI offered their now
famous assembly kits). What those
computers were missing, was an
operating system, so CP/M turned up in
the right place at the right time.
In 1979, DR published CP/M version
2.0, which soon was followed by CP/M
2.2. This version was the most popular
one & was used worldwide, as it
offered high performance with only
small amounts of memory usage. The
next version, 3.0, also called CP/M
Plus, but wasn't offered before 1982.
Unfortunately, this was one year too
late, since in 1981 IBM started its
triumph.
What was so special about CP/M?
You should be aware of the fact that
microcomputers at that time were
equipped quite badly & often had to
be programmed using switches (e.g. the
Altair & IMSAI 8080 models). If ever,
there was a programming language
like e.g. BASIC, which made it
possible to write & save simple
programs. An Operating System on the
other hand offered possibilities, that
today we take for granted, but at this
time were pure luxury. In first place,
it had a standardized user interface,
which made it possible to run the same
commands & programs on a couple of
different machines, so that the user
didn't need to care about the hardware
anymore. It was just the manufacturer
who had to adopt the CP/M to his
hardware. But, since this was quite
easy to be done, CP/M became very
popular.
CP/M was based on three components:
1. The BIOS (Basic Input Output
System): This was the part that
controlled the basic communication
between hardware & software, &
therefore was different with different
hardware. It consisted of functions as
e.g. reading letters from the keyboard
show characters on the screen, or
reading a sector from a floppy disk.
A computer without BIOS is unthinkable
nowadays.
2. The BDOS (Basic Disk Operating
System), the "brain" of the CP/M. It
was the place where communication
between the command interpreter &
the BIOS took place, i.e. the inputs
and outputs were translated &
forwarded to the CCP.
3. The CCP, the command interpreter.
This was a simple program that had
some built-in commands (e.g. DIR to
show the directory listing) & could
start other programs.
In 1981, CP/M did already run on about
300 different computer types. It even
ran on machines without 8080 or z80
CPU. Microsoft sold the so-called
"Softcard", which made it possible to
run CP/M on an Apple computer. Believe
it or not, but at this time they had
more income with CP/M than with their
own software. As time passed, other
CP/M versions followed: those for the
16 bit CPU 68000 (CP/M-68000) & Intel
8086 (CP/M-86).
In 1980, the decisive turn in the
history of Digital Research took
place. IBM developed the PC, & of
course they needed an Operating System
for it. CP/M seemed to be the ideal
product, as enough software for all
scopes was available for it.
By mistake they thought that Microsoft
produced CP/M (as they sold the
Softcard along with CP/M), & they made
an appointment with Bill Gates, just
to learn that Digital Research was the
right contact. Gates sent the IBM
managers to the nearby town of
Monterey. When they arrive there, Gary
wasn't at home though. Nobody knows
exactly what happened at that time,
but it seems that Dorothy McEwen,
Gary's wife, who managed the company,
didn't agree to IBM's terms and
therefore cancelled the negotiations.
IBM's people addressed themselves to
Bill Gates again, who realized the
great chance & bound himself to
provide an Operating System. When Gary
came to know that PC-DOS was a
plagiarism of CP/M (what he could even
proove), he filed a lawsuit against
IBM. But shortly after that he
abandoned it again, because IBM
offered him a generous
compensatory payment. In the same
course, they agreed to offer CP/M
alternatively to DOS together with
their PC.
What they didn't mention: they charged
three times the price of DOS for the
CP/M. Of course the available range of
software for CP/M was much larger, but
because of the price most customers
choose DOS. Anyway, during this
period many machines where offered
that had both the 8086 & the z80
CPU, & even z80 cards for the IBM PC
where available, so that many
customers could still use CP/M
together with DOS. Some companies even
kept on offering CP/M & its successors
with their x86 machines, e.g. Siemens.
Digital Research didn?t become
inactive, though, & published a
couple of innovative products in the
following years.
An example was Concurrent CP/M, a real
Multitasking System, which was
efficient & easy to operate, because
it used the well known CP/M commands.
Later on they issued DR-DOS, a MS-DOS
compatible, but much more
comprehensive Operating System. In
1991, Gary Kildall sold Digital
Research to Novell. After that, he was
involved in other developing projects,
e.g. the file system for Multimedia CD
ROMs. DR also brought out the graphics
user interface GEM, which wasn't that
popular for CP/M or DOS users, but
then was licensed by Atari & became
well-known as the GUI of the ST series
In any case, the choice of computers
that ran CP/M was quite large at the
beginning of the 1980ies. It can even
be said that in the Personal Computer
sector the Digital Research Operating
System was ruling the market. Software
was available for all kinds of
applications. Freeware was offered in
an extensive range so that CP/M
computers became affordable for almost
everybody. There was only one
disadvantage in CP/M: the mostly
incompatible hardware. i.e. an Osborne
isn't able to read floppies formatted
on a Kaypro and vice versa. When you
wanted to exchange data between
different computers, you had to use
either a converter program or a serial
connection between the machines. On
the other hand, at that time modems &
acoustic couplers already existed, so
that users could connect to a mailbox
& download programs & files.
Of course, at that period, files had
completely other dimensions than those
to which we are used today. You must
consider that a z80 based CP/M machine
didn?t have more than 64 Kbyte of
memory, & a floppy usually could
save not more than 360 Kbyte imagine
how memory thrifty programs had to be
under these circumstances.
Comprehensive programs therefore used
a modular structure, which made it
possible to load only those parts into
memory that were currently needed.
Hard disks were rare & nearly
priceless. Nevertheless, CP/M was able
to manage partitions up to a size of 8
Mbytes. If somebody had to maintain a
bigger project with higher amounts of
data therefore had a distinct
advantage when using a hard disk
instead of a higher quantity of floppy
disks. An example of a CP/M machine
with hard disk was the Kaypro 10,
which had a built-in 10 Mbyte hard
disk.
One reason for the popularity of the
CP/M successor DOS surely was (apart
from the price) the similarity of its
structure & user interface. For
somebody changing from CP/M to DOS, it
was easy to become acquainted to the
new system. The only big difference
was that DOS introduced sub-
directories to the microcomputer
world, where CP/M used to work with
User areas.
Both solutions had their roots in mini
& mainframe systems, though.
The most important CP/M commands were:
DIR to show the directory listing STAT
to show drive & media information &
to change attributes PIP to copy
ED line editor for text files SYSGEN
for creating a system disk.
Even other conventions were ported
from CP/M to DOS, e.g. the 8.3
convention for file names
(FILENAME.TXT), the usage of the
asterisk & question mark as wildcards
& the extension .COM for executable
files. A typical CP/M command could
be: DIR B:*.* or PIP B:=A:*.TXT, where
in the latter example the copying
direction is inverted in comparison to
DOS. This may result in the Assembler
convention, a programming language
many user were acquainted to at this
time.
It is justifiable to say that if
history had developed slightly
different, its possible that we might
work with CP/M & GEM (or their
successors) instead of DOS & Windows
today.
EDITOR: I would like to thank Gaby for
contacting me regarding CP/M &
offering this text, also I would like
to thank her for converting the text
from German to English.
--