CP/M

Revision as of 20:13, 5 July 2014 by Admin (Talk | contribs)

CP/M (Control Program for Microcomputers) was a mass-market operating system created for Intel 8080/85 based microcomputers by Gary Kildall of Digital Research, Inc. The Digital Research sold version supported the Intel 8080 Development System. CP/M was the first operating system for microcomputers.

Author Sir Harold Evans wrote that Microsoft DOS inventor Tim Paterson relied heavily on an existing OS called CP/M created by programmer Gary Kildall, supporting the claim that Microsoft's First OS Was Stolen. Microsoft used DOS to make billions in sales and pave the way for the Windows operating system.

Without CP/M there would have been no DOS (Disk Operating System) and likely leaving Microsoft as only a briefly existing company in the footnotes of the personal computer. Bill Gates seems owes everything to the tragic creator of CP/M, Gary Kildall.

Gary Kindall maintained that QDOS, and subsequently MS-DOS, had been directly copied from CP/M and thus infringed on his copyright. Kindall died July 11, 1994 receiving no compensation from Gates or Microsoft for DOS.

CP/M for the Microcomputer

 

Archivedhansolocarbonite140.png
Carbonite Page: This page is an archived entry and should not be modified. Information on this page may be out of date, however, still useful. An example is data for legacy systems or outdated technologies that are still being used by some, such as Vacuum Tube bogey values, analog broadcast television frequencies or MS-DOS 6.22 commands. Although outdated, this information will not change or evolve any further. Certain archived pages on the D.U.C.K. Wiki have been imported from our older ANSI BBS system and other storage mediums previously used. These pages are kept unmodified for archival purposes.

CP/M, sold by Digital Research, Inc. of Pacific Grove, California, is very different from other software. For one thing it isn't written for any particular system. There are versions currently available for most of the popular small computers.

CP/M is also different in that it carries a substantial cost. It sells for $100 direct from Digital Research, and a version for the TRS-80 is priced at $150 from FMG Corporation. Lifeboat Associates of New York offers versions for many computers. Their price is $145.

While large corporations are accustomed to spending hundreds or thousands of dollars on software, small computer users have come to expect quite a bit for software in the above $100 category. They get it in CP/M. It is a major piece of software that not only provides the user with an expanded, more powerful operating system, it also serves as the foundation for many other programs. Language processors for BASIC, FORTRAN, and COBOL as well as application programs like word processors, data bases, and payroll software have been written for CP/M. These programs use the general purpose software routines incorporated in CP/M to reduce the amount of work that must be done to get a program written, debugged, and on the market. Tailoring applications software to CP/M rather than a particular computer also expands the population of potential purchasers. To the user, having CP/M means being less dependent on the manufacturer of the computer for applications software since most programs written for CP/M can be run on any computer that has CP/M.

CP/M requires a disk system and a substantial amount of memory to be used most effectively. CP/M is thus not part of a typical small system for home use, but an increasing number of businesses are buying disk based systems and CP/M. Such a combination, while priced well above the cost of entry level systems, is very competitive with the minicomputer alternatives that do the same jobs in a business environment. The manuals for CP/M are several hundred pages long. CP/M is composed of several subcomponents that do a particular job:

  • Console Command Processor
  • Basic Disk Operating System
  • Editor
  • Peripheral Interface Program
  • Dynamic Debugging Tool

Console Command Processor

CCP is part of the real world interface for the system. It is what the user talks to, and it in turn directs some of the activities of other subcomponents. CCP also has built-in routines to handle input and output from peripherals like printers and a CRT.

Basic Disk Operating System

BDOS handles the work of creating files on disks and of transferring data to and from disk storage. BDOS is a very sophisticated piece of software.

Editor

ED is used to create and modify a variety of files. The commands used by ED are a little difficult to learn. For example, +5D means delete the next five characters, +5C means move the cursor over five characters without changing anything, and +5K means kill or delete the next five lines. Once the codes for the commands are learned, however, the editor is a very powerful tool that can be used in writing and editing programs and text.

Peripheral Interface Program

PIP performs several jobs that are often grouped under the term utility. In general the term refers to relatively routine, unglamorous, but necessary, jobs. In CPM the utility work is shared somewhat by PIP and CCP. PIP does some of the input/output management and it also makes it possible to rearrange already existing files. Many programmers use a modular approach which involves breaking a large program into several logically related subroutines. That approach is made easier by PIP which can take several small files containing subroutines and combine them into a large single file.

Dynamic Debugging Tool

DDT is actually a powerful tool for writing and debugging assembly language programs. Assembly language will be covered in a later chapter. CP/M contains an assembler that can be used to write and run programs written in 8080 assembly language as well as a very good BASIC interpreter. CP/M is quite a package.

Troubleshooting Programs and Operating Aids

There are ads in any of the computer magazines for many different types of software designed to meet a particular need on the part of the computer user. It is not possible to cover all of them in detail. Instead a few in some of the major categories will be discussed. Since there are more TRS-80's in use, and thus more software for that computer, the focus will be on TRS-80 compatible software.

Memory Test Programs A few systems automatically test the memory each time the computer is switched on. Others have a specific monitor or operating system command the programmer can use to test all or part of the memory. There is good reason to incorporate memory tests in monitor software. RAM is the most problem prone part of many computers and a memory problem is not always easy to diagnose. It may come and go, or cause problems under some circumstances but not others. Several memory test programs are available. One, RAM Test for Level II, is available from Mumford Micro in Summerland, California for $9.95. It will conduct a comprehensive test of all the RAM in a TRS-80 in less than 14 seconds.

Cassette Aids

Computers vary in the way they handle loading programs from cassette tape, and the degree of success obtained also varies quite a bit. In some early systems it was almost impossible to successfully load programs from tape. The probability of success has increased in the newest crop of small computers but there is still room for improvement in many systems. The TRS-80 is a case in point. Its cassette data storage system is one of the main reasons some people refer to it as the trash-80. That title is probably undeserved, but there is no denying that the TRS-80 cassette system is less dependable than some of its competitors. For $39.95 the DATA/PRINT folks in Fargo, South Dakota promise to deliver you from the perils of unloadable cassettes. Their TRcopy program, when loaded into a TRS-80, promises to work wonders on all those unkept and dirty bits you're trying to load or save on tape. TRcopy improves the cassette system in several ways. Its most interesting feature is its ability to print on the screen the data that is being read from the tape. The user actually sees what's going into memory as the tape is loaded. TRcopy also has facilities for verifying tapes. This means you can check to see if what is on the tape matches what's in memory.

Last modified on 5 July 2014, at 20:13