Update
This commit is contained in:
37
README.md
37
README.md
@@ -23,7 +23,8 @@ For this reason, we consider it impossible to legally and legitimately compile t
|
|||||||
and cannot encourage any further development.
|
and cannot encourage any further development.
|
||||||
|
|
||||||
The Wii homebrew community was all built on top of a pile of lies and copyright infringement, and it's all
|
The Wii homebrew community was all built on top of a pile of lies and copyright infringement, and it's all
|
||||||
thanks to shagkur (who did the stealing) and the rest of the team (who enabled it and did nothing when it was discovered). Together, the developers deceived everyone into believing their work was original.
|
thanks to shagkur (who did the stealing) and the rest of the team (who enabled it and did nothing when it was
|
||||||
|
discovered). Together, the developers deceived everyone into believing their work was original.
|
||||||
|
|
||||||
Please demand that the leaders and major contributors to console or other proprietary device SDKs and
|
Please demand that the leaders and major contributors to console or other proprietary device SDKs and
|
||||||
toolkits that you use and work with do things legally, and do not tolerate this kind of behavior.
|
toolkits that you use and work with do things legally, and do not tolerate this kind of behavior.
|
||||||
@@ -36,6 +37,40 @@ function in a really old version of RTEMS. While the code has been simplified an
|
|||||||
is clear that the libogc version is a direct descendant of the RTEMS version. It is not possible for two code
|
is clear that the libogc version is a direct descendant of the RTEMS version. It is not possible for two code
|
||||||
implementations to end up this similar purely by chance.
|
implementations to end up this similar purely by chance.
|
||||||
|
|
||||||
|
**Update**: The libogc developers have restored the issue and are now claiming that the code
|
||||||
|
[was not stolen](https://mardy.it/blog/2025/04/no-libogc-did-not-steal-rtems-code.html). What they are in fact
|
||||||
|
arguing is that the code was not copied verbatim and then changed to obfuscate its origin, but rather that it was
|
||||||
|
developed by "referencing" RTEMS. Indeed, the original commits of the code to libogc are a less complete copy
|
||||||
|
of RTEMS than the current version. What that means is that, instead of literally duplicating RTEMS and then
|
||||||
|
reducing it, they instead *piecewise* incorporated RTEMS code by re-typing or copyediting it line by line,
|
||||||
|
over time. This is equivalent to opening up a copy of The Lord of the Rings, pulling up a blank document, and
|
||||||
|
meticulously re-typing the whole story in different words, with different names for the characters, while
|
||||||
|
preserving the entirety of the plot. Unfortunately for shagkur and the other libogc authors, this is still
|
||||||
|
plagiarism and copyright infringement. It doesn't matter that they didn't literally Ctrl-C and Ctrl-V the
|
||||||
|
entirety of RTEMS. The end result is, very clearly, still plagiarized.
|
||||||
|
|
||||||
|
Feel free to check out another example:
|
||||||
|
[this RTEMS function](https://github.com/atgreen/RTEMS/blob/2f200c7e642c214accb7cc6bd7f0f1784deec833/c/src/exec/score/src/thread.c#L1141)
|
||||||
|
is 1:1 identical to
|
||||||
|
[this libogc function](https://github.com/devkitPro/libogc/blob/52c525a13fd1762c10395c78875e3260f94368b5/libogc/lwp_threads.c#L388),
|
||||||
|
other than slightly renamed identifiers, different code formatting, and the `prependit` parameter in the
|
||||||
|
libogc version and `if` branch (which does seem to be a novel addition). It would be clear in any court of
|
||||||
|
law that this constitutes copyright infringement, regardless of whether it was achieved in one shot or
|
||||||
|
incrementally over time. It is simply not possible for this kind of non-trivial code to wind up completely
|
||||||
|
identical like this, purely on accident. This kind of conduct is, in fact, the same conduct that led libogc
|
||||||
|
to contain large parts of decompiled Nintendo SDK code verbatim. We just thought that that was a result of a
|
||||||
|
lack of understanding (or caring) of how copyright works when it related to reverse engineering proprietary
|
||||||
|
binary code, but it seems shagkur believes that he is entitled to manually copy and re-type *any* code, even
|
||||||
|
open source code, and the mere action of doing so erases its original copyright.
|
||||||
|
|
||||||
|
WinterMute is also is not innocent, and not just by virtue of being complicit with shagkur and enabling his
|
||||||
|
plagiarism behavior. He, himself, was previously
|
||||||
|
[caught](https://github.com/devkitPro/libnds/commit/426a369220dcb43320e203f9087de74e43452d84#diff-f376c160388ca187fe35e962eb047fe606338869b515128a6257d3a7a6694ff0R17-R25)
|
||||||
|
referencing the official Nintendo DS ("nitro") SDK while writing code for libnds. WinterMute has a huge
|
||||||
|
siege mentality issue when it comes to DevkitPro, which is why nobody has been able to get through to him,
|
||||||
|
as any criticism of his work or the way he manages his project has always been met with extreme hostility.
|
||||||
|
This is why nothing has ever been done about these issues with the project, even after all these years.
|
||||||
|
|
||||||
# The Homebrew Channel
|
# The Homebrew Channel
|
||||||
|
|
||||||
This repository contains the public release of the source code for
|
This repository contains the public release of the source code for
|
||||||
|
|||||||
Reference in New Issue
Block a user