Red-haired woman working on an old terminal Gaby's Homepage for CP/M and Computer History
   Deutsch    News     Sitemap    Contact/Legal stuff    Data Privacy     Home     English CP/M Center/ Why CP/M?

This is a collection of postings to the 'comp.os.cpm' Usenet Newsgroup on the Internet from Nov/Dec 1995 about 'Why CP/M?', starting with the original message.

From: (Richard Scheffler)
Subject: Why CP/M?
Date: 15 Nov 1995 21:32:57 GMT

Okay, now before you shoot me down for not looking at the FAQ first, I in fact just read it. I am not farmiliar with CP/M as I am young enough that I barely remember TI computers... (I do, for historical purposes own two working (I think) DEC rainbows, which my source tells me are CP/M) my question is this: Why continue to use CP/M? if it is so difficult to find applications and software and hardware, why continue to use it? it seems to me that using a CP/M machine is like wearing a rapier on your belt. sure, a fine weapon in it's day, the rapier is now obsolete, not to mention the fact that you had better know damn well how to use it. the same seems in my eyes to be true for CP/M machines... R. James Scheffler

From: (Dave Baldwin)
Subject: Re: Why CP/M?

The advantage of CP/M machines is that ONE person, not a team hiding under the storm clouds of the northwest, can actually do something with the machine and even modify the OS to suit themselves. There are people in this newsgroup who have totally customized CP/M to their liking, made it run on a network of machines (of their own design), and others who understand the machines well enough to write emulator software that runs on PC's, Amiga's, Unix machines, and god knows what else. Emulators that are complete enough to process all the 'undocumented' Z80 instructions and/or the Z180 instructions.
Other people just like having a machine simple enough to tinker with.
Some started with their Kaypro, Big Board, Compupro, Imsai, Ithaca InterSystems,...... and never had a need to go 'beyond' it.
Really, the only thing that isn't available on most CP/M machines is high quality graphics. If you're retired and doing, say, a mailing list for your club, does it matter if it takes a while to print it out? Is it worth $ to go buy a PC to do the same job, especially if you're on an XT budget? The XT isn't going to do it any faster and can't really be considered an 'upgrade'. If you're 16 years old and you want to tinker with the guts of a computer and you can get a working Kaypro for $25, why would you buy a PC?
If you design Z80 embedded controllers and write the software for them like I do, you would be used to using the machine you write the code on to test your routines also. The best Z80 assembler, SLR's Z80ASM, runs under CP/M. You can learn a lot more about the hardware details of interfacing working with such a machine than you, as an individual working on your own time, can learn from a current PC or a MAC in a decade.
For the graphics part of my business, I have PC's and the appropriate software. I try to use the appropriate machine for the job. For most embedded work, I don't like PC's because there is too much there to go wrong. A little 5x7 Z80 or 8031 board can be much more reliable than a PC because it doesn't require a disk or a keyboard or a monitor to operate (or fail).
In addition, anything that still does the job it was designed for isn't necessarily obselete. I can't type code faster than any of the machines I have can accept it. I usually access the Internet through a shell account in text mode because it's easier for me to read. I have WWW browser software to look at the pretty pictures, but that's about all I use it for. If I had the Z80 CP/M machine I've been putting down on paper, I could use it for my Internet access. I guess that would make it something less than obselete.

From: "Jake Last" <>
Subject: Re: Why CP/M?

Well, it's fine for people with infinite budgets to come to this newsgroup and slag us all off, but a lot of the people here think that CP/M computers are fine machines - just because they're old doesn't mean you waste them. Just because a relative is old, you don't kill them off. I can't afford to buy a PC, and why should I when my CP/M machine does everything I need? I don't really think that it is too hard to find CP/M apps. I use an Amstrad PCW for wordprocessing and programming etc - the software I use is fine. If I upgraded to a PC, it would have to be slow and old, and since PC apps expect more and more all the time, I'm really not going to see any improvement.
A lot of people put a lot of work into CP/M machines, and we like to continue that work.

From: (Paul Schlyter)
Subject: Re: Why CP/M?

This "budget argument" could actually be used against CP/M: if your time is worth anything, then you simply cannot afford to use CP/M machines just because the productivity will then be too low. It's then a waste of money to NOT buy a more modern computer, and it would then only be "people with infinite budgets" who could afford continue using CP/M. This of course only applies if your time is worth anything (i.e. if someone is paying you for your time), if it isn't you can of course do whatever you like.

From: (Dave Baldwin)
Subject: Re: Why CP/M?

Both these arguments are a little short-sighted. Since I've been associated with The Computer Journal and especially since taking over as the new editor, I've found that people have computers almost exactly according to their budgets and requirements. TCJ readers usually have between 2 and 12 computers and a few of them need an inventory system to keep track of what they have.
Hobbyists and students tend to have systems they can pick up cheap, Z80 CP/M, older Apples, Commodores, older or rebuilt PC's, and various SBC's. Professionals have those plus the newest PC, Mac, Sun or whatever workstation they can afford. 'High productivity' usually turns out to mean getting paperwork/desk jobs done quickly or efficiently, particularly engineering, publishing, and business/database work. If the machine you have gets your job done in the required time, then you're productive enough.
The new machines are practically useless when it comes to learning how to interface at the chip level because:
A. No detailed documentation is available and the integration level / circuit density in the chips is too high to be able to trace out anything.
B. The new machines are too expensive to screw around with. After all, you/they bought the new machines to get that 'high productivity' and you probably can't afford to break it and not be able to use it. I know I can't. Of course, if someone else is paying for your machines (like taxpayers), you might not care so much.
The last Kaypro I bought cost me $15 and I've been given 5 more or less working Z80 CP/M systems by people who didn't want to see their old machines go into the dumpster. I can afford to do anything I want with those. On the other hand, my 486 cost me $3900 in 1990 and I have to have it running for my engineering and publishing work. I have to be a lot more careful when I do anything to it.

From: (Allison J Parent)
Subject: Re: Why CP/M?

The budget argument is a read herring.
CP/M based systems allow access to a large number of excellent applications for a free or so close to it to be free. To wit: Walnut Creek CP/M CD-rom with 19,000 (yes really) files for CP/M most with sources.
As a word processor I use a CP/M machine as it can handle files faster and bigger than my WP5.0 PC! I can transfer the files to my Vax/VMS system as the files are compatable with the editors I use there. Since I happen to like text markup languages like Runoff <which runs on my CPM, PDP11 and Vax> the cp/m box is valid. Your assumption that a P5 will help me write a one page memo faster than my slow kaypro is invalid. The kaypro from a cold start to finished memo will be done before the winders box has finsihed booting and opened WP or some such.
On the other hand using a CP/M box to run a CADD program is silly. But then again even using a 386 for that is likely to be slow. However I do have basic programs that do CADD/modeling on my CP/M crate and they are years old well debugged and work fast! Yes, they are not graphic but the answers are valid and tested by years of use.
Newer, faster and buggier or stable mature syetems that work. Is there a choice? Yes, but it's not absolute.

From: (Steve Sheldon)
Subject: Re: Why CP/M?

Want to talk about easy remote access...
Just plug your modem into the serial port on your CP/M box instead of your terminal, set it to auto answer, and whala!
Ahh, those were the days... No need for fancy schmancy programs. :)

From: Morris Price <>
Subject: Re: Why CP/M?

Even the "humble" Amstrad PCW can do desk-top publishing of an acceptably high standard. See the adverts for the software in the magazine PCW Plus, said ads having been prepared using the software advertised for DTP on the PCW. Are wheelbarrows obsolete, just 'cos somebody invented bulldozers? If I'm moving a few cubic feet of soil there seems little point in buying a 'dozer; if what I do can be done OK on a PCW (or any of the other fine, solidly built, easily driven) CP/M machines ... why buy anything dearer?

From: John Washington <>
Subject: Re: Why CP/M?

I agree, Morris, but I think there's a distinction to be made here between CP/M machines in general, and the PCW in particular.
It's already been pointed out that, in answer to Richard, there are lots of reasons to continue to use CP/M. Graphics isn't one of them.
Surely the points about the PCW are that (a) it has reasonable graphics (a lot of CP/M machines are restricted to either text or simple character cell graphics), and (b) it achieved a very significant market share in the UK (and elsewhere in Europe?), so that it was attractive for software houses to write for it.
I wonder if anyone has the worldwide sales figures for various CP/M machines? Did the PCW get into the top 10? Did other best-selling machines have good screen graphics? If so, I imagine there was also a niche market there for DTP producers.
Or perhaps there wasn't -- after all, the other unusual thing the PCW had going for it was that it came complete with a dot matrix printer. It's no good producing great on-screen DTP if you can't then print it, or you need n years to develop zillions of printer drivers.

From: (Allison J Parent)
Subject: Re: Why CP/M?

Well, you compare CP/M to the sword of old. Valid comparison till you consider that the sword will still cut hay better than an m16.
Better put: CP/M is a small operating system for a small computer. It's smallness is in it minimal requirements for resources. This is unlike DOS or Windows that require more ram than most CP/M systems have for hard disk! However it's smallness is not a limitation or a handicap. As others have indicated it's complete, with thousands <literally> apps available free and does not limit the user. That last item is significant as people did do amazing graphics and real work on z80's with 64k of ram. Even networking is possible and being done. The real limits are only that of the Z80 and even that limit is not as hard as some may think with superfast parts available.
CP/M is still a viable system and the z80 is still used for a great many control applications. Bigger is not better if the task does not call for it. Word processing is generally one place where 8 bits is the right size.

From: (Richard Plinston)
Subject: Re: Why CP/M?

> This "budget argument" could actually be used against CP/M: if your
> time is worth anything, then you simply cannot afford to use CP/M
> machines just because the productivity will then be too low.
In what way will a CP/M machine make productivity 'too low' when doing tasks such as word processing, text editing, or even simple spreadsheeting ?
Does a 486DX4/100 improve your typing speed ? does it make your printer run above specification ?
Do you measure your 'productivity' when playing games, or 'playing' with computers ? Is it better to get to the end of a game in less time by using more expensive hardware ? Perhaps you could improve your productivity by having another computer play the game fo you vastly improving productivity.
Certainly a faster machine is required for fancy graphics, but if all that is required is easily done by a text mode CP/M system then your argument is simply invalid.
I still do considerable amounts of software development under Concurrent-CP/M-86 (actually Concurrent-DOS) on a 80286. It is more productive than using a 486 under Windows because the text editing is faster than even a DOS text editor under Windows and the multi-tasking is far better (not hard) meaning that the background compiles run fast and do not interfere with the continuing foreground work.
Using Windows on a 486 gives pauses (at best) which interferes with the flow of working, reducing the productivity. Your solution would have me buying ever faster Pentium Pros, to catch up to the machine that I have used for 10 years.
Actually I use the latest version of Concurrent-CP/M-86 on my 486/40: DataPac's System Manager (cf IMS Real:32) a full 32 bit operating system that allows my multitasking and can run Windows as one of these tasks (or more). This gives the benefits of multitasking without having to suffer Windows.
And it still runs CP/M-86 programs too.
But it doesn't make my typing any faster.

From: (Mathias Niemz)
Subject: Re: Why CP/M?

In 83', I wrote a program for a videothek. It's hard to believe, but they still run my program ! In old time, they had an apple clone (Dipa 109), now a cm80, a german product running MP/M II. For their 3000 titles, maybe 6000 tapes, they still have no problem with cp/m's (the program was written for cp/m 2 with some MP/M add-ons) 8mb limit. The program is much better now in the dos world, but it's not much faster. I'm just wasting some disk space for more index fields to improve sorts.

From: (Paul Schlyter)
Subject: Re: Why CP/M?

Allison J Parent <> wrote:
> Better put; CP/M is a small operating system for a small computer.
> It's smallness is in it minimal requirements for resources. This is
> unlike DOS or Windows that require more ram than most CP/M systems
> have for hard disk!
This may be true for Windows but it's certainly false for DOS. One can easily make a DOS boot floppy of a 720K (or even 360K) floppy and even have some useful programs on it.
But I may be misinformed of course -- if CP/M harddisks generally are smaller than 720K or 360K I'll take it all back.... :-)

From: (Will Rose)
Subject: Re: Why CP/M?

I think MSDOS 3.0 has a RAM footprint of 36K - allowing 16K for COMMAND.COM, you're pretty much out of space on a Z80; I suppose you could write an 8086 emulator for a Z180...
(MSDOS 4.0 was fatter than 3.0, but I think 5.0 slimmed down again).

From: (Chris Witkowski)
Subject: Re: Why CP/M?

I run CP/M on an Apple II+ clone with a Z80 card. The floppies hold 140K each in total and a CP/M disk leaves 126K of space for user programmes and data.
Memory is 64k. I/O is memory mapped so some (4k) of that isn't useable for code or data. The TPA with the CCP in place is 48.75K and without the CCP it is 50.75K. It is called a 56K system (don't ask me why).

From: "Robert L. Hansen" <>
Subject: Re: Why CP/M?

And besides all that, the average hobbyist can figure out what CPM is trying to do. Try that with Windows and MS-DOS! In other plain words CPM is fun to work with, as well as exasperating.
For what it is worth. Bob.

Subject: Re: Why CP/M?
From: (Richard Plinston)

MS-DOS 1.0 with similar facilities originally ran on an IBM-PC with 160Kb floppies and 64Kb of memory.
Your Apple II hasn't changed, DOS and PCs have.

From: (Allison J Parent)
Subject: Re: Why CP/M?

Paul, in DOS 5.0 is bigger than CP/M and a few utilities! The full distribution of CP/M fits on a 241k floppy with useable space left over. That includes an editor, assembler, debugger and loader plus utilities and a program sample. The CP/M OS is 2k for the CCP <or ZCPR> 3.5k for the BDOS <logical to physical file system> and 1.5k <or more> for the BIOS. The CCP includes primitives like ERA, DIR, TYPE and a few others.
Typical CP/M systems with hard disks in the early '80s had 5 or 10 meg of hard disk. Most however were floppy based. I use a system with two 720k 3.5" floppies that is far faster than the old 8" disks and has enough room to do significant work on one drive using the BDS C complier and tools. Another system I have has CP/M, utilities, assemblers, debugger all burnt into EPROM <256k> as a "readonly" disk. How much dos and useful stuff could you fit in that? Most PCs have boot/bios roms approaching that size!
FYI: My first hard disk was from a nike missle computer and was barely 64k! It was faster than cassette tape. ;-) Even the cassette tape on the first IBM PCs!!!

From: Mathias Niemz <76206.3341@CompuServe.COM>

My first cp/m system has just 2*700 kb floppy. One disc could hold the os, wordstar and even a basic compiler. In the dos world in the early 90's, you should reserve >30MB for the same stuff (without windows !)...

From: (Richard Steven Walz)

>But I may be misinformed of course -- if CP/M harddisks generally are
>smaller than 720K or 360K I'll take it all back.... :-)
You THINK you jest, but CP/M programs and CP/M itself is so small that I seldom use other than one or two disks, and my Ampro Little Board has 4 of the DSDD 3.5" 80 tracks, which it formats WITH CP/M on EACH ONE, to 782KB remaining! And MOST decent well written programs for CP/M as utilities are less than 12KB's! Even Turbo Pascal 3.0 is only 28KBs!! And that editor can be the only editor you need, even though most WordStar clone editors are 8K or less! Even the WordStar 3.3 itself for CP/M is only 79KB, with two overlay files. With the simplest RAM DISK on a modern CP/M machine, the overlays are like DOS uses multiple 64KB blocks in .EXE files, and the CP/M WS3.3 runs faster, because of the code for it having been first written for the Z-80A!! My terminal runs at 38.4kbps too! I don't see DOS or WINdoze at that kind of speed! I can put a large fraction of the best programs ever written for CP/M on less than 5 disks! And they all boot! And it doesn't need a noisy fan or harddrives. It is dead silent!! ;-) Great robotics controller too, with many languages written for it!

From: (barrym)

You're assuming that productivity will increase with a faster computer. That's true for a lot of people. But for a lot of people that's just not the case.
One reason that it's not is that someone who's learned to use an older system very effectivly will often be less effective with a newer, more complex system. Old, carefully developed habits have to be unlearned. Theres much to be said for learning newer, better habits, but the question was one of productivity.
Another reason is that simpler machines sometimes do simple jobs more effectively than more complex machines.
Also, the stepping up to newer and better, and the corresponding re-learning that goes along with it, never ends. You work with tools long enough to become competent and then you move on. You take that knowlege with you and it's often useful, but you're not quite as competent for a while. Then the cycle repeats. Someone using a program for years can go way beyond competence. Expertise can be a pretty useful aid in productivity.
Its true that the modern software and hardware is so good that anyone can be competent in a pretty short time. And it's also true that in a lot of situations, you just can't compete with an older system. In fact, that's how it is on my job. But don't assume that that's always true for everybody.
A good reason, aside from productivity, for using an older system, especially if you're writing code, is the elegance and simplicity and even the beauty of them. That hasn't changed. It's really nice, sometimes, to be able to decide what goes where in memory. This, obviously, isn't a productivity consideration. It's just nice to be able to have this much control over a machine.
And, with NT 3.5 and above, I've notices that it often offers to do something for me and gives me the option of clicking on a button labeled "No, thank you" or "Yes, please". Well, what if I'm mad at my computer and don't want to thank it? With my CP/M system, I just give it commands and it obeys if it can. Much more satisfying.

From: (Paul Schlyter)

It's called a 56K system because from the 64K address space 4K goes away for memory mapped I/O, another 1K goes away for video memory, still another 1K for the 6502 stack (256 bytes), "page 0" (256 bytes) and patch areas in "page 2" and "page3" (512 bytes), and finally 2K goes away for the "software disk controller", implemented in 6502 machine language.
64K - 4K - 1K - 1K - 2K = 56K
This is valid for the SoftCard. If you had used some other Apple II CP/M card, like the Appli-Card or the CP/M card, you'd have a true 64K CP/M system, since these cards had 64K RAM of their own. Of course this doesn't mean a 64K TPA, since the BIOS+BDOS takes some of this memory.