home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CP/M
/
CPM_CDROM.iso
/
enterprs
/
cpm
/
text
/
mar93.txt
< prev
next >
Wrap
Text File
|
1993-03-08
|
8KB
|
155 lines
CP/M Emulators for DOS
I presumed you have read enough about OverDrive 486DXs (don't
get pulled over), object-oriented neural net backpropagation algorithms,
matchbox hard disks, and virtual reality. It's about ten years ago that
a little group get together in Austin over some heavy steel boxes called
Kaypro IIs. Let's talk about CP/M.
No, my spinal column and most things that attach to it are still
intact. I found some neat code (some manager told me programmers should
use this term sparingly) which emulates CP/M under DOS. Why would any
sane person still delve into CP/M? Perhaps it's like the thrill of
discovering some fragments of the Dead Sea scrolls. Or you may just
have the infrequent need to access some CP/M data that you or someone
else might still be using.
I have three very different CP/M emulators and I'll describe
them briefly here. They are 22nice, zsim, and myz80. Each has its pros
and cons and I hope my summary here can help you decide if any of them
might be useful for you.
22nice is from SYDEX and is the oldest, out since 1989. $40 is
asked for this shareware package. A companion package, 22disk, helps
with the mundane task of file transfer between CP/M and DOS. It has
utilities to transfer files either way, copy files, erase files, and
format CP/M diskettes. It understands over 200 CP/M formats (could this
be one of the reasons for CP/M's demise?) and I was pleasantly surprised
when I plug in a onetime nemesis of CP/M drives, the quad density
floppy, into a DOS 1.2 MB drive, and I can read and transfer files from
this old disk!
A very nice feature of 22nice is it can emulate either an 8080,
a Z80, or even a V20. The V20 is an interesting chip. It is really an
8088 and 8080 in one. PCs using the V20 and 22nice can run CP/M in
native mode! Alas! there are some bugs in the V20's emulation and 22nice
will try to warn against these.
The following are some key features from the 22nice manual:
* Provides terminal emulation for most common CP/M machines with
terminal types for Osborne, Kaypro, Heath/Zenith, Morrow,
Actrix, DEC VT-100/VT-52, Televideo 925 and LSI ADM-3X.
* Supports CP/M user number to DOS subdirectory translation.
* Allows use of DOS "pipes" and utilities with CP/M programs.
* Supports a complete set of BDOS and BIOS function interfaces,
including direct disk read/write.
* CP/M programs are fully integrated into the DOS environment; the
user is unaware that a program is CP/M- or DOS-based.
You can install 22nice in one of three ways -- as a device
driver in config.sys, as a terminate-and-stay-resident program or as a
regular program. For occasional use, I would recommend the last method.
CP/M files are named with a .CPM extension. A utility called
GENCOM creates a pre-loader. When this program is run , it then looks
for the CP/M program of the same name and executes it. For example, I
gencom'ed D.COM, my favorite CP/M superdirectory program, and it creates
a D.COM for DOS which loads D.CPM and runs it. Let me tell you, it's an
errie feeling running D.COM on DOS and see it display my DOS files in a
DOS subdirectory.
Zsim is by Jürgen Weber in Germany. He calls it "The hundred
percent Z80 Emulator" and asks for $20, or $50 if you want the encrypted
source which is included in the ZIP file. (When you send money, he'll
send you the password to extract the files from the archive. Actually I
think that's a fairly reasonable way of protection.) Jürgen mentioned
that his emulation equates 1 Mhz of a Z80 to 10 Mhz of the DOS Landmark
test. I've seen Landmark claims of 120 Mhz on some 486 systems. (Don't
ask me what they smoked to get those numbers). So a 12 Mhz Z80? That
boggles the mind. Is that like a Studebaker going 120 MPH on Mopac?
Read his instructions before using. Here's an excerpt:
"Be sure that you do not insert a MS-Dos disc when prompted for a
CP/M disc. The CP/M bios would overwrite the MS-Dos disc without
prompting. Also MS-Dos overwrites CP/M discs."
The major disadvantage of this package is it requires the A
drive to be set as a CP/M drive. This could be rather clumsy where the
A drive is a 3.5 inch drive on a PC, such as the one I'm using now,
which is actually Reed Stone's machine, and I have to butcher, er, I
mean reconfigure his system to run these tests. As far as I know, no
CP/M system supports a 3.5 inch drive. Also, it only knows about a few
native CP/M disk formats and suggests using 22disk from SYDEX to use
other formats.
As the name implies, zsim emulates a Z80, and it requires a CP/M
bootable disk in drive A to work. Perhaps to avoid legal entanglements?
The most interesting feature is its creating a 640K CP/M virtual machine
and a RAMdisk. For example, you can have a 400K ramdrive within the
640K CP/M system.
Unfortunately I've forgotten enough about low-level CP/M details
to find zsim interesting. The manual contains lots of assembly code
fragments for illustration.
MYZ80 is shareware written by Simeon Cran from the land of Oz
(Australia) who also claims it's the best Z80 CP/M emulator in the
world. Programmers are so modest. The latest version, 1.03, emulates
the Z80/64180 processors and claims to be compatible with CP/M 2.2, CP/M
3.0, and also ZCPR. It's the only one that claims compatibility with
most of the popular CP/M systems.
This package is interesting that it emulates CP/M as a virtual A
drive. There is actually a file named A.DSK. All work done on CP/M is
stored in this file so A.DSK will grow in size as time goes on when more
files are imported. Importing a file means moving a file from DOS to the
CP/M environment. Exporting is the reverse function. Of course, you can
also create B.DSK, C.DSK, etc. as work progresses.
Some resemblance exists in the packaging of this shareware to
4DOS. They both claimed to be full non-crippled versions of the actual
product. A difference between the shareware and the registered versions
is the startup screens. On 4DOS, the shareware version has a banner
reminding you to register. This one has eight screens! of text before it
puts you into CP/M. Although most of the screens are actual help files I
find that somewhat annoying. Of course, that's the whole purpose to
entice one to register.
Perhaps the most powerful feature of MYZ80 is its support of
newer DOS operating systems. It can run either in 16- or 32-bit mode
depending on whether it is run on an AT-class or 386 or newer system.
For multitasking operating systems such as OS/2, Windows, and Desqview,
one can run it as a single task. I tried exactly that. I opened a DOS
window in Windows, cd to the cpm directory and start MYZ80. After the
annoying screens, I got an A0> prompt. I'm in CP/M in a DOS window under
Windows!
MYZ80 contains only a couple of small help files. The few
commands that came with it has built-in help. I suppose he really wants
people to register to get proper documentation.
All three packages are concerted efforts by these hardcores to
provide perhaps the last linkage from CP/M to the DOS world. Some of
you may have long since sold your CP/M computers but may need to access
some files for whatever reason. Or you have this really neat (I
promised this is the last time I'll use this word) recipe program in
CP/M with a bunch of recipes stored in the database. You can now access
this data on your DOS PC with any one of these. And I promise not to
talk about CP/M for another decade.
--
Luis Basto
Feb, 1993