Date: Sun, 03 Feb 2008 07:34:54 -0500
From: Allison
NOvados, DOS+, ZRdos, Zsdos and ZCPR addons to CP/M.
There were also the independent implementations such as TPM (for the
QX-10) and TuboDOS. There were others, even a a couple that provided
the capability to run CP/M 2.2 programs under non-CP/M OS Z80
platforms. CP/M, particularly 2.2 was easily cloned. Most
applications used the information in the reference manual set and
didn't rely on "undocumented" features.
IIRC, the bigger problem when MP/M came along, was trying to work
with those programs that were just plain sloppy and performed file
open requests without closing the file (since CP/M didn't even keep
so much as an open file count, you could be very sloppy, even opening
a file multiple times or not at all (as long as you filled in the FCB
fields correctly). Some programs saved FCBs and then used them
later.
I wanted to add a "put that diskette back" alarm to my CP/M
implementation when there were files opened for writing (one needn't
even turn on the drive motor--just periodically sample the write-
protect status; a diskette being inserted or removed will toggle it a
couple of times). I'd already done it for DX-85M and it reduced our
diskette file corruption problems to nearly zero. That "R/O error"
diagnostic from CP/M was unreliable at best and nearly useless even
when it worked.
It was then that I discovered that CP/M made no attempt to track open
files and indeed, the behavior of many programs depended on this.
Cheers,
Chuck