gaby.de/
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: roarke@bu.edu (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: dibald@netcom.com (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" <J.Last-93@student.lut.ac.uk>
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: pausch@electra.saaf.se (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: dibald@netcom.com (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: allisonp@world.std.com (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: sheldon@iastate.edu (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 <Morris@handscol.demon.co.uk>
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 <john@wash.demon.co.uk>
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: allisonp@world.std.com (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: riplin@kcbbs.gen.nz (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: mn@huckup.winnet.de (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: pausch@electra.saaf.se (Paul Schlyter)
Subject: Re: Why CP/M?
Allison J Parent <allisonp@world.std.com> 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: cwr@crash.cts.com (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: chrisw@bnr.ca (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" <rlhansen@zianet.com>
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: riplin@kcbbs.gen.nz (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: allisonp@world.std.com (Allison J Parent)
Subject: Re: Why CP/M?
Paul,
Command.com 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: rstevew@armory.com (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@starbase.neosoft.com (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: pausch@electra.saaf.se (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.