Skip to content

Commit fbc16dc

Browse files
committed
Clarify licenses
- Fix `LICENSE.md` links - Add MIT-0 text for NSF driver license
1 parent edb20ec commit fbc16dc

File tree

5 files changed

+60
-42
lines changed

5 files changed

+60
-42
lines changed

CMakeLists.txt

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,10 +75,13 @@ add_custom_command(
7575
# update changelog
7676
add_custom_command(
7777
OUTPUT ${DNHELP_SRC_DIR}/changelog.htm
78-
DEPENDS ${DNHELP_SRC_DIR}/changelog-shell.htm
78+
${DNHELP_SRC_DIR}/license.htm
79+
DEPENDS ${DNHELP_SRC_DIR}/changelog-template.htm
80+
${DNHELP_SRC_DIR}/license-template.htm
7981
CHANGELOG.md
82+
LICENSE.md
8083
WORKING_DIRECTORY ${DNHELP_SRC_DIR}
81-
COMMAND call ${DNHELP_SRC_DIR}/update-changelog-htm.bat
84+
COMMAND call ${DNHELP_SRC_DIR}/update-htm-templates
8285
COMMENT "Updating changelog.htm."
8386
VERBATIM)
8487

LICENSE-MIT-0.txt

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
MIT No Attribution
2+
3+
Copyright 2020-2026 D.P.C.M.
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy of
6+
this software and associated documentation files (the "Software"), to deal in
7+
the Software without restriction, including without limitation the rights to
8+
use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
9+
of the Software, and to permit persons to whom the Software is furnished to do
10+
so.
11+
12+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
13+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
14+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
15+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
16+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
17+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
18+
SOFTWARE.

LICENSE.md

Lines changed: 19 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
# Licenses
22

3+
---
4+
35
The application is distributed under the
46
[GPLv3+ license](https://www.gnu.org/licenses/gpl-3.0.en.html), or any later
57
version.
68

7-
```_
9+
```text
810
Dn-FamiTracker - NES/Famicom sound tracker
9-
Copyright (C) 2020-2025 D.P.C.M.
11+
Copyright (C) 2020-2026 D.P.C.M.
1012
FamiTracker Copyright (C) 2005-2020 Jonathan Liss
1113
0CC-FamiTracker Copyright (C) 2014-2018 HertzDevil
1214
@@ -27,7 +29,7 @@ along with this program. If not, see https://www.gnu.org/licenses/.
2729
## Tracker source code and libraries
2830

2931
The tracker source code is distributed under the
30-
[GPLv3+ license](https://www.gnu.org/licenses/gpl-3.0.en.html), or any later
32+
[GPLv3+ license](https://www.gnu.org/licenses/gpl-3.0.html), or any later
3133
version.
3234

3335
- FamiTracker
@@ -40,50 +42,36 @@ version.
4042
- Licensed under
4143
[GPLv2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html), or any
4244
later version.
43-
- Copyright (C) 2006 Brezza, 2012-2025 Brad Smith
44-
- Used under an [informal license](Source/APU/nsfplay/readme.txt).
45-
- VRC7/OPLL sound emulator from emu2413 v1.5.9
46-
- Copyright (C) 2001-2019 Mitsutaka Okazaki
45+
- NSFPlay
46+
- Copyright (C) 2006 Brezza, 2012-2026 Brad Smith
47+
- Used under an [informal license](https://github.com/bbbradsmith/nsfplay/blob/master/readme.txt).
48+
- VRC7/OPLL sound emulator from [emu2413](https://github.com/digital-sound-antiques/emu2413) v1.5.9
49+
- Copyright (C) 2001-2022 Mitsutaka Okazaki
4750
- Licensed under the [MIT license](https://mit-license.org/).
48-
- FDS and N163 sound emulator from Mesen
49-
- Copyright (C) 2014-2024 Sour
51+
- FDS and N163 sound emulator from [Mesen](https://github.com/SourMesen/Mesen2)
52+
- Copyright (C) 2014-2025 Sour
5053
- Licensed under
51-
[GPLv3](https://www.gnu.org/licenses/old-licenses/gpl-3.0.en.html), or any
54+
[GPLv3](https://www.gnu.org/licenses/gpl-3.0.html), or any
5255
later version.
53-
- Blip_buffer 0.4.1
56+
- [Blip_buffer](https://www.slack.net/~ant/libs/audio.html#Blip_Buffer) 0.4.1
5457
- Copyright (C) 2003-2006 Shay Green
5558
- Licensed under
5659
[LGPLv2.1](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html)
5760
- modified by nyanpasu64
58-
- Free FFT and convolution (C++)
61+
- [Free FFT and convolution](https://www.nayuki.io/page/free-small-fft-in-multiple-languages) (C++)
5962
- Copyright (C) 2017 Project Nayuki
6063
- Licensed under the
6164
[MIT license](https://mit-license.org/).
62-
- JSON for Modern C++
65+
- [JSON for Modern C++](https://github.com/nlohmann/json/)
6366
- Copyright (C) 2013-2024 Niels Lohmann <https://nlohmann.me>
6467
- Licensed under the [MIT license](https://mit-license.org/).
65-
- libsamplerate
68+
- [libsamplerate](https://github.com/libsndfile/libsamplerate)
6669
- Copyright (C) 2012-2016, Erik de Castro Lopo <[email protected]>.
6770
All rights reserved.
6871
- Licensed under the
6972
[BSD-2-Clause license](https://www.freebsd.org/copyright/freebsd-license/).
7073

71-
## NSFs, Exported music, modules, etc.
72-
73-
The licenses mentioned for the NSF driver and the tracker source do not apply to
74-
exported media made with the program that does not contain executable code that
75-
resembles any source file, such as exported `.wav`s, `.txt`s, `.json`s, or `.csv`s.
76-
77-
[jsr's comment on music created with FT.](http://forums.famitracker.com/viewtopic.php?f=4&t=122&p=741#p741)
78-
79-
However, NSFs/ROMs contain machine code that more or less corresponds to the NSF
80-
driver source, and thus the software licenses may apply. More details can be
81-
found [in the NSF source's license](./Source/drivers/asm/LICENSE.md).
82-
83-
This does not apply to exported assembly or binary music data, as they do not
84-
include the NSF driver data.
85-
8674
## NSF driver source code
8775

88-
Dn-FT NSF driver changes are under GPL v2 due to 0CC-FT. More details can be
89-
found [in the NSF source's license](./Source/drivers/asm/LICENSE.md).
76+
Dn-FT NSF driver modifications are under [MIT-0](LICENSE-MIT-0.txt). More details can be found
77+
[in the NSF driver source's license](https://github.com/Dn-Programming-Core-Management/Dn-FamiTracker/blob/main/Source/drivers/asm/LICENSE.md).

Source/drivers/asm/LICENSE.md

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,30 @@
1+
```text
2+
Dn-FamiTracker NSF Driver Copyright (C) 2020-2026 D.P.C.M.
3+
0CC-FamiTracker NSF Driver Copyright (C) 2014-2018 HertzDevil
4+
FamiTracker NSF music driver Copyright (C) 2005-2015 Jonathan Liss
5+
```
6+
17
The original FT NSF driver's source code is explicitly *not* under the
28
GPL.[^1][^2][^3]
39

410
It is instead source-available, under no explicit license. Based on its usecase,
5-
and jsr's comments [^4], I presume that distribution and modification is
11+
and jsr's comments [^4], it is presumed that distribution and modification is
612
permitted, and attribution is recommended.
713

814
[^1]: <http://famitracker.com/forum/posts.php?id=787#5149>
915
[^2]: <http://forums.famitracker.com/viewtopic.php?t=2638>
1016
[^3]: <http://famitracker.com/forum/posts.php?id=4337#44063>
1117
[^4]: <http://famitracker.com/forum/posts.php?id=4337#44083>
1218

13-
0CC-FamiTracker's NSF driver code modifications is licensed under GPL v2,
14-
which may restrict anyone sharing compiled NSFs and binaries without sharing the
15-
assembly source, as they contain machine code that directly correlates to the
16-
NSF driver source.
19+
0CC-FamiTracker's modified NSF driver source comes with a
20+
[GPL v2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) license
21+
file. Although
22+
[the output of the program is not covered by the GNU GPL](https://www.gnu.org/licenses/gpl-faq.en.html#WhatCaseIsOutputGPL),
23+
the NSF/ROM output might be considered as an executable binary, which in theory
24+
may restrict anyone sharing compiled NSFs and binaries without sharing the
25+
assembly source, according to section 3.
1726

18-
0CC-FT NSF driver modifications are under GPL v2.
27+
Dn-FamiTracker's modifications are under [MIT-0](../../../LICENSE-MIT-0.txt).
1928

20-
Dn-FT NSF driver modifications are under the same license as 0CC-FT NSF driver
21-
modifications.
29+
Dn-FamiTracker NSF driver source as a whole is effectively under the
30+
[GPL v2](https://www.gnu.org/licenses/old-licenses/gpl-2.0.en.html) license.

0 commit comments

Comments
 (0)