Re: [Freedos-devel] Question about JEMM license

2023-12-02 Thread Jerome Shidel via Freedos-devel
Hi,

> On Nov 29, 2023, at 2:57 PM, Jim Hall via Freedos-devel 
>  wrote:

> [..]

> The source to JEMM386/JEMMEX is in the "src" directory. Several of the
> *.ASM files indicate public domain. Here are the exceptions that I
> found:
> 
> src/DMA.ASM
> ;--- DMA port trapping code
> ;--- originally written by Harald Albrecht
> ;--- modified for Jemm by Japheth
> ;--- copyright (c) 1990 c't/Harald Albrecht
> 
> src/EMS.ASM
> ;--- EMS implementation
> ;--- EMS 4.0 is Public Domain, originally written by Michael Devore,
> ;--- extended and modified for Jemm by Japheth
> ;--- the EMS 3.2 part is copyrighted and has therefore
> ;--- been moved into a separate include file (EMS32.INC)
> 
> src/EMU.ASM
> ;--- privileged opcode emulation
> ;--- copyright Tom Ehlert
> 
> src/INIT16.ASM
> *No source comments, but found this oin line 152:
> szCopyRight DB NAMEMOD, '. Parts (c) tom ehlert 2001-2006 c''t/H.
> Albrecht 1990', LF, 0
> 
> src/JEMM32.ASM
> ;*
> ;** This is the main 32bit ASM part of JEMM.
> ;**
> ;** JEMM contains code of FreeDOS Emm386, which in turn used the source of
> ;** an EMM made public in c't (a german IT magazine) in 08/90, page 214,
> ;** written by Harald Albrecht.
> ;**
> ;** some parts the code which is based on FD Emm386 is copyright protected and
> ;** licensed under the Artistic License version (see LICENSE.TXT for details).
> ;**
> ;** 1. EMS 3.2 functions (file EMS32.INC)
> ;**   (c) 1990   c't/Harald Albrecht
> ;**   (c) 2001-2004  tom ehlert
> ;** 2. DMA support (file DMA.ASM)
> ;**   (c) 1990   c't/Harald Albrecht
> ;** 3. privileged opcode emulation (file EMU.ASM)
> ;**   (c) 2001-2004  tom ehlert
> ;**
> ;** The rest of the 32bit source is Public Domain.
> ;**
> ;*
> 
> 
> Those are the only *.ASM files that don't seem to be public domain.
> These seem to originate from an article written by Harald Albrecht in
> C't magazine, but I searched their website and couldn't find the
> article. I may have found something in the archives, but it requires
> purchasing the backissue to find out, and I didn't do that.
> 
> I don't know what license C't uses for code published in their
> magazines. From other magazines I've written articles for (about
> programming) the source code is usually released into the public
> domain, or at least some very broad permissive license, because
> readers are encouraged to reuse it to learn more about the topic.

As you say, the code based on articles is most likely under a very
loose license or public domain.

I guess it is also possible that something similar to what occurred with 386Max.

If you recall, 386Max was originally commercial software, But, a little
while back the source code was open sourced. However, none of the 
code comments was updated to reflect the change. The sources even
still contain all the user registration code as well. As it sits, 386Max is
not usable as open source as it stands now. But, it is open source
and someone could spend the time updating the comments and removing
the registration stuff. Or, us it in another project.

It would probably be a good idea to clear up any possible confusion with
the code’s license.  
:-)

Jerome



___
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel


[Freedos-devel] Question about JEMM license

2023-11-29 Thread Jim Hall via Freedos-devel
A user emailed me to ask about the license for JEMM. We list this as
"Artistic License" on the website, but JEMM includes a few public
domain components.
https://www.ibiblio.org/pub/micro/pc-stuff/freedos/files/repositories/1.3/pkg-html/jemm.html

I wanted to share my reply to this person on the email list. Please
reply if you have comments.

Overall: I think "Artistic License" is an okay designation for this
(see note at end). I looked at JEMM and the Readme.txt file says this:

>  8. License
>
>  - JEMM386/JEMMEX: partly Artistic License (see ARTISTIC.TXT for details)
>  - UMBM: Public Domain
>  - JEMFBHLP: Public Domain
>  - CPUID:Public Domain
>  - CPUSTAT:  Public Domain
>  - EMSSTAT:  Public Domain
>  - XMSSTAT:  Public Domain
>  - MEMSTAT:  Public Domain
>  - MOVEXBDA: Public Domain
>  - VCPI: Public Domain


And it's okay for a project to include public domain code. When
someone releases a program as "public domain" they give up all claims
to it. (I understand there is some nuance to "public domain" - but
that's the general view.)

Looking at individual components from JEMM's list:

UMBM.ASM
* No source code comment about public domain, but line 728 is a
message that declares public domain

JEMFBHLP.ASM
* No source code comments about any license, no printed statement that
I could see

CPUID.ASM
;--- CPUID displays status of CPU.
;--- Public Domain.
;--- Masm syntax. To be assembled with JWasm or Masm.
;--- uses 16-bit printf

CPUSTAT.ASM
;--- CPUSTAT displays status of CPU.
;--- Public Domain.
;--- Masm syntax. To be assembled with JWasm or Masm.
;--- uses 16-bit printf

EMSSTAT.ASM
;--- EMSSTAT: display EMS status.
;--- Public Domain.
;--- tools: JWasm/Masm v6 and WLink.

XMSSTAT.ASM
;--- XMSSTAT: display xms status.
;--- Public Domain.
;--- to be assembled with JWasm or Masm v6.

MEMSTAT.ASM
* No source code comments about any license, no printed statement that
I could see

MOVEXBDA.ASM
;--- MOVEXBDA moves XBDA to low memory. If the XBDA is already moved
;--- or if it is too large, nothing is done.
;--- MOVEXBDA hooks interrupt 19h and will restore the XBDA to its
;--- previous location if this interrupt is called.
;--- MOVEXBDA is Public Domain.

VCPI.ASM
* No source code comments about any license, no printed statement that
I could see


^^ Those are all in the "Tools" directory, and they all seem to be
public domain as advertised. No problems so far. :-)


The source to JEMM386/JEMMEX is in the "src" directory. Several of the
*.ASM files indicate public domain. Here are the exceptions that I
found:

src/DMA.ASM
;--- DMA port trapping code
;--- originally written by Harald Albrecht
;--- modified for Jemm by Japheth
;--- copyright (c) 1990 c't/Harald Albrecht

src/EMS.ASM
;--- EMS implementation
;--- EMS 4.0 is Public Domain, originally written by Michael Devore,
;--- extended and modified for Jemm by Japheth
;--- the EMS 3.2 part is copyrighted and has therefore
;--- been moved into a separate include file (EMS32.INC)

src/EMU.ASM
;--- privileged opcode emulation
;--- copyright Tom Ehlert

src/INIT16.ASM
*No source comments, but found this oin line 152:
szCopyRight DB NAMEMOD, '. Parts (c) tom ehlert 2001-2006 c''t/H.
Albrecht 1990', LF, 0

src/JEMM32.ASM
;*
;** This is the main 32bit ASM part of JEMM.
;**
;** JEMM contains code of FreeDOS Emm386, which in turn used the source of
;** an EMM made public in c't (a german IT magazine) in 08/90, page 214,
;** written by Harald Albrecht.
;**
;** some parts the code which is based on FD Emm386 is copyright protected and
;** licensed under the Artistic License version (see LICENSE.TXT for details).
;**
;** 1. EMS 3.2 functions (file EMS32.INC)
;**   (c) 1990   c't/Harald Albrecht
;**   (c) 2001-2004  tom ehlert
;** 2. DMA support (file DMA.ASM)
;**   (c) 1990   c't/Harald Albrecht
;** 3. privileged opcode emulation (file EMU.ASM)
;**   (c) 2001-2004  tom ehlert
;**
;** The rest of the 32bit source is Public Domain.
;**
;*


Those are the only *.ASM files that don't seem to be public domain.
These seem to originate from an article written by Harald Albrecht in
C't magazine, but I searched their website and couldn't find the
article. I may have found something in the archives, but it requires
purchasing the backissue to find out, and I didn't do that.

I don't know what license C't uses for code published in their
magazines. From other magazines I've written articles for (about
programming) the source code is usually released into the public
domain, or at least some very broad permissive license, because
readers are encouraged to reuse it to learn more about the topic.


The person who emailed me about this was basically asking if "Artistic
License" is descriptive enough, or if it should be "Artistic plus
public domain" or something like that.

My two cents: I think "Artistic