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

ZCPR / P2DOS license?

460 views
Skip to first unread message

David Given

unread,
Dec 20, 2017, 1:18:18 PM12/20/17
to
Assuming there's anyone still alive who knows --- does anyone know, *and can provide references for*, the license for ZCPR (any version but I'm mainly interested in 2) and P2DOS?

The only reference I've found for P2DOS is this, from the INSTALL.DOC:

---snip---
To my knowledge, all components of the P2DOS.LBR are public domain
for non-commerical use only. P2DOS23 is a modification of P2DOS21,
by H.A.J. Ten Brugge from the Netherlands. It is subject to the original
author's restrictions.
---snip---

...which doesn't actually make sense and is about 35 years old, so probably obsolete. And I can't find anything for ZCPR...

Mr. Emmanuel Roche, France

unread,
Dec 20, 2017, 1:57:15 PM12/20/17
to
Are you serious?

All I did was to ask Google to find "H.A.J. Ten Brugge", and Google told me:

1) his postal address:

https://www.telefoonboek.nl/personen/brugge/hengelo-overijssel/

2) that, one month ago, Herman ten Brugge uploaded a program:

https://sourceforge.net/u/hermantenbrugge/profile/

So, he is still alive and kicking.

(This could be the opportunity to ask him to declare publicly what should happen to his 8-bit work...)

Sincerely,
Mr. Emmanuel Roche, France

Udo Munk

unread,
Dec 20, 2017, 1:57:20 PM12/20/17
to
There are no licenses, this wasn't commercial software, but CP/M user group
provided replacements.

Steve Nickolas

unread,
Dec 20, 2017, 3:55:41 PM12/20/17
to
On Wed, 20 Dec 2017, Udo Munk wrote:

> There are no licenses, this wasn't commercial software, but CP/M user group
> provided replacements.
>

Well, if there's no license the legal default is still "no redistribution
without permission in writing" even if it was received for free...

I thought I'd heard of ZCPR being GPL'd, but I may be confusing it with
something else.

-uso.

Udo Munk

unread,
Dec 20, 2017, 4:45:53 PM12/20/17
to
On Wednesday, December 20, 2017 at 9:55:41 PM UTC+1, Steve Nickolas wrote:

> I thought I'd heard of ZCPR being GPL'd, but I may be confusing it with
> something else.

That was nzcom, a commercial product now GPL'd, ZCPR always was distributed freely.

Udo Munk

unread,
Dec 20, 2017, 4:51:15 PM12/20/17
to
On Wednesday, December 20, 2017 at 9:55:41 PM UTC+1, Steve Nickolas wrote:

> Well, if there's no license the legal default is still "no redistribution
> without permission in writing" even if it was received for free...

Just had a look at my ZCPR1 disk image, no license, but the included
documentation file says:

" Some of you may have heard of CCPZ and MCPZ during various
discussions. For those who have heard of these programs, ZCPR is
the Baseline System to be released into the public domain."

David Given

unread,
Dec 20, 2017, 6:00:25 PM12/20/17
to
I just found this from http://oldcomputers.dyndns.org/public/pub/mirror/oakcpm2/sigm/vol098/zcprhdr.lib:

*************************************************************************
* *
* Z C P R 2 -- Z80-Based Command Processor Replacement, Version 2.0 *
* *
* Copyright (c) 1982 by Richard Conn *
* All Rights Reserved *
* *
* ZCPR2 is Copyright (c) 1982 by Richard Conn, who assumes no respons- *
* ibility or liability for its use. ZCPR2 is released to the public *
* domain for non-commercial use only. *
* *
* The public is encouraged to freely copy and use this program for *
* non-commercial purposes. Any commercial use of ZCPR2 is prohibited *
* unless approved by the author, Richard Conn, in writing. *
* *
* This is the RELEASE VERSION of ZCPR2. *
* *
*************************************************************************

Sadly, unless this was superceded with a free-er license later (anyone?), then even the most charitable reading of this makes ZCPR firmly non-open source.

My specific use case is that I want to include a CP/M emulator in a compiler suite I'm writing, for testing the Z80 code generator, and that emulator contains embedded copies of ZCPR and P2DOS. Unless they're compatible with the emulator's open source license I can't use it, and it looks like they're not.

I suppose I could always rip it out and replace it with real Digital Research CP/M, which *is* open source (http://www.cpm.z80.de/license.html), but... I really don't want to.

Udo Munk

unread,
Dec 20, 2017, 6:20:53 PM12/20/17
to
On Thursday, December 21, 2017 at 12:00:25 AM UTC+1, David Given wrote:
> I just found this from http://oldcomputers.dyndns.org/public/pub/mirror/oakcpm2/sigm/vol098/zcprhdr.lib:
>
> *************************************************************************
> * *
> * Z C P R 2 -- Z80-Based Command Processor Replacement, Version 2.0 *

Replace it with ZCPR1, this just is declared public domain without any restriction.
It even is not copyrighted, the source and documentation just lists the names of
the authors. Is in one of the SIG/M volumes, don't remember which one though.

Jack Fenton

unread,
Dec 20, 2017, 8:29:34 PM12/20/17
to
I posted a working version of ZPR3 at Peter Schorns web site some time aga. He also has Newzcom, P2DOS and z3Plus there.

https://schorn.ch/altair_4.php

David Given

unread,
Dec 21, 2017, 5:04:29 AM12/21/17
to
The ZCPR1 docs are pretty vague with regard to licensing --- I'd be happier if there was an explicit public domain dedication; all I can find are a few off-hand references to the public domain in ZCPR.MSG. That's probably good enough, though, particularly given that this is all so old that nobody will really care.

Any suggestions to an equivalent replacement for P2DOS?

Udo Munk

unread,
Dec 21, 2017, 8:25:49 AM12/21/17
to
On Thursday, December 21, 2017 at 11:04:29 AM UTC+1, David Given wrote:
> The ZCPR1 docs are pretty vague with regard to licensing --- I'd be happier
> if there was an explicit public domain dedication; all I can find are a few
> off-hand references to the public domain in ZCPR.MSG. That's probably good
> enough, though, particularly given that this is all so old that nobody will
> really care.

It is declared public domain in the release notes too, and then it was
distributed by SIG/M all over the planet decades ago already. Include the
documentation files with the sources, that will be good enough.

billc...@iscmns.org

unread,
Dec 21, 2017, 2:01:39 PM12/21/17
to
If anybody wants a CCP I have a highly optimized version which will run in 1 kB on a Z80. The 8080 version is slightly bigger. There are about 16 internal commands so obviously there is plenty of space to add more if you so desire. Is there any internal command anyone would like to add?

The total size of the CCP+BD0S+CD0S is 0C00H (3 kB) so with any BIoS it would fit in a small PR0M. The TPA is much bigger than a banked CP/M 3 system.

The module forms part of my ongoing tiny CP/M & CD0S project which I am developing under the AltairZ80 simulator.

David Given

unread,
Dec 21, 2017, 4:30:27 PM12/21/17
to
If it's got an open source license, sure --- even better if it assembles with z80asm! (Because then I can just drop it into my build system.)

(BTW, if you haven't thought about a license, the MIT license is about as close as you can get to the traditional public domain idea...)

billc...@iscmns.org

unread,
Dec 22, 2017, 10:53:03 AM12/22/17
to
On Thursday, 21 December 2017 22:30:27 UTC+1, David Given wrote:
> If it's got an open source license, sure --- even better if it assembles with z80asm! (Because then I can just drop it into my build system.)
>
> (BTW, if you haven't thought about a license, the MIT license is about as close as you can get to the traditional public domain idea...)

Thanks for the interest. As I wrote, my system assembles for either the 8080 or Z80 processors using TDL mnemonics and the for the 8080 expands limited Z80 mnnemonics into the equivalent 8080 code using macros. The Z80 code is about 8% smaller. But I wonder if the effort is really worth it. Surely almost all emulators and hardware are Z80 compatible in this century? Is there any advantage at all in this "flexibility". Please comment!! :)

Anyway I did manage to translate the code using XIZ, but of course it ignored the macros which would be superfluous on a Z80. I don't know Z80ASM. But Cromemco's ASMB runs natively and it displays the date and time too (but 1917 instead of 2017)!

From my point of view, removing all the "IF Z80CPU" conditional assembly would make the code more maintainable.

Finally, the MIT licence looks good to me! :)

Udo Munk

unread,
Dec 22, 2017, 11:11:16 AM12/22/17
to
On Friday, December 22, 2017 at 4:53:03 PM UTC+1, billc...@iscmns.org wrote:

> The Z80 code is about 8% smaller. But I wonder if the effort is really
> worth it. Surely almost all emulators and hardware are Z80 compatible
> in this century? Is there any advantage at all in this "flexibility".
> Please comment!! :)

Some keep their old 8080 machines in original state, an Altair clone
also won't execute Z80 code. A small footprint CP/M might be interesting
for the old machines with less than 64KB memory.

David Given

unread,
Dec 22, 2017, 3:58:06 PM12/22/17
to
On Friday, 22 December 2017 16:11:16 UTC, Udo Munk wrote:
[...]
> Some keep their old 8080 machines in original state, an Altair clone
> also won't execute Z80 code. A small footprint CP/M might be interesting
> for the old machines with less than 64KB memory.

Way back when I wrote an 8080 emulator for the MSP430 --- I was going to try to run CP/M on it; given that it had 2kB of RAM I would have needed to swap to external FRAM, making the whole business a pleasantly futile task. I got it running as far as the A> prompt but never got a screen to work.

The 8080 is way more elegant and orthogonal than the Z80, and a rather nice thing to write an emulator for; it was hand-tooled MSP430 machine code, only a hundred lines or so (with macros). So it's probably worth keeping. (Also useful if anyone wants to run CP/M on a Game Boy.)

Udo Munk

unread,
Dec 22, 2017, 5:00:26 PM12/22/17
to
On Friday, December 22, 2017 at 9:58:06 PM UTC+1, David Given wrote:

> Also useful if anyone wants to run CP/M on a Game Boy.

The Gameboy has a Z80 CPU, someone from Nintendo asked about using z80pack
for emulation of their machine in 1994 or so.

David Given

unread,
Dec 23, 2017, 11:59:35 AM12/23/17
to
On Friday, 22 December 2017 22:00:26 UTC, Udo Munk wrote:
[...]
> The Gameboy has a Z80 CPU, someone from Nintendo asked about using z80pack
> for emulation of their machine in 1994 or so.

Actually not --- like the Z80 it's an extended 8080, with some extra addressing modes and instructions, but they're different extensions to the Z80. No ix/iy, no alternate registers, only the CB extension bank, etc. It's pretty nice, actually (stack relative addressing modes FTW!). Most people call it the GBZ80 but officially it's a LR35902.

http://www.pastraiser.com/cpu/gameboy/gameboy_opcodes.html

Now I think of it, I don't know for certain whether it's backwards-compatible with the 8080, but I'd be really surprised if it weren't.

dxf...@gmail.com

unread,
Dec 24, 2017, 5:21:23 AM12/24/17
to
On Friday, December 22, 2017 at 8:30:27 AM UTC+11, David Given wrote:
> ...
> (BTW, if you haven't thought about a license, the MIT license is about as close as you can get to the traditional public domain idea...)

'public domain' isn't so much an idea as
expression of a works legal status i.e. it has
none :)


David Given

unread,
Dec 10, 2018, 7:06:57 AM12/10/18
to
On Friday, 22 December 2017 16:53:03 UTC+1, billc...@iscmns.org wrote:
[...]
> Finally, the MIT licence looks good to me! :)

So, a year later, I've done a CP/M port for the Amstrad NC200 laptop. It works really nicely, but I'd like an open source BDOS and CCP I can distribute with it. How are you getting on with this project, and do you have a release yet? I can't find any contact information for it or you or the project, so I'm posting here instead...

Richard Deane

unread,
Dec 10, 2018, 12:15:59 PM12/10/18
to
I thought that sources for cpm (inc bdos and ccp) were now officially freely available,as mentioned at https://www.theregister.co.uk/2001/11/26/cp_m_collection_is_back/ and available on http://www.cpm.z80.de/source.html. Bryan Spark (Lineo CEO) has made them publicly available.

Richard

David Given

unread,
Dec 10, 2018, 1:08:46 PM12/10/18
to
The Lineo license restricts all distribution to the Unofficial CP/M Archive (I double checked with Gaby Chaudry). That means I can't use the original BDOS and CCP in my software releases.

dxf...@gmail.com

unread,
Dec 11, 2018, 1:21:07 AM12/11/18
to
On Tuesday, December 11, 2018 at 5:08:46 AM UTC+11, David Given wrote:
> The Lineo license restricts all distribution to the Unofficial CP/M Archive (I double checked with Gaby Chaudry). That means I can't use the original BDOS and CCP in my software releases.

How does that align with the following non-exclusive grant to use, modify
and otherwise make available CP/M from Lineo?

"Let this email represent a right to use, distribute, modify, enhance
and otherwise make available in a nonexclusive manner the CP/M technology
as part of the "Unofficial CP/M Web Site" with its maintainers, developers
and community."

https://www.theregister.co.uk/2001/11/26/cp_m_collection_is_back/

Steve Nickolas

unread,
Dec 11, 2018, 2:35:13 AM12/11/18
to
Emphasis on "as part of the 'Unofficial CP/M Web Site'"

-uso.

Richard Deane

unread,
Dec 11, 2018, 6:00:45 AM12/11/18
to
The license email also mentions it's available to developers, implicit in that is distributing the developed product.

I have been attempting to contact Bryan Sparks for clarification of his intent.


Richard

dxf...@gmail.com

unread,
Dec 11, 2018, 11:51:47 AM12/11/18
to
Don't forget the "maintainers, developers and community" (whoever
they may be).

That last part I simply interpret as 'including but not limited to'
said parties. Anything else would hardly be "non-exclusive".

I'm hard pushed to see anything in this email that suggests Lineo
wants to maintain control of CP/M - quite the reverse.

David Given

unread,
Dec 11, 2018, 12:22:27 PM12/11/18
to
On Tuesday, 11 December 2018 12:00:45 UTC+1, Richard Deane wrote:
> The license email also mentions it's available to developers, implicit in that is distributing the developed product.

Not necessarily --- I contacted Gaby Chaudry who confirmed that modified CCP and BDOSes must be distributed via The Unofficial CP/M Site. There's plenty of precedent for this in shared source licenses.

(Regarding the 'maintains, developers and community' bit, the text is very clear that it's specifically referring to The Unofficial CP/M Site's maintainers, developers and community, and not anyone else.)

Axel Berger

unread,
Dec 11, 2018, 12:50:18 PM12/11/18
to
David Given wrote:
> who confirmed that modified CCP and BDOSes must be distributed
> via The Unofficial CP/M Site.

Is that a hardship? The market for your programs can't be large
nowadays. Do you really need another distributor?

--
/¯\ No | Dipl.-Ing. F. Axel Berger Tel: +49/ 221/ 7771 8067
\ / HTML | Roald-Amundsen-Straße 2a Fax: +49/ 221/ 7771 8069
 X in | D-50829 Köln-Ossendorf http://berger-odenthal.de
/ \ Mail | -- No unannounced, large, binary attachments, please! --

David Given

unread,
Dec 11, 2018, 2:26:27 PM12/11/18
to
On Tuesday, 11 December 2018 18:50:18 UTC+1, Axel Berger wrote:
[...]
> Is that a hardship? The market for your programs can't be large
> nowadays. Do you really need another distributor?

Absolutely I do. It means I can't put them on my website or develop them on Github. Images containing them can't be shipped with emulators. I can't post blog articles pointing at interesting bits of code.

It also means that if Gaby Chaudry is hit by a bus, then the sole legal access point for the software vanishes, potentially forever. Single-point-of-distribution software is a huge risk.

dxf...@gmail.com

unread,
Dec 11, 2018, 6:01:11 PM12/11/18
to
Who are the "developers and community"? Had this been an exclusive
licence one would expect the authorized parties to be clearly
identified, and conditions and limitations stated. Any ambiguity
would render it challengeable and Lineo would know this. Let's give
them some credit to know how to write a legally binding licence.

I think the intent of the email is clear enough for a "non-exclusive"
and 'do with it as you please' licence. Let those who believe they
have been granted an exclusive right to modify and distribute CP/M
produce a document that would stand up in a court of law.

David Given

unread,
Dec 12, 2018, 5:47:35 AM12/12/18
to
On Wednesday, 12 December 2018 00:01:11 UTC+1, dxf...@gmail.com wrote:
[...]
> I think the intent of the email is clear enough for a "non-exclusive"
> and 'do with it as you please' licence. Let those who believe they
> have been granted an exclusive right to modify and distribute CP/M
> produce a document that would stand up in a court of law.

Let me just repeat that I did check up with Gaby Chaudy, who was the person who negotiated this license with Lineo, and who confirmed that modified code must be distributed via tUCS. I'm going to take that as authoritative.

David Given

unread,
Dec 13, 2018, 4:33:23 PM12/13/18
to
On 20/12/17 19:18, David Given wrote:
[...]
> The only reference I've found for P2DOS is this, from the INSTALL.DOC:

Very very belatedly, I've just managed to track down Herman ten Brugge, who says that in 2007 he relicensed P2DOS as GPLv2:

---snip---
---------------------------------------------------------------------------------------------------------------
You have found me. When I put this code on the internet I did not know gpl existed.
So I took a license text from some other software. I have no problem with changing
this license to the GPL v2 license.

You are allowed to use/modify/redistribute/... the code according to the gpl v2 license.
---------------------------------------------------------------------------------------------------------------

I did sent above message on 22 oct 2007. So from there on it is gpl v2.
---snip---

(Yes, I am quoting him quoting something.)

I reckon this probably also frees SUPRBDOS too, which is explicitly licensed under the same terms as P2DOS:

---snip---
To my knowledge, all components of the SUPRBDOS system are public domain
for non-commerical use only. SUPRBDOS is a modification of P2DOS, by
H.A.J. Ten Brugge from the Netherlands, and therefore is subject to the
same restrictions as P2DOS.
---snip---

dxf...@gmail.com

unread,
Dec 14, 2018, 7:34:14 AM12/14/18
to
So effectively CP/M has a new owner with rights to modify.
Modification by end-users, even for personal use, could be
construed as illegal if done without permission. This is
little different from the license that existed when DRI
was selling CP/M. All that's changed is you get to see
the sources (but don't touch) and the download is free.

When Microsoft released the sources for DOS 1.25 and 2.0
they did so under a MIT license. In retrospect that's
what Lineo ought to have done - clear, simple and precise.

Fred Weigel

unread,
May 14, 2020, 7:56:01 PM5/14/20
to

Not actually 8080 compatible. Missing some jump conditiionals, call conditionals

FredW
0 new messages