Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

CP/M natively on a PC

465 views
Skip to first unread message

Blacklord

unread,
Apr 10, 2002, 3:49:01 PM4/10/02
to
Hi peoples,

I've recentl rebuilt an old Commodore PC-10 XT clone. This particular
beastie uses the NEC V20 rather than an 8088. Am I right in assuming that
the V20 can natively run 8080 software & if this is the case, will CP/M-80
run on it directly (rather than under an emulator). Or am I somewhat
confused ? (definitely a possibility!). If it won't run unnasisted, what's
the best option/s for me ?

cheers & thanks,

Lance


Jeffrey L. Susanj

unread,
Apr 10, 2002, 4:57:16 PM4/10/02
to

"Blacklord" <bl...@NOSPAM.gco.apana.org.au> wrote in message
news:3cb4...@news.comindico.com.au...

Long ago I used 22nice which is a CP/M emulator. It had an option that if
you had a V20 it would run CP/M natively. The only problem I saw was that
some later applications, e.g. zde, use Z80 instructions and so won't run.
My version of 22nice also crashed sometimes but I know there are later
versions of the companion program 22Disk so there may be upgrades to 22nice.


Jeff S.

Ross Simpson

unread,
Apr 10, 2002, 9:46:26 PM4/10/02
to
Blacklord wrote in message...

I "think" you can run CP/M-86 for the IBM on that machine (if you want
some form of CP/M running on your machine). There is a program in the
CP/M-86 Software Repository which uses the NEC V20 (I think) to
emulate CP/M-80 (under CP/M-86). From what I know this program runs
faster than a standard emulator because of it utilising the NEC V20.
Apart from that, that's the only reason why I think CP/M-86 would work
on your machine.

bud

unread,
Apr 11, 2002, 1:35:26 AM4/11/02
to

Hi Blacklord:

Group: comp.os.cpm Date: Thu, Apr 11, 2002, 5:49am (CDT+15) From:
bl...@NOSPAM.gco.apana.org.au (Blacklord)

script:

> Am I right in assuming that the V20
>can natively run 8080 software & if
>this is the case, will CP/M-80 run on
>it directly (rather than under an emulator).

FWIW, I have definitely read that the NEC V30 will run 8080 code, but I
don't know about the V20. Even if it does, you will probably have to
"port" CP/M to your machine, unless someone has already done it,... and
you can get a copy.

salaam,
dowcom

--
http://community.webtv.net/dowcom/DOWCOMSAMSTRADGUIDE

DOShead Credo:
a) Try it! It might work.
b) GOTO a).

Paul Schlyter

unread,
Apr 11, 2002, 2:22:13 AM4/11/02
to
In article <3cb4...@news.comindico.com.au>,
With a properpy written BIOS, CP/M-80 can indeed run in native mode on
the NEC V20. If your V20 runs on 4.77 MHz, it will run CP/M-80 in native
mode as fast as a 386 at approx. 30 MHz runs it in emulated mode.

Note, however, that the V20 in 8080 native mode runs as an 8080 only;
no Z80-specific opcodes are executed. Therefore you won't be able to
run e.g. Turbo Pascal for CP/M-80, since it uses Z80 instructions
a lot.

The NEC V20, when in 8088 mode, uses the 8088 "POP CS" opcode to
switch to 8080 mode. That's a pretty useless instruction anyway,
which was removed from later processors in the x86 series of
processors.

Of course the V20 CP/M-80 BIOS must switch back to 8088 mode again
whenever some I/O operation is performed, and then return to
8080 mode when the I/O is completed.

--
----------------------------------------------------------------
Paul Schlyter, Swedish Amateur Astronomer's Society (SAAF)
Grev Turegatan 40, S-114 38 Stockholm, SWEDEN
e-mail: pausch at saaf dot se
WWW: http://hem.passagen.se/pausch/index.html
http://home.tiscali.se/~pausch/

Frank Zsitvay

unread,
Apr 11, 2002, 3:45:58 AM4/11/02
to

Paul Schlyter wrote:
>
> Note, however, that the V20 in 8080 native mode runs as an 8080 only;
> no Z80-specific opcodes are executed. Therefore you won't be able to
> run e.g. Turbo Pascal for CP/M-80, since it uses Z80 instructions
> a lot.
>
> The NEC V20, when in 8088 mode, uses the 8088 "POP CS" opcode to
> switch to 8080 mode. That's a pretty useless instruction anyway,
> which was removed from later processors in the x86 series of
> processors.
>
> Of course the V20 CP/M-80 BIOS must switch back to 8088 mode again
> whenever some I/O operation is performed, and then return to
> 8080 mode when the I/O is completed.

I seem to recall that there were some bugs in the 8080 mode of these
chips which made them somewhat less than desirable. Anyone know more
about this?

-Frank

CBFalconer

unread,
Apr 11, 2002, 7:11:34 AM4/11/02
to
Paul Schlyter wrote:
>
... snip ...

>
> With a properpy written BIOS, CP/M-80 can indeed run in native
> mode on the NEC V20. If your V20 runs on 4.77 MHz, it will run
> CP/M-80 in native mode as fast as a 386 at approx. 30 MHz runs
> it in emulated mode.
>
> Note, however, that the V20 in 8080 native mode runs as an 8080
> only; no Z80-specific opcodes are executed. Therefore you won't
> be able to run e.g. Turbo Pascal for CP/M-80, since it uses Z80
> instructions a lot.
>
> The NEC V20, when in 8088 mode, uses the 8088 "POP CS" opcode to
> switch to 8080 mode. That's a pretty useless instruction anyway,
> which was removed from later processors in the x86 series of
> processors.
>
> Of course the V20 CP/M-80 BIOS must switch back to 8088 mode
> again whenever some I/O operation is performed, and then return
> to 8080 mode when the I/O is completed.

IIRC there are some conditions required for the segment registers,
and the V20 mode has the potential of directly using more than 64k
memory. There are also provisions for calling x86 interrupt
services. It is a shame they didn't implement the full Z80 set,
although mapping the alternate registers would have been a major
problem.

--
Chuck F (cbfal...@yahoo.com) (cbfal...@worldnet.att.net)
Available for consulting/temporary embedded and systems.
<http://cbfalconer.home.att.net> USE worldnet address!

anon...@bogus_address.con

unread,
Apr 11, 2002, 7:28:43 AM4/11/02
to

On 2002-04-11 pau...@saaf.se (Paul Schlyter) said:

>Blacklord <bl...@NOSPAM.gco.apana.org.au> wrote:
>
> > I've recently rebuilt an old Commodore PC-10 XT clone. This


> > particular beastie uses the NEC V20 rather than an 8088. Am I
> > right in assuming that the V20 can natively run 8080 software &
> > if this is the case, will CP/M-80 run on it directly (rather than
> > under an emulator). Or am I somewhat confused ? (definitely a
> > possibility!). If it won't run unnasisted, what's the best
> > option/s for me ?
>

>With a properly written BIOS, CP/M-80 can indeed run in native mode


>on the NEC V20. If your V20 runs on 4.77 MHz, it will run CP/M-80
>in native mode as fast as a 386 at approx. 30 MHz runs it in
>emulated mode.
>
>Note, however, that the V20 in 8080 native mode runs as an 8080
>only; no Z80-specific opcodes are executed. Therefore you won't be
>able to run e.g. Turbo Pascal for CP/M-80, since it uses Z80
>instructions a lot.
>
>The NEC V20, when in 8088 mode, uses the 8088 "POP CS" opcode to
>switch to 8080 mode. That's a pretty useless instruction anyway,
>which was removed from later processors in the x86 series of
>processors.
>
>Of course the V20 CP/M-80 BIOS must switch back to 8088 mode again
>whenever some I/O operation is performed, and then return to
>8080 mode when the I/O is completed.

'Blacklord,' unless you're a whiz-bang low-level programmer --
and have a masochistic desire to 'roll your own' CP/M-80 BIOS --
your best bet is probably going to be a CP/M-80 emulator.

There are numerous CP/M-80 emulators available for DOS (use a
'Net search engine). At one time, there were even a few emu-
lators that made use of the V20's 8080 capability, although I
haven't seen any of those around for quite a few years.

On the other hand, there's a CP/M-80 emulator for =CP/M-86=
that uses the V20's 8080 mode. The emulator is named VCPM,
and it's really fast. It's available for download from the
CP/M-86 Software Repository:

--> http://www.seanet.com/~klaw

Again, VCPM is a =CP/M-86= application, so it requires that
CP/M-86 be running as the operating system on your machine.

When it comes to running CP/M-80 programs on an IBM clone
under DOS, some people prefer to set up a complete pseudo-
CP/M environment on their machine. And that's fine, if that's
your inclination. MYZ80 for DOS is such a pseudo-CP/M
environment.

But personally, I don't give a rat's fuzzy derriere about
that sort of thing. When I just want to run a CP/M program
under DOS, I like to use a simple run-time CP/M emulator.

I like ZRUN -- a small, command-line-driven run-time CP/M
emulator for DOS. It's available from any Simtel FTP site.
I believe the archive name is ZRUN321.ZIP. It's in the
\MSDOS --> \EMULATORS sub-directory at Simtelnet.

Have fun! :)

Axel Berger

unread,
Apr 11, 2002, 5:11:00 AM4/11/02
to
Here's what I found, but though having read it a long time ago, I do
not remember the details any more. What might happen here is, that CP/M
2.2 does run natively in the 8080 mode of the V20, but you would
normally need the correct BIOS compiled for that very machine as with
all CP/Ms. That, I believe, is where the CP/M 86 comes in.

rub: Applikation
tit: Gelungene Synthese
sbt: CP/M-2.2-Emulator mit V-Chips unter CP/M-86
aut: Kurt Werner, Matthias Rüther
red: ja
zts: c't
hft: 1985/ 10; S.42
stw: CP/M


Barry A. Watzman

unread,
Apr 12, 2002, 10:41:25 PM4/12/02
to
The V20 absolutely will run native CP/M-80 (2.2). And if it's a V20, it's
not an "emulation", it's "the real thing". They were often used in Zenith
Z-150 series machines. I even used V20's in Z-100's because the V20 had
hardware extended address calculation, while the real 8088 does this in
microcode (making the V-20 up to 20% faster at the same clock speed).

As always, you need a custom BIOS for the target hardware to implement
this.

bud

unread,
Apr 13, 2002, 1:34:40 AM4/13/02
to

Hi Barry:

Group: comp.os.cpm Date: Sat, Apr 13, 2002, 2:41am (CDT+5) From:
Wat...@neo.rr.com (Barry A. Watzman)

script:

>As always, you need a custom BIOS for
>the target hardware to implement this.

Yeah, that's what I meant by "port it to your machine". Sorry about the
incorrect terminology.

Bruce H. McIntosh

unread,
Apr 19, 2002, 4:42:21 PM4/19/02
to
On Thu, 11 Apr 2002 07:11:34 -0400, CBFalconer wrote:


> IIRC there are some conditions required for the segment registers, and
> the V20 mode has the potential of directly using more than 64k memory.
> There are also provisions for calling x86 interrupt services. It is a
> shame they didn't implement the full Z80 set, although mapping the
> alternate registers would have been a major problem.
>

I recall reading several sources that indicated NEC had actually
developed a "V25" or somesuch that had an embedded Z80 in place of the
8080, but that they could never reach an agreement with Zilog to
"legitimize" it. I so often wished for just such an item, as I was
simultaneously discovering the wonders of zcpr3 and homebuilt pc clones
and longed to merge the worlds, if only to get back some desk space :-).

Along these lines, anyone remember National Semiconductor's NSC800? It
was, IIRC, electrically compatible with the 8080, but logically a Z80.
Someone a long time back rigged an adapter to put it in a Zenith Z100 so
he could run zcpr3. I'll have to unearth my old REMarks and see if I can
find the article :-).

--
------------------------------------------------------------------------
Bruce H. McIntosh scot...@afn.org http://www.afn.org/~scotsman
------------------------------------------------------------------------
Network geek with a strong affinity for Telecasters
-----
<generic pithy quote> Whatever. </generic pithy quote>

Lee Hart

unread,
Apr 21, 2002, 6:28:23 PM4/21/02
to
"Blacklord" asked:

>> Am I right in assuming that the V20 can natively run 8080 software
>> & if this is the case, will CP/M-80 run on it directly (rather than
>> under an emulator).

Barry A. Watzman wrote:
> The V20 absolutely will run native CP/M-80 (2.2). And if it's a V20,
> it's not an "emulation", it's "the real thing". They were often used
> in Zenith Z-150 series machines.

I think the program you want is "CP/Emulator", CPM.COM or CPM2.COM, by
Robert Metz. It lets you run 8080 CP/M software on a PC. It was
distributed by the Heath User's Group for the Z-100 series (dual 8088
and 8085 CPUs and Z-150 series (8088 CPU "PC clone").

CPM2.COM is the version for PC clones. It runs on every PC I've tried it
on. It looks for a V20 or V30 CPU; if not found, it simulates an 8088
CPU with the PC's CPU. If a V20 or V30 *is* found, it switches it to
8080 mode and executes CP/M software directly. Email me directly if you
need a copy.
--
Lee A. Hart Ring the bells that still can ring
814 8th Ave. N. Forget your perfect offering
Sartell, MN 56377 USA There is a crack in everything
leeahart_at_earthlink.net That's how the light gets in - Leonard Cohen


0 new messages